:root{color-scheme:light;--bg:var(--ri-paper);--panel:var(--ri-surface);--border:var(--ri-grid);--muted:var(--ri-slate);--text:var(--ri-ink);--accent:var(--ri-blue);--mono:var(--ri-mono);--sans:var(--ri-sans);}
body{font-size:14px;background:var(--ri-paper);color:var(--ri-ink);}button,input,select{background:var(--ri-surface);color:var(--ri-ink);border-color:var(--ri-grid);border-radius:4px;}button:hover{background:var(--ri-tint);color:var(--ri-ink);border-color:var(--ri-slate);}button.active,.mode-switch button.active,.map-modes button.active,.topics button.active{background:var(--ri-tint);color:var(--ri-blue);border-color:var(--ri-grid);}
.topbar{background:var(--ri-ink);color:var(--ri-paper);height:88px;gap:32px;padding:16px 24px;}.brand{color:var(--ri-paper);letter-spacing:0;}.brand small{font-family:var(--ri-sans);color:var(--ri-mist);font-size:11px;letter-spacing:.04em;}.page-title{font-size:20px;border-color:var(--ri-slate);}.header-right .mono{color:var(--ri-mist);}.header-right button{background:var(--ri-night-soft);color:var(--ri-paper);border-color:var(--ri-slate);}
.toolbar,.timeline-panel,.bottom-bar{background:var(--ri-paper);}.toolbar{flex-wrap:wrap;gap:8px;}.mode-switch,.map-modes,.search{background:var(--ri-surface);}.search input{background:transparent;}.topics button{font-size:12px;}.panel-heading h2{font-size:22px;font-weight:600;}.eyebrow,.detail-kicker,.section-label span{font-family:var(--ri-sans);font-size:11px;letter-spacing:.08em;}.panel-heading h2 span{background:var(--ri-tint);color:var(--ri-slate);}.panel-heading,.detail-panel{padding:24px;}
.event-card{border-color:var(--ri-grid);padding:16px 20px;}.event-card:hover{background:var(--ri-tint);}.event-card.selected{background:var(--ri-tint);box-shadow:none;border-left:3px solid var(--ri-blue);}.event-card h3{color:var(--ri-ink);font-size:14px;}.event-meta,.event-card .event-meta,.event-card .event-foot,.event-card time,.filter-summary{font-size:11px;}.summary,.evidence-item p{color:var(--ri-slate);font-size:13px;}.detail-title{color:var(--ri-ink);font-size:24px;font-weight:600;}.tag{background:var(--ri-tint);color:var(--ri-slate);font-size:11px;}.importance{background:#F1E7D5;color:#795623;border-color:var(--ri-caution);}.status-dot,.status-dot.ok{background:var(--ri-positive);box-shadow:none;}.section-label{font-size:13px;}.detail-timing,.method-note{font-size:12px;}
.dot.macro{background:var(--ri-blue);}.dot.geo{background:var(--ri-risk);}.dot.energy{background:var(--ri-positive);}.evidence-item{border-color:var(--ri-grid);}.notice{background:#F1E7D5;color:#795623;border-color:var(--ri-caution);}.notice.demo{background:var(--ri-tint);color:var(--ri-ink);border-color:var(--ri-grid);}
.map-panel{background:var(--ri-paper);}.map-heading h1{color:var(--ri-ink);font-size:28px;letter-spacing:0;font-weight:600;}.map-stats>div span{color:var(--ri-ink);font-size:32px;}.map-stats small{font-size:11px;}.map-note,.bottom-bar{color:var(--ri-slate);font-size:11px;}.map-tools button{background:var(--ri-surface);color:var(--ri-ink);}.map-tooltip,.maplibregl-popup-content{background:var(--ri-surface);color:var(--ri-ink);border:1px solid var(--ri-grid);box-shadow:0 1px 2px #0A21220F;font-family:var(--ri-sans);}.maplibregl-popup-tip{border-top-color:var(--ri-surface)!important;}.maplibregl-ctrl-attrib{background:var(--ri-paper);color:var(--ri-slate);}.histogram{border-color:var(--ri-grid);}.histogram button i{background:var(--ri-positive);border-color:var(--ri-slate);}.timeline-title strong{font-size:14px;}.timeline-labels{font-size:11px;}
dialog,.toast,#gesturePanel,#focusPanel,#focusBar,.focus-panel,.focus-bar{background:var(--ri-surface);color:var(--ri-ink);border:1px solid var(--ri-grid);border-radius:8px;box-shadow:0 1px 2px #0A21220F;backdrop-filter:none;}.primary{background:var(--ri-blue);color:white;border-color:var(--ri-blue);}dialog::backdrop{backdrop-filter:none;background:#0A212266;}
#gesturePanel{background:var(--ri-surface);color:var(--ri-ink);}#gestureStatus{color:var(--ri-positive);}#gesturePanel small{color:var(--ri-slate);}.gesture-preview{background:var(--ri-ink);}
.workspace{height:calc(100vh - 304px);}.event-list,.detail-panel{scrollbar-color:var(--ri-mist) transparent;}
body.focus-mode .map-panel,body.focus-mode{background:var(--ri-paper);}
.map-stats{background:var(--ri-surface);border-color:var(--ri-grid);backdrop-filter:none;}.map-stats>div span{font-size:20px;}.map-stats small{font-size:11px;}#tileStatus,.map-bottom,.map-note{color:var(--ri-slate);text-shadow:none;}#worldMap .maplibregl-ctrl-attrib,#worldMap .maplibregl-ctrl-scale,#worldMap .maplibregl-popup-content{background:var(--ri-surface);color:var(--ri-slate);border-color:var(--ri-grid);}#worldMap .maplibregl-ctrl-attrib a{color:var(--ri-blue);}#mapLanguage{background:var(--ri-surface);color:var(--ri-ink);border-color:var(--ri-grid);}
.recovery-notice{background:var(--ri-tint);color:var(--ri-slate);border-color:var(--ri-grid);}.importance.critical{background:#F2E5E1;color:#8C403B;border-color:var(--ri-risk);}
#maritimeToggle,#vesselToggle{color:var(--ri-slate);border-color:var(--ri-grid);}#maritimeToggle.active,#vesselToggle.active,.shipping-tabs .active{background:var(--ri-tint);color:var(--ri-blue);border-color:var(--ri-blue);}.shipping-metrics strong{color:var(--ri-ink);}.shipping-warning{background:#F1E7D5;color:#795623;border-color:var(--ri-caution);}.shipping-bar{background:var(--ri-positive);}.shipping-bar:hover,.shipping-bar:focus{background:var(--ri-blue);outline-color:var(--ri-blue);}.shipping-bar.missing{background:var(--ri-mist);}.shipping-comparison,.shipping-notice summary,.shipping-unassigned>summary,.vessel-status{color:var(--ri-slate);}#vesselForm input{background:var(--ri-surface);color:var(--ri-ink);border-color:var(--ri-grid);}#vesselConfigError{color:var(--ri-risk);}
#focusDrawer{background:var(--ri-surface);color:var(--ri-ink);border-color:var(--ri-grid);border-radius:8px;box-shadow:none;backdrop-filter:none;}#focusSource{color:var(--ri-slate);}
@media(max-width:980px){.topbar{gap:16px;}.workspace{height:auto;}.panel-heading,.detail-panel{padding:20px;}}
@media(max-width:620px){.topbar{height:auto;min-height:88px;flex-wrap:wrap;padding:12px 16px;gap:8px 16px;}.brand{flex:1;}.page-title{font-size:16px;padding-left:0;}.header-right{margin-left:0;}.map-heading h1{font-size:24px;}.detail-title{font-size:22px;}.ri-wordmark{font-size:15px;}}

#worldMap{background:var(--ri-paper);}.map-heading h1{text-shadow:none;}.map-bottom,.map-note,#tileStatus{background:var(--ri-paper);border-radius:4px;padding:2px 4px;}
