*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f5f7f6;color:#173129}.loading-screen,.login-page{min-height:100vh;display:grid;place-items:center;background:#14322c}.login-card{width:min(420px,calc(100vw - 32px));background:#fff;border-radius:18px;padding:32px;box-shadow:0 20px 60px #0003}.login-logo{margin-bottom:20px}.login-card h1{margin:5px 0 6px}.login-card p{margin:0 0 24px;color:#6d8079}.login-card label{display:grid;gap:7px;font-size:13px;font-weight:700;margin-top:14px}.login-card input{width:100%;border:1px solid #d9e2de;border-radius:9px;padding:12px;font:inherit;outline:none}.login-card input:focus{border-color:#2c5b51;box-shadow:0 0 0 3px #2c5b511a}.login-button{width:100%;margin-top:20px}.login-error{margin-top:14px;padding:10px;border-radius:8px;background:#fff0ef;color:#9a332d;font-size:13px}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{background:#14322c;color:#fff;padding:24px 16px;display:flex;flex-direction:column;gap:28px}.brand{display:flex;align-items:center;gap:12px;padding:0 8px}.brand-mark{width:42px;height:42px;border-radius:13px;background:#d6ad55;color:#14322c;display:grid;place-items:center;font-weight:800}.brand strong,.brand span,.sidebar-footer strong,.sidebar-footer span{display:block}.brand span,.sidebar-footer span{font-size:12px;opacity:.65}.sidebar nav{display:grid;gap:5px}.nav-item{color:#dce6e2;text-decoration:none;display:flex;gap:11px;align-items:center;padding:11px 12px;border-radius:10px;font-size:14px}.nav-item:hover,.nav-item.active{background:#ffffff1a;color:#fff}.nav-item.active{box-shadow:inset 3px 0 #d6ad55}.sidebar-footer{margin-top:auto;display:flex;gap:10px;align-items:center;padding:12px 8px;border-top:1px solid rgba(255,255,255,.1)}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#2c5b51}.main{min-width:0}.topbar{height:78px;background:#fff;border-bottom:1px solid #e4eae7;padding:14px 28px;display:flex;align-items:center;justify-content:space-between}.topbar h1{font-size:19px;margin:2px 0}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:700;color:#789087}.primary-button{border:0;background:#14322c;color:#fff;padding:11px 16px;border-radius:9px;font-weight:700;cursor:pointer}.primary-button:disabled{opacity:.65;cursor:not-allowed}.content{padding:28px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.section-heading h2,.module-page h2{margin:4px 0 0;font-size:28px}.section-heading p{margin:6px 0 0;color:#6d8079}.period-pill{background:#e8eeeb;padding:8px 12px;border-radius:999px;font-size:12px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.metric-card,.panel{background:#fff;border:1px solid #e2e9e6;border-radius:14px;padding:18px;box-shadow:0 3px 12px #14322c0a}.metric-card span,.metric-card small{display:block;color:#6c8179}.metric-card strong{display:block;font-size:23px;margin:9px 0}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-top:14px}.panel h3{margin:5px 0 18px}.pipeline{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pipeline-item{background:#f5f8f7;border-radius:10px;padding:14px}.pipeline-item strong,.pipeline-item span{display:block}.pipeline-item strong{font-size:22px}.pipeline-item span{font-size:12px;color:#71857e}.status-list div{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid #edf1ef}.status-list div:last-child{border:0}.status-list span{color:#62766f}.module-page p{color:#6d8079;max-width:720px}.empty-state{margin-top:24px;min-height:240px;display:grid;place-items:center;align-content:center;gap:7px;color:#6f817b}.empty-state strong{color:#173129}.patients-total{background:#e8eeeb;padding:9px 12px;border-radius:999px;font-size:12px;font-weight:700}.patients-layout{display:grid;grid-template-columns:minmax(320px,420px) 1fr;gap:14px;align-items:start}.patient-form-panel{position:sticky;top:98px}.patient-form{display:grid;gap:14px}.patient-form label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#445e55}.patient-form input,.patient-form select,.patient-form textarea,.patient-search,.authorization-filters select,.authorization-actions select{width:100%;border:1px solid #d7e1dd;border-radius:9px;padding:11px 12px;font:inherit;background:#fff;outline:none}.patient-form input:focus,.patient-form select:focus,.patient-form textarea:focus,.patient-search:focus,.authorization-filters select:focus,.authorization-actions select:focus{border-color:#2c5b51;box-shadow:0 0 0 3px #2c5b5114}.patient-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.patient-save{width:100%;margin-top:2px}.form-message{padding:10px 12px;border-radius:9px;font-size:13px}.error-message{background:#fff0ef;color:#9a332d}.success-message{background:#edf7f1;color:#25633f}.patients-list-header{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:10px}.patients-list-header h3{margin:4px 0 0}.patient-search{max-width:260px}.patients-table-wrap{overflow:auto}.patients-table{width:100%;border-collapse:collapse;min-width:720px}.patients-table th{font-size:11px;text-align:left;color:#789087;text-transform:uppercase;letter-spacing:.05em;padding:11px 10px;border-bottom:1px solid #e7ecea}.patients-table td{padding:13px 10px;border-bottom:1px solid #edf1ef;font-size:13px;vertical-align:middle}.patients-table td span,.patients-table td small{display:block}.patients-table td small{margin-top:3px;color:#7a8c85}.link-button{border:0;background:transparent;padding:4px 0;font:inherit;cursor:pointer;color:#275b50}.danger-link{color:#a0433c}.link-button:hover{text-decoration:underline}.authorization-metrics{margin-bottom:14px}.authorization-layout{display:grid;grid-template-columns:minmax(350px,430px) 1fr;gap:14px;align-items:start}.authorization-form-panel{position:sticky;top:98px}.authorization-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.authorization-toolbar h3{margin:4px 0 0}.authorization-filters{display:flex;gap:8px;align-items:center}.authorization-filters .patient-search{min-width:220px}.authorization-filters select{min-width:150px}.authorization-cards{display:grid;gap:10px}.authorization-card{border:1px solid #e3e9e6;border-radius:12px;padding:15px;background:#fff}.authorization-card-top{display:flex;justify-content:space-between;gap:12px;align-items:start}.authorization-card-top strong,.authorization-card-top span{display:block}.authorization-card-top>div>span{margin-top:4px;color:#6d8079;font-size:12px}.status-badge{font-size:11px;font-weight:800;border-radius:999px;padding:6px 9px;white-space:nowrap;background:#edf1ef;color:#566b63}.status-em_analise{background:#fff5dc;color:#8a6418}.status-autorizado{background:#eaf7ef;color:#286944}.status-parcial{background:#eef4ff;color:#355e9d}.status-negado,.status-cancelado{background:#fff0ef;color:#9a332d}.status-solicitado{background:#edf5f4;color:#2d6258}.status-expirado{background:#f1f1f1;color:#686868}.authorization-details{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:14px 0}.authorization-details div{background:#f7f9f8;border-radius:9px;padding:10px}.authorization-details small,.authorization-details strong{display:block}.authorization-details small{font-size:10px;color:#7a8c85;text-transform:uppercase;letter-spacing:.04em}.authorization-details strong{font-size:13px;margin-top:4px}.authorization-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #edf1ef;padding-top:12px}.authorization-actions select{max-width:180px;padding:8px 10px}.history-drawer{margin-top:14px}.history-header{display:flex;justify-content:space-between;align-items:start}.history-header h3{margin:4px 0 0}.history-list{display:grid;gap:0;margin-top:12px}.history-list>div{position:relative;display:grid;grid-template-columns:22px 1fr;gap:10px;padding:0 0 18px}.history-list>div:not(:last-child):before{content:"";position:absolute;left:5px;top:11px;bottom:-2px;width:1px;background:#d8e2de}.history-dot{width:11px;height:11px;border-radius:50%;background:#2c5b51;margin-top:4px;z-index:1}.history-list strong,.history-list small{display:block}.history-list small{margin-top:3px;color:#71857e}.history-list p{margin:6px 0 0;color:#566b63;font-size:13px}@media(max-width:1180px){.authorization-layout{grid-template-columns:1fr}.authorization-form-panel{position:static}}@media(max-width:1100px){.patients-layout{grid-template-columns:1fr}.patient-form-panel{position:static}.authorization-details{grid-template-columns:repeat(3,1fr)}}@media(max-width:980px){.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.authorization-toolbar{align-items:stretch;flex-direction:column}.authorization-filters{align-items:stretch}}@media(max-width:720px){.app-shell{grid-template-columns:76px 1fr}.sidebar{padding:18px 10px}.brand>div:last-child,.nav-item span,.sidebar-footer>div:last-child{display:none}.brand,.nav-item{justify-content:center}.topbar{padding:14px 16px}.topbar h1{font-size:17px}.topbar .primary-button{display:none}.content{padding:16px}.metric-grid{grid-template-columns:1fr}.pipeline{grid-template-columns:repeat(2,1fr)}.patient-form-row{grid-template-columns:1fr}.patients-list-header{align-items:stretch;flex-direction:column}.patient-search{max-width:none}.section-heading{align-items:flex-start;gap:12px;flex-direction:column}.authorization-filters{flex-direction:column}.authorization-filters .patient-search{min-width:0}.authorization-details{grid-template-columns:repeat(2,1fr)}.authorization-actions{align-items:stretch;flex-direction:column}.authorization-actions select{max-width:none}}.crud-page p,.agenda-page p,.settings-page p{color:#6d8079;margin:6px 0 0}.crud-layout{display:grid;grid-template-columns:minmax(340px,460px) 1fr;gap:14px;align-items:start}.crud-layout.narrow-form{grid-template-columns:minmax(300px,380px) 1fr}.crud-form label,.date-filter{display:grid;gap:7px;font-size:12px;font-weight:700;color:#445e55}.crud-form input,.crud-form select,.crud-form textarea,.date-filter input,.status-select{width:100%;border:1px solid #d7e1dd;border-radius:9px;padding:11px 12px;font:inherit;background:#fff;outline:none}.crud-form textarea{resize:vertical}.crud-form input:focus,.crud-form select:focus,.crud-form textarea:focus,.date-filter input:focus,.status-select:focus{border-color:#2c5b51;box-shadow:0 0 0 3px #2c5b5114}.list-header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:14px}.list-header h3{margin:4px 0}.entity-list{display:grid}.entity-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 2px;border-bottom:1px solid #edf1ef}.entity-row:last-child{border-bottom:0}.entity-row span{font-size:12px;color:#70827b;margin-top:4px}.agenda-layout{display:grid;grid-template-columns:minmax(380px,500px) 1fr;gap:14px;align-items:start}.agenda-layout>.panel:first-child{position:sticky;top:98px}.date-filter{min-width:170px}.schedule-list{display:grid;gap:9px}.schedule-card{display:grid;grid-template-columns:72px 1fr 132px;gap:14px;align-items:center;padding:13px;border:1px solid #e5ebe8;border-radius:12px;background:#fff}.schedule-time{border-right:1px solid #e8eeeb}.schedule-time strong,.schedule-time span,.schedule-main strong,.schedule-main span,.schedule-main small{display:block}.schedule-time strong{font-size:18px}.schedule-time span{font-size:11px;color:#7c8e87;margin-top:2px}.schedule-main span{font-size:12px;color:#5f746c;margin-top:4px}.schedule-main small{font-size:11px;color:#86958f;margin-top:4px}.status-select{padding:8px 9px;font-size:12px;font-weight:700}.status-agendado{background:#eef5f2}.status-confirmado{background:#edf3fb}.status-atendido{background:#edf7f1}.status-faltou{background:#fff5df}.status-cancelado{background:#fff0ef}.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.settings-card{min-height:155px;background:#fff;border:1px solid #e2e9e6;border-radius:14px;padding:20px;text-decoration:none;color:#173129;display:flex;flex-direction:column;align-items:flex-start;gap:8px;box-shadow:0 3px 12px #14322c0a;transition:.15s ease}.settings-card:not(.disabled):hover{transform:translateY(-2px);border-color:#b8c9c2;box-shadow:0 8px 24px #14322c14}.settings-card svg{color:#2c5b51}.settings-card strong{font-size:16px;margin-top:5px}.settings-card span{font-size:12px;color:#6d8079;line-height:1.4}.settings-card small{margin-top:auto;color:#2c5b51;font-weight:700}.settings-card.disabled{opacity:.58}.topbar-link{text-decoration:none}@media(max-width:1120px){.crud-layout,.crud-layout.narrow-form,.agenda-layout{grid-template-columns:1fr}.agenda-layout>.panel:first-child{position:static}.settings-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.form-grid{grid-template-columns:1fr}.schedule-card{grid-template-columns:62px 1fr}.schedule-card .status-select{grid-column:1/-1}.settings-grid{grid-template-columns:1fr}.list-header{align-items:stretch;flex-direction:column}}.crud-layout{display:grid;grid-template-columns:minmax(330px,430px) 1fr;gap:14px;align-items:start}.crud-layout.narrow-form{grid-template-columns:minmax(300px,390px) 1fr}.crud-form{display:grid;gap:14px}.crud-form label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#445e55}.crud-form input,.crud-form select,.crud-form textarea{width:100%;border:1px solid #d7e1dd;border-radius:9px;padding:11px 12px;font:inherit;background:#fff;outline:none}.crud-form input:focus,.crud-form select:focus,.crud-form textarea:focus{border-color:#2c5b51;box-shadow:0 0 0 3px #2c5b5114}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.list-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.list-header h3{margin:0}.entity-list{display:grid;gap:8px}.entity-row{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid #e6ece9;border-radius:10px;padding:12px}.entity-row strong,.entity-row span{display:block}.entity-row span{font-size:12px;color:#71857e;margin-top:3px}.secondary-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid #cfdad6;background:#fff;color:#234d44;padding:9px 13px;border-radius:9px;font-weight:700;font-size:13px;cursor:pointer}.secondary-button:hover{background:#f2f6f4}.heading-actions,.inline-actions{display:flex;gap:10px;align-items:center}.link-button:disabled{opacity:.55;cursor:not-allowed;text-decoration:none}.tiss-preview{margin-top:14px}.tiss-preview p{margin:5px 0 0;color:#71857e;font-size:12px}.tiss-preview pre{margin:16px 0 0;max-height:460px;overflow:auto;white-space:pre-wrap;word-break:break-word;background:#102a24;color:#ecf5f1;padding:16px;border-radius:10px;font-size:12px;line-height:1.5}.patient-form textarea{resize:vertical}.patient-form select,.crud-form select{cursor:pointer}@media(max-width:1100px){.crud-layout,.crud-layout.narrow-form{grid-template-columns:1fr}}@media(max-width:720px){.form-grid{grid-template-columns:1fr}.heading-actions{align-items:stretch;flex-direction:column}.inline-actions{width:100%;justify-content:space-between}.list-header{align-items:stretch;flex-direction:column}}
