:root{font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh}*{box-sizing:border-box}button{font:inherit}.app{color:#17211b;background:#f7f9f8;min-height:100vh;display:flex}.sidebar{color:#fff;background:linear-gradient(#005c2b 0%,#003d1f 100%);flex-direction:column;width:250px;min-height:100vh;padding:28px 18px 22px;display:flex}.brand{align-items:center;gap:12px;padding:0 8px 30px;display:flex}.brand-icon{color:#006b35;background:#fff;border-radius:14px;place-items:center;width:45px;height:45px;font-weight:800;display:grid}.brand strong{font-size:20px;display:block}.brand span{opacity:.75;margin-top:2px;font-size:11px;display:block}.navigation{flex-direction:column;gap:7px;display:flex}.nav-item,.logout{color:inherit;cursor:pointer;background:0 0;border:0}.nav-item{text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 14px;display:flex}.nav-item:hover{background:#ffffff1a}.nav-item.active{background:#ffffff2b;font-weight:600}.nav-arrow{margin-left:auto}.sidebar-footer{border-top:1px solid #ffffff2b;margin-top:auto;padding-top:22px}.user{align-items:center;gap:11px;padding:0 7px 18px;display:flex}.avatar{color:#005229;background:#eaf7ef;border-radius:50%;flex:0 0 40px;place-items:center;width:40px;height:40px;font-size:13px;font-weight:700;display:grid}.user-info strong,.user-info span{display:block}.user-info strong{font-size:14px}.user-info span{opacity:.72;margin-top:3px;font-size:12px}.logout{opacity:.9;align-items:center;gap:10px;padding:10px 7px;display:flex}.main{flex:1;padding:38px 42px}.page-header{justify-content:space-between;align-items:center;gap:24px;display:flex}.page-header h1{letter-spacing:-.8px;margin:0;font-size:30px}.page-header p{color:#6c756f;margin:5px 0 0}.view-switch{background:#fff;border:1px solid #dce3df;border-radius:11px;padding:4px;display:flex}.view-switch button{color:#56615a;cursor:pointer;background:0 0;border:0;border-radius:8px;min-width:88px;padding:9px 18px}.view-switch button.selected{color:#fff;background:#006b35;font-weight:600}.placeholder{color:#718078;background:#fff;border:1px dashed #cdd8d1;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:500px;margin-top:28px;display:flex}.placeholder svg{color:#006b35}.placeholder strong{color:#334239}.placeholder span{font-size:14px}@media (width<=800px){.sidebar{width:82px}.brand>div:last-child,.nav-item span,.nav-arrow,.user-info,.logout span{display:none}.brand{justify-content:center;padding-inline:0}.nav-item{justify-content:center}.user{justify-content:center;padding-inline:0}.main{padding:28px 22px}}.agenda{margin-top:28px}.agenda-toolbar{background:#fff;border:1px solid #dfe6e2;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;min-height:78px;padding:14px 18px;display:flex}.date-navigation{align-items:center;gap:10px;display:flex}.date-arrow{color:#435149;cursor:pointer;background:#fff;border:1px solid #dce4df;border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.date-arrow:hover{background:#f3f7f5}.current-date{min-width:205px;padding:0 8px}.current-date span{color:#758078;text-transform:uppercase;margin-bottom:2px;font-size:12px;font-weight:600;display:block}.current-date strong{font-size:16px}.today-button{color:#005c2b;cursor:pointer;background:#fff;border:1px solid #dce4df;border-radius:10px;padding:10px 16px;font-weight:600}.new-appointment{color:#fff;cursor:pointer;background:#006b35;border:0;border-radius:10px;align-items:center;gap:8px;padding:11px 17px;font-weight:600;display:flex}.new-appointment:hover{background:#005c2b}.agenda-empty{color:#77827b;background:#fff;border:1px solid #dfe6e2;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:480px;margin-top:14px;display:flex}.agenda-empty svg{color:#006b35}.agenda-empty strong{color:#35443b}@media (width<=900px){.agenda-toolbar{flex-direction:column;align-items:stretch}.date-navigation{flex-wrap:wrap}.new-appointment{justify-content:center}}.timeline{background:#fff;border:1px solid #dfe6e2;border-radius:16px;margin-top:14px;padding:18px 22px 30px}.time-row{grid-template-columns:68px 1fr;min-height:92px;display:grid}.time-label{color:#7b857f;padding-top:10px;font-size:13px;font-weight:600}.time-slot{border-top:1px solid #e7ece9;min-height:92px;padding:8px 12px;position:relative}.time-slot:hover{background:#f8fbf9}.appointment{text-align:left;cursor:pointer;border:0;border-left:4px solid;border-radius:10px;width:min(520px,75%);min-height:74px;padding:11px 15px;transition:transform .15s,box-shadow .15s}.appointment:hover{transform:translateY(-1px);box-shadow:0 5px 15px #17211b14}.appointment strong,.appointment span{display:block}.appointment strong{color:#1e2922;margin-top:3px;font-size:15px}.appointment span{color:#637068;margin-top:3px;font-size:12px}.appointment-time{color:#48554d;font-size:11px;font-weight:700}.appointment.blue{background:#edf5ff;border-color:#4386d1}.appointment.green{background:#edf9f2;border-color:#3e9b69}.appointment.purple{background:#f4f0fc;border-color:#8464c7}.appointment.yellow{background:#fff8e7;border-color:#d29b28}@media (width<=800px){.timeline{padding-inline:12px}.time-row{grid-template-columns:52px 1fr}.appointment{width:100%}}.time-row{grid-template-columns:68px 1fr;min-height:45px}.time-slot{min-height:45px;padding:0 12px;overflow:visible}.time-label{padding-top:0;font-size:12px;transform:translateY(-7px)}.half-hour .time-label{color:#a4ada7;font-size:11px}.full-hour .time-slot{border-top:1px solid #dfe6e2}.half-hour .time-slot{border-top:1px dashed #edf1ef}.appointment{z-index:2;min-height:0;padding:8px 14px;position:relative}.hourly-timeline{background:#fff;border:1px solid #dfe6e2;border-radius:16px;margin-top:14px;padding:18px 22px 28px;position:relative}.hour-row{grid-template-columns:72px minmax(0,1fr);min-height:92px;display:grid}.hour-label{color:#77827b;padding-top:10px;font-size:13px;font-weight:600}.hour-content{border-top:1px solid #e3e9e5;align-items:stretch;min-width:0;min-height:92px;padding:8px 12px;display:flex}.hour-row:last-child .hour-content{border-bottom:1px solid #e3e9e5}.hour-appointments{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;width:100%;display:grid}.hourly-timeline .appointment{text-align:left;border-style:none none none solid;border-width:0 0 0 4px;border-top-color:currentColor;border-bottom-color:currentColor;border-right-color:currentColor;border-radius:10px;width:100%;min-height:76px;padding:10px 14px;position:static;overflow:hidden;height:76px!important}.hourly-timeline .appointment strong{margin-top:3px;font-size:15px}.hourly-timeline .appointment span{margin-top:3px;font-size:12px}.hourly-timeline .appointment-time{font-size:11px;font-weight:700}.empty-hour{color:#0000;cursor:pointer;background:0 0;border:1px dashed #0000;border-radius:10px;justify-content:center;align-items:center;gap:5px;width:100%;min-height:74px;padding:0;display:flex}.empty-hour:hover{color:#006b35;background:#f5faf7;border-color:#b9cec1}@media (width>=900px){.hour-appointments:has(.appointment:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=899px){.hour-row{grid-template-columns:58px minmax(0,1fr)}.hour-appointments{grid-template-columns:1fr}}.hour-appointments{flex-direction:column;gap:8px;display:flex}.hourly-timeline .hour-appointments .appointment{flex:0 0 76px;width:100%}.hour-content:has(.hour-appointments){height:auto}.hour-row:has(.hour-appointments .appointment:nth-child(2)){min-height:176px}.hour-row:has(.hour-appointments .appointment:nth-child(2)) .hour-content{min-height:176px}@media (width>=900px){.hour-appointments:has(.appointment:nth-child(2)){flex-direction:column;display:flex}}.modal-overlay{z-index:1000;background:#0e19137a;justify-content:center;align-items:center;padding:30px;display:flex;position:fixed;inset:0}.appointment-modal{background:#fff;border-radius:18px;width:min(620px,100%);max-height:calc(100vh - 60px);overflow-y:auto;box-shadow:0 24px 70px #0a191138}.modal-header{border-bottom:1px solid #e4eae6;justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 26px 20px;display:flex}.modal-header h2{color:#17211b;margin:0;font-size:22px}.modal-header p{color:#748078;margin:5px 0 0;font-size:13px}.modal-close{color:#68746d;cursor:pointer;background:#f3f6f4;border:0;border-radius:9px;width:36px;height:36px;font-size:25px;line-height:1}.appointment-form{grid-template-columns:1fr 1fr;gap:18px;padding:24px 26px;display:grid}.form-field{flex-direction:column;gap:7px;display:flex}.form-field-full{grid-column:1/-1}.form-field span{color:#344139;font-size:13px;font-weight:600}.form-field input,.form-field select{color:#26322b;width:100%;height:44px;font:inherit;background:#fff;border:1px solid #d9e2dc;border-radius:10px;outline:none;padding:0 12px}.form-field input:focus,.form-field select:focus{border-color:#006b35;box-shadow:0 0 0 3px #006b3517}.modal-footer{border-top:1px solid #e4eae6;justify-content:flex-end;gap:10px;padding:18px 26px 22px;display:flex}.cancel-button,.save-button{cursor:pointer;border-radius:10px;min-height:42px;padding:0 18px;font-weight:600}.cancel-button{color:#4d5a52;background:#fff;border:1px solid #d8e0db}.save-button{color:#fff;background:#006b35;border:0}.save-button:hover{background:#005c2b}@media (width<=650px){.modal-overlay{padding:14px}.appointment-form{grid-template-columns:1fr}.form-field-full{grid-column:auto}}.appointment-error{background:#fff4f4;border:1px solid #efb4b4;border-radius:10px;flex-direction:column;gap:4px;margin:18px 24px 0;padding:12px 14px;display:flex}.appointment-error strong{color:#a52626;font-size:14px}.appointment-error span{color:#714040;font-size:13px;line-height:1.4}.login-page{background:radial-gradient(circle at 0 0,#006b351f,#0000 35%),#f5f8f6;place-items:center;min-height:100vh;padding:32px;display:grid}.login-page:before{content:"";z-index:0;background:linear-gradient(145deg,#003d1f 0%,#005c2b 55%,#006b35 100%);position:fixed;inset:0 50% 0 0}.login-card{z-index:1;background:#fff;border:1px solid #e1e9e4;border-radius:20px;width:min(440px,100%);margin-left:50%;padding:44px;position:relative;box-shadow:0 24px 70px #003d1f1f}.login-brand{align-items:center;gap:13px;margin-bottom:38px;display:flex}.login-brand .brand-icon{color:#fff;letter-spacing:.5px;background:#006b35;border-radius:12px;place-items:center;width:46px;height:46px;font-size:15px;font-weight:800;display:grid}.login-brand>div:last-child{flex-direction:column;gap:2px;display:flex}.login-brand strong{color:#003d1f;font-size:18px}.login-brand span{color:#78867e;font-size:12px}.login-heading{margin-bottom:28px}.login-heading h1{color:#17251d;margin:0 0 8px;font-size:30px;line-height:1.15}.login-heading p{color:#718078;margin:0;font-size:14px}.login-field span{color:#34473c;font-size:13px;font-weight:600}.login-field input{color:#17251d;width:100%;height:48px;font:inherit;box-sizing:border-box;background:#fff;border:1px solid #d8e2dc;border-radius:10px;outline:none;padding:0 14px;transition:border-color .2s,box-shadow .2s}.login-field input:focus{border-color:#006b35;box-shadow:0 0 0 3px #006b351a}.login-button{color:#fff;width:100%;height:50px;font:inherit;cursor:pointer;background:#006b35;border:0;border-radius:10px;margin-top:8px;font-size:14px;font-weight:700;transition:background .2s,transform .1s}.login-button:hover:not(:disabled){background:#005c2b}.login-button:disabled{opacity:.65;cursor:wait}.login-error{color:#a73535;background:#fff4f4;border:1px solid #f1c8c8;border-radius:9px;margin-bottom:20px;padding:12px 14px;font-size:13px}@media (width<=850px){.login-page{padding:20px}.login-page:before{display:none}.login-card{margin-left:0;padding:34px 28px}}.login-page{justify-content:center;align-items:center;display:flex}.login-card{margin-left:0}.login-page{background:radial-gradient(circle at 75% 20%,#ffffff14,#0000 32%),linear-gradient(135deg,#003d1f 0%,#005c2b 55%,#006b35 100%);min-height:100vh;position:relative}.login-page:before{display:none}.login-card{margin:0}.login-card .login-logo{object-fit:contain;border-radius:10px;width:240px;max-width:100%;height:90px;display:block}.appointment-actions{align-items:center;gap:10px;display:flex}.action-button{cursor:pointer;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 16px;font-size:14px;font-weight:600;transition:transform .15s,box-shadow .15s,background-color .15s;display:inline-flex}.action-button:hover{transform:translateY(-1px)}.action-delete{color:#b42318;background:#fff1f0;border-color:#fecdca}.action-delete:hover{background:#fee4e2}.action-cancel{color:#475467;background:#f2f4f7;border-color:#d0d5dd}.action-cancel:hover{background:#e4e7ec}.action-save{color:#fff;background:#1570ef;border-color:#1570ef;margin-left:auto;box-shadow:0 2px 5px #1570ef2e}.action-save:hover{background:#175cd3}.action-done{color:#fff;background:#006b35;border-color:#006b35;box-shadow:0 2px 5px #006b352e}.action-done:hover{background:#005c2b}@media (width<=720px){.appointment-actions{flex-wrap:wrap}.action-button{flex:calc(50% - 5px)}.action-save{margin-left:0}}.appointment{grid-template-columns:minmax(0,1fr) 36px;align-items:center;column-gap:12px;display:grid}.appointment-content{min-width:0}.appointment-status{justify-content:center;align-items:center;width:36px;height:100%;display:flex}.appointment-status-icon{stroke-width:2.2px;flex-shrink:0;width:26px;height:26px;display:block}.appointment-status-icon.attended{color:#15803d}.appointment-status-icon.cancelled{color:#18181b}.weekly-agenda{background:#fff;border:1px solid #e5e7eb;border-radius:12px;width:100%;min-width:1000px;overflow:hidden}.weekly-header,.weekly-row{grid-template-columns:80px repeat(5,minmax(170px,1fr));display:grid}.weekly-header{background:#f8faf9;border-bottom:1px solid #e5e7eb;min-height:66px}.weekly-time-header,.weekly-day-header{justify-content:center;align-items:center;padding:10px;display:flex}.weekly-time-header{color:#64748b;font-size:12px;font-weight:700}.weekly-day-header{border-left:1px solid #e5e7eb;flex-direction:column;gap:3px}.weekly-day-header strong{color:#006b35;font-size:12px}.weekly-day-header span{color:#64748b;font-size:13px}.weekly-row{border-bottom:1px solid #e5e7eb;min-height:94px}.weekly-row:last-child{border-bottom:0}.weekly-time{color:#64748b;justify-content:center;align-items:flex-start;padding-top:13px;font-size:12px;font-weight:600;display:flex}.weekly-cell{border-left:1px solid #e5e7eb;min-width:0;padding:8px}.weekly-empty-hour{color:#0000;cursor:pointer;background:0 0;border:1px dashed #0000;border-radius:8px;justify-content:center;align-items:center;gap:5px;width:100%;height:100%;min-height:76px;display:flex}.weekly-empty-hour:hover{color:#006b35;background:#f3faf6;border-color:#b7d8c5}.weekly-appointments{flex-direction:column;gap:6px;display:flex}.appointment.weekly-appointment{grid-template-columns:minmax(0,1fr) 28px;width:100%;padding:8px 9px}.weekly-appointment .appointment-content{overflow:hidden}.weekly-appointment .appointment-content strong,.weekly-appointment .appointment-content span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.weekly-appointment .appointment-status{width:28px}@media (width<=1200px){.weekly-agenda{overflow-x:auto}}.recurrence-delete-modal{width:min(460px,100vw - 32px);max-height:none;overflow:visible}.recurrence-delete-modal .modal-body{padding:20px 24px}.recurrence-delete-options{flex-direction:column;gap:10px;display:flex}.recurrence-delete-options .action-button{justify-content:flex-start;width:100%;min-height:46px}.recurrence-delete-modal .modal-footer{justify-content:flex-end;padding:16px 24px}.recurrence-delete-overlay{z-index:2000;background:#0f172a9e}.recurrence-delete-modal{z-index:2001;background:#fff;width:min(460px,100vw - 32px);max-height:none;position:relative;overflow:hidden}.recurrence-field{border-top:1px solid #e5e7eb;margin-top:4px;padding-top:16px}.recurrence-toggle{cursor:pointer;color:#1f2937;align-items:center;gap:10px;font-weight:600;display:flex}.recurrence-toggle input{accent-color:#006b35;cursor:pointer;width:18px;height:18px}.recurrence-config{background:#f8fcfa;border:1px solid #dce8e1;border-radius:10px;margin-top:16px;padding:16px}.recurrence-label{color:#374151;margin-bottom:8px;font-size:14px;font-weight:600;display:block}.recurrence-days{flex-wrap:wrap;gap:8px;display:flex}.recurrence-day{color:#374151;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;min-width:54px;height:38px;padding:0 12px;font-weight:600;transition:all .15s}.recurrence-day:hover{color:#006b35;border-color:#006b35}.recurrence-day.selected{color:#fff;background:#006b35;border-color:#006b35}.recurrence-quantity{max-width:220px;margin-top:16px;display:block}.recurrence-quantity input{width:100%}.appointment{border-left-color:var(--appointment-color,#22c55e);background-color:var(--appointment-background,#edf9f2)}.tipos-atendimento-page{max-width:900px;padding:32px}.tipos-atendimento-page h1{margin-bottom:8px}.tipos-atendimento-page p{color:#64748b;margin-bottom:28px}.tipos-atendimento-lista{flex-direction:column;gap:12px;display:flex}.tipo-atendimento-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.tipo-atendimento-item input[type=color]{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;width:52px;height:36px;padding:3px}.seletor-cor-container{flex-shrink:0;position:relative}.botao-seletor-cor{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:7px 10px;display:flex}.botao-seletor-cor:hover{background:#f1f5f9}.cor-atual{border:1px solid #0000001a;border-radius:6px;width:26px;height:26px;display:block}.paleta-cores{z-index:100;background:#fff;border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:repeat(5,36px);gap:10px;width:max-content;padding:14px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #00000026}.cor-opcao{cursor:pointer;border:2px solid #0000;border-radius:8px;width:36px;min-width:36px;height:36px;min-height:36px;padding:0;display:block}.cor-opcao:hover{transform:scale(1.1)}.cor-opcao.selecionada{outline-offset:2px;outline:2px solid #064e3b}.nav-submenu{border-left:1px solid #ffffff40;flex-direction:column;gap:4px;margin:4px 8px 8px 22px;padding-left:12px;display:flex}.nav-subitem{color:#ffffffd9;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;width:100%;min-height:40px;padding:10px 12px;font-family:inherit;font-size:13px;font-weight:500;transition:background .2s,color .2s;display:flex}.nav-subitem:hover{color:#fff;background:#ffffff1f}.nav-subitem.active{color:#fff;background:#ffffff2e;font-weight:600}.nav-subitem svg{flex-shrink:0}.pacientes-page{width:100%;min-width:0;padding:32px}.pacientes-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.pacientes-header h1{color:#10251c;margin:0 0 8px;font-size:28px;font-weight:700}.pacientes-header p{color:#64748b;margin:0;font-size:14px}.btn-novo-paciente{color:#fff;cursor:pointer;background:#087443;border:none;border-radius:9px;padding:12px 20px;font-size:14px;font-weight:600}.btn-novo-paciente:hover{background:#065f37}.pacientes-lista{background:#fff;border:1px solid #e2e8f0;border-radius:12px;width:100%;overflow-x:auto}.pacientes-tabela{border-collapse:collapse;text-align:left;width:100%;min-width:580px}.pacientes-tabela th{color:#475569;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0;padding:16px 20px;font-size:12px;font-weight:700}.pacientes-tabela td{color:#334155;border-bottom:1px solid #f1f5f9;padding:17px 20px;font-size:14px}.pacientes-tabela tbody tr:last-child td{border-bottom:none}.paciente-status{border-radius:20px;align-items:center;padding:5px 11px;font-size:12px;font-weight:600;display:inline-flex}.paciente-status.ativo{color:#166534;background:#dcfce7}.paciente-status.inativo{color:#991b1b;background:#fee2e2}.pacientes-vazio{text-align:center;color:#64748b;padding:30px}@media (width<=768px){.pacientes-page{padding:16px}.pacientes-header{align-items:stretch}.btn-novo-paciente{width:100%}}.pacientes-tabela thead{background:#e1f1e7}.pacientes-tabela th{color:#075c37;border-bottom:1px solid #c5e2d0}.pacientes-tabela tbody tr:nth-child(odd){background:#fff}.pacientes-tabela tbody tr:nth-child(2n){background:#edf7f1}.pacientes-tabela tbody tr:hover{background:#ddf0e4}.pacientes-tabela td{border-bottom:1px solid #dcece2}.pacientes-lista{border-color:#c5e2d0}.pacientes-pesquisa{align-items:center;width:100%;margin-bottom:20px;display:flex}.pacientes-pesquisa input{color:#183328;background:#fff;border:1px solid #cbded2;border-radius:10px;outline:none;width:100%;max-width:420px;height:46px;padding:0 16px;font-family:inherit;font-size:14px;transition:border-color .2s,box-shadow .2s}.pacientes-pesquisa input::placeholder{color:#94a3b8}.pacientes-pesquisa input:focus{border-color:#087443;box-shadow:0 0 0 3px #0874431f}@media (width<=768px){.pacientes-pesquisa input{max-width:100%}}.pacientes-pesquisa{position:relative}.pacientes-pesquisa-icone{color:#087443;pointer-events:none;position:absolute;left:15px}.pacientes-pesquisa input{padding-left:44px}.paciente-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f23198c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.paciente-modal{background:#fff;border-radius:16px;width:100%;max-width:650px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.paciente-modal-header{border-bottom:1px solid #e2ebe5;justify-content:space-between;align-items:center;padding:24px 28px;display:flex}.paciente-modal-header h2{color:#075c37;margin:0;font-size:21px;font-weight:700}.paciente-modal-header button{color:#64748b;cursor:pointer;background:#f1f5f2;border:none;border-radius:8px;width:34px;height:34px;font-size:24px}.paciente-modal-header button:hover{color:#075c37;background:#e2ebe5}.paciente-modal-campos{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:26px 28px;display:grid}.paciente-modal-campos label{color:#334155;flex-direction:column;gap:8px;font-size:13px;font-weight:600;display:flex}.paciente-modal-campos input,.paciente-modal-campos textarea{box-sizing:border-box;color:#183328;width:100%;font:inherit;background:#fff;border:1px solid #cbded2;border-radius:9px;outline:none;padding:12px 14px;font-weight:400;transition:border-color .2s,box-shadow .2s}.paciente-modal-campos input:focus,.paciente-modal-campos textarea:focus{border-color:#087443;box-shadow:0 0 0 3px #0874431f}.paciente-modal-observacao{grid-column:1/-1}.paciente-modal-campos textarea{resize:vertical}.paciente-modal-acoes{border-top:1px solid #e2ebe5;justify-content:flex-end;gap:12px;padding:20px 28px;display:flex}.paciente-modal-acoes button{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbded2;border-radius:9px;padding:12px 20px;font-weight:600}.paciente-modal-acoes button[type=submit]{color:#fff;background:#087443;border-color:#087443}.paciente-modal-acoes button[type=submit]:hover{background:#075c37}@media (width<=600px){.paciente-modal-campos{grid-template-columns:1fr;padding:20px}.paciente-modal-header,.paciente-modal-acoes{padding:18px 20px}.paciente-modal-observacao{grid-column:auto}}.paciente-nome-link{color:#075c37;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:4px 0;font-weight:600;transition:color .2s}.paciente-nome-link:hover{color:#059669;text-decoration:underline}.paciente-nome-link:focus-visible{outline-offset:3px;border-radius:3px;outline:2px solid #059669}.paciente-situacao{background:#f3f9f5;border:1px solid #dcece2;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin:0 28px 20px;padding:18px;display:flex}.paciente-situacao strong{color:#183328;font-size:14px}.paciente-situacao p{color:#64748b;margin:5px 0 0;font-size:12px}.paciente-switch{cursor:pointer;flex-shrink:0;align-items:center;gap:10px;display:flex}.paciente-switch input{opacity:0;width:1px;height:1px;position:absolute}.paciente-switch-trilho{background:#cbd5e1;border-radius:20px;width:44px;height:24px;transition:background .2s;position:relative}.paciente-switch-trilho:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000026}.paciente-switch input:checked+.paciente-switch-trilho{background:#087443}.paciente-switch input:checked+.paciente-switch-trilho:after{transform:translate(20px)}.paciente-switch input:focus-visible+.paciente-switch-trilho{outline-offset:3px;outline:3px solid #0874434d}.paciente-switch-texto{color:#334155;min-width:45px;font-size:13px;font-weight:600}@media (width<=600px){.paciente-situacao{flex-wrap:wrap;margin:0 20px 20px}}.paciente-cpf-erro{color:#dc2626;margin-top:5px;font-size:12px;font-weight:500;line-height:1.4;display:block}input[aria-invalid=true]{border-color:#dc2626}input[aria-invalid=true]:focus{border-color:#dc2626;outline-color:#dc2626}.tipos-atendimento-page .btn-primary{color:#fff;cursor:pointer;background:#087443;border:1px solid #087443;border-radius:9px;justify-content:center;align-items:center;gap:9px;padding:12px 20px;font-size:14px;font-weight:600;transition:background .2s;display:inline-flex}.tipos-atendimento-page .btn-primary:hover{background:#065f37}.modal-tipo-atendimento .modal-actions{border-top:1px solid #e2e8f0;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:24px;padding-top:20px;display:flex}.modal-tipo-atendimento .btn-primary,.modal-tipo-atendimento .btn-secondary{cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 18px;font-size:14px;font-weight:600;transition:background .2s;display:inline-flex}.modal-tipo-atendimento .btn-primary{color:#fff;background:#087443;border:1px solid #087443}.modal-tipo-atendimento .btn-primary:hover{background:#065f37}.modal-tipo-atendimento .btn-secondary{color:#475569;background:#fff;border:1px solid #cbd5e1}.modal-tipo-atendimento .btn-secondary:hover{background:#f1f5f9}.modal-tipo-atendimento .tipo-form-seletor{width:max-content;margin-top:8px;display:inline-flex;position:relative}.modal-tipo-atendimento .tipo-form-seletor .botao-seletor-cor{min-width:76px;min-height:44px}.modal-tipo-atendimento .tipo-form-seletor .paleta-cores{z-index:1000;grid-template-columns:repeat(5,36px);position:absolute;top:calc(100% + 8px);left:0;right:auto}.modal-tipo-atendimento .form-field-full{min-width:0}.tipos-atendimento-page .tipo-atendimento-item{align-items:center;gap:20px;padding:16px 20px;display:flex}.tipos-atendimento-page .paciente-nome-link{text-align:left;flex:1;min-width:0}.tipo-atendimento-acoes{color:#475569;align-items:center;gap:10px;min-width:100px;font-size:13px;font-weight:500;display:inline-flex}.tipo-atendimento-acoes .paciente-switch{flex-shrink:0}.tipos-atendimento-page .seletor-cor-container{flex-shrink:0;position:relative}@media (width<=600px){.tipos-atendimento-page .tipo-atendimento-item{flex-wrap:wrap;gap:12px}.tipos-atendimento-page .paciente-nome-link{flex-basis:100%}}.tipos-atendimento-tabela-container{overflow-x:auto}.tipos-atendimento-tabela-container .pacientes-tabela{border-collapse:collapse;width:100%}.tipos-atendimento-tabela-container .pacientes-tabela th,.tipos-atendimento-tabela-container .pacientes-tabela td{vertical-align:middle;text-align:left}.tipos-atendimento-tabela-container .pacientes-tabela td:nth-child(3){white-space:nowrap}.tipos-atendimento-tabela-container .paciente-switch{vertical-align:middle;display:inline-block}.tipo-situacao-texto{vertical-align:middle;color:#475569;margin-left:10px;font-size:13px;display:inline-block}.tipos-atendimento-tabela-container .seletor-cor-container{display:inline-block;position:relative}.tipos-atendimento-tabela-container .paleta-cores{z-index:1000;position:absolute;top:calc(100% + 8px);left:auto;right:0}.tipos-atendimento-tabela-container .pacientes-tabela td:last-child{overflow:visible}.tipos-atendimento-tabela-container .pacientes-tabela th{padding:12px 20px}.tipos-atendimento-tabela-container .pacientes-tabela td{height:52px;padding:7px 20px}.tipos-atendimento-tabela-container .botao-seletor-cor{height:36px;min-height:36px;padding:5px 10px}.tipos-atendimento-tabela-container .cor-atual{width:24px;height:24px}.pacientes-lista:not(.tipos-atendimento-tabela-container) .pacientes-tabela th{padding:12px 20px}.pacientes-lista:not(.tipos-atendimento-tabela-container) .pacientes-tabela td{vertical-align:middle;height:52px;padding:7px 20px}.tipos-atendimento-tabela-container .paciente-switch{vertical-align:middle;cursor:pointer;width:40px;height:22px;margin-right:8px;display:inline-block;position:relative}.tipos-atendimento-tabela-container .paciente-switch input{opacity:0;width:0;height:0}.tipos-atendimento-tabela-container .paciente-switch-slider{background-color:#cbd5e1;border-radius:22px;transition:background-color .2s;display:block;position:absolute;inset:0}.tipos-atendimento-tabela-container .paciente-switch-slider:before{content:"";background-color:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px}.tipos-atendimento-tabela-container .paciente-switch input:checked+.paciente-switch-slider{background-color:#07804b}.tipos-atendimento-tabela-container .paciente-switch input:checked+.paciente-switch-slider:before{transform:translate(18px)}.tipos-atendimento-tabela-container .paciente-switch input:focus-visible+.paciente-switch-slider{outline-offset:3px;outline:2px solid #2563eb}.modal-usuario .modal-actions{justify-content:flex-end;align-items:center;gap:12px;margin-top:24px;display:flex}.modal-usuario .modal-actions button{cursor:pointer;border-radius:10px;min-height:42px;padding:0 22px;font-size:14px;font-weight:600;transition:all .2s}.modal-usuario .modal-actions button:not(.btn-primary){color:#374151;background:#f3f4f6;border:1px solid #e5e7eb}.modal-usuario .modal-actions button:not(.btn-primary):hover{background:#e5e7eb}.modal-usuario .modal-actions .btn-primary{color:#fff;background:#2563eb;border:1px solid #2563eb;box-shadow:0 2px 5px #2563eb26}.modal-usuario .modal-actions .btn-primary:hover{background:#1d4ed8;border-color:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 10px #2563eb33}@media (width<=480px){.modal-usuario .modal-actions{flex-direction:column-reverse}.modal-usuario .modal-actions button{width:100%}}.paciente-modal.modal-usuario{width:calc(100% - 32px);max-width:650px}.paciente-modal.modal-usuario .paciente-modal-acoes{border-top:1px solid #e5e7eb;justify-content:flex-end;align-items:center;gap:12px;padding:20px 28px;display:flex}.paciente-modal.modal-usuario .paciente-modal-acoes button{cursor:pointer;min-height:46px;box-shadow:none;border-radius:9px;padding:0 20px;font-size:14px;font-weight:600;transition:background-color .2s,border-color .2s;transform:none}.paciente-modal.modal-usuario .paciente-modal-acoes button:first-child{color:#334155;background:#fff;border:1px solid #c9dfd2}.paciente-modal.modal-usuario .paciente-modal-acoes button:first-child:hover{background:#f3f7f5}.paciente-modal.modal-usuario .paciente-modal-acoes button[type=submit]{color:#fff;background:#007a45;border:1px solid #007a45}.paciente-modal.modal-usuario .paciente-modal-acoes button[type=submit]:hover{background:#006339;border-color:#006339}.paciente-modal.modal-usuario .usuario-form input,.paciente-modal.modal-usuario .usuario-form select{background:#fff;border:1px solid #c9dfd2;border-radius:9px;min-height:44px}.paciente-modal.modal-usuario .usuario-form input:focus,.paciente-modal.modal-usuario .usuario-form select:focus{border-color:#007a45;outline:none;box-shadow:0 0 0 3px #007a451a}@media (width<=480px){.paciente-modal.modal-usuario .paciente-modal-acoes{flex-direction:column-reverse}.paciente-modal.modal-usuario .paciente-modal-acoes button{width:100%}}.pacientes-header .btn-novo-paciente{color:#fff;white-space:nowrap;cursor:pointer;background:#087846;border:none;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 20px;font-size:14px;font-weight:600;transition:background-color .2s;display:inline-flex}.pacientes-header .btn-novo-paciente:hover{background:#066339}.pacientes-header .btn-novo-paciente svg{flex-shrink:0;width:17px;height:17px}.tempo-padrao-atual{color:#237a42;white-space:nowrap;background-color:#e8f5e9;border-radius:20px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.tempo-padrao-atual svg{flex-shrink:0}.modal-usuario .usuario-form>label{flex-direction:column;align-items:stretch;gap:8px;min-width:0;display:flex}.modal-usuario .usuario-form>label>input{box-sizing:border-box;width:100%;margin:0;display:block}.pacientes-tabela .paciente-switch{vertical-align:middle;width:44px;height:24px;display:inline-block;position:relative}.pacientes-tabela .paciente-switch input{opacity:0;width:1px;height:1px;position:absolute}.pacientes-tabela .paciente-switch-slider{background-color:#cbd5e1;border-radius:24px;transition:background-color .2s;display:block;position:absolute;inset:0}.pacientes-tabela .paciente-switch-slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px}.pacientes-tabela .paciente-switch input:checked+.paciente-switch-slider{background-color:#07804b}.pacientes-tabela .paciente-switch input:checked+.paciente-switch-slider:before{transform:translate(20px)}.pacientes-tabela .paciente-switch input:focus-visible+.paciente-switch-slider{outline-offset:3px;outline:2px solid #2563eb}.pacientes-tabela .paciente-switch input:disabled+.paciente-switch-slider{opacity:.5;cursor:not-allowed}.agenda-filtro-profissional{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.agenda-filtro-profissional label{color:#334155;white-space:nowrap;font-size:13px;font-weight:600}.agenda-filtro-profissional select{color:#334155;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;min-width:220px;height:40px;padding:0 12px;font-size:13px}.agenda-filtro-profissional select:focus{outline-offset:2px;outline:2px solid #087443}@media (width<=768px){.agenda-filtro-profissional{width:100%}.agenda-filtro-profissional select{flex:1;min-width:0}}.agenda-profissionais-header{background:#f8faf9;border-bottom:2px solid #e3e9e5;grid-template-columns:72px repeat(auto-fit,minmax(180px,1fr));align-items:stretch;min-height:62px;display:grid}.agenda-profissionais-horario{color:#64748b;align-items:center;padding:12px 8px;font-size:12px;font-weight:700;display:flex}.agenda-profissional-nome{color:#176b45;text-align:center;border-left:1px solid #e3e9e5;justify-content:center;align-items:center;padding:12px;font-size:13px;font-weight:700;display:flex}.hourly-timeline:has(.agenda-profissionais-header){padding:0;overflow-x:auto}.hourly-timeline:has(.agenda-profissionais-header) .agenda-profissionais-header{grid-template-columns:72px repeat(var(--total-profissionais,1), minmax(200px, 1fr))}.hourly-timeline:has(.agenda-profissionais-header) .hour-row{grid-template-columns:72px minmax(0,1fr)}.hourly-timeline:has(.agenda-profissionais-header) .hour-content{padding:0}.agenda-profissionais-celulas{grid-template-columns:repeat(var(--total-profissionais,1), minmax(200px, 1fr));width:100%;min-height:92px;display:grid}.agenda-profissional-celula{border-left:1px solid #e3e9e5;flex-direction:column;gap:8px;min-width:0;padding:8px;display:flex}.agenda-profissional-celula .appointment{width:100%;min-height:76px}.weekly-agenda:has(.weekly-professionals-header){overflow-x:auto}.weekly-agenda:has(.weekly-professionals-header) .weekly-day-header{padding:8px 0 0}.weekly-professionals-header,.weekly-professionals-cells{grid-template-columns:repeat(var(--profissionais-semana,2), minmax(180px, 1fr));width:100%;display:grid}.weekly-professionals-header{border-top:1px solid #e5e7eb;margin-top:8px}.weekly-professionals-header span{text-align:center;color:#334155;padding:10px 6px;font-size:12px;font-weight:600}.weekly-professional-cell{border-right:1px solid #e5e7eb;min-width:0;padding:4px}.weekly-professional-cell:last-child{border-right:0}.weekly-agenda:has(.weekly-professionals-header) .weekly-cell{padding:0}.hourly-timeline:has(.agenda-profissionais-header) .agenda-profissional-celula{gap:4px;padding:4px}.hourly-timeline:has(.agenda-profissionais-header) .agenda-profissional-celula .appointment{border-radius:8px;min-height:55px;padding:6px 8px}.hourly-timeline:has(.agenda-profissionais-header) .appointment-content{gap:2px}.hourly-timeline:has(.agenda-profissionais-header) .appointment-content strong{font-size:12px;line-height:1.2}.hourly-timeline:has(.agenda-profissionais-header) .appointment-content span{font-size:10px}.hourly-timeline:has(.agenda-profissionais-header) .appointment-time{font-size:10px}.hourly-timeline:has(.agenda-profissionais-header) .hour-content{min-height:65px}.hourly-timeline:has(.agenda-profissionais-header) .agenda-profissionais-celulas{min-height:65px}.hourly-timeline:has(.agenda-profissionais-header) .hour-label{height:auto;min-height:65px}.hourly-timeline:has(.agenda-profissionais-header) .hour-row{height:auto;min-height:48px}:is(.hourly-timeline:has(.agenda-profissionais-header) .hour-content,.hourly-timeline:has(.agenda-profissionais-header) .hour-label,.hourly-timeline:has(.agenda-profissionais-header) .agenda-profissionais-celulas){min-height:48px}.hourly-timeline:has(.agenda-profissionais-header) .agenda-profissional-celula .appointment{min-height:42px;padding:4px 7px}.hourly-timeline:has(.agenda-profissionais-header) .appointment-content strong{font-size:11px}.hourly-timeline:has(.agenda-profissionais-header) .appointment-content span{font-size:9px}.hourly-timeline:has(.agenda-profissionais-header) .appointment-time{font-size:9px}.hourly-timeline:has(.agenda-profissionais-header) .agenda-profissional-celula .appointment{min-height:50px;padding:3px 6px;overflow:hidden;height:50px!important}:is(.hourly-timeline:has(.agenda-profissionais-header) .hour-row,.hourly-timeline:has(.agenda-profissionais-header) .hour-content,.hourly-timeline:has(.agenda-profissionais-header) .hour-label,.hourly-timeline:has(.agenda-profissionais-header) .agenda-profissionais-celulas){min-height:44px}.hourly-timeline:has(.agenda-profissionais-header) .agenda-profissional-celula{padding:3px 4px}.hourly-timeline:has(.agenda-profissionais-header) .empty-hour{height:38px;min-height:38px}.hourly-timeline:has(.agenda-profissionais-header) .appointment-content{gap:0;line-height:1.1}.weekly-agenda:has(.weekly-professionals-header) .weekly-row{min-height:56px}.weekly-agenda:has(.weekly-professionals-header) .weekly-professional-cell{padding:3px}.weekly-agenda:has(.weekly-professionals-header) .weekly-professional-cell .appointment{border-radius:8px;min-height:50px;padding:4px 7px;overflow:hidden;height:50px!important}.weekly-agenda:has(.weekly-professionals-header) .appointment-content{gap:1px;line-height:1.15}.weekly-agenda:has(.weekly-professionals-header) .appointment-content strong{font-size:11px}.weekly-agenda:has(.weekly-professionals-header) .appointment-content span{font-size:9px}.weekly-agenda:has(.weekly-professionals-header) .appointment-time{font-size:9px}.weekly-agenda:has(.weekly-professionals-header) .weekly-empty-hour{height:50px;min-height:50px}:is(.weekly-agenda:has(.weekly-professionals-header) .weekly-header,.weekly-agenda:has(.weekly-professionals-header) .weekly-row){grid-template-columns:80px repeat(5, minmax(calc(var(--profissionais-semana,2) * 160px), 1fr));min-width:max(100%, calc(80px + 5 * var(--profissionais-semana,2) * 160px))}:is(.weekly-agenda:has(.weekly-professionals-header) .weekly-professionals-header,.weekly-agenda:has(.weekly-professionals-header) .weekly-professionals-cells){grid-template-columns:repeat(var(--profissionais-semana,2), minmax(0, 1fr))}.relatorios-page{--rel-cor-principal:#176b4d;--rel-cor-principal-hover:#10573d;--rel-cor-texto:#172b24;--rel-cor-secundaria:#64748b;--rel-cor-borda:#e2e8f0;--rel-cor-fundo:#f8fafc;box-sizing:border-box;width:100%;max-width:1440px;color:var(--rel-cor-texto);margin:0 auto;padding:28px}.relatorios-page *,.relatorios-page :before,.relatorios-page :after{box-sizing:border-box}.relatorios-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.relatorios-cabecalho-principal{align-items:center;gap:16px;min-width:0;display:flex}.relatorios-icone-principal{width:58px;height:58px;color:var(--rel-cor-principal);background:#e7f4ed;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.relatorios-titulo-grupo{min-width:0}.relatorios-sobretitulo{color:var(--rel-cor-principal);letter-spacing:1.6px;margin-bottom:5px;font-size:10px;font-weight:800;display:block}.relatorios-titulo-grupo h2{color:#172b24;letter-spacing:-.8px;margin:0;font-size:clamp(25px,3vw,31px);font-weight:750;line-height:1.2}.relatorios-titulo-grupo p{color:#64748b;margin:7px 0 0;font-size:14px;line-height:1.5}.relatorios-periodo-badge{color:#426454;white-space:nowrap;background:#fff;border:1px solid #dce9e1;border-radius:11px;align-items:center;gap:9px;padding:11px 14px;font-size:13px;font-weight:600;display:inline-flex}.relatorios-painel{background:#fff;border:1px solid #e7ece9;border-radius:17px;min-width:0;margin-bottom:22px;padding:25px;box-shadow:0 4px 18px #0f2d1e09}.relatorios-painel-titulo{align-items:center;gap:12px;margin-bottom:24px;display:flex}.relatorios-painel-icone{width:42px;height:42px;color:var(--rel-cor-principal);background:#eff7f2;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.relatorios-painel-titulo h3{color:#1e352a;margin:0;font-size:16px;font-weight:750}.relatorios-painel-titulo p{color:#718096;margin:5px 0 0;font-size:13px;line-height:1.5}.relatorios-filtros{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.relatorios-campo{color:#34483d;flex-direction:column;align-items:stretch;gap:9px;min-width:0;font-size:13px;font-weight:650;display:flex}.relatorios-campo>span{line-height:1.4}.relatorios-campo select,.relatorios-campo input{color:#24372d;background-color:#fff;border:1px solid #dbe4de;border-radius:10px;outline:none;width:100%;min-width:0;height:46px;margin:0;padding:0 13px;font-family:inherit;font-size:13px;font-weight:450;transition:border-color .2s,box-shadow .2s;display:block}.relatorios-campo select{cursor:pointer}.relatorios-campo select:hover,.relatorios-campo input:hover{border-color:#a8c8b4}.relatorios-campo select:focus,.relatorios-campo input:focus{border-color:#25845c;box-shadow:0 0 0 3px #25845c1f}.relatorios-acoes{border-top:1px solid #edf1ee;flex-wrap:wrap;align-items:center;gap:12px;margin-top:25px;padding-top:22px;display:flex}.relatorios-acoes button{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:9px;min-height:45px;padding:0 19px;font-family:inherit;font-size:13px;font-weight:700;transition:background-color .2s,border-color .2s,box-shadow .2s,transform .2s;display:inline-flex}.relatorios-acoes button:hover:not(:disabled){transform:translateY(-1px)}.relatorios-acoes button:focus-visible{outline-offset:3px;outline:3px solid #25845c40}.relatorios-acoes button:disabled{opacity:.65;cursor:wait}.relatorios-btn-consultar{background:var(--rel-cor-principal);color:#fff;box-shadow:0 3px 8px #176b4d21}.relatorios-btn-consultar:hover:not(:disabled){background:var(--rel-cor-principal-hover);box-shadow:0 5px 12px #176b4d2e}.relatorios-btn-exportar{color:#276447;background:#fff;border-color:#d8e5dc!important}.relatorios-btn-exportar:hover:not(:disabled){background:#f3f9f5;border-color:#a9cbb6!important}.relatorios-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.7s linear infinite relatorios-girar;display:inline-block}.relatorios-spinner-grande{width:28px;height:28px;color:var(--rel-cor-principal);border-width:3px}@keyframes relatorios-girar{to{transform:rotate(360deg)}}.relatorios-mensagem{border-radius:11px;align-items:flex-start;gap:11px;margin-bottom:20px;padding:15px 17px;font-size:13px;line-height:1.5;display:flex}.relatorios-mensagem-erro{color:#b42318;background:#fff5f5;border:1px solid #fecaca}.relatorios-mensagem-erro svg{flex-shrink:0;margin-top:1px}.relatorios-area-resultado{min-height:280px}.relatorios-area-resultado .relatorios-painel-titulo{margin-bottom:20px}.relatorios-estado-vazio{text-align:center;background:#fbfdfb;border:1px dashed #dbe6df;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;min-height:190px;padding:25px 16px;display:flex}.relatorios-vazio-icone{color:#347958;background:#eaf5ee;border-radius:16px;justify-content:center;align-items:center;width:54px;height:54px;margin-bottom:15px;display:flex}.relatorios-estado-vazio>strong{color:#30483a;font-size:14px;font-weight:750}.relatorios-estado-vazio>p{color:#778579;max-width:410px;margin:8px 0 0;font-size:13px;line-height:1.65}.relatorios-dados{border:1px solid #e5ece7;border-radius:12px;overflow:hidden}.relatorios-dados-cabecalho{background:#f8fbf9;border-bottom:1px solid #e5ece7;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 17px;display:flex}.relatorios-dados-cabecalho>div{color:#365b46;align-items:center;gap:9px;font-size:13px;font-weight:700;display:flex}.relatorios-dados-tipo{color:#236444;background:#e5f3e9;border-radius:7px;padding:5px 9px;font-size:11px;font-weight:750}.relatorios-dados pre{color:#334155;white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;max-height:520px;margin:0;padding:20px;font-family:Cascadia Code,Consolas,monospace;font-size:12px;line-height:1.75;overflow:auto}@media (width>=1100px){.relatorios-filtros{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.relatorios-page{padding:22px}.relatorios-filtros{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.relatorios-painel{padding:21px}}@media (width<=560px){.relatorios-page{padding:16px}.relatorios-header{align-items:flex-start;gap:15px;margin-bottom:20px}.relatorios-cabecalho-principal{align-items:flex-start;gap:12px}.relatorios-icone-principal{border-radius:12px;width:46px;height:46px}.relatorios-titulo-grupo h2{font-size:25px}.relatorios-titulo-grupo p{font-size:12px}.relatorios-periodo-badge{white-space:normal;max-width:100%;font-size:12px}.relatorios-painel{border-radius:14px;margin-bottom:16px;padding:17px}.relatorios-painel-titulo{gap:10px;margin-bottom:20px}.relatorios-filtros{grid-template-columns:minmax(0,1fr);gap:16px}.relatorios-campo select,.relatorios-campo input{height:45px}.relatorios-acoes{flex-direction:column;align-items:stretch;margin-top:20px;padding-top:18px}.relatorios-acoes button{width:100%;min-height:46px}.relatorios-dados-cabecalho{align-items:flex-start}.relatorios-dados pre{max-height:400px;padding:14px;font-size:11px}}@media (prefers-reduced-motion:reduce){.relatorios-page *,.relatorios-page :before,.relatorios-page :after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.relatorios-tabela-container{background:#fff;border:1px solid #e5ece7;border-radius:0 0 12px 12px;width:100%;overflow-x:auto}.relatorios-tabela{border-collapse:separate;border-spacing:0;color:#334155;width:100%;min-width:680px;font-size:13px}.relatorios-tabela thead th{z-index:1;color:#355846;text-align:left;text-transform:uppercase;letter-spacing:.35px;white-space:nowrap;background:#f3f8f5;border-bottom:1px solid #e1e9e3;padding:14px 16px;font-size:11px;font-weight:750;position:sticky;top:0}.relatorios-tabela tbody td{color:#475569;text-align:left;vertical-align:middle;overflow-wrap:anywhere;border-bottom:1px solid #edf1ee;max-width:320px;padding:14px 16px;line-height:1.5}.relatorios-tabela tbody tr{transition:background-color .15s}.relatorios-tabela tbody tr:last-child td{border-bottom:none}.relatorios-tabela-rodape{color:#647569;background:#f8fbf9;border-top:1px solid #e5ece7;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;font-size:12px;display:flex}.relatorios-sem-registros{color:#688071;text-align:center;flex-direction:column;align-items:center;gap:9px;padding:36px 20px;display:flex}.relatorios-sem-registros strong{color:#30483a;font-size:14px}.relatorios-sem-registros p{margin:0;font-size:13px;line-height:1.6}@media (width<=560px){.relatorios-tabela{min-width:600px;font-size:12px}.relatorios-tabela thead th,.relatorios-tabela tbody td{padding:12px}.relatorios-tabela-rodape{flex-direction:column;align-items:flex-start;gap:5px}}.relatorios-tabela{table-layout:auto;width:100%;min-width:1120px}.relatorios-tabela thead th{white-space:nowrap;color:#365846;letter-spacing:.35px;background:#f1f7f3;padding:15px 18px;font-size:11px}.relatorios-tabela tbody td{white-space:nowrap;vertical-align:middle;padding:16px 18px;line-height:1.5}.relatorios-tabela tbody tr:nth-child(2n){background:#f9fbfa}.relatorios-tabela tbody tr:hover{background:#eff7f1}.relatorios-tabela .relatorios-celula-observacao{white-space:normal;overflow-wrap:anywhere;min-width:180px;max-width:280px}.relatorios-status-badge{white-space:nowrap;border-radius:20px;justify-content:center;align-items:center;min-width:88px;padding:6px 10px;font-size:11px;font-weight:750;display:inline-flex}.relatorios-status-agendado{color:#946200;background:#fff4d6}.relatorios-status-atendido{color:#176b43;background:#dcf5e7}.relatorios-status-cancelado{color:#b42318;background:#fee7e7}.relatorios-valor-celula{color:#176b4d;font-variant-numeric:tabular-nums;font-weight:750}@media (width<=560px){.relatorios-tabela{min-width:1050px}.relatorios-tabela thead th,.relatorios-tabela tbody td{padding:13px 15px}}.relatorios-tabela{min-width:950px}.relatorios-tabela th.relatorios-coluna-data,.relatorios-tabela td.relatorios-coluna-data{white-space:nowrap;width:125px;min-width:125px;max-width:125px;padding-left:10px;padding-right:10px}.relatorios-tabela th.relatorios-coluna-status,.relatorios-tabela td.relatorios-coluna-status{text-align:center;width:125px;min-width:125px;max-width:125px}.relatorios-tabela td.relatorios-coluna-status .relatorios-status-badge{margin-left:auto;margin-right:auto}@media (width<=560px){.relatorios-tabela{min-width:950px}}.relatorios-page{background:#f8faf9;width:100%;max-width:none;min-height:100%;margin:0}.relatorios-page .relatorios-header,.relatorios-page .relatorios-painel{width:100%}.relatorios-page .relatorios-periodo-badge{display:none}.relatorios-acoes .relatorios-btn-imprimir{color:#176b4d;min-height:45px;box-shadow:none;cursor:pointer;background:#fff;border:1px solid #d5e2da;border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:0 20px;font-family:inherit;font-size:13px;font-weight:650;line-height:1.2;transition:background-color .2s,border-color .2s;display:inline-flex}.relatorios-acoes .relatorios-btn-imprimir:hover:not(:disabled){background:#edf7f0;border-color:#b9d5c3}.relatorios-acoes .relatorios-btn-imprimir:disabled{opacity:.55;cursor:not-allowed}.relatorios-gerencial{flex-direction:column;gap:24px;display:flex}.relatorios-gerencial-card{background:#f7fbf8;border:1px solid #dce9e2;border-radius:14px;flex-direction:column;gap:12px;padding:22px;display:flex}.relatorios-gerencial-card span{color:#52665a;font-size:13px;font-weight:500}.relatorios-gerencial-card strong{color:#166534;font-size:26px;font-weight:700}.relatorios-gerencial-subtitulo{color:#183b2b;margin:0;font-size:18px;font-weight:700}.relatorios-gerencial-vazio{text-align:center;color:#64748b;padding:20px}@media (width<=800px){.relatorios-gerencial-indicadores{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.relatorios-gerencial-indicadores{grid-template-columns:1fr}}@media print{.relatorios-gerencial-indicadores{grid-template-columns:repeat(3,minmax(0,1fr))}.relatorios-gerencial-card{break-inside:avoid}}.relatorios-gerencial-indicadores{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.relatorios-gerencial-card{background:#f8fbfa;border:1px solid #dce9e2;border-radius:16px;flex-direction:row;align-items:center;gap:18px;min-height:154px;padding:22px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 3px 12px #143c2d06}.relatorios-gerencial-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #143c2d14}.relatorios-card-icone{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:62px;height:62px;display:flex}.relatorios-card-conteudo{flex-direction:column;align-items:flex-start;gap:7px;min-width:0;display:flex}.relatorios-gerencial-card .relatorios-card-conteudo span{color:#334155;font-size:14px;font-weight:600}.relatorios-gerencial-card .relatorios-card-conteudo strong{color:#12352d;overflow-wrap:anywhere;font-size:clamp(22px,2.1vw,30px);font-weight:750;line-height:1.15}.relatorios-card-conteudo small{color:#718096;font-size:12px}.relatorios-card-azul{background:#f5faff;border-color:#c9e0ff}.relatorios-card-azul .relatorios-card-icone{color:#2563eb;background:#e2efff}.relatorios-card-laranja{background:#fffbf4;border-color:#ffe2b3}.relatorios-card-laranja .relatorios-card-icone{color:#ea8900;background:#fff0d5}.relatorios-card-verde{background:#f3faf6;border-color:#bfe4ce}.relatorios-card-verde .relatorios-card-icone{color:#16824b;background:#daf3e3}.relatorios-card-vermelho{background:#fff7f7;border-color:#ffcdd2}.relatorios-card-vermelho .relatorios-card-icone{color:#e11d48;background:#ffe1e5}.relatorios-card-roxo{background:#f9f7ff;border-color:#ddd2ff}.relatorios-card-roxo .relatorios-card-icone{color:#7c3aed;background:#ebe3ff}.relatorios-gerencial-subtitulo{color:#174b36;align-items:center;gap:12px;margin:10px 0 0;font-size:19px;display:flex}.relatorios-gerencial-tabela tbody tr:nth-child(odd) td{background:#fff}.relatorios-gerencial-tabela tbody tr:nth-child(2n) td{background:#f0f7f3}.relatorios-gerencial-tabela tbody tr:hover td{background:#e4f2e9}@media (width<=1050px){.relatorios-gerencial-indicadores{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.relatorios-gerencial-indicadores{grid-template-columns:1fr}}@media print{.relatorios-gerencial-indicadores{grid-template-columns:repeat(3,minmax(0,1fr))}.relatorios-gerencial-card{box-shadow:none;break-inside:avoid}}@page{size:A4 portrait;margin:9mm}@media print{html,body,#root{width:100%!important;min-width:0!important;height:auto!important;overflow:visible!important}body{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#172b23!important;background:#fff!important;margin:0!important}body *{visibility:hidden!important}.relatorios-page,.relatorios-page .relatorios-header,.relatorios-page .relatorios-area-resultado,.relatorios-page .relatorios-area-resultado *{visibility:visible!important}.relatorios-page{background:#fff!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important;position:absolute!important;top:0!important;left:0!important}.relatorios-page>:not(.relatorios-header):not(.relatorios-area-resultado){display:none!important}.relatorios-header{margin:0 0 10px!important}.relatorios-area-resultado{width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;box-shadow:none!important;border:none!important;margin:0!important;padding:0!important;overflow:visible!important}.relatorios-painel-titulo{margin:0 0 7px!important;padding:0 0 6px!important}.relatorios-painel-titulo h3{margin:0 0 3px!important;font-size:14px!important}.relatorios-painel-titulo p{margin:0!important;font-size:9px!important}.relatorios-dados,.relatorios-tabela-container{width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;max-height:none!important;box-shadow:none!important;margin:0!important;overflow:visible!important}.relatorios-dados-cabecalho{min-height:0!important;padding:6px 8px!important;font-size:10px!important}.relatorios-tabela{table-layout:fixed!important;border-collapse:collapse!important;width:100%!important;min-width:0!important;max-width:100%!important;font-size:8px!important;display:table!important}.relatorios-tabela thead{display:table-header-group!important}.relatorios-tabela tbody{display:table-row-group!important}.relatorios-tabela tr{break-inside:avoid;page-break-inside:avoid;display:table-row!important}.relatorios-tabela th,.relatorios-tabela td{z-index:auto!important;white-space:normal!important;overflow-wrap:anywhere!important;vertical-align:middle!important;width:auto!important;min-width:0!important;max-width:none!important;padding:4px 3px!important;font-size:8px!important;line-height:1.25!important;display:table-cell!important;position:static!important;top:auto!important}.relatorios-tabela th{background:#edf5ef!important;font-size:7px!important;font-weight:700!important}.relatorios-status-badge{white-space:normal!important;padding:2px 3px!important;font-size:7px!important}.relatorios-tabela-rodape{padding:5px 0!important;font-size:8px!important}.relatorios-gerencial{gap:8px!important}.relatorios-gerencial-indicadores{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;display:grid!important}.relatorios-gerencial-card{break-inside:avoid;height:auto!important;min-height:0!important;box-shadow:none!important;border-radius:7px!important;gap:7px!important;padding:8px!important}.relatorios-card-icone{flex-shrink:0!important;width:26px!important;height:26px!important}.relatorios-card-icone svg{width:15px!important;height:15px!important}.relatorios-card-conteudo{gap:2px!important}.relatorios-gerencial-card .relatorios-card-conteudo span{font-size:8px!important}.relatorios-gerencial-card .relatorios-card-conteudo strong{font-size:13px!important}.relatorios-card-conteudo small{font-size:7px!important}.relatorios-gerencial-subtitulo{margin:6px 0!important;font-size:11px!important}.relatorios-gerencial-subtitulo svg{width:14px!important;height:14px!important}.relatorios-gerencial-tabela tbody tr:nth-child(2n) td{background:#f0f7f3!important}}@media screen and (width>=801px){.app>.sidebar{flex:0 0 195px!important;width:195px!important;min-width:195px!important;max-width:195px!important;padding:24px 12px 18px!important}.app>.sidebar .brand{gap:9px;padding:0 2px 26px}.app>.sidebar .brand strong{font-size:16px}.app>.sidebar .brand-icon{flex:0 0 40px;width:40px;height:40px}.app>.sidebar .nav-item{gap:10px;padding:0 10px;font-size:14px}.app>.main{flex:1;min-width:0}}.mobile-menu-toggle,.mobile-menu-close,.mobile-menu-overlay{display:none}@media screen and (width<=800px){.app>.sidebar{z-index:1002;height:100dvh;transition:transform .25s;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-105%);width:260px!important;min-width:260px!important;max-width:260px!important;min-height:0!important;padding:24px 16px!important;position:fixed!important}.app>.sidebar.sidebar-open{transform:translate(0)}.app>.sidebar .brand>div:last-child,.app>.sidebar .nav-item span,.app>.sidebar .nav-arrow,.app>.sidebar .user-info,.app>.sidebar .logout span{display:block!important}.app>.sidebar .brand{justify-content:flex-start!important;padding:0 35px 28px 0!important}.app>.sidebar .nav-item{justify-content:flex-start!important}.app>.sidebar .user{justify-content:flex-start!important;padding:0 7px 18px!important}.app>.main{flex:100%!important;width:100%!important;min-width:0!important;padding-top:75px!important}.mobile-menu-toggle{z-index:1000;color:#005c2b;cursor:pointer;background:#fff;border:1px solid #d7e6dd;border-radius:12px;justify-content:center;align-items:center;width:45px;height:45px;display:flex;position:fixed;top:14px;left:14px;box-shadow:0 4px 12px #00000014}.mobile-menu-overlay{z-index:1001;cursor:pointer;background:#00000073;border:none;display:block;position:fixed;inset:0}.mobile-menu-close{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:flex;position:absolute;top:18px;right:14px}}@media print{.mobile-menu-toggle,.mobile-menu-close,.mobile-menu-overlay{display:none!important}}@media screen and (width>=801px){.app>.main{flex:1!important;width:auto!important;min-width:0!important;max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:20px!important;padding-right:20px!important}.app>.main .relatorios-page{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}.app>.main .relatorios-header,.app>.main .relatorios-painel,.app>.main>section,.app>.main>.page-header{max-width:none!important;margin-left:0!important;margin-right:0!important}}@media screen and (width<=800px){.app>.main{padding-left:12px!important;padding-right:12px!important}.app>.main .relatorios-page{width:100%!important;padding-left:0!important;padding-right:0!important}}@media screen and (width>=801px){.app>.main{padding-left:12px!important;padding-right:12px!important}.app>.main>section,.app>.main>div{margin-left:0!important}.app>.sidebar .submenu{margin-left:4px!important;padding-left:4px!important}.app>.sidebar .submenu .nav-item{padding-left:8px!important}}.time-row .time-label,.agenda-profissionais-horario{text-align:center!important;justify-content:center!important;align-items:center!important;padding-left:0!important;padding-right:0!important;display:flex!important}.hourly-timeline .hour-row>.hour-label{text-align:center!important;box-sizing:border-box!important;justify-content:center!important;justify-self:stretch!important;align-items:center!important;width:100%!important;padding-left:0!important;padding-right:0!important;display:flex!important}.hourly-timeline .agenda-profissionais-header .agenda-profissionais-horario{text-align:center!important;justify-content:center!important;align-items:center!important;padding-left:0!important;padding-right:0!important;display:flex!important}.login-page{background:radial-gradient(circle at 85% 8%,#23af748c,#0000 42%),radial-gradient(circle at 5% 95%,#00301ea6,#0000 48%),linear-gradient(135deg,#004a30,#00784a 55%,#00442c);justify-content:center;align-items:center;min-height:100vh;padding:28px 16px;display:flex}.login-card{background:#fff;border-radius:22px;width:100%;max-width:470px;padding:35px 36px 30px;box-shadow:0 22px 65px #0023163d}.login-card .login-brand{justify-content:center;width:100%;margin-bottom:30px;display:flex;overflow:visible}.login-card .login-logo{aspect-ratio:2.8;object-fit:contain;border-radius:14px;width:100%;max-width:390px;height:auto;display:block}.login-heading{text-align:center;margin-bottom:27px}.login-heading h1{letter-spacing:-.6px;color:#063d2a;margin:0;font-size:clamp(24px,4vw,29px);font-weight:800;line-height:1.2}.login-heading p{margin:0;font-size:0;line-height:0}.login-field{flex-direction:column;gap:9px;margin-bottom:19px;display:flex}.login-field>span{color:#174434;font-size:13px;font-weight:700}.login-field input{color:#163d2e;box-sizing:border-box;background:#fff;border:1px solid #d3e2da;border-radius:12px;width:100%;min-height:54px;padding:0 16px;font-size:15px;transition:border-color .2s,box-shadow .2s}.login-field input:focus{border-color:#00935b;outline:none;box-shadow:0 0 0 4px #00935b1f}.login-field input::placeholder{color:#94a69e}.login-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#00965d,#00683f);border:none;border-radius:12px;width:100%;min-height:55px;margin-top:8px;font-size:16px;font-weight:800;transition:transform .2s,box-shadow .2s,filter .2s;box-shadow:0 8px 20px #00683f2e}.login-button:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 12px 24px #00683f3d}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.65}@media (width<=520px){.login-card{border-radius:18px;padding:27px 22px}.login-card .login-logo{max-width:100%}}.login-card .agenfisio-input-wrap{align-items:center;width:100%;display:flex;position:relative}.login-card .agenfisio-input-wrap input{width:100%;padding-left:48px;padding-right:48px}.login-card .agenfisio-input-icon{color:#52766a;pointer-events:none;z-index:1;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.login-card .agenfisio-toggle-senha{color:#52766a;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.login-card .agenfisio-toggle-senha:hover{color:#00683f;background:#e9f5ee}.login-card .agenfisio-toggle-senha:focus-visible{outline-offset:2px;outline:2px solid #00965d}.login-card .login-button{justify-content:center;align-items:center;gap:11px;display:flex}.main>.agenfisio-agenda-header{background:radial-gradient(circle at 83% 15%,#70d8a642,#0000 36%),linear-gradient(115deg,#eaf8f1 0%,#e0f6ec 55%,#c6edda 100%);border:1px solid #d6eee2;border-radius:22px;justify-content:space-between;align-items:center;gap:22px;margin-bottom:16px;padding:28px 30px;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #0054320a}.agenfisio-agenda-heading{z-index:1;align-items:center;gap:18px;display:flex;position:relative}.agenfisio-agenda-heading-icon{color:#007346;background:#008b531a;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;width:66px;height:66px;display:flex}.agenfisio-agenda-header h1{color:#063b2a;letter-spacing:-.8px;margin:0;font-size:clamp(26px,2.6vw,36px);font-weight:800}.agenfisio-agenda-header p{color:#5c776b;margin:6px 0 0;font-size:14px}.agenfisio-agenda-header .view-switch{z-index:1;background:#fff;border:1px solid #e0eee6;border-radius:15px;align-items:center;padding:5px;display:flex;position:relative;box-shadow:0 3px 12px #003c230d}.agenfisio-agenda-header .view-switch button{color:#395e4e;cursor:pointer;background:0 0;border:none;border-radius:11px;min-width:94px;min-height:42px;font-weight:600}.agenfisio-agenda-header .view-switch button.selected{color:#fff;background:linear-gradient(135deg,#008d55,#00663e);box-shadow:0 4px 12px #00663e29}.main:has(>.agenfisio-agenda-header)>.agenda>.agenda-toolbar{background:#fff;border:1px solid #dce9e2;border-radius:19px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:19px 22px;display:flex;box-shadow:0 5px 18px #003c2309}.main:has(>.agenfisio-agenda-header) .date-navigation{align-items:center;gap:12px;display:flex}.main:has(>.agenfisio-agenda-header) .date-arrow{color:#16583c;cursor:pointer;background:#f8fbf9;border:1px solid #dce8e1;border-radius:12px;justify-content:center;align-items:center;width:43px;height:43px;display:flex}.main:has(>.agenfisio-agenda-header) .date-arrow:hover{background:#eaf6ef}.main:has(>.agenfisio-agenda-header) .current-date{min-width:195px}.main:has(>.agenfisio-agenda-header) .current-date span{color:#657e71;text-transform:uppercase;margin-bottom:5px;font-size:12px;font-weight:700;display:block}.main:has(>.agenfisio-agenda-header) .current-date strong{color:#103b2a;font-size:16px;font-weight:800}.main:has(>.agenfisio-agenda-header) .today-button{color:#006b40;cursor:pointer;background:#edf9f2;border:1px solid #d8eee2;border-radius:12px;min-height:43px;padding:0 19px;font-weight:700}.main:has(>.agenfisio-agenda-header) .new-appointment{color:#fff;cursor:pointer;background:linear-gradient(135deg,#008e55,#00673f);border:none;border-radius:12px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 20px;font-weight:700;display:inline-flex;box-shadow:0 5px 14px #00673f21}.main:has(>.agenfisio-agenda-header) .new-appointment:hover{filter:brightness(1.06)}@media (width<=760px){.main>.agenfisio-agenda-header{flex-direction:column;align-items:stretch;padding:20px 17px}.agenfisio-agenda-heading-icon{width:52px;height:52px}.agenfisio-agenda-header .view-switch{align-self:flex-start}.main:has(>.agenfisio-agenda-header)>.agenda>.agenda-toolbar{padding:15px}.main:has(>.agenfisio-agenda-header) .date-navigation{flex-wrap:wrap}.main:has(>.agenfisio-agenda-header) .current-date{min-width:150px}}.main>.agenfisio-agenda-header .agenfisio-agenda-heading{gap:14px}.main>.agenfisio-agenda-header .agenfisio-agenda-heading-icon{border-radius:14px;width:52px;min-width:52px;height:52px}.main>.agenfisio-agenda-header .agenfisio-agenda-heading-icon svg{width:23px;height:23px}.main>.agenfisio-agenda-header h1{letter-spacing:-.5px;font-size:28px;line-height:1.2}@media (width<=760px){.main>.agenfisio-agenda-header .agenfisio-agenda-heading-icon{width:46px;min-width:46px;height:46px}.main>.agenfisio-agenda-header .agenfisio-agenda-heading-icon svg{width:21px;height:21px}.main>.agenfisio-agenda-header h1{font-size:24px}}.relatorios-page>.relatorios-header{box-sizing:border-box;background:radial-gradient(circle at 83% 15%,#70d8a642,#0000 36%),linear-gradient(115deg,#eaf8f1 0%,#e0f6ec 55%,#c6edda 100%);border:1px solid #d6eee2;border-radius:22px;align-items:center;min-height:128px;margin-bottom:16px;padding:24px 30px;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #0054320a}.relatorios-page>.relatorios-header .relatorios-cabecalho-principal{align-items:center;gap:14px;width:100%;margin:0;display:flex}.relatorios-page>.relatorios-header .relatorios-icone-principal{color:#007346;width:52px;min-width:52px;height:52px;box-shadow:none;background:#008b531a;border:none;border-radius:14px;justify-content:center;align-items:center;display:flex}.relatorios-page>.relatorios-header .relatorios-icone-principal svg{width:23px;height:23px}.relatorios-page>.relatorios-header .relatorios-titulo-grupo{flex-direction:column;align-items:flex-start;gap:0;margin:0;padding:0;display:flex}.relatorios-page>.relatorios-header .relatorios-titulo-grupo h2{color:#063b2a;letter-spacing:-.5px;margin:0;font-size:28px;font-weight:800;line-height:1.2}.relatorios-page>.relatorios-header .relatorios-titulo-grupo p{color:#5c776b;margin:6px 0 0;font-size:14px;font-weight:400;line-height:1.5}@media (width<=760px){.relatorios-page>.relatorios-header{border-radius:18px;min-height:auto;padding:20px 17px}.relatorios-page>.relatorios-header .relatorios-icone-principal{width:46px;min-width:46px;height:46px}.relatorios-page>.relatorios-header .relatorios-icone-principal svg{width:21px;height:21px}.relatorios-page>.relatorios-header .relatorios-titulo-grupo h2{font-size:24px}}@media screen{.relatorios-page{padding-top:10px}.relatorios-page>.relatorios-header{border-radius:18px;min-height:96px;margin-bottom:14px;padding:16px 22px}.relatorios-page>.relatorios-header .relatorios-icone-principal{border-radius:13px;width:48px;min-width:48px;height:48px}.relatorios-page>.relatorios-header .relatorios-icone-principal svg{width:22px;height:22px}.relatorios-page>.relatorios-header .relatorios-titulo-grupo h2{font-size:26px}.relatorios-page>.relatorios-header .relatorios-titulo-grupo p{margin-top:4px;font-size:13px}.relatorios-page .relatorios-filtros{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.relatorios-page .relatorios-campo{min-width:0}.relatorios-page .relatorios-campo select,.relatorios-page .relatorios-campo input{width:100%;max-width:100%}}@media screen and (width>=561px) and (width<=900px){.relatorios-page{padding:12px 16px}.relatorios-page .relatorios-filtros{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.relatorios-page .relatorios-painel{padding:20px}}@media screen and (width<=560px){.relatorios-page{padding:8px 10px 16px}.relatorios-page>.relatorios-header{border-radius:15px;min-height:auto;margin-bottom:12px;padding:15px 14px}.relatorios-page>.relatorios-header .relatorios-cabecalho-principal{align-items:center;gap:11px}.relatorios-page>.relatorios-header .relatorios-icone-principal{border-radius:12px;width:43px;min-width:43px;height:43px}.relatorios-page>.relatorios-header .relatorios-icone-principal svg{width:20px;height:20px}.relatorios-page>.relatorios-header .relatorios-titulo-grupo h2{font-size:23px}.relatorios-page>.relatorios-header .relatorios-titulo-grupo p{font-size:12px;line-height:1.4}.relatorios-page .relatorios-painel{border-radius:15px;padding:16px 14px}.relatorios-page .relatorios-painel-titulo{margin-bottom:19px}.relatorios-page .relatorios-filtros{grid-template-columns:minmax(0,1fr);gap:15px}.relatorios-page .relatorios-campo select,.relatorios-page .relatorios-campo input{min-height:46px;font-size:14px}.relatorios-page .relatorios-acoes{flex-direction:column;align-items:stretch;gap:10px;display:flex}.relatorios-page .relatorios-acoes button{justify-content:center;width:100%;min-height:46px}}@media screen{.main>.agenfisio-agenda-header{box-sizing:border-box;border-radius:18px;min-height:96px;margin-bottom:14px;padding:16px 22px}.main>.agenfisio-agenda-header .agenfisio-agenda-heading{gap:14px}.main>.agenfisio-agenda-header .agenfisio-agenda-heading-icon{border-radius:13px;width:48px;min-width:48px;height:48px}.main>.agenfisio-agenda-header .agenfisio-agenda-heading-icon svg{width:22px;height:22px}.main>.agenfisio-agenda-header h1{letter-spacing:-.5px;font-size:26px;line-height:1.2}.main>.agenfisio-agenda-header p{margin-top:4px;font-size:13px}}@media screen and (width<=760px){.main>.agenfisio-agenda-header{border-radius:15px;min-height:auto;margin-bottom:12px;padding:15px 14px}.main>.agenfisio-agenda-header .agenfisio-agenda-heading{gap:11px}.main>.agenfisio-agenda-header .agenfisio-agenda-heading-icon{border-radius:12px;width:43px;min-width:43px;height:43px}.main>.agenfisio-agenda-header .agenfisio-agenda-heading-icon svg{width:20px;height:20px}.main>.agenfisio-agenda-header h1{font-size:23px}.main>.agenfisio-agenda-header p{font-size:12px}}@media screen and (width>=801px){.main>.agenfisio-agenda-header{margin-top:0}.main>.relatorios-page{padding-top:0}.main>.relatorios-page>.relatorios-header{margin-top:0}}@media screen and (width<=800px){.main>.agenfisio-agenda-header{margin-top:0}.main>.relatorios-page{padding-top:0}.main>.relatorios-page>.relatorios-header{margin-top:0}}@media screen{.main .pacientes-page{padding-top:0}.pacientes-page>.agenfisio-pacientes-header{box-sizing:border-box;background:radial-gradient(circle at 83% 15%,#70d8a642,#0000 36%),linear-gradient(115deg,#eaf8f1 0%,#e0f6ec 55%,#c6edda 100%);border:1px solid #d6eee2;border-radius:18px;align-items:center;min-height:96px;margin-bottom:14px;padding:16px 22px;display:flex;box-shadow:0 8px 24px #0054320a}.agenfisio-pacientes-heading{align-items:center;gap:14px;display:flex}.agenfisio-pacientes-heading-icon{color:#007346;background:#008b531a;border-radius:13px;justify-content:center;align-items:center;width:48px;min-width:48px;height:48px;display:flex}.agenfisio-pacientes-header h1{color:#063b2a;margin:0;font-size:26px;font-weight:800;line-height:1.2}.agenfisio-pacientes-header p{color:#5c776b;margin:4px 0 0;font-size:13px}.agenfisio-pacientes-toolbar{background:#fff;border:1px solid #dce9e2;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:17px 20px;display:flex}.agenfisio-pacientes-toolbar .pacientes-pesquisa{flex:1;max-width:460px;margin:0}.agenfisio-pacientes-toolbar .btn-novo-paciente{color:#fff;white-space:nowrap;cursor:pointer;background:linear-gradient(135deg,#008e55,#00673f);border:none;border-radius:12px;justify-content:center;align-items:center;min-height:44px;padding:0 20px;font-size:14px;font-weight:700;display:inline-flex}}@media screen and (width<=760px){.main .pacientes-page{padding:0 10px 16px}.pacientes-page>.agenfisio-pacientes-header{border-radius:15px;min-height:auto;padding:15px 14px}.agenfisio-pacientes-heading-icon{width:43px;min-width:43px;height:43px}.agenfisio-pacientes-header h1{font-size:23px}.agenfisio-pacientes-toolbar{flex-direction:column;align-items:stretch;padding:14px}.agenfisio-pacientes-toolbar .pacientes-pesquisa{width:100%;max-width:none}.agenfisio-pacientes-toolbar .btn-novo-paciente{width:100%;min-height:46px}}@media screen and (width>=801px){.main>.pacientes-page{padding-left:0;padding-right:0}}@media screen and (width<=800px){.main>.pacientes-page{padding-left:0;padding-right:0}}@media screen{.pacientes-page>.pacientes-lista .paciente-switch{white-space:nowrap;cursor:pointer;flex-direction:row;align-items:center;gap:10px;width:auto;min-width:max-content;height:auto;display:inline-flex;position:relative}.pacientes-page>.pacientes-lista .paciente-switch-trilho{flex:0 0 38px;width:38px;height:22px;margin:0;display:inline-block;position:relative}.pacientes-page>.pacientes-lista .paciente-switch-texto{white-space:nowrap;width:auto;min-width:45px;margin:0;line-height:22px;display:inline-block;position:static}.pacientes-page>.pacientes-lista .paciente-switch input{opacity:0;width:1px;height:1px;position:absolute}:is(.main>.tipos-atendimento-page,.main>.pacientes-page:has(>.agenfisio-cadastro-header)){width:100%;min-width:0;padding-top:0;padding-left:0;padding-right:0}.agenfisio-cadastro-header{box-sizing:border-box;background:radial-gradient(circle at 83% 15%,#70d8a642,#0000 36%),linear-gradient(115deg,#eaf8f1 0%,#e0f6ec 55%,#c6edda 100%);border:1px solid #d6eee2;border-radius:18px;align-items:center;min-height:96px;margin-bottom:14px;padding:16px 22px;display:flex;box-shadow:0 8px 24px #0054320a}.agenfisio-cadastro-heading{align-items:center;gap:14px;min-width:0;display:flex}.agenfisio-cadastro-icon{color:#007346;background:#008b531a;border-radius:13px;justify-content:center;align-items:center;width:48px;min-width:48px;height:48px;display:flex}.agenfisio-cadastro-header h1,.tipos-atendimento-page .agenfisio-cadastro-header h1{color:#063b2a;letter-spacing:-.5px;margin:0;font-size:26px;font-weight:800;line-height:1.2}.agenfisio-cadastro-header p,.tipos-atendimento-page .agenfisio-cadastro-header p{color:#5c776b;margin:4px 0 0;font-size:13px;line-height:1.5}.agenfisio-cadastro-toolbar{box-sizing:border-box;background:#fff;border:1px solid #dce9e2;border-radius:18px;justify-content:flex-end;align-items:center;gap:16px;min-height:76px;margin-bottom:16px;padding:16px 20px;display:flex}.agenfisio-cadastro-toolbar .btn-novo-paciente,.tipos-atendimento-page .agenfisio-cadastro-toolbar .btn-primary{color:#fff;white-space:nowrap;cursor:pointer;background:linear-gradient(135deg,#008e55,#00673f);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 20px;font-size:14px;font-weight:700;display:inline-flex}.agenfisio-cadastro-toolbar .btn-novo-paciente:hover,.tipos-atendimento-page .agenfisio-cadastro-toolbar .btn-primary:hover{filter:brightness(1.06)}.agenfisio-usuarios-toolbar{justify-content:space-between}.agenfisio-usuarios-toolbar .pacientes-pesquisa{flex:1;max-width:460px;margin:0}}@media screen and (width<=760px){.agenfisio-cadastro-header{border-radius:15px;min-height:auto;margin-bottom:12px;padding:15px 14px}.agenfisio-cadastro-heading{gap:11px}.agenfisio-cadastro-icon{border-radius:12px;width:43px;min-width:43px;height:43px}.agenfisio-cadastro-header h1,.tipos-atendimento-page .agenfisio-cadastro-header h1{font-size:23px}.agenfisio-cadastro-header p,.tipos-atendimento-page .agenfisio-cadastro-header p{font-size:12px}.agenfisio-cadastro-toolbar{border-radius:15px;min-height:auto;padding:14px}.agenfisio-usuarios-toolbar{flex-direction:column;align-items:stretch;gap:12px}.agenfisio-usuarios-toolbar .pacientes-pesquisa{width:100%;max-width:none}.agenfisio-cadastro-toolbar .btn-novo-paciente,.tipos-atendimento-page .agenfisio-cadastro-toolbar .btn-primary{width:100%;min-height:46px}}@media screen{.agenfisio-tempos-lista .pacientes-tabela .paciente-switch{vertical-align:middle;cursor:pointer;width:44px;min-width:44px;height:24px;display:inline-block;position:relative}.agenfisio-tempos-lista .pacientes-tabela .paciente-switch-slider{opacity:1;visibility:visible;background-color:#cbd5e1;border-radius:999px;width:44px;height:24px;transition:background-color .2s;display:block;position:absolute;inset:0}.agenfisio-tempos-lista .pacientes-tabela .paciente-switch-slider:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000026}.agenfisio-tempos-lista .pacientes-tabela .paciente-switch input:checked+.paciente-switch-slider{background-color:#07804b}.agenfisio-tempos-lista .pacientes-tabela .paciente-switch input:checked+.paciente-switch-slider:before{transform:translate(20px)}.agenfisio-tempos-lista .pacientes-tabela .paciente-switch input:disabled+.paciente-switch-slider{opacity:.55;cursor:not-allowed}.agenfisio-tempos-lista .pacientes-tabela .paciente-switch input:focus-visible+.paciente-switch-slider{outline-offset:3px;outline:3px solid #00804b40}.agenfisio-tempos-lista .pacientes-tabela tbody tr{height:36px!important}.agenfisio-tempos-lista .pacientes-tabela tbody td{vertical-align:middle!important;height:36px!important;padding:4px 12px!important;line-height:1.15!important}.agenfisio-tempos-lista .pacientes-tabela thead th{padding:8px 12px!important}.agenfisio-tempos-lista .paciente-switch{vertical-align:middle!important;margin:0!important}.agenfisio-usuarios-lista .pacientes-tabela tbody tr{height:36px!important}.agenfisio-usuarios-lista .pacientes-tabela tbody td{vertical-align:middle!important;height:36px!important;padding:4px 12px!important;line-height:1.2!important}.agenfisio-usuarios-lista .pacientes-tabela thead th{padding:8px 12px!important}.agenfisio-usuarios-lista .pacientes-tabela .paciente-switch{vertical-align:middle;cursor:pointer;width:44px;min-width:44px;height:24px;display:inline-block;position:relative}.agenfisio-usuarios-lista .pacientes-tabela .paciente-switch-slider{opacity:1;visibility:visible;background-color:#cbd5e1;border-radius:999px;width:44px;height:24px;transition:background-color .2s;display:block;position:absolute;inset:0}.agenfisio-usuarios-lista .pacientes-tabela .paciente-switch-slider:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000026}.agenfisio-usuarios-lista .pacientes-tabela .paciente-switch input:checked+.paciente-switch-slider{background-color:#07804b}.agenfisio-usuarios-lista .pacientes-tabela .paciente-switch input:checked+.paciente-switch-slider:before{transform:translate(20px)}.agenfisio-usuarios-lista .pacientes-tabela .paciente-switch input:disabled+.paciente-switch-slider{opacity:.55;cursor:not-allowed}.agenfisio-usuarios-lista .pacientes-tabela .paciente-switch input:focus-visible+.paciente-switch-slider{outline-offset:3px;outline:3px solid #00804b40}.agenfisio-pacientes-lista .pacientes-tabela tbody tr{height:36px!important}.agenfisio-pacientes-lista .pacientes-tabela tbody td{vertical-align:middle!important;height:36px!important;padding:4px 12px!important;line-height:1.2!important}.agenfisio-pacientes-lista .pacientes-tabela thead th{vertical-align:middle!important;padding:8px 12px!important}}
