.reports-page--refresh{--report-accent:#2d9c67;--report-ink:#14342a;--report-soft:#6d8178;--report-line:#dde7e2;--report-surface:#ffffff;--report-surface-alt:#f5faf7;display:grid;gap:2.8rem;padding-bottom:5.5rem}.reports-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.9fr);gap:1.25rem;padding:1.6rem;border:1px solid var(--report-line);border-radius:1.3rem;background:radial-gradient(circle at top right,rgba(53,166,66,.12),transparent 28%),linear-gradient(180deg,#fff,#f5faf7);box-shadow:0 18px 40px #121f180f}.reports-hero__eyebrow{display:inline-block;margin-bottom:.55rem;color:var(--report-accent);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.reports-hero h1{margin:0;font-size:clamp(1.8rem,3.4vw,2.6rem);line-height:1.05;color:var(--report-ink)}.reports-hero p{margin:.75rem 0 0;max-width:72ch;color:var(--report-soft);line-height:1.65}.reports-hero__meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.reports-hero__meta span{padding:.6rem .8rem;border-radius:999px;border:1px solid var(--report-line);background:#ffffffd1;color:var(--report-soft);font-size:.88rem}.reports-hero__meta b{color:var(--report-ink)}.reports-hero__notice{padding:1.15rem;border-radius:1rem;background:#103c2d;color:#ebf6ef}.reports-hero__notice p{color:#ffffffe0}.reports-hero__notice ul{margin:.7rem 0 0;padding-left:1.15rem;display:grid;gap:.5rem}.score-grid,.insight-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.6rem}.score-card{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;padding:1.1rem 1.15rem;border:1px solid var(--report-line);border-radius:1.15rem;background:var(--report-surface);box-shadow:0 12px 28px #121f180d}.score-card--good{--report-accent:#2d9c67}.score-card--mid{--report-accent:#c6a239}.score-card--risk{--report-accent:#c06755}.score-ring{width:112px;height:112px;border-radius:50%;display:grid;place-items:center}.score-ring>div{width:82px;height:82px;border-radius:50%;background:#fff;display:grid;place-items:center;text-align:center}.score-ring strong{font-size:1.5rem;line-height:1;color:var(--report-ink)}.score-ring span{font-size:.7rem;color:var(--report-soft);font-weight:800}.score-card__text h3{margin:0;color:var(--report-ink)}.score-card__text p{margin:.4rem 0 0;color:var(--report-soft);line-height:1.5}.insight-card{padding:1rem 1.05rem;border-radius:1rem;border:1px solid var(--report-line);background:#fff;display:grid;gap:.35rem}.insight-card small{color:var(--report-soft);font-weight:800;text-transform:uppercase;letter-spacing:.06em}.insight-card strong{color:var(--report-ink);font-size:1.12rem}.insight-card p{margin:0;color:var(--report-soft);line-height:1.5}.insight-card--positive{background:linear-gradient(180deg,#fff,#f3fbf5)}.insight-card--warning{background:linear-gradient(180deg,#fff,#fff8f3)}.report-panel{padding:1.2rem 1.2rem 1.25rem;border:1px solid var(--report-line);border-radius:1.25rem;background:#fff;box-shadow:0 16px 36px #121f180d}.report-panel--compact-chart{max-width:1120px}.section-header{display:flex;justify-content:space-between;gap:1.2rem;align-items:flex-end;margin-bottom:1rem}.section-header small{display:block;margin-bottom:.3rem;color:var(--report-accent);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.section-header h2{margin:0;color:var(--report-ink);font-size:1.28rem}.section-header p{margin:0;max-width:54ch;color:var(--report-soft);line-height:1.55;text-align:right}.report-two-up{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:2rem}.report-three-up{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}.classic-chart--bar{display:grid;gap:.95rem}.classic-bar-row{display:grid;gap:.45rem}.classic-bar-row__head{display:flex;justify-content:space-between;gap:1rem;color:var(--report-ink)}.classic-bar-row__head span{font-weight:700}.classic-bar-row__track{height:12px;border-radius:999px;background:#e7efea;overflow:hidden}.classic-bar-row__track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#126344,#35a642,#a8d238)}.pie-chart-wrap{display:grid;justify-items:center;gap:1rem;padding-top:.5rem}.pie-chart{width:178px;height:178px;border-radius:50%;display:grid;place-items:center;box-shadow:0 14px 28px #121f1812}.pie-chart>div{width:108px;height:108px;border-radius:50%;background:#fff;display:grid;place-items:center;text-align:center}.pie-chart strong{color:var(--report-ink);font-size:1.55rem}.pie-chart span{color:var(--report-soft)}.pie-legend{display:grid;gap:.6rem;width:100%}.pie-legend div{display:flex;justify-content:space-between;gap:.75rem;padding:.75rem .9rem;border-radius:.9rem;background:#f6faf7}.pie-legend span{color:var(--report-soft)}.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:.55rem}.legend-dot--active{background:#126344}.legend-dot--inactive{background:#cfdcd5}.empty-chart{min-height:250px;display:grid;place-items:center;align-content:center;text-align:center;gap:.35rem;color:var(--report-soft)}.empty-chart strong{color:var(--report-ink);font-size:1.2rem}.mini-list{display:grid;gap:.7rem}.mini-list__row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem .9rem;border:1px solid #eef3f0;border-radius:.9rem;background:#f7faf8}.mini-list__row>div{display:grid;gap:.1rem}.mini-list__row small,.mini-list__row span{color:var(--report-soft)}.mini-list__row strong,.mini-list__row b{color:var(--report-ink)}.heatmap2d__legend{display:flex;align-items:center;justify-content:flex-end;gap:.6rem;margin-bottom:.9rem;color:var(--report-soft);font-size:.82rem}.heatmap2d__legend i{width:150px;height:12px;border-radius:999px;background:linear-gradient(90deg,#35a6422e,#126344f0)}.heatmap2d__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.heat-tile{--heat-alpha:.4;position:relative;min-height:146px;padding:1rem;border-radius:1rem;overflow:hidden;display:grid;align-content:end;gap:.18rem;color:#fff;background:linear-gradient(145deg,rgba(53,166,66,var(--heat-alpha)),rgba(18,99,68,var(--heat-alpha)));box-shadow:inset 0 0 0 1px #ffffff40}.heat-tile:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 18%,rgba(10,45,32,.36) 100%);pointer-events:none}.heat-tile>*{position:relative;z-index:1}.heat-tile__rank{position:absolute;top:.7rem;right:.75rem;font-weight:800;font-size:.8rem;opacity:.9}.heat-tile strong{font-size:1rem}.heat-tile small{opacity:.82}.heat-tile b{font-size:1.65rem;line-height:1.05;margin-top:.2rem}.heat-tile span{font-size:.8rem;opacity:.9}.panel-footnote{margin:1rem 0 0;padding:.85rem .95rem;border-radius:.9rem;background:#f6faf7;color:var(--report-soft);line-height:1.55;font-size:.88rem}.requirements-grid,.characterization-list,.quality-list{display:grid;gap:.75rem}.requirement-card{padding:1rem;border-radius:1rem;border:1px solid #edf3ef;background:#fbfdfc;display:grid;gap:.55rem}.requirement-card__head{display:flex;justify-content:space-between;gap:1rem}.requirement-card>span,.requirement-card>small{color:var(--report-soft)}.progress{height:10px;border-radius:999px;background:#e8f0eb;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,#126344,#35a642);border-radius:inherit}.characterization-row,.quality-list__row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;border:1px solid #edf3ef;border-radius:1rem;background:#fbfdfc}.characterization-row>div{display:grid;gap:.15rem}.characterization-row span,.quality-list__row span{color:var(--report-soft)}.scatter-compact{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:1.7rem;align-items:start}.scatter-wrap--compact{overflow:auto;min-height:0}.scatter-wrap--compact svg{display:block;width:100%;max-width:700px;min-width:520px;min-height:0}.scatter-plane{fill:#f4f8f6;stroke:#d6e3dc;stroke-width:1}.scatter-wall{fill:#eef5f1;stroke:#d6e3dc;stroke-width:1}.axis-line{stroke:#9fb3aa;stroke-width:1.5}.grid-line{stroke:#dde7e2;stroke-dasharray:4 6;stroke-width:1}.scatter-node-shadow{fill:#0f342912}.scatter-node{fill:#35a642c7;stroke:#126344;stroke-width:1.5}.scatter-wrap text{fill:#698076;font-size:11px}.scatter-index{fill:#fff!important;font-size:10px!important;font-weight:900}.scatter-legend{display:grid;gap:.55rem}.scatter-legend__item{display:grid;grid-template-columns:28px 1fr;gap:.7rem;align-items:start;padding:.65rem .7rem;border-radius:.8rem;background:#f7faf8;border:1px solid #eaf1ed}.scatter-legend__item>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#126344;color:#fff;font-size:.78rem;font-weight:900}.scatter-legend__item>div{display:grid;gap:.08rem}.scatter-legend__item strong{color:var(--report-ink);font-size:.85rem}.scatter-legend__item small{color:var(--report-soft);font-size:.72rem;line-height:1.35}@media(max-width:1240px){.score-grid,.insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-three-up{grid-template-columns:1fr 1fr}.report-three-up>.report-panel:last-child{grid-column:1/-1}}@media(max-width:980px){.reports-hero,.report-two-up,.scatter-compact{grid-template-columns:1fr}.heatmap2d__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.section-header{align-items:flex-start;flex-direction:column}.section-header p{text-align:left}}@media(max-width:720px){.score-grid,.insight-grid,.report-three-up{grid-template-columns:1fr}.report-three-up>.report-panel:last-child{grid-column:auto}.score-card{grid-template-columns:1fr;justify-items:center;text-align:center}.heatmap2d__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-hero{padding:1.15rem}.report-panel{padding:1rem}}@media(max-width:480px){.heatmap2d__grid{grid-template-columns:1fr}}.reports-page--refresh>.report-panel,.reports-page--refresh>.report-two-up,.reports-page--refresh>.report-three-up{scroll-margin-top:1.5rem}@media(max-width:980px){.reports-page--refresh{gap:2rem}.report-two-up,.report-three-up{gap:1.6rem}}@media(max-width:720px){.reports-page--refresh{gap:1.6rem}}.analytics-primary-panel{border-color:#12634440;background:linear-gradient(180deg,#fff,#f7fbf8)}.regional-progress{display:grid;grid-template-columns:minmax(290px,.75fr) minmax(420px,1.25fr);gap:2.2rem;align-items:center}.regional-progress__donut{width:min(340px,80vw);aspect-ratio:1;margin:auto;border-radius:50%;display:grid;place-items:center;box-shadow:0 20px 50px #1263441a}.regional-progress__center{width:58%;aspect-ratio:1;border-radius:50%;background:#fff;display:grid;align-content:center;justify-items:center;text-align:center;box-shadow:inset 0 0 0 1px #e3ece7}.regional-progress__center small{font-weight:900;color:#126344;letter-spacing:.08em}.regional-progress__center strong{font-size:clamp(1.45rem,3vw,2.25rem);color:#14342a;margin:.25rem 0}.regional-progress__center span{font-size:.82rem;color:#6d8178}.regional-progress__legend{display:grid;gap:.7rem}.regional-progress__item{display:grid;grid-template-columns:14px 1fr auto;gap:.75rem;align-items:center;padding:.8rem .85rem;border:1px solid #e6eee9;border-radius:.9rem;background:#fff}.regional-progress__swatch{width:12px;height:42px;border-radius:999px}.regional-progress__item>div{display:grid;gap:.16rem}.regional-progress__item strong{color:#14342a}.regional-progress__item small{color:#6d8178}.regional-progress__item b{color:#126344;font-size:1rem}.analytics-grid{display:grid;gap:2rem}.analytics-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.distribution-donut-wrap{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.2rem;align-items:center}.distribution-donut{width:160px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center}.distribution-donut>div{width:62%;aspect-ratio:1;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center;box-shadow:inset 0 0 0 1px #e7efea}.distribution-donut strong{font-size:1.45rem;color:#14342a}.distribution-donut small{color:#6d8178}.distribution-legend{display:grid;gap:.52rem;max-height:270px;overflow:auto;padding-right:.2rem}.distribution-legend>div{display:grid;grid-template-columns:10px 1fr;gap:.65rem;align-items:start}.distribution-legend>div>span{width:10px;height:28px;border-radius:999px}.distribution-legend p{margin:0;display:grid;gap:.05rem}.distribution-legend strong{font-size:.85rem;color:#14342a}.distribution-legend small{font-size:.76rem;color:#6d8178}.analytics-bars{display:grid;gap:.75rem;max-height:420px;overflow:auto;padding-right:.3rem}.analytics-bar{display:grid;gap:.35rem}.analytics-bar>div:first-child{display:flex;justify-content:space-between;gap:1rem;font-size:.82rem}.analytics-bar span{color:#14342a;font-weight:700}.analytics-bar b{color:#6d8178;font-size:.76rem}.analytics-bar__track{height:9px;border-radius:999px;background:#e8f0eb;overflow:hidden}.analytics-bar__track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#126344,#35a642,#a5cb35)}.analytics-empty{padding:1.25rem;border:1px dashed #dce8e1;border-radius:.9rem;color:#6d8178;text-align:center;background:#f8fbf9}.vulnerability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.vulnerability-card{padding:1rem;border:1px solid #e5eee8;border-radius:1rem;background:#fbfdfc;display:grid;gap:1rem}.vulnerability-card h3{margin:0;color:#14342a;font-size:1rem}.vulnerability-card p{margin:.35rem 0 0;color:#6d8178;font-size:.82rem;line-height:1.45}.vulnerability-card .distribution-donut-wrap{grid-template-columns:1fr;justify-items:center}.vulnerability-card .distribution-legend{width:100%;max-height:220px}@media(max-width:1050px){.regional-progress{grid-template-columns:1fr}.analytics-grid--three,.vulnerability-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.analytics-grid--two,.analytics-grid--three,.vulnerability-grid{grid-template-columns:1fr}.distribution-donut-wrap{grid-template-columns:1fr;justify-items:center}.distribution-legend{width:100%}}@media print{.regional-progress,.analytics-grid,.vulnerability-grid{break-inside:avoid}}.report-export-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border:1px solid #dce8e1;border-radius:1rem;background:#fff;box-shadow:0 10px 26px #121f180a}.report-export-bar__copy{display:grid;gap:.15rem}.report-export-bar__copy strong{color:#14342a}.report-export-bar__copy span{color:#6d8178;font-size:.86rem;line-height:1.45}.report-export-bar__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.65rem}.report-export-button{min-width:118px;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:.65rem .85rem;border:1px solid #cfe0d6;border-radius:.8rem;background:#f7fbf8;color:#174536;font:inherit;font-weight:800;cursor:pointer}.report-export-button:hover{background:#eef8f1;border-color:#afd1bc}.report-export-button:disabled{opacity:.55;cursor:wait}.report-export-button--primary{color:#fff;background:#126344;border-color:#126344}.report-export-button--primary:hover{background:#0d5238}.report-export-status{padding:.75rem .9rem;border-radius:.8rem;background:#fff5f2;border:1px solid #f0cec5;color:#8d3324;font-size:.9rem}@media print{@page{size:A4 landscape;margin:10mm}html,body{background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body>*{visibility:hidden}.reports-page--refresh,.reports-page--refresh *{visibility:visible}.reports-page--refresh{position:absolute;inset:0 auto auto 0;width:100%;max-width:none!important;padding:0!important;margin:0!important;gap:16px!important}.report-export-bar,.report-export-status{display:none!important}.reports-hero,.score-card,.insight-card,.report-panel{box-shadow:none!important;break-inside:avoid;page-break-inside:avoid}.score-grid,.insight-grid{grid-template-columns:repeat(4,1fr)!important;gap:10px!important}.report-three-up{grid-template-columns:repeat(3,1fr)!important;gap:10px!important}.report-two-up{grid-template-columns:1.15fr .85fr!important;gap:10px!important}.heatmap2d__grid{grid-template-columns:repeat(4,1fr)!important}.scatter-compact{grid-template-columns:1.45fr .55fr!important}.scatter-wrap--compact svg{min-width:0!important;max-width:100%!important}.report-panel--compact-chart{max-width:none!important}}@media(max-width:760px){.report-export-bar{align-items:flex-start;flex-direction:column}.report-export-bar__actions{width:100%;justify-content:flex-start}.report-export-button{flex:1}}.admin-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;margin:1.5rem 0}.admin-form,.assignment-form{margin-top:1.25rem}.assignment-form{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-form>.button{align-self:end}.person-search{display:grid;grid-template-columns:1fr auto;gap:.65rem;align-items:end}.request-list{display:grid;gap:.8rem;margin-top:1rem}.request-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--line);border-radius:.8rem;padding:1rem}.request-card>div:first-child{display:grid;gap:.2rem}.request-card span,.request-card small{color:var(--muted)}.request-card__actions{display:flex;gap:.5rem}.button--small{min-height:36px;padding:.45rem .7rem;font-size:.82rem}@media(max-width:900px){.admin-grid,.assignment-form{grid-template-columns:1fr}}@media(max-width:640px){.request-card{align-items:flex-start;flex-direction:column}.request-card__actions{width:100%}.request-card__actions .button{flex:1}.person-search{grid-template-columns:1fr}}.recovery-page{min-height:100vh;display:grid;place-items:center;padding:2rem;background:radial-gradient(circle at top left,rgba(165,203,53,.12),transparent 30%),linear-gradient(180deg,#f6faf7,#eef5f1)}.recovery-card{width:min(100%,560px);display:grid;gap:1.35rem;padding:2rem;border:1px solid #dce8e1;border-radius:1.3rem;background:#fff;box-shadow:0 24px 60px #13372a14}.recovery-card h1{margin:.25rem 0 .55rem;color:#14342a}.recovery-card p{margin:0;color:#6d8178;line-height:1.6}.recovery-card form{display:grid;gap:1rem}.recovery-card label{display:grid;gap:.45rem;color:#264b3d;font-weight:700}.recovery-back{color:#557266;text-decoration:none;font-weight:700;width:max-content}.recovery-back:hover{color:#126344}.gd-population-summary{display:grid;min-width:150px;padding:.85rem 1rem;border:1px solid var(--line);border-radius:.9rem;background:#fff;text-align:right}.gd-population-summary strong{font-size:1.55rem;color:#126344}.gd-population-summary span,.gd-table-sub{color:var(--muted);font-size:.82rem}.gd-table-sub{display:block;margin-top:.2rem}.gd-row-actions{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}.gd-page-notice{margin-bottom:1rem}.gd-pagination{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem}.gd-pagination>div{display:flex;gap:.5rem}.gd-button--danger,.gd-button--danger-soft{border:1px solid #b42318}.gd-button--danger{background:#b42318;color:#fff}.gd-button--danger-soft{background:#fff7f6;color:#9f1c13}.gd-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:1rem;background:#0c211994;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.gd-modal{width:min(760px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:1rem;box-shadow:0 28px 80px #00000038}.gd-modal--confirm{width:min(520px,100%)}.gd-modal--wide{width:min(900px,100%)}.gd-modal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.25rem 1.35rem;border-bottom:1px solid var(--line)}.gd-modal__head h2{margin:.2rem 0 .35rem}.gd-modal__head p:last-child{margin:0;color:var(--muted)}.gd-modal__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--muted);font-size:1.8rem;cursor:pointer}.gd-modal__body{padding:1.25rem 1.35rem}.gd-modal__actions{display:flex;justify-content:flex-end;gap:.65rem;padding:1rem 1.35rem 1.35rem;border-top:1px solid var(--line)}.gd-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.gd-edit-grid label{display:grid;gap:.4rem}.gd-edit-grid__wide{grid-column:1 / -1}.gd-confirm-copy{display:grid;gap:.7rem}.gd-confirm-copy p{margin:0}.gd-warning-copy{padding:.8rem;border-radius:.7rem;background:#fff7e6;color:#7a4c00}@media(max-width:760px){.gd-edit-grid{grid-template-columns:1fr}.gd-edit-grid__wide{grid-column:auto}.gd-pagination{align-items:flex-start;flex-direction:column}.gd-people-filters{grid-template-columns:1fr}}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#10241d;background:#f3f7f5;font-synthesis:none;--ink:#10241d;--muted:#64766f;--green:#0b6b4f;--lime:#c8f05b;--line:#dce6e1;--surface:#fff}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.brand{display:flex;align-items:center;gap:.7rem;font-weight:800;letter-spacing:.04em;color:#fff}.brand--dark{color:var(--ink)}.brand__mark{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:.75rem;background:var(--lime);color:#073b2c;font-weight:900}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.75rem 1.15rem;border-radius:.75rem;border:1px solid transparent;font-weight:700;cursor:pointer}.button--primary{background:var(--green);color:#fff;box-shadow:0 8px 22px #0b6b4f2b}.button--ghost{border-color:#b9c8c1;background:#fff}.button:disabled{opacity:.5;cursor:not-allowed}.welcome{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);background:#f7faf8}.welcome__copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,7vw,7rem);max-width:780px}.welcome h1{font-size:clamp(2.7rem,5.7vw,5.5rem);line-height:.98;letter-spacing:-.06em;margin:.8rem 0 1.5rem}.welcome p{font-size:1.12rem;line-height:1.7;color:var(--muted);max-width:620px}.welcome .actions{display:flex;gap:.75rem;margin:1.5rem 0}.welcome__visual{position:relative;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 75% 20%,#dff77e,transparent 32%),linear-gradient(145deg,#103e31,#062b22);min-height:520px}.signal-card{position:relative;z-index:2;width:min(72%,360px);padding:2rem;border:1px solid #ffffff30;border-radius:1.5rem;background:#ffffff14;color:#fff;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 30px 70px #00170f80}.signal-card__icon{float:right;display:grid;place-items:center;width:2.5rem;height:2.5rem;background:var(--lime);color:#143328;border-radius:50%}.signal-card strong{display:block;font-size:5rem;letter-spacing:-.07em;margin:.5rem 0}.signal-card p{color:#dbe9e3;margin:0}.orbit{position:absolute;border:1px solid #ffffff20;border-radius:50%}.orbit--one{width:520px;height:520px}.orbit--two{width:760px;height:760px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem!important;font-weight:800;color:var(--green)!important}.auth{min-height:100vh;display:grid;grid-template-columns:minmax(420px,.8fr) 1.2fr}.auth__panel{padding:clamp(2rem,6vw,6rem);display:flex;flex-direction:column;gap:3rem;justify-content:center}.auth h1{font-size:2.5rem;margin:.4rem 0}.auth p{color:var(--muted)}form{display:grid;gap:1.1rem}label{font-weight:700;font-size:.9rem;display:grid;gap:.45rem}input,select{width:100%;padding:.85rem 1rem;border:1px solid #cbd8d2;border-radius:.7rem;background:#fff;color:var(--ink)}input:focus,select:focus{outline:3px solid #c8f05b66;border-color:var(--green)}.auth__aside{display:flex;flex-direction:column;justify-content:flex-end;padding:5rem;background:linear-gradient(150deg,#0a6048,#062f25);color:#fff}.auth blockquote{font-size:clamp(2rem,4vw,4rem);line-height:1.12;letter-spacing:-.04em;margin:0;max-width:850px}.auth__aside p{color:#cce0d8}.notice{padding:1rem;border-radius:.75rem;background:#eef8c9;line-height:1.5}.notice button{display:block;margin-top:.7rem;border:0;background:none;color:var(--green);font-weight:800;cursor:pointer}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:1.5rem;background:#073b2e;color:#dbe8e3}.sidebar nav{display:grid;gap:.35rem;margin-top:3rem}.sidebar nav a,.nav-disabled{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;border-radius:.65rem;font-weight:650}.sidebar nav a.active{background:#c8f05b;color:#12362b}.nav-disabled{opacity:.55}.nav-disabled small{font-size:.65rem}.sidebar__foot{margin-top:auto;display:grid;padding:1rem;border-top:1px solid #ffffff1f}.sidebar__foot small{color:#93afa5;margin-top:.25rem}.main{min-width:0}.topbar{height:76px;padding:0 clamp(1rem,3vw,2.5rem);display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.topbar>div:first-child{display:grid}.topbar small{color:var(--muted)}.avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#e1f3a0;color:#174335;font-weight:800}.page{padding:clamp(1.2rem,3vw,2.5rem);max-width:1500px;margin:auto}.page__title,.card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.page__title h1{font-size:2.2rem;margin:.25rem 0}.page__title p{color:var(--muted);margin:.3rem 0}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:2rem 0}.metrics article,.card{background:var(--surface);border:1px solid var(--line);border-radius:1rem;padding:1.3rem;box-shadow:0 8px 30px #12362b08}.metrics article{display:grid;gap:.65rem}.metrics small,.metrics span,.card p{color:var(--muted)}.metrics strong{font-size:2rem}.metrics em{font-size:1rem;color:var(--muted);font-style:normal}.progress{height:7px;border-radius:5px;background:#e7eeeb;overflow:hidden}.progress i{display:block;height:100%;background:var(--green)}.dashboard-grid{display:grid;grid-template-columns:1.6fr .8fr;gap:1rem;margin-bottom:1rem}.card h2{margin:0;font-size:1.1rem}.card__head p{margin:.3rem 0 0;font-size:.88rem}.card__head>span{font-size:.75rem;padding:.4rem .6rem;background:#f0f4f2;border-radius:.5rem;color:var(--muted)}.chart{height:230px;display:flex;align-items:flex-end;gap:clamp(.6rem,3vw,2rem);padding:2rem .5rem 0}.chart>div{height:100%;flex:1;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;gap:.5rem}.chart i{width:100%;max-width:48px;background:linear-gradient(#c8f05b,#66ad67);border-radius:.5rem .5rem .2rem .2rem}.donut{width:150px;height:150px;margin:1.5rem auto;border-radius:50%;background:conic-gradient(#0b6b4f 0,#0b6b4f 75%,#e1aa3a 75%,#e1aa3a 92%,#b9c5c0 92%);display:grid;place-items:center}.donut:before{content:"";grid-area:1/1;width:105px;height:105px;border-radius:50%;background:#fff}.donut div{grid-area:1/1;z-index:1;display:grid;text-align:center}.donut strong{font-size:1.8rem}.donut small{color:var(--muted)}.legend{list-style:none;padding:0;display:grid;gap:.65rem;font-size:.9rem}.dot{display:inline-block;width:.6rem;height:.6rem;border-radius:50%;margin-right:.5rem}.dot--green{background:var(--green)}.dot--amber{background:#e1aa3a}.dot--gray{background:#b9c5c0}.table-card{margin-top:1rem}.table-wrap{overflow:auto;margin-top:1rem}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{text-align:left;padding:1rem;border-bottom:1px solid #edf1ef;font-size:.9rem}th{color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.badge{display:inline-flex;padding:.35rem .6rem;border-radius:99px;font-size:.75rem;font-weight:800}.badge--success{background:#dff3d7;color:#1b623f}.badge--warning{background:#fff0c5;color:#805b0a}.badge--neutral{background:#edf1ef;color:#586760}.filters{display:grid;grid-template-columns:1fr 210px;gap:1rem}.empty{text-align:center;padding:4rem;color:var(--muted)}@media(max-width:1000px){.metrics{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.welcome{grid-template-columns:1fr}.welcome__visual{min-height:380px}.auth{grid-template-columns:1fr}.auth__aside{display:none}}@media(max-width:720px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;padding:1rem}.sidebar nav{margin-top:1rem;grid-template-columns:repeat(2,1fr)}.sidebar__foot{display:none}.topbar{height:64px}.metrics{grid-template-columns:1fr}.page__title{flex-direction:column}.filters{grid-template-columns:1fr}.welcome__copy{padding:2rem}.welcome h1{font-size:3rem}.welcome__visual{min-height:330px}.auth__panel{padding:2rem}.chart{gap:.65rem}.sidebar nav .nav-disabled{display:none}}.auth__back{display:inline-flex;align-items:center;width:max-content;gap:.4rem;color:var(--green);font-size:.9rem;font-weight:750;transition:opacity .18s ease,transform .18s ease}.auth__back:hover{opacity:.78;transform:translate(-2px)}.auth__back:focus-visible{outline:3px solid #c8f05b66;outline-offset:4px;border-radius:.35rem}.auth__forgot{display:inline-block;width:max-content;margin-top:-.2rem;color:#557266;font-size:.9rem;font-weight:700;text-decoration:none}.auth__forgot:hover{color:#126344}.route-loading{min-height:100vh;display:grid;place-items:center;align-content:center;gap:1rem;background:#f6f8f4;color:#172d24}.route-loading__spinner{width:2rem;height:2rem;border:3px solid #dce6e1;border-top-color:#126344;border-radius:50%;animation:grem-spin .8s linear infinite}@keyframes grem-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.route-loading__spinner{animation:none}}.notice--error{background:#fff0ed;color:#8a2f24;border:1px solid #f1c8c1}.page-loading{color:var(--muted);padding-top:4rem}.topbar__account{display:flex;align-items:center;gap:.8rem}.topbar__identity{display:grid;text-align:right}.topbar__identity small{max-width:220px;overflow:hidden;text-overflow:ellipsis}.topbar__logout{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:.65rem;padding:.55rem .75rem;cursor:pointer;font-weight:700}.filters--actions{grid-template-columns:minmax(220px,1fr) 220px auto;align-items:end}.region-bars{display:grid;gap:1rem;margin-top:1.4rem}.region-bar{display:grid;gap:.45rem}.region-bar__head{display:flex;justify-content:space-between;gap:1rem;font-size:.86rem}.region-bar__head span{color:var(--muted)}.region-bar__track{height:10px;background:#edf1ef;border-radius:999px;overflow:hidden}.region-bar__track i{display:block;height:100%;background:linear-gradient(90deg,#126344,#35a642,#a5cb35);border-radius:inherit}.dashboard-grid--regions{grid-template-columns:minmax(0,1.7fr) minmax(260px,.7fr)}.live-stat{display:grid;place-items:center;text-align:center;padding:2rem 1rem;background:#f4f8f6;border-radius:1rem;margin-top:1rem}.live-stat strong{font-size:3rem;letter-spacing:-.06em}.live-stat span{color:var(--muted)}.live-stat--secondary strong{font-size:2rem}@media(max-width:1000px){.dashboard-grid--regions{grid-template-columns:1fr}}@media(max-width:720px){.topbar__identity{display:none}.topbar__logout{padding:.5rem}.filters--actions{grid-template-columns:1fr}.region-bar__head{align-items:flex-start;flex-direction:column;gap:.2rem}}
