@import url('https://fonts.googleapis.com/css2?family=Jost:wght@200;300;500;600&family=Lato:wght@400;700&display=swap');
:root{font-family:Lato,sans-serif;color:#efeaf2;background:#0b0710;--panel:#171021;--border:#2e2440;--violet:#a78bc7;--teal:#4ecdc4}
[hidden]{display:none!important}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -30%,rgba(139,111,168,.26),transparent 55%),#0b0710}
button,input,textarea{font:inherit}button,.button-link{cursor:pointer;background:linear-gradient(135deg,#6b468f,#a78bc7);border:0;border-radius:10px;color:#0b0710;padding:.8rem 1.2rem;font-weight:700;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #4ecdc4;outline-offset:2px}
.brandbar{height:96px;display:flex;align-items:center;justify-content:space-between;padding:1rem max(4vw,20px);border-bottom:1px solid var(--border);background:rgba(11,7,16,.65)}.logo{max-width:300px;max-height:75px;object-fit:contain}.logo-clinic{width:300px;height:70px;object-fit:cover;object-position:center}.logo-four{max-width:110px}.brandline{height:1px;flex:1;margin:0 4vw;background:linear-gradient(90deg,#8b6fa8,#4ecdc4);opacity:.5}
.nav{display:flex;gap:1.4rem;align-items:center;padding:1rem max(4vw,20px);border-bottom:1px solid var(--border);flex-wrap:wrap}.nav a,.text-link{color:var(--violet);text-decoration:none}.nav a:hover,.text-link:hover{text-decoration:underline}.nav .spacer{flex:1}.nav .quiet{padding:.3rem .6rem;background:transparent;color:#d8d2de;border:1px solid var(--border)}
.content{max-width:1200px;margin:auto;padding:3.5rem 24px 6rem}.eyebrow{font-size:.76rem;text-transform:uppercase;letter-spacing:.18em;color:#a78bc7;font-weight:700}h1,h2{font-family:Jost,sans-serif;line-height:1.12;margin:.4em 0}h1{font-size:clamp(2.2rem,5vw,4.3rem);font-weight:300;max-width:850px}h2{font-size:1.55rem;font-weight:500}.lead{color:#d8d2de;font-size:1.15rem;max-width:780px;line-height:1.6;margin-bottom:2.5rem}p,li{line-height:1.55;color:#d8d2de}.hero-grid,.section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin:1.2rem 0}.card{background:#171021;border:1px solid #2e2440;border-radius:18px;padding:1.65rem}.card.accent{border-color:#8b6fa8}.card.next{border-left:3px solid #4ecdc4;margin-top:1.2rem}.card.disabled{opacity:.65}.kpis{display:flex;gap:1.2rem;flex-wrap:wrap;margin-top:1.4rem}.kpi{min-width:110px}.kpi strong{font-family:Jost,sans-serif;display:block;font-size:2rem;color:#a78bc7;font-weight:500}.kpi span{font-size:.8rem;color:#c9b896}
.login-wrap{min-height:calc(100vh - 96px);display:grid;place-items:center;padding:2rem}.login-card{background:#171021;border:1px solid #2e2440;border-radius:20px;width:min(100%,460px);padding:2rem}.login-card h1{font-size:2.25rem}form{display:grid;gap:1rem}form label{display:grid;gap:.35rem;color:#d8d2de}input[type=email],input[type=password],textarea{width:100%;background:#1e1529;color:#efeaf2;border:1px solid #3a2f4d;border-radius:8px;padding:.75rem}textarea{min-height:90px}.approval-form{margin-top:1rem}.approval-form label,.options label{display:block}.options{display:grid;gap:.6rem;grid-template-columns:repeat(2,minmax(0,1fr))}.button-link{display:inline-block;margin-top:1rem}iframe{width:100%;min-height:520px;border:1px solid var(--border);margin-top:1rem}audio{width:100%;margin-top:1rem}ul{padding-left:1.25rem}
.login-card button.quiet{margin-top:1rem;background:transparent;color:#a78bc7;border:1px solid #3a2f4d}
@media(max-width:700px){.hero-grid,.section-grid,.options{grid-template-columns:1fr}.content{padding:2rem 16px}.brandbar{height:78px}.logo{max-width:185px;max-height:55px}.logo-clinic{width:185px;height:48px}.logo-four{max-width:75px}.nav{gap:.8rem}.card{padding:1.25rem}}
/* v1.1 · indicadores + termo */
.subtabs{display:flex;gap:.5rem;flex-wrap:wrap;margin:0 0 1.4rem}.subtab{background:transparent;color:#d8d2de;border:1px solid var(--border);padding:.55rem 1rem;font-weight:500}.subtab[aria-selected=true]{background:linear-gradient(135deg,#6b468f,#a78bc7);color:#0b0710;border-color:transparent;font-weight:700}
.subview .card{margin-bottom:1.6rem}.subview .kpis{margin:1rem 0 1.6rem}.kpi small.kpi-note{display:block;font-size:.72rem;color:#8f8599;margin-top:.2rem}
.chart-wrap{overflow-x:auto;margin:.8rem 0}.chart{width:100%;min-width:600px;height:auto}.chart .grid{stroke:#2e2440;stroke-width:1}.chart .axis{fill:#a79fb0;font-size:11px;font-family:Lato,sans-serif}
.s1{fill:#a78bc7}.s2{fill:#4ecdc4}.s3{fill:#c9b896}.s4{fill:#6b468f}.s5{fill:#e07a8a}.s6{fill:#5d7fa6}
.legend{display:flex;gap:1.2rem;flex-wrap:wrap;font-size:.85rem;color:#d8d2de;margin-top:.6rem}.legend-item{display:inline-flex;align-items:center;gap:.45rem}.sw{display:inline-block;width:12px;height:12px;border-radius:3px}
i.sw.s1{background:#a78bc7}i.sw.s2{background:#4ecdc4}i.sw.s3{background:#c9b896}i.sw.s4{background:#6b468f}i.sw.s5{background:#e07a8a}i.sw.s6{background:#5d7fa6}
.table-wrap{overflow-x:auto;margin:1rem 0}table.data{border-collapse:collapse;width:100%;font-size:.86rem}table.data th,table.data td{padding:.5rem .6rem;border-bottom:1px solid #2e2440;text-align:left;white-space:nowrap}table.data th{color:#a78bc7;font-weight:700;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em}table.data .num{text-align:right;font-variant-numeric:tabular-nums}table.data tr.total td{font-weight:700;color:#efeaf2;border-top:2px solid #8b6fa8}
.source{font-size:.76rem;color:#8f8599;margin-top:1rem}.quirk{font-size:.86rem;color:#c9b896;border-left:2px solid #c9b896;padding-left:.7rem}.loading{color:#8f8599}
.tools{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;margin-top:.6rem}.year-select,.filter{background:#1e1529;color:#efeaf2;border:1px solid #3a2f4d;border-radius:8px;padding:.55rem .7rem;font:inherit}
.term-card{width:min(100%,820px)}.term-sub{color:#c9b896}.term-body{max-height:46vh;overflow-y:auto;border:1px solid var(--border);border-radius:12px;padding:1rem 1.2rem;margin:1rem 0;background:#120c1a}.term-body p{font-size:.93rem}
label.check{display:flex;gap:.6rem;align-items:flex-start}fieldset.capacity{border:1px solid var(--border);border-radius:10px;padding:.8rem 1rem}fieldset.capacity legend{color:#a78bc7;padding:0 .4rem}fieldset.capacity label{display:block}button:disabled{opacity:.45;cursor:not-allowed}
input[type=text]{width:100%;background:#1e1529;color:#efeaf2;border:1px solid #3a2f4d;border-radius:8px;padding:.75rem}
@media print{.brandbar,.nav{display:none}body{background:#fff}.card{border:0}p,li,h1,h2{color:#000}}
@media(max-width:700px){.subtab{flex:1 1 45%}}
