:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#060c14;--bg-1:#0a131e;--bg-2:#0f1b29;--bg-3:#142436;--bg-elevated:#0d1828;--bg-soft:#112437;--bg-overlay:#08101cb8;--line:#ffffff0f;--line-strong:#ffffff24;--line-accent:#60e8c852;--text:#f1f6fc;--text-2:#c8d6e4;--muted:#8aa0b6;--muted-2:#61788e;--accent:#60e8c8;--accent-strong:#2ad6a8;--accent-soft:#60e8c824;--accent-glow:#60e8c86b;--violet:#8b7bff;--violet-strong:#6c5cff;--accent-grad:linear-gradient(135deg, #2ad6a8 0%, #56b6ff 48%, #6c5cff 100%);--accent-grad-soft:linear-gradient(135deg, #2ad6a82e, #6c5cff29);--violet-glow:#6c5cff66;--danger:#ff6f7a;--danger-soft:#ff6f7a24;--warning:#ffd166;--warning-soft:#ffd16624;--info:#7cc7ff;--info-soft:#7cc7ff24;--good:#2ad6a8;--good-soft:#60e8c824;--bull:#2ad6a8;--bull-soft:#2ad6a824;--bear:#ff6f7a;--bear-soft:#ff6f7a24;--neutral:#7cc7ff;--neutral-soft:#7cc7ff24;--shadow-sm:0 2px 6px #00000052;--shadow:0 18px 42px #0000005c, 0 1px 0 #ffffff0a inset;--shadow-lg:0 32px 80px #0000008c;--glow:0 0 0 1px var(--line-accent), 0 8px 28px var(--accent-glow);--r-xl:26px;--r-lg:20px;--r-md:14px;--r-sm:10px;--r-xs:8px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--content-width:800px;--nav-height:92px;--safe-bottom:env(safe-area-inset-bottom,0px);--ease:cubic-bezier(.22, .61, .36, 1);--ease-out-back:cubic-bezier(.34, 1.36, .64, 1);--t-fast:.14s;--t-med:.22s;--t-slow:.36s;--font-head:"Space Grotesk", Inter, system-ui, sans-serif;font-feature-settings:"ss01", "cv01", "cv11";font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}*{box-sizing:border-box}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}html{background:radial-gradient(58% 48% at 10% -4%,#2ad6a824,#0000 60%),radial-gradient(52% 42% at 96% 4%,#6c5cff29,#0000 60%),radial-gradient(46% 40% at 78% 30%,#56b6ff14,#0000 60%),radial-gradient(80% 60% at 50% 116%,#60e8c812,#0000 70%),linear-gradient(#070b14 0%,#05080f 100%);min-height:100%}body{min-width:320px;min-height:100vh;overscroll-behavior-y:none;min-height:100dvh;color:var(--text);background:0 0;margin:0;font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--font-head);letter-spacing:-.01em;font-weight:600}button,input,select,textarea{font:inherit}button,a,[role=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}::selection{background:var(--accent-soft);color:var(--text)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff14 padding-box padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#ffffff29 padding-box padding-box}#root{min-height:100vh;min-height:100dvh}.app-shell{min-height:100vh;min-height:100dvh;padding-bottom:calc(var(--nav-height) + var(--safe-bottom) + 18px)}.topbar{z-index:30;justify-content:space-between;align-items:center;gap:var(--s-4);-webkit-backdrop-filter:saturate(140%)blur(22px);border-bottom:1px solid var(--line);background:linear-gradient(#070e16eb,#070e16bd);padding:14px 18px 12px;display:flex;position:sticky;top:0}.topbar h1{font-family:var(--font-head);letter-spacing:.01em;background:var(--accent-grad);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:2px 0 0;font-size:1.22rem;font-weight:700}.brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{background:var(--accent-grad);color:#06121a;width:38px;height:38px;box-shadow:0 6px 22px #2ad6a84d, 0 2px 10px var(--violet-glow);border:0;border-radius:12px;flex-shrink:0;place-items:center;display:grid}.brand-mark svg,.brand-mark img{filter:none}.brand-text{min-width:0;display:grid}.brand-text .eyebrow{font-size:.62rem}.topbar-right{align-items:center;gap:10px;display:flex}.user-badge{border:1px solid var(--line);max-width:180px;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;background:#ffffff0a;border-radius:999px;padding:7px 12px;font-size:.78rem;font-weight:500;overflow:hidden}.topbar-badge{border:1px solid var(--line-accent);background:var(--accent-soft);color:var(--accent);letter-spacing:.02em;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;padding:7px 14px;font-size:.8rem;font-weight:700;display:inline-flex}.topbar-badge:before{content:"";background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 3px var(--accent-soft);border-radius:999px;animation:1.8s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.85)}}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);margin:0;font-size:.7rem;font-weight:600}.app-content{width:min(100%, var(--content-width));margin:0 auto;padding:18px}.page{gap:var(--s-4);animation:page-in var(--t-slow) var(--ease);display:grid}@keyframes page-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.page-header{padding:6px 4px 0}.page-header h2{font-family:var(--font-head);letter-spacing:-.01em;margin:4px 0 0;font-size:1.7rem;font-weight:600;line-height:1.05}.page-header.compact{justify-content:space-between;align-items:flex-start;gap:var(--s-3);padding:0;display:flex}.page-header.compact h3{font-family:var(--font-head);letter-spacing:-.01em;margin:4px 0 0;font-size:1.06rem;font-weight:600}.panel-card{padding:var(--s-5);border:1px solid var(--line);border-radius:var(--r-lg);-webkit-backdrop-filter:saturate(130%)blur(14px);box-shadow:var(--shadow);transition:border-color var(--t-med) var(--ease), transform var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease);background:linear-gradient(#ffffff0a,#ffffff03) padding-box padding-box,#0d1828b8 padding-box padding-box;position:relative;overflow:hidden}.panel-card:after{content:"";border-radius:inherit;-webkit-mask-composite:xor;pointer-events:none;opacity:.55;background:linear-gradient(140deg,#6c5cff73,#2ee6c038 35%,#0000 70%);padding:1px;position:absolute;top:0;bottom:0;left:0;right:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.panel-card:before{content:"";pointer-events:none;background:radial-gradient(120% 60% at 0 0,#ffffff0b,#0000 60%);position:absolute;top:0;bottom:0;left:0;right:0}.panel-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow), 0 0 0 1px #6c5cff29, 0 18px 50px #6c5cff1a;transform:translateY(-2px)}.panel-card>*{z-index:1;position:relative}.panel-card p{color:var(--muted);margin:0;line-height:1.6}.bottom-nav-wrap{left:12px;right:12px;bottom:calc(12px + var(--safe-bottom));z-index:30;-webkit-backdrop-filter:saturate(150%)blur(24px);border:1px solid var(--line-strong);box-shadow:var(--shadow-lg);background:#08101cc7;border-radius:22px;position:fixed;overflow:hidden}.bottom-nav-wrap:before,.bottom-nav-wrap:after{content:"";pointer-events:none;z-index:2;opacity:0;width:28px;transition:opacity var(--t-fast) var(--ease);position:absolute;top:0;bottom:0}.bottom-nav-wrap:before{background:linear-gradient(90deg,#08101cf2,#0000);left:0}.bottom-nav-wrap:after{opacity:1;background:linear-gradient(270deg,#08101cf2,#0000);right:0}.bottom-nav-wrap:before{opacity:1}.bottom-nav{z-index:1;gap:4px;padding:8px;display:grid;position:relative}.bottom-nav.bottom-nav-1{grid-template-columns:1fr}.bottom-nav.bottom-nav-scroll{scroll-snap-type:x proximity;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;scroll-padding:16px;display:flex;overflow:auto hidden}.bottom-nav.bottom-nav-scroll::-webkit-scrollbar{display:none}.nav-item{color:var(--muted);transition:color var(--t-med) var(--ease), background var(--t-med) var(--ease), transform var(--t-fast) var(--ease);cursor:pointer;scroll-snap-align:center;white-space:nowrap;border-radius:16px;flex:none;align-content:center;justify-items:center;gap:5px;min-width:68px;padding:9px 10px 8px;font-size:.7rem;font-weight:500;display:grid;position:relative}.nav-item:hover{color:var(--text-2);background:#ffffff08}.nav-item:active{transform:scale(.96)}.nav-item svg{transition:transform var(--t-med) var(--ease-out-back)}.nav-item:hover svg{transform:translateY(-1px)}.nav-item.active{background:var(--accent-grad-soft);color:var(--text);box-shadow:inset 0 0 0 1px #6c5cff4d}.nav-item.active:after{content:"";background:var(--accent-grad);width:24px;height:3px;box-shadow:0 0 14px var(--accent-glow), 0 0 18px var(--violet-glow);border-radius:999px;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.nav-item span{text-align:center;line-height:1}@media (min-width:900px){.topbar{padding-inline-start:24px;padding-inline-end:24px}.app-content{padding:24px}.bottom-nav-wrap{width:min(100% - 32px,920px);left:50%;right:auto;transform:translate(-50%)}.bottom-nav.bottom-nav-scroll{justify-content:center;overflow-x:visible}.bottom-nav-wrap:before,.bottom-nav-wrap:after{opacity:0}}@media (max-width:640px){.topbar{align-items:flex-start}.topbar-badge{padding:6px 10px;font-size:.74rem}.user-badge{max-width:110px;font-size:.74rem}.bottom-nav{gap:2px;padding:6px}.nav-item{min-width:64px;padding:8px 10px 7px;font-size:.62rem}.nav-item.active:after{width:18px;height:2px;bottom:-4px}input,select,textarea,.control-input{font-size:16px}}.dashboard-grid{gap:var(--s-3);grid-template-columns:repeat(3,1fr);display:grid}.metric-card{padding:var(--s-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-soft);transition:border-color var(--t-med) var(--ease), transform var(--t-med) var(--ease)}.metric-card:hover{border-color:var(--line-strong);transform:translateY(-1px)}.metric-label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted-2);margin-bottom:8px;font-size:.68rem;font-weight:600;display:block}.metric-value{font-family:var(--font-head);letter-spacing:-.01em;font-variant-numeric:tabular-nums;background:linear-gradient(120deg,#fff 0%,#bfe9dd 55%,#b6adff 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.4rem;font-weight:600;display:block}.status-pill{letter-spacing:.02em;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:6px 11px;font-size:.74rem;font-weight:700;display:inline-flex}.status-pill:before{content:"";opacity:.85;background:currentColor;border-radius:999px;width:6px;height:6px}.status-pill.success,.status-pill.good{background:var(--good-soft);color:var(--good);border-color:#2ad6a838}.status-pill.danger,.status-pill.low{background:var(--danger-soft);color:var(--danger);border-color:#ff6f7a38}.status-pill.mid{background:var(--warning-soft);color:var(--warning);border-color:#ffd16638}.status-pill.info{background:var(--info-soft);color:var(--info);border-color:#7cc7ff38}.status-list{gap:8px;display:grid}.status-row{justify-content:space-between;align-items:center;gap:var(--s-3);border-top:1px dashed var(--line);padding:12px 0;display:flex}.status-row:first-child{border-top:0;padding-top:0}.control-group{margin-top:var(--s-3);gap:6px;display:grid}.control-group:first-of-type{margin-top:0}.control-label{color:var(--muted);font-size:.78rem;font-weight:500}.control-input{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--bg-soft);width:100%;color:var(--text);transition:border-color var(--t-med) var(--ease), box-shadow var(--t-med) var(--ease), background var(--t-med) var(--ease);font-variant-numeric:tabular-nums;outline:none;padding:13px 14px}.control-input::placeholder{color:var(--muted-2)}.control-input:hover{border-color:#ffffff38}.control-input:focus{border-color:var(--line-accent);background:var(--bg-3);box-shadow:0 0 0 4px #60e8c824}select.control-input{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 16px),calc(100% - 11px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:36px}.control-textarea{resize:vertical;min-height:110px;line-height:1.55}input[type=range].control-input{-webkit-appearance:none;appearance:none;background:0 0;border:0;height:36px;padding:0 4px}input[type=range].control-input:focus{box-shadow:none}input[type=range].control-input::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--accent-strong), var(--accent), var(--info));border-radius:999px;height:6px}input[type=range].control-input::-moz-range-track{background:linear-gradient(90deg, var(--accent-strong), var(--accent), var(--info));border-radius:999px;height:6px}input[type=range].control-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;border:3px solid var(--accent-strong);cursor:grab;background:#fff;border-radius:999px;width:22px;height:22px;margin-top:-8px;box-shadow:0 4px 14px #00000073}input[type=range].control-input::-moz-range-thumb{border:3px solid var(--accent-strong);cursor:grab;background:#fff;border-radius:999px;width:22px;height:22px;box-shadow:0 4px 14px #00000073}input[type=range].control-input:active::-webkit-slider-thumb{cursor:grabbing;transform:scale(1.1)}.primary-action{border-radius:var(--r-md);background:var(--accent-grad);color:#06121a;letter-spacing:.01em;cursor:pointer;width:100%;transition:transform var(--t-fast) var(--ease), box-shadow var(--t-med) var(--ease), filter var(--t-fast) var(--ease);box-shadow:0 10px 26px #2ad6a842, 0 6px 22px var(--violet-glow), inset 0 1px 0 #fff6;border:0;margin-top:18px;padding:14px 18px;font-weight:700;position:relative}.primary-action:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 16px 36px #2ad6a852, 0 10px 30px var(--violet-glow), inset 0 1px 0 #fff6}.primary-action:active:not(:disabled){transform:translateY(1px)}.primary-action:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.4)}.status-action{border:1px solid var(--line-strong);border-radius:var(--r-sm);color:var(--text);cursor:pointer;transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);background:#ffffff05;justify-content:center;align-items:center;gap:6px;padding:10px 14px;font-size:.86rem;font-weight:600;display:inline-flex}.status-action:hover:not(:disabled){background:#ffffff0a;border-color:#ffffff38}.status-action:active:not(:disabled){transform:scale(.98)}.status-action:disabled{opacity:.5;cursor:not-allowed}.status-action.win{background:var(--good-soft);color:var(--good);border-color:#2ad6a842}.status-action.win:hover:not(:disabled){background:#2ad6a833}.status-action.loss{background:var(--danger-soft);color:var(--danger);border-color:#ff6f7a42}.status-action.neutral{background:var(--info-soft);color:var(--info);border-color:#7cc7ff38}.status-action.neutral:hover:not(:disabled){background:#7cc7ff33}.status-action.danger{background:var(--danger-soft);color:var(--danger);border-color:#ff6f7a52}.status-action.danger:hover:not(:disabled){background:#ff6f7a33}.icon-btn{border:1px solid var(--line-strong);border-radius:var(--r-sm);width:30px;height:30px;color:var(--muted);cursor:pointer;transition:color var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);background:#ffffff05;justify-content:center;align-items:center;padding:0;font-size:.85rem;display:inline-flex}.icon-btn:hover{color:var(--text);border-color:var(--line-accent);background:var(--accent-soft)}.icon-btn.danger:hover{color:var(--danger);background:var(--danger-soft);border-color:#ff6f7a80}.inline-action{align-items:stretch;gap:8px;display:flex}.inline-action .control-input{flex:auto}.inline-action .status-action{flex-shrink:0}.watchlist{gap:var(--s-3);display:grid}.watchlist-item{padding:var(--s-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-soft)}.watchlist-top{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.watchlist-levels{gap:var(--s-4);color:var(--muted);margin-top:12px;font-size:.92rem;display:flex}.watchlist-note{color:var(--muted);margin:10px 0 0}.bias-pill{text-transform:uppercase;letter-spacing:.06em;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:5px 10px;font-size:.7rem;font-weight:700;display:inline-flex}.bias-pill.bullish,.bias-pill.long{background:var(--bull-soft);color:var(--bull);border-color:#2ad6a83d}.bias-pill.bearish,.bias-pill.short{background:var(--bear-soft);color:var(--bear);border-color:#ff6f7a3d}.bias-pill.neutral{background:var(--neutral-soft);color:var(--neutral);border-color:#7cc7ff3d}@media (max-width:640px){.dashboard-grid{grid-template-columns:1fr}.page-header.compact{flex-direction:column}.watchlist-levels{flex-direction:column;gap:6px}}.direction-switch{grid-template-columns:1fr 1fr;gap:10px;display:grid}.switch-btn{border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--bg-soft);color:var(--muted);cursor:pointer;transition:all var(--t-fast) var(--ease);letter-spacing:.04em;padding:13px 16px;font-weight:700}.switch-btn:hover{color:var(--text-2);border-color:#ffffff38}.switch-btn.active{color:var(--text)}.switch-btn.active.long{background:var(--bull-soft);border-color:#2ad6a866}.switch-btn.active.short{background:var(--bear-soft);border-color:#ff6f7a66}.score-block{gap:var(--s-3);display:grid}.score-row{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.score-bar{border:1px solid var(--line);background:#ffffff0f;border-radius:999px;height:10px;overflow:hidden}.score-fill{height:100%;transition:width var(--t-slow) var(--ease);border-radius:999px;box-shadow:0 0 16px #00000040}.score-fill.good{background:linear-gradient(90deg, var(--accent-strong), var(--accent))}.score-fill.mid{background:linear-gradient(90deg,#ffd166,#f4b942)}.score-fill.low{background:linear-gradient(90deg, var(--danger), #ff8b8b)}.score-note{color:var(--muted);margin:0;line-height:1.5}.screener-groups{gap:var(--s-4);display:grid}.checklist{gap:8px;display:grid}.check-item{align-items:flex-start;gap:var(--s-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-soft);color:var(--text);cursor:pointer;transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);padding:12px 14px;display:flex}.check-item:hover{border-color:var(--line-strong)}.check-item input{accent-color:var(--accent-strong);margin-top:3px}.check-item.checked{background:linear-gradient(#2ad6a80f,#2ad6a805);border-color:#2ad6a866}.form-grid{gap:var(--s-3);grid-template-columns:repeat(2,1fr);display:grid}.empty-copy{color:var(--muted);margin:0;line-height:1.6}.result-list{gap:0;display:grid}.result-row{justify-content:space-between;align-items:center;gap:var(--s-3);border-top:1px dashed var(--line);font-variant-numeric:tabular-nums;padding:12px 0;display:flex}.result-row:first-child{border-top:0;padding-top:0}.result-row>span{color:var(--muted);font-size:.88rem}.result-row>strong{font-weight:700}@media (max-width:640px){.form-grid{grid-template-columns:1fr}}.spaced-top{margin-top:var(--s-4)}.journal-list{gap:var(--s-3);display:grid}.journal-item{padding:var(--s-4);border:1px solid var(--line);border-radius:var(--r-md);background:linear-gradient(180deg, #ffffff06, #fff0) padding-box, var(--bg-soft) padding-box;transition:border-color var(--t-med) var(--ease), transform var(--t-med) var(--ease)}.journal-item:hover{border-color:var(--line-strong);transform:translateY(-1px);box-shadow:0 0 0 1px #6c5cff1f,0 10px 28px #6c5cff14}.journal-top{justify-content:space-between;align-items:flex-start;gap:var(--s-3);display:flex}.journal-top strong{font-family:var(--font-head);letter-spacing:-.01em;font-size:1.02rem;font-weight:600}.journal-date{color:var(--muted-2);margin:4px 0 0;font-size:.8rem}.journal-grid{margin-top:var(--s-3);grid-template-columns:repeat(3,1fr);gap:8px;display:grid}@media (max-width:640px){.journal-grid{grid-template-columns:repeat(2,1fr)}}.journal-stat{border:1px solid var(--line);border-radius:var(--r-sm);font-variant-numeric:tabular-nums;transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);background:#ffffff08;padding:10px 12px}.journal-stat:hover{border-color:var(--line-accent);background:#ffffff0d}.journal-stat span{color:var(--muted-2);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;font-size:.7rem;display:block}.journal-stat strong{font-family:var(--font-head);font-size:.98rem;font-weight:600}.journal-note{margin:var(--s-3) 0 0;color:var(--text-2);border-left:2px solid var(--accent-strong);border-radius:0 var(--r-sm) var(--r-sm) 0;white-space:pre-line;background:#ffffff05;padding:10px 12px;font-size:.9rem;line-height:1.55}.journal-actions{margin-top:var(--s-3);flex-wrap:wrap;gap:8px;display:flex}.realized-r-block{margin-top:var(--s-4);padding-top:var(--s-3);border-top:1px dashed var(--line);gap:var(--s-3);display:grid}.watchlist-compact{background:var(--line);border-radius:var(--r-md);border:1px solid var(--line);gap:1px;display:grid;overflow:hidden}.watchlist-row{background:var(--bg-elevated);transition:background var(--t-fast) var(--ease);grid-template-columns:minmax(110px,1.4fr) minmax(80px,1fr) minmax(70px,.8fr) auto;align-items:center;gap:10px;padding:11px 14px;font-size:.92rem;display:grid}.watchlist-row:not(.header):hover{background:var(--bg-3)}.watchlist-row.header{color:var(--muted-2);text-transform:uppercase;letter-spacing:.1em;background:#ffffff06;padding:9px 14px;font-size:.7rem;font-weight:700}.watchlist-row .row-symbol{flex-direction:column;gap:2px;min-width:0;display:flex}.watchlist-row .row-symbol strong{white-space:nowrap;text-overflow:ellipsis;font-size:.96rem;overflow:hidden}.watchlist-row .row-symbol span{color:var(--muted-2);white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.watchlist-row .row-price,.watchlist-row .row-change{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.watchlist-row .row-change.up{color:var(--good)}.watchlist-row .row-change.down{color:var(--danger)}.watchlist-row .row-change.flat{color:var(--muted)}.watchlist-row .row-actions{justify-content:flex-end;gap:6px;display:flex}.row-detail{background:var(--bg-elevated);border-top:1px solid var(--line-strong);padding:12px 14px 16px}.detail-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:8px;display:grid}@media (max-width:640px){.detail-grid{grid-template-columns:1fr}}.quick-commands{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.quick-pill{border:1px solid var(--line-strong);background:var(--accent-soft);color:var(--text);cursor:pointer;transition:background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);white-space:nowrap;border-radius:999px;padding:8px 13px;font-size:.84rem;font-weight:600}.quick-pill:hover:not(:disabled){border-color:var(--line-accent);background:#60e8c838;transform:translateY(-1px)}.quick-pill:disabled{opacity:.5;cursor:not-allowed}.auth-page{place-content:center;min-height:60vh}.auth-card{max-width:420px;margin:8vh auto 0;padding:28px}.auth-form{gap:12px;display:grid}.auth-message{border-radius:var(--r-sm);color:var(--text-2);border-left:3px solid var(--accent-strong);background:#ffffff0a;padding:10px 12px;font-size:.88rem}.auth-switch{text-align:center;color:var(--muted);margin-top:16px;font-size:.85rem}.auth-switch button{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0 4px;font-weight:700}.chat-layout{min-height:60vh;grid-template-rows:1fr auto;gap:12px;min-height:60dvh;display:grid}.chat-messages{overscroll-behavior:contain;max-height:60vh;gap:10px;max-height:60dvh;padding:4px;display:grid;overflow-y:auto}.chat-bubble{border:1px solid var(--line);background:var(--bg-soft);white-space:pre-wrap;word-wrap:break-word;border-radius:16px;max-width:85%;padding:12px 14px;font-size:.94rem;line-height:1.55}.chat-bubble.user{background:linear-gradient(135deg, var(--accent-strong), var(--accent));color:#052119;border:0;border-bottom-right-radius:4px;justify-self:end}.chat-bubble.assistant{border-bottom-left-radius:4px;justify-self:start}.chat-composer{align-items:flex-end;gap:8px;display:flex}.chat-composer .control-input{flex:auto}.chart-wrap{width:100%;height:320px;margin-top:var(--s-3)}.deposit-list{margin-top:var(--s-3);gap:8px;display:grid}.deposit-item{border:1px solid var(--line);border-radius:var(--r-sm);font-variant-numeric:tabular-nums;background:#ffffff05;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-size:.9rem;display:flex}.deposit-note{color:var(--muted-2);margin-top:2px;font-size:.78rem}.deposit-actions{gap:6px;display:flex}.divider{border:0;border-top:1px dashed var(--line);margin:var(--s-3) 0}.fade-in{animation:fade-in var(--t-slow) var(--ease)}@keyframes fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.nav-badge{background:var(--danger,#ef4444);color:#fff;text-align:center;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--bg,#0b1220);border-radius:999px;padding:0 4px;font-size:.62rem;font-weight:700;line-height:16px;position:absolute;top:2px;right:8px}.topbar-search input{border:1px solid var(--border,#ffffff1a);width:150px;max-width:32vw;color:var(--text,#e8eef6);transition:border-color var(--t-fast,.15s) ease, background var(--t-fast,.15s) ease;background:#ffffff0a;border-radius:999px;outline:none;padding:7px 12px;font-size:.8rem}.topbar-search input:focus{border-color:var(--accent,#36d399);background:#ffffff12}.topbar-search input::placeholder{color:var(--muted,#7e8a99)}.signal-card{position:relative}.signal-card:before{content:"";border-radius:0 3px 3px 0;width:3px;position:absolute;top:14px;bottom:14px;left:0}.signal-card.is-long:before{background:linear-gradient(180deg, var(--accent-strong), var(--accent));box-shadow:0 0 16px var(--accent-glow)}.signal-card.is-short:before{background:linear-gradient(180deg, #ff8a93, var(--danger));box-shadow:0 0 16px #ff6f7a6b}.signal-card .journal-top strong{font-family:var(--font-head);letter-spacing:-.01em;font-size:1.02rem}.signal-card .status-pill{box-shadow:0 0 18px #6c5cff38}.signal-card .journal-grid{gap:8px}.signal-card .journal-stat{border:1px solid var(--line);border-radius:var(--r-sm);transition:border-color var(--t-fast) var(--ease), background var(--t-fast) var(--ease);background:#ffffff09;padding:9px 11px}.signal-card .journal-stat:hover{border-color:var(--line-accent);background:#ffffff0d}.signal-card .journal-stat strong{font-family:var(--font-head)}.bento-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bento-grid .hero{background:radial-gradient(130% 150% at 0% 0%, #6c5cff2e, transparent 55%), var(--accent-grad-soft), var(--bg-soft);border-color:#6c5cff4d;grid-column:1/-1}.bento-grid .hero .metric-label{color:var(--text-2)}.bento-grid .hero .metric-value{font-size:2rem}@media (min-width:560px){.bento-grid{grid-template-columns:1.5fr 1fr 1fr}.bento-grid .hero{grid-column:1}}.trade-card{position:relative}.trade-card:before{content:"";border-radius:0 3px 3px 0;width:3px;position:absolute;top:14px;bottom:14px;left:0}.trade-card.is-win:before{background:linear-gradient(180deg, var(--accent-strong), var(--accent));box-shadow:0 0 14px var(--accent-glow)}.trade-card.is-loss:before{background:linear-gradient(180deg, #ff8a93, var(--danger));box-shadow:0 0 14px #ff6f7a66}.trade-card.is-open:before{background:linear-gradient(180deg, var(--info), #4a90d9);box-shadow:0 0 14px #7cc7ff57}
