:root{--bg: #0b0d10;--bg-soft: #101318;--panel: #141821;--text: #e5e7eb;--muted: #94a3b8;--primary: #7dd3fc;--accent: #a78bfa;--danger: #fca5a5;--border: #253042;--pill-high: #22c55e;--pill-med: #f59e0b;--pill-low: #ef4444;--radius-sm: 8px;--radius-md: 10px;--radius-lg: 12px;--space-1: 4px;--space-2: 6px;--space-3: 8px;--space-4: 10px;--space-5: 12px;--space-6: 16px;--shadow-1: 0 1px 2px rgba(0,0,0,.35);--shadow-2: 0 10px 30px rgba(0,0,0,.4)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,Noto Sans,"Apple Color Emoji","Segoe UI Emoji"}.app a{color:inherit;text-decoration:none}.app a:visited{color:inherit}.app a:focus{outline:none}.app a:hover{text-decoration:none}.container{max-width:1200px;margin:0 auto;padding:12px 16px}.container-wide{max-width:none;width:100%}.row{display:flex}.wrap{flex-wrap:wrap}.gap{gap:8px}.start{align-items:flex-start}.space-between{justify-content:space-between}.center{align-items:center}.muted{color:var(--muted)}.btn{background:var(--panel);border:1px solid var(--border);padding:6px 10px;border-radius:var(--radius-sm);color:var(--text);cursor:pointer}.btn:hover{border-color:var(--primary)}.btn.primary{background:linear-gradient(180deg,#0ea5e9,#0369a1);border-color:#0ea5e9}.btn.small{padding:4px 8px;font-size:12px}.input{background:var(--panel);border:1px solid var(--border);color:var(--text);padding:6px 8px;border-radius:var(--radius-sm)}.header{border-bottom:1px solid var(--border);background:var(--bg-soft);position:sticky;top:28px;z-index:20;min-height:64px}.header .container{align-items:center}.brand-link{color:var(--text);text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:12px;vertical-align:middle;padding:6px 8px;height:100%}.brand-logo{width:48px;height:48px;display:block;border-radius:8px;object-fit:cover;box-shadow:0 12px 40px #000000bf;border:1px solid rgba(255,255,255,.05);background:radial-gradient(circle at 30% 30%,rgba(125,211,252,.04),transparent);padding:2px;filter:contrast(1.08) saturate(1.12) drop-shadow(0 10px 24px rgba(0,0,0,.6));transform:translateY(0)}.brand-text{font-weight:600;line-height:1;font-size:16px;display:inline-block;color:var(--text);margin-left:6px;margin-top:2px}.nav a{color:var(--muted);text-decoration:none;margin-left:12px}.nav a.active{color:var(--text)}.nav a.disabled{opacity:.4;pointer-events:none}.menu-btn{display:none;background:transparent;border:0;color:var(--text);font-size:20px}.ticker{position:fixed;top:0;left:0;right:0;z-index:30;height:28px;border-bottom:1px solid var(--border);background:#0a0c0f;overflow:hidden}.ticker-viewport{height:100%;overflow:hidden}.ticker-track{display:inline-flex;gap:24px;white-space:nowrap;align-items:center;height:100%;font-size:12px;color:var(--muted);animation:ticker-scroll 40s linear infinite}.ticker:hover .ticker-track{animation-play-state:paused}.ticker-item{opacity:.9}@keyframes ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.up{color:var(--pill-high)}.down{color:var(--pill-low)}.ticker a{text-decoration:none}.ticker a.up{color:var(--pill-high)}.ticker a.down{color:var(--pill-low)}.hero{padding:40px 0}.actions{display:flex;gap:10px;margin-top:16px}.footer{border-top:1px solid var(--border);margin-top:24px;padding:16px 0;color:var(--muted)}.spacer{flex:1}main.container{padding-top:40px}@media (max-width: 640px){.container{padding:10px 12px}.header .container{flex-wrap:wrap}.menu-btn{display:block}.nav{display:none;flex-direction:column;gap:8px;width:100%;margin-top:8px}.nav.open{display:flex}.nav a{margin:0}th,td{padding:8px;font-size:13px}.controls{gap:8px}.controls .input,.controls select,.controls .btn{flex:1 1 100%}.actions{flex-wrap:wrap}}:root{--pins-sticky-top: 73px }.pinned-sticky{position:sticky;top:var(--pins-sticky-top);z-index:15;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:8px 10px}.pinned-sticky .table-wrap{border:0;box-shadow:none}.pinned-content{max-height:320px;overflow:auto;border-radius:8px}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.segmented button{background:transparent;color:var(--text);border:0;padding:6px 12px}.segmented button.active{background:var(--panel)}.controls{margin:12px 0}.collapsible{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--panel)}.collapsible .head{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:10px 12px;cursor:pointer;background:transparent;border:0;color:var(--text);width:100%;text-align:left}.collapsible .head:hover{background:#94a3b814}.collapsible .caret{display:inline-block;transform:rotate(0);transition:transform .2s ease;color:var(--muted)}.collapsible.open .caret{transform:rotate(90deg)}.collapsible .body{max-height:0;opacity:0;overflow:hidden;transition:max-height .25s ease,opacity .25s ease;padding:0 12px}.collapsible.open .body{max-height:400px;opacity:1;padding:10px 12px;border-top:1px solid var(--border)}.table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--panel)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:10px;border-bottom:1px solid var(--border);font-size:14px}th{background:#0f141d;text-align:left}.th-btn{background:transparent;border:0;color:var(--text);cursor:pointer;font:inherit;display:flex;gap:6px;align-items:center}.sort-indicator{color:var(--muted)}.item-cell{display:flex;gap:10px;align-items:center}.item-cell img{width:28px;height:28px;border-radius:4px;background:#0b0f15;border:1px solid var(--border)}.item-name{font-weight:600}.item-sub{color:var(--muted);font-size:12px}.icon-btn{background:transparent;border:0;color:var(--muted);cursor:pointer;margin-right:6px}.icon-btn.active{color:var(--text)}.icon-btn:hover{color:var(--primary)}.skeleton .sk{height:12px;background:linear-gradient(90deg,#1b2230,#2a364a,#1b2230);border-radius:6px;animation:shimmer 1.2s infinite;background-size:200% 100%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty{text-align:center;color:var(--muted)}.table-meta{padding:8px 12px;color:var(--muted)}.pagination{margin:12px 0;gap:8px}.pill{padding:2px 8px;border-radius:999px;font-weight:700;font-size:12px;display:inline-block}.pill.high{background:#22c55e26;color:var(--pill-high);border:1px solid rgba(34,197,94,.5)}.pill.med{background:#f59e0b26;color:var(--pill-med);border:1px solid rgba(245,158,11,.5)}.pill.low{background:#ef444426;color:var(--pill-low);border:1px solid rgba(239,68,68,.5)}.pill{white-space:nowrap;flex-shrink:0}.badge{display:inline-block;font-size:10px;padding:1px 6px;border-radius:999px;border:1px solid var(--border);color:var(--muted);margin-left:6px}.error-banner{background:#ef44441a;border:1px solid rgba(239,68,68,.5);padding:8px 12px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;margin:8px 0}.error-banner.flash{animation:flashwarn 1s ease-in-out 0s 6 alternate}@keyframes flashwarn{0%{opacity:1}to{opacity:.35}}.notice{background:#7dd3fc14;border:1px solid rgba(125,211,252,.35);padding:8px 12px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;margin:8px 0;color:var(--muted);gap:8px;flex-wrap:wrap}.promo-banner{margin-top:12px}.cookie-banner{position:fixed;left:0;right:0;bottom:0;background:#0f141d;border-top:1px solid var(--border);z-index:40;padding:10px 0}.cookie-banner .btn{white-space:nowrap}@media (max-width: 720px){.flips .table-wrap .table{display:none}.flips .mobile-cards{display:grid}}@media (min-width: 721px){.flips .mobile-cards{display:none}}.cards{display:grid;grid-template-columns:1fr;gap:10px}.alerts .cards{grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}@media (min-width: 1440px){.alerts .cards{grid-template-columns:repeat(auto-fill,minmax(420px,1fr))}}.card{border:1px solid var(--border);background:var(--panel);border-radius:var(--radius-lg);overflow:hidden}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;background:transparent;color:var(--text);border:0;padding:10px 12px;text-align:left;cursor:pointer}.card-head:hover{background:#94a3b814}.card-head>.row:first-child{flex:0 0 auto;min-width:max-content}.card-head>.row:last-child{flex:1 1 auto;min-width:0;justify-content:flex-end}.card-head>.row:last-child img{flex:0 0 auto}.card-head>.row:last-child .item-name{flex:1 1 auto;overflow:visible;text-overflow:unset;white-space:normal;word-break:break-word}.dot{width:8px;height:8px;border-radius:50%}.dot.green{background:#22c55e}.dot.yellow{background:#f59e0b}.dot.gray{background:#64748b}.card-body{padding:10px 12px;border-top:1px solid var(--border)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}@media (max-width: 640px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 400px){.grid{grid-template-columns:1fr}}.field .small{font-size:11px}.field .val{font-weight:600}.why,.detail{margin-top:8px}.qty-badge{display:inline-block;padding:3px 10px;border-radius:999px;border:1px solid var(--primary);background:#7dd3fc1f;color:var(--text);font-weight:700;font-size:13px;line-height:1}.grid-full{grid-column:1 / -1}.section-label{grid-column:1 / -1;color:var(--muted);font-size:11px;margin-top:4px}.section-gap{grid-column:1 / -1;height:4px}.field .small{display:block;margin-bottom:2px}.field .val{display:flex;align-items:center;gap:6px;min-height:20px}.field.highlight .small{margin-bottom:6px}.note details{margin-top:6px}.note summary{cursor:pointer;color:var(--muted);font-size:12px}.note ul{margin:6px 0 0 16px;padding:0;color:var(--muted);font-size:12px}.note li{margin:4px 0}@media (min-width: 720px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1040px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}.mobile-cards{gap:10px}.flip-card{border:1px solid var(--border);background:var(--panel);border-radius:var(--radius-lg);padding:10px}.flip-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.flip-item{display:flex;gap:10px;align-items:center;min-width:0}.flip-item img{width:28px;height:28px;border-radius:4px;border:1px solid var(--border)}.flip-item .item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flip-actions{display:flex;gap:6px;flex:0 0 auto}.flip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media (max-width: 400px){.flip-grid{grid-template-columns:1fr}}.flip-field .label{color:var(--muted);font-size:12px;display:block;margin-bottom:2px}.flip-field .val{font-weight:600}@media (max-width: 640px){.recharts-responsive-container{height:260px!important}}.skip{position:absolute;left:-9999px;top:-9999px}.skip:focus{left:12px;top:12px;z-index:60;background:var(--panel);border:1px solid var(--border);padding:6px 10px;border-radius:var(--radius-sm);color:var(--text)}:root{--focus:#38bdf8;--ring:2px }.btn:focus-visible,.input:focus-visible,.th-btn:focus-visible,.icon-btn:focus-visible,.menu-btn:focus-visible,.palette-row:focus-visible{outline:var(--ring) solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion: reduce){.ticker-track{animation:none!important}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#02060c99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding:64px 16px;z-index:60}.modal{width:100%;max-width:640px;background:var(--bg-soft);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2)}.palette .palette-head{padding:10px 12px;border-bottom:1px solid var(--border);display:grid;gap:6px}.palette .palette-input{width:100%}.palette .palette-body{max-height:50vh;overflow:auto}.palette .palette-row{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:transparent;border:0;color:var(--text);cursor:pointer}.palette .palette-row.active,.palette .palette-row:hover{background:#7dd3fc14}.palette .palette-row img{border-radius:4px;border:1px solid var(--border)}.palette .palette-row .label{flex:1 1 auto;min-width:0}.palette .palette-row .path{font-size:12px}.palette .glyph{width:20px;display:inline-flex;align-items:center;justify-content:center;opacity:.8}.palette .palette-foot{display:flex;align-items:center;gap:6px;padding:8px 12px;border-top:1px solid var(--border)}kbd{background:#0f141d;border:1px solid var(--border);border-bottom-color:#111827;border-radius:6px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px;color:var(--muted)}:root[data-theme=light]{--bg: #f8fafc;--bg-soft: #ffffff;--panel: #ffffff;--text: #0b1220;--muted: #475569;--border: #d4dbe5;--pill-high: #16a34a;--pill-med: #d97706;--pill-low: #dc2626}:root[data-contrast=high]{--border: #9fb5d4;--muted: #cbd5e1}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:55;background:var(--bg-soft);border-top:1px solid var(--border);display:flex;gap:0}.bottom-nav a,.bottom-nav .ghost{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 4px;color:var(--muted);text-decoration:none;background:transparent;border:0;cursor:pointer}.bottom-nav a.active,.bottom-nav a:focus-visible,.bottom-nav .ghost:focus-visible{color:var(--text)}.bottom-nav .glyph{font-size:16px;line-height:1}.bottom-nav .label{font-size:11px}@media (min-width: 721px){.bottom-nav{display:none}}@media (max-width: 720px){body{padding-bottom:56px}}.alerts-page__pinned{margin-bottom:12px;max-height:260px;overflow:auto}.alerts-page__feed{display:block}.alerts-page__new-banner{position:sticky;top:var(--pins-sticky-top);z-index:14;display:inline-flex;align-items:center;gap:8px;margin:0 0 10px;padding:6px 10px;border-radius:var(--radius-md);border:1px solid var(--border);background:#7dd3fc1a;color:var(--text);box-shadow:var(--shadow-1);cursor:pointer}.alerts-page__new-banner:hover{background:#7dd3fc24;border-color:#7dd3fc59}.alerts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:10px}@media (min-width: 1280px){.alerts-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (min-width: 1600px){.alerts-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (min-width: 1920px){.alerts-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.alert-card--entering{animation:alert-enter .14s ease-out both}@keyframes alert-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.alert-card--entering{animation:none}}.alert-card .item-name{display:inline-block;max-width:100%;white-space:normal;word-break:normal;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.alerts-page__pinned .alert-card .card-body{display:none}.alerts-page__pinned .alert-card.open .card-body{display:block}.alerts-page__pinned .alert-card .card-head{padding:8px 10px}.alerts-page__pinned .alert-card{border-radius:var(--radius-md)}.alert-card .card-head>.row:first-child{flex:0 1 auto;min-width:0}.alert-card .card-head>.row:last-child{flex:1 1 auto;min-width:0;justify-content:flex-end}.alert-card .item-name{min-width:120px}.alert-card .card-head{display:grid;grid-template-columns:max-content 1fr;align-items:center;gap:8px}.alert-card .card-head>.row:last-child{justify-content:flex-start;min-width:0}.alert-card .item-name{min-width:0}.alert-card .card-head{display:flex!important;align-items:center;justify-content:space-between;gap:10px}.alert-card .card-head>.row:first-child{flex:0 0 auto;min-width:max-content}.alert-card .card-head>.row:last-child{flex:1 1 auto;min-width:0;justify-content:flex-start}.alert-card .item-name{display:inline-block;min-width:140px;max-width:100%;white-space:normal;word-break:normal;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.alert-card .card-head>.row:last-child .item-name{flex:1 1 auto;min-width:0;overflow:visible;text-overflow:unset;white-space:normal}.field .small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.field .val{align-items:baseline;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}.alert-card .card-head>.row:last-child{display:flex;align-items:center;gap:8px;min-width:0}.alert-card .card-head>.row:last-child img{flex:0 0 auto}.alert-card .card-head>.row:last-child .item-name{flex:1 1 0%;min-width:0;line-height:1.2}.field .val{align-items:baseline;gap:4px;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}.field .small{white-space:nowrap}
