:root{color:var(--color-text);background:var(--color-page);font-family:Inter,Noto Sans SC,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}button,input{font:inherit}button{color:inherit}.app-shell{position:relative;width:100%;height:100%;isolation:isolate}.map{position:absolute;inset:0}.map.maplibregl-map{position:absolute}.map-loading{display:grid;place-items:center;color:var(--color-text-muted);background:var(--color-page);font-family:"Noto Serif SC",Songti SC,SimSun,serif;font-size:13px;letter-spacing:.12em}.map:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(var(--color-paper-texture) .7px,transparent .8px);background-size:5px 5px;mix-blend-mode:multiply;opacity:.5}.topbar{position:absolute;z-index:4;top:18px;left:18px;right:18px;height:70px;display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,420px) minmax(240px,1fr);align-items:center;padding:0 18px;border:1px solid var(--color-border);background:var(--color-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px}.brand h1,.left-panel h2,.detail-panel h2{margin:0;font-family:"Noto Serif SC",Songti SC,SimSun,serif;font-weight:600;letter-spacing:.06em}.brand h1{font-size:21px}.brand p{margin:3px 0 0;color:var(--color-text-muted);font-size:11px;letter-spacing:.08em}.seal{display:grid;place-items:center;width:38px;height:38px;color:var(--color-accent-contrast);background:var(--color-accent);font-family:SimSun,serif}.search-wrap{position:relative}.search-wrap input{width:100%;height:40px;padding:0 16px;color:var(--color-text);border:1px solid var(--color-border);outline:none;background:var(--color-input)}.search-wrap input:focus{border-color:var(--color-accent-focus)}.search-results{position:absolute;top:46px;left:0;right:0;padding:6px;border:1px solid var(--color-border);background:var(--color-panel-solid)}.search-results button{display:flex;justify-content:space-between;width:100%;padding:10px;border:0;background:transparent;cursor:pointer;text-align:left}.search-results button:hover{background:var(--color-accent-hover)}.search-results small{color:var(--color-text-muted)}.left-panel,.detail-panel{--panel-padding-inline: 28px;position:absolute;z-index:3;top:104px;bottom:82px;width:268px;padding:28px;padding-inline:var(--panel-padding-inline);overflow:hidden;border:1px solid var(--color-border);background:var(--color-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel-scrollbar{height:100%;min-height:0;margin-right:calc(-1 * var(--panel-padding-inline));padding-right:var(--panel-padding-inline);overflow-y:auto;scrollbar-color:var(--color-border) transparent;scrollbar-width:thin;scrollbar-gutter:stable}.panel-scrollbar::-webkit-scrollbar{width:8px}.panel-scrollbar::-webkit-scrollbar-track{background:transparent}.panel-scrollbar::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:1px;background:var(--color-border);background-clip:padding-box}.panel-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.panel-scrollbar::-webkit-scrollbar-corner{background:transparent}.left-panel{left:18px;width:288px}.detail-panel{right:18px;width:318px;padding-block:24px;overflow-y:hidden}.detail-panel:has(.research-details[open]){overflow:hidden}.panel-close{display:none;position:absolute;top:10px;right:12px;border:0;background:none;font-size:24px;cursor:pointer}.eyebrow{margin:0 0 9px;color:var(--color-accent);font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.left-panel h2,.detail-panel h2{font-size:26px}.region-heading{display:flex;align-items:baseline;gap:7px;min-height:32px;margin-bottom:1em;white-space:nowrap}.left-panel .region-title{margin-bottom:0;font-size:26px;letter-spacing:.02em;white-space:nowrap}.region-formal-name{margin:0;color:var(--color-text-muted);font-size:10px;letter-spacing:.14em;line-height:1.4}.muted,.seat-line{color:var(--color-text-muted);font-size:13px}.year-display{display:flex;align-items:baseline;gap:8px}.year-display strong{font-family:Georgia,serif;font-size:40px;font-weight:400}.year-display span{color:var(--color-text-muted);font-size:12px}.rule{height:1px;margin:24px 0;background:var(--color-border)}.notice{margin-top:24px;padding:14px;border-left:2px solid var(--color-accent);background:var(--color-accent-soft)}.notice span{font-size:12px;font-weight:700}.notice p{margin:7px 0 0;color:var(--color-text-muted);font-size:11px;line-height:1.65}.layer-note{margin:10px 0 0;color:var(--color-text-muted);font-size:10px;line-height:1.55}.layer-bar{min-width:0;height:40px;display:flex;align-items:center;justify-content:flex-end;overflow-x:auto;scrollbar-width:none}.layer-bar::-webkit-scrollbar{display:none}.layer-bar-label{flex:0 0 auto;margin-right:6px;padding-left:14px;border-left:1px solid var(--color-border);color:var(--color-text-muted);font-size:10px;font-weight:700;letter-spacing:.12em}.layer-bar-label-secondary{margin-left:2px;padding-left:0;border-left:0}.layer-bar-divider{flex:0 0 1px;height:22px;margin:0 4px;background:var(--color-border)}.layer-button{flex:0 0 48px;height:40px;padding:0;border:0;outline:none;background:transparent;color:var(--color-text-muted);cursor:pointer;font-size:11px;transition:color .14s ease,background-color .14s ease,transform 80ms ease}.layer-button:hover:not(:disabled){color:var(--color-accent);background:var(--color-accent-hover)}.layer-button[aria-pressed=true]{color:var(--color-accent);background:var(--color-accent-soft);box-shadow:inset 0 -2px var(--color-accent)}.layer-button:focus-visible{box-shadow:inset 0 0 0 1px var(--color-accent-focus)}.layer-button[aria-pressed=true]:focus-visible{box-shadow:inset 0 0 0 1px var(--color-accent-focus),inset 0 -2px var(--color-accent)}.layer-button:active:not(:disabled){transform:translateY(1px)}.layer-button:disabled{color:var(--color-disabled-text);cursor:not-allowed}.tooltip-trigger{display:contents}.tooltip-trigger>:focus-visible{outline:1px solid var(--color-accent-focus);outline-offset:3px}.app-tooltip{position:fixed;z-index:20;max-width:min(320px,calc(100vw - 24px));padding:9px 11px;border:1px solid var(--color-border);background:var(--color-panel-solid);color:var(--color-text);box-shadow:0 8px 24px #30261b24;font-size:11px;line-height:1.55;pointer-events:none;white-space:pre-line;animation:tooltip-in .12s ease-out both}.app-tooltip:after{content:"";position:absolute;left:var(--tooltip-arrow-left);top:-5px;width:8px;height:8px;transform:translate(-50%) rotate(225deg);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-panel-solid)}.app-tooltip[data-placement=top]:after{top:auto;bottom:-5px;transform:translate(-50%) rotate(45deg)}@keyframes tooltip-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.administrative-scope-toolbar{position:absolute;z-index:3;left:18px;bottom:18px;width:288px;height:48px;display:flex;align-items:center;gap:12px;padding:0 10px 0 16px;border:1px solid var(--color-border);background:var(--color-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.administrative-scope-toolbar>span{color:var(--color-text-muted);font-size:10px;font-weight:700;letter-spacing:.1em;white-space:nowrap}.administrative-scope-options{height:40px;display:flex;margin-left:auto}.administrative-target-chooser{position:fixed;z-index:6;width:220px;padding:6px;border:1px solid var(--color-border);background:var(--color-panel-solid);box-shadow:0 8px 24px #30261b24}.administrative-target-chooser-heading{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 7px;color:var(--color-text-muted);font-size:9px;font-weight:700;letter-spacing:.12em}.administrative-target-chooser-heading button{padding:0 3px;border:0;background:transparent;cursor:pointer;font-size:16px;line-height:1}.administrative-target-chooser>button{width:100%;display:flex;align-items:baseline;justify-content:space-between;padding:9px 8px;border:0;border-top:1px solid var(--color-separator);background:transparent;cursor:pointer;text-align:left}.administrative-target-chooser>button:hover{background:var(--color-accent-hover)}.administrative-target-chooser>button:focus-visible{outline:1px solid var(--color-accent-focus);outline-offset:-1px}.administrative-target-chooser>button strong{font:600 12px/1.2 "Noto Serif SC",SimSun,serif}.administrative-target-chooser>button small{color:var(--color-text-muted);font-size:9px}.scope-section{margin-top:20px;padding-top:17px;border-top:1px solid var(--color-border)}.scope-population{border-top:0}.jurisdiction.is-disabled{opacity:.62}.scope-section .eyebrow{margin-bottom:8px}.scope-primary{display:block;font:400 24px/1.15 "Noto Serif SC",SimSun,serif;font-variant-numeric:tabular-nums}.scope-secondary{margin:7px 0 4px;color:var(--color-text-muted);font-size:11px}.scope-section small{color:var(--color-text-muted);font-size:9px}.scope-tax{margin:0}.scope-tax div{display:grid;grid-template-columns:42px 1fr;gap:10px;padding:6px 0;border-top:1px solid var(--color-separator)}.scope-tax dt{color:var(--color-accent);font-size:10px;font-weight:600}.scope-tax dd{margin:0;font:400 11px/1.5 "Noto Serif SC",SimSun,serif}.scope-unit-list{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.scope-unit-list button{padding:5px 7px;border:1px solid var(--color-border);background:transparent;cursor:pointer;font-size:9px}.scope-unit-list button:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-soft)}.scope-collapsible>summary{padding:0;list-style:none;cursor:pointer}.scope-collapsible>summary::-webkit-details-marker{display:none}.scope-collapsible .eyebrow{margin:0}.scope-peer-count:after{content:"⌄";display:inline-block;margin-left:7px;color:var(--color-accent);font-size:13px;transition:transform .16s ease}.scope-collapsible[open] .scope-peer-count:after{transform:rotate(180deg)}.scope-details p{margin:0 0 8px;color:var(--color-text-muted);font-size:9px;line-height:1.6}.scope-details small{color:var(--color-text-muted);font-size:9px}.administrative-path{margin:5px 0 0;color:var(--color-text-muted);font-size:11px}.return-prefecture{display:inline-flex;gap:6px;margin-top:12px;padding:0;border:0;background:transparent;color:var(--color-accent);cursor:pointer;font-family:inherit;font-size:10px;font-weight:600;line-height:1.5}.return-prefecture:hover{color:var(--color-text)}.detail-panel .seat-line{margin:12px 0 0}.evidence-section{margin-top:21px;padding:0 0 18px;border-bottom:1px solid var(--color-border)}.evidence-section .eyebrow{margin-bottom:10px}.evidence-section sup:not(.tax-footnote){margin-left:3px;color:var(--color-accent);cursor:help;font:700 9px Inter,sans-serif}.tax-label{display:inline-flex;align-items:baseline;gap:3px}.tax-footnote{color:var(--color-accent);cursor:help;font:700 9px Inter,sans-serif}.tax-footnote:focus-visible{outline:1px solid var(--color-accent-focus);outline-offset:2px}.population-primary{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.population-primary strong{font:400 25px/1.1 "Noto Serif SC",SimSun,serif;font-variant-numeric:tabular-nums}.population-primary span{color:var(--color-text-muted);font-size:11px;font-variant-numeric:tabular-nums}.record-date{margin:9px 0 3px;color:var(--color-text);font-size:10px}.population-evidence small,.metric-empty{display:block;color:var(--color-text-muted);font-size:9px;line-height:1.55}.tax-evidence .section-heading span{font-family:"Noto Serif SC",SimSun,serif}.tax-ledger{margin:0}.tax-ledger div{display:grid;grid-template-columns:46px 1fr;gap:12px;padding:7px 0;border-top:1px solid var(--color-separator)}.tax-ledger dt{color:var(--color-accent);font-size:10px;font-weight:600}.tax-ledger dd{margin:0;font:400 12px/1.6 "Noto Serif SC",SimSun,serif;font-variant-numeric:tabular-nums}.section-heading{display:flex;align-items:center;justify-content:space-between}.section-heading span{color:var(--color-text-muted);font-size:10px}.jurisdiction{margin-top:18px}.county-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.county-list button{padding:5px 9px;border:1px solid var(--color-border);background:transparent;color:var(--color-text);cursor:pointer;font-size:10px}.county-list button:hover,.county-list button.is-current{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent)}.location-summary{margin-top:18px;padding-top:15px;border-top:1px solid var(--color-border)}.location-summary strong{font:500 13px "Noto Serif SC",SimSun,serif}.research-details>p{margin:0 0 14px;color:var(--color-text-muted);font-size:10px;line-height:1.65}.original-amounts{margin:16px 0;padding:12px 0;border-top:1px solid var(--color-separator)}.original-amounts p:not(.eyebrow){margin:5px 0;color:var(--color-text-muted);font:400 10px/1.55 "Noto Serif SC",SimSun,serif}.facts{margin:26px 0}.facts div{display:grid;grid-template-columns:64px 1fr;padding:10px 0;border-bottom:1px solid var(--color-separator);font-size:12px}.facts dt{color:var(--color-text-muted)}.facts dd{margin:0}.region-reference small{display:block;margin-top:3px;color:var(--color-text-muted);font-size:9px;letter-spacing:.08em;line-height:1.4}.confidence-dot{display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:var(--color-confidence)}.method-note{padding:14px 0}.method-note>p:last-child{margin:0;color:var(--color-text-muted);font-family:ui-monospace,monospace;font-size:10px;line-height:1.55}details{margin-top:14px;border-top:1px solid var(--color-border)}summary{padding:13px 0;cursor:pointer;font-size:12px;font-weight:700}.source{padding:12px 0;border-top:1px solid var(--color-separator)}.source h3{margin:0 0 5px;font:600 13px "Noto Serif SC",SimSun,serif}.source p,.source small{margin:0;color:var(--color-text-muted);font-size:10px;line-height:1.5}.timeline{position:absolute;z-index:3;left:50%;bottom:18px;width:min(520px,calc(100% - 700px));min-width:320px;height:48px;display:grid;grid-template-columns:1fr;align-items:center;padding:0 16px;transform:translate(-50%);border:1px solid var(--color-border);background:var(--color-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:var(--color-text-muted);font-size:10px}.timeline-track{position:relative;height:1px;background:var(--color-track)}.timeline-node{position:absolute;top:0;width:10px;height:10px;transform:translate(-50%,-50%)}.timeline-node-start{left:0;transform:translateY(-50%)}.timeline-node-middle-start{left:33.333%}.timeline-node-current{left:66.667%}.timeline-node-end{left:100%;transform:translate(-100%,-50%)}.timeline-node i{position:absolute;inset:0;width:10px;height:10px;border:2px solid var(--color-marker-ring);border-radius:50%;background:var(--color-panel)}.timeline-node strong,.timeline-node small{position:absolute;left:50%;transform:translate(-50%);white-space:nowrap}.timeline-node-start strong,.timeline-node-start small{left:0;transform:none}.timeline-node-end strong,.timeline-node-end small{left:10px;transform:translate(-100%)}.timeline-node strong{top:-12px;color:var(--color-text-muted);font:600 9px "Noto Serif SC",SimSun,serif;line-height:1.1}.timeline-node small{top:12px;color:var(--color-text-muted);font:9px Inter,sans-serif}.timeline-node-current i{border-color:var(--color-accent);background:var(--color-accent)}.timeline-node-current strong,.timeline-node-current small{color:var(--color-accent)}.map-note{position:absolute;z-index:2;right:18px;bottom:18px;color:var(--color-map-note);font-size:9px;letter-spacing:.08em}.mobile-control{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.maplibregl-ctrl-bottom-right{right:12px;bottom:42px}.maplibregl-ctrl-group{overflow:hidden;border:1px solid var(--color-border);border-radius:0;box-shadow:none}@media(max-width:900px){.topbar{top:10px;left:10px;right:10px;height:110px;grid-template-columns:1fr auto;grid-template-rows:62px 48px;padding:0 12px}.brand{grid-column:1;grid-row:1}.brand p{display:none}.seal{width:34px;height:34px}.search-wrap{position:absolute;top:120px;left:0;right:0}.search-wrap input{background:var(--color-panel-mobile);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-control{display:block;grid-column:2;grid-row:1;padding:8px 10px;border:1px solid var(--color-border);background:transparent;font-size:11px}.left-panel,.detail-panel{--panel-padding-inline: 24px;position:fixed;inset:auto 10px 10px;width:auto;max-height:68vh;padding:24px;overflow:hidden;transform:translateY(calc(100% + 20px));transition:transform .22s ease}.left-panel.is-open,.detail-panel.is-open{transform:translateY(0)}.panel-close{display:block}.timeline{bottom:10px;width:calc(100% - 20px);min-width:0}.layer-bar{width:100%;height:48px;grid-column:1 / -1;grid-row:2;justify-content:flex-start;border-top:1px solid var(--color-separator)}.layer-bar-label{padding-left:0;border-left:0}.layer-button{height:48px}.administrative-scope-toolbar{inset:180px 10px auto;width:auto}.map-note{display:none}.maplibregl-ctrl-bottom-right{bottom:66px}}
