:root{--ink: #14181f;--ink-elevated: #1d222b;--ink-line: #2a303b;--ink-text: #e8e6df;--ink-text-muted: #8a8f99;--paper: #f6f3ec;--paper-line: #ddd6c6;--paper-text: #211f1c;--paper-text-muted: #6b6558;--wire-red: #b3261e;--wire-red-soft: rgba(179, 38, 30, .12);--font-display: "Fraunces", Georgia, serif;--font-ui: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color-scheme:light dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-ui);color:var(--paper-text);background:var(--paper);-webkit-font-smoothing:antialiased}a{color:inherit}button{font-family:inherit;cursor:pointer}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--ink);padding:24px}.login-card{width:100%;max-width:360px;background:var(--ink-elevated);border:1px solid var(--ink-line);border-radius:4px;padding:36px 32px;display:flex;flex-direction:column;gap:14px}.login-mark{display:flex;align-items:center;gap:8px;font-size:13px;letter-spacing:.02em;color:var(--ink-text-muted)}.login-dot{width:8px;height:8px;border-radius:50%;background:var(--wire-red);flex-shrink:0}.login-card h1{margin:0;font-family:var(--font-display);font-weight:500;font-size:28px;color:var(--ink-text);line-height:1.2}.login-sub{margin:0 0 8px;color:var(--ink-text-muted);font-size:14px}.login-card input{background:var(--ink);border:1px solid var(--ink-line);border-radius:3px;color:var(--ink-text);padding:11px 12px;font-size:15px;font-family:var(--font-ui)}.login-card input:focus-visible{outline:2px solid var(--wire-red);outline-offset:1px}.login-error{color:#e8958f;font-size:13px}.login-card button{background:var(--wire-red);color:#fff;border:none;border-radius:3px;padding:11px 16px;font-size:15px;font-weight:500;margin-top:4px}.login-card button:disabled{opacity:.5;cursor:not-allowed}.login-card button:focus-visible{outline:2px solid var(--ink-text);outline-offset:2px}.app-root{display:flex;flex-direction:column;height:100vh}.app-shell{display:grid;grid-template-columns:280px 1fr;flex:1;min-height:0}.app-shell-loading,.app-shell-error{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--paper-text-muted)}@media (max-width: 760px){.app-shell{grid-template-columns:1fr}}.top-bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px 20px;background:var(--ink);color:var(--ink-text);padding:12px 24px;border-bottom:1px solid var(--ink-line)}.top-bar-brand{font-family:var(--font-display);font-size:16px;font-weight:500;color:var(--ink-text-muted);letter-spacing:.01em;white-space:nowrap}.view-tabs{display:flex;gap:10px;justify-self:center}.view-tab{background:var(--ink-elevated);border:1px solid var(--ink-line);border-radius:8px;color:var(--ink-text-muted);font-size:15px;font-weight:600;padding:11px 22px;white-space:nowrap}.view-tab:hover{color:var(--ink-text);border-color:var(--ink-text-muted)}.view-tab.is-active{background:var(--wire-red);border-color:var(--wire-red);color:#fff;box-shadow:0 2px 10px #b3261e59}.view-tab:focus-visible{outline:2px solid var(--wire-red);outline-offset:2px}.time-window-picker{justify-self:end}@media (max-width: 900px){.top-bar{grid-template-columns:1fr;justify-items:center;text-align:center}.time-window-picker{justify-self:center}}.time-window-picker{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.time-window-pill{background:none;border:1px solid var(--ink-line);border-radius:100px;color:var(--ink-text-muted);font-size:12.5px;padding:5px 12px}.time-window-pill:hover{color:var(--ink-text)}.time-window-pill.is-active{background:var(--wire-red);border-color:var(--wire-red);color:#fff}.custom-range-inputs{display:flex;align-items:center;gap:6px;margin-left:6px;color:var(--ink-text-muted);font-size:12.5px}.custom-range-inputs input{background:var(--ink-elevated);border:1px solid var(--ink-line);border-radius:3px;color:var(--ink-text);padding:4px 6px;font-size:12.5px;font-family:var(--font-ui)}.custom-range-apply{background:var(--wire-red);color:#fff;border:none;border-radius:3px;padding:5px 10px;font-size:12.5px}.side-panel{background:var(--ink);color:var(--ink-text);padding:24px 0;border-right:1px solid var(--ink-line);overflow-y:auto}.side-panel-mast{display:flex;align-items:center;gap:9px;font-family:var(--font-display);font-size:20px;font-weight:500;padding:0 20px;margin-bottom:4px}.side-panel-caption{padding:0 20px;margin:0 0 20px;font-size:12.5px;color:var(--ink-text-muted);line-height:1.5}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--wire-red);flex-shrink:0;animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@media (prefers-reduced-motion: reduce){.live-dot{animation:none}}.side-list,.side-sublist{list-style:none;margin:0;padding:0}.side-item{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:10px;background:none;border:none;border-left:2px solid transparent;color:var(--ink-text);text-align:left;padding:10px 20px;font-size:14.5px}.side-item:hover{background:var(--ink-elevated)}.side-item.is-selected{background:var(--ink-elevated);border-left-color:var(--wire-red)}.side-item:focus-visible{outline:2px solid var(--wire-red);outline-offset:-2px}.side-group-row{display:flex;align-items:center}.side-group-label{flex:1}.side-group-toggle{background:none;border:none;color:var(--ink-text-muted);font-size:15px;width:32px;height:32px;margin-right:8px;border-radius:3px;flex-shrink:0}.side-group-toggle:hover{background:var(--ink-elevated);color:var(--ink-text)}.side-sublist{padding-left:14px}.side-subitem{font-size:13.5px;padding-top:8px;padding-bottom:8px}.side-subitem-empty{padding:8px 20px 8px 34px;color:var(--ink-text-muted);font-size:13px}.content-pane{padding:32px 40px 60px;overflow-y:auto}.empty-state{padding:60px 0;max-width:440px}.empty-state h2{font-family:var(--font-display);font-weight:500;font-size:22px;margin:0 0 8px}.empty-state p{color:var(--paper-text-muted);line-height:1.6;margin:0}.status-block{display:flex;align-items:center;gap:10px;padding:40px 0;color:var(--paper-text-muted)}.status-block-error p{color:var(--wire-red)}.status-block-warning{padding:12px 14px;margin:2px 0 6px;background:var(--wire-red-soft);border-radius:3px}.status-block-warning p{color:var(--paper-text);font-size:13.5px}.results-meta{color:var(--paper-text-muted);font-size:13.5px;margin:0 0 14px}.landing{max-width:620px;padding:40px 0}.landing h2{font-family:var(--font-display);font-weight:500;font-size:26px;margin:0 0 10px}.landing>p{color:var(--paper-text-muted);line-height:1.6;margin:0 0 20px}.landing-list{margin:0;padding-left:20px;line-height:1.7;color:var(--paper-text)}.landing-list li{margin-bottom:12px}.landing-list strong{font-weight:600}.item-table{width:100%;border-collapse:collapse;margin-top:10px;font-size:14.5px}.item-table thead th{text-align:left;font-weight:500;font-size:12.5px;color:var(--paper-text-muted);padding:10px 14px 10px 0;border-bottom:1px solid var(--paper-line)}.item-table tbody tr{border-bottom:1px solid var(--paper-line)}.item-table tbody tr:hover{background:#b3261e0a}.item-table td{padding:13px 14px 13px 0;vertical-align:top}.col-headline{max-width:480px}.headline-link{display:flex;align-items:flex-start;gap:10px;text-decoration:none;color:var(--paper-text)}.headline-link:hover{color:var(--wire-red)}.headline-link:hover span{text-decoration:underline}.headline-thumb{width:40px;height:40px;border-radius:4px;object-fit:cover;flex-shrink:0;background:var(--paper-line)}.col-date,.col-media,.col-category,.col-tags{white-space:nowrap;color:var(--paper-text-muted)}.col-tags{white-space:normal;max-width:280px}.media-chip{background:none;border:none;padding:0;color:var(--paper-text-muted);font-size:13.5px;text-decoration:underline dotted}.media-chip:hover{color:var(--wire-red)}.category-pill{display:inline-block;padding:2px 9px;border:1px solid var(--paper-line);border-radius:100px;font-size:12.5px;color:var(--paper-text);background:#fff}.category-pill-button{cursor:pointer}.category-pill-button:hover{border-color:var(--wire-red);color:var(--wire-red)}.tag-chip-group{display:flex;flex-wrap:wrap;gap:5px}.tag-chip{background:none;border:1px solid var(--paper-line);border-radius:100px;padding:1px 8px;font-size:12px;color:var(--paper-text-muted)}.tag-chip:hover{border-color:var(--wire-red);color:var(--wire-red)}
