:root{color-scheme:dark;--bg-void: #0B0C0E;--bg-shell: #131518;--bg-raise: #1A1D21;--bg-sunken: #0F1113;--bg-hover: #22262B;--line: #262A2F;--line-hi: #343A41;--fg: #E6E9ED;--fg-dim: #9BA3AC;--fg-mute: #666E77;--sev-1: #FACC15;--sev-2: #F59E0B;--sev-3: #F97316;--sev-4: #DC2626;--ok: #3FB27F;--warn: #D9A441;--focus: #4D8EF7;--font: Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace;--fs-xs: 10px;--fs-s: 11px;--fs-m: 12px;--fs-base: 13px;--fs-l: 15px;--fs-xl: 18px;--sp-1: 2px;--sp-2: 4px;--sp-3: 6px;--sp-4: 8px;--sp-5: 12px;--sp-6: 16px;--sp-7: 24px;--r-s: 2px;--r-m: 3px;--r-l: 4px;--h-control: 28px;--h-row: 44px;--w-panel: 300px;--w-drawer: 380px;--shadow: 0 8px 24px rgba(0, 0, 0, .55);--t-fast: .1s ease-out;--t-base: .16s ease-out;--z-map-overlay: 5;--z-chrome: 10;--z-legend: 20;--z-timemachine: 25;--z-popup: 30;--z-panel: 40;--z-modal: 100}.num{font-variant-numeric:tabular-nums}.eyebrow{font-size:var(--fs-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--fg-mute)}:focus-visible{outline:2px solid var(--focus);outline-offset:1px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font:400 var(--fs-base)/1.45 var(--font);background:var(--bg-void);color:var(--fg);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}.app{display:flex;flex-direction:column;height:100%}.main-row{display:flex;flex:1;min-height:0;position:relative}.topbar{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-5);background:var(--bg-shell);border-bottom:1px solid var(--line);position:relative;z-index:var(--z-chrome)}.brand{display:flex;align-items:baseline;gap:var(--sp-3);margin-right:var(--sp-2);flex-shrink:0}.brand-name{font-size:var(--fs-l);font-weight:600;letter-spacing:.18em;text-transform:uppercase}.brand-sub{font-size:var(--fs-s);color:var(--fg-mute)}.topbar button,.topbar .import-btn,.filter-select,.status-chip{height:var(--h-control);display:inline-flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-4);background:var(--bg-sunken);color:var(--fg-dim);border:1px solid var(--line);border-radius:var(--r-m);cursor:pointer;font-size:var(--fs-m);white-space:nowrap;transition:color var(--t-fast),border-color var(--t-fast),background-color var(--t-fast)}.topbar button:hover,.topbar .import-btn:hover,.status-chip:hover{color:var(--fg);border-color:var(--line-hi)}.tool-group{display:flex;gap:var(--sp-2);align-items:center}.tool-group.push{margin-left:auto}.topbar .icon-btn{padding:0;width:var(--h-control);justify-content:center}.topbar button[aria-pressed=true],.topbar .import-btn:focus-within{color:var(--fg);background:var(--bg-hover);border-color:var(--line-hi)}.import-btn input{display:none}.tool-sep{width:1px;height:18px;background:var(--line);flex-shrink:0}.statusbar{position:relative}.status-chip.ok{color:var(--fg-dim)}.status-chip.warn{color:var(--warn);border-color:var(--warn)}.status-chip.dead{color:var(--sev-4);border-color:var(--sev-4)}.dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.dot.live{background:var(--ok)}.dot.warn{background:var(--warn)}.dot.dead{background:var(--sev-4)}.status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-chip.ok .status-dot{background:var(--ok)}.status-chip.dead .status-dot{background:var(--sev-4)}.status-panel{position:absolute;top:calc(var(--h-control) + var(--sp-3));right:0;z-index:var(--z-panel);width:300px;background:var(--bg-raise);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--shadow);padding:var(--sp-4);font-size:var(--fs-m)}.status-row{display:flex;justify-content:space-between;gap:var(--sp-5);padding:var(--sp-1) 0;color:var(--fg-dim)}.status-row b{color:var(--fg);font-weight:500;font-variant-numeric:tabular-nums}.status-row .warn-text{color:var(--warn)}.status-row .live-text{color:var(--ok, #3fb950)}.status-sub{margin-top:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--line);font-size:var(--fs-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--fg-mute);margin-bottom:var(--sp-2)}.filters{display:flex;gap:var(--sp-2);align-items:center}.filter-chip{color:var(--fg-mute)!important}.filter-chip.on{color:var(--fg)!important;border-color:var(--line-hi)!important}.filter-count{min-width:16px;padding:0 var(--sp-2);text-align:center;background:var(--bg-hover);border-radius:var(--r-s);font-size:var(--fs-s);font-variant-numeric:tabular-nums}.filter-select{padding-right:var(--sp-2)}.search-box{position:relative;width:300px;flex-shrink:0}.search-box input{width:100%;height:var(--h-control);padding:0 var(--sp-4);background:var(--bg-sunken);color:var(--fg);border:1px solid var(--line);border-radius:var(--r-m);outline:none;font-size:var(--fs-m)}.search-box input::placeholder{color:var(--fg-mute)}.search-box input:focus{border-color:var(--focus)}.search-results{position:absolute;top:calc(100% + var(--sp-2));left:0;right:0;margin:0;padding:var(--sp-2);list-style:none;background:var(--bg-raise);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--shadow);max-height:420px;overflow-y:auto}.search-results li{padding:var(--sp-3) var(--sp-4);border-radius:var(--r-m);cursor:pointer;display:flex;align-items:baseline;gap:var(--sp-4);flex-wrap:wrap}.search-results li.active{background:var(--bg-hover)}.search-results .title{font-weight:500}.search-results .badge{font-size:var(--fs-s);padding:0 var(--sp-3);border:1px solid var(--line);border-radius:var(--r-s);color:var(--fg-mute);white-space:nowrap}.search-results .path{font-size:var(--fs-m);color:var(--fg-dim);width:100%}.search-error{position:absolute;top:calc(100% + var(--sp-2));font-size:var(--fs-m);color:var(--sev-4)}.selected-info{display:flex;align-items:center;gap:var(--sp-3);height:var(--h-control);padding:0 var(--sp-4);background:var(--bg-sunken);border:1px solid var(--focus);border-radius:var(--r-m);font-size:var(--fs-m);max-width:320px}.selected-info strong{font-weight:500}.selected-info span{color:var(--fg-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.incident-panel{width:var(--w-panel);flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-shell);border-right:1px solid var(--line)}.panel-header{display:flex;align-items:baseline;gap:var(--sp-3);height:34px;padding:0 var(--sp-4);border-bottom:1px solid var(--line);font-size:var(--fs-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--fg-mute)}.panel-count{color:var(--fg);font-size:var(--fs-m);letter-spacing:0;font-variant-numeric:tabular-nums}.panel-list{flex:1;overflow-y:auto;padding:var(--sp-2)}.panel-empty{color:var(--fg-mute);text-align:center;padding:var(--sp-7) var(--sp-4);font-size:var(--fs-m)}.panel-subheader{color:var(--fg-mute);font-size:var(--fs-xs);letter-spacing:.09em;text-transform:uppercase;padding:var(--sp-5) var(--sp-3) var(--sp-2)}.incident-row{display:flex;gap:var(--sp-4);align-items:center;width:100%;text-align:left;min-height:var(--h-row);padding:var(--sp-3) var(--sp-4);margin-bottom:1px;background:transparent;border:1px solid transparent;border-left:2px solid transparent;border-radius:var(--r-m);color:var(--fg);cursor:pointer;transition:background-color var(--t-fast)}.incident-row:hover{background:var(--bg-sunken)}.incident-row.selected{background:var(--bg-hover);border-left-color:var(--focus)}.incident-row.cleared{opacity:.5;filter:grayscale(.6)}.row-icons{display:flex;align-items:center;gap:var(--sp-1);flex-shrink:0;height:26px;padding:0 var(--sp-3);border:1px solid;border-radius:var(--r-m);background:var(--bg-sunken)}.row-body{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.row-title{font-weight:500;font-size:var(--fs-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-meta{font-size:var(--fs-s);color:var(--fg-dim);font-variant-numeric:tabular-nums}.row-status{font-weight:500}.row-reason{font-size:var(--fs-s);color:var(--fg-mute);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-loading{flex:1;min-width:0;background:var(--bg-shell)}.embed-map{position:fixed;top:0;right:0;bottom:0;left:0;display:flex}.embed-badge{position:absolute;left:8px;bottom:8px;z-index:5;font-size:11px;color:var(--fg-dim);pointer-events:none;background:color-mix(in srgb,var(--bg-shell) 80%,transparent);padding:2px 7px;border-radius:4px}.support-btn{display:inline-flex;align-items:center;gap:5px;height:var(--h-control);padding:0 13px;flex-shrink:0;background:#e9a43b;color:#17130a;border:none;border-radius:var(--r-m, 6px);font-weight:700;font-size:var(--fs-s);white-space:nowrap;text-decoration:none;cursor:pointer;box-shadow:0 0 0 1px #e9a43b59,0 2px 10px #e9a43b40;transition:background .12s,box-shadow .12s,transform 80ms}.support-btn:hover{background:#f5b44e;box-shadow:0 0 0 1px #f5b44e80,0 3px 14px #f5b44e59}.support-btn:active{transform:translateY(1px)}.support-btn-m{width:var(--h-control);padding:0;justify-content:center;font-size:15px}.menu-support{color:#f5b44e!important;font-weight:700}.map-wrap{flex:1;min-width:0;position:relative;display:flex}.map-container{flex:1;min-height:0}.maplibregl-canvas:focus,.map-container:focus,.map-container:focus-visible{outline:none}.region-banners{position:absolute;top:var(--sp-4);left:50%;transform:translate(-50%);z-index:var(--z-map-overlay);display:flex;flex-direction:column;gap:var(--sp-1);max-width:min(560px,80%)}.region-banner{display:flex;align-items:center;gap:var(--sp-4);height:30px;padding:0 var(--sp-5);font-size:var(--fs-m);cursor:pointer;text-align:left;background:color-mix(in srgb,var(--bg-shell) 94%,transparent);color:var(--fg);border:1px solid var(--line);border-left:2px solid;border-radius:var(--r-m);box-shadow:var(--shadow)}.region-banner:hover{background:var(--bg-hover)}.region-age{margin-left:auto;color:var(--fg-dim);font-size:var(--fs-s);font-variant-numeric:tabular-nums}.stack-popup{position:absolute;z-index:var(--z-popup);width:260px;background:var(--bg-raise);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--shadow);padding:var(--sp-2)}.stack-head{display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--fg-mute);padding:var(--sp-2) var(--sp-3) var(--sp-3)}.stack-head button{background:none;border:none;color:var(--fg-mute);cursor:pointer;padding:0;display:flex}.stack-head button:hover{color:var(--fg)}.stack-row{display:flex;align-items:center;gap:var(--sp-3);width:100%;padding:var(--sp-3);margin-bottom:1px;font-size:var(--fs-m);background:transparent;border:none;border-radius:var(--r-m);color:var(--fg);cursor:pointer;text-align:left}.stack-row:hover{background:var(--bg-hover)}.stack-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.stack-place{color:var(--fg-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.stack-age{color:var(--fg-mute);font-size:var(--fs-s);font-variant-numeric:tabular-nums}.legend{position:absolute;left:calc(var(--w-panel) + var(--sp-5));bottom:var(--sp-7);z-index:var(--z-legend)}.legend-toggle{height:var(--h-control);padding:0 var(--sp-4);display:inline-flex;align-items:center;gap:var(--sp-3);background:var(--bg-shell);color:var(--fg-dim);border:1px solid var(--line);border-radius:var(--r-m);cursor:pointer;font-size:var(--fs-m)}.legend-toggle:hover{color:var(--fg);border-color:var(--line-hi)}.legend-body{position:absolute;bottom:calc(var(--h-control) + var(--sp-2));left:0;width:260px;background:var(--bg-raise);border:1px solid var(--line);border-radius:var(--r-l);padding:var(--sp-4);font-size:var(--fs-m);box-shadow:var(--shadow)}.legend-section{color:var(--fg-mute);text-transform:uppercase;font-size:var(--fs-xs);letter-spacing:.09em;margin:var(--sp-5) 0 var(--sp-3)}.legend-section:first-child{margin-top:0}.legend-row{display:flex;align-items:center;gap:var(--sp-4);margin:var(--sp-2) 0;color:var(--fg-dim)}.legend-swatch{width:20px;height:12px;border:1px solid;border-radius:var(--r-s);flex-shrink:0}.legend-kinds{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-2) var(--sp-4)}.legend-kind{display:flex;align-items:center;gap:var(--sp-3);color:var(--fg-dim);white-space:nowrap}.timemachine{position:absolute;left:50%;transform:translate(-50%);bottom:var(--sp-7);z-index:var(--z-timemachine);display:flex;align-items:center;gap:var(--sp-5);width:min(680px,60%);padding:var(--sp-3) var(--sp-5);background:color-mix(in srgb,var(--bg-shell) 95%,transparent);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--shadow)}.timemachine.replaying{border-color:var(--warn)}.live-btn{height:24px;padding:0 var(--sp-4);display:inline-flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-s);font-weight:500;letter-spacing:.06em;background:var(--bg-sunken);color:var(--fg-mute);border:1px solid var(--line);border-radius:var(--r-m);cursor:pointer;white-space:nowrap}.live-btn.active{color:var(--ok);border-color:var(--ok)}.timemachine.replaying .live-btn{color:var(--warn);border-color:var(--warn)}.tm-track{position:relative;flex:1;height:28px}.tm-bars{position:absolute;top:0;right:0;bottom:12px;left:0}.tm-bar{position:absolute;bottom:0;width:2px;background:var(--line-hi);border-radius:1px}.tm-bar.severe{background:var(--sev-4)}.tm-track input[type=range]{position:absolute;left:0;right:0;bottom:0;width:100%;margin:0;accent-color:var(--focus)}.tm-label{min-width:52px;text-align:right;font-size:var(--fs-m);font-variant-numeric:tabular-nums;color:var(--fg-dim)}.drawer{width:var(--w-drawer);flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-shell);border-left:1px solid var(--line)}.drawer-overlay{position:absolute;top:0;right:0;bottom:0;z-index:var(--z-panel, 40);box-shadow:-8px 0 24px #00000073}.drawer-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);height:34px;padding:0 var(--sp-4);border-bottom:1px solid var(--line)}.drawer-header strong{font-size:var(--fs-l);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-close{background:none;border:none;color:var(--fg-mute);cursor:pointer;padding:var(--sp-1);display:flex;flex-shrink:0;border-radius:var(--r-s)}.drawer-close:hover{color:var(--fg)}.drawer-body{flex:1;overflow-y:auto;padding:var(--sp-4)}.drawer-loading,.drawer-error{color:var(--fg-dim);text-align:center;padding:var(--sp-7) 0;font-size:var(--fs-m)}.drawer-error{color:var(--sev-4);text-align:left}.incident-card{border:1px solid var(--line-hi);border-left:3px solid;border-radius:var(--r-m);background:var(--bg-raise);padding:var(--sp-5);margin-bottom:var(--sp-5)}.incident-card:last-child{margin-bottom:0}.card-eventdate{font-size:var(--fs-m);color:var(--fg-dim);margin:var(--sp-1) 0 var(--sp-2)}.card-body{margin-top:var(--sp-3);font-size:var(--fs-base);line-height:1.5;color:var(--fg);white-space:pre-line}.incident-card.cleared{opacity:.6;border-color:var(--line)}.incident-card.cleared:hover{opacity:1}.incident-card .tl-msg,.incident-card .cleared-quote,.incident-card .cleared-banner{background:var(--bg-sunken)}.incident-card .conf-tick{background:var(--bg-raise)}.drawer-subheader{color:var(--fg-mute);font-size:var(--fs-xs);letter-spacing:.09em;text-transform:uppercase;padding:var(--sp-4) 0 var(--sp-4);border-top:1px solid var(--line);margin-top:var(--sp-2)}.card-header{display:flex;align-items:center;gap:var(--sp-4)}.card-head{display:flex;align-items:center;gap:var(--sp-4);min-width:0}.card-head strong{font-weight:500;font-size:var(--fs-base);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-summary{margin:var(--sp-3) 0 0;font-size:var(--fs-base);line-height:1.5}.card-summary.dim{color:var(--fg-mute)}.card-badge.warn{display:inline-block;margin-top:var(--sp-3);padding:0 var(--sp-3);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--warn);border:1px solid color-mix(in srgb,var(--warn) 50%,transparent);border-radius:var(--r-s)}.conf-track{position:relative;flex:1;height:4px;background:var(--bg-hover);border-radius:1px;overflow:hidden}.conf-num{font-weight:500;min-width:30px;text-align:right}.drawer-note{color:var(--fg-dim);text-align:center;padding:var(--sp-7) 0;font-size:var(--fs-m);margin:0}.card-icon{display:flex;flex-shrink:0}.card-titles{display:flex;flex-direction:column;gap:1px;min-width:0}.card-kind{font-weight:500;font-size:var(--fs-base)}.card-status{font-size:var(--fs-s);display:flex;align-items:center;gap:var(--sp-3)}.card-age{margin-left:auto;font-size:var(--fs-s);color:var(--fg-dim);font-variant-numeric:tabular-nums;white-space:nowrap}.card-expand{background:none;border:1px solid var(--line);border-radius:var(--r-m);color:var(--fg-mute);cursor:pointer;width:24px;height:24px;margin-left:var(--sp-2);flex-shrink:0;display:flex;align-items:center;justify-content:center}.card-expand:hover{color:var(--fg);border-color:var(--line-hi)}.silence-badge{padding:0 var(--sp-3);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--warn);border:1px solid color-mix(in srgb,var(--warn) 50%,transparent);border-radius:var(--r-s)}.conf-row{display:flex;align-items:center;gap:var(--sp-4);margin:var(--sp-5) 0 var(--sp-4);font-size:var(--fs-s)}.conf-label{color:var(--fg-dim)}.conf-bar{position:relative;flex:1;height:4px;background:var(--bg-hover);border-radius:1px;overflow:hidden}.conf-fill{height:100%;background:var(--fg-mute);transition:width .3s ease-out}.conf-tick{position:absolute;top:0;bottom:0;width:1px;background:var(--bg-shell)}.conf-value{font-weight:500;min-width:30px;text-align:right;font-variant-numeric:tabular-nums}.card-ai{font-size:var(--fs-m);margin:var(--sp-3) 0;line-height:1.5;color:var(--fg)}.origin-label{color:var(--fg-mute)}.ai-pending{color:var(--fg-mute);font-size:var(--fs-m)}.card-evidence{margin-top:var(--sp-5);border-top:1px solid var(--line);padding-top:var(--sp-4)}.evidence-header{font-size:var(--fs-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--fg-mute);margin-bottom:var(--sp-4)}.evidence-row{margin-bottom:var(--sp-4)}.evidence-meta{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap;font-size:var(--fs-s);color:var(--fg-dim)}.evidence-tier{border:1px solid var(--line);border-radius:var(--r-s);padding:0 var(--sp-2);color:var(--fg-mute)}.evidence-time{margin-left:auto;font-variant-numeric:tabular-nums;color:var(--fg-mute)}.evidence-text{font-size:var(--fs-m);line-height:1.5;margin-top:var(--sp-1)}.evidence-author{display:inline-flex;align-items:center;gap:var(--sp-1);font-family:var(--font-mono);font-size:var(--fs-s);color:var(--fg-mute)}.evidence-hits{margin-top:var(--sp-1);display:flex;gap:var(--sp-2);flex-wrap:wrap}.evidence-hits code{font-family:var(--font-mono);font-size:var(--fs-s);background:var(--bg-hover);border-radius:var(--r-s);padding:0 var(--sp-2);color:var(--fg-dim)}.evidence-more{display:flex;align-items:center;gap:var(--sp-3);width:100%;margin-top:var(--sp-3);padding:var(--sp-3) 0 0;background:none;border:none;border-top:1px solid var(--line);color:var(--fg-dim);font-size:var(--fs-m);cursor:pointer;text-align:left}.evidence-more:hover{color:var(--fg)}.cleared-banner{display:flex;gap:var(--sp-4);align-items:flex-start;margin:var(--sp-4) 0;padding:var(--sp-3) var(--sp-4);background:var(--bg-void);border:1px solid var(--line);border-left:2px solid var(--ok);border-radius:var(--r-m);font-size:var(--fs-m);line-height:1.5}.cleared-icon{color:var(--ok);flex-shrink:0;display:flex;margin-top:2px}.cleared-body{min-width:0}.cleared-body strong{font-weight:500}.cleared-why{color:var(--fg-dim)}.cleared-quote{margin:var(--sp-3) 0 0;padding:var(--sp-3) var(--sp-4);background:var(--bg-sunken);border-left:1px solid var(--line);font-size:var(--fs-m);line-height:1.45;color:var(--fg-dim)}.cleared-quote-meta{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap;font-size:var(--fs-s);color:var(--fg-mute);margin-bottom:var(--sp-2)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:color-mix(in srgb,var(--bg-void) 78%,transparent);display:flex;align-items:center;justify-content:center;padding:var(--sp-7)}.modal{width:min(680px,92vw);max-height:88vh;display:flex;flex-direction:column;background:var(--bg-raise);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--shadow)}.modal-header{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);border-bottom:1px solid var(--line)}.modal-header strong{font-size:var(--fs-xl);font-weight:500}.modal-titles{display:flex;flex-direction:column;gap:1px;min-width:0}.modal-header .drawer-close{margin-left:auto}.modal-body{overflow-y:auto;padding:var(--sp-5) var(--sp-6)}.modal-summary{padding-bottom:var(--sp-5);margin-bottom:var(--sp-4);border-bottom:1px solid var(--line)}.modal-ai{font-size:var(--fs-m);line-height:1.5;margin-top:var(--sp-4)}.modal-footer-facts{border-top:1px solid var(--line);padding-top:var(--sp-4);font-size:var(--fs-m);color:var(--fg-dim);display:flex;flex-direction:column;gap:var(--sp-1)}.timeline{border-left:1px solid var(--line);margin:var(--sp-4) 0 var(--sp-5) 8px}.tl-item{padding:var(--sp-3) 0 var(--sp-3) var(--sp-6)}.tl-head{display:grid;grid-template-columns:16px 88px 1fr;gap:var(--sp-4);align-items:baseline;font-size:var(--fs-m);line-height:1.5}.tl-mark{margin-left:-32px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:var(--bg-raise);color:var(--fg-mute)}.tl-time{color:var(--fg-mute);font-variant-numeric:tabular-nums}.tl-text{color:var(--fg)}.tl-created .tl-mark,.tl-evidence .tl-mark{color:var(--fg-dim)}.tl-ai .tl-mark,.tl-status .tl-mark{color:var(--focus)}.tl-cleared .tl-mark{color:var(--ok)}.tl-merged .tl-mark{color:var(--fg-mute)}.tl-cleared .tl-text,.tl-merged .tl-text{color:var(--fg-dim)}.tl-messages{margin:var(--sp-3) 0 var(--sp-1) 108px;display:flex;flex-direction:column;gap:var(--sp-3)}.tl-msg{background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--r-m);padding:var(--sp-3) var(--sp-4)}.tl-msg-meta{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap;font-size:var(--fs-s);color:var(--fg-dim);margin-bottom:var(--sp-2)}.tl-msg-text{font-size:var(--fs-m);line-height:1.5}.sources-modal{width:min(880px,94vw);max-height:92vh}.tg-block{padding:var(--sp-5) 0;border-bottom:1px solid var(--line)}.tg-block:last-child{border-bottom:none}.tg-block-title{font-size:var(--fs-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--fg-mute);margin-bottom:var(--sp-4)}.tg-account{display:flex;align-items:center;gap:var(--sp-4);font-size:var(--fs-m)}.tg-actions{display:flex;gap:var(--sp-3);align-items:center;margin-left:auto}.tg-form{display:flex;flex-wrap:wrap;gap:var(--sp-3);align-items:center}.tg-form input,.tg-form select,.tg-filter,.tg-places input{height:var(--h-control);padding:0 var(--sp-4);background:var(--bg-sunken);color:var(--fg);border:1px solid var(--line);border-radius:var(--r-m);outline:none;font-size:var(--fs-m)}.tg-form input::placeholder,.tg-filter::placeholder{color:var(--fg-mute)}.tg-form input:focus,.tg-form select:focus,.tg-filter:focus,.tg-places input:focus{border-color:var(--focus)}.tg-filter{width:100%;margin-bottom:var(--sp-3)}.tg-hint{font-size:var(--fs-s);color:var(--fg-mute);line-height:1.5}.tg-warn{font-size:var(--fs-s);color:var(--warn);display:inline-flex;align-items:center;gap:var(--sp-2)}.tg-source{display:flex;align-items:center;gap:var(--sp-4);min-height:38px;padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--line);font-size:var(--fs-m)}.tg-source:last-child{border-bottom:none}.tg-source-title{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tg-dialogs{max-height:320px;overflow-y:auto;border:1px solid var(--line);border-radius:var(--r-m)}.tg-dialog{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--line);font-size:var(--fs-m)}.tg-dialog:last-child{border-bottom:none}.tg-dialog:hover{background:var(--bg-sunken)}.tg-dialog-title{font-weight:500}.tg-dialog-meta{color:var(--fg-dim);font-size:var(--fs-s)}.tg-dialog-action{margin-left:auto}.tg-add{display:flex;flex-direction:column;gap:var(--sp-4)}.tg-add-title{font-size:var(--fs-m);font-weight:500}.tg-places{position:relative}.ghost-btn{height:var(--h-control);padding:0 var(--sp-4);display:inline-flex;align-items:center;gap:var(--sp-3);background:var(--bg-sunken);color:var(--fg-dim);border:1px solid var(--line);border-radius:var(--r-m);cursor:pointer;font-size:var(--fs-m);white-space:nowrap;transition:color var(--t-fast),border-color var(--t-fast)}.ghost-btn:hover{color:var(--fg);border-color:var(--line-hi)}.ghost-btn:disabled{color:var(--fg-mute);cursor:default;opacity:.6}*{scrollbar-width:thin;scrollbar-color:var(--line-hi) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{background:var(--line-hi);border-radius:4px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-track{background:transparent}.sources-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b0c0eb8;z-index:var(--z-modal, 100);display:grid;place-items:center}.sources-page{width:min(880px,94vw);max-height:92vh;overflow:auto;background:var(--bg-shell);border:1px solid var(--line-hi);border-radius:var(--r-m, 3px)}.sources-head{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg-shell)}.sources-body{padding:8px 18px 20px}.sources-note{color:var(--fg-dim);padding:8px 0}.src-section{margin-top:18px}.src-section h3{font-size:13px;margin:0 0 10px;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-dim)}.ok-mark{color:var(--ok);font-size:11px;text-transform:none;letter-spacing:0;margin-left:8px}.platform-card{border:1px solid var(--line);border-radius:var(--r-m, 3px);padding:12px;background:var(--bg-raise)}.platform-card.error{border-color:var(--sev-4)}.platform-head{display:flex;gap:10px;align-items:center}.platform-user{display:flex;gap:10px;align-items:center;margin-top:10px}.platform-form{display:grid;gap:10px;margin-top:12px;max-width:420px}.platform-form label{display:grid;gap:4px;font-size:12px;color:var(--fg-dim)}.platform-form input{height:var(--h-control, 28px)}.hint{font-size:11px;line-height:1.5}.form-error{color:var(--sev-4);background:var(--bg-sunken);border:1px solid var(--sev-4);border-radius:var(--r-s, 2px);padding:8px 10px;margin:10px 0;font-size:12px;overflow-wrap:anywhere}.src-group{margin-bottom:12px}.src-group-head{font-size:11px;color:var(--fg-mute);text-transform:uppercase;letter-spacing:.08em;padding:6px 0}.src-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--r-s, 2px);margin-bottom:4px;background:var(--bg-raise)}.src-row.disabled{opacity:.5}.src-main{flex:1;display:flex;gap:8px;align-items:baseline;min-width:0;flex-wrap:wrap}.src-flags{display:inline-flex;gap:6px}.flag{font-size:10px;padding:1px 6px;border-radius:var(--r-s, 2px);border:1px solid}.flag.warn{color:var(--warn);border-color:var(--warn)}.flag.error{color:var(--sev-4);border-color:var(--sev-4)}.src-activity,.src-weight{font-size:11px;color:var(--fg-dim);white-space:nowrap}.tier-badge{font-size:10px;font-weight:600;padding:1px 5px;border-radius:var(--r-s, 2px);border:1px solid var(--line-hi);color:var(--fg-dim)}.tier-T1{color:var(--ok);border-color:var(--ok)}.tier-T2{color:var(--focus);border-color:var(--focus)}.tabs{display:flex;gap:6px;margin-bottom:10px}.tab{height:var(--h-control, 28px);padding:0 12px;border:1px solid var(--line);background:var(--bg-raise);color:var(--fg-dim);border-radius:var(--r-s, 2px);cursor:pointer}.tab.active{color:var(--fg);border-color:var(--line-hi);background:var(--bg-hover)}.module-switch.big{margin-bottom:var(--sp-5)}.module-switch.big .tab{padding:0 var(--sp-5);font-weight:600}.module-switch.module-top{margin:var(--sp-2) 0 var(--sp-6)}.module-tag{margin-left:auto;padding:var(--sp-1) var(--sp-3);font-size:var(--fs-s);border:1px solid var(--line-hi);border-radius:var(--r-s);color:var(--fg-dim)}.dialog-picker{display:grid;gap:4px;max-height:320px;overflow:auto}.dialog-picker input{position:sticky;top:0}.dialog-row{display:flex;justify-content:space-between;gap:10px;padding:7px 10px;border:1px solid var(--line);background:var(--bg-raise);border-radius:var(--r-s, 2px);cursor:pointer;text-align:left;color:var(--fg)}.dialog-row:disabled{opacity:.45;cursor:default}.dialog-row:not(:disabled):hover{background:var(--bg-hover)}.link-resolver{display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap}.link-resolver input{flex:1;min-width:260px}.add-form{display:grid;gap:12px;margin-top:12px;max-width:560px}.add-candidate{display:flex;gap:10px;align-items:baseline;padding:8px 10px;background:var(--bg-sunken);border-radius:var(--r-s, 2px)}.tier-picker{border:1px solid var(--line);border-radius:var(--r-m, 3px);padding:8px 12px 10px;display:grid;gap:6px}.tier-picker legend{font-size:12px;color:var(--fg-dim);padding:0 4px}.tier-option{display:flex;gap:8px;align-items:baseline;font-size:12px;cursor:pointer}.place-picker{display:grid;gap:6px}.place-picker>label{font-size:12px;color:var(--fg-dim)}.place-picker .req{color:var(--warn)}.place-chosen{display:flex;gap:8px;align-items:center;padding:6px 10px;background:var(--bg-sunken);border-radius:var(--r-s, 2px);width:fit-content}.place-option{text-align:left;padding:6px 10px;border:1px solid var(--line);background:var(--bg-raise);color:var(--fg);border-radius:var(--r-s, 2px);cursor:pointer}.place-option:hover{background:var(--bg-hover)}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:560px}.settings-grid label{display:grid;gap:4px;font-size:12px;color:var(--fg-dim)}.btn{height:var(--h-control, 28px);padding:0 14px;cursor:pointer;background:var(--bg-hover);color:var(--fg);border:1px solid var(--line-hi);border-radius:var(--r-s, 2px);width:fit-content}.btn:disabled{opacity:.5;cursor:default}.btn.ghost{background:transparent;color:var(--fg-dim)}.btn.danger{border-color:var(--sev-4);color:var(--sev-4);background:transparent}.row-check{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--fg-dim)}.modal-actions{display:flex;gap:8px}.src-edit{display:grid;gap:12px;max-width:520px}.admin-tag{color:var(--warn)}.viewer-toggle{position:fixed;right:16px;bottom:16px;z-index:var(--z-map-overlay, 5);display:flex;gap:6px;align-items:center;height:var(--h-control, 28px);padding:0 12px;background:var(--bg-raise);color:var(--fg-dim);border:1px solid var(--line-hi);border-radius:var(--r-m, 3px);cursor:pointer}.viewer-toggle[aria-pressed=true]{color:var(--focus);border-color:var(--focus)}.viewer-panel{position:fixed;right:16px;bottom:52px;width:min(440px,92vw);max-height:70vh;display:flex;flex-direction:column;background:var(--bg-shell);border:1px solid var(--focus);border-radius:var(--r-m, 3px);z-index:var(--z-map-overlay, 5)}.viewer-head{display:flex;gap:10px;align-items:baseline;padding:10px 12px;border-bottom:1px solid var(--line)}.viewer-head .icon-btn{margin-left:auto}.viewer-body{overflow:auto;padding:10px 12px;display:grid;gap:8px}.viewer-card{border:1px solid var(--line);border-left:3px solid;border-radius:var(--r-s, 2px);padding:8px 10px;background:var(--bg-raise);font-size:12px}.viewer-card p{margin:6px 0 0}.viewer-card-head{display:flex;gap:8px;align-items:center}.viewer-json{font-size:10px;overflow:auto;max-height:200px;background:var(--bg-sunken);padding:6px;border-radius:var(--r-s, 2px)}.drawer-subheader{border-top:1px solid var(--line);margin-top:10px;padding-top:8px;font-size:11px;color:var(--fg-mute);text-transform:uppercase;letter-spacing:.08em}.cleared-src{color:var(--fg-mute);font-size:11px;margin-top:2px}.tl{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px}.tl-item{display:flex;gap:8px;font-size:12px}.tl-time{color:var(--fg-mute)}.import-open{margin-top:10px}.import-box{margin-top:12px;border:1px solid var(--line-hi);border-radius:var(--r-m, 3px);padding:12px;background:var(--bg-sunken);display:grid;gap:8px;max-width:460px}.import-head{display:flex;justify-content:space-between;align-items:center}.import-file{display:flex;gap:8px;align-items:center;cursor:pointer;padding:8px 10px;border:1px dashed var(--line-hi);border-radius:var(--r-s, 2px);color:var(--fg-dim);font-size:12px}.import-file input{display:none}.import-keys{display:grid;grid-template-columns:1fr 1fr;gap:8px}.import-keys label{display:grid;gap:4px;font-size:12px;color:var(--fg-dim)}.layer-switch{display:inline-flex;border:1px solid var(--line-hi);border-radius:var(--r-m, 3px);overflow:hidden}.layer-switch button{height:var(--h-control, 28px);padding:0 12px;background:var(--bg-raise);color:var(--fg-dim);border:none;cursor:pointer;font-size:12px}.layer-switch button.active{background:var(--bg-hover);color:var(--fg)}.layer-switch button+button{border-left:1px solid var(--line)}.freshness{display:inline-flex;gap:8px;align-items:center;font-size:12px;color:var(--fg-dim)}.freshness input[type=range]{width:120px}.about-link{color:var(--fg-mute);font-size:var(--fs-m, 12px);text-decoration:none;white-space:nowrap}.about-link:hover{color:var(--fg-dim)}.notice-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal, 100);background:#0b0c0eb8;display:flex;align-items:center;justify-content:center}.notice-box{background:var(--bg-raise);border:1px solid var(--line);border-radius:var(--r-l, 4px);max-width:440px;margin:16px;padding:16px 20px}.notice-box h2{margin:0 0 8px;font-size:var(--fs-l, 15px);font-weight:600}.notice-box p{margin:0 0 8px;font-size:var(--fs-base, 13px);color:var(--fg-dim);line-height:1.5}.notice-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.notice-actions a{color:var(--fg-dim);font-size:var(--fs-m, 12px)}.notice-actions button{height:var(--h-control, 28px);padding:0 16px;background:var(--bg-hover);color:var(--fg);border:1px solid var(--line-hi);border-radius:var(--r-m, 3px);cursor:pointer;font-size:var(--fs-base, 13px)}.notice-age{margin-left:8px;color:var(--fg-mute);font-size:var(--fs-s, 11px)}.feedback-open{background:none;border:none;cursor:pointer;padding:0}.feedback-form{display:flex;flex-direction:column;gap:8px}.feedback-form input,.feedback-form textarea{padding:6px var(--sp-4, 10px);background:var(--bg-sunken);color:var(--fg);border:1px solid var(--line);border-radius:var(--r-m, 3px);outline:none;font-size:var(--fs-base, 13px);resize:vertical}.feedback-form input::placeholder,.feedback-form textarea::placeholder{color:var(--fg-mute)}.feedback-form input:focus,.feedback-form textarea:focus{border-color:var(--focus)}.feedback-error{color:var(--sev-4, #e05252)}.feedback-cancel{background:none!important;border:none!important;color:var(--fg-mute)!important;padding:0!important}.feedback-list{display:flex;flex-direction:column;gap:var(--sp-3);overflow-y:auto}.feedback-item{border:1px solid var(--line);border-radius:var(--r-m, 3px);padding:8px 12px}.feedback-item.unread{border-color:var(--focus)}.feedback-item .fb-head{display:flex;gap:var(--sp-3);align-items:baseline;margin-bottom:4px}.feedback-item .fb-topic{font-weight:600}.feedback-item .fb-meta{color:var(--fg-mute);font-size:var(--fs-s, 11px);margin-left:auto;white-space:nowrap}.feedback-item .fb-body{color:var(--fg-dim);white-space:pre-wrap;font-size:var(--fs-base, 13px);line-height:1.5}.feedback-item .fb-read{margin-top:6px}.legend-note{margin-top:8px;padding-top:8px;border-top:1px solid var(--line);color:var(--fg-mute);font-size:var(--fs-s, 11px);max-width:240px}@media(max-width:768px){:root{--h-control: 36px}html,body{overscroll-behavior-y:none}.app{height:100dvh}button{touch-action:manipulation}.topbar-m{flex-wrap:wrap;padding:calc(var(--sp-3) + env(safe-area-inset-top)) var(--sp-4) var(--sp-3);row-gap:var(--sp-3)}.tb-row{display:flex;align-items:center;gap:var(--sp-3);width:100%;min-width:0}.topbar-m .brand-sub{display:none}.live-dot{width:7px;height:7px;border-radius:50%;align-self:center;flex-shrink:0}.live-dot.ok{background:var(--ok)}.live-dot.dead{background:var(--sev-4)}.tb-search .search-box{flex:1;width:auto}.tb-search .search-box input,.feedback-form input,.feedback-form textarea{font-size:16px}.search-results{max-height:50dvh}.tb-filters{overflow-x:auto;scrollbar-width:none}.tb-filters::-webkit-scrollbar{display:none}.tb-filters .filters{flex-wrap:nowrap}.tb-filters .freshness{width:100%}.tb-filters .freshness input[type=range]{flex:1;width:auto}.topbar-m .selected-info{width:100%;max-width:none}.topbar-m .selected-info span{flex:1;min-width:0}.topbar-m .selected-info button{margin-left:auto;flex-shrink:0}.menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-panel);background:color-mix(in srgb,var(--bg-void) 45%,transparent)}.mobile-menu{position:fixed;top:calc(var(--sp-4) + env(safe-area-inset-top));right:var(--sp-4);z-index:var(--z-panel);min-width:240px;display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-3);background:var(--bg-raise);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--shadow)}.mobile-menu .status-chip{justify-content:center;margin-bottom:var(--sp-2);cursor:default}.menu-item{display:flex;align-items:center;min-height:var(--h-row);padding:0 var(--sp-5);background:none;border:none;border-radius:var(--r-m);color:var(--fg);font-size:var(--fs-base);text-align:left;text-decoration:none;cursor:pointer}.menu-item:hover,.menu-item:active{background:var(--bg-hover)}.situation-btn{position:absolute;left:50%;transform:translate(-50%);bottom:calc(var(--sp-5) + env(safe-area-inset-bottom));z-index:var(--z-legend);display:flex;align-items:center;gap:var(--sp-3);height:40px;padding:0 var(--sp-6);background:var(--bg-shell);color:var(--fg);border:1px solid var(--line-hi);border-radius:var(--r-l);box-shadow:var(--shadow);font-size:var(--fs-base);font-weight:500;white-space:nowrap;cursor:pointer}.situation-btn .num{color:var(--fg-dim)}.sit-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-panel);background:color-mix(in srgb,var(--bg-void) 45%,transparent)}.mobile-sheet{position:absolute;left:0;right:0;bottom:0;height:min(65dvh,calc(100% - var(--sp-6)));z-index:var(--z-panel);display:flex;flex-direction:column;background:var(--bg-shell);border-top:1px solid var(--line-hi);border-radius:var(--r-l) var(--r-l) 0 0;box-shadow:0 -8px 24px #00000073;padding-bottom:env(safe-area-inset-bottom)}.sheet-grip{flex-shrink:0;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer}.sheet-grip:before{content:"";width:36px;height:4px;border-radius:2px;background:var(--line-hi)}.mobile-sheet .incident-panel{width:100%;flex:1;min-height:0;border-right:none;background:transparent}.drawer.drawer-overlay{top:auto;left:0;width:100%;height:min(58dvh,calc(100% - var(--sp-7)));border-left:none;border-top:1px solid var(--line-hi);border-radius:var(--r-l) var(--r-l) 0 0;box-shadow:0 -8px 24px #00000073;padding-bottom:env(safe-area-inset-bottom)}.drawer.drawer-overlay:before{content:"";display:block;flex-shrink:0;width:36px;height:4px;margin:var(--sp-3) auto var(--sp-1);border-radius:2px;background:var(--line-hi)}.drawer-header{height:40px;flex-shrink:0}.legend{left:var(--sp-4);bottom:calc(64px + env(safe-area-inset-bottom))}.legend-body{max-width:calc(100vw - 2 * var(--sp-4));max-height:55dvh;overflow-y:auto}.region-banners{width:calc(100% - 72px);max-width:none}.region-banner{height:auto;min-height:34px;padding:var(--sp-2) var(--sp-4)}.region-banner strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.stack-popup{left:var(--sp-4)!important;right:var(--sp-4);top:auto!important;bottom:calc(64px + env(safe-area-inset-bottom));width:auto;max-height:45dvh;overflow-y:auto}.notice-overlay{padding:var(--sp-4)}.notice-box{max-height:calc(100dvh - 2 * var(--sp-7));overflow-y:auto}}
