:root{--bg:#f4f6f8;--surface:#fff;--surface-2:#f8fafc;--surface-3:#eef2f6;--border:#e3e8ee;--border-2:#cfd7e0;--text:#0f172a;--text-2:#3f4b5b;--muted:#64748b;--dim:#94a3b8;--green:#15803d;--green-soft:#e7f6ec;--green-line:#a7dcb8;--red:#be123c;--red-soft:#fdeaef;--red-line:#f3b6c5;--amber:#a16207;--amber-soft:#fdf4e3;--amber-line:#eccf95;--accent:#2563eb;--accent-2:#1d4ed8;--accent-soft:#eaf0fe;--accent-line:#bdd0fb;--mono:"JetBrains Mono", ui-monospace, "SF Mono", Consolas, monospace;--sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--radius:10px;--radius-sm:6px;--radius-lg:14px;--t:.14s cubic-bezier(.4, 0, .2, 1);--shadow-1:0 1px 2px #0f172a0f, 0 1px 3px #0f172a0a;--shadow-2:0 12px 28px -12px #0f172a47, 0 2px 8px #0f172a0f;--gap:14px;--gap-lg:18px;--sidebar:236px;--topbar:58px}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:13.5px;line-height:1.55}h1,h2,h3,h4{letter-spacing:-.011em;font-weight:600}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.tabular,.num,td.num,th.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.pos,.tone-pos{color:var(--green)}.neg,.tone-neg{color:var(--red)}.warn{color:var(--amber)}.muted{color:var(--muted)}.dim{color:var(--dim)}.section-note{color:var(--muted);font-size:12px;line-height:1.6}.section-note strong{color:var(--text-2);font-weight:600}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-2);background-clip:content-box;border:2px solid #0000;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--dim);background-clip:content-box}button{font:inherit;color:var(--text-2);background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;transition:background var(--t), border-color var(--t), color var(--t), box-shadow var(--t);justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:12.5px;font-weight:500;display:inline-flex}button:hover:not(:disabled){background:var(--surface-3);border-color:var(--dim);color:var(--text)}button:disabled{opacity:.5;cursor:not-allowed}button.sm{padding:4px 9px;font-size:11.5px}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:var(--shadow-1)}button.primary:hover:not(:disabled){background:var(--accent-2);border-color:var(--accent-2);color:#fff}button.danger{color:var(--red);border-color:var(--red-line);background:var(--surface)}button.danger:hover:not(:disabled){background:var(--red-soft);border-color:var(--red);color:var(--red)}button.danger-solid{background:var(--red);border-color:var(--red);color:#fff}button.danger-solid:hover:not(:disabled){color:#fff;background:#9f0f33;border-color:#9f0f33}button.resume{color:var(--green);border-color:var(--green-line);background:var(--surface)}button.resume:hover:not(:disabled){background:var(--green-soft);border-color:var(--green);color:var(--green)}.btn-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.btn-row.end{justify-content:flex-end}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius-sm);transition:border-color var(--t), box-shadow var(--t);padding:7px 10px;font-size:12.5px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}input:disabled,select:disabled,textarea:disabled{background:var(--surface-3);color:var(--muted);cursor:not-allowed}input::placeholder{color:var(--dim)}input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent);cursor:pointer;padding:0}select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round'><path d='M6 9l6 6 6-6'/></svg>");background-position:right 9px center;background-repeat:no-repeat;padding-right:28px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12.5px}thead th{z-index:1;background:var(--surface-2);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:9px 12px;font-size:10.5px;font-weight:600;position:sticky;top:0}th.num,td.num{text-align:right}tbody td{border-bottom:1px solid var(--border);color:var(--text-2);vertical-align:middle;padding:9px 12px}tbody tr:last-child td{border-bottom:none}tbody tr{transition:background var(--t)}tbody tr:hover{background:var(--surface-2)}td.sym{font-family:var(--mono);color:var(--text);letter-spacing:-.01em;font-weight:600}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{grid-template-columns:var(--sidebar) minmax(0, 1fr);background:linear-gradient(to right, var(--surface) var(--sidebar), var(--bg) var(--sidebar));min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);z-index:30;flex-direction:column;height:100vh;display:flex;position:sticky;top:0}.sidebar-brand{height:var(--topbar);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:0 18px;display:flex}.brand-mark{background:var(--accent);color:#fff;letter-spacing:-.02em;border-radius:8px;place-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:grid}.brand-text{flex-direction:column;line-height:1.25;display:flex}.brand-text strong{letter-spacing:-.015em;font-size:14px}.brand-text small{color:var(--muted);letter-spacing:.02em;font-size:10.5px}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:12px 10px;display:flex;overflow-y:auto}.nav-link{border-radius:var(--radius-sm);color:var(--text-2);transition:background var(--t), color var(--t);align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:500;display:flex;position:relative}.nav-link:hover{background:var(--surface-3);color:var(--text);text-decoration:none}.nav-link.active{background:var(--accent-soft);color:var(--accent-2);font-weight:600}.nav-link.active:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:7px;bottom:7px;left:-10px}.nav-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;opacity:.85;flex-shrink:0;width:17px;height:17px}.nav-link.active .nav-icon{opacity:1}.nav-badge{border:1px solid var(--amber-line);background:var(--amber-soft);min-width:18px;color:var(--amber);text-align:center;border-radius:999px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;line-height:17px}.sidebar-foot{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:9px;padding:12px;display:flex}.mode-badge{letter-spacing:.05em;text-transform:uppercase;border-radius:999px;align-self:flex-start;align-items:center;gap:6px;padding:3px 9px;font-size:10.5px;font-weight:700;display:inline-flex}.mode-badge.paper{background:var(--surface-3);color:var(--muted);border:1px solid var(--border)}.mode-badge.live{background:var(--red);color:#fff;border:1px solid var(--red)}.strategy-line{font-family:var(--mono);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.session-control{justify-content:space-between;align-items:center;gap:8px;display:flex}.session-control .who{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}button.sign-out{padding:4px 10px;font-size:11.5px}button.sign-out:hover:not(:disabled){border-color:var(--red-line);color:var(--red);background:var(--red-soft)}.app-main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:20;height:var(--topbar);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);background:#ffffffe0;align-items:center;gap:14px;padding:0 20px;display:flex;position:sticky;top:0}.topbar-title{align-items:center;gap:8px;min-width:0;display:flex}.crumb{color:var(--muted);white-space:nowrap;font-size:13px}.crumb-sep{color:var(--border-2)}.page-title{white-space:nowrap;font-size:13.5px;font-weight:600}.topbar-signals{scrollbar-width:none;align-items:center;gap:16px;margin-left:auto;display:flex;overflow-x:auto}.topbar-signals::-webkit-scrollbar{display:none}.signal{white-space:nowrap;align-items:baseline;gap:6px;font-size:11.5px;display:inline-flex}.signal .k{color:var(--muted)}.signal .v{color:var(--text);font-weight:600;font-family:var(--mono);font-size:11.5px}.signal .zone{color:var(--dim);letter-spacing:.04em;font-size:10px}.dot{background:var(--dim);border-radius:50%;flex-shrink:0;align-self:center;width:7px;height:7px}.dot.ok,.dot.live{background:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.dot.warn{background:var(--amber);box-shadow:0 0 0 3px var(--amber-soft)}.dot.bad,.dot.dead{background:var(--red);box-shadow:0 0 0 3px var(--red-soft)}.dot.idle{background:var(--dim)}.nav-toggle{flex-direction:column;gap:3.5px;padding:8px;display:none}.nav-toggle span{background:var(--text-2);border-radius:2px;width:16px;height:1.8px;display:block}.nav-scrim{z-index:25;background:#0f172a59;border:none;padding:0;display:none;position:fixed;inset:0}.page{padding:var(--gap-lg) 20px 40px;gap:var(--gap-lg);flex-direction:column;flex:1;min-width:0;display:flex}.boot-screen{background:radial-gradient(circle at 50% 35%, var(--accent-soft), transparent 55%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.boot-card{flex-direction:column;align-items:center;gap:12px;display:flex}.boot-mark{background:var(--accent);color:#fff;border-radius:16px;place-items:center;width:56px;height:56px;font-size:24px;font-weight:700;animation:1.8s ease-in-out infinite boot-pulse;display:grid;box-shadow:0 12px 30px -10px #2563eb8c}.boot-title{letter-spacing:-.02em;color:var(--text);font-size:17px;font-weight:650}.boot-bar{background:var(--surface-3);border-radius:999px;width:160px;height:4px;position:relative;overflow:hidden}.boot-bar span{background:var(--accent);border-radius:999px;width:40%;animation:1.2s ease-in-out infinite indeterminate;position:absolute;top:0;bottom:0}.boot-text{color:var(--muted);font-size:13px}@keyframes boot-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media (prefers-reduced-motion:reduce){.boot-mark,.boot-bar span{animation:none}}.crash,.notfound{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-1);max-width:640px;padding:32px}.crash h2,.notfound h2{margin-bottom:6px;font-size:16px}.crash p,.notfound p{margin-bottom:14px}.crash-detail{font-family:var(--mono);color:var(--red);background:var(--red-soft);border:1px solid var(--red-line);border-radius:var(--radius-sm);white-space:pre-wrap;word-break:break-word;margin-bottom:16px;padding:10px 12px;font-size:11.5px}.notfound-code{font-family:var(--mono);color:var(--border-2);margin-bottom:8px;font-size:34px;font-weight:700;line-height:1}.notfound-links{flex-direction:column;gap:7px;font-size:12.5px;list-style:none;display:flex}.login-page{background:var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:380px;box-shadow:var(--shadow-2);flex-direction:column;gap:15px;padding:30px;display:flex}.login-brand{letter-spacing:-.02em;font-size:19px;font-weight:700}.login-sub{color:var(--muted);margin-top:-10px;font-size:12.5px}.login-field{flex-direction:column;gap:5px;display:flex}.login-field>span{color:var(--text-2);font-size:11.5px;font-weight:600}.login-field input{padding:9px 11px;font-size:13px}.login-submit{background:var(--accent);border-color:var(--accent);color:#fff;padding:9px;font-size:13px;font-weight:600}.login-submit:hover:not(:disabled){background:var(--accent-2);border-color:var(--accent-2);color:#fff}.login-error,.login-notice{border-radius:var(--radius-sm);border:1px solid;padding:9px 11px;font-size:12px}.login-error{color:var(--red);background:var(--red-soft);border-color:var(--red-line)}.login-notice{color:var(--text-2);background:var(--accent-soft);border-color:var(--accent-line)}.login-footnote{color:var(--muted);font-size:11.5px;line-height:1.6}.login-footnote code{font-family:var(--mono);background:var(--surface-3);border:1px solid var(--border);border-radius:4px;padding:1px 5px;font-size:11px}@media (width<=900px){.app-shell{background:var(--bg);grid-template-columns:minmax(0,1fr)}.sidebar{width:var(--sidebar);transition:transform var(--t);box-shadow:var(--shadow-2);position:fixed;top:0;left:0;transform:translate(-100%)}.app-shell.nav-open .sidebar{transform:translate(0)}.app-shell.nav-open .nav-scrim{display:block}.nav-toggle{display:flex}.page{padding:var(--gap) 14px 32px}.topbar{padding:0 14px}}@media (width<=620px){.topbar-signals,.crumb,.crumb-sep{display:none}}.icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:16px;height:16px}button .icon{width:15px;height:15px}.page-stack{gap:var(--gap-lg);flex-direction:column;min-width:0;display:flex}.stack{gap:var(--gap-lg);align-content:start;min-width:0;display:grid}.grid-2{gap:var(--gap-lg);grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;display:grid}.kpi-grid,.stat-strip,.stats-row{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));display:grid}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 20px;display:flex}.page-header-main{flex:320px;align-items:center;gap:14px;min-width:0;display:flex}.page-header-icon{background:var(--accent-soft);border:1px solid var(--accent-line);width:44px;height:44px;color:var(--accent-2);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.page-header-icon .icon{width:21px;height:21px}.page-header-text{min-width:0}.page-header-text h2{letter-spacing:-.02em;font-size:20px;font-weight:650;line-height:1.25}.page-header-text p{color:var(--muted);margin-top:3px;font-size:13px;line-height:1.5}.page-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.header-meta{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-1);flex-direction:column;display:flex;overflow:hidden}.panel-head{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px 12px;padding:14px 18px;display:flex}.panel-title{flex:220px;align-items:center;gap:11px;min-width:0;display:flex}.panel-icon{background:var(--surface-3);width:32px;height:32px;color:var(--text-2);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.panel-title-text{min-width:0}.panel-head h3{letter-spacing:-.01em;color:var(--text);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.panel-subtitle{color:var(--muted);margin-top:1px;font-size:12px;line-height:1.45}.count{font-family:var(--mono);color:var(--accent-2);background:var(--accent-soft);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600}.head-right{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.panel-body{padding:16px 18px}.panel-body.flush{padding:0}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-1);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.stat-top{justify-content:space-between;align-items:center;gap:10px;min-height:30px;display:flex}.stat .label{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;font-weight:500;overflow:hidden}.stat-icon{background:var(--surface-3);width:30px;height:30px;color:var(--text-2);border-radius:9px;flex-shrink:0;place-items:center;display:grid}.stat.stat-pos .stat-icon{background:var(--green-soft);color:var(--green)}.stat.stat-neg .stat-icon{background:var(--red-soft);color:var(--red)}.stat.stat-warn .stat-icon{background:var(--amber-soft);color:var(--amber)}.stat .value{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--text);overflow-wrap:anywhere;font-size:21px;font-weight:600;line-height:1.25}.stat .value.pos{color:var(--green)}.stat .value.neg{color:var(--red)}.stat .value.warn{color:var(--amber)}.stat .sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.kpi-flat .stat{background:var(--surface-2);box-shadow:none}.hero-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);overflow:hidden}.hero-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:18px 32px;padding:20px 22px 6px;display:flex}.hero-label{color:var(--muted);font-size:12.5px;font-weight:500}.hero-value{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.035em;color:var(--text);margin-top:4px;font-size:34px;font-weight:650;line-height:1.15}.hero-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:10px;font-size:12.5px;display:flex}.delta-pill{font-family:var(--mono);background:var(--surface-3);color:var(--text-2);border-radius:999px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.delta-pill .icon{width:13px;height:13px}.delta-pill.pos{background:var(--green-soft);color:var(--green)}.delta-pill.neg{background:var(--red-soft);color:var(--red)}.hero-facts{grid-template-columns:repeat(3,auto);align-self:center;gap:8px 32px;display:grid}.hero-facts dt{color:var(--muted);white-space:nowrap;font-size:12px}.hero-facts dd{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap;margin-top:2px;font-size:14px;font-weight:600}.hero-facts dd.pos{color:var(--green)}.hero-chart{height:150px;padding:0 6px}.hero-chart-empty{background:var(--surface-2);border:1px dashed var(--border-2);border-radius:var(--radius);height:130px;color:var(--text-2);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:3px;margin:8px 22px 20px;font-size:13px;display:flex}.hero-chart-empty .hint{color:var(--muted);font-size:12px}.rail{border-bottom:1px solid var(--border);padding:12px 18px}.rail:last-child{border-bottom:none}.rail-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:7px;display:flex}.rail-head .name{color:var(--text-2);font-size:13px;font-weight:500}.rail-head .figure{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap;font-size:12px}.rail-track{background:var(--surface-3);border-radius:999px;height:6px;overflow:hidden}.rail.static .rail-track{background:repeating-linear-gradient(90deg, var(--surface-3) 0 6px, var(--surface) 6px 10px)}.rail-fill{background:var(--green);height:100%;transition:width var(--t), background var(--t);border-radius:999px}.rail-fill.warning{background:var(--amber)}.rail-fill.breached{background:var(--red)}.rail-note{color:var(--muted);margin-top:6px;font-size:12px}.banner{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-2);align-items:flex-start;gap:12px;padding:13px 16px;font-size:13px;line-height:1.55;display:flex}.banner-icon{flex-shrink:0;place-items:center;width:20px;height:21px;display:grid}.banner-icon .icon{width:19px;height:19px}.banner-body{flex:1;min-width:0}.banner-title{color:var(--text);font-weight:600;display:block}.banner-text{overflow-wrap:anywhere}.banner-text strong{color:var(--text);font-weight:600}.banner-action{flex-shrink:0;align-self:center}.banner.info{background:var(--accent-soft);border-color:var(--accent-line)}.banner.info .banner-icon{color:var(--accent)}.banner.ok{background:var(--green-soft);border-color:var(--green-line)}.banner.ok .banner-icon{color:var(--green)}.banner.warn,.banner.stale{background:var(--amber-soft);border-color:var(--amber-line)}.banner.warn .banner-icon,.banner.stale .banner-icon{color:var(--amber)}.banner.halted,.banner.neg{background:var(--red-soft);border-color:var(--red-line)}.banner.halted .banner-icon,.banner.neg .banner-icon{color:var(--red)}.chip{border:1px solid var(--border);background:var(--surface-3);color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:2px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.chip .dot{width:6px;height:6px;box-shadow:none}.chip.ok{background:var(--green-soft);border-color:var(--green-line);color:var(--green)}.chip.warn{background:var(--amber-soft);border-color:var(--amber-line);color:var(--amber)}.chip.bad,.chip.neg{background:var(--red-soft);border-color:var(--red-line);color:var(--red)}.chip.sym-chip{font-family:var(--mono);color:var(--text);background:var(--surface)}.empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:32px 20px;display:flex}.empty-icon{background:var(--surface-3);width:42px;height:42px;color:var(--muted);border-radius:12px;place-items:center;margin-bottom:5px;display:grid}.empty-icon .icon{width:20px;height:20px}.empty-title{color:var(--text-2);font-size:13.5px;font-weight:500}.empty .hint{max-width:48ch;color:var(--muted);font-size:12.5px;line-height:1.55}.empty.tall{padding:64px 24px}.skeleton{background:linear-gradient(90deg, var(--surface-3) 25%, #f8fafc 37%, var(--surface-3) 63%);background-size:400% 100%;border-radius:6px;height:12px;animation:1.4s infinite shimmer;display:block}@keyframes shimmer{0%{background-position:100%}to{background-position:0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.skeleton-page{gap:var(--gap-lg);flex-direction:column;display:flex}.skeleton-header{align-items:center;gap:14px;display:flex}.skeleton-icon{border-radius:12px;width:44px;height:44px}.skeleton-col{flex-direction:column;flex:1;gap:9px;min-width:0;display:flex}.skeleton-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:11px;padding:16px 18px;display:flex}.skeleton-card-tall{gap:16px;padding:22px}.table-skeleton{padding:6px 18px}.table-skeleton-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:16px;padding:13px 0;display:flex}.table-skeleton-row:last-child{border-bottom:none}.chart-skeleton{height:440px;padding:4px}.chart-skeleton .skeleton{border-radius:var(--radius);height:100%}.progress-indeterminate{background:var(--surface-3);border-radius:999px;width:220px;max-width:100%;height:4px;margin:6px 0 2px;position:relative;overflow:hidden}.progress-indeterminate span{background:var(--accent);border-radius:999px;width:40%;animation:1.2s ease-in-out infinite indeterminate;position:absolute;top:0;bottom:0}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(260%)}}.nowrap{white-space:nowrap}td.cell-muted{color:var(--muted)}td.symbol{font-family:var(--mono);color:var(--text);font-weight:600}td.cell-reason{min-width:180px;color:var(--muted)}@media (width<=720px){.table-cards thead{display:none}.table-cards,.table-cards tbody,.table-cards tr{width:100%;display:block}.table-cards tr{border-bottom:1px solid var(--border);padding:12px 16px}.table-cards tbody tr:last-child{border-bottom:none}.table-cards tbody td{text-align:right;border:none;justify-content:space-between;align-items:center;gap:16px;padding:4px 0;display:flex}.table-cards tbody td:before{content:attr(data-label);font-family:var(--sans);color:var(--muted);text-align:left;font-size:12px;font-weight:500}.table-cards tbody td.cell-title{padding-bottom:6px;font-size:14px}.table-cards tbody td.cell-title:before{content:none}.table-cards tbody td.cell-reason{min-width:0}}.toolbar{border-bottom:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 18px;display:flex}.toolbar .spacer{flex:1}.search-input{flex:0 240px;align-items:center;display:flex;position:relative}.search-input .icon{color:var(--dim);pointer-events:none;position:absolute;left:10px}.search-input input{width:100%;padding-left:32px}.tape{max-height:460px;overflow-y:auto}.tape-row{border-bottom:1px solid var(--border);border-left:3px solid #0000;grid-template-columns:64px 124px minmax(0,1fr);align-items:baseline;gap:12px;padding:9px 18px 9px 15px;font-size:12.5px;display:grid}.tape-row:last-child{border-bottom:none}.tape-time{font-family:var(--mono);color:var(--dim);white-space:nowrap;font-size:11px}.tape-kind{font-family:var(--mono);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:600;overflow:hidden}.tape-msg{min-width:0;color:var(--text-2);overflow-wrap:anywhere}.tape-detail{font-family:var(--mono);color:var(--muted);white-space:pre-line;grid-column:3;font-size:11px}.tape-row.success{border-left-color:var(--green);background:#f5fbf7}.tape-row.success .tape-kind{color:var(--green)}.tape-row.warning{border-left-color:var(--amber);background:#fffbf2}.tape-row.warning .tape-kind{color:var(--amber)}.tape-row.error{border-left-color:var(--red);background:#fef6f8}.tape-row.error .tape-kind{color:var(--red)}.kv-list{flex-direction:column;gap:9px;display:flex}.kv{justify-content:space-between;align-items:baseline;gap:16px;font-size:13px;display:flex}.kv .k{color:var(--muted);white-space:nowrap}.kv .v{min-width:0;font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--text);text-align:right;overflow-wrap:anywhere;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.kv-watchlist{border-top:1px solid var(--border);flex-direction:column;gap:9px;margin-top:14px;padding-top:14px;display:flex}.kv-watchlist .k{color:var(--muted);font-size:13px}.tag-row{flex-wrap:wrap;gap:6px;display:flex}.segmented{background:var(--surface-3);border:1px solid var(--border);scrollbar-width:none;border-radius:9px;gap:2px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.segmented::-webkit-scrollbar{display:none}.segmented button{color:var(--muted);text-transform:capitalize;white-space:nowrap;box-shadow:none;background:0 0;border:none;border-radius:6px;padding:5px 12px;font-size:12.5px;font-weight:500}.segmented button:hover:not(:disabled){color:var(--text-2);background:#ffffffb3}.segmented button.active{background:var(--surface);color:var(--accent-2);box-shadow:var(--shadow-1);font-weight:600}.symbol-tabs{scrollbar-width:thin;gap:7px;padding-bottom:2px;display:flex;overflow-x:auto}.symbol-tab{border:1px solid var(--border-2);background:var(--surface);font-family:var(--mono);color:var(--text-2);white-space:nowrap;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:600}.symbol-tab.active,.symbol-tab.active:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff}.symbol-group{align-items:center;gap:10px;min-width:0;display:flex}.symbol-group-label{width:92px;color:var(--muted);flex:none;font-size:12px}.symbol-group .symbol-tabs{min-width:0}.symbol-tab-pnl{margin-left:6px;font-weight:500}.symbol-tab.active .symbol-tab-pnl{color:inherit;opacity:.85}@media (width<=600px){.symbol-group{flex-direction:column;align-items:stretch;gap:6px}.symbol-group-label{width:auto}}.chart-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 16px;padding:2px 6px 12px;font-size:12px;display:flex}.chart-legend span{align-items:center;gap:6px;display:inline-flex}.chart-legend .swatch{border-radius:3px;width:10px;height:10px;display:inline-block}.chart-legend .swatch.up{background:var(--green)}.chart-legend .swatch.down{background:var(--red)}.chart-legend .swatch.fast{background:var(--accent)}.chart-legend .swatch.slow{background:var(--amber)}.chart-legend .swatch.bought{border-top:2px dashed var(--muted);border-radius:0;height:0}.chart-frame{height:440px}.candle-tip{background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius-sm);min-width:176px;box-shadow:var(--shadow-2);padding:10px 12px;font-size:12px}.candle-tip-head{border-bottom:1px solid var(--border);color:var(--text);margin-bottom:6px;padding-bottom:6px;font-weight:600}.candle-tip-ohlc{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 14px;display:grid}.candle-tip-ohlc>div{justify-content:space-between;gap:8px;display:flex}.candle-tip-ohlc dt{color:var(--muted)}.candle-tip-ohlc dd{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--text)}.candle-tip-foot{border-top:1px solid var(--border);color:var(--muted);flex-direction:column;gap:2px;margin-top:6px;padding-top:6px;font-size:11.5px;display:flex}.candle-tip-foot .k{align-items:center;gap:6px;display:inline-flex}.candle-tip-foot .k.fast:before,.candle-tip-foot .k.slow:before{content:"";background:var(--accent);border-radius:1px;width:9px;height:2px}.candle-tip-foot .k.slow:before{background:var(--amber)}.modal-backdrop{z-index:60;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a73;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);width:100%;max-width:440px;box-shadow:var(--shadow-2);border-radius:16px;padding:24px}.modal h3{margin-bottom:8px;font-size:16px}.modal p{color:var(--text-2);font-size:13px;line-height:1.6}.modal label{color:var(--text-2);cursor:pointer;align-items:flex-start;gap:9px;font-size:13px;display:flex}.modal .modal-extra{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);margin-top:14px;padding:12px}.modal .actions{justify-content:flex-end;gap:8px;margin-top:22px;display:flex}.config-form{flex-direction:column;gap:16px;display:flex}.form-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px 20px;display:grid}.form-row-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field label,.field .field-label{color:var(--text);font-size:12.5px;font-weight:600}.field input:not([type=checkbox]),.field select{width:100%}.help,.field .help{color:var(--muted);font-size:12px;line-height:1.5}.field .changed-note{color:var(--amber);font-size:12px;font-weight:600}.help.managed{color:var(--text-2);flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.managed-tag{border:1px solid var(--accent-line,var(--border));background:var(--accent-soft,var(--surface-3));color:var(--accent,var(--text-2));letter-spacing:.02em;text-transform:uppercase;border-radius:999px;align-items:center;gap:4px;padding:1px 7px;font-size:10.5px;font-weight:700;display:inline-flex}.managed-tag svg{width:11px;height:11px}.pin-note{flex-direction:column;gap:6px;display:flex}.pin-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pin-tag{border:1px solid var(--border);background:var(--surface-3,var(--surface-2));color:var(--text-2);letter-spacing:.02em;text-transform:uppercase;border-radius:999px;align-items:center;gap:4px;padding:1px 7px;font-size:10.5px;font-weight:700;display:inline-flex}.pin-tag svg{width:11px;height:11px}button.pin-link{color:var(--accent);background:0 0;border:0;padding:0;font-size:11.5px;font-weight:600}button.pin-link:hover:not(:disabled){color:var(--accent-2);background:0 0;text-decoration:underline}.pin-suggestion{border:1px solid var(--amber-line);border-radius:var(--radius);background:var(--amber-soft);color:var(--text-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:12px;line-height:1.45;display:flex}.pin-suggestion strong{color:var(--amber);font-weight:700}.pin-actions{flex-shrink:0;gap:6px;display:inline-flex}.field-toggle .pin-note{margin-top:2px}.pin-suggestion-list{flex-direction:column;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.pin-suggestion-list li{border-top:1px solid var(--amber-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:8px;display:flex}.pin-suggestion-text{flex:260px;min-width:0}.shariah-categories{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.shariah-category{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);cursor:pointer;align-items:flex-start;gap:8px;padding:9px 11px;display:flex}.shariah-category input{margin-top:2px}.shariah-category span{flex-direction:column;gap:2px;min-width:0;display:flex}.shariah-category strong{color:var(--text);font-size:12.5px;font-weight:600}.shariah-category small{color:var(--muted);font-size:11.5px;line-height:1.4}.shariah-blocked{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;max-height:260px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.shariah-blocked li{color:var(--text-2);border-top:1px solid var(--border);flex-wrap:wrap;align-items:baseline;gap:8px;padding:7px 11px;font-size:12px;display:flex}.shariah-blocked li:first-child{border-top:0}.shariah-blocked strong{font-family:var(--mono);min-width:52px;color:var(--text)}.purification-intro{max-width:780px;margin:0 0 14px}.purification-totals{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:14px;display:grid}.purification-totals>div{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);flex-direction:column;gap:4px;padding:10px 12px;display:flex}.purification-totals span{color:var(--muted);font-size:11.5px}.purification-totals strong{font-family:var(--mono);color:var(--text);font-size:16px}.purification-totals .owed{border-color:var(--amber-line);background:var(--amber-soft)}.purification-totals .owed strong{color:var(--amber)}.purification-form{flex-wrap:wrap;align-items:flex-end;gap:10px;margin:14px 0;display:flex}.purification-form label{flex-direction:column;gap:6px;min-width:150px;display:flex}.purification-form label.grow{flex:220px}.purification-form input{width:100%}.purification-given{border:1px solid var(--border);border-radius:var(--radius);margin:0 0 14px;padding:0;list-style:none}.purification-given li{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;padding:7px 11px;font-size:12.5px;display:flex}.purification-given li:first-child{border-top:0}.purification-given li .cell-muted{flex:auto}.field input:disabled,.field select:disabled{opacity:1;color:var(--text-2);background:var(--surface-3);cursor:not-allowed}.field.is-changed input:not([type=checkbox]),.field.is-changed select,.field.is-changed .tag-input{border-color:var(--amber);background:var(--amber-soft)}.field-toggle{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);flex-direction:row;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px}.field-toggle .field-text{flex-direction:column;gap:3px;min-width:0;display:flex}.field-toggle.is-changed{border-color:var(--amber-line);background:var(--amber-soft)}.input-affix{align-items:center;display:flex;position:relative}.input-affix input{padding-right:46px}.input-affix .affix{font-family:var(--mono);color:var(--muted);pointer-events:none;font-size:11.5px;position:absolute;right:11px}.toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:inline-flex;position:relative}.toggle input{opacity:0;width:1px;height:1px;position:absolute}.toggle-track{background:var(--border-2);width:40px;height:23px;transition:background var(--t);border-radius:999px;flex-shrink:0;position:relative}.toggle-thumb{width:17px;height:17px;transition:transform var(--t);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0f172a40}.toggle input:checked+.toggle-track{background:var(--accent)}.toggle input:checked+.toggle-track .toggle-thumb{transform:translate(17px)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--accent);outline-offset:2px}.toggle.is-disabled{opacity:.55;cursor:not-allowed}.toggle-label{color:var(--text-2);font-size:13px}.form-feedback{border-radius:var(--radius-sm);border:1px solid;padding:10px 12px;font-size:12.5px}.form-feedback.ok{color:var(--green);background:var(--green-soft);border-color:var(--green-line)}.form-feedback.err{color:var(--red);background:var(--red-soft);border-color:var(--red-line)}.settings-card{overflow:visible}.settings-section{grid-template-columns:minmax(200px,270px) minmax(0,1fr);gap:28px;padding:22px;display:grid}.settings-intro h3{align-items:center;gap:9px;font-size:15px;font-weight:600;display:flex}.settings-intro h3 .icon{width:17px;height:17px;color:var(--accent-2)}.settings-intro p{color:var(--muted);margin-top:6px;font-size:12.5px;line-height:1.6}.settings-intro .chip{margin-top:10px}.settings-fields{flex-direction:column;gap:18px;min-width:0;display:flex}.save-bar{z-index:15;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);background:#fffffff5;flex-wrap:wrap;align-items:center;gap:10px 12px;padding:12px 16px;display:flex;position:static;bottom:14px}.save-bar.dirty{border-color:var(--amber-line);position:sticky}.save-bar .spacer{flex:1}.save-status{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.save-status .icon{color:var(--green)}.save-status.dirty{color:var(--amber);font-weight:600}.save-status.dirty .icon{color:var(--amber)}.tag-input{background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius-sm);transition:border-color var(--t), box-shadow var(--t);padding:8px}.tag-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.tag-input input{background:0 0;border:none;width:100%;padding:4px 5px;font-size:13px}.tag-input input:focus{box-shadow:none;outline:none}.tag-input .tag-row{margin-bottom:6px}.tag{background:var(--accent-soft);border:1px solid var(--accent-line);font-family:var(--mono);color:var(--accent-2);border-radius:6px;align-items:center;gap:5px;padding:3px 4px 3px 9px;font-size:11.5px;font-weight:600;display:inline-flex}.tag button{color:var(--accent);background:0 0;border:none;border-radius:4px;padding:0 4px;font-size:14px;line-height:1}.tag button:hover{background:var(--red-soft);color:var(--red)}.symbol-picker{margin-top:8px;position:relative}.symbol-picker-open{width:100%}.symbol-picker-open:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);color:var(--accent-2)}.symbol-picker-panel{z-index:40;background:var(--surface);border:1px solid var(--border-2);border-radius:var(--radius);box-shadow:var(--shadow-2);margin-top:6px;position:absolute;left:0;right:0;overflow:hidden}.symbol-picker-search{border-bottom:1px solid var(--border);padding:10px}.symbol-picker-search input{width:100%}.symbol-picker-list{max-height:260px;overflow-y:auto}.symbol-option{text-align:left;background:var(--surface);border:none;border-bottom:1px solid var(--border);border-radius:0;justify-content:flex-start;align-items:center;gap:10px;width:100%;padding:9px 12px;display:flex}.symbol-option:hover:not(:disabled){background:var(--accent-soft)}.symbol-option:disabled{opacity:.55}.symbol-option .box{border:1.5px solid var(--border-2);border-radius:4px;flex-shrink:0;width:15px;height:15px}.symbol-option.is-picked .box{background:var(--accent);border-color:var(--accent);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6L9 17l-5-5'/></svg>");background-position:50%;background-repeat:no-repeat;background-size:11px}.symbol-option.is-active{background:var(--surface-2)}.symbol-option .sym{min-width:58px;font-family:var(--mono);color:var(--text);font-size:12.5px;font-weight:600}.symbol-option .name{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.symbol-option .exch{color:var(--dim);font-size:10.5px}.symbol-picker-foot{border-top:1px solid var(--border);background:var(--surface-2);align-items:center;gap:8px;padding:10px;display:flex}.symbol-picker-foot .count{margin-right:auto}.symbol-picker-note{color:var(--muted);padding:10px 12px;font-size:12px}.lab-layout{gap:var(--gap-lg);grid-template-columns:minmax(300px,360px) minmax(0,1fr);align-items:start;display:grid}.lab-form-card{top:calc(var(--topbar) + 16px);position:sticky}.quick-ranges{flex-wrap:wrap;gap:6px;display:flex}.chip-button{border-radius:999px;padding:4px 11px;font-size:12px}.chip-button.active,.chip-button.active:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent-2)}.sub-label{color:var(--muted);font-size:11.5px;font-weight:500}button.block{width:100%;padding:10px;font-size:13px}.lab-steps{text-align:left;counter-reset:step;gap:10px;max-width:420px;margin-top:16px;list-style:none;display:grid}.lab-steps li{color:var(--text-2);align-items:flex-start;gap:10px;font-size:13px;display:flex}.lab-steps li:before{counter-increment:step;content:counter(step);background:var(--accent-soft);width:22px;height:22px;color:var(--accent-2);border-radius:50%;flex-shrink:0;place-items:center;font-size:11.5px;font-weight:700;display:grid}.intel-grid{gap:var(--gap-lg);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;display:grid}.table-scroll{max-height:460px;overflow-y:auto}.table-scroll thead th{z-index:1;position:sticky;top:0}.position-list{list-style:none}.position-item{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 18px;display:flex}.position-item:last-child{border-bottom:none}.position-item .sym-block{flex-direction:column;flex:1;min-width:0;display:flex}.position-item .sym{font-family:var(--mono);color:var(--text);font-size:13px;font-weight:600}.position-item .meta{font-family:var(--mono);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.position-item .pnl{font-family:var(--mono);text-align:right;white-space:nowrap;font-size:13px;font-weight:600}.position-item .pnl small{font-size:11.5px;font-weight:500;display:block}.note{color:var(--muted);font-size:12.5px;line-height:1.6}.note strong{color:var(--text-2);font-weight:600}.glance{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.glance .stat .sub{white-space:normal;text-overflow:clip;line-height:1.45;overflow:visible}.intel-tabs .segmented{width:100%;display:flex}.intel-tabs .segmented button{text-transform:none;flex:1;padding:8px 14px;font-size:13px}.tab-intro{margin-top:-4px}@media (width<=1180px){.grid-2,.intel-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=1000px){.lab-layout{grid-template-columns:minmax(0,1fr)}.lab-form-card{position:static}}@media (width<=900px){.settings-section{grid-template-columns:minmax(0,1fr);gap:16px;padding:18px}}@media (width<=720px){.kpi-grid,.stat-strip,.stats-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:12px 13px}.stat .value{font-size:17px}.stat-icon{width:26px;height:26px}.hero-value{font-size:28px}.hero-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 14px;width:100%}.hero-chart{height:110px}.chart-frame,.chart-skeleton{height:320px}.page-header-text h2{font-size:18px}.page-header-actions{width:100%}.tape-row{grid-template-columns:auto minmax(0,1fr);gap:4px 10px}.tape-row .tape-msg,.tape-row .tape-detail{grid-column:1/-1}.search-input{flex:100%}.form-row-2{grid-template-columns:minmax(0,1fr)}.save-bar{flex-wrap:nowrap;gap:8px;padding:10px 12px;bottom:10px}.save-bar .spacer{display:none}.save-status{flex:1;min-width:0;font-size:12.5px}.save-bar button{padding:7px 11px}.panel-head,.panel-body{padding-left:14px;padding-right:14px}}@media (width<=420px){.kpi-grid,.stat-strip,.stats-row{grid-template-columns:minmax(0,1fr)}}.perf-split{align-items:center;gap:8px;display:flex}.perf-split label{color:var(--muted);white-space:nowrap;font-size:12px}.perf-split input{width:auto}.perf-body{flex-direction:column;gap:16px;display:flex}.perf-callout{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);align-items:center;gap:16px;padding:12px 14px;display:flex}.perf-callout.wait{background:var(--amber-soft);border-color:var(--amber-line)}.perf-callout.good{background:var(--green-soft);border-color:var(--green-line)}.perf-callout.bad{background:var(--red-soft);border-color:var(--red-line)}.perf-callout-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.perf-callout-text strong{color:var(--text);font-size:13px}.perf-callout-text span{color:var(--text-2);font-size:12.5px;line-height:1.5}.perf-progress{background:var(--surface);border:1px solid var(--amber-line);border-radius:999px;flex:0 0 160px;height:8px;overflow:hidden}.perf-progress span{background:var(--amber);border-radius:inherit;height:100%;display:block}.perf-headlines{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;display:grid}.perf-headline{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:4px;padding:14px 16px;display:flex}.perf-headline.accent{border-color:var(--accent-line);background:var(--accent-soft)}.perf-headline-title{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.perf-headline-value{align-items:baseline;gap:8px;display:flex}.perf-headline-value strong{font-family:var(--mono);color:var(--text);font-size:24px;font-weight:700}.perf-headline-value strong.pos{color:var(--green)}.perf-headline-value strong.neg{color:var(--red)}.perf-headline-value span{color:var(--muted);font-size:12px}.perf-headline-sub{color:var(--text-2);font-size:12px}.perf-arrow{color:var(--dim);font-size:20px}.perf-table-wrap{border:1px solid var(--border);border-radius:var(--radius)}.perf-table th[scope=row]{border-bottom:1px solid var(--border);text-align:left;color:var(--text);vertical-align:middle;min-width:200px;padding:10px 14px;font-weight:500}.perf-table th[scope=row] small{color:var(--muted);white-space:normal;margin-top:2px;font-size:11.5px;font-weight:400;display:block}.perf-table tbody tr:last-child th{border-bottom:none}.perf-table thead th:first-child,.perf-table tbody td:last-child{padding-right:14px}.perf-table tbody td{white-space:nowrap}.perf-table .perf-col-now{background:var(--accent-soft);color:var(--text);font-weight:600}.perf-table thead .perf-col-now{color:var(--accent-2)}.perf-table .perf-col-all{color:var(--muted)}.perf-table .perf-strong th,.perf-table .perf-strong td{font-weight:700}.perf-pair>span:before{content:" · "}@media (width<=720px){.perf-callout{flex-direction:column;align-items:stretch}.perf-progress{flex-basis:auto}.perf-headlines{grid-template-columns:minmax(0,1fr)}.perf-arrow,.perf-split label{display:none}.perf-table th[scope=row]{min-width:0;padding:9px 10px}.perf-table th[scope=row] small,.perf-table .perf-col-all{display:none}.perf-table thead th,.perf-table tbody td{padding-left:8px;padding-right:8px}.perf-table thead th:first-child{padding-left:10px}.perf-pair>span{opacity:.8;font-size:11px;display:block}.perf-pair>span:before{content:none}}.guard{flex-direction:column;gap:10px;display:flex}.guard-level{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);justify-content:space-between;align-items:baseline;padding:10px 12px;font-size:12.5px;display:flex}.guard-level strong{color:var(--text);font-size:15px}.guard-level.ok{background:var(--green-soft);border-color:var(--green-line)}.guard-level.ok strong{color:var(--green)}.guard-level.warn{background:var(--amber-soft);border-color:var(--amber-line)}.guard-level.warn strong{color:var(--amber)}.guard-level.neg{background:var(--red-soft);border-color:var(--red-line)}.guard-level.neg strong{color:var(--red)}.guard-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:6px 0 0;font-size:11px;font-weight:600}.guard-list{color:var(--text-2);flex-direction:column;gap:4px;margin:0;padding-left:16px;font-size:12.5px;display:flex}.guard-list a{color:var(--accent)}.guard-date{font-family:var(--mono);color:var(--muted);font-size:11.5px}.guard-tag{background:var(--amber-soft);color:var(--amber);border:1px solid var(--amber-line);border-radius:999px;margin-left:6px;padding:1px 6px;font-size:10.5px;font-weight:600}.learn-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.learn-stats>div{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);flex-direction:column;gap:2px;padding:8px 10px;display:flex}.learn-stats strong{color:var(--text);font-size:16px;font-family:var(--mono)}.learn-stats span{color:var(--muted);font-size:11.5px}.learn-pos{color:var(--green);font-family:var(--mono)}.learn-neg{color:var(--red);font-family:var(--mono)}.panel-flow{flex-direction:column;gap:12px;display:flex}.panel-flow>button{align-self:flex-start}.panel-flow .guard-heading{margin:4px 0 -4px}@media (width<=600px){.glance{grid-template-columns:repeat(2,minmax(0,1fr))}}.trade-when{color:var(--muted);white-space:nowrap;margin-top:2px;font-size:11.5px;font-weight:400;display:block}
