:root{--bg:#eef1ed;--panel:#fff;--panel-soft:#f6f8f6;--ink:#17211c;--muted:#66736b;--line:#dbe3dd;--accent:#247451;--accent-strong:#14543a;--gold:#ca982c;--red:#b84a3a;--blue:#315f9b;--shadow:0 16px 42px #18231d14}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:Arial,Yu Gothic,Hiragino Kaku Gothic ProN,Meiryo,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{border:0}.app-shell{min-height:100vh}.topbar{color:#f8f5ed;z-index:900;background:#17211c;justify-content:space-between;align-items:center;gap:18px;min-height:64px;padding:12px 22px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{background:var(--gold);color:#20170a;border-radius:8px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-weight:800;display:inline-flex}.brand strong,.brand small{display:block}.brand small{color:#d7cfbc;margin-top:2px;font-size:12px}.topbar-note{color:#d7cfbc;text-align:right;font-size:13px}.content{min-width:0}.page{gap:14px;width:100%;max-width:1760px;margin:0 auto;padding:16px;display:grid}.login-page{place-items:center;min-height:calc(100vh - 64px);padding:18px;display:grid}.login-card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;gap:14px;width:100%;max-width:440px;padding:24px;display:grid}.login-card label{color:#3b443f;gap:7px;font-size:12px;font-weight:800;display:grid}.login-card input{background:var(--panel-soft);border:1px solid var(--line);color:var(--ink);border-radius:6px;min-height:42px;padding:10px}.login-status{color:var(--red);font-size:13px}.text-link{color:var(--accent-strong);text-underline-offset:3px;font-size:13px;font-weight:800;text-decoration:underline}.dashboard-page{grid-template-rows:auto}.dashboard-hero{grid-template-columns:minmax(0,1fr) minmax(240px,320px);align-items:stretch;gap:14px;display:grid}.compact-hero{grid-template-columns:minmax(0,1fr) minmax(220px,318px)}.dashboard-hero>div:first-child,.hero-status,.panel,.metric,.table-wrap,.media-card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px}.dashboard-hero>div:first-child{padding:14px 18px}.hero-status{gap:4px;padding:14px;display:grid}.hero-status small,.hero-status span{color:var(--muted);font-size:12px}.hero-status strong{overflow-wrap:anywhere;font-size:22px;line-height:1.25}.eyebrow{color:var(--accent);letter-spacing:0;margin:0 0 5px;font-size:11px;font-weight:800}h1,h2,h3,p{margin:0}h1{font-size:clamp(26px,3vw,38px);line-height:1.12}h2{font-size:18px;line-height:1.25}.subtext{color:var(--muted);max-width:760px;margin-top:6px;line-height:1.45}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.campaign-tab{cursor:pointer;text-align:left;border-radius:7px}.campaign-strip{gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.campaign-tab{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--ink);flex:0 0 190px;gap:3px;min-height:58px;padding:8px 11px;display:grid}.campaign-tab.active{border-color:var(--accent);box-shadow:inset 4px 0 0 var(--accent), var(--shadow)}.campaign-tab span{color:var(--muted);font-size:12px}.view-toolbar{grid-template-columns:minmax(180px,.8fr) minmax(160px,.65fr) minmax(260px,1fr);align-items:end;padding:12px}.layer-row{min-height:40px}.metric{min-width:0;padding:13px 15px}.metric small{color:var(--muted);font-size:12px;display:block}.metric strong{overflow-wrap:anywhere;margin-top:4px;font-size:clamp(22px,2.6vw,31px);line-height:1.1;display:block}.hero-metrics .metric:first-child{border-left:4px solid var(--accent)}.focus-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.focus-card{box-shadow:var(--shadow);color:#f8f5ed;background:#17211c;border:1px solid #26382f;border-radius:8px;gap:5px;min-width:0;padding:12px;display:grid}.focus-card small,.focus-card span{color:#c8d5cd;overflow-wrap:anywhere;font-size:12px;line-height:1.35}.focus-card strong{color:#f7c948;font-size:24px;line-height:1}.analysis-panel{gap:12px}.excel-table-wrap{border:1px solid var(--line);border-radius:8px;max-height:520px;overflow:auto}.excel-pivot-table{border-collapse:separate;border-spacing:0;min-width:980px}.excel-pivot-table thead th{color:#f8f5ed;z-index:2;background:#17211c;border-bottom:1px solid #2c3c34;font-size:12px;position:sticky;top:0}.excel-pivot-table td,.excel-pivot-table th{border-right:1px solid var(--line)}.excel-pivot-table tr:nth-child(2n) .area-name{background:#f8faf8}.sticky-col{z-index:3;min-width:220px;position:sticky;left:0}.excel-pivot-table thead .sticky-col{z-index:4}.area-name{color:#1f2a24;white-space:normal;background:#eef5ef;font-size:13px;font-weight:800}.rate-cell{vertical-align:top;background:#fff;min-width:150px;position:relative;overflow:hidden}.rate-cell strong,.rate-cell span{z-index:1;display:block;position:relative}.rate-cell strong{color:var(--accent-strong);font-size:18px;line-height:1.1}.rate-cell span{color:var(--muted);margin-top:4px;font-size:12px}.rate-cell.empty{color:#a2aca6;text-align:center;background:#f7faf8}.rate-cell>i{opacity:.24;z-index:0;border-radius:0 999px 999px 0;height:100%;display:block;position:absolute;top:0;bottom:0;left:0}.rate-cell.empty>i{display:none}.rate-cell.great{background:#eef9ef}.rate-cell.great>i{background:#16784f}.rate-cell.good{background:#f3faee}.rate-cell.good>i{background:#6fa84f}.rate-cell.mid{background:#fff8e7}.rate-cell.mid>i{background:#d29a25}.rate-cell.low{background:#fff3ee}.rate-cell.low>i{background:#d36c4c}.rate-cell.zero{background:#f4f6f4}.rate-cell.zero>i{background:#a6afa9}.rate-cell.no-base{background:#eef4fb}.rate-cell.no-base>i{background:#315f9b}.total-cell{background:#fff8e7;border-left:2px solid #dfc989}.total-cell strong{color:#5d4a11}.workspace-grid{grid-template-columns:minmax(0,1fr) minmax(300px,340px);align-items:start;gap:14px;display:grid}.side-stack{gap:14px;min-width:0;display:grid}.panel{gap:14px;min-width:0;padding:16px;display:grid}.panel-heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.sync-pill{color:var(--accent-strong);background:#edf5ef;border:1px solid #d4e6da;border-radius:999px;flex:none;padding:5px 9px;font-size:12px;font-weight:800}.sync-pill.warning{color:#755c17;background:#fff8df;border-color:#ead38b}.sync-pill.ready{color:var(--accent-strong);background:#edf5ef;border-color:#bad9c8}.field{gap:7px;min-width:0;display:grid}.field label{color:#3b443f;font-size:12px;font-weight:800}.field input,.field select,.field textarea,.quick-form input,.quick-form select,.origin-form input{background:var(--panel-soft);border:1px solid var(--line);color:var(--ink);border-radius:6px;width:100%;min-width:0;min-height:40px;padding:9px 10px}.field textarea{resize:vertical;min-height:90px}.file-drop{cursor:pointer;text-align:center;background:#f8fbf8;border:1px dashed #9ab5a5;border-radius:8px;place-content:center;gap:4px;min-height:74px;padding:13px;display:grid}.file-drop input{display:none}.file-drop strong{color:var(--accent-strong)}.file-drop small,.match-line{color:var(--muted);overflow-wrap:anywhere;font-size:12px;line-height:1.45}.response-box{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;gap:10px;padding:12px;display:grid}.mini-heading{justify-content:space-between;align-items:center;display:flex}.mini-heading span{color:var(--muted);font-size:12px}.quick-form{grid-template-columns:minmax(74px,.8fr) minmax(120px,1.2fr);gap:8px;display:grid}.quick-form input:nth-of-type(2),.quick-form .button{grid-column:1/-1}.origin-form{grid-template-columns:1fr .72fr .72fr;gap:8px;margin-top:10px;display:grid}.origin-form input:first-child,.origin-form .button{grid-column:1/-1}.settings-block{border-top:1px solid var(--line);padding-top:10px}.settings-block summary{color:var(--accent-strong);cursor:pointer;font-weight:800}.filter-grid{gap:10px;display:grid}.compact-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented-row{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(3,1fr);gap:6px;padding:5px;display:grid}.segmented-row label{color:#33413a;border-radius:6px;justify-content:center;align-items:center;gap:5px;min-height:34px;padding:4px;font-size:12px;font-weight:800;display:flex}.map-card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;min-height:min(76vh,720px);position:relative;overflow:hidden}.map{width:100%;height:min(76vh,720px);min-height:580px}.leaflet-container{background-size:42px 42px;background:linear-gradient(90deg,#2474510d 1px,#0000 1px),linear-gradient(0deg,#2474510d 1px,#0000 1px),#eaf0ec!important}.leaflet-tile{backface-visibility:hidden;will-change:transform}.legend{border:1px solid var(--line);z-index:600;background:#fffffff0;border-radius:8px;gap:7px;padding:10px 11px;display:grid;position:absolute;bottom:14px;left:14px}.legend-item{align-items:center;gap:8px;font-size:12px;display:flex}.census-panel{background:linear-gradient(135deg,#fff 0%,#f7faf8 100%)}.census-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.census-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.census-overview div{color:#f8f5ed;background:#17211c;border:1px solid #293b32;border-radius:8px;padding:12px}.census-overview small{color:#bfd0c7;font-size:12px;display:block}.census-overview strong{color:#f7c948;margin-top:3px;font-size:22px;line-height:1.1;display:block}.census-switch-row{background:#dfe7e1;border:1px solid #cbd8cf;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;width:min(100%,360px);padding:4px;display:inline-grid}.mini-tab{color:#47534d;cursor:pointer;background:0 0;border-radius:7px;min-height:34px;padding:0 12px;font-size:12px;font-weight:800}.mini-tab.active{color:var(--accent-strong);background:#fff;box-shadow:0 8px 18px #18231d14}.household-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.household-strip span{color:#5b5041;background:#fffaf0;border:1px solid #eadfca;border-radius:8px;justify-content:space-between;padding:10px 12px;display:flex}.household-strip b{color:var(--ink)}.age-decade-strip{border:1px solid var(--line);background:#f8fbf8;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(82px,1fr));align-items:end;gap:8px;padding:12px;display:grid}.age-decade-strip div{text-align:center;align-items:center;gap:4px;min-width:0;display:grid}.age-decade-strip small{color:var(--muted);font-size:11px;font-weight:800}.age-decade-strip strong{color:var(--ink);font-size:13px}.age-decade-strip i{background:linear-gradient(#315f9b,#247451);border-radius:999px 999px 3px 3px;align-self:end;width:min(100%,28px);min-height:8px;margin:0 auto;display:block}.response-area-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.response-area-card{color:#f8f5ed;background:#17211c;border:1px solid #293b32;border-radius:8px;gap:4px;min-width:0;padding:12px;display:grid}.response-area-card span{color:#221909;background:#f7c948;border-radius:999px;width:fit-content;padding:3px 7px;font-size:11px;font-weight:800}.response-area-card strong{overflow-wrap:anywhere}.response-area-card b{color:#f7c948;font-size:24px;line-height:1}.response-area-card small{color:#c8d5cd;font-size:12px;line-height:1.4}.census-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:4px;min-width:0;padding:11px;display:grid}.census-card-head{justify-content:space-between;align-items:start;gap:8px;display:flex}.census-card-head b{color:var(--accent-strong);background:#edf5ef;border:1px solid #cfe3d6;border-radius:999px;flex:none;padding:3px 7px;font-size:11px}.census-card strong{color:var(--ink);overflow-wrap:anywhere}.census-card span,.census-card small{color:var(--muted);font-size:12px;line-height:1.45}.mini-bars{gap:4px;margin-top:3px;display:grid}.mini-bars span{color:#fff;white-space:nowrap;background:linear-gradient(90deg,#315f9b,#69a64b);border-radius:999px;min-width:58px;padding:3px 7px;font-size:10px;font-weight:800;display:block;overflow:hidden}.decade-mini{grid-template-columns:repeat(8,minmax(0,1fr));align-items:end;gap:3px;min-height:44px;margin-top:4px;display:grid}.decade-mini span{color:var(--muted);place-items:center;gap:2px;font-size:9px;line-height:1;display:grid}.decade-mini i{background:#315f9b;border-radius:999px 999px 2px 2px;align-self:end;width:8px;min-height:5px;display:block}.dot{border-radius:999px;width:11px;height:11px;display:inline-block}.button-row{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.button,.ghost-button{cursor:pointer;border-radius:7px;justify-content:center;align-items:center;min-width:74px;min-height:40px;padding:9px 13px;font-weight:800;display:inline-flex}.button{background:var(--accent);border:1px solid var(--accent);color:#fff}.button:hover{background:var(--accent-strong)}.ghost-button{border:1px solid var(--line);color:var(--ink);background:#fff}.board-columns{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;display:grid}.history-list{gap:8px;display:grid}.history-item,.empty-row{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;padding:12px}.history-item{color:var(--ink);cursor:pointer;text-align:left;gap:4px;display:grid}.history-item.active{border-color:var(--accent);box-shadow:inset 4px 0 0 var(--accent);background:#edf5ef}.history-item strong{overflow-wrap:anywhere}.history-item span,.empty-row{color:var(--muted);font-size:13px;line-height:1.5}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:720px}th,td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:11px 13px}th{background:var(--panel-soft);color:#46504b;font-size:12px}.bar-cell{grid-template-columns:minmax(90px,1fr) 46px;align-items:center;gap:7px;display:grid}.bar-cell>span{background:linear-gradient(90deg,#287453,#c8952d);border-radius:999px;min-width:3px;height:8px;display:block}.bar-cell small{color:var(--muted)}.media-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.table-media-summary{border-top:1px solid var(--line);padding-top:12px}.media-card{gap:4px;min-width:0;padding:14px;display:grid}.media-card small{color:var(--muted);font-weight:800}.media-card strong{overflow-wrap:anywhere;font-size:22px}.media-card span{color:var(--muted);font-size:12px}.notice{color:#6c5414;background:#fff8df;border:1px solid #ead38b;border-radius:8px;padding:12px 14px;line-height:1.6}.operations-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.full{grid-column:1/-1}.status{border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.status.active{color:#1e6a48;background:#dff1e7}.status.closed{color:#705a37;background:#eee7dc}.confirm-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.confirm-summary div{background:var(--panel-soft);border:1px solid var(--line);border-radius:8px;padding:12px}.confirm-summary small{color:var(--muted);font-size:12px;display:block}.confirm-summary strong{overflow-wrap:anywhere;margin-top:4px;font-size:18px;display:block}@media (max-width:980px){.workspace-grid,.operations-grid{grid-template-columns:1fr}.side-stack{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.board-columns,.media-grid,.census-grid,.response-area-grid,.focus-grid,.confirm-summary,.form-grid,.side-stack{grid-template-columns:1fr}.result-heading{flex-direction:column;align-items:start}.button-row{justify-content:flex-start}}@media (max-width:620px){.topbar{flex-direction:column;align-items:stretch;gap:8px}.topbar-note{display:none}.page{padding:12px}.dashboard-hero>div:first-child,.hero-status,.panel,.metric{padding:13px}.compact-filters,.quick-form,.origin-form,.segmented-row,.age-decade-strip{grid-template-columns:1fr}.map-card,.map{min-height:520px}.map{height:520px}.legend{bottom:10px;left:10px}.dashboard-hero,.metrics,.screen-tabs{grid-template-columns:1fr}}
.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(../media/layers.1220hx8ja1.sy.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(../media/layers-2x.0olxl6i2vnf_c.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(../media/marker-icon.0i9~u_difxrfa.png)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
:root{--t-radius-sm:8px;--t-radius:12px;--t-radius-lg:18px;--t-shadow-sm:0 1px 2px #141e180f, 0 2px 6px #141e180a;--t-shadow:0 4px 12px #141e180f, 0 14px 32px #141e1812;--t-shadow-lg:0 8px 28px #141e181a, 0 24px 60px #141e181f;--t-glass-bg:#ffffffc7;--t-glass-border:#ffffff8c;--t-accent:#2c8a64;--t-accent-strong:#1d5a40;--t-accent-soft:#e6f4ec;--t-accent-ring:#2c8a6452;--t-warn:#c8772a;--t-warn-soft:#fdf3e4;--t-danger:#b8493d;--t-danger-soft:#fdecea;--t-ink:#14251e;--t-ink-2:#3d4d44;--t-muted:#6c7a72;--t-ease:cubic-bezier(.22, 1, .36, 1);--t-ease-snap:cubic-bezier(.4, 0, .2, 1);--t-fast:.14s;--t-normal:.22s;--t-slow:.36s}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:.005em;text-rendering:optimizelegibility;font-family:Inter,Segoe UI,Yu Gothic UI,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,sans-serif}h1,h2,h3,h4{letter-spacing:-.01em;line-height:1.25}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--t-accent);font-size:11px;font-weight:700}.topbar{-webkit-backdrop-filter:saturate(140%);backdrop-filter:saturate(140%);border-bottom:1px solid #ffffff0f;box-shadow:0 8px 24px #141e182e;background:linear-gradient(135deg,#17211c 0%,#1f2e26 50%,#14251e 100%)!important;padding:14px 26px!important}.topbar:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#ca982c99,#0000);height:1px;position:absolute;inset:0 0 auto}.brand-mark{transition:transform var(--t-normal) var(--t-ease);box-shadow:0 4px 14px #ca982c73,inset 0 1px #ffffff73;background:linear-gradient(135deg,#efbe5b 0%,#ca982c 100%)!important}.brand:hover .brand-mark{transform:translateY(-1px)scale(1.03)}.topbar-note{color:#f8f5edb8;letter-spacing:.06em;font-size:12px}.button,button.button,button[type=submit],button[type=button]:not(.unstyled){border-radius:var(--t-radius-sm);letter-spacing:.01em;cursor:pointer;-webkit-user-select:none;user-select:none;min-height:38px;transition:transform var(--t-fast) var(--t-ease-snap), box-shadow var(--t-normal) var(--t-ease), background var(--t-normal) var(--t-ease), border-color var(--t-normal) var(--t-ease);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:600;display:inline-flex;position:relative}.button{color:#fff;background:linear-gradient(#2f9670 0%,#1d6f50 100%);border-color:#ffffff0f;box-shadow:0 2px #14543a4d,0 8px 20px #1c6e5038}.button:hover{filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 4px #14543a4d,0 14px 30px #1c6e504d}.button:active{filter:brightness(.96);transform:translateY(1px);box-shadow:0 1px #14543a4d,0 4px 10px #1c6e502e}.button:focus-visible,button:focus-visible{box-shadow:0 0 0 4px var(--t-accent-ring);outline:none}.button.secondary,.button.ghost{color:var(--t-accent-strong);box-shadow:var(--t-shadow-sm);background:#fff;border:1px solid #d6dcd6}.button.secondary:hover,.button.ghost:hover{border-color:var(--t-accent);background:var(--t-accent-soft)}button:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.2)}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{border-radius:var(--t-radius-sm);min-height:38px;transition:border-color var(--t-fast) var(--t-ease), box-shadow var(--t-normal) var(--t-ease);background:#fff;border:1px solid #d6dcd6;padding:8px 12px}input:hover:not(:disabled):not([type=checkbox]):not([type=radio]),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:#b8c2bb}input:focus:not([type=checkbox]):not([type=radio]),select:focus,textarea:focus{border-color:var(--t-accent);box-shadow:0 0 0 4px var(--t-accent-ring);outline:none}select{background-image:linear-gradient(45deg, transparent 50%, var(--t-muted) 50%), linear-gradient(135deg, var(--t-muted) 50%, transparent 50%);appearance:none;background-position:calc(100% - 16px),calc(100% - 11px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:30px}.layer-row label,.segmented-row label{cursor:pointer;color:var(--t-ink-2);transition:all var(--t-normal) var(--t-ease);background:#fff;border:1px solid #dde2dd;border-radius:99px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:500;display:inline-flex}.layer-row label:hover,.segmented-row label:hover{border-color:var(--t-accent);color:var(--t-ink)}.layer-row input[type=checkbox],.segmented-row input[type=checkbox]{appearance:none;cursor:pointer;width:30px;height:18px;transition:background var(--t-normal) var(--t-ease);background:#d4dad4;border:none;border-radius:99px;flex-shrink:0;min-height:18px;padding:0;position:relative}.layer-row input[type=checkbox]:before,.segmented-row input[type=checkbox]:before{content:"";width:14px;height:14px;transition:transform var(--t-normal) var(--t-ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.layer-row input[type=checkbox]:checked,.segmented-row input[type=checkbox]:checked{background:linear-gradient(#2f9670 0%,#1d6f50 100%)}.layer-row input[type=checkbox]:checked:before,.segmented-row input[type=checkbox]:checked:before{transform:translate(12px)}:is(.layer-row label:has(input:checked),.segmented-row label:has(input:checked)){background:var(--t-accent-soft);border-color:var(--t-accent);color:var(--t-accent-strong);font-weight:600}.panel{box-shadow:var(--t-shadow);transition:box-shadow var(--t-normal) var(--t-ease), transform var(--t-normal) var(--t-ease);background:#fff;border:1px solid #141e180a;border-radius:var(--t-radius-lg)!important}.panel:hover{box-shadow:var(--t-shadow-lg)}.panel-heading h2{font-size:18px}.metric{border-radius:var(--t-radius);transition:transform var(--t-normal) var(--t-ease), box-shadow var(--t-normal) var(--t-ease);background:#fff;border:1px solid #141e180d;padding:14px 16px}.metric:hover{box-shadow:var(--t-shadow);transform:translateY(-2px)}.metric strong{background:linear-gradient(135deg, var(--t-accent-strong), var(--t-accent));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:28px;font-weight:700}.metric small{color:var(--t-muted);letter-spacing:.03em;font-weight:500}.notice{background:linear-gradient(120deg, var(--t-warn-soft), #fff8eb);border-radius:var(--t-radius);color:#6e4216;border:1px solid #c8772a40;padding:10px 14px 10px 36px;font-size:13px;position:relative}.notice:before{content:"ⓘ";color:var(--t-warn);font-size:16px;font-weight:700;position:absolute;top:50%;left:12px;transform:translateY(-50%)}table{border-collapse:separate;border-spacing:0}table thead th{letter-spacing:.04em;text-transform:uppercase;color:var(--t-muted);font-size:11.5px;font-weight:600;background:linear-gradient(#fafbf9,#f3f5f3)!important}table tbody tr{transition:background var(--t-fast) var(--t-ease)}table tbody tr:hover{background:#2c8a640a}.legend{background:var(--t-glass-bg);-webkit-backdrop-filter:blur(14px)saturate(150%);border:1px solid var(--t-glass-border);border-radius:var(--t-radius);box-shadow:var(--t-shadow);padding:10px 14px}.legend-item{color:var(--t-ink-2);font-size:12.5px;font-weight:500}.legend-item .dot{vertical-align:middle;border-radius:50%;width:12px;height:12px;margin-right:6px;display:inline-block}.map-card{border-radius:var(--t-radius-lg);box-shadow:var(--t-shadow-lg);position:relative;overflow:hidden}.map-card:before{content:"";border-radius:inherit;pointer-events:none;z-index:1;border:1px solid #141e180f;position:absolute;inset:0}.segmented-row:not(.layer-row)>*{transition:all var(--t-normal) var(--t-ease)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#141e1833 padding-box content-box;border:2px solid #0000;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#141e1852 padding-box content-box;border:2px solid #0000}@keyframes t-pop-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.panel,.metric,.notice,.map-card{animation:t-pop-in var(--t-slow) var(--t-ease) both}.panel:first-of-type{animation-delay:0s}.panel:nth-of-type(2){animation-delay:60ms}.panel:nth-of-type(3){animation-delay:.12s}.panel:nth-of-type(4){animation-delay:.18s}section a[href]:not(.brand){transition:filter var(--t-normal) var(--t-ease), transform var(--t-fast) var(--t-ease-snap), box-shadow var(--t-normal) var(--t-ease)}section a[href]:not(.brand):hover{filter:brightness(1.04);transform:translateY(-1px)}section a[href]:not(.brand):active{transform:translateY(0)}section>header p,section>p{line-height:1.7}.home-page{max-width:1180px;margin:0 auto;padding:36px 24px 64px}.home-hero{text-align:center;padding:24px 12px 36px}.home-title{background:linear-gradient(135deg,#14251e 0%,#1d6f50 60%,#2f9670 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:8px 0 12px;font-size:clamp(28px,4vw,44px)}.home-lead{color:var(--t-muted);max-width:640px;margin:0 auto;font-size:15px;line-height:1.8}.home-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin-top:28px;display:grid}.home-card{border-radius:var(--t-radius-lg);color:inherit;box-shadow:var(--t-shadow-sm);transition:transform var(--t-normal) var(--t-ease), box-shadow var(--t-normal) var(--t-ease), border-color var(--t-normal) var(--t-ease);background:#fff;border:1px solid #141e180f;grid-template-columns:56px 1fr 24px;align-items:center;gap:16px;padding:18px 20px;text-decoration:none;display:grid;position:relative;overflow:hidden}.home-card:before{content:"";opacity:0;transition:opacity var(--t-normal) var(--t-ease);pointer-events:none;background:linear-gradient(135deg,#0000 40%,#2c8a640f 100%);position:absolute;inset:0}.home-card:hover{box-shadow:var(--t-shadow-lg);border-color:var(--t-accent);transform:translateY(-3px)}.home-card:hover:before{opacity:1}.home-card-icon{color:#fff;border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;font-size:28px;display:inline-flex;box-shadow:0 8px 20px #0000001f,inset 0 1px #ffffff59}.home-card-body{min-width:0}.home-card-eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--t-muted);margin:0 0 4px;font-size:10.5px;font-weight:700}.home-card-title{color:var(--t-ink);margin:0 0 6px;font-size:17px;font-weight:700}.home-card-desc{color:var(--t-ink-2);margin:0;font-size:13px;line-height:1.6}.home-card-arrow{color:var(--t-muted);transition:transform var(--t-normal) var(--t-ease), color var(--t-normal) var(--t-ease);font-size:22px}.home-card:hover .home-card-arrow{color:var(--t-accent);transform:translate(4px)}.home-card-primary{border:2px solid var(--t-accent);background:linear-gradient(135deg,#fff 0%,#f7fbf9 100%);grid-column:span 2;box-shadow:0 6px 18px #1d6f501f}.home-card-primary .home-card-title{font-size:19px}.home-card-primary .home-card-icon{width:64px;height:64px;font-size:32px}@media (max-width:720px){.home-card-primary{grid-column:span 1}}.topbar-logout{letter-spacing:.04em;cursor:pointer;margin-left:16px;color:#f8f5edd9!important;min-height:32px!important;transition:background var(--t-fast) var(--t-ease), border-color var(--t-fast) var(--t-ease), color var(--t-fast) var(--t-ease)!important;box-shadow:none!important;background:#ffffff0f!important;border:1px solid #ffffff2e!important;border-radius:99px!important;padding:6px 14px!important;font-size:12.5px!important;font-weight:600!important}.topbar-logout:hover{color:#efbe5b!important;filter:none!important;background:#ca982c2e!important;border-color:#ca982c73!important;transform:none!important}.topbar-logout:active{transform:translateY(1px)!important}.topbar-logout:disabled{opacity:.5;cursor:not-allowed}.login-page{background:radial-gradient(circle at 20% 0,#ca982c29,#0000 50%),radial-gradient(circle at 80% 100%,#2c8a6424,#0000 55%),linear-gradient(#eef1ed,#d8dfd8);justify-content:center;align-items:center;min-height:calc(100vh - 64px);padding:40px 20px;display:flex}.login-card{border-radius:var(--t-radius-lg);width:100%;max-width:420px;box-shadow:var(--t-shadow-lg);background:#fff;border:1px solid #141e180f;padding:36px 32px 28px;position:relative}.login-brand{align-items:center;gap:12px;margin-bottom:8px;display:flex}.login-brand-mark{color:#20170a;background:linear-gradient(135deg,#efbe5b 0%,#ca982c 100%);border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;font-weight:800;display:inline-flex;box-shadow:0 6px 16px #ca982c66,inset 0 1px #ffffff80}.login-card h1{letter-spacing:-.01em;margin:4px 0 6px;font-size:22px}.login-card .subtext{color:var(--t-muted);margin-bottom:22px;font-size:13px;line-height:1.65}.login-card label{margin-bottom:14px;display:block}.login-card label>span{color:var(--t-ink-2);letter-spacing:.02em;margin-bottom:6px;font-size:12.5px;font-weight:600;display:block}.login-password-row{align-items:stretch;gap:8px;display:flex}.login-password-row input[type=password],.login-password-row input[type=text]{flex:1}.login-reveal{cursor:pointer;white-space:nowrap;color:var(--t-ink-2)!important;border-radius:var(--t-radius-sm)!important;box-shadow:none!important;min-height:38px!important;transition:border-color var(--t-fast) var(--t-ease), background var(--t-fast) var(--t-ease)!important;background:#fff!important;border:1px solid #d6dcd6!important;padding:0 12px!important;font-size:12px!important;font-weight:500!important}.login-reveal:hover{border-color:var(--t-accent)!important;background:var(--t-accent-soft)!important;transform:none!important}.login-submit{width:100%;margin-top:6px}.login-status{background:var(--t-danger-soft);color:#7a1a14;border-radius:var(--t-radius-sm);border:1px solid #b8493d4d;margin-top:12px;padding:10px 12px;font-size:13px}.login-hint{color:var(--t-muted);text-align:center;margin-top:14px;font-size:11.5px;line-height:1.65}.color-mode-row{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.color-mode-btn{cursor:pointer;color:var(--t-ink-2)!important;min-height:34px!important;box-shadow:none!important;background:#fff!important;border:1px solid #d6dcd6!important;border-radius:99px!important;padding:6px 14px!important;font-size:13px!important;font-weight:500!important}.color-mode-btn:hover{border-color:var(--t-accent)!important;background:var(--t-accent-soft)!important;transform:none!important}.color-mode-btn.active{color:#fff!important;background:linear-gradient(#2f9670 0%,#1d6f50 100%)!important;border-color:#ffffff0f!important;font-weight:600!important;box-shadow:0 4px 12px #1c6e5040!important}.distance-ring-toggle{cursor:pointer;border-radius:var(--t-radius-sm);color:var(--t-ink-2);background:#f3f6f3;border:1px solid #e5e7e4;align-items:center;gap:10px;width:100%;padding:8px 12px;font-size:13px;display:inline-flex}.distance-ring-toggle input[type=checkbox]{appearance:none;cursor:pointer;width:34px;height:20px;transition:background var(--t-normal) var(--t-ease);background:#d4dad4;border-radius:99px;flex-shrink:0;min-height:20px;padding:0;position:relative}.distance-ring-toggle input[type=checkbox]:before{content:"";width:16px;height:16px;transition:transform var(--t-normal) var(--t-ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.distance-ring-toggle input[type=checkbox]:checked{background:linear-gradient(#4f8cc9 0%,#315f9b 100%)}.distance-ring-toggle input[type=checkbox]:checked:before{transform:translate(14px)}.legend-scale{flex-direction:column;gap:4px;min-width:120px;font-size:11px;display:flex}.legend-scale small{color:var(--t-muted);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.legend-scale-bar{border:1px solid #141e1814;border-radius:6px;height:10px;display:flex;overflow:hidden}.legend-scale-bar>span{flex:1}.legend-scale-axis{color:var(--t-muted);justify-content:space-between;font-size:10px;display:flex}.hero-status-button{min-width:340px;color:inherit;text-align:left;cursor:pointer;transition:border-color var(--t-normal) var(--t-ease), box-shadow var(--t-normal) var(--t-ease), transform var(--t-normal) var(--t-ease);background:linear-gradient(145deg,#153f32fa,#12241dfa),radial-gradient(circle at 12% 20%,#d9a4412e,#0000 42%);border:1px solid #d9a44147;border-radius:18px;gap:7px;padding:18px 54px 18px 20px;display:grid;position:relative}.hero-status-button:hover{border-color:#ca982c8c;transform:translateY(-1px);box-shadow:0 18px 42px #10191538!important}.hero-status-kicker,.hero-status-updated{font-size:12px;font-weight:850;color:#fffaf0a8!important}.hero-status-kicker{letter-spacing:.11em}.hero-status-line{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.hero-status-line b,.hero-status-line i{border-radius:999px;min-width:0;padding:5px 9px;font-size:12px;font-style:normal;font-weight:850;display:inline-flex}.hero-status-line b{color:#173329;background:linear-gradient(#f7d875,#d9a441)}.hero-status-line i{color:#fffaf0d1;background:#ffffff17;border:1px solid #ffffff1f}.hero-status-edit{opacity:.65;font-size:16px;position:absolute;top:50%;right:18px;transform:translateY(-50%)}.filter-dialog-backdrop{-webkit-backdrop-filter:blur(6px);z-index:1000;animation:t-fade var(--t-fast) var(--t-ease);background:#141e1873;place-items:center;padding:16px;display:grid;position:fixed;inset:0}@keyframes t-fade{0%{opacity:0}to{opacity:1}}.filter-dialog{width:min(680px,100%);max-height:90vh;animation:t-pop-in var(--t-normal) var(--t-ease);background:linear-gradient(#fffef9,#f4f7f2);border:1px solid #153f3229;border-radius:22px;overflow:auto;box-shadow:0 30px 90px #1019154d}.filter-dialog-head{border-bottom:1px solid #153f321a;justify-content:space-between;align-items:center;padding:22px 26px 16px;display:flex}.filter-dialog-head h3{margin:4px 0 0;font-size:18px}.filter-dialog-close{cursor:pointer;width:32px;height:32px;transition:background var(--t-fast) var(--t-ease), color var(--t-fast) var(--t-ease);font-size:16px;color:var(--t-muted)!important;background:0 0!important;border:1px solid #0000!important;border-radius:50%!important;min-height:32px!important;padding:0!important}.filter-dialog-close:hover{background:var(--t-accent-soft)!important;color:var(--t-accent-strong)!important}.filter-dialog-section{border-bottom:1px solid #153f3214;padding:20px 26px}.filter-dialog-section:last-of-type{border-bottom:none}.filter-dialog-label{color:#2d5c49;letter-spacing:.08em;margin:0 0 10px;font-size:13px;font-weight:700}.filter-dialog-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.filter-dialog-fields .field:has(#media){display:none}.filter-dialog-section:has(.layer-row){display:none}.filter-dialog-fields:has(#media){grid-template-columns:1fr}@media (max-width:480px){.filter-dialog-fields{grid-template-columns:1fr}}.filter-dialog-fields .field label{color:var(--t-muted);margin-bottom:4px;font-size:12px;display:block}.filter-dialog-fields select{background:#ffffffd1;border-color:#153f3229;border-radius:12px;width:100%;min-height:46px;font-weight:760}.filter-dialog-hint{color:var(--t-muted);margin:10px 0 0;font-size:12px}.filter-dialog-foot{justify-content:flex-end;padding:16px 26px 22px;display:flex}.pivot-control-row{background:linear-gradient(120deg, var(--t-warn-soft), #fff8eb);border-radius:var(--t-radius);border:1px solid #c8772a2e;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px;display:flex}.pivot-toggle{cursor:pointer;color:#6e4216;align-items:center;gap:10px;font-size:14px;font-weight:600;display:inline-flex}.pivot-toggle input[type=checkbox]{appearance:none;cursor:pointer;width:34px;height:20px;transition:background var(--t-normal) var(--t-ease);background:#d4dad4;border-radius:99px;flex-shrink:0;position:relative}.pivot-toggle input[type=checkbox]:before{content:"";width:16px;height:16px;transition:transform var(--t-normal) var(--t-ease);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.pivot-toggle input[type=checkbox]:checked{background:linear-gradient(#d97c2e 0%,#b25a18 100%)}.pivot-toggle input[type=checkbox]:checked:before{transform:translate(14px)}.pivot-toggle em{color:var(--t-muted);font-size:12px;font-style:normal;font-weight:500}.pivot-hint{color:#6e4216;opacity:.85;margin:0;font-size:12px}.pivot-row-unexplored{background:#f4b8601a}.pivot-row-unexplored .area-name{color:#7a4a0e;font-weight:600}.unexplored-tag{color:#7a4a0e;letter-spacing:.04em;background:#f4b860;border-radius:99px;margin-right:8px;padding:1px 6px;font-size:10.5px;font-weight:700;display:inline-block}.census-v2 .census-block{border-top:1px solid #eee;margin-top:16px;padding-top:16px}.census-v2 .census-block:first-of-type{border-top:none;margin-top:8px;padding-top:0}.census-block-head{flex-wrap:wrap;align-items:baseline;gap:14px;margin-bottom:12px;display:flex}.census-block-head h3{margin:0;font-size:18px}.census-block-hint{color:var(--t-muted);margin-left:auto;font-size:12px}.census-overview-v2{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px;display:grid}.census-overview-v2>div{background:var(--t-accent-soft);border-radius:var(--t-radius-sm);border:1px solid #2c8a642e;padding:10px 12px}.census-overview-v2 small{color:var(--t-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:11px;display:block}.census-overview-v2 strong{color:var(--t-accent-strong);white-space:nowrap;font-size:16px;font-weight:700}.age-decade-strip-v2{grid-template-columns:repeat(5,1fr);align-items:end;gap:8px;margin-bottom:14px;display:grid}.age-decade-strip-v2>div{border-radius:var(--t-radius-sm);text-align:center;background:linear-gradient(#fafbf9,#f3f5f3);border:1px solid #e8eae6;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;min-height:140px;padding:10px 8px 12px;display:flex}.age-decade-strip-v2 small{color:var(--t-muted);letter-spacing:.04em;white-space:nowrap;font-size:11px;font-weight:600}.age-decade-strip-v2 i{background:linear-gradient(#34a373,#1d6f50);border-radius:4px 4px 2px 2px;width:22px;min-height:8px;margin:0 auto;display:block}.age-decade-strip-v2 strong{color:var(--t-ink);font-size:13px;font-weight:700}.age-decade-strip-v2>div:hover i{filter:brightness(1.1)}.age-decade-strip-v2>div:hover{border-color:var(--t-accent)}@media (max-width:560px){.age-decade-strip-v2{grid-template-columns:repeat(3,1fr)}}.household-strip-v2{flex-wrap:wrap;gap:8px;display:flex}.household-strip-v2 span{background:#fff;border:1px solid #e1e6e2;border-radius:99px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;display:inline-flex}.household-strip-v2 b{color:var(--t-ink-2);font-weight:700}.household-strip-v2 em{color:var(--t-accent-strong);font-style:normal;font-weight:700}.census-grid-v2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;display:grid}.census-card-v2{border-radius:var(--t-radius);transition:border-color var(--t-normal) var(--t-ease), box-shadow var(--t-normal) var(--t-ease), transform var(--t-normal) var(--t-ease);background:#fff;border:1px solid #e5e7e4;padding:0;overflow:hidden}.census-card-v2:hover,.census-card-v2.open{border-color:var(--t-accent);box-shadow:var(--t-shadow)}.census-card-head-btn{cursor:pointer;width:100%;position:relative;color:inherit!important;text-align:left!important;min-height:auto!important;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;padding:14px 36px 12px 16px!important;font-weight:400!important;display:block!important}.census-card-head-btn:hover{background:#2c8a640a!important;transform:none!important}.census-card-v2 .census-card-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.census-card-v2 .census-card-head strong{color:var(--t-ink);font-size:15px}.census-card-v2 .perf-label{color:var(--t-accent-strong);background:var(--t-accent-soft);text-transform:uppercase;border-radius:99px;padding:2px 8px;font-size:11px;font-weight:700}.census-card-line{color:var(--t-muted);flex-wrap:wrap;gap:4px 12px;font-size:12px;display:flex}.census-card-toggle{color:var(--t-muted);transition:color var(--t-fast);font-size:14px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.census-card-v2.open .census-card-toggle{color:var(--t-accent)}.census-card-detail{animation:t-fade var(--t-fast) var(--t-ease);background:linear-gradient(#2c8a6408,#0000);border-top:1px solid #eef2ef;padding:12px 16px 16px}.census-detail-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin-bottom:12px;display:grid}.census-detail-grid>div{border-radius:var(--t-radius-sm);background:#fff;border:1px solid #eaedea;padding:8px 10px}.census-detail-grid small{color:var(--t-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px;font-size:10.5px;display:block}.census-detail-grid strong{color:var(--t-ink);font-size:13px}.bar-row{grid-template-columns:60px 1fr;align-items:center;gap:10px;margin-bottom:8px;display:grid}.bar-row-title{color:var(--t-muted);letter-spacing:.04em;font-size:11px;font-weight:600}.bar-stack{background:#f3f5f3;border:1px solid #e0e4df;border-radius:6px;height:22px;display:flex;overflow:hidden}.bar-stack span{color:#fff;white-space:nowrap;text-overflow:ellipsis;justify-content:center;align-items:center;min-width:22px;padding:0 4px;font-size:10.5px;font-weight:600;display:inline-flex;overflow:hidden}.bar-row-gender .bar-stack span:first-child{background:#4f8cc9}.bar-row-gender .bar-stack span:nth-child(2){background:#d97c6e}.bar-row-house .bar-stack span:first-child{background:#888e8a}.bar-row-house .bar-stack span:nth-child(2){background:#6ba381}.bar-row-house .bar-stack span:nth-child(3){background:#2c8a64}.bar-row-house .bar-stack span:nth-child(4){background:#c8772a}.decade-mini-v2{border-top:1px dashed #e5e7e4;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));align-items:end;gap:4px;margin-top:12px;padding-top:12px;display:grid}.decade-mini-v2 span{flex-direction:column;align-items:center;gap:3px;min-width:0;display:flex}.decade-mini-v2 i{background:linear-gradient(#34a373,#1d6f50);border-radius:3px 3px 2px 2px;width:18px;display:block}.decade-mini-v2 small{color:var(--t-muted);white-space:nowrap;letter-spacing:.02em;font-size:9.5px}.decade-mini-v2 em{color:var(--t-ink-2);font-size:10px;font-style:normal;font-weight:700}.topbar-note a{color:#f8f5edd9;transition:color var(--t-fast) var(--t-ease), border-color var(--t-fast) var(--t-ease);border-bottom:1px dotted #f8f5ed4d}.topbar-note a:hover{color:var(--gold,#efbe5b);border-color:var(--gold,#efbe5b)}:root{--kohara-ink:#101915;--kohara-kombu:#153f32;--kohara-kombu-2:#206044;--kohara-gold:#d9a441;--kohara-gold-2:#f1cf7a;--kohara-rice:#fbf8ef;--kohara-paper:#fffdf7;--kohara-line:#1d443321;--kohara-red:#b8493d;--kohara-blue:#285c8f;--shadow:0 18px 46px #1019151a}body{color:var(--kohara-ink);background:radial-gradient(circle at 8% -8%,#d9a44138,#0000 26%),radial-gradient(circle at 92% 0,#2060442e,#0000 28%),linear-gradient(#f8f4e8 0%,#eef3ec 44%,#f7f3e7 100%)}body:before{content:"";z-index:-1;pointer-events:none;opacity:.38;background-image:linear-gradient(#153f320b 1px,#0000 1px),linear-gradient(90deg,#153f320b 1px,#0000 1px);background-size:28px 28px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 78%);mask-image:linear-gradient(#000,#0000 78%)}.topbar{min-height:72px;box-shadow:0 14px 38px #1019153d;background:linear-gradient(135deg,#101915fa 0%,#153f32fa 52%,#09110efa 100%)!important;padding:14px 28px!important}.topbar:before{content:"";background:linear-gradient(90deg,#0000,#f1cf7aeb,#0000);height:1px;position:absolute;inset:auto 22px 0}.brand-mark{width:44px;height:44px;box-shadow:inset 0 1px #ffffff8c,0 10px 22px #d9a44157;background:linear-gradient(135deg, var(--kohara-gold-2), var(--kohara-gold) 52%, #9c6b1e)!important;color:#1d1607!important;border-radius:9px!important}.brand strong{color:#fffaf0;letter-spacing:.04em}.brand small,.topbar-note{color:#fffaf0b8!important}.page{gap:18px;max-width:1840px;padding:20px}.dashboard-hero{gap:16px}.dashboard-hero>div:first-child{background:radial-gradient(circle at 86% 18%,#d9a4412e,#0000 28%),linear-gradient(135deg,#fffdf7fa,#eef6eff2),linear-gradient(90deg,#d9a4412e,#0000);border:1px solid #d9a4413d;padding:20px 22px;position:relative;overflow:hidden;box-shadow:0 18px 46px #1019151a;border-radius:18px!important}.dashboard-hero>div:first-child:after{content:"";opacity:.12;background:repeating-linear-gradient(45deg, transparent 0 9px, var(--kohara-kombu) 9px 11px), radial-gradient(circle, var(--kohara-gold), transparent 62%);border-radius:50%;width:160px;height:160px;position:absolute;bottom:-18px;right:18px}h1{color:var(--kohara-ink);letter-spacing:0;font-weight:850}h2{color:#17251f;font-weight:820}.subtext{color:#526259;font-size:14px}.eyebrow{color:var(--kohara-kombu-2)!important;letter-spacing:.14em!important}.hero-status,.panel,.metric,.media-card,.table-wrap{-webkit-backdrop-filter:blur(10px)saturate(130%);backdrop-filter:blur(10px)saturate(130%);border:1px solid var(--kohara-line)!important;background:#fffdf7e0!important;box-shadow:0 14px 38px #10191514!important}.hero-status{color:var(--kohara-rice);background:linear-gradient(160deg,#153f32f5,#101915f5)!important;border-radius:14px!important}.hero-status small,.hero-status span{color:#fffaf0bd!important}.hero-status strong{color:#fff9e9}.census-switch-row{background:#153f3214;border:1px solid #153f3224;border-radius:11px;padding:5px}.mini-tab{border-radius:8px}.mini-tab.active{color:var(--kohara-kombu);background:linear-gradient(#fffef9,#f5f0df);box-shadow:0 8px 20px #1019151a,inset 0 0 0 1px #d9a4413d}.campaign-strip{gap:10px;padding:2px 2px 6px}.campaign-tab{background:linear-gradient(#fffdf7f5,#f4f9f2eb);border:1px solid #153f321f;border-radius:12px;flex-basis:205px;min-height:66px;box-shadow:0 10px 26px #10191512}.campaign-tab.active{box-shadow:inset 4px 0 0 var(--kohara-gold), 0 12px 28px #153f3221;background:linear-gradient(#fffaf0,#edf7ee);border-color:#d9a441b8}.view-toolbar{align-items:center;padding:14px;border-radius:14px!important}.metric{position:relative;overflow:hidden;background:linear-gradient(#fffdf7fa,#f2f8eff0),radial-gradient(circle at 92% 8%,#d9a44129,#0000 34%)!important;border-radius:16px!important}.metric:after{content:"";background:linear-gradient(90deg, var(--kohara-kombu-2), var(--kohara-gold));opacity:.72;height:3px;position:absolute;inset:auto 0 0}.metric strong{background:linear-gradient(135deg, var(--kohara-kombu), var(--kohara-kombu-2) 54%, #9f721e);-webkit-background-clip:text;background-clip:text}.map-card{min-height:min(78vh,780px);background:linear-gradient(135deg,#153f3214,#d9a44117),#eef3ee!important;border:1px solid #153f322e!important;border-radius:20px!important;box-shadow:0 22px 60px #1019152e!important}.map{height:min(78vh,780px);min-height:620px}.leaflet-container{background-size:36px 36px;background:linear-gradient(90deg,#153f320e 1px,#0000 1px),linear-gradient(0deg,#153f320e 1px,#0000 1px),#edf3ef!important;font-family:Inter,Segoe UI,Yu Gothic UI,Hiragino Sans,Meiryo,sans-serif!important}.leaflet-tile-pane{filter:saturate(.92)contrast(.98)brightness(1.04)}.leaflet-overlay-pane svg{filter:drop-shadow(0 8px 12px #121f1824)}.leaflet-popup-content-wrapper{border:1px solid #153f3224;border-radius:12px;box-shadow:0 16px 36px #1019152e}.leaflet-popup-content{color:#213129;font-size:13px;line-height:1.55}.legend{background:#fffdf7e0;border:1px solid #ffffffb8;border-radius:13px;gap:8px;padding:12px 14px;bottom:18px;left:18px;box-shadow:0 14px 34px #10191524}.legend-item{color:#26362f;font-weight:760}.area-label-anchor{pointer-events:none}.map-area-label{color:#17251f;border:1px solid color-mix(in srgb, var(--label-color) 50%, white);-webkit-backdrop-filter:blur(8px)saturate(135%);backdrop-filter:blur(8px)saturate(135%);background:#fffdf7eb;border-radius:10px;min-width:128px;max-width:186px;padding:6px 8px 7px;transform:translate(-50%,-100%);box-shadow:0 10px 22px #10191529}.map-area-label:before{content:"";background:var(--label-color);border-radius:50%;width:8px;height:8px;position:absolute;top:9px;left:9px}.map-area-label b,.map-area-label span{white-space:nowrap;text-overflow:ellipsis;padding-left:14px;display:block;overflow:hidden}.map-area-label b{font-size:12px;font-weight:850}.map-area-label span{color:#516159;margin-top:2px;font-size:10.5px;font-weight:760}.map-area-label.excellent,.map-area-label.good{background:#effaf1f0}.map-area-label.watch{background:#fff8e7f2}.map-area-label.low{background:#fff3eef2}.focus-card{border:1px solid #d9a44138;border-radius:16px;position:relative;overflow:hidden;background:linear-gradient(155deg,#153f32fa,#101915fa)!important}.focus-card:after{content:"";border:18px solid #d9a4411f;border-radius:50%;width:108px;height:108px;position:absolute;bottom:-36px;right:-26px}.focus-card strong,.census-overview strong{color:var(--kohara-gold-2)}.excel-table-wrap{border-color:#153f3221;border-radius:16px;box-shadow:inset 0 0 0 1px #fffdf7a6,0 18px 44px #1019151a}.excel-pivot-table thead th{color:#fff8e7;letter-spacing:.05em;font-size:12px;background:linear-gradient(#153f32,#101915)!important}.excel-pivot-table tbody tr{transition:background .16s,transform .16s}.excel-pivot-table tbody tr:hover{background:#d9a44114}.area-name{color:#1b2a22;background:linear-gradient(#f6fbf3,#edf6ed)!important}.rate-cell{background:linear-gradient(#fffdf7fa,#f9fbf6f5)}.rate-cell>i{opacity:.24;border-radius:999px}.census-overview div,.response-area-card{border-color:#d9a44138;border-radius:12px;background:linear-gradient(155deg,#153f32,#101915)!important}.button{background:linear-gradient(180deg, var(--kohara-kombu-2), var(--kohara-kombu))!important;color:#fffaf0!important;border-color:#153f322e!important}.button:hover{background:linear-gradient(#2a7454,#174334)!important}.ghost-button,.button.secondary,.button.ghost{color:var(--kohara-kombu)!important;background:#fffdf7e6!important;border-color:#153f322e!important}@media (max-width:620px){.map-card,.map{min-height:560px}.map{height:560px}.map-area-label{max-width:150px}}@media (min-width:901px){.compact-hero{grid-template-columns:minmax(0,1.25fr) minmax(280px,340px)!important}.screen-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))!important}.view-toolbar{grid-template-columns:minmax(180px,.74fr) minmax(160px,.62fr) minmax(420px,1.45fr)!important}}@media (min-width:1180px){.page{gap:14px}.dashboard-hero>div:first-child{padding:17px 21px}.hero-status{padding:16px 18px!important}.screen-tabs{max-width:520px}.campaign-tab{min-height:56px}}.territory-map-card{padding:16px;overflow:hidden;background:radial-gradient(circle at 92% 4%, #d9a4412e, transparent 26%), linear-gradient(180deg, #fffdf7fc, #f1f7eff2), var(--kohara-paper)!important;border:1px solid #153f322e!important}.territory-map-head{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:4px 4px 12px;display:grid}.territory-map-head h2{color:#15261f;letter-spacing:0;margin:2px 0 4px;font-size:clamp(20px,2.2vw,30px)}.territory-map-head span{color:#627168;font-size:13px;font-weight:700}.territory-media-switch{background:#fffdf7d6;border:1px solid #153f3224;border-radius:14px;gap:6px;min-width:230px;padding:10px;display:grid;box-shadow:inset 0 1px #fffc}.territory-media-switch small{color:#64746c;letter-spacing:.08em;font-size:10.5px;font-weight:850}.territory-media-switch div{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;display:grid}.territory-media-switch button{color:#34473d;cursor:pointer;background:#f7faf6;border:1px solid #153f3221;border-radius:9px;min-height:32px;font-size:12px;font-weight:850}.territory-media-switch button.active{color:#f1cf7a;background:linear-gradient(145deg,#153f32,#101915);border-color:#d9a44180;box-shadow:0 8px 18px #10191526}.territory-summary{color:#fffaf0;text-align:right;background:linear-gradient(145deg,#153f32,#101915);border:1px solid #d9a4414d;border-radius:14px;min-width:184px;padding:12px 16px;box-shadow:0 14px 30px #1019152e}.territory-summary strong,.territory-summary span{display:block}.territory-summary strong{color:var(--kohara-gold-2);font-size:30px;line-height:1}.territory-summary span{color:#fffaf0c7;margin-top:6px;font-size:12px;font-weight:800}.territory-map-layout{grid-template-columns:minmax(0,880px) minmax(230px,1fr);justify-content:center;align-items:start;gap:14px;display:grid}.territory-stage{aspect-ratio:1;background:#eef3ee;border:2px solid #153f3238;border-radius:16px;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fffdf780,0 22px 54px #10191533}.territory-leaflet-map{z-index:1;background:#e9efea;width:100%;height:100%;position:absolute;inset:0}.territory-reference-base{filter:saturate(.82)contrast(1.02)brightness(1.03)}.territory-reference-lines{filter:saturate(.18)contrast(1.55)brightness(1.02);mix-blend-mode:multiply}.territory-leaflet-map .leaflet-control-zoom{border:1px solid #1118272e;border-radius:8px;overflow:hidden;box-shadow:0 8px 20px #1019152e}.territory-leaflet-map .leaflet-control-zoom a{color:#17211c;background:#fffffff0}.territory-leaflet-map .leaflet-control-attribution{background:#ffffffc2;font-size:9px}.territory-leaflet-polygon{mix-blend-mode:multiply}.territory-leaflet-response-dot{filter:drop-shadow(0 1px 1px #11182752)}.territory-map-guide{gap:12px;min-width:0;display:grid}.territory-guide-current,.territory-guide-section,.territory-guide-stats{background:#fffdf7e6;border:1px solid #153f3226;border-radius:12px;box-shadow:0 10px 24px #10191514}.territory-guide-current{color:#173329;background:linear-gradient(#fffdf7f5,#f4f8f3f0),linear-gradient(90deg,#d9a44124,#0000);gap:5px;padding:15px;display:grid}.territory-guide-current small,.territory-guide-section>small,.territory-guide-stats small{color:#66776e;font-size:11px;font-weight:850}.territory-guide-current small{color:#6b7a71}.territory-guide-current strong{color:#153f32;font-size:23px;line-height:1.1}.territory-guide-current span{color:#53645b;font-size:12px;font-weight:800}.territory-guide-current span.territory-data-version{color:#8a9691;letter-spacing:.01em;cursor:help;margin-top:4px;font-size:10.5px;font-weight:600}.territory-layer-control{gap:8px;padding:13px;display:grid}.territory-layer-control label{color:#25372f;cursor:pointer;background:#ffffffc7;border:1px solid #153f321a;border-radius:999px;justify-content:space-between;align-items:center;gap:10px;min-height:38px;padding:7px 10px;font-size:13px;font-weight:850;display:flex}.territory-layer-control input{accent-color:#2d6a4f;block-size:18px;inline-size:18px}.territory-guide-current em{color:#2f5f4b;background:#153f3214;border-radius:999px;width:fit-content;margin-top:4px;padding:4px 8px;font-size:11px;font-style:normal;font-weight:850}.territory-guide-section{gap:9px;padding:13px;display:grid}.territory-legend{gap:8px;display:grid}.territory-legend .legend-item{color:#314239;font-size:11.5px;font-weight:780}.territory-swatch{clip-path:polygon(8% 26%,34% 6%,82% 18%,94% 58%,68% 92%,18% 76%);border:1px solid #153f322e;width:18px;height:14px}.territory-swatch.none{opacity:.72;background:#9ca3af}.territory-swatch.zero{opacity:.9;background:#d5e2dd}.territory-swatch.low{opacity:.9;background:#93c5fd}.territory-swatch.medium{opacity:.9;background:#38bdf8}.territory-swatch.high{opacity:.9;background:#facc15}.territory-swatch.very-high{opacity:.92;background:#fb923c}.territory-swatch.maximum{opacity:.94;background:#ef4444}.territory-swatch.rr-top{opacity:.95;background:#1a7a44}.territory-swatch.rr-high{opacity:.92;background:#5fae3f}.territory-swatch.rr-mid{opacity:.92;background:#cdd64a}.territory-swatch.rr-low{opacity:.92;background:#f2b441}.territory-swatch.rr-vlow{opacity:.92;background:#e8803a}.territory-swatch.rr-min{opacity:.94;background:#d2483b}.territory-swatch.rr-zero{opacity:.9;background:#8da2b5}.territory-dot-sample{background:#b84a3a;border:2px solid #fffaf0;border-radius:50%;width:13px;height:13px;box-shadow:0 0 0 4px #b84a3a29}.territory-origin-sample{background:#facc15;border:3px solid #111827;border-radius:50%;width:14px;height:14px}.territory-member-sample{background:#7e57c2;border-radius:50%;width:8px;height:8px}.territory-line-sample{border-top:4px solid #111827;border-radius:999px;width:20px;height:0}.territory-guide-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.territory-guide-stats span{background:#fffdf7f5;gap:3px;padding:12px;display:grid}.territory-guide-stats strong{color:#153f32;font-size:20px}@media (max-width:760px){.territory-map-head{grid-template-columns:1fr;display:grid}.territory-media-switch{width:100%;min-width:0}.territory-summary{text-align:left;width:100%}.territory-stage{border-radius:12px}.territory-map-layout{grid-template-columns:1fr}}.top-nav{flex-wrap:wrap;align-items:center;gap:4px;margin:0 8px;display:flex}.top-nav-link{letter-spacing:.01em;transition:background var(--t-fast) var(--t-ease), color var(--t-fast) var(--t-ease);white-space:nowrap;border-radius:10px;align-items:center;gap:7px;min-height:36px;padding:8px 13px;font-size:13.5px;font-weight:600;line-height:1;text-decoration:none;display:inline-flex;color:#f8f5edc7!important}.top-nav-link:hover{background:#ffffff0f;color:#fffaf0!important}.top-nav-link.active{background:#d9a44129;box-shadow:inset 0 0 0 1px #d9a4414d;color:#fff4d8!important}.top-nav-link:focus-visible{outline-offset:2px;outline:2px solid #d9a44199}.top-nav-icon{font-size:15px;line-height:1}.top-nav-label-short{display:none}@media (max-width:720px){.top-nav{gap:2px;margin:0 4px}.top-nav-link{flex-direction:column;gap:2px;padding:7px 6px;font-size:11px}.top-nav-label{display:none}.top-nav-label-short{font-size:10px;line-height:1.1;display:inline}.top-nav-icon{font-size:16px}}.skip-link{z-index:9999;color:#17211c;background:#fff4d8;border-radius:6px;width:1px;height:1px;padding:8px 16px;font-weight:700;text-decoration:none;position:absolute;top:auto;left:-9999px;overflow:hidden}.skip-link:focus{width:auto;height:auto;position:fixed;top:12px;left:12px}.content-auth{justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;display:flex}.empty-state{text-align:center;color:#5a5a5a;padding:2.5rem 1rem}.empty-state.compact{padding:1.5rem 1rem}.empty-state-icon{margin-bottom:10px;font-size:40px}.empty-state.compact .empty-state-icon{font-size:28px}.empty-state-title{color:#222;margin:0 0 6px;font-size:16px;font-weight:700}.empty-state.compact .empty-state-title{font-size:14px}.empty-state-desc{max-width:480px;margin:0 auto 14px;font-size:13px;line-height:1.7}.empty-state-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:inline-flex}.page-tabs{background:#fff9;border:1px solid #e5e4dd;border-radius:12px;flex-wrap:wrap;gap:6px;margin:0 0 16px;padding:4px;display:flex}.page-tab{color:#444;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:auto;justify-content:center;align-items:center;gap:6px;min-width:100px;padding:10px 14px;font-size:13px;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.page-tab:hover{background:#34663a14}.page-tab.active{color:#fff;background:#34663a;box-shadow:0 2px 8px #34663a40}.page-tab-badge{background:#ffffff40;border-radius:99px;padding:1px 7px;font-size:11px;font-weight:700}.page-tab.active .page-tab-badge{background:#ffffff4d}.alert-banner{border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:14px;padding:12px 16px;font-size:13px;line-height:1.6;display:flex}.alert-banner.warning{color:#73580a;background:#fef7e0;border:1px solid #e8d48a}.alert-banner.error{color:#7a1a14;background:#fdecea;border:1px solid #f5c2bd}.alert-banner.info{color:#1d5a30;background:#e6f4ea;border:1px solid #b8dfc4}.alert-banner strong{margin-bottom:2px;display:block}.alert-banner a{color:inherit;font-weight:700;text-decoration:underline}.session-picker{background:#ffffffb3;border:1px solid #e5e4dd;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;padding:10px 14px;display:flex}.session-picker label{color:#637152;letter-spacing:.04em;font-size:12px;font-weight:700}.session-picker select{flex:200px;min-width:180px}.standalone-page{max-width:1200px;margin:0 auto;padding:1.5rem}.standalone-page .metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:18px;display:grid}.standalone-page .metric-card{background:#fff;border:1px solid #e5e4dd;border-radius:12px;padding:.9rem 1rem}.standalone-page .metric-card small{color:#777;margin-bottom:4px;font-size:12px;display:block}.standalone-page .metric-card strong{color:#222;font-size:22px;font-weight:700}.standalone-page .metric-card.accent strong{color:var(--accent-color,#222)}.standalone-page .data-table-wrap{overflow-x:auto}.standalone-page .data-table{border-collapse:collapse;width:100%;font-size:13px}.standalone-page .data-table thead{background:#f7f6f0}.standalone-page .data-table th,.standalone-page .data-table td{text-align:left;padding:.55rem .7rem}.standalone-page .data-table th[scope=col]{font-weight:700}.standalone-page .data-table tbody tr{border-top:1px solid #efeee8}.standalone-page .data-table tbody tr.clickable-row{cursor:pointer;transition:background .12s}.standalone-page .data-table tbody tr.clickable-row:hover{background:#34663a0f}.classification-badge{white-space:nowrap;border-radius:99px;padding:2px 8px;font-size:12px;font-weight:600}.pending-imports-list{flex-direction:column;gap:8px;display:flex}.pending-import-item{background:#fef7e0;border:1px solid #e8d48a;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:13px;display:flex}.pending-import-item strong{color:#222;display:block}.pending-import-item small{color:#73580a}.page-loading{text-align:center;color:#888;padding:3rem 1rem;font-size:14px}.page-loading:before{content:"";border:3px solid #e5e4dd;border-top-color:#34663a;border-radius:50%;width:32px;height:32px;margin:0 auto 12px;animation:.8s linear infinite spin;display:block}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.page-loading:before{border-top-color:#34663a;animation:none}}.home-quick{border-radius:var(--t-radius-lg);background:linear-gradient(#fffef9 0%,#f6f4ec 100%);border:1px solid #153f321a;margin-top:36px;padding:18px 20px 22px}.home-quick-title{color:#1d5a40;letter-spacing:.04em;margin:0 0 12px;font-size:14px;font-weight:700}.home-quick-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px;display:grid}.home-quick-item{color:var(--t-ink);transition:transform var(--t-fast) var(--t-ease), border-color var(--t-fast) var(--t-ease), box-shadow var(--t-fast) var(--t-ease);background:#fff;border:1px solid #e5e4dd;border-radius:10px;align-items:center;gap:12px;min-height:48px;padding:12px 14px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.home-quick-item:hover{border-color:var(--t-accent);box-shadow:var(--t-shadow-sm);transform:translateY(-1px)}.home-title{font-size:30px!important;font-weight:800!important}.home-lead{color:#3d4d44!important;font-size:15px!important;line-height:1.7!important}.home-lead strong{color:#1d5a40;background:linear-gradient(#0000 60%,#d9a44147 60%);padding:0 2px}body{font-size:15px!important}.button{min-height:40px!important;padding:10px 16px!important;font-size:14px!important}.ghost-button{min-height:40px!important;padding:10px 14px!important;font-size:13.5px!important}input[type=text],input[type=password],input[type=number],input:not([type]),select,textarea{min-height:40px!important;padding:8px 12px!important;font-size:14px!important}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--t-accent-ring)!important;outline-offset:1px!important;border-color:var(--t-accent)!important}@media (max-width:720px){.analytics-hero-row{grid-template-columns:1fr!important}.panel table{font-size:12.5px}.panel{padding:14px!important}.home-title{font-size:24px!important}.dashboard-hero h1{font-size:1.5rem!important}.home-quick-list{grid-template-columns:1fr!important}}.panel table th:first-child,.panel table td:first-child{background:inherit;z-index:1;position:sticky;left:0}.panel table thead th:first-child{background:#f7f6f0}
