:root{--econ-ink:var(--theme-text);--econ-deep:var(--theme-header);--econ-teal:var(--theme-primary);--econ-copper:var(--theme-accent);--econ-gold:var(--theme-accent);--econ-pale:var(--theme-subtle);--econ-line:var(--theme-line);--econ-muted:var(--theme-muted);--econ-danger:var(--theme-danger);--econ-paper:var(--theme-page)}
body{background:linear-gradient(180deg,var(--theme-subtle) 0,var(--theme-subtle) 32rem);color:var(--econ-ink);font-size:16px}
.economy-header{background:linear-gradient(108deg,var(--theme-header),var(--theme-header) 60%,var(--theme-header));color:var(--theme-inverse);display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.25rem max(4vw,2rem);position:relative;overflow:hidden}
.economy-header:after{content:"";position:absolute;right:-4rem;top:-7rem;width:25rem;height:18rem;border:1px solid color-mix(in srgb,var(--theme-line) 18.82%,transparent);border-radius:50%;box-shadow:0 0 0 2rem color-mix(in srgb,var(--theme-shadow-colour) 3.14%,transparent),0 0 0 4rem color-mix(in srgb,var(--theme-shadow-colour) 3.14%,transparent)}
.economy-brand{display:flex;align-items:center;gap:1rem;position:relative;z-index:1}.economy-brand p{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--theme-muted);margin:0 0 .25rem}.economy-brand h1{font-family:Georgia,serif;font-size:clamp(1.65rem,3vw,2.55rem);line-height:1.04;margin:0;max-width:38rem;color:var(--theme-inverse)}
.economy-mark{width:3.7rem;height:3.7rem;display:flex;align-items:flex-end;gap:.3rem;padding:.55rem;background:color-mix(in srgb,var(--theme-panel) 6.27%,transparent);border:1px solid color-mix(in srgb,var(--theme-line) 16.47%,transparent);border-radius:1rem}.economy-mark i{display:block;flex:1;background:var(--econ-gold);border-radius:.18rem .18rem 0 0}.economy-mark i:nth-child(1){height:32%}.economy-mark i:nth-child(2){height:62%;background:var(--theme-primary)}.economy-mark i:nth-child(3){height:92%;background:var(--theme-primary)}
.module-nav{display:flex;align-items:center;justify-content:flex-end;gap:.28rem;flex-wrap:wrap;position:relative;z-index:1}.module-nav a{color:var(--theme-text);text-decoration:none;padding:.65rem .72rem;border-radius:.55rem;font-weight:750;font-size:.86rem}.module-nav a:hover,.module-nav a:focus-visible{background:color-mix(in srgb,var(--theme-panel) 9.41%,transparent)}.export-button{background:var(--econ-gold)!important;color:var(--theme-text)!important;border-color:transparent!important;margin-left:.4rem}
.economy-controls{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--theme-subtle) 94.9%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--econ-line);padding:.85rem max(4vw,2rem)}.filter-grid{display:grid;grid-template-columns:minmax(15rem,1.45fr) repeat(4,minmax(9rem,1fr));gap:.62rem}.filter-grid label{font-size:.76rem;font-weight:800;color:var(--theme-muted)}.filter-grid input,.filter-grid select{width:100%;display:block;margin-top:.28rem;min-height:2.75rem;border:1px solid var(--theme-line);background:var(--theme-panel);border-radius:.6rem;padding:.55rem .7rem;color:var(--econ-ink);font:700 .88rem/1.2 system-ui,sans-serif}.filter-grid .button{align-self:end;min-height:2.75rem}.search-wide{grid-column:span 1}.scope-row{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.65rem}.scope-row span{background:var(--theme-subtle);color:var(--theme-text);border-radius:999px;padding:.3rem .65rem;font-size:.76rem;font-weight:800}
.economy-main{width:min(1500px,94vw);margin:1.5rem auto 3rem;display:grid;gap:1rem}.economy-main>*,.territory-layout>*,.institution-grid>*,.split-grid>*,.matrix-layout>*{min-width:0}.panel{min-width:0;background:var(--econ-paper);border:1px solid var(--econ-line);box-shadow:0 .6rem 2rem color-mix(in srgb,var(--theme-shadow-colour) 4.31%,transparent);border-radius:1rem;padding:1.15rem}.intro{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(22rem,1fr) auto;align-items:center;gap:1.25rem;border-left:.45rem solid var(--econ-copper)}.section-kicker{text-transform:uppercase;letter-spacing:.13em;color:var(--theme-text);font-size:.75rem;font-weight:900;margin:0 0 .35rem}.intro h2,.panel-heading h2{font-family:Georgia,serif;font-size:clamp(1.35rem,2vw,1.9rem);line-height:1.15;margin:0}.intro p:not(.section-kicker){color:var(--econ-muted);line-height:1.55;margin:.45rem 0 0}.source-key{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem}.source-key span{border:1px solid var(--econ-line);background:var(--theme-panel);border-radius:.75rem;padding:.7rem;font-size:.76rem;font-weight:750}.source-key b{display:block;color:var(--econ-teal);font-size:1rem;margin-bottom:.25rem}
.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.65rem}.kpi-grid article{background:var(--theme-panel);border:1px solid var(--econ-line);border-top:.24rem solid var(--econ-teal);border-radius:.85rem;padding:.8rem;min-height:7rem}.kpi-grid article:nth-child(3n+2){border-top-color:var(--econ-copper)}.kpi-grid article:nth-child(3n){border-top-color:var(--theme-line)}.kpi-grid small{display:block;color:var(--econ-muted);font-size:.75rem;line-height:1.35}.kpi-grid strong{display:block;font-family:Georgia,serif;font-size:1.55rem;line-height:1.05;margin:.55rem 0 .4rem;color:var(--econ-deep);overflow-wrap:anywhere}
.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.panel-heading>span{font-size:.75rem;font-weight:850;color:var(--econ-teal);background:var(--theme-subtle);border-radius:999px;padding:.38rem .65rem;white-space:nowrap}.panel-note{color:var(--econ-muted);font-size:.88rem;line-height:1.5;margin:.4rem 0 1rem}
.territory-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(22rem,.7fr);gap:1rem;align-items:start}.segmented{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:.8rem}.segmented button{border:1px solid var(--econ-line);background:var(--theme-panel);color:var(--theme-text);border-radius:999px;padding:.48rem .72rem;font-weight:800;font-size:.78rem}.segmented button.active{background:var(--econ-deep);border-color:var(--econ-deep);color:var(--theme-inverse)}.map-legend{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--econ-muted);margin:.35rem 0 .7rem}.map-legend i{height:.5rem;min-width:10rem;border-radius:1rem;background:linear-gradient(90deg,var(--theme-primary),var(--theme-primary),var(--theme-primary))}.district-tiles{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.42rem}.district-tile{background:var(--tile);color:var(--tile-ink);border:0;border-radius:.65rem;min-height:6.2rem;padding:.62rem;text-align:left;display:flex;flex-direction:column;justify-content:space-between}.district-tile strong{font-size:.78rem;overflow-wrap:anywhere}.district-tile span{font-family:Georgia,serif;font-size:1.25rem;font-weight:800}.district-tile small{font-size:.67rem;line-height:1.25}.village-detail{position:sticky;top:9.5rem;max-height:calc(100vh - 10.5rem);overflow:auto}.detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.detail-head h2{font-family:Georgia,serif;font-size:1.75rem;margin:0}.detail-head small{color:var(--econ-muted)}.detail-score{font-family:Georgia,serif;font-size:1.75rem;color:var(--econ-teal);font-weight:900}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;margin:1rem 0}.detail-stat{background:var(--econ-pale);border-radius:.6rem;padding:.65rem}.detail-stat small,.trace-field small{display:block;font-size:.72rem;color:var(--econ-muted);margin-bottom:.18rem}.detail-stat strong{font-size:.88rem}.detail-section{padding-top:.85rem;margin-top:.85rem;border-top:1px solid var(--econ-line)}.detail-section h3{font-size:.9rem;margin:0 0 .55rem}.tag-row{display:flex;flex-wrap:wrap;gap:.35rem}.tag{padding:.3rem .55rem;border-radius:999px;background:var(--theme-subtle);color:var(--theme-text);font-size:.72rem;font-weight:750}.tag.copper{background:var(--theme-subtle);color:var(--theme-text)}.reason-list{margin:.35rem 0 0;padding-left:1.1rem;color:var(--theme-text);font-size:.82rem;line-height:1.5}.detail-rule{border:1px solid var(--econ-line);border-radius:.6rem;margin:.4rem 0;background:var(--theme-panel)}.detail-rule summary{padding:.65rem;cursor:pointer;font-size:.78rem;font-weight:800}.trace-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding:.65rem;border-top:1px solid var(--econ-line)}.trace-field{background:var(--theme-subtle);border-radius:.5rem;padding:.55rem}.trace-field strong{font-size:.74rem;line-height:1.4;display:block}.priority-label{display:inline-block;background:var(--econ-deep);color:var(--theme-inverse);border-radius:.4rem;padding:.35rem .5rem;font-size:.78rem;font-weight:800}
.structure-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.structure-card{border:1px solid var(--econ-line);border-radius:.8rem;background:var(--theme-panel);overflow:hidden}.structure-card>header{background:var(--econ-deep);color:var(--theme-inverse);padding:.8rem;display:flex;justify-content:space-between;gap:.8rem}.structure-card>header span{font-size:.72rem;color:var(--theme-text)}.structure-card details{border-top:1px solid var(--econ-line)}.structure-card summary{padding:.75rem;cursor:pointer;font-weight:800;font-size:.84rem}.structure-card details>.panel-note{padding:0 .75rem}.leaf-line{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;border-top:1px dashed var(--theme-line);padding:.7rem .75rem}.leaf-line strong{font-size:.78rem}.leaf-line small{display:block;color:var(--econ-muted);font-size:.7rem;margin-top:.22rem}
.potential-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem;margin-bottom:1rem}.potential-card{border:1px solid var(--econ-line);background:linear-gradient(145deg,var(--theme-panel),var(--theme-subtle));border-radius:.75rem;padding:.75rem}.potential-card strong{font-family:Georgia,serif;font-size:1.5rem;display:block}.potential-card small{font-size:.76rem;color:var(--econ-muted)}.split-grid{display:grid;grid-template-columns:minmax(18rem,.55fr) minmax(0,1.45fr);gap:1rem}.split-grid h3,.institution-panel h3,.matrix-layout h3{font-size:.9rem;margin:.6rem 0}.compact-list{display:grid;gap:.4rem;max-height:25rem;overflow:auto}.compact-list button,.compact-list .compact-row{display:grid;grid-template-columns:1fr auto;gap:.6rem;align-items:center;width:100%;text-align:left;border:1px solid var(--econ-line);background:var(--theme-panel);border-radius:.55rem;padding:.55rem .65rem;color:var(--econ-ink)}.compact-list button strong,.compact-row strong{font-size:.8rem}.compact-list button span,.compact-row span{font-size:.72rem;color:var(--econ-muted)}.compact-list.tall{max-height:31rem}.table-shell{overflow:auto;border:1px solid var(--econ-line);border-radius:.7rem;background:var(--theme-panel);max-height:31rem}td button{border:0;background:transparent;color:var(--econ-teal);font-weight:850;text-align:left;padding:0}
.institution-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.status-tile{background:var(--theme-subtle);border-left:.25rem solid var(--econ-teal);border-radius:.55rem;padding:.65rem}.status-tile strong{display:block;font-family:Georgia,serif;font-size:1.25rem}.status-tile small{font-size:.7rem;color:var(--econ-muted)}
.matrix-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(18rem,.6fr);gap:1rem}.quadrant-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.quadrant-card{border:1px solid var(--econ-line);border-radius:.65rem;padding:.65rem;background:var(--theme-panel)}.quadrant-card strong{font-family:Georgia,serif;font-size:1.3rem;display:block}.quadrant-card small{font-size:.7rem;color:var(--econ-muted)}.scatter{width:100%;height:auto;background:var(--theme-panel);border:1px solid var(--econ-line);border-radius:.8rem;margin-top:.6rem}.scatter text{font:12px system-ui;fill:var(--theme-primary)}.scatter .axis{stroke:var(--theme-primary)}.scatter .cut{stroke:var(--theme-primary);stroke-dasharray:6 6}.scatter circle{fill:var(--theme-primary);opacity:.6;stroke:var(--theme-line);stroke-width:1}.scatter circle.review{fill:var(--theme-primary)}
.barrier-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem;margin-bottom:.9rem}.barrier-card{background:var(--theme-panel);border:1px solid var(--econ-line);border-bottom:.25rem solid var(--econ-copper);border-radius:.7rem;padding:.7rem}.barrier-card strong{font-family:Georgia,serif;font-size:1.3rem;display:block}.barrier-card small{font-size:.72rem;color:var(--econ-muted)}.source-pill{display:inline-block;padding:.22rem .4rem;border-radius:999px;background:var(--theme-subtle);color:var(--theme-muted);font-size:.67rem;font-weight:800}.source-pill.issue{background:var(--theme-subtle);color:var(--theme-muted)}.source-pill.cross{background:var(--theme-subtle);color:var(--theme-muted)}
.opportunity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.opportunity-card{border:1px solid var(--econ-line);background:var(--theme-panel);border-radius:.75rem;padding:.8rem}.opportunity-card h3{font-family:Georgia,serif;font-size:1.05rem;margin:0 0 .35rem}.opportunity-card p{font-size:.8rem;color:var(--econ-muted);line-height:1.45;margin:.3rem 0}.recommendation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.recommendation-card{border:1px solid var(--econ-line);border-radius:.75rem;background:var(--theme-panel);padding:.8rem}.recommendation-card h3{font-size:.88rem;margin:0 0 .35rem}.recommendation-card>p{font-size:.78rem;color:var(--econ-muted)}.recommendation-card dl{display:grid;grid-template-columns:6.5rem 1fr;gap:.35rem .5rem;font-size:.72rem;margin:.65rem 0 0}.recommendation-card dt{color:var(--econ-muted)}.recommendation-card dd{margin:0;font-weight:700}
dialog{width:min(780px,92vw);border:0;border-radius:1rem;padding:0;box-shadow:0 2rem 5rem color-mix(in srgb,var(--theme-shadow-colour) 56.47%,transparent);color:var(--econ-ink)}dialog::backdrop{background:color-mix(in srgb,var(--theme-overlay) 66.67%,transparent);backdrop-filter:blur(4px)}dialog form{padding:1.2rem}dialog header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;border-bottom:1px solid var(--econ-line);padding-bottom:.8rem}.icon-button{border:0;background:var(--theme-subtle);border-radius:50%;width:2.2rem;height:2.2rem;font-size:1.25rem}.method-content{display:grid;gap:.65rem;margin:1rem 0}.method-block{background:var(--theme-subtle);border-radius:.65rem;padding:.75rem}.method-block h3{font-size:.88rem;margin:0 0 .35rem}.method-block p{font-size:.8rem;color:var(--econ-muted);line-height:1.5;margin:0}.toast{position:fixed;right:1rem;bottom:1rem;background:var(--econ-deep);color:var(--theme-inverse);padding:.75rem 1rem;border-radius:.6rem;opacity:0;transform:translateY(1rem);pointer-events:none;transition:.2s;z-index:50}.toast.show{opacity:1;transform:none}footer{display:flex;justify-content:space-between;gap:1rem;padding:1rem 4vw;background:var(--econ-deep);color:var(--theme-text);font-size:.75rem}
@media(max-width:1200px){.kpi-grid{grid-template-columns:repeat(4,1fr)}.district-tiles{grid-template-columns:repeat(5,1fr)}.filter-grid{grid-template-columns:repeat(4,1fr)}.search-wide{grid-column:span 2}.barrier-grid,.potential-summary{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.economy-header{align-items:flex-start;flex-direction:column}.module-nav{justify-content:flex-start}.intro,.territory-layout,.institution-grid,.matrix-layout,.split-grid{grid-template-columns:1fr}.source-key{grid-template-columns:repeat(2,1fr)}.village-detail{position:static;max-height:none}.structure-grid{grid-template-columns:1fr}.recommendation-grid,.opportunity-grid{grid-template-columns:repeat(2,1fr)}.filter-grid{grid-template-columns:repeat(2,1fr)}.district-tiles{grid-template-columns:repeat(4,1fr)}}
@media(max-width:600px){body{font-size:16px}.economy-header,.economy-controls{padding-left:1rem;padding-right:1rem}.economy-brand{align-items:flex-start}.economy-mark{width:3rem;height:3rem}.economy-brand h1{font-size:1.65rem}.module-nav a{padding:.5rem;font-size:.78rem}.module-nav .export-button{width:100%;margin:.3rem 0 0}.economy-controls{position:static}.filter-grid{grid-template-columns:1fr}.search-wide{grid-column:auto}.economy-main{width:calc(100% - 1.2rem);margin-top:.7rem}.intro{grid-template-columns:1fr}.source-key{grid-template-columns:1fr 1fr}.kpi-grid{grid-template-columns:repeat(2,1fr)}.kpi-grid article{min-height:6.7rem}.district-tiles{grid-template-columns:repeat(2,1fr)}.potential-summary,.barrier-grid{grid-template-columns:repeat(2,1fr)}.recommendation-grid,.opportunity-grid{grid-template-columns:1fr}.quadrant-summary{grid-template-columns:1fr 1fr}.status-grid{grid-template-columns:repeat(2,1fr)}.panel{padding:.85rem}.panel-heading{flex-direction:column}.trace-grid{grid-template-columns:1fr}footer{flex-direction:column}.table-shell{max-width:100%}}
