:root{--ink:#242621;--muted:#85877f;--line:#e9eae5;--page:#f5f6f3;--surface:#fff;--yellow:#ffdc60;--yellow-soft:#fff5cb;--green:#35a97e;--green-bg:#e7f5ee;--red:#e56a62;--red-bg:#fff0ed;--amber:#e8ac36;--amber-bg:#fff6df;--gray:#a4aaa8;--gray-bg:#f0f2f1;--radius:18px;--shadow:0 3px 18px #202a1905;font-family:Inter,"Segoe UI",Arial,sans-serif;font-synthesis:none;color:var(--ink);background:var(--page)}
*{box-sizing:border-box}
body{margin:0;font-size:14px;line-height:1.5}
button,input,select{font:inherit;color:inherit}
button,a,input,select{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
button:disabled{cursor:wait}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid #d8ad16;outline-offset:3px}
button{border:0}
a{color:inherit}
svg{display:block}
p,h1,h2,h3{margin:0}
button[hidden],[hidden]{display:none!important}
.app-shell{display:flex;min-height:100vh}
.sidebar{width:226px;flex:0 0 226px;position:fixed;inset:0 auto 0 0;background:#fffef9;border-right:1px solid #e9e8df;padding:29px 16px 20px;display:flex;flex-direction:column;z-index:600}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;padding:0 5px 30px}
.brand-mark{display:grid;place-items:center;width:40px;height:40px;background:var(--yellow);border-radius:13px;flex-shrink:0}
.brand-mark img{display:block;width:29px;height:29px;object-fit:contain}
.brand strong{display:block;font-size:17px;letter-spacing:-.6px;line-height:1.35}
.brand>span:last-child{min-width:0}
.brand small{display:block;color:#8c8d7f;font-size:9px;letter-spacing:-.1px;white-space:nowrap;margin-top:2px}
.sidebar-label{text-transform:uppercase;font-size:9px;letter-spacing:1.1px;color:#a3a397;padding:0 12px 12px}
.nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:12px 12px;margin-bottom:5px;border-radius:10px;background:transparent;text-align:left;color:#74776b;font-size:12px;transition:background .15s,color .15s}
.nav-item:hover{background:#f5f4eb;color:var(--ink)}
.nav-item.active{background:var(--yellow-soft);color:#473b13;font-weight:600}
.nav-icon{width:20px;text-align:center;font-size:19px;line-height:20px}
.nav-count{margin-left:auto;font-size:10px;font-weight:600;background:#e9dba0;border-radius:5px;min-width:22px;text-align:center;padding:1px 5px}
.nav-item:not(.active) .nav-count{background:#f0f1eb}
.sidebar-bottom{margin-top:auto;padding:26px 12px 0}
.sidebar-note{display:flex;align-items:center;gap:7px;color:#6f7367;font-size:11px}
.sidebar-source-links{display:flex;flex-direction:column;gap:10px}
.sidebar-source-link{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:0;background:transparent;text-align:left;width:100%;min-width:0;color:inherit;border-radius:5px}
.source-status-name{font-size:10px;line-height:1.7;overflow-wrap:anywhere}
.source-status-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border-radius:6px;background:var(--gray-bg);color:var(--muted);font-size:8px;line-height:1.7;max-width:100%}
.source-status-pill .small-status{width:5px;height:5px}
.source-status-pill.active{background:var(--green-bg);color:#407b60}
.source-status-pill.waiting,.source-status-pill.snapshot{background:var(--amber-bg);color:#9b7938}
.source-status-pill.waiting .small-status,.source-status-pill.snapshot .small-status{background:var(--amber)}
.source-status-pill.error{background:var(--red-bg);color:#b75b50}
.source-status-pill.error .small-status{background:var(--red)}
.source-status-list{display:flex;flex-direction:column;gap:10px;margin-top:17px}
.source-status-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.source-status-row .source-status-name{font-size:11px}
.source-card>#source-context-caption{font-size:10px;line-height:1.8;margin-top:12px}
[data-theme="dark"] .source-status-pill.active{color:var(--green)}
[data-theme="dark"] .source-status-pill.waiting,[data-theme="dark"] .source-status-pill.snapshot{color:var(--amber)}
[data-theme="dark"] .source-status-pill.error{color:var(--red)}
.small-status,.status-dot{width:6px;height:6px;background:#b9bdb2;border-radius:50%;display:inline-block;flex-shrink:0}
.small-status.online,.update-status.fresh .status-dot{background:var(--green)}
.sidebar-bottom p{font-size:11px;line-height:1.8;color:#a1a394;margin:13px 0 20px}
.version-badge{font-size:9px;text-transform:uppercase;letter-spacing:1px;border-top:1px solid var(--line);padding-top:16px;color:#9da18f}
.main-content{margin-left:226px;width:calc(100% - 226px);padding:29px 30px 20px;max-width:2040px}
.page-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}
.eyebrow{font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#9a9e90;font-weight:600}
.page-header h1{font-size:27px;letter-spacing:-1.1px;font-weight:650;line-height:1.25;margin:5px 0 5px}
.page-header p{color:var(--muted);font-size:12px}
.header-actions{display:flex;align-items:center;gap:9px}
.update-status{display:flex;align-items:center;gap:7px;font-size:10px;color:#888d81;white-space:nowrap;background:#fff;border:1px solid var(--line);padding:8px 11px;border-radius:25px}
.update-status.fresh{color:#4b8d73;background:#edf7f0;border-color:#e5f1e7}
.update-status.stale{background:#fff6e7;color:#a9813d;border-color:#f7ead1}
.update-status.error{background:var(--red-bg);color:#b75b50;border-color:#f9ded7}
.icon-button{display:grid;place-items:center;width:35px;height:35px;background:#fff;border:1px solid var(--line);border-radius:11px;color:#7f8477;flex-shrink:0}
.icon-button:hover{background:#fafbf7;color:#33392c}
.icon-button svg{width:18px;height:18px}
.icon-button.busy svg{animation:spin 1.2s linear infinite}
.header-actions>.refresh-button{display:flex;align-items:center;justify-content:center;gap:7px;width:auto;min-width:104px;padding:0 11px;font-size:11px;font-weight:500;white-space:nowrap}
.header-actions>.refresh-button.busy{min-width:117px}
.filter-bar{display:flex;align-items:center;gap:9px;margin-bottom:19px;flex-wrap:wrap}
.filter-field{display:flex;align-items:center;gap:6px;background:white;border:1px solid #e5e7e0;border-radius:10px;padding:0 10px;min-height:39px}
.filter-field>span{font-size:10px;color:#999e90}
.filter-field select{background:none;border:0;outline:0;font-size:11px;height:37px;min-width:80px;max-width:190px;padding-right:5px;cursor:pointer}
.period-field{padding-left:9px}
.period-field>span{display:none}
.period-field select{min-width:102px}
.mood-field select{max-width:164px}
.search-field{min-width:180px;flex:1;display:flex;align-items:center;gap:7px;padding:0 12px;border:1px solid #e5e7e0;background:#fff;border-radius:10px;height:39px}
.search-field svg{height:17px;width:17px;flex-shrink:0;color:#a2a799}
.search-field input{font-size:11px;border:0;outline:0;min-width:0;width:100%;background:transparent}
.search-field input::placeholder{color:#9ca18f}
.text-button{font-size:11px;font-weight:600;color:#8d7935;background:transparent;padding:8px 4px;white-space:nowrap}
.text-button:hover{text-decoration:underline}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:20px}
.timeline-panel{padding:19px 22px 13px;margin-bottom:19px;min-width:0}
.timeline-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px}
.timeline-heading h2{font-size:14px;font-weight:600}
.timeline-heading p{font-size:10px;color:var(--muted);margin-top:3px;line-height:1.7}
.timeline-stats{display:flex;gap:30px;flex-shrink:0}
.timeline-stats>div{display:grid;grid-template-columns:auto auto;column-gap:10px;align-items:baseline}
.timeline-stats span{font-size:10px;color:var(--muted)}
.timeline-stats strong{font-size:20px;font-weight:600;line-height:1.2}
.timeline-stats small{font-size:9px;color:var(--muted);grid-column:1/-1;line-height:1.7}
.timeline-legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:10px;color:var(--muted);margin-bottom:10px}
.timeline-legend>span{display:flex;align-items:center;gap:7px;min-width:0}
.timeline-line-key{display:block;width:20px;border-top:2px solid #d69b54;flex-shrink:0}
.timeline-line-key.calm{border-top-color:#35a17e}
.timeline-line-key.moderate{border-top-color:#c6aa48}
.timeline-line-key.severe{border-top-color:#d98070}
.timeline-line-key.unrated{border-top-color:var(--gray);border-top-style:dashed}
.timeline-line-key.blocked_direct{border-top-color:#b69b70;border-top-style:dashed}
.timeline-plot-row{display:flex;gap:8px;min-width:0}
.timeline-y-labels{width:27px;flex-shrink:0;display:flex;flex-direction:column;justify-content:space-between;padding:24px 0 36px;text-align:right;font-size:9px;color:var(--muted)}
.timeline-plot{flex:1;min-width:0}
#timeline-svg{display:block;width:100%;height:130px;overflow:visible;touch-action:pan-y;cursor:grab;user-select:none}
#timeline-svg.dragging{cursor:grabbing}
#timeline-svg.dragging .timeline-cursor{visibility:hidden}
.timeline-grid-line{stroke:var(--line);stroke-width:1;stroke-dasharray:3 5}
.timeline-time-grid{stroke:var(--line);stroke-width:1;stroke-dasharray:2 6;opacity:.6}
.timeline-minor-grid{stroke:var(--muted);stroke-width:1;opacity:.35}
.timeline-peak-guide{stroke:#bd955e;stroke-width:1;stroke-dasharray:3 4;opacity:.8}
.timeline-peak-band{position:relative;height:24px}
.timeline-peak-label{position:absolute;top:0;transform:translateX(-50%);max-width:calc(100% - 8px);padding:1px 6px;border:1px solid var(--line);border-radius:6px;background:var(--amber-bg);color:var(--ink);font-size:9px;line-height:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.timeline-series{fill:none;stroke:#d69b54;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.9}
.timeline-series.load-calm{stroke:#35a17e}
.timeline-series.load-moderate{stroke:#c6aa48}
.timeline-series.load-severe{stroke:#d98070}
.timeline-series.load-unrated{stroke:var(--gray);stroke-dasharray:3 4;opacity:.65}
.timeline-series.blocked_direct{stroke:#b69b70;stroke-dasharray:6 4;stroke-width:1.7;opacity:.9}
.timeline-area{fill:#e4aa671c;stroke:none}
.timeline-hatch-stroke{stroke:var(--gray);stroke-width:.6;opacity:.25}
.timeline-point.negative{fill:var(--red)}
.timeline-point.blocked_direct{fill:var(--amber)}
.timeline-cursor{stroke:var(--muted);stroke-width:1;stroke-dasharray:2 4;opacity:.65}
.timeline-x-labels{position:relative;font-size:9px;color:var(--muted);margin-top:6px;height:30px}
.timeline-time-tick{position:absolute;top:0;text-align:center;transform:translateX(-50%);white-space:nowrap;line-height:14px}
.timeline-time-tick.first{transform:none;text-align:left}
.timeline-time-tick.last{transform:translateX(-100%);text-align:right}
.timeline-time-tick small{display:block;font-size:8px;opacity:.85}
.timeline-time-tick.minor{font-size:8px;opacity:.68;top:2px;line-height:12px;font-weight:400}
.timeline-x-labels span{white-space:nowrap}
.timeline-readout{font-size:10px;color:var(--muted);min-height:18px;margin-top:8px;line-height:1.7;overflow-wrap:anywhere}
.timeline-coverage{font-size:9px;color:var(--muted);line-height:1.8;margin-top:7px}
.timeline-empty{padding:21px 0;font-size:11px;color:var(--muted)}
.timeline-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:3px 0 13px}
.timeline-presets{display:flex;gap:4px;flex-wrap:wrap}
.timeline-presets button,.timeline-zoom button{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:6px;padding:5px 9px;font-size:10px;line-height:1.7;min-height:29px}
.timeline-presets button[aria-pressed="true"]{background:var(--yellow-soft);color:#8d7935;border-color:#e3d7a3}
.timeline-presets button:disabled,.timeline-zoom button:disabled{opacity:.4;cursor:default}
.timeline-zoom{display:flex;gap:5px}
.timeline-zoom button{font-size:17px;line-height:1.2;min-width:30px;padding:3px 8px}
.timeline-chart.loading{opacity:.45}
.timeline-navigator{margin:12px 0 7px;padding-left:35px;min-width:0}
.timeline-range-labels,.timeline-domain-labels{display:flex;justify-content:space-between;gap:12px;min-width:0;color:var(--muted);font-size:9px;line-height:1.7}
.timeline-range-labels{margin-bottom:6px}
.timeline-range-labels>span:last-child,.timeline-domain-labels>span:last-child{text-align:right}
.timeline-domain-labels{font-size:8px;margin-top:4px}
.timeline-brush-track{position:relative;height:64px;background:var(--gray-bg);border:1px solid var(--line);border-radius:6px;min-width:0;touch-action:pan-y}
#timeline-overview{display:block;width:100%;height:62px;pointer-events:none;border-radius:5px}
.timeline-overview-series{fill:none;stroke:#cbaa85;stroke-width:1.3;opacity:.65}
.timeline-overview-series.blocked_direct{stroke:#b69b70;stroke-dasharray:6 4;stroke-width:1.5;opacity:.9}
.timeline-overview-unknown{fill:var(--gray);opacity:.09}
.timeline-selection{position:absolute;top:0;bottom:0;border:1px solid #c89b68;background:#d9a36a1a;cursor:grab;touch-action:none;border-radius:4px;z-index:2;max-width:100%}
.timeline-selection.dragging{cursor:grabbing}
.timeline-range{position:absolute;inset:0;width:100%;height:100%;margin:0;appearance:none;-webkit-appearance:none;background:transparent;pointer-events:none;z-index:3;outline:none}
.timeline-range::-webkit-slider-runnable-track{height:100%;background:transparent;border:0}
.timeline-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:11px;height:62px;border-radius:4px;border:1px solid #bd976d;background:#f2dfc9;pointer-events:auto;cursor:ew-resize;box-shadow:0 0 0 1px var(--surface);touch-action:none}
.timeline-range::-moz-range-track{height:100%;background:transparent;border:0}
.timeline-range::-moz-range-thumb{width:10px;height:60px;border-radius:4px;border:1px solid #bd976d;background:#f2dfc9;pointer-events:auto;cursor:ew-resize;touch-action:none}
.timeline-range:focus-visible{outline:2px solid #d8ad16;outline-offset:3px;border-radius:5px}
.timeline-range:focus-visible::-webkit-slider-thumb{background:var(--yellow);border-color:#9b8138}
.timeline-range:focus-visible::-moz-range-thumb{background:var(--yellow);border-color:#9b8138}
.timeline-navigation-hint{font-size:8px;color:var(--muted);line-height:1.8;margin-top:7px}
.timeline-error{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;line-height:1.8;color:#b75b50;padding:8px 0}
.current-overview{padding:20px 22px;margin-bottom:19px;min-width:0}
.current-mass-alert{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px 15px;margin:0 0 16px;border:1px solid #edbcae;border-left:4px solid var(--red);border-radius:10px;background:#fff0e7;color:#a15f4d;font-size:12px;line-height:1.8;text-align:left}
.current-mass-alert strong{white-space:nowrap;font-size:11px}
.current-top-shortcut{display:block;margin:-6px 0 10px;padding:0;font-size:10px;text-align:left}
.current-ranking-note{font-size:9px;color:var(--muted);line-height:1.8;margin:-3px 0 8px}
.current-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.current-heading h2{font-size:16px;font-weight:650;letter-spacing:-.3px}
.current-heading p{font-size:10px;color:var(--muted);line-height:1.8;margin-top:4px}
.current-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.current-actions .filter-field{min-height:32px}
.current-actions select{height:30px;min-width:78px;font-size:10px}
.current-scope-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:11px 0 7px}
.current-scope-row>p{font-size:10px;color:var(--muted);line-height:1.8}
.current-scope-row>.text-button{font-size:10px;padding:3px 0}
.current-summary{font-size:11px;color:var(--ink);line-height:1.9}
.current-freshness{font-size:9px;line-height:1.9;color:var(--muted);margin-top:3px}
.current-health{font-size:10px;line-height:1.8;color:#a18b4e;background:var(--amber-bg);border-radius:7px;padding:9px 11px;margin-top:10px}
.current-error{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:10px;line-height:1.8;color:#b75b50;margin-top:10px}
.current-mass-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:14px}
.current-mass-list>.current-mass-hero:only-child{grid-column:1/-1}
.current-mass-hero{padding:15px 17px;border:1px solid #efcec2;border-left:4px solid var(--red);border-radius:11px;background:#fff6ee;min-width:0}
.current-mass-heading{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;align-items:center}
.current-mass-heading>span:last-child{font-size:9px;line-height:1.8;color:var(--muted)}
.current-mass-hero h3{font-size:16px;font-weight:650;line-height:1.7;margin-top:8px}
.current-mass-label{font-size:11px;line-height:1.8;color:var(--muted);margin-top:2px}
.current-mass-breadth{display:flex;gap:25px;flex-wrap:wrap;margin:12px 0 9px}
.current-mass-breadth>div{display:flex;align-items:baseline;gap:7px}
.current-mass-breadth strong{font-size:26px;font-weight:600;line-height:1.2}
.current-mass-breadth span{font-size:10px;color:var(--muted)}
.current-mass-proof{font-size:11px;line-height:1.9;color:var(--muted);margin-top:8px}
.current-mass-details{font-size:11px;font-weight:600;border:1px solid #e2cbb3;border-radius:7px;background:#fff8f0;color:#9a754b;padding:8px 11px;margin-top:12px;line-height:1.7;text-align:left}
.current-no-mass{font-size:10px;line-height:1.8;color:var(--muted);grid-column:1/-1}
.current-top-heading{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;margin:18px 0 8px}
.current-top-heading h3{font-size:12px;font-weight:600}
.current-top-heading>span{font-size:9px;color:var(--muted);line-height:1.8}
.current-top-list{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:1fr;gap:0 20px;min-width:0}
.current-top-list>li{min-width:0}
.current-topic-row{display:flex;align-items:center;gap:9px;width:100%;min-width:0;border-top:1px solid var(--line);background:transparent;padding:12px 0;text-align:left;color:var(--ink)}
.current-topic-row:hover{background:var(--gray-bg)}
.current-topic-rank{font-size:11px;color:var(--muted);width:20px;flex-shrink:0;text-align:center}
.current-topic-body{flex:1;min-width:0}
.current-topic-title{display:flex;align-items:center;gap:5px 8px;flex-wrap:wrap}
.current-topic-title h4{font-size:11px;font-weight:600;line-height:1.8;margin:0;overflow-wrap:anywhere}
.current-topic-title .priority-badge{font-size:8px}
.current-topic-stats{display:flex;gap:2px 10px;flex-wrap:wrap;font-size:9px;color:var(--muted);line-height:1.8;margin-top:3px}
.current-topic-trend.growth{color:#bd7960}
.current-topic-trend.decline{color:#4b8d73}
.current-topic-arrow{font-size:14px;color:var(--muted);padding:0 3px;flex-shrink:0}
.current-empty{font-size:11px;line-height:1.9;color:var(--muted);padding:16px 0;grid-column:1/-1}
.current-detail-asof,.current-detail-period{font-size:10px;line-height:1.9;color:var(--muted);margin-bottom:11px}
.current-territories{padding:0;margin:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px;max-height:180px;overflow:auto}
.current-territories>li{font-size:10px;line-height:1.8;padding:5px 8px;background:var(--gray-bg);border-radius:6px;color:var(--muted);max-width:100%;overflow-wrap:anywhere}
.current-related-topics{display:flex;gap:6px;flex-wrap:wrap}
.current-related-topics button{padding:8px 10px;border-radius:7px;border:1px solid var(--line);background:var(--yellow-soft);font-size:10px;line-height:1.8;color:#8d7935;text-align:left;max-width:100%}
[data-theme="dark"] .current-mass-hero{background:#362c27;border-color:#6d4a3d;border-left-color:var(--red)}
[data-theme="dark"] .current-mass-alert{background:#3b2c27;border-color:#784c3d;border-left-color:var(--red);color:#efb6a2}
[data-theme="dark"] .current-mass-details{background:#48392d;border-color:#71523b;color:#e0bf98}
[data-theme="dark"] .current-health{color:var(--amber)}
[data-theme="dark"] .current-error,[data-theme="dark"] .current-topic-trend.growth{color:var(--red)}
[data-theme="dark"] .current-topic-trend.decline{color:var(--green)}
[data-theme="dark"] .current-related-topics button{color:var(--brand-text);border-color:var(--warning-border)}
@media(max-width:900px){.current-top-list{grid-template-columns:1fr}.current-mass-list{grid-template-columns:1fr}}
@media(max-width:600px){.current-overview{padding:16px 14px;margin-bottom:15px}.current-heading{gap:10px}.current-heading h2{font-size:14px;line-height:1.7}.current-heading p{font-size:9px}.current-actions{width:100%;justify-content:space-between;gap:7px}.current-actions .filter-field{flex:none;min-width:125px}.current-scope-row{gap:5px}.current-scope-row>p,.current-scope-row>.text-button{font-size:9px}.current-summary{font-size:10px}.current-freshness{font-size:8px}.current-health{font-size:9px}.current-mass-hero{padding:13px}.current-mass-hero h3{font-size:14px}.current-mass-breadth{gap:12px 20px}.current-mass-breadth>div{gap:5px}.current-mass-breadth strong{font-size:24px}.current-mass-breadth span{font-size:9px}.current-mass-label,.current-mass-proof,.current-mass-details{font-size:10px}.current-mass-heading .priority-badge{font-size:9px}.current-top-heading{gap:4px;margin-top:16px}.current-topic-row{padding:11px 0;gap:6px}.current-topic-title h4{font-size:11px}.current-topic-stats{font-size:8px;gap:2px 8px}.current-topic-rank{width:17px}.current-detail-asof,.current-detail-period{font-size:9px}}
@media(max-width:600px){.current-mass-alert{padding:10px 12px;font-size:10px;gap:8px;flex-wrap:wrap;margin-bottom:13px}.current-mass-alert strong{font-size:10px}}
[data-theme="dark"] .timeline-area{fill:#e4aa6724}
[data-theme="dark"] .timeline-presets button[aria-pressed="true"]{color:var(--brand-text);border-color:var(--warning-border)}
[data-theme="dark"] .timeline-range::-webkit-slider-thumb{background:#5b4935;border-color:#c39c6f}
[data-theme="dark"] .timeline-range::-moz-range-thumb{background:#5b4935;border-color:#c39c6f}
[data-theme="dark"] .timeline-range:focus-visible::-webkit-slider-thumb{background:#8d7542}
[data-theme="dark"] .timeline-range:focus-visible::-moz-range-thumb{background:#8d7542}
[data-theme="dark"] .timeline-error{color:var(--red)}
@media(max-width:1100px){.timeline-heading{flex-wrap:wrap;gap:10px}.timeline-stats{gap:25px}}
@media(max-width:600px){.timeline-panel{padding:15px 14px 12px;margin-bottom:15px}.timeline-heading{gap:11px}.timeline-heading h2{font-size:13px}.timeline-heading p{font-size:9px}.timeline-stats{width:100%;justify-content:space-between;gap:12px}.timeline-stats>div{grid-template-columns:1fr;gap:2px;min-width:0}.timeline-stats strong{font-size:19px}.timeline-stats span{font-size:9px}.timeline-stats small{font-size:8px;overflow-wrap:anywhere}.timeline-legend{gap:5px 14px;font-size:9px}.timeline-legend>span{line-height:1.7}.timeline-plot-row{gap:6px}.timeline-y-labels{width:24px;font-size:8px}#timeline-svg{height:116px}.timeline-x-labels{font-size:8px;gap:4px}.timeline-readout{font-size:9px}.timeline-coverage{font-size:8px}}
@media(max-width:600px){.timeline-controls{gap:8px}.timeline-presets{gap:3px}.timeline-presets button{font-size:9px;padding:5px 7px;min-height:30px}.timeline-zoom button{min-width:30px;min-height:30px}.timeline-navigator{padding-left:30px}.timeline-range-labels{font-size:8px;gap:8px}.timeline-domain-labels{font-size:7px;gap:8px}.timeline-navigation-hint{font-size:8px}.timeline-error{font-size:9px}}
.metric-card{background:#fff;border:1px solid #e8eae3;border-radius:var(--radius);padding:17px 19px 15px;box-shadow:var(--shadow)}
.metric-caption{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:#7e8475}
.metric-symbol{display:grid;place-items:center;font-size:15px;width:25px;height:25px;border-radius:8px;font-weight:500}
.metric-symbol.neutral{background:#edf3ed;color:#719675}
.metric-symbol.warm{background:var(--red-bg);color:#df8171}
.metric-symbol.yellow{background:var(--amber-bg);color:#c39b41}
.metric-symbol.violet{background:#f0edfb;color:#a28ecc}
.metric-value{font-size:31px;font-weight:600;letter-spacing:-1px;line-height:1.4;margin-top:7px;min-height:43px}
.metric-detail{font-size:10px;color:#a0a495;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.metric-card{display:block;text-decoration:none;transition:border-color .15s,background .15s}
.metric-card:hover{border-color:#d4dcbf;background:#fffef7}
.metric-card:focus-visible{outline:3px solid #d8ad16;outline-offset:3px}
.metric-action{display:flex;align-items:center;justify-content:space-between;gap:7px;border-top:1px solid #f0f2e9;margin-top:12px;padding-top:9px;font-size:10px;font-weight:500;color:#9a9b76}
.metric-action>span{font-size:14px;color:#a4ae85}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(310px,1fr);gap:17px;align-items:stretch}
.panel{background:#fff;border:1px solid #e6e9e1;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:76px;padding:17px 19px;border-bottom:1px solid #eff0eb}
.panel-header h2,.section-heading h2{font-size:14px;letter-spacing:-.25px;font-weight:650}
.panel-header p,.section-heading p{font-size:10px;color:#a0a596;margin-top:4px}
.subtle-button{display:flex;align-items:center;gap:6px;font-size:10px;padding:7px 9px;background:#f9faf6;border:1px solid #e9ebe3;border-radius:8px;white-space:nowrap}
.subtle-button svg{width:15px;height:15px}
.subtle-button:hover{background:#f0f3e9}
.map-wrap{position:relative;height:520px;background:#e9ede3}
.map-wrap:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 30% 40%,#f1f1d9 0,transparent 60%),linear-gradient(130deg,#e3edda,#e7ecdc)}
#city-map{height:100%;width:100%;z-index:1;background:transparent}
.map-message{position:absolute;z-index:450;left:50%;top:45%;transform:translate(-50%,-50%);width:min(85%,360px);padding:18px 20px;border:1px solid #e2e7db;background:#fffffff2;border-radius:13px;box-shadow:0 5px 30px #2e402615;font-size:12px;text-align:center;color:#727a65;pointer-events:none}
.map-legend{display:flex;gap:8px 16px;flex-wrap:wrap;padding:11px 17px;border-bottom:1px solid #edf0e7;background:#fafcf7}
.map-legend>span{display:flex;align-items:center;gap:5px;font-size:9px;color:#68705c;white-space:nowrap}
.mood-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}
.mood-dot.green{background:var(--green)}
.mood-dot.yellow{background:var(--amber)}
.mood-dot.red{background:var(--red)}
.mood-dot.gray{background:var(--gray)}
.yandex-wordmark{font-family:Arial,sans-serif;font-size:13px;color:#161616;font-weight:600;letter-spacing:-.5px;position:absolute;z-index:451;bottom:7px;left:14px;text-shadow:0 1px 1px #fff,0 0 3px #fff;text-decoration:none}
.yandex-wordmark>span{color:#e63629}
.map-footer{display:flex;justify-content:space-between;gap:15px;padding:10px 17px;font-size:9px;color:#a1a795;background:#fff}
.map-footer>span:first-child{color:#717b63}
.leaflet-container{font-family:inherit!important}
.leaflet-container .leaflet-control-attribution{font-size:8px;padding:2px 5px;background:#ffffffe0;border-radius:4px 0 0 0;color:#7c8372}
.leaflet-control-attribution a{color:#6e795f}
.leaflet-control-zoom{box-shadow:0 2px 10px #20351015!important;border:1px solid #dbe1d3!important;border-radius:9px!important;overflow:hidden}
.leaflet-control-zoom a{color:#677358!important;background:#fffffff2!important;font-size:19px!important;font-weight:400!important;width:29px!important;height:29px!important;line-height:28px!important}
.leaflet-control-zoom a:first-child{border-bottom:1px solid #e6eade!important}
.city-label-tooltip{border:1px solid #ffffff!important;border-radius:7px!important;background:#ffffffef!important;box-shadow:0 2px 8px #23311c14!important;font-size:10px!important;font-weight:600;color:#3e4b34!important;padding:3px 7px!important}
.city-label-tooltip:before{display:none}
.city-popup{min-width:180px;max-width:240px}
.city-popup h3{font-size:15px;margin:0 0 9px}
.city-popup p{font-size:11px;line-height:1.7;margin:4px 0}
.city-popup .popup-button{background:var(--yellow);border:0;border-radius:7px;width:100%;padding:8px;font-size:11px;margin-top:9px;font-weight:600}
.feed-panel{display:flex;flex-direction:column;min-width:0}
.feed-panel .panel-header{min-height:76px;padding:17px 16px}
.feed-heading{display:flex;align-items:center;gap:8px}
.count-pill{font-size:10px;color:#7d8672;background:#f0f3eb;border-radius:6px;padding:2px 7px;font-weight:600;white-space:nowrap}
.sort-control select{font-size:9px;max-width:120px;border:0;background:transparent;color:#929a86;cursor:pointer;outline:0}
.issue-feed{padding:8px 10px;overflow:auto;scrollbar-width:thin;scrollbar-color:#dfe4d7 transparent}
.feed-panel>.issue-feed{height:520px;grid-auto-rows:max-content;align-content:start;align-items:start}
.issue-card{width:100%;display:block;min-height:154px;flex-shrink:0;padding:15px 13px 13px;border:1px solid #e9ede4;border-radius:11px;background:#fdfefb;text-align:left;margin-bottom:8px;transition:border-color .15s,transform .15s,background .15s;position:relative;overflow:hidden}
.issue-card:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:3px;border-radius:0 2px 2px 0;background:var(--amber)}
.issue-card.high:before{background:var(--red)}
.issue-card.low:before{background:var(--green)}
.issue-card:hover{border-color:#d0d9bf;background:#f9fcf3;transform:translateY(-1px)}
.issue-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;font-size:9px}
.severity{padding:2px 6px;border-radius:4px;font-weight:600;background:var(--amber-bg);color:#ab8129}
.severity.high{background:var(--red-bg);color:#c56b5a}
.severity.low{background:var(--green-bg);color:#5c9d7e}
.priority-badge{display:inline-block;min-width:0;font-size:9px;line-height:1.6;padding:3px 6px;border-radius:5px;font-weight:600;background:#f1f3ee;color:#99a18f}
.priority-badge.p0{background:#fce8e7;color:#c25250}
.priority-badge.p1{background:#fff0e2;color:#c58245}
.priority-badge.p2{background:#fff5d8;color:#ac923c}
.priority-badge.p3{background:#edf5e9;color:#87a16b}
.priority-badge.p4{background:#edf0f6;color:#929eb4}
.issue-card.p0:before{background:#d96964}
.issue-card.p1:before{background:#dfad6c}
.issue-card.p2:before{background:#e1c771}
.issue-card.p3:before{background:#a4bd8a}
.issue-card.p4:before,.issue-card.unrated:before{background:#b3bdc6}
.issue-time{color:#a4ad98;font-size:9px;white-space:nowrap}
.issue-title{font-size:12px;font-weight:600;line-height:1.5;color:#414b35;margin:0 0 7px;overflow-wrap:anywhere}
.issue-location{display:flex;align-items:center;gap:4px;color:#8d9980;font-size:10px;margin-bottom:9px}
.issue-location svg{width:12px;height:12px;flex-shrink:0}
.issue-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:5px 9px;font-size:9px;color:#a4ad98}
.topic-pill{font-size:9px;color:#859471;background:#edf3e5;border-radius:4px;padding:2px 5px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.feed-footer{padding:10px 13px;border-top:1px solid #eef1e8;color:#a7af9d;font-size:9px;text-align:center;min-height:35px}
.empty-state{min-height:220px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:24px;color:#9aa18e}
.empty-state strong{font-size:13px;font-weight:600;color:#727d63}
.empty-state p{font-size:11px;max-width:260px;margin-top:7px;line-height:1.7}
.empty-illustration{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:#f0f4e9;color:#a0b18a;font-size:23px;margin-bottom:15px}
.loading-ring{width:24px;height:24px;border:2px solid #e5eadc;border-top-color:#d1b848;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:17px}
.overview-note{display:flex;gap:8px;margin-top:13px;color:#929c86;font-size:10px;line-height:1.7;max-width:920px}
.overview-note svg{width:15px;height:15px;flex-shrink:0;margin-top:1px}
.expanded-feed .issue-feed{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:17px;max-height:none}
.expanded-feed .issue-card{height:100%;margin:0}
.expanded-feed .empty-state{grid-column:1/-1}
.stream-subtabs{margin-bottom:20px}
.message-list{padding:4px 20px}
.message-card{padding:18px 1px;border-bottom:1px solid #edf0e7;min-width:0}
.message-card:last-child{border-bottom:0}
.message-card-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.message-card-header .issue-location{margin-bottom:0;min-width:0;font-size:11px}
.message-date{font-size:10px;color:#a0ab92;flex-shrink:0;white-space:nowrap}
.message-text{font-size:13px;line-height:1.9;color:#677657;white-space:pre-wrap;overflow-wrap:anywhere}
.message-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px}
.message-badges{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.message-sentiment{font-size:9px;padding:3px 6px;border-radius:5px;background:#f0f3ec;color:#a0aa92}
.message-sentiment.negative{background:#fff0ec;color:#ce8a76}
.message-sentiment.positive{background:#edf6eb;color:#8aa575}
.message-sentiment.pending{background:#fff7e0;color:#b5a268}
.message-priority-reason{font-size:10px;line-height:1.8;color:#a3ac98;margin-top:11px}
.messages-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #edf0e7;padding:13px 20px;font-size:10px;color:#9aa68a}
.messages-pagination button{background:#f4f7ed;border:1px solid #e7eddc;border-radius:8px;padding:7px 11px;font-size:10px;color:#8f9f76;white-space:nowrap}
.messages-pagination button:disabled{background:#fafbf7;border-color:#f0f3e9;color:#c0c7b5;cursor:default}
.topic-drilldown{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#fff9e5;border:1px solid #f0e7c7;border-radius:12px;margin-bottom:15px;padding:12px 16px}
.topic-drilldown>div{min-width:0}
.topic-drilldown span{display:block;font-size:9px;color:#afa275;margin-bottom:4px}
.topic-drilldown strong{display:block;font-size:12px;font-weight:600;color:#9a8c55;overflow-wrap:anywhere}
.topic-group-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
.topic-group-toolbar>p{font-size:10px;line-height:1.8;color:#9aa68b}
.topic-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.topic-groups>.empty-state{grid-column:1/-1}
.topic-group-card{display:block;text-align:left;background:#fff;border:1px solid #e5ebdc;border-radius:15px;padding:17px;min-width:0}
button.topic-group-card{transition:border-color .15s,background .15s}
button.topic-group-card:hover{border-color:#d0dbbc;background:#fdfff7}
.topic-group-header{display:flex;align-items:flex-start;justify-content:space-between;gap:9px;margin-bottom:13px}
.topic-group-header .priority-badge{font-size:8px}
.topic-group-header .issue-time{font-size:8px;padding-top:3px}
.topic-group-card h3{font-size:13px;font-weight:600;line-height:1.7;color:#65764f;overflow-wrap:anywhere}
.topic-group-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border-top:1px solid #eef2e7;margin-top:15px;padding-top:12px}
.topic-group-stats strong{display:block;font-size:19px;font-weight:600;line-height:1.6;color:#788d5f}
.topic-group-stats span{font-size:9px;color:#a2ae92}
.topic-group-reason{font-size:10px;line-height:1.8;color:#a2ac95;margin-top:13px}
.topic-group-action{display:block;font-size:10px;font-weight:600;color:#a0aa72;margin-top:15px}
.topic-urgent-summary{display:flex;align-items:center;justify-content:space-between;gap:13px;border:1px solid #f0d9c9;border-radius:12px;background:#fff8f1;padding:12px 15px;margin-bottom:16px}
.topic-urgent-summary>p{font-size:11px;line-height:1.8;color:#bb896b}
.topic-urgent-summary>div{display:flex;flex-wrap:wrap;gap:7px;flex-shrink:0}
.topic-urgent-summary button{font-size:10px;font-weight:600;color:#b37e62;background:#fff2e6;border:1px solid #f0d7c2;border-radius:7px;padding:7px 9px}
.topic-urgent-summary button:hover{background:#ffe8d6}
@media(max-width:1000px){.topic-urgent-summary{align-items:flex-start;flex-direction:column;gap:9px}.topic-urgent-summary>div{flex-shrink:1}.topic-urgent-summary button{font-size:9px}}
@media(max-width:1200px){.topic-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-action{font-size:9px}}
@media(max-width:760px){.message-list{padding:3px 14px}.message-card{padding:16px 0}.message-text{font-size:12px}.message-card-header{align-items:flex-start;gap:9px;flex-wrap:wrap;margin-bottom:10px}.message-date{font-size:9px}.messages-pagination{padding:12px 13px;gap:7px}.messages-pagination button{padding:7px 9px}.topic-groups{grid-template-columns:1fr}.topic-group-toolbar{align-items:flex-start;flex-direction:column;gap:9px}.topic-group-toolbar .filter-field{flex:none;width:auto;min-width:170px}.topic-group-header .priority-badge{font-size:9px}.topic-group-header .issue-time{font-size:9px}.topic-group-card{padding:16px}.topic-drilldown{padding:11px 13px;gap:9px}.stream-subtabs{gap:3px}.stream-subtabs .cities-subtab{padding-inline:10px;font-size:10px}.metric-action{font-size:9px;line-height:1.6;align-items:flex-start;gap:4px}}
.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:3px 1px}
.cities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.city-card{display:block;text-align:left;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;transition:border-color .15s,transform .15s}
.city-card:hover{border-color:#cdd7be;transform:translateY(-2px)}
.city-card-title{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;font-weight:600;margin-bottom:10px}
.mood-tag{display:inline-flex;align-items:center;gap:6px;color:#909a84;font-size:10px;background:#f4f7ef;padding:4px 7px;border-radius:5px}
.city-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;border-top:1px solid #edf0e7;margin-top:16px;padding-top:13px}
.city-stats strong{display:block;font-size:17px;font-weight:600;color:#57634b}
.city-stats small{font-size:9px;color:#a0a991}
.city-card-topics{font-size:10px;line-height:1.7;color:#98a18b;margin-top:13px;min-height:17px}
.city-card.gray .city-card-topics{color:#a5aba0}
.source-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.source-card{padding:25px}
.source-card>h2{font-size:17px;letter-spacing:-.4px;margin-top:14px}
.source-card>p{font-size:11px;color:#9aa38e;margin-top:5px}
.source-icon{display:grid;place-items:center;border-radius:12px;background:#ecf2e6;color:#81996a;font-size:26px;width:44px;height:44px}
.source-icon.yellow{background:var(--yellow-soft);color:#b39a35}
.source-card dl{margin:23px 0 0}
.source-card dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:11px 0;border-top:1px solid #edf0e8;font-size:11px}
.source-card dt{color:#9aa48d}
.source-card dd{margin:0;text-align:right;color:#59664a;overflow-wrap:anywhere}
.methodology-card{padding:25px}
.methodology-card>h2{font-size:15px}
.methodology-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;margin-top:22px}
.methodology-grid h3{font-size:12px;font-weight:600;margin:7px 0}
.methodology-grid p{font-size:11px;color:#99a38c;line-height:1.8}
.methodology-footnote{font-size:11px;color:#9ca48f;border-top:1px solid #edf0e7;padding-top:17px;margin-top:22px;line-height:1.8}
.page-footer{display:flex;justify-content:space-between;gap:12px;font-size:9px;color:#a7af9a;margin-top:23px;padding-top:15px;border-top:1px solid #e8ece1}
.error-banner,.analysis-banner{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#fff2eb;border:1px solid #f5d9c8;color:#ad795e;padding:11px 15px;margin-bottom:15px;border-radius:10px;font-size:11px}
.analysis-banner{background:#fff9e9;border-color:#f4e8c5;color:#a58a45;display:block}
.coverage-banner{font-size:11px;line-height:1.8;background:#eef3eb;border:1px solid #dde7d6;color:#829271;padding:11px 15px;margin-bottom:15px;border-radius:10px}
.header-actions>.control-toggle{width:auto;padding:0 11px;font-size:10px;white-space:nowrap}
.control-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 15px;margin-bottom:15px;border:1px solid #e9deae;border-radius:10px;background:var(--yellow-soft);color:#796a35;font-size:11px;line-height:1.8}
.control-banner strong{font-weight:600}
.control-banner p{font-size:10px}
.control-banner .text-button{white-space:normal;text-align:right}
.update-status.control{background:var(--yellow-soft);color:#8d7935;border-color:#e9deae}
.update-status.control .status-dot{background:var(--amber)}
.topic-group-cohort{font-size:10px;font-weight:600;color:#9c7455;margin-top:11px}
.episode-toolbar{padding:14px 18px 0}
.episode-scope{display:flex;gap:4px;flex-wrap:wrap}
.episode-scope button{padding:8px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:10px;color:var(--muted)}
.episode-scope button[aria-pressed="true"]{background:var(--yellow-soft);border-color:#e3d7a3;color:#796a35;font-weight:600}
.episode-toolbar>p{font-size:9px;color:var(--muted);line-height:1.8;margin-top:10px}
.episodes-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:15px 18px 18px;align-items:start}
.episodes-feed>.empty-state{grid-column:1/-1}
.episode-card{padding:16px;border:1px solid var(--line);border-left:3px solid var(--gray);border-radius:11px;background:var(--surface);min-width:0}
.episode-card.p0{border-left-color:var(--red)}
.episode-card.p1{border-left-color:var(--amber)}
.episode-card-header{display:flex;justify-content:space-between;gap:7px;align-items:flex-start;flex-wrap:wrap}
.episode-status{font-size:9px;color:var(--muted);line-height:1.8}
.episode-status.fresh{color:#4b8d73}
.episode-card>h3{font-size:13px;font-weight:600;line-height:1.7;overflow-wrap:anywhere;margin:9px 0 6px}
.episode-stats{display:flex;gap:4px 13px;flex-wrap:wrap;font-size:10px;color:var(--muted);line-height:1.8;margin:12px 0 9px}
.episode-times{display:flex;flex-direction:column;gap:3px;font-size:10px;color:var(--muted);line-height:1.8}
.episode-span,.episode-past-priority,.episode-source-note{font-size:10px;color:var(--muted);line-height:1.8;margin-top:9px}
.episode-safety{display:inline-block;padding:3px 7px;border-radius:5px;color:#b75b50;background:var(--red-bg);font-size:9px;margin-top:9px}
.episode-sources{margin-top:13px;border-top:1px solid var(--line);padding-top:10px;min-width:0}
.episode-sources>summary{font-size:10px;font-weight:600;color:#8d7935;cursor:pointer;line-height:1.8}
.episode-sources>summary:focus-visible{outline:3px solid #d8ad16;outline-offset:3px;border-radius:3px}
.episode-source-list>.source-message{padding:12px;margin-top:11px;margin-bottom:0}
.episode-source-list blockquote{font-size:11px}
.episode-source-list .source-message-footer{font-size:9px;gap:6px;flex-wrap:wrap}
.source-preview-count{font-size:10px;color:var(--muted);line-height:1.8;margin:-3px 0 10px}
.all-source-messages{display:inline-block;border:1px solid var(--line);border-radius:8px;background:var(--yellow-soft);color:#8d7935;padding:8px 11px;font-size:10px;font-weight:600;line-height:1.7;text-align:left;max-width:100%;margin:4px 0 10px}
.all-source-messages:hover{border-color:#d4c58b}
.episode-source-list>.all-source-messages{margin-top:13px;margin-bottom:0}
.panel-header p.message-source-range{font-size:10px;color:#9a8c55;margin-top:7px;line-height:1.8;overflow-wrap:anywhere}
[data-theme="dark"] .all-source-messages{color:var(--brand-text);border-color:var(--warning-border)}
[data-theme="dark"] .panel-header p.message-source-range{color:var(--brand-text)}
[data-theme="dark"] .episode-scope button[aria-pressed="true"]{border-color:var(--warning-border);color:var(--brand-text)}
[data-theme="dark"] .episode-status.fresh{color:var(--green)}
[data-theme="dark"] .episode-safety{color:var(--red)}
[data-theme="dark"] .episode-sources>summary{color:var(--brand-text)}
@media(max-width:1100px){.episodes-feed{grid-template-columns:1fr}}
@media(max-width:600px){.episode-toolbar{padding:12px 14px 0}.episode-scope{gap:5px}.episode-scope button{padding:8px;font-size:9px}.episodes-feed{padding:12px 14px 14px;gap:10px}.episode-card{padding:13px}.episode-card-header .priority-badge{font-size:9px}.episode-card>h3{font-size:12px}.episode-stats,.episode-times,.episode-span,.episode-past-priority,.episode-source-note{font-size:9px}.episode-source-list>.source-message{padding:10px}.episode-source-list blockquote{font-size:11px}.episode-source-list .source-message-footer{font-size:8px}}
.error-banner .text-button{color:#a66b4c;padding:0}
.drawer-backdrop{position:fixed;inset:0;background:#20281c55;backdrop-filter:blur(3px);z-index:1000}
.issue-drawer{position:fixed;inset:0 0 0 auto;width:min(520px,100%);background:#fffefb;z-index:1001;box-shadow:-15px 0 60px #1d30121a;overflow-y:auto;padding:26px 28px}
.drawer-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:23px}
.drawer-top .icon-button{border-color:#e7eadd}
.drawer-title{font-size:23px;font-weight:650;line-height:1.4;letter-spacing:-.6px;margin:14px 0}
.drawer-summary{font-size:13px;line-height:1.9;color:#8b967d;white-space:pre-wrap}
.drawer-tags{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:11px;color:#98a38b;margin:18px 0}
.drawer-tags>svg{width:14px;height:14px;flex-shrink:0}
.drawer-stat-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}
.drawer-stat-row>div{background:#f5f8ef;border:1px solid #eaf0e1;border-radius:11px;padding:14px}
.drawer-stat-row strong{display:block;font-size:23px;font-weight:600;color:#596849}
.drawer-stat-row span{font-size:10px;color:#9ba78d}
.drawer-section-title{font-size:13px;font-weight:600;margin:25px 0 12px}
.source-message{background:#fff;border:1px solid #e6ecdf;border-radius:12px;padding:16px;margin-bottom:11px}
.source-message blockquote{margin:0;font-size:12px;line-height:1.85;color:#657354;white-space:pre-wrap;overflow-wrap:anywhere}
.source-message-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px solid #eff3e8;margin-top:13px;padding-top:11px;font-size:9px;color:#a0ac92}
.source-link{font-size:10px;color:#8c9b51;text-decoration:none;font-weight:600}
.source-link:hover{text-decoration:underline}
.drawer-timestamp{font-size:10px;color:#a1ac95;margin-top:24px}
.drawer-no-sources{font-size:12px;color:#a2ac94;line-height:1.8;padding:17px;background:#f5f8ee;border-radius:10px}
.news-context-panel{padding:20px 23px;margin-top:18px}
.news-context-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}
.news-context-heading h2{font-size:14px;font-weight:600}
.news-context-heading p{font-size:10px;line-height:1.8;color:#9aa38c;margin-top:4px}
.news-context-heading>.mood-tag{flex-shrink:0;font-size:9px}
.news-context-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;border-top:1px solid #edf0e6;padding-top:15px;margin:16px 0 0}
.news-context-facts>div{min-width:0}
.news-context-facts dt{font-size:9px;color:#a0aa93}
.news-context-facts dd{margin:5px 0 0;font-size:12px;color:#6f805b;line-height:1.6;overflow-wrap:anywhere}
.news-context-note{font-size:10px;color:#a0aa93;line-height:1.8;margin-top:13px}
.drawer-news-note{font-size:10px;line-height:1.8;color:#a2ab96;margin:-4px 0 14px}
.drawer-news-card{border:1px solid #e8ebdf;border-radius:12px;background:#fafbf5;padding:15px;margin-bottom:11px;min-width:0}
.drawer-news-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
.drawer-news-header h4{font-size:11px;line-height:1.7;font-weight:600;color:#7a8965;margin:0;min-width:0;overflow-wrap:anywhere}
.drawer-news-header>span{font-size:9px;color:#a6af98;white-space:nowrap;flex-shrink:0}
.drawer-news-text{font-size:12px;line-height:1.85;color:#839173;white-space:pre-wrap;overflow-wrap:anywhere}
.drawer-news-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px;margin-top:12px}
.news-media-label{font-size:9px;color:#9ca98a;background:#f0f4e7;border-radius:5px;padding:3px 6px}
@media(max-width:600px){.news-context-panel{padding:17px}.news-context-heading{flex-wrap:wrap;gap:9px}.news-context-facts{grid-template-columns:1fr 1fr;gap:14px}.drawer-news-card{padding:13px}.drawer-news-header{flex-wrap:wrap;gap:2px 10px}.drawer-news-header>span{font-size:9px}}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;top:-60px;left:15px;z-index:1200;background:var(--yellow);padding:10px 15px;border-radius:8px}
.skip-link:focus{top:15px}
@keyframes spin{to{transform:rotate(360deg)}
}
@media(min-width:1700px){.main-content{padding:34px 42px}
.dashboard-grid{grid-template-columns:minmax(0,1.85fr) minmax(350px,1fr)}
.map-wrap,.feed-panel>.issue-feed{height:610px}
.map-legend>span{font-size:10px}
.issue-title{font-size:13px}
.issue-card{padding:18px 16px}
.sidebar{width:240px;flex-basis:240px}
.main-content{margin-left:240px;width:calc(100% - 240px)}
}
@media(max-width:1220px){.sidebar{width:195px;flex-basis:195px;padding-inline:10px}
.brand{gap:8px}
.brand strong{font-size:15px}
.brand small{font-size:8.5px}
.sidebar-label{font-size:8px}
.nav-item{font-size:11px;padding-inline:10px}
.main-content{margin-left:195px;width:calc(100% - 195px);padding:25px 20px}
.page-header h1{font-size:24px}
.filter-field>span{display:none}
.filter-field select{max-width:155px}
.dashboard-grid{grid-template-columns:minmax(0,1.4fr) minmax(295px,1fr);gap:13px}
.metric-card{padding:14px}
.metric-caption{font-size:10px}
.metric-symbol{width:22px;height:22px;font-size:13px}
.metric-detail{font-size:9px}
.map-legend{gap:6px 11px}
.map-footer>span:last-child{display:none}
.expanded-feed .issue-feed,.cities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.panel-header{padding-inline:14px}
.subtle-button span{display:none}
.map-subtitle{font-size:9px}
}
@media(max-width:1000px){.dashboard-grid{grid-template-columns:1fr}
.map-wrap{height:430px}
.feed-panel>.issue-feed{height:auto;max-height:460px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.feed-panel .issue-card{margin:0}
.feed-panel .empty-state{grid-column:1/-1}
.metrics{gap:10px}
.metric-caption{font-size:10px}
.metric-symbol{display:none}
.methodology-grid{grid-template-columns:1fr 1fr}
.update-status{font-size:9px}
.source-card{padding:20px}
.source-card dl>div{font-size:10px}
}
@media(max-width:760px){.app-shell{display:block}
.sidebar{position:relative;width:100%;height:auto;padding:14px 17px 8px;background:#fffef9;border-right:0;border-bottom:1px solid #e7eadf;flex-direction:row;flex-wrap:wrap;gap:10px}
.brand{padding:0;flex:1}
.brand-mark{width:34px;height:34px;border-radius:10px}
.brand-mark img{width:26px;height:26px}
.brand strong{font-size:16px}
.brand small{font-size:10px}
.sidebar-label,.sidebar-bottom{display:none}
.sidebar nav{display:flex;gap:5px;width:100%;overflow-x:auto;padding-top:6px;scrollbar-width:none}
.nav-item{white-space:nowrap;width:auto;flex:1;justify-content:center;font-size:10px;padding:9px 9px;gap:5px;margin:0}
.nav-icon{font-size:16px;width:17px}
.nav-count{display:none}
.main-content{margin:0;width:100%;padding:21px 16px 18px}
.page-header{align-items:flex-start;margin-bottom:18px;gap:10px}
.eyebrow{font-size:8px;letter-spacing:1.1px}
.page-header h1{font-size:24px;letter-spacing:-.8px;margin-top:5px}
.page-header p{font-size:10px;max-width:245px}
.header-actions{gap:6px}
.update-status{border:0;padding:6px 0;background:transparent!important;font-size:0;gap:0}
.update-status .status-dot{width:7px;height:7px;box-shadow:0 0 0 4px #eaf2e3}
.header-actions>.icon-button{width:30px;height:30px;border-radius:9px}
.header-actions>.refresh-button{width:auto;min-width:95px;padding:0 9px;font-size:10px;gap:5px}
.header-actions>.refresh-button.busy{min-width:107px}
.filter-bar{gap:7px;margin-bottom:14px}
.filter-field{padding-inline:8px;min-height:35px;flex:1;min-width:100px}
.filter-field select{height:33px;font-size:10px;max-width:100%;width:100%;min-width:0}
.period-field{flex-basis:100px}
.period-field select{min-width:0}
.search-field{height:35px;min-width:180px;flex-basis:70%;padding-inline:9px}
.search-field input{font-size:10px}
.metrics{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:15px}
.metric-card{border-radius:13px;padding:12px 14px}
.metric-value{font-size:27px;min-height:36px;margin-top:4px}
.metric-caption{font-size:10px}
.metric-symbol{display:grid}
.metric-detail{font-size:9px}
.panel{border-radius:14px}
.panel-header{min-height:66px;padding:14px}
.panel-header h2{font-size:13px}
.panel-header p{font-size:9px}
.map-wrap{height:400px}
.map-legend{gap:7px 12px;padding:10px 12px}
.map-legend>span{font-size:9px}
.map-footer{font-size:9px;padding:9px 12px}
.feed-panel .panel-header{min-height:64px;padding:14px}
.feed-panel>.issue-feed{grid-template-columns:1fr;max-height:525px;padding:8px}
.issue-card{padding:14px 13px}
.issue-title{font-size:12px}
.issue-location{font-size:10px}
.issue-bottom{font-size:9px}
.overview-note{font-size:9px;margin-top:11px}
.page-footer{font-size:8px;line-height:1.6}
.expanded-feed .issue-feed{grid-template-columns:1fr;padding:10px;gap:9px}
.cities-grid{grid-template-columns:1fr 1fr;gap:10px}
.city-card{padding:14px;border-radius:12px}
.city-card-title{font-size:12px;gap:7px}
.city-stats{gap:4px}
.city-stats strong{font-size:15px}
.city-stats small{font-size:8px}
.city-card-topics{font-size:9px}
.mood-tag{font-size:9px;gap:4px;padding:3px 6px}
.source-grid{grid-template-columns:1fr;gap:12px}
.source-card{padding:20px}
.source-card>h2{font-size:16px}
.source-card dl>div{font-size:11px}
.methodology-card{padding:20px}
.methodology-grid{gap:18px}
.methodology-grid p,.methodology-footnote{font-size:10px}
.issue-drawer{padding:20px}
.drawer-title{font-size:21px}
.error-banner,.analysis-banner{font-size:10px;padding:10px 12px}
.coverage-banner{font-size:10px;padding:10px 12px}
.section-heading h2{font-size:13px}
.section-heading p{font-size:10px}
}
@media(max-width:400px){.main-content{padding-inline:12px}
.sidebar{padding-inline:12px}
.nav-item{font-size:9px;padding-inline:6px}
.nav-icon{display:none}
.page-header h1{font-size:22px}
.metric-card{padding:11px}
.metric-caption{font-size:9px}
.metric-detail{font-size:8px}
.cities-grid{grid-template-columns:1fr}
.methodology-grid{grid-template-columns:1fr}
.map-legend{gap:6px 9px}
.map-legend>span{font-size:8px}
.map-wrap{height:370px}
.page-footer>span:first-child{max-width:130px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Official Yandex asset includes the required logo spacing. */
.yandex-wordmark{bottom:0;left:0;line-height:0;text-shadow:none;font-size:0;background:none}
.yandex-wordmark img{display:block;width:88px;height:48px}
.city-coverage{font-size:9px;color:#98a38b;margin-top:8px}
.city-tags{display:flex;align-items:center;flex-wrap:wrap;gap:5px 7px}
.geo-scope-tag{font-size:9px;line-height:1.6;color:#8e9982}
.geo-note{font-size:10px;line-height:1.75;color:#929d85;margin-top:10px;overflow-wrap:anywhere}
.city-popup p.geo-note{font-size:10px;line-height:1.75;color:#929d85;margin:10px 0}
.city-popup .popup-secondary-button{width:100%;font-size:10px;font-weight:600;color:#82945d;background:#f1f6e9;border:1px solid #e3ebd8;border-radius:7px;padding:7px;margin-top:9px}
.cities-subtabs{display:flex;gap:6px;border-bottom:1px solid #e4e9dc;padding-bottom:10px;margin-bottom:23px}
.cities-subtab{padding:9px 14px;border-radius:9px;background:transparent;font-size:12px;color:#929d84;font-weight:500;white-space:nowrap}
.cities-subtab:hover{background:#eef2e7;color:#6e7d59}
.cities-subtab.active{background:var(--yellow-soft);color:#7b6828;font-weight:600}
.geography-search{max-width:490px;margin-bottom:12px}
.geography-catalog-note{font-size:10px;color:#98a28c;line-height:1.8;max-width:760px;margin-bottom:20px}
.geography-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.geography-catalog>.empty-state{grid-column:1/-1}
.geography-group-card:only-child{grid-column:1/-1}
.geography-group-card{background:#fff;border:1px solid #e6ebde;border-radius:15px;padding:19px;min-width:0}
.geography-group-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.geography-group-header h3{font-size:13px;font-weight:600;line-height:1.6;overflow-wrap:anywhere}
.geography-group-header .count-pill{flex-shrink:0;margin-top:3px;font-size:9px}
.geography-group-primary{font-size:10px;line-height:1.8;color:#95a083;margin-top:6px}
.geography-city-chips{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:15px 0 0}
.geography-city-chips li{font-size:10px;line-height:1.6;padding:4px 8px;border:1px solid #e9eee2;border-radius:6px;background:#f8faf4;color:#8b987a;overflow-wrap:anywhere;max-width:100%}
.geography-city-chips li.primary{background:#f0f5e6;border-color:#e0e9d2;color:#788e5c}
.geography-city-chips li.matched{background:#fff4c6;border-color:#e9d993;color:#907b32}
.geography-group-signals{font-size:10px;color:#8d9b59;font-weight:600;background:transparent;padding:0;margin-top:17px;text-align:left}
.geography-group-signals:hover{text-decoration:underline}
.geography-shortcut{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:18px 22px}
.geography-shortcut h2{font-size:13px;font-weight:600}
.geography-shortcut p{font-size:10px;color:#9ba58f;margin-top:4px;line-height:1.8}
.geography-shortcut>a{font-size:11px;font-weight:600;color:#909b59;text-decoration:none;white-space:nowrap}
.geography-shortcut>a:hover{text-decoration:underline}
.geography-modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1002;width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto;background:#fffefb;border:1px solid #e6ebde;border-radius:20px;box-shadow:0 20px 90px #24351835;padding:23px}
.geography-modal .drawer-top{margin-bottom:14px}
.geography-modal h2{font-size:21px;line-height:1.4;letter-spacing:-.5px}
.geography-primary{font-size:11px;color:#8c9b78;margin-top:9px}
.geography-members-title{font-size:12px;font-weight:600;margin-top:23px;margin-bottom:10px}
.geography-members{list-style:none;margin:0;padding:0;max-height:280px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#dfe7d6 transparent}
.geography-members li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 11px;font-size:12px;color:#7f8e6d;border-bottom:1px solid #edf2e5}
.geography-members li.primary-member{background:#f5f8eb;border-radius:8px;color:#657c48}
.geography-members li small{font-size:9px;color:#9bab86;text-align:right}
.geography-members .geography-empty{font-size:11px;color:#a0ab94}
.geography-signals{width:100%;margin-top:20px;padding:11px 14px;border-radius:10px;background:var(--yellow);font-size:12px;font-weight:600;color:#615324}
.geography-signals:hover{background:#f3d055}
.geography-signals:disabled{background:#eeefe8;color:#a9af9f;cursor:default}
@media(max-width:1000px){.geography-catalog{grid-template-columns:1fr}}
@media(max-width:600px){.geography-shortcut{align-items:flex-start;flex-direction:column;gap:10px;padding:17px}.geography-modal{padding:20px}.geography-modal h2{font-size:19px}.cities-subtabs{gap:4px;margin-bottom:20px}.cities-subtab{padding:9px 10px;font-size:11px}.geography-group-card{padding:15px}.geography-group-header{gap:8px}.geography-group-header h3{font-size:12px}.geography-city-chips li{font-size:10px}.geography-catalog-note{font-size:10px}}
.methodology-description{font-size:11px;line-height:1.8;color:#859276;background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px 20px;margin-top:15px}
.resources-panel{margin-top:18px}
.resources-panel .panel-header p{max-width:720px;line-height:1.7}
.resources-grid{display:grid;grid-template-columns:1.05fr 1fr 1fr;gap:28px;padding:24px}
.resources-grid h3{font-size:12px;font-weight:600;margin-bottom:16px}
.resource-note{font-size:10px;line-height:1.8;color:#9aa58c;margin-top:10px}
.resource-facts{margin:0}
.resource-facts>div{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-top:1px solid #edf0e6;font-size:10px}
.resource-facts dt{color:#9aa58d}
.resource-facts dd{margin:0;text-align:right;font-weight:500;color:#657650}
.quota-window{margin-bottom:17px}
.quota-window-title{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#849175;margin-bottom:8px}
.quota-window-title strong{font-size:10px;font-weight:600;color:#61784a;white-space:nowrap}
.quota-window small{font-size:9px;color:#a4ae97}
.quota-bar{height:5px;border-radius:5px;background:#edf2e7;overflow:hidden;margin-bottom:6px}
.quota-bar>span{display:block;height:100%;background:#a4c47c;border-radius:5px}
.quota-bar>span.low{background:#e4b569}
.quota-note{font-size:10px;color:#99a58b;line-height:1.8;margin:0 24px 22px;border-top:1px solid #edf0e5;padding-top:15px}
@media(max-width:1100px){.resources-grid{grid-template-columns:1fr 1fr;gap:23px}.resources-grid>div:first-child{grid-column:1/-1}}
@media(max-width:600px){.resources-grid{grid-template-columns:1fr;padding:18px;gap:22px}.resources-grid>div:first-child{grid-column:auto}.resources-panel .panel-header p{font-size:9px}.resource-facts>div{font-size:10px}}

/* Theme preference stays in this browser. Map tiles keep their original colors. */
.header-actions>.theme-toggle{display:flex;align-items:center;justify-content:center;gap:6px;width:auto;min-width:89px;padding:0 10px;font-size:11px;font-weight:500;white-space:nowrap}
.theme-toggle .theme-moon{display:none}
.theme-toggle[aria-pressed="true"]{background:var(--yellow-soft);color:var(--brand-text,#8d7935);border-color:var(--border-strong,#d9dfce)}
html[data-theme="dark"]{color-scheme:dark;--page:#18191b;--surface:#242528;--surface-soft:#1f2022;--surface-raised:#2d2e32;--ink:#ededeb;--muted:#a2a69f;--text-secondary:#c8ccc3;--text-quiet:#9ca297;--line:#393b3d;--border-strong:#4a4e45;--yellow-soft:#443d25;--brand-text:#e4ce80;--green:#57c39a;--green-bg:#27392e;--red:#ee9b93;--red-bg:#402b2b;--amber:#e8bf65;--amber-bg:#403722;--gray:#929b95;--gray-bg:#303431;--shadow:0 3px 18px #00000018;--warning-bg:#3a3323;--warning-border:#625333;--warning-text:#e4cc8b;--danger-bg:#3d2827;--danger-border:#67403a;--danger-text:#efb1a5;--info-bg:#27342b;--info-border:#40533f;--info-text:#becfac;--priority-p0-bg:#432b2b;--priority-p0-text:#f0a39c;--priority-p1-bg:#423224;--priority-p1-text:#e4b186;--priority-p2-bg:#403922;--priority-p2-text:#e0ce86;--priority-p3-bg:#2b3827;--priority-p3-text:#bfd2a8;--priority-p4-bg:#2c3341;--priority-p4-text:#b6c5dc}
[data-theme="dark"] .theme-toggle .theme-sun{display:none}
[data-theme="dark"] .theme-toggle .theme-moon{display:block}
[data-theme="dark"] body{background:var(--page)}
[data-theme="dark"] .sidebar,[data-theme="dark"] .panel,[data-theme="dark"] .metric-card,[data-theme="dark"] .city-card,[data-theme="dark"] .filter-field,[data-theme="dark"] .search-field,[data-theme="dark"] .icon-button,[data-theme="dark"] .source-message,[data-theme="dark"] .geography-group-card,[data-theme="dark"] .topic-group-card,[data-theme="dark"] .geography-modal,[data-theme="dark"] .issue-drawer,[data-theme="dark"] .methodology-description{background:var(--surface);border-color:var(--line);color:var(--ink)}
[data-theme="dark"] .brand-mark{color:#242621}
[data-theme="dark"] .nav-item{color:var(--text-secondary)}
[data-theme="dark"] .nav-item:hover,[data-theme="dark"] .icon-button:hover,[data-theme="dark"] .subtle-button:hover,[data-theme="dark"] .city-card:hover,[data-theme="dark"] .cities-subtab:hover,[data-theme="dark"] button.topic-group-card:hover{background:var(--surface-raised);border-color:var(--border-strong);color:var(--ink)}
[data-theme="dark"] .nav-item.active,[data-theme="dark"] .cities-subtab.active{background:var(--yellow-soft);color:var(--brand-text)}
[data-theme="dark"] .theme-toggle[aria-pressed="true"]{background:var(--yellow-soft);color:var(--brand-text);border-color:var(--border-strong)}
[data-theme="dark"] .drawer-backdrop{background:#0009}
[data-theme="dark"] .nav-count,[data-theme="dark"] .nav-item:not(.active) .nav-count,[data-theme="dark"] .count-pill{background:var(--surface-raised);color:var(--text-secondary)}
[data-theme="dark"] .nav-item.active .nav-count{background:#5b4e28;color:#efd88e}
[data-theme="dark"] .brand small,[data-theme="dark"] .sidebar-label,[data-theme="dark"] .sidebar-note,[data-theme="dark"] .sidebar-bottom p,[data-theme="dark"] .version-badge,[data-theme="dark"] .eyebrow,[data-theme="dark"] .page-header p,[data-theme="dark"] .panel-header p,[data-theme="dark"] .section-heading p{color:var(--text-quiet)}
[data-theme="dark"] .version-badge,[data-theme="dark"] .panel-header,[data-theme="dark"] .page-footer,[data-theme="dark"] .metric-action,[data-theme="dark"] .cities-subtabs,[data-theme="dark"] .city-stats,[data-theme="dark"] .topic-group-stats{border-color:var(--line)}
[data-theme="dark"] .filter-field>span,[data-theme="dark"] .search-field svg,[data-theme="dark"] .sort-control select{color:var(--text-quiet)}
[data-theme="dark"] .filter-field select,[data-theme="dark"] .search-field input{color:var(--ink)}
[data-theme="dark"] select option{background:var(--surface);color:var(--ink)}
[data-theme="dark"] .search-field input::placeholder{color:var(--text-quiet)}
[data-theme="dark"] .text-button,[data-theme="dark"] .source-link,[data-theme="dark"] .geography-group-signals,[data-theme="dark"] .geography-shortcut>a,[data-theme="dark"] .topic-group-action{color:var(--brand-text)}
[data-theme="dark"] .metric-card:hover{background:var(--surface-raised);border-color:var(--border-strong)}
[data-theme="dark"] .metric-caption,[data-theme="dark"] .metric-action{color:var(--text-secondary)}
[data-theme="dark"] .metric-detail,[data-theme="dark"] .metric-action>span{color:var(--text-quiet)}
[data-theme="dark"] .metric-symbol.neutral{background:var(--green-bg);color:var(--green)}
[data-theme="dark"] .metric-symbol.warm{background:var(--red-bg);color:var(--red)}
[data-theme="dark"] .metric-symbol.yellow{background:var(--amber-bg);color:var(--amber)}
[data-theme="dark"] .metric-symbol.violet{background:var(--priority-p4-bg);color:var(--priority-p4-text)}
[data-theme="dark"] .subtle-button,[data-theme="dark"] .issue-card,[data-theme="dark"] .drawer-stat-row>div,[data-theme="dark"] .drawer-no-sources,[data-theme="dark"] .drawer-news-card{background:var(--surface-soft);border-color:var(--line);color:var(--text-secondary)}
[data-theme="dark"] .issue-card:hover{background:var(--surface-raised);border-color:var(--border-strong)}
[data-theme="dark"] .issue-title,[data-theme="dark"] .topic-group-card h3,[data-theme="dark"] .drawer-stat-row strong,[data-theme="dark"] .city-stats strong,[data-theme="dark"] .topic-group-stats strong{color:var(--text-secondary)}
[data-theme="dark"] .issue-time,[data-theme="dark"] .issue-location,[data-theme="dark"] .issue-bottom,[data-theme="dark"] .feed-footer,[data-theme="dark"] .overview-note,[data-theme="dark"] .city-stats small,[data-theme="dark"] .city-card-topics,[data-theme="dark"] .city-card.gray .city-card-topics,[data-theme="dark"] .city-coverage,[data-theme="dark"] .geo-scope-tag,[data-theme="dark"] .geo-note,[data-theme="dark"] .city-popup p.geo-note,[data-theme="dark"] .drawer-tags,[data-theme="dark"] .drawer-timestamp,[data-theme="dark"] .drawer-stat-row span,[data-theme="dark"] .topic-group-stats span,[data-theme="dark"] .topic-group-reason,[data-theme="dark"] .topic-group-toolbar>p,[data-theme="dark"] .message-date,[data-theme="dark"] .message-priority-reason{color:var(--text-quiet)}
[data-theme="dark"] .topic-pill,[data-theme="dark"] .mood-tag,[data-theme="dark"] .news-media-label{background:var(--green-bg);color:var(--info-text)}
[data-theme="dark"] .feed-footer,[data-theme="dark"] .map-footer,[data-theme="dark"] .map-legend{background:var(--surface);border-color:var(--line);color:var(--text-quiet)}
[data-theme="dark"] .map-legend>span,[data-theme="dark"] .map-footer>span:first-child{color:var(--text-secondary)}
[data-theme="dark"] .map-message{background:#242528f2;border-color:var(--border-strong);color:var(--text-secondary)}
[data-theme="dark"] .leaflet-control-zoom{border-color:var(--border-strong)!important}
[data-theme="dark"] .leaflet-control-zoom a{background:var(--surface)!important;color:var(--text-secondary)!important;border-color:var(--line)!important}
[data-theme="dark"] .leaflet-control-attribution{background:#242528f2;color:var(--text-quiet)}
[data-theme="dark"] .leaflet-control-attribution a{color:var(--text-secondary)}
[data-theme="dark"] .leaflet-popup-content-wrapper,[data-theme="dark"] .leaflet-popup-tip{background:var(--surface);color:var(--ink)}
[data-theme="dark"] .leaflet-popup-close-button{color:var(--text-quiet)!important}
[data-theme="dark"] .city-label-tooltip{background:var(--surface-raised)!important;border-color:var(--border-strong)!important;color:var(--ink)!important;box-shadow:var(--shadow)!important}
[data-theme="dark"] .city-popup .popup-button,[data-theme="dark"] .skip-link{color:#28291f}
[data-theme="dark"] .city-popup .popup-secondary-button{background:var(--green-bg);border-color:var(--info-border);color:var(--info-text)}
[data-theme="dark"] .update-status{background:var(--surface);border-color:var(--line);color:var(--text-secondary)}
[data-theme="dark"] .update-status.fresh{background:var(--green-bg);border-color:var(--info-border);color:var(--green)}
[data-theme="dark"] .update-status.stale,[data-theme="dark"] .analysis-banner{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}
[data-theme="dark"] .update-status.error,[data-theme="dark"] .error-banner{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-text)}
[data-theme="dark"] .error-banner .text-button{color:var(--danger-text)}
[data-theme="dark"] .coverage-banner{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}
[data-theme="dark"] .control-banner,[data-theme="dark"] .update-status.control{background:var(--yellow-soft);border-color:var(--warning-border);color:var(--brand-text)}
[data-theme="dark"] .topic-group-cohort{color:var(--priority-p1-text)}
[data-theme="dark"] .priority-badge{background:var(--surface-raised);color:var(--text-quiet)}
[data-theme="dark"] .priority-badge.p0{background:var(--priority-p0-bg);color:var(--priority-p0-text)}
[data-theme="dark"] .priority-badge.p1{background:var(--priority-p1-bg);color:var(--priority-p1-text)}
[data-theme="dark"] .priority-badge.p2{background:var(--priority-p2-bg);color:var(--priority-p2-text)}
[data-theme="dark"] .priority-badge.p3{background:var(--priority-p3-bg);color:var(--priority-p3-text)}
[data-theme="dark"] .priority-badge.p4{background:var(--priority-p4-bg);color:var(--priority-p4-text)}
[data-theme="dark"] .message-card,[data-theme="dark"] .source-message-footer,[data-theme="dark"] .messages-pagination{border-color:var(--line)}
[data-theme="dark"] .message-text,[data-theme="dark"] .source-message blockquote,[data-theme="dark"] .drawer-summary,[data-theme="dark"] .drawer-news-text{color:var(--text-secondary)}
[data-theme="dark"] .message-sentiment{background:var(--surface-raised);color:var(--text-quiet)}
[data-theme="dark"] .message-sentiment.negative{background:var(--red-bg);color:var(--red)}
[data-theme="dark"] .message-sentiment.positive{background:var(--green-bg);color:var(--green)}
[data-theme="dark"] .message-sentiment.pending{background:var(--amber-bg);color:var(--amber)}
[data-theme="dark"] .messages-pagination{color:var(--text-quiet)}
[data-theme="dark"] .messages-pagination button{background:var(--surface-raised);border-color:var(--border-strong);color:var(--text-secondary)}
[data-theme="dark"] .messages-pagination button:disabled{background:var(--surface-soft);border-color:var(--line);color:#757d6e}
[data-theme="dark"] .topic-drilldown{background:var(--warning-bg);border-color:var(--warning-border)}
[data-theme="dark"] .topic-drilldown strong{color:var(--warning-text)}
[data-theme="dark"] .topic-drilldown span{color:var(--text-quiet)}
[data-theme="dark"] .topic-urgent-summary{background:var(--priority-p1-bg);border-color:#694c34}
[data-theme="dark"] .topic-urgent-summary>p{color:var(--priority-p1-text)}
[data-theme="dark"] .topic-urgent-summary button{background:#4b3828;border-color:#785a3d;color:var(--priority-p1-text)}
[data-theme="dark"] .topic-urgent-summary button:hover{background:#5a432e}
[data-theme="dark"] .source-card>p,[data-theme="dark"] .source-card dt,[data-theme="dark"] .methodology-grid p,[data-theme="dark"] .methodology-footnote,[data-theme="dark"] .methodology-description,[data-theme="dark"] .resource-note,[data-theme="dark"] .resource-facts dt,[data-theme="dark"] .quota-window-title,[data-theme="dark"] .quota-window small,[data-theme="dark"] .quota-note{color:var(--text-quiet)}
[data-theme="dark"] .source-card dd,[data-theme="dark"] .resource-facts dd,[data-theme="dark"] .quota-window-title strong{color:var(--text-secondary)}
[data-theme="dark"] .source-card dl>div,[data-theme="dark"] .methodology-footnote,[data-theme="dark"] .resource-facts>div,[data-theme="dark"] .quota-note{border-color:var(--line)}
[data-theme="dark"] .source-icon{background:var(--green-bg);color:var(--green)}
[data-theme="dark"] .source-icon.yellow{background:var(--yellow-soft);color:var(--brand-text)}
[data-theme="dark"] .quota-bar{background:var(--surface-soft)}
[data-theme="dark"] .quota-bar>span{background:#9fba7b}
[data-theme="dark"] .quota-bar>span.low{background:#d4b679}
[data-theme="dark"] .geography-catalog-note,[data-theme="dark"] .geography-group-primary,[data-theme="dark"] .geography-primary,[data-theme="dark"] .geography-members li small,[data-theme="dark"] .geography-members .geography-empty,[data-theme="dark"] .geography-shortcut p{color:var(--text-quiet)}
[data-theme="dark"] .geography-city-chips li{background:var(--surface-soft);border-color:var(--line);color:var(--text-secondary)}
[data-theme="dark"] .geography-city-chips li.primary,[data-theme="dark"] .geography-members li.primary-member{background:var(--green-bg);border-color:var(--info-border);color:var(--info-text)}
[data-theme="dark"] .geography-city-chips li.matched{background:var(--yellow-soft);border-color:#776739;color:var(--brand-text)}
[data-theme="dark"] .geography-members li{border-color:var(--line);color:var(--text-secondary)}
[data-theme="dark"] .geography-signals{color:#34301e}
[data-theme="dark"] .geography-signals:disabled{background:var(--surface-soft);color:var(--text-quiet)}
[data-theme="dark"] .news-context-heading p,[data-theme="dark"] .news-context-facts dt,[data-theme="dark"] .news-context-note,[data-theme="dark"] .drawer-news-note,[data-theme="dark"] .drawer-news-header>span,[data-theme="dark"] .source-message-footer{color:var(--text-quiet)}
[data-theme="dark"] .news-context-facts,[data-theme="dark"] .drawer-top .icon-button{border-color:var(--line)}
[data-theme="dark"] .news-context-facts dd,[data-theme="dark"] .drawer-news-header h4{color:var(--text-secondary)}
[data-theme="dark"] .empty-state,[data-theme="dark"] .empty-state p,[data-theme="dark"] .page-footer{color:var(--text-quiet)}
[data-theme="dark"] .empty-state strong{color:var(--text-secondary)}
[data-theme="dark"] .empty-illustration{background:var(--surface-raised);color:var(--text-secondary)}
[data-theme="dark"] .loading-ring{border-color:var(--line);border-top-color:var(--brand-text)}
[data-theme="dark"] .issue-feed,[data-theme="dark"] .geography-members{scrollbar-color:var(--border-strong) transparent}
@media(max-width:760px){.header-actions{max-width:136px;flex-wrap:wrap;justify-content:flex-end;gap:7px}.header-actions>.theme-toggle{height:30px;min-width:86px;font-size:10px;padding:0 9px}.header-actions>.theme-toggle svg{width:16px;height:16px}}
@media(max-width:1100px) and (min-width:761px){.header-actions{flex-wrap:wrap;justify-content:flex-end;max-width:290px}.page-header>div:first-child{min-width:0}}
@media(max-width:760px){.header-actions>.control-toggle{width:auto;max-width:136px;font-size:9px;padding:0 8px}.control-banner{align-items:flex-start;flex-direction:column;gap:5px;font-size:10px;padding:10px 12px}.control-banner .text-button{text-align:left;padding:3px 0;font-size:10px}.control-banner p{font-size:9px}}
@media(max-width:600px){.page-header{flex-direction:column;align-items:stretch;gap:13px}.page-header>div:first-child{width:100%;min-width:0}.page-header p{max-width:none}.header-actions{width:100%;max-width:none;min-width:0;justify-content:flex-start;flex-wrap:wrap;gap:8px}.header-actions>.update-status{max-width:100%;font-size:10px;line-height:1.5;gap:7px;padding:6px 9px;border:1px solid var(--line);white-space:normal}.header-actions .status-dot{box-shadow:none}.header-actions>.control-toggle{max-width:100%;font-size:10px;padding-inline:9px}}

/* Full text stays in the DOM; only its collapsed viewport is limited. */
.expandable-text{min-width:0}
.expandable-text-content{margin:0;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere}
.expandable-text:not(.is-expanded)>.expandable-text-content{max-height:9.25em;overflow:hidden}
.expandable-text.is-expanded>.expandable-text-content{max-height:none;overflow:visible}
.expandable-text-toggle{display:inline-block;padding:0;margin-top:8px;border:0;background:transparent;font-size:10px;line-height:1.8;font-weight:600;color:#929e5d}
.expandable-text-toggle:hover{text-decoration:underline}
[data-theme="dark"] .expandable-text-toggle{color:var(--brand-text)}

/* Geography, period topics and current signals share a row; global detail follows it. */
.critical-asof{font-size:9px;line-height:1.8;color:var(--muted);padding:10px 14px 0}
.critical-feed{padding:10px;scrollbar-width:thin}
.critical-section-title{font-size:10px;font-weight:600;line-height:1.8;color:var(--text-secondary);margin:6px 3px 9px}
.critical-section-empty{font-size:10px;line-height:1.8;color:var(--muted);padding:2px 3px 12px}
.critical-topic-card{padding:13px;border-left:3px solid #d3a66c}
.critical-topic-card.earlier{border-left-color:#b5a786}
.critical-topic-card .issue-meta{align-items:flex-start;gap:7px;flex-wrap:wrap}
.critical-topic-card .issue-title{margin-top:8px}
.critical-wave-age{font-size:9px;line-height:1.8;color:var(--muted)}
.critical-topic-card .focus-burst-timing{margin:8px 0;padding:7px 8px}
.critical-topic-card .focus-burst-period{font-size:10px}
.critical-topic-card .focus-last-confirmed{font-size:9px}
.feed-panel>.feed-footer{display:flex;flex-direction:column;align-items:center;gap:6px}
.dashboard-grid{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr) minmax(0,1fr);grid-template-areas:"map topics focus" "global global global";align-items:start}
.dashboard-grid>.map-panel{grid-area:map}
.dashboard-grid>.feed-panel{grid-area:topics}
.dashboard-grid>.focus-panel{grid-area:focus}
.dashboard-grid>.current-overview{grid-area:global;margin-bottom:0}
.dashboard-grid>.map-panel,.dashboard-grid>.focus-panel,.dashboard-grid>.feed-panel{min-width:0}
.dashboard-grid>.feed-panel>.issue-feed{display:block}
.dashboard-grid>.feed-panel .issue-card{margin-bottom:8px}
.focus-panel{display:flex;flex-direction:column;min-width:0}
.focus-panel .panel-header{padding:17px 15px;gap:9px}
.focus-panel .panel-header h2{font-size:15px}
.focus-panel .panel-header p{font-size:10px}
.focus-asof{font-size:9px;color:var(--muted);line-height:1.8;padding:10px 14px 0}
.focus-list{height:520px;min-height:250px;overflow:auto;scrollbar-width:thin;scrollbar-color:#dfe4d7 transparent;display:flex;flex-direction:column;gap:9px;padding:10px}
.focus-card{display:block;width:100%;min-width:0;flex-shrink:0;padding:13px;border:1px solid var(--line);border-left:3px solid #d3b77a;border-radius:10px;background:var(--surface);text-align:left;color:var(--ink)}
.focus-card.rf{border-color:#e7d7a9;border-left-color:#d2a044;background:#fffcf2}
.focus-card:hover{border-color:#cdb579;background:var(--yellow-soft)}
.focus-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:6px;flex-wrap:wrap}
.focus-card-header .priority-badge{font-size:8px}
.focus-phase-badge,.current-attention-badge{display:inline-block;border-radius:5px;padding:3px 6px;font-size:9px;font-weight:500;line-height:1.7;background:var(--yellow-soft);color:#8a7139;max-width:100%;overflow-wrap:anywhere}
.focus-card.watch{border-left-color:#b5a786}
.focus-scope-badge{display:inline-block;border-radius:5px;padding:3px 6px;font-size:9px;font-weight:600;line-height:1.6}
.focus-scope-badge.rf{background:#ffdc60;color:#564318;letter-spacing:.4px;min-width:29px;text-align:center}
.focus-scope-badge.local{background:var(--gray-bg);color:var(--muted);font-weight:500}
.focus-card h3{font-size:12px;font-weight:600;line-height:1.7;margin:8px 0 6px;overflow-wrap:anywhere}
.focus-card-stats{font-size:9px;line-height:1.8;color:var(--muted)}
.focus-burst-timing{margin:9px 0;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);overflow-wrap:anywhere}
.focus-burst-period{font-size:11px;font-weight:600;line-height:1.8;color:var(--ink);margin:0}
.focus-last-confirmed{font-size:10px;line-height:1.8;color:var(--text-secondary);margin:4px 0 0}
.focus-confirmation{font-size:9px;line-height:1.8;color:#9a8453;margin-top:5px;overflow-wrap:anywhere}
.focus-card-window{font-size:9px;line-height:1.8;color:var(--muted);margin-top:6px}
.focus-activity{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.focus-activity>div{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;min-width:0}
.focus-activity strong{font-size:14px;font-weight:600;line-height:1.5}
.focus-activity span{font-size:8px;color:var(--muted)}
.focus-card-time{font-size:8px;color:var(--muted);line-height:1.8;margin-top:8px}
.focus-card-action{display:block;font-size:9px;font-weight:600;color:#9a8453;line-height:1.8;margin-top:5px}
.focus-health{font-size:9px;color:var(--muted);line-height:1.8;border-top:1px solid var(--line);padding:10px 13px;margin-top:auto}
.focus-section-title{flex-shrink:0;font-size:10px;font-weight:600;line-height:1.8;color:var(--text-secondary);margin:4px 3px 0}
.focus-footer{padding:0 13px 12px}
.archive-button{background:var(--gray-bg);color:var(--muted);border:1px solid var(--line);border-radius:7px;padding:8px 12px;font-size:10px;font-weight:500;line-height:1.7}
.archive-button:hover{background:var(--surface-raised);color:var(--ink)}
.archive-back{display:block;text-align:left;margin:12px 0 18px}
.archive-controls{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.archive-controls .filter-field{min-width:145px;flex:1}
.archive-list{display:flex;flex-direction:column;gap:12px;margin:15px 0}
.archive-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:var(--muted);margin-top:20px}
.archive-pagination button:disabled{opacity:.45;cursor:default}
.archive-error{font-size:11px;line-height:1.8;color:var(--red);margin:12px 0}
.problem-mode-toolbar{display:flex;gap:7px;flex-wrap:wrap;padding:13px 20px 0}
.problem-mode-toolbar button{border:1px solid var(--line);border-radius:7px;background:var(--surface-soft);color:var(--muted);padding:8px 11px;font-size:11px;line-height:1.7}
.problem-mode-toolbar button[aria-pressed="true"]{background:var(--yellow-soft);color:var(--ink);border-color:var(--border-strong)}
.problem-mode-toolbar button:disabled{opacity:.45;cursor:default}
.feed-panel>.panel-header,.expanded-feed>.panel-header{flex-wrap:wrap}
.focus-empty{font-size:11px;color:var(--muted);line-height:1.9;padding:21px 10px}
.focus-detail-explanation,.focus-detail-proof{font-size:11px;color:var(--muted);line-height:1.9;margin:11px 0;overflow-wrap:anywhere}
.focus-detail-proof{padding:10px 12px;background:var(--yellow-soft);border-radius:8px;color:#9a8453}
.focus-detail-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}
.focus-detail-stats>div{padding:12px;background:var(--gray-bg);border-radius:9px}
.focus-detail-stats strong{display:block;font-size:23px;font-weight:600;line-height:1.4}
.focus-detail-stats span{font-size:10px;color:var(--muted)}
[data-theme="dark"] .focus-card.rf{background:#312e24;border-color:#5d5234;border-left-color:#d2a044}
[data-theme="dark"] .focus-card:hover{background:var(--yellow-soft);border-color:var(--warning-border)}
[data-theme="dark"] .focus-confirmation,[data-theme="dark"] .focus-card-action,[data-theme="dark"] .focus-detail-proof{color:var(--brand-text)}
[data-theme="dark"] .focus-phase-badge,[data-theme="dark"] .current-attention-badge{color:var(--brand-text)}
[data-theme="dark"] .focus-list{scrollbar-color:var(--border-strong) transparent}
.focus-card.archived,[data-theme="dark"] .focus-card.archived{background:var(--surface-soft);border-color:var(--line);border-left-color:var(--gray)}
.focus-card.archived:hover,[data-theme="dark"] .focus-card.archived:hover{background:var(--surface-raised);border-color:var(--border-strong);border-left-color:var(--gray)}
.focus-scope-badge.archived,.focus-phase-badge.archived,[data-theme="dark"] .focus-scope-badge.archived,[data-theme="dark"] .focus-phase-badge.archived{background:var(--gray-bg);color:var(--muted);font-weight:500;letter-spacing:normal}
.focus-card.archived .focus-confirmation,.focus-card.archived .focus-card-action{color:var(--muted)}
@media(min-width:1001px) and (max-width:1499px){.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"map map" "global global" "topics focus"}}
@media(max-width:1000px){.dashboard-grid{grid-template-columns:1fr;grid-template-areas:"map" "global" "topics" "focus"}.focus-list{height:auto;max-height:600px}.focus-panel .panel-header{min-height:68px}.focus-card{padding:14px}.focus-card h3{font-size:13px}.focus-card-stats,.focus-confirmation{font-size:10px}.focus-card-header .priority-badge{font-size:9px}.focus-activity strong{font-size:16px}.focus-activity span{font-size:9px}}
@media(max-width:600px){.focus-panel .panel-header{padding:14px;min-height:64px}.focus-panel .panel-header h2{font-size:14px}.focus-panel .panel-header p{font-size:9px}.focus-list{padding:8px;gap:8px;max-height:580px}.focus-list.is-empty{min-height:90px}.focus-card{padding:12px}.focus-card h3{font-size:12px}.focus-card-stats,.focus-confirmation{font-size:9px}.focus-asof,.focus-health{font-size:8px}.focus-detail-explanation,.focus-detail-proof{font-size:10px}.focus-detail-stats{gap:8px}.focus-detail-stats>div{padding:11px}.focus-detail-stats strong{font-size:22px}.focus-detail-stats span{font-size:9px}}

.territory-picker{position:relative;min-width:250px;max-width:340px;flex:1 1 280px}
.territory-picker>input{min-width:0;width:100%;height:37px;flex:1;border:0;background:transparent;font-size:11px;color:var(--ink);outline:none}
.territory-picker:focus-within{border-color:var(--border-strong,#cdd1c8);box-shadow:0 0 0 2px var(--yellow-soft)}
.territory-picker>input::placeholder{color:var(--muted);opacity:1}
.city-clear{flex-shrink:0;align-self:center;display:grid;place-items:center;width:23px;height:25px;padding:0;background:transparent;color:var(--muted);border-radius:5px;font-size:18px;line-height:1}
.city-clear:hover{background:var(--gray-bg);color:var(--ink)}
.city-options{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:900;max-height:285px;overflow-y:auto;list-style:none;margin:0;padding:5px;border:1px solid var(--line);border-radius:9px;background:var(--surface);box-shadow:0 8px 25px #22222220;scrollbar-width:thin}
.city-option{display:flex;flex-direction:column;gap:3px;padding:9px 10px;border-radius:6px;font-size:11px;line-height:1.6;color:var(--ink);cursor:pointer;overflow-wrap:anywhere}
.city-option small{font-size:9px;line-height:1.6;color:var(--muted)}
.city-option:hover{background:var(--surface-raised,#f4f5f2)}
.city-option.active{background:var(--yellow-soft)}
.city-option[aria-selected="true"]>span{font-weight:600}
.city-option-empty{padding:12px 10px;font-size:11px;line-height:1.7;color:var(--muted)}
.mood-field{min-width:245px}
.mood-field>span{display:block;max-width:105px;font-size:9px;line-height:1.4;flex-shrink:0}
.mood-field select{min-width:0;max-width:195px;flex:1}
.technical-state-tag.green{background:var(--green-bg);color:var(--info-text,#35775c)}
.technical-state-tag.yellow{background:var(--amber-bg);color:var(--warning-text,#88651d)}
.technical-state-tag.red{background:var(--red-bg);color:var(--danger-text,#a24742)}
.technical-state-tag.gray{background:var(--gray-bg);color:var(--muted)}
.territory-status-details{font-size:10px;line-height:1.8;color:var(--text-secondary,#65695f);margin:11px 0;overflow-wrap:anywhere}
.territory-status-details p{margin:4px 0}
.territory-status-details.compact{font-size:9px;margin:10px 0}
.territory-status-reason{font-weight:500}
.territory-status-quality{color:var(--warning-text,#88651d);font-weight:500}
.territory-status-asof{font-size:9px;color:var(--muted)}
.city-period-caption{font-size:10px;font-weight:500;color:var(--muted);border-top:1px solid var(--line);padding-top:9px;margin-top:11px}
.city-popup .city-period-caption{font-size:11px;margin-bottom:8px}
@media(max-width:600px){.territory-picker{flex-basis:100%;min-width:0;max-width:none;width:100%}.territory-picker>input{height:33px;font-size:10px}.mood-field{min-width:0;flex-basis:100%}.city-options{max-height:255px}.city-option{font-size:11px}}

.signal-explanation{margin:20px 0;padding:17px 18px;background:var(--surface-soft,#f5f6f3);border:1px solid var(--line);border-radius:13px;color:var(--ink)}
.signal-explanation h3{font-size:13px;margin:0 0 8px}
.signal-explanation p{font-size:13px;line-height:1.75}
.signal-explanation .signal-explanation-note{font-size:11px;color:var(--muted);margin-top:9px}
.source-message{padding:18px 19px;border-color:var(--line);background:var(--surface);box-shadow:0 2px 8px #00000004}
.source-message .source-message-heading{font-size:11px;font-weight:600;color:var(--muted);margin-bottom:11px}
.source-message blockquote,[data-theme="dark"] .source-message blockquote{font-size:14px;line-height:1.8;color:var(--ink);font-weight:400}
.source-message .source-message-footer,[data-theme="dark"] .source-message .source-message-footer{font-size:11px;color:var(--muted);padding-top:12px;margin-top:14px;border-color:var(--line)}
.source-message .source-link{font-size:11px;font-weight:600;color:var(--ink)}
.source-nearby{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.source-nearby summary,.drawer-news-group>summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--ink);padding:5px 0}
.source-nearby summary:focus-visible,.drawer-news-group>summary:focus-visible{outline:2px solid var(--amber);outline-offset:4px}
.source-nearby-body{margin-top:10px}
.context-status{font-size:11px;line-height:1.7;color:var(--muted);margin:8px 0 14px}
.context-message{padding:11px 12px;margin:8px 0;border-left:2px solid var(--line);background:var(--surface-soft,#f5f6f3);border-radius:0 8px 8px 0}
.context-message.target{border-left:3px solid var(--amber)}
.context-message-meta{font-size:10px;color:var(--muted);margin-bottom:7px}
.context-message-text{font-size:13px;line-height:1.75;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere}
.drawer-news-group{border:1px solid var(--line);border-radius:12px;padding:12px 15px;margin-top:25px}
.drawer-news-group .drawer-news-note{margin:12px 0 16px;font-size:11px;color:var(--muted)}
.drawer-news-group .drawer-news-card:last-child{margin-bottom:0}

.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(0,1.15fr) minmax(0,1.1fr);grid-template-areas:"map topics focus"}
.recent-asof{font-size:11px;color:var(--muted);padding:10px 15px 0;line-height:1.65}
.recent-signal{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:14px;margin-bottom:10px;color:var(--ink)}
.recent-signal-meta{display:flex;flex-wrap:wrap;gap:4px 10px;justify-content:space-between;font-size:11px;color:var(--muted);line-height:1.7}
.recent-signal h3{font-size:14px;line-height:1.6;margin:8px 0;font-weight:600}
.recent-signal-text{font-size:14px;line-height:1.8;margin:7px 0 12px;padding-left:10px;border-left:2px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere}
.recent-signal-note{font-size:11px;color:var(--muted);line-height:1.7;margin:10px 0}
.recent-signal-actions{display:flex;gap:10px 14px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--line);padding-top:10px;font-size:11px}
.signal-wave-link{border:0;border-radius:5px;background:var(--yellow-soft);color:var(--ink);padding:5px 7px;font:inherit}
.focus-local-contribution{font-size:11px;line-height:1.7;padding:8px;border-radius:6px;background:var(--surface);margin:10px 0;color:var(--ink)}
.news-match-reason{font-size:12px;line-height:1.75;color:var(--ink);padding:8px 0;border-bottom:1px solid var(--line)}
.topic-live-overview{margin-top:20px;border-top:1px solid var(--line);padding-top:16px;color:var(--ink)}
.topic-live-overview>summary{font-size:14px;font-weight:600;padding:8px 0}
.topic-live-overview>.current-overview{margin:10px 0}
.wave-ring{display:inline-block;width:12px;height:12px;border:3px solid #e4a13b;border-radius:50%;background:transparent;box-sizing:border-box}
.map-wave-note{margin:0;padding:10px 15px;border-bottom:1px solid var(--line);font-size:11px;line-height:1.7;color:var(--ink);background:var(--yellow-soft)}
.city-wave-note{padding:9px;border:1px solid #e4a13b;border-radius:7px;background:var(--yellow-soft);color:var(--ink)}
@media(min-width:1001px){.dashboard-grid>.feed-panel>.issue-feed{height:900px;max-height:900px}.dashboard-grid>.focus-panel>.focus-list{height:900px;max-height:900px}.dashboard-grid>.map-panel>.map-wrap{height:900px}}
.author-tag{display:inline-block;padding:3px 7px;border-radius:6px;background:var(--surface-soft,#f3f5f1);border:1px solid var(--line);font-size:11px;line-height:1.5;color:var(--ink);overflow-wrap:anywhere;text-decoration:none}
button.author-tag:hover{border-color:var(--border-strong,#cdd1c8);background:var(--yellow-soft)}
.author-copy-fallback{width:145px;max-width:100%;padding:3px 7px;border:1px solid var(--amber);border-radius:6px;background:var(--surface);font-size:11px;color:var(--ink)}
.map-appearance{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:9px 18px;border-bottom:1px solid var(--line);font-size:11px;color:var(--muted);background:var(--surface)}
.map-appearance label{cursor:pointer}
.map-appearance input{width:130px;max-width:45%;height:20px;margin:0;cursor:pointer;accent-color:var(--amber)}
.map-appearance output{min-width:30px;text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
.map-panel>.panel-header{flex-wrap:wrap;gap:12px}
.map-panel>.panel-header>div:first-child{flex:1 1 210px;min-width:0}
.map-header-tools{display:flex;align-items:center;gap:8px;flex:1 1 290px;max-width:100%;justify-content:flex-end}
.map-header-tools>#fit-map-button{flex-shrink:0;white-space:nowrap}
.map-territory-picker{position:relative;display:flex;align-items:center;gap:4px;flex:1 1 180px;min-width:120px;max-width:260px;border:1px solid var(--line);border-radius:8px;padding:0 9px;background:var(--surface)}
.map-territory-picker:focus-within{border-color:var(--border-strong,#cdd1c8);box-shadow:0 0 0 2px var(--yellow-soft)}
.map-territory-picker>input{width:100%;min-width:0;height:33px;border:0;background:transparent;color:var(--ink);font-size:11px;outline:none}
.map-territory-picker>input::placeholder{color:var(--muted);opacity:1}
.map-territory-picker>.city-options{min-width:240px;max-width:min(360px,calc(100vw - 50px));right:auto;left:0;width:max-content}
#city-map .leaflet-tile-pane{filter:brightness(var(--map-brightness,1))}
.map-wrap:before{filter:brightness(var(--map-brightness,1))}
.focus-entry{min-width:0;flex-shrink:0}
.focus-entry-actions{display:flex;justify-content:flex-end;padding:6px 2px 2px}
.focus-collect-os{font-size:11px;padding:6px 10px}
.os-draft-panel{margin:18px 0;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft,#f5f6f3)}
.os-draft-panel .drawer-section-title{margin:0 0 8px}
.os-draft-help,.os-draft-status,.os-draft-warning{font-size:11px;line-height:1.8;margin:9px 0;color:var(--muted);overflow-wrap:anywhere}
.os-draft-status{color:var(--ink)}
.os-draft-warning{color:var(--warning-text,#88651d)}
.os-draft-greeting,.os-draft-tag-title{margin:18px 0 13px;font-size:14px}
.os-draft-description,.os-draft-tags{display:block;resize:vertical;width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:13px;line-height:1.8;min-height:90px}
.os-draft-description{min-height:220px}
.os-draft-tags{margin-bottom:14px}
.os-draft-image{margin:14px 0;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}
.os-draft-image img{display:block;max-width:100%;max-height:330px;object-fit:contain;margin:auto;border-radius:5px}
.os-draft-image figcaption{margin:9px 0;font-size:11px;line-height:1.7;color:var(--muted)}
.os-draft-image a{display:inline-block;margin-right:14px;font-size:11px}
.image-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:9px;font-size:11px}
.image-actions button{padding:7px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);cursor:pointer}
.image-actions a{color:var(--amber);font-size:11px}
.image-actions [role=status]{width:100%;color:var(--muted);font-size:11px;line-height:1.6}
.image-actions [role=status]:empty{display:none}
.os-bundle{display:inline-block;text-decoration:none;margin-top:14px;font-size:12px}
.message-export-controls{margin:16px 0;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft,#f5f6f3)}
.copy-message-status{font-size:11px;line-height:1.7;color:var(--muted);margin:8px 0 0}
.copy-fallback{width:100%;margin-top:10px;padding:10px;font-size:12px;line-height:1.6;resize:vertical;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:7px}
.geography-group-card.single-chat{background:#eef7fd;border-color:#d4e8f6}
.geography-group-card.shared-chat{background:#fff5e8;border-color:#f0dcc1}
[data-theme="dark"] .geography-group-card.single-chat{background:#202e39;border-color:#344e60}
[data-theme="dark"] .geography-group-card.shared-chat{background:#342c21;border-color:#5e4d34}
@media(max-width:1000px){.dashboard-grid{grid-template-columns:1fr;grid-template-areas:"map" "topics" "focus"}}
