@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=Manrope:wght@400;500;600;700;800&display=swap";.brand-mark[data-v-adc9166e]{width:34px;height:34px;display:grid;grid-template-columns:repeat(2,1fr);gap:3px;transform:rotate(45deg)}.brand-mark span[data-v-adc9166e]{border-radius:2px;background:var(--accent);box-shadow:0 0 18px color-mix(in srgb,var(--accent),transparent 55%)}.brand-mark span[data-v-adc9166e]:nth-child(2),.brand-mark span[data-v-adc9166e]:nth-child(3){opacity:.58}.brand-mark span[data-v-adc9166e]:nth-child(4){opacity:.22}:root{--bg: #080a0e;--surface: #101318;--surface-2: #15191f;--surface-3: #1a1f26;--line: #252b33;--line-soft: #1c2128;--text: #f1f4f7;--muted: #858d98;--accent: #c8ff2f;--accent-soft: rgba(200, 255, 47, .12);--danger: #ff4d5e;--warning: #f0b84b;--positive: #65dc96;--radius: 4px;font-family:Manrope,system-ui,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}.brand{display:flex;align-items:center;gap:14px;letter-spacing:.08em;font-size:15px;font-weight:700;white-space:nowrap}.brand b{color:var(--accent)}.brand small{border-left:1px solid var(--line);padding-left:16px;color:var(--muted);font:10px IBM Plex Mono;letter-spacing:.14em}.eyebrow{color:var(--muted);font:600 10px IBM Plex Mono;letter-spacing:.2em}.eyebrow i{display:inline-block;width:18px;height:1px;margin:0 8px 3px 0;background:var(--accent)}.login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;position:relative;overflow:hidden;background:#090b0f}.login-grid{position:absolute;inset:0 50% 0 0;opacity:.17;pointer-events:none;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:52px 52px;-webkit-mask-image:linear-gradient(to bottom right,#000,transparent 82%);mask-image:linear-gradient(to bottom right,#000,transparent 82%)}.login-aside{min-height:100vh;padding:clamp(30px,5vw,76px);display:flex;flex-direction:column;position:relative;border-right:1px solid var(--line)}.aside-copy{margin:auto 0 8vh;max-width:670px}.aside-copy h1{margin:22px 0;font-size:clamp(52px,6vw,92px);line-height:.96;letter-spacing:-.065em;font-weight:700}.aside-copy h1 em{color:var(--accent);font-style:normal}.aside-copy p{max-width:540px;color:var(--muted);font-size:16px;line-height:1.75}.terminal-card{width:min(100%,520px);border:1px solid var(--line);background:#101318b8;padding:16px 18px;font:10px IBM Plex Mono;letter-spacing:.08em}.terminal-card>div{display:flex;gap:14px;padding-bottom:12px;border-bottom:1px solid var(--line-soft)}.terminal-card>div span{color:var(--muted)}.terminal-card>div b{color:var(--accent);font-weight:500}.terminal-card p{display:inline-flex;align-items:center;gap:8px;color:var(--muted);margin:14px 24px 0 0}.terminal-card i,.system-state i,.feed-head p i{width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent)}.version{margin-top:24px;color:#505761;font:9px IBM Plex Mono;letter-spacing:.15em}.login-panel{display:grid;place-items:center;padding:36px;background:radial-gradient(circle at 70% 30%,rgba(200,255,47,.035),transparent 34%)}.login-card{width:min(100%,430px)}.login-card-head{margin-bottom:42px}.login-card h2{margin:13px 0 9px;font-size:34px;letter-spacing:-.04em}.login-card-head p{color:var(--muted);margin:0;font-size:14px}.login-card label{display:block;margin:20px 0}.login-card label>span,.filter-panel label>span{display:block;margin-bottom:9px;color:var(--muted);font:600 9px IBM Plex Mono;letter-spacing:.16em}input,select{width:100%;height:48px;padding:0 15px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);outline:none;transition:.2s ease}input:focus,select:focus{border-color:#768f39;box-shadow:0 0 0 3px var(--accent-soft)}.primary-button{margin-top:14px;width:100%;height:52px;border:0;border-radius:var(--radius);padding:0 18px;display:flex;align-items:center;justify-content:space-between;background:var(--accent);color:#0b0d0b;font-weight:800}.primary-button:hover{filter:brightness(1.08)}.primary-button:disabled{opacity:.65}.form-error{color:#ff8894;font-size:13px}.secure-note{margin-top:18px;text-align:center;color:#59616b;font:9px IBM Plex Mono;letter-spacing:.08em}.secure-note span{color:var(--accent)}.dashboard-shell{min-height:100vh;background:var(--bg)}.topbar{height:72px;padding:0 clamp(20px,4vw,64px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);background:#080a0eeb;position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.system-state{display:flex;align-items:center;gap:9px;color:var(--accent);font:9px IBM Plex Mono;letter-spacing:.14em}.top-actions{display:flex;align-items:center;justify-content:flex-end;gap:15px}.icon-button{width:36px;height:36px;border:1px solid var(--line);color:var(--muted);background:transparent;font-size:18px}.user-block{padding-left:16px;border-left:1px solid var(--line);display:grid;text-align:right;font-size:11px}.user-block small{color:var(--muted);margin-top:3px;font:8px IBM Plex Mono;letter-spacing:.12em}.logout-button{background:transparent;color:var(--muted);border:0;font-size:11px}.dashboard{max-width:1500px;margin:auto;padding:46px clamp(20px,4vw,64px) 80px}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:34px}.page-heading h1{font-size:clamp(35px,4vw,54px);margin:10px 0 5px;letter-spacing:-.055em}.page-heading p{color:var(--muted);margin:0;font-size:13px}.refresh-state{display:flex;align-items:center;gap:12px;color:var(--muted)}.refresh-state>span{font-size:22px}.refresh-state div{display:grid;gap:4px}.refresh-state small{font:8px IBM Plex Mono;letter-spacing:.1em}.refresh-state b{color:var(--text);font-size:11px;font-weight:500}.spinning{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.stat-card{min-height:150px;padding:19px 21px;background:var(--surface);border:1px solid var(--line);border-top:2px solid #39414a}.stat-card.tone-high{border-top-color:var(--danger)}.stat-card.tone-mid{border-top-color:var(--warning)}.stat-card.tone-low{border-top-color:var(--positive)}.stat-top{display:flex;align-items:center;gap:9px;color:var(--muted);font:600 9px IBM Plex Mono;letter-spacing:.13em}.stat-dot{width:6px;height:6px;background:#5b636d}.tone-high .stat-dot{background:var(--danger)}.tone-mid .stat-dot{background:var(--warning)}.tone-low .stat-dot{background:var(--positive)}.trend{margin-left:auto;padding:4px 6px;background:var(--surface-3);font-size:8px}.stat-card>strong{display:block;font:500 42px IBM Plex Mono;margin:20px 0 2px;letter-spacing:-.08em}.stat-card>p{margin:0;color:#59616a;font-size:10px}.top-coins{display:flex;gap:7px;margin-top:27px}.top-coins>span{flex:1;min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;padding:8px;border:1px solid var(--line-soft)}.top-coins i{color:#555d67;font:8px IBM Plex Mono;font-style:normal}.top-coins b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 12px IBM Plex Mono}.top-coins small{flex:none;color:var(--accent);font:9px IBM Plex Mono}.top-coins p{color:var(--muted)}.filter-panel{display:flex;align-items:flex-end;gap:12px;padding:17px 20px;background:var(--surface);border:1px solid var(--line);margin-bottom:16px}.filter-title{display:flex;gap:10px;align-items:center;min-width:150px;margin-right:4px;padding-bottom:5px}.filter-title>span{color:var(--accent);font-size:20px}.filter-title div{display:grid;gap:3px}.filter-title b{font:600 9px IBM Plex Mono;letter-spacing:.14em}.filter-title small{color:var(--muted);font-size:9px}.filter-panel label{min-width:130px;flex:1}.filter-panel input,.filter-panel select{height:38px;font-size:11px;background:var(--bg)}.filter-panel button{height:38px;padding:0 16px;border-radius:var(--radius);font-size:10px;font-weight:700}.apply-button{color:#0b0d0b;background:var(--accent);border:1px solid var(--accent)}.reset-button{color:var(--muted);background:transparent;border:1px solid var(--line)}.feed-panel{background:var(--surface);border:1px solid var(--line)}.feed-head{min-height:64px;padding:0 21px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.feed-head>div{display:flex;align-items:center;gap:12px}.feed-head h2{font-size:15px;margin:0}.feed-head>div span{color:var(--muted);font:9px IBM Plex Mono;padding:4px 7px;background:var(--surface-3)}.feed-head p{display:flex;align-items:center;gap:8px;color:var(--accent);font:8px IBM Plex Mono;letter-spacing:.15em}.signal-list{padding:0 10px}.signal-row{position:relative;min-height:105px;display:grid;grid-template-columns:108px minmax(300px,1fr) 115px 130px;align-items:center;gap:20px;padding:17px 18px;border-bottom:1px solid var(--line-soft);transition:background .15s}.signal-row:hover{background:var(--surface-2)}.signal-row.is-high{background:linear-gradient(90deg,rgba(255,77,94,.07),transparent 24%)}.impact-stripe{display:none;position:absolute;left:0;top:12px;bottom:12px;width:2px;background:var(--danger);box-shadow:0 0 9px #ff4d5e99}.is-high .impact-stripe{display:block}.signal-time{display:grid;gap:7px;color:var(--muted);font:9px IBM Plex Mono}.signal-time small{width:fit-content;padding:3px 6px;text-transform:uppercase;color:#6c747f;background:var(--surface-3);font-size:7px}.is-high .signal-time small{color:#ff7e8a;background:#ff4d5e1f}.signal-meta{display:flex;align-items:center;gap:9px}.coin-badge,.market-badge{display:inline-block;min-width:46px;padding:4px 7px;color:#10130c;background:var(--accent);font:700 9px IBM Plex Mono;text-align:center}.market-badge{color:var(--muted);background:var(--surface-3)}.category{color:var(--muted);font:9px IBM Plex Mono;text-transform:uppercase}.signal-main p{max-width:760px;margin:10px 0 0;font-size:12px;line-height:1.6;color:#c8cdd3}.badge-with-tooltip{position:relative;display:inline-flex;align-items:center;outline:none;cursor:help}.badge-with-tooltip:focus-visible{box-shadow:0 0 0 2px var(--accent-soft)}.badge-tooltip{position:absolute;z-index:30;left:0;bottom:calc(100% + 11px);width:255px;padding:12px 13px;display:grid;gap:7px;color:#cbd1d7;background:#181d23;border:1px solid #343c46;border-radius:3px;box-shadow:0 12px 30px #0006;font:10px/1.45 Manrope,sans-serif;text-transform:none;letter-spacing:0;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease,visibility .15s}.badge-tooltip:after{content:"";position:absolute;left:16px;top:100%;border:6px solid transparent;border-top-color:#343c46}.badge-tooltip strong{color:var(--text);font:700 10px IBM Plex Mono;text-transform:uppercase;letter-spacing:.08em}.badge-tooltip small{color:#747d87;font-size:9px}.badge-with-tooltip:hover .badge-tooltip,.badge-with-tooltip:focus .badge-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.category-tooltip{width:305px}.tooltip-variants{display:flex;flex-wrap:wrap;gap:4px}.tooltip-variants i{padding:3px 5px;color:#9099a4;background:#20262d;border:1px solid #2a323a;font:500 8px IBM Plex Mono;font-style:normal;text-transform:uppercase}.news-source-link,.news-source-label{display:inline-flex;align-items:center;gap:6px;margin-left:3px;padding-left:10px;border-left:1px solid var(--line);color:#7f8893;font:500 8px IBM Plex Mono;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;transition:color .15s ease}.news-source-link b{display:grid;place-items:center;width:18px;height:18px;color:var(--accent);background:var(--accent-soft);border:1px solid rgba(200,255,47,.2);font:700 11px IBM Plex Mono;transition:background .15s ease,transform .15s ease}.news-source-link:hover{color:var(--text)}.news-source-link:hover b{background:#c8ff2f33;transform:translate(1px,-1px)}.news-source-link:focus-visible{outline:2px solid var(--accent-soft);outline-offset:3px}.sentiment{display:flex;align-items:center;gap:9px}.sentiment-glyph{font:20px IBM Plex Mono}.sentiment div{display:grid;gap:3px}.sentiment strong{font:600 14px IBM Plex Mono}.sentiment small,.confidence span{color:var(--muted);font:7px IBM Plex Mono;text-transform:uppercase;letter-spacing:.1em}.sentiment-positive{color:var(--positive)}.sentiment-negative{color:var(--danger)}.sentiment-neutral{color:var(--warning)}.confidence{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center}.confidence-track{grid-column:1;height:3px;background:#292f36}.confidence-track i{display:block;height:100%;background:#77808a}.confidence small{grid-column:2;grid-row:2;color:var(--muted);font:8px IBM Plex Mono}.state-message{padding:70px 20px;text-align:center;color:var(--muted)}.error-state{color:#ff8894}.pagination{padding:15px 20px;display:flex;justify-content:flex-end;align-items:center;gap:13px;border-top:1px solid var(--line);color:var(--muted);font:9px IBM Plex Mono}.pagination button{padding:7px 10px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);font-size:10px}.pagination button:disabled{opacity:.35;cursor:default}.metric-with-tooltip{position:relative;outline:none;cursor:help}.metric-with-tooltip:focus-visible{box-shadow:0 0 0 2px var(--accent-soft)}.metric-with-tooltip:hover .badge-tooltip,.metric-with-tooltip:focus .badge-tooltip{opacity:1;visibility:visible;transform:translateY(0)}.metric-tooltip{left:50%;bottom:calc(100% + 13px);width:285px;transform:translate(-50%,4px);color:#cbd1d7}.metric-with-tooltip:hover .metric-tooltip,.metric-with-tooltip:focus .metric-tooltip{transform:translate(-50%)}.metric-tooltip:after{left:50%;transform:translate(-50%)}.metric-tooltip>span{color:#cbd1d7;font:10px/1.45 Manrope,sans-serif;text-transform:none;letter-spacing:0}.tooltip-scale{display:grid;gap:4px}.tooltip-scale i{padding:5px 7px;color:#9099a4;background:#20262d;border-left:2px solid #68717b;font:500 8px IBM Plex Mono;font-style:normal;text-transform:uppercase}.tooltip-scale .scale-negative{border-left-color:var(--danger)}.tooltip-scale .scale-neutral{border-left-color:var(--warning)}.tooltip-scale .scale-positive{border-left-color:var(--positive)}.confidence-tooltip{left:auto;right:0;transform:translateY(4px)}.confidence-with-tooltip:hover .confidence-tooltip,.confidence-with-tooltip:focus .confidence-tooltip{transform:translateY(0)}.confidence-tooltip:after{left:auto;right:18px;transform:none}@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.filter-panel{flex-wrap:wrap}.filter-title{width:100%}.filter-panel label{flex-basis:28%}.signal-row{grid-template-columns:90px 1fr 100px}.confidence{display:none}}@media(max-width:760px){.login-page{grid-template-columns:1fr}.login-aside{display:none}.login-panel{min-height:100vh;padding:25px}.topbar{grid-template-columns:1fr auto;padding:0 16px}.system-state,.user-block,.brand small{display:none}.top-actions{gap:5px}.dashboard{padding:30px 14px 50px}.page-heading{align-items:flex-start}.refresh-state{display:none}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{min-height:128px;padding:15px}.stat-card>strong{font-size:32px}.top-coins-card{grid-column:1 / -1}.filter-panel{padding:15px}.filter-panel label{flex-basis:45%}.signal-list{padding:0}.signal-row{grid-template-columns:1fr auto;gap:12px;padding:17px 14px}.signal-time{grid-column:1 / -1;display:flex}.sentiment{align-self:end}.confidence{display:none}.signal-main p{font-size:11px}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr}.top-coins-card{grid-column:auto}.filter-panel label{flex-basis:100%}.apply-button,.reset-button{flex:1}}
