:root{color-scheme:dark;--bg:#080a0f;--bg-elevated:#0d1017;--surface:#11151d;--surface-alt:#151a24;--surface-soft:#0f131b;--border:#202633;--border-focus:#354154;--fg:#e6eaf2;--fg-emphasis:#ffffff;--text:var(--fg);--muted:#8e97aa;--muted-alt:#626c80;--line:var(--border);--line-strong:var(--border-focus);--accent:#46c58f;--accent-dim:#2f8767;--accent-bg:rgba(70,197,143,0.1);--primary-strong:#78d6aa;--up:#4ecb82;--up-bg:rgba(78,203,130,0.12);--success:var(--up);--success-soft:var(--up-bg);--down:#ff5c7a;--down-bg:rgba(255,92,122,0.12);--danger:var(--down);--danger-soft:var(--down-bg);--warn:#f2b84b;--warn-bg:rgba(242,184,75,0.12);--warning:var(--warn);--warning-soft:var(--warn-bg);--neutral-bg:rgba(126,139,163,0.1);--secondary-accent:#7f9f8f;--secondary-accent-bg:rgba(127,159,143,0.1);--font-ui:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--font-mono:"JetBrains Mono","IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;--radius:6px;--radius-lg:8px;--shadow:0 1px 0 rgba(255,255,255,0.03),0 16px 44px rgba(0,0,0,0.3);--shadow-drop:0 24px 70px rgba(0,0,0,0.5);--glow:0 0 0 1px rgba(70,197,143,0.12),0 0 20px rgba(70,197,143,0.055)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.charts-command-bar{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr) auto;align-items:center;grid-gap:20px;gap:20px;min-height:84px;padding:12px 16px}.charts-command-bar .header-left{min-width:0}.charts-command-bar .search-form{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;width:100%}.charts-command-bar .search-input{min-height:44px;font-size:14px}.charts-command-bar .search-btn{min-width:68px;min-height:44px}.chart-inline-message{margin:6px 0 0;font-size:12px;line-height:1.4}.chart-inline-message.error{color:#ef5350}.charts-command-bar .header-center{display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0}.chart-context-identity{min-width:0}.chart-context-kicker{display:block;margin-bottom:2px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.charts-command-bar .charts-header-title{display:flex;align-items:center;gap:8px;margin:0;font-size:18px;line-height:1.2}.chart-exchange-badge,.chart-status-chip{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:3px 8px;color:var(--muted);background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.chart-exchange-badge{color:var(--fg);font-size:10px}.charts-command-bar .charts-header-company-name{display:block;max-width:520px;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-context-status{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.chart-status-chip .status-dot{width:7px;height:7px;background:var(--accent);border-radius:50%}.watchlist-collapse-btn{min-height:40px;padding-inline:12px;white-space:nowrap}.chart-tabs-bar{min-height:46px;padding:5px 12px}.chart-tab,.chart-tab-close,.chart-tab-main{min-height:36px}.autocomplete-item:focus-visible,.chart-tab-close:focus-visible,.chart-tab-main:focus-visible,.group-item-select:focus-visible,.mobile-watchlist-trigger:focus-visible,.sidebar-item-main:focus-visible,.watchlist-collapse-btn:focus-visible,.watchlist-drawer-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.charts-body{display:grid;grid-template-columns:minmax(0,1fr) 304px;min-width:0;overflow:hidden;transition:grid-template-columns .16s ease}.charts-body.watchlist-collapsed{grid-template-columns:minmax(0,1fr) 0}.charts-chart-container{min-width:0;min-height:540px}.charts-sidebar{width:auto;min-width:0;overflow:hidden auto;transition:opacity .12s ease,border-color .12s ease}.charts-sidebar.collapsed{width:0;border-color:transparent;opacity:0;pointer-events:none}.sidebar-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sidebar-title-row h3,.sidebar-title-row p{margin:0}.mobile-watchlist-trigger small,.sidebar-title-row p,.watchlist-drawer-heading span{display:block;margin-top:3px;color:var(--muted);font-size:11px}.watchlist-sync-status{min-height:16px;margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.35}.watchlist-sync-status.syncing{color:var(--accent)}.watchlist-sync-status.error{color:var(--danger)}.autocomplete-dropdown .autocomplete-item{display:flex;width:100%;border:0;border-radius:0;text-align:left}.group-dropdown-item{display:grid;grid-template-columns:minmax(0,1fr) auto}.group-item-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;width:100%;padding:9px 10px;color:inherit;background:transparent;border:0;text-align:left}.group-item-label{justify-content:space-between;width:100%}.sidebar-item{display:grid;grid-template-columns:minmax(0,1fr) 36px;align-items:stretch;padding:0}.sidebar-item-main{min-width:0;padding:10px 8px 10px 12px;color:inherit;background:transparent;border:0;text-align:left}.sidebar-item .delete-item-btn{align-self:center;opacity:.45}.sidebar-item:focus-within .delete-item-btn,.sidebar-item:hover .delete-item-btn{opacity:1}.sidebar-empty-state p{margin:0 0 12px}.sidebar-empty-action{min-height:40px}.watchlist-state-panel{display:grid;grid-gap:10px;gap:10px;margin:14px;padding:18px;background:var(--surface-soft);border:1px solid var(--border);border-radius:10px}.watchlist-state-panel p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.mobile-watchlist-trigger,.watchlist-drawer-backdrop,.watchlist-drawer-heading{display:none}.chart-live-region{position:fixed;right:20px;bottom:20px;z-index:80}.watchlist-undo-toast{display:flex;align-items:center;gap:16px;padding:12px 14px;color:var(--fg);background:var(--surface-alt);border:1px solid var(--border-focus);border-radius:10px;box-shadow:var(--shadow-drop);font-size:13px}.watchlist-undo-toast button{min-height:36px;color:var(--accent)}@media (max-width:900px){.charts-command-bar{grid-template-columns:1fr;gap:10px;min-height:0;padding:12px}.charts-command-bar .header-center{align-items:flex-start}.chart-context-status{justify-content:flex-start}.charts-command-bar .header-right,.watchlist-collapse-btn{display:none}.charts-command-bar .charts-header-company-name{max-width:min(58vw,340px)}.chart-tabs-bar{position:relative;padding-inline:10px;overflow:hidden}.chart-tabs-list{overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity}.chart-tab{flex:0 0 auto;scroll-snap-align:start}.chart-tab-close,.chart-tab-main{min-height:44px}.charts-body,.charts-body.watchlist-collapsed{display:block;overflow:visible}.charts-chart-container{height:min(520px,calc(100dvh - 330px));min-height:430px}.mobile-watchlist-trigger{display:flex;align-items:center;justify-content:space-between;gap:16px;width:calc(100% - 20px);min-height:58px;margin:10px;padding:10px 12px;color:var(--fg);background:var(--surface);border:1px solid var(--border);border-radius:10px;text-align:left}.mobile-watchlist-trigger>span:last-child{color:var(--muted);font-size:12px;white-space:nowrap}.watchlist-drawer-backdrop{display:block;position:fixed;inset:0;z-index:60;padding:0;background:rgba(0,0,0,.56);border:0;border-radius:0}.charts-sidebar,.charts-sidebar.collapsed{position:fixed;right:0;bottom:0;left:0;z-index:70;width:100%;max-width:520px;max-height:72dvh;margin-inline:auto;overflow-y:auto;background:var(--surface);border:1px solid var(--border-focus);border-bottom:0;border-radius:16px 16px 0 0;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(100%);transition:transform .18s ease,opacity .14s ease,visibility 0s linear .18s}.charts-sidebar.collapsed.mobile-open,.charts-sidebar.mobile-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s}.watchlist-drawer-heading{display:flex;position:-webkit-sticky;position:sticky;top:0;z-index:2;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:10px 14px;background:var(--surface);border-bottom:1px solid var(--border)}.watchlist-drawer-close{width:44px;height:44px;padding:0;color:var(--fg);background:var(--surface-alt);border:1px solid var(--border);font-size:24px}.charts-sidebar>.sidebar-header h3,.charts-sidebar>.sidebar-header>.sidebar-title-row{display:none}.chart-live-region{right:10px;bottom:10px;left:10px}.watchlist-undo-toast{justify-content:space-between}}@media (max-width:520px){.charts-command-bar .header-center{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.charts-command-bar .charts-header-company-name{max-width:88vw}.chart-context-status{flex-wrap:nowrap;overflow-x:auto}}@media (prefers-reduced-motion:reduce){.charts-body,.charts-sidebar,.charts-sidebar.collapsed{transition:none}}.profile-page.profile-v2 .profile-actions .profile-btn-primary,.profile-page.profile-v2 .profile-field .profile-password-toggle,.profile-page.profile-v2 .profile-summary .profile-logout{min-height:44px!important}.route-loading{display:grid;min-height:min(620px,calc(100vh - 96px));align-content:start;grid-gap:16px;gap:16px;padding:4px}.route-loading-label{color:var(--muted);font-size:13px;font-weight:700}.route-loading-heading,.route-loading-panel>div,.route-loading-toolbar{background:var(--surface-alt);border:1px solid var(--border);animation:route-loading-pulse 1.2s ease-in-out infinite alternate}.route-loading-heading{width:min(340px,72%);height:42px;border-radius:var(--radius-lg)}.route-loading-toolbar{width:min(640px,100%);height:48px;border-radius:var(--radius-lg)}.route-loading-panel{display:grid;min-height:320px;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;padding-top:4px}.route-loading-panel>div{min-height:142px;border-radius:var(--radius-lg)}.chart-loading-shell{display:grid;place-items:center;color:var(--muted);font-size:13px;font-weight:700}@keyframes route-loading-pulse{0%{opacity:.48}to{opacity:.82}}@media (max-width:700px){.route-loading-panel{grid-template-columns:1fr}.route-loading-panel>div:nth-child(n+3){display:none}}@media (prefers-reduced-motion:reduce){.route-loading-heading,.route-loading-panel>div,.route-loading-toolbar{animation:none}}*{box-sizing:border-box}body,html{min-width:320px;min-height:100%;margin:0;background:var(--bg);color:var(--fg);font:14px/1.5 var(--font-ui);letter-spacing:0;-webkit-font-smoothing:antialiased}body{overflow:hidden}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}a{color:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--border-focus);border-radius:3px}.app-shell{display:flex;height:100vh;overflow:hidden;background:#080a10;position:relative}.app-shell:before{top:-100px;left:-100px;width:400px;height:400px;background:rgba(34,201,151,.035);filter:blur(120px)}.app-shell:after,.app-shell:before{content:"";position:absolute;pointer-events:none;z-index:0}.app-shell:after{bottom:-150px;right:-150px;width:450px;height:450px;background:rgba(70,197,143,.015);filter:blur(130px)}.app-sidebar{z-index:20;width:240px;min-width:240px;padding:12px}.sidebar-brand{height:52px;padding:0 12px;border-bottom:none;margin-bottom:8px}.brand-mark,.sidebar-brand{display:flex;align-items:center}.brand-mark{gap:10px;color:var(--fg);text-decoration:none;transition:color .25s cubic-bezier(.4,0,.2,1)}.brand-mark:hover{color:var(--fg-emphasis)}.brand-logo{width:32px;height:32px;border-radius:var(--radius);object-fit:contain;border:1px solid var(--border);transition:transform .25s cubic-bezier(.4,0,.2,1)}.brand-mark:hover .brand-logo{transform:scale(1.06)}.brand-mark strong{font-size:16px;font-weight:700;line-height:1.25;letter-spacing:-.02em}.sidebar-brand p{margin:6px 0 0;color:var(--muted-alt);font-family:var(--font-ui);font-size:11px}.sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:8px;overflow-y:auto}.sidebar-nav-section{color:var(--muted-alt);display:block;font-size:10px;font-weight:700;letter-spacing:.08em;margin:12px 10px 4px;text-transform:uppercase}.nav-item{display:flex;align-items:center;gap:10px;min-height:38px;border-radius:var(--radius);font-size:13px;font-weight:600;text-decoration:none;transition:background .16s ease,color .16s ease}.nav-item:hover{background:var(--surface)}.nav-item.active{color:var(--accent);background:var(--accent-bg)}.nav-icon{display:inline-grid;width:30px;height:30px;place-items:center;border:1px solid var(--border);border-radius:7px;color:var(--muted);transition:background .16s ease,border-color .16s ease,color .16s ease}.nav-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.nav-item.active .nav-icon{border-color:rgba(34,201,151,.35);background:rgba(34,201,151,.08)}.sidebar-footer{display:flex;gap:8px;align-items:center;padding:14px 16px;color:var(--muted);border-top:1px solid var(--border);font-size:11px;line-height:1.4}.status-dot{display:inline-block;width:7px;height:7px;flex:0 0 auto;border-radius:50%;box-shadow:0 0 8px var(--accent)}.status-dot.offline{background:var(--down);box-shadow:0 0 8px var(--down)}.app-workspace{display:flex;min-width:0;flex:1 1;flex-direction:column;overflow:hidden;margin:12px 12px 12px 0;background:rgba(18,22,30,.55);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:16px;border:1px solid rgba(255,255,255,.05);box-shadow:0 12px 40px -12px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.015);z-index:1}.app-topbar{height:56px;min-height:56px;gap:16px;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.04);box-sizing:border-box}.app-topbar,.header-status{display:flex;align-items:center}.header-status{gap:8px;color:var(--muted);font-size:12px;font-weight:600}.header-spacer{flex:1 1}.header-time{color:var(--muted);font-family:var(--font-mono);font-size:12px}.app-content{flex:1 1;min-height:0;overflow:auto;padding-bottom:28px}.disclaimer{min-height:27px;padding:6px 20px;color:var(--muted-alt);background:var(--bg-elevated);border-top:1px solid var(--border);text-align:center;font-size:10px}.page-surface,main{width:min(1480px,100%);margin:0 auto;padding:20px}.card-header,.section-heading,header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}header{padding:0 0 16px}h1,h2,h3,p{margin-top:0}h1{margin:4px 0 0;font-size:24px;line-height:1.18;font-weight:760}h1,h2{color:var(--fg-emphasis)}h2{margin:0 0 4px;font-size:16px;line-height:1.25;font-weight:720}h3{margin:0 0 10px;color:var(--fg);font-size:13px;font-weight:700}.card-title,.eyebrow{gap:8px;color:var(--muted);font-size:11px;letter-spacing:.05em}.badge,.card-title,.eyebrow,.state,.strategy-badge{display:inline-flex;align-items:center;font-weight:760;text-transform:uppercase}.badge,.state,.strategy-badge{min-height:22px;padding:2px 7px;border-radius:3px;font-size:10px;letter-spacing:.04em;line-height:1.4;white-space:nowrap}.badge{color:var(--muted);background:var(--neutral-bg);border:1px solid var(--border);box-shadow:none}.badge-online,.badge.online,.state{color:var(--accent);background:var(--accent-bg);border-color:rgba(34,201,151,.28)}.badge-offline,.badge.offline{color:var(--down);background:var(--down-bg);border-color:rgba(239,83,80,.3)}.badge-warn{color:var(--warn);background:var(--warn-bg);border-color:rgba(245,158,11,.32)}.badge-neutral{color:var(--muted);background:var(--neutral-bg)}.strategy-badge{color:var(--warn);background:var(--warn-bg);font-family:var(--font-mono)}.grid,.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;margin:0 0 16px}.analytics-panel,.card,.panel,.table-panel,article{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.card,.panel,article{padding:16px}.grid article p,.panel p,article p{margin:0 0 5px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}article strong{display:block;color:var(--fg-emphasis);font-family:var(--font-mono);font-size:19px;font-weight:800;line-height:1.2;overflow-wrap:anywhere}.panel{display:flex;align-items:center;justify-content:space-between;gap:16px}.analytics-panel,.card,.table-panel{margin-top:16px;padding:16px}.analytics-panel{overflow:hidden}.analytics-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px;color:var(--muted);font-size:11px;font-weight:700}.legend-dot{width:8px;height:8px;border-radius:999px}.legend-dot.visitors{background:#2fb8ff}.legend-dot.visits{background:var(--accent)}.legend-dot.registrations{background:var(--warn)}.analytics-chart{height:260px;border:1px solid rgba(255,255,255,.045);border-radius:var(--radius);background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(0,0,0,.04))}.analytics-chart svg{display:block;width:100%;height:100%}.chart-grid-line{stroke:rgba(142,151,170,.16);stroke-width:1}.analytics-line{fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.visitors-line{stroke:#2fb8ff}.visits-line{stroke:var(--accent)}.registrations-line{stroke:var(--warn)}.registration-bar{fill:rgba(242,184,75,.28)}.chart-axis-label{fill:var(--muted);font-family:var(--font-mono);font-size:11px}.section-heading{margin-bottom:14px}.section-heading p{margin:0;color:var(--muted);font-size:12px}.filter-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}table{width:100%;min-width:780px;border-collapse:collapse;font-size:12px}thead th{position:-webkit-sticky;position:sticky;top:0;z-index:1;color:var(--muted-alt);background:var(--surface);border-bottom:1px solid var(--border);font-size:10px;font-weight:760;letter-spacing:.06em;text-transform:uppercase}td,th,thead th{text-align:left;white-space:nowrap}td,th{padding:9px 10px;border-bottom:1px solid rgba(37,40,48,.78);vertical-align:middle}tbody tr:hover td{background:rgba(255,255,255,.025)}.data-table .symbol,.symbol{color:var(--fg-emphasis);font-family:var(--font-mono);font-weight:800}.back,.back-link,.symbol a{color:var(--accent);text-decoration:none}.back-link:hover,.back:hover,.symbol a:hover{color:var(--primary-strong)}.symbol-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;min-height:24px;align-items:center;padding:0;color:var(--accent);background:transparent;border:0;border-radius:var(--radius);font:inherit;font-family:var(--font-mono);font-weight:800}.symbol-button:focus-visible,.symbol-button:hover{color:var(--primary-strong);text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid rgba(34,201,151,.35);outline-offset:2px}.json{max-width:520px;color:var(--muted);overflow-wrap:anywhere;white-space:normal}.explanation-cell{min-width:300px;max-width:540px;vertical-align:top;white-space:normal}.signal-explanation{color:var(--fg)}.signal-explanation summary{color:var(--fg);cursor:pointer;font-size:12px;font-weight:760;line-height:1.45}.signal-explanation div{display:grid;grid-gap:10px;gap:10px;margin-top:10px;padding:12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg)}.signal-explanation h3{margin:0;color:var(--fg-emphasis);font-size:12px}.signal-explanation ul{display:grid;grid-gap:7px;gap:7px;margin:0;padding-left:18px}.signal-explanation li{color:var(--muted);font-size:12px;line-height:1.5}.empty-row{padding:24px 10px;color:var(--muted);background:var(--bg);text-align:center;font-weight:650}pre{margin:0;color:#cdd1dc;font:11px/1.6 var(--font-mono);overflow-wrap:anywhere;white-space:pre-wrap}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:16px}.signal-chart-panel,.signal-raw-details,.signal-story-article,.signal-story-hero,.signal-story-plan{margin-top:16px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.signal-story-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.signal-story-article h2,.signal-story-hero h1{margin:4px 0 8px;color:var(--fg-emphasis)}.signal-story-article p,.signal-story-hero p{margin:0;color:var(--muted);font-size:14px;line-height:1.65}.signal-story-badges,.signal-story-highlights{display:flex;flex-wrap:wrap;gap:8px}.signal-chart-panel{padding:0;overflow:hidden}.signal-detail-chart{min-height:520px;border:0;border-radius:var(--radius-lg)}.signal-story-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);grid-gap:14px;gap:14px}.signal-story-article{display:grid;grid-gap:10px;gap:10px}.signal-disclaimer{padding:10px 12px;color:var(--muted);background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius);font-size:12px;font-weight:700}.signal-story-plan dl{display:grid;grid-gap:10px;gap:10px;margin:10px 0 0}.signal-story-plan dl div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.signal-story-plan dl div:last-child{border-bottom:0}.signal-story-plan dt{color:var(--muted);font-size:12px;font-weight:760}.signal-story-plan dd{margin:0;color:var(--fg-emphasis);font-family:var(--font-mono);font-size:14px;font-weight:850}.signal-story-highlights{margin-top:14px}.signal-story-highlights span{padding:8px 10px;color:var(--fg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-size:12px;font-weight:760}.signal-raw-details summary{cursor:pointer;color:var(--muted);font-weight:800}@media (max-width:900px){.signal-story-hero,.signal-story-layout{grid-template-columns:1fr}.signal-story-hero{align-items:flex-start;flex-direction:column}.signal-detail-chart{min-height:420px}}.back{display:inline-flex;margin-bottom:18px;font-weight:700}footer{color:var(--muted-alt);font-size:11px;padding:20px 4px 0}button:not(.symbol-button):not(.modal-close):not(.delete-group-pill-btn):not(.add-group-pill-btn):not(.delete-item-btn):not(.group-selector-trigger):not(.indicator-toggle-btn):not(.indicator-panel-close):not(.indicator-color-dot):not(.autocomplete-item):not(.signal-action-button):not(.group-item-select):not(.group-dropdown-create-btn):not(.mobile-watchlist-trigger):not(.watchlist-drawer-close):not(.new-group-submit-btn){min-height:34px;padding:7px 12px;color:#061411;background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius);font-weight:760}button:not(.symbol-button):not(.modal-close):not(.delete-group-pill-btn):not(.add-group-pill-btn):not(.delete-item-btn):not(.group-selector-trigger):not(.indicator-toggle-btn):not(.indicator-panel-close):not(.indicator-color-dot):not(.autocomplete-item):not(.signal-action-button):not(.group-item-select):not(.group-dropdown-create-btn):not(.mobile-watchlist-trigger):not(.watchlist-drawer-close):not(.new-group-submit-btn):hover{background:var(--primary-strong);border-color:var(--primary-strong)}.btn-secondary,.charts-nav-btn{display:inline-flex;min-height:34px;align-items:center;padding:7px 12px;color:var(--fg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-size:12px;font-weight:700;text-decoration:none}.charts-nav-btn.badge-online{color:var(--accent);background:var(--accent-bg);border-color:rgba(34,201,151,.35)}.btn-secondary:hover,.charts-nav-btn:hover{color:var(--accent);background:var(--surface-alt)}.manual-scan-control{display:inline-flex;align-items:center;gap:8px}.manual-scan-control button{white-space:nowrap}.manual-scan-control span{max-width:240px;color:var(--muted);font-size:11px;line-height:1.35}.signal-scan-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;justify-content:flex-end}.signal-scan-controls .manual-scan-control,.signal-scan-controls .telegram-send-control,.signal-scan-controls>button{min-height:46px}.signal-scan-controls .manual-scan-control button,.signal-scan-controls .telegram-send-btn,.signal-scan-controls>button{height:46px}.signal-scan-controls label{display:grid;grid-gap:5px;gap:5px;color:var(--muted);font-size:10px;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.signal-scan-controls input{height:46px;min-width:150px}.input,.search-input,.sidebar-search,input,select{width:100%;min-height:34px;padding:7px 10px;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}input::placeholder{color:var(--muted-alt)}.search-input:focus,.sidebar-search:focus,input:focus,select:focus{border-color:var(--accent);outline:none}.backtest-form{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(200px,1.35fr) repeat(4,minmax(110px,1fr)) auto;grid-gap:10px;gap:10px;align-items:flex-end;margin:0 0 16px}.backtest-form label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:11px;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.backtest-error{margin:10px 0 16px;padding:10px 12px;color:var(--down);background:var(--down-bg);border:1px solid rgba(239,83,80,.32);border-radius:var(--radius);font-size:13px;font-weight:650}.backtest-results{display:grid;grid-gap:16px;gap:16px}.backtest-metrics,.bt-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));grid-gap:10px;gap:10px}.backtest-metrics div,.backtest-trade-highlight,.bt-metric{min-width:0;padding:12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}.backtest-metrics p,.backtest-trade-highlight p,.bt-metric .label{margin:0 0 6px;color:var(--muted);font-size:10px;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.backtest-metrics strong,.backtest-trade-highlight strong,.bt-metric .value{display:block;color:var(--fg-emphasis);font-family:var(--font-mono);font-size:16px;line-height:1.35;overflow-wrap:anywhere}.backtest-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.backtest-assumptions{display:flex;flex-wrap:wrap;gap:8px}.backtest-assumptions span{padding:6px 9px;color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:999px;font-size:11px;font-weight:650}.backtest-subtable{overflow-x:auto}.backtest-subtable table{min-width:900px}.down,.negative,.positive,.up{font-weight:730}.modal-open{overflow:hidden}.chart-modal-backdrop{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.68);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chart-modal{width:min(1600px,96vw);max-height:calc(100vh - 40px);padding:18px;overflow:auto;background:var(--surface);border:1px solid var(--border-focus);border-radius:var(--radius-lg);box-shadow:var(--shadow-drop)}.chart-modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.chart-modal-heading h2{margin:4px 0;font-size:20px}.chart-modal-heading p{margin:0;color:var(--muted);font-size:12px}.modal-close{display:grid;width:32px;height:32px;place-items:center;color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);font-size:18px}.modal-close:hover{color:var(--fg);background:var(--surface-alt)}.trade-levels{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.trade-levels span{padding:6px 9px;background:var(--bg);border:1px solid var(--border);border-radius:999px;font-size:11px;font-weight:760}.trade-levels .entry-level{color:var(--accent);background:var(--accent-bg)}.trade-levels .stop-level{color:var(--down);background:var(--down-bg)}.trade-levels .target-level{color:var(--up);background:var(--up-bg)}.chart-stage{position:relative;height:550px;overflow:hidden;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg)}.chart-stage.full-height{height:100%}.chart-canvas{width:100%;height:100%}.chart-live-badge{position:absolute;top:12px;left:12px;z-index:1;max-width:calc(100% - 24px);padding:6px 9px;color:var(--fg);background:rgba(15,17,23,.9);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow);font-size:11px;font-weight:760}.chart-legend{position:absolute;top:8px;left:10px;z-index:1;display:grid;max-width:calc(100% - 128px);grid-gap:2px;gap:2px;pointer-events:none;font-size:14px;font-weight:650;line-height:1.25;text-shadow:0 1px 2px rgba(0,0,0,.65)}.chart-legend-row{display:flex;min-width:0;flex-wrap:wrap;align-items:baseline;gap:8px}.chart-legend-title{max-width:min(460px,100%);overflow:hidden;color:#cdd1dc;font-size:16px;font-weight:720;text-overflow:ellipsis;white-space:nowrap}.chart-legend-values{display:inline-flex;flex-wrap:wrap;gap:8px;font-family:var(--font-ui);font-size:14px}.chart-legend-row.volume{color:#cdd1dc;font-size:13px;font-weight:620}.chart-legend .up{color:var(--up)}.chart-legend .down{color:var(--down)}.chart-legend-updated{color:var(--muted-alt);font-size:11px}.chart-status{position:absolute;inset:0;display:grid;place-items:center;padding:22px;color:var(--muted);background:rgba(15,17,23,.88);text-align:center}.indicator-controls{position:absolute;top:8px;right:75px;z-index:2;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.indicator-toggle-btn{display:grid;width:30px;height:30px;place-items:center;color:var(--muted);background:rgba(15,17,23,.88);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);transition:all .16s ease-in-out}.indicator-toggle-btn.active,.indicator-toggle-btn:hover{border-color:rgba(34,201,151,.35);background:rgba(26,30,39,.92)}.indicator-panel-backdrop{position:fixed;inset:0;z-index:1}.indicator-panel{position:absolute;top:calc(100% + 4px);right:0;z-index:3;min-width:290px;padding:10px 12px;background:var(--surface);border:1px solid var(--border-focus);border-radius:var(--radius-lg);box-shadow:var(--shadow-drop)}.indicator-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;color:var(--fg-emphasis);font-size:12px;font-weight:760}.indicator-panel-close{display:grid;width:22px;height:22px;place-items:center;color:var(--muted);background:transparent;border:0;font-size:16px;line-height:1;transition:color .16s ease-in-out}.indicator-panel-close:hover{color:var(--fg)}.indicator-row{display:flex;align-items:center;gap:8px;padding:7px 0;border-top:1px solid var(--border)}.indicator-row:first-of-type{border-top:0}.indicator-checkbox{display:flex;align-items:center;gap:6px;min-width:80px;cursor:pointer}.indicator-checkbox input[type=checkbox]{width:14px;height:14px;min-height:auto;accent-color:var(--accent);cursor:pointer}.indicator-label{color:var(--fg);font-size:11px;font-weight:760;text-transform:uppercase;letter-spacing:.04em}.indicator-period{width:52px;min-height:26px;padding:3px 5px;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-mono);font-size:11px;text-align:center}.indicator-period:focus{border-color:var(--accent);outline:none}.indicator-method{min-width:70px;color:var(--muted-alt);font-family:var(--font-mono);font-size:10px;text-align:center}.indicator-colors{display:flex;gap:4px;align-items:center}.indicator-color-dot{width:18px;height:18px;padding:0;border:2px solid transparent;border-radius:50%;cursor:pointer;transition:border-color .16s ease}.indicator-color-dot:hover{border-color:rgba(255,255,255,.35)}.indicator-color-dot.active{border-color:#fff;box-shadow:0 0 6px currentColor}.candle-settings-panel{display:grid;grid-gap:12px;gap:12px;min-width:260px}.candle-setting-row{display:grid;grid-template-columns:1fr auto;grid-gap:8px;gap:8px;align-items:center;color:var(--fg);font-size:12px;font-weight:680}.candle-setting-row input[type=number]{width:58px;min-height:26px;padding:3px 6px;color:var(--muted);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);font-family:var(--font-mono);font-size:11px;text-align:center}.candle-setting-row input[type=range]{grid-column:1/-1;width:100%;min-height:24px;padding:0;accent-color:var(--accent);background:transparent;border:0}.candle-color-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.candle-color-grid label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:11px;font-weight:720}.candle-color-grid input[type=color]{width:100%;height:32px;min-height:32px;padding:3px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer}.candle-settings-reset{min-height:32px;color:var(--fg)!important;background:var(--surface-alt)!important;border:1px solid var(--border)!important;border-radius:var(--radius);font-size:12px;font-weight:720}.candle-settings-reset:hover{background:var(--neutral-bg)!important;border-color:var(--border-focus)!important}.charts-layout{display:flex;height:calc(100vh - 75px);min-height:620px;background:var(--bg)}.charts-main{display:flex;min-width:0;flex:1 1;flex-direction:column}.charts-header-bar{gap:12px;padding:10px 14px}.search-form{display:flex;align-items:center;gap:8px}.search-input{flex-grow:1;min-width:0}.search-btn{white-space:nowrap}.charts-header-title{display:inline-flex;min-width:0;align-items:center;gap:6px;color:var(--fg);font-size:14px;font-weight:700}.charts-header-company-name{color:var(--muted);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-tabs-bar{flex-shrink:0;background:var(--surface);border-bottom:1px solid var(--border)}.chart-tabs-list{display:flex;gap:6px;overflow-x:auto;overflow-y:hidden;padding:8px 12px;scrollbar-width:thin}.chart-tab{display:inline-flex;flex:0 0 auto;align-items:stretch;min-width:124px;max-width:196px;height:36px;overflow:hidden;color:var(--muted);background:var(--surface-alt);border:1px solid var(--border);border-radius:8px}.chart-tab.active{color:var(--fg-emphasis);background:var(--accent-bg);border-color:var(--accent)}.chart-tab-close,.chart-tab-main{border:0;color:inherit;background:transparent}.chart-tab-main{display:inline-flex;min-width:0;flex:1 1;align-items:center;gap:6px;padding:0 8px 0 10px;cursor:pointer}.chart-tab-symbol{color:var(--fg-emphasis);font-family:var(--font-mono);font-size:13px;font-weight:800}.chart-tab-exchange,.chart-tab-price{flex:0 0 auto;font-size:11px}.chart-tab-exchange{color:var(--muted)}.chart-tab-price{margin-left:auto;color:var(--positive);font-family:var(--font-mono);font-weight:700}.chart-tab-close{display:inline-flex;width:28px;flex:0 0 28px;align-items:center;justify-content:center;cursor:pointer;opacity:.72}.chart-tab-close:hover:not(:disabled){color:var(--negative);background:rgba(239,83,80,.12);opacity:1}.chart-tab-close:disabled{cursor:default;opacity:.28}.charts-body{display:flex}.charts-body,.charts-chart-container{position:relative;min-height:0;flex:1 1}.charts-sidebar{display:flex;width:300px;flex-shrink:0;flex-direction:column;background:var(--surface);border-left:1px solid var(--border)}.sidebar-header{padding:14px;border-bottom:1px solid var(--border)}.sidebar-list{flex:1 1;overflow-y:auto;padding:6px 0}.recent-symbols-section{flex-shrink:0;border-bottom:1px solid var(--border)}.sidebar-section-heading{padding:14px 14px 6px}.sidebar-section-heading h3{margin:0}.recent-symbols-list{flex:0 0 auto;max-height:248px;padding-bottom:10px}.sidebar-item{border-bottom:1px solid rgba(255,255,255,.025);transition:background .15s ease}.sidebar-item.active{border-left:3px solid var(--accent)}.sidebar-item-symbol{color:var(--fg-emphasis);font-family:var(--font-mono);font-weight:800}.delete-item-btn{transform:translateY(-50%)}.autocomplete-dropdown,.group-dropdown-menu{background:var(--surface-alt);border:1px solid var(--border-focus);box-shadow:var(--shadow-drop)}.autocomplete-dropdown{width:320px}.autocomplete-item,.group-dropdown-create-btn,.group-dropdown-item{display:flex;cursor:pointer;padding:8px 12px;border-bottom:1px solid var(--border);font-size:12px}.autocomplete-item.active,.autocomplete-item:hover,.group-dropdown-item.active,.group-dropdown-item:hover{background:var(--accent-bg)}.autocomplete-item-symbol{color:var(--fg);font-family:var(--font-mono);font-weight:800}.autocomplete-item-name{color:var(--muted);overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.group-selector-trigger{padding:7px 10px;background:var(--bg);font-weight:650}.group-selector-trigger:hover{border-color:var(--border-focus)}.group-selector-trigger-arrow{color:var(--muted);font-size:9px}.group-dropdown-menu{top:calc(100% + 4px);right:0;left:0}.auth-required-panel{border-color:rgba(34,201,151,.28);background:linear-gradient(135deg,rgba(34,201,151,.08),transparent 42%),var(--surface)}.auth-required-panel .section-heading{align-items:center;margin-bottom:0}.inline-auth-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:12px;border:1px solid rgba(34,201,151,.28);border-radius:var(--radius-lg)}.inline-auth-panel h2{margin:3px 0}.inline-auth-panel p{margin:0;color:var(--muted);font-size:12px;text-transform:none;letter-spacing:0}.watchlist-auth-card{grid-gap:9px;gap:9px;margin-bottom:14px;padding:12px;background:var(--accent-bg);border:1px solid rgba(34,201,151,.28)}.watchlist-auth-card p{line-height:1.45}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.55}.delete-group-pill-btn{color:inherit}.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:14px;gap:14px;margin-top:16px}.signal-article-grid{display:grid;width:min(100%,980px);grid-template-columns:1fr;grid-gap:16px;gap:16px;margin-top:16px}.signal-management-panel h2{margin:4px 0 6px;color:var(--fg-emphasis);font-size:18px}.signal-management-table{overflow-x:auto}.signal-publish-control{display:flex;min-width:180px;align-items:center;gap:8px}.signal-publish-control .charts-nav-btn{min-width:86px;justify-content:center}.signal-publish-error,.signal-publish-message{color:var(--muted);font-size:11px;font-weight:700;white-space:normal}.signal-publish-error{color:var(--danger)}.signal-article-card{display:flex;min-height:100%;flex-direction:column;gap:12px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.signal-article-card h2{margin:0;color:var(--fg-emphasis);font-size:16px;line-height:1.35}.signal-article-summary{margin:0;color:var(--fg);font-size:13px;font-weight:650;line-height:1.5}.signal-article-meta{display:flex;flex-wrap:wrap;gap:7px}.signal-article-meta span{padding:5px 8px;color:var(--muted);font-family:var(--font-mono);font-size:10px;background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius-sm)}.signal-article-content{display:grid;grid-gap:8px;gap:8px}.signal-article-content p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.signal-article-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:4px}.news-card{display:flex;min-height:100%;flex-direction:column;overflow:hidden;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:transform .22s cubic-bezier(.16,1,.3,1),border-color .22s ease,box-shadow .22s ease}.news-card:hover{transform:translateY(-4px);border-color:var(--border-focus);box-shadow:0 12px 24px -10px rgba(0,0,0,.6),var(--shadow)}.news-thumb{height:160px;background-position:50%;background-size:cover;transition:transform .3s ease}.news-card:hover .news-thumb{transform:scale(1.04)}.news-thumb.fallback-thumb{background:linear-gradient(135deg,var(--surface-alt) 0,var(--bg) 100%);position:relative;display:flex;align-items:center;justify-content:center}.news-thumb.fallback-thumb:before{content:"📰";font-size:28px;opacity:.25}.news-body{display:flex;flex:1 1;flex-direction:column;gap:10px;padding:16px}.news-body h2{font-size:15px;line-height:1.38;margin:0 0 4px}.news-body h2 a{color:var(--fg-emphasis);text-decoration:none;transition:color .16s ease;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-body h2 a:hover{color:var(--accent)}.news-body p{color:var(--muted);font-size:12px;line-height:1.55;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.news-body .source-link{margin-top:auto;align-self:flex-start;font-size:11px;font-weight:700;color:var(--accent);text-decoration:none;display:inline-flex;align-items:center;gap:4px;transition:color .16s ease}.news-body .source-link:hover{color:var(--primary-strong)}.charts-nav-btn{transition:color .16s ease,background .16s ease,border-color .16s ease}.charts-nav-btn.is-active{color:var(--accent);background:var(--accent-bg);border-color:rgba(34,201,151,.35)}.news-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;color:var(--muted);gap:12px;margin-top:16px}.news-empty-state .icon{font-size:32px;opacity:.5}.news-empty-state h3{margin:0;color:var(--fg-emphasis);font-size:16px;font-weight:700}.news-empty-state p{margin:0;font-size:13px;max-width:400px}.login-shell{position:relative;display:grid;min-height:100vh;place-items:center;padding:24px;background:#0b0d12;overflow:hidden}.login-ambient-bloom-1{top:25%;left:20%;width:300px;height:300px;background:rgba(34,201,151,.12);filter:blur(120px)}.login-ambient-bloom-1,.login-ambient-bloom-2{position:absolute;pointer-events:none;border-radius:50%}.login-ambient-bloom-2{bottom:25%;right:20%;width:350px;height:350px;background:rgba(34,201,151,.08);filter:blur(140px)}.login-card{position:relative;z-index:5;width:400px;max-width:94vw;padding:48px 40px;background:rgba(22,26,35,.65);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.075);border-radius:18px;box-shadow:0 24px 48px -12px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.03)}.login-logo{display:block;margin:0 auto 20px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#0f1117;padding:4px;box-shadow:0 8px 16px rgba(0,0,0,.3)}.login-brand{margin-bottom:32px;text-align:center}.login-brand h1{font-size:24px;font-weight:700;color:var(--fg-emphasis);margin-bottom:8px;letter-spacing:-.02em}.login-brand .sub{color:var(--muted);font-size:13px;line-height:1.5;margin:0}.login-form{display:grid;grid-gap:16px;gap:16px}.login-provider.google{display:flex;min-height:48px;align-items:center;justify-content:center;gap:12px;padding:12px 24px;border-radius:10px;font-weight:600;font-size:14px;text-decoration:none;background:#ffffff;color:#1f2937;border:1px solid #e5e7eb;transition:background-color .2s cubic-bezier(.4,0,.2,1),border-color .2s ease,transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s ease;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.login-provider.google:hover{color:#1f2937;background:#f9fafb;border-color:#d1d5db;transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.15),0 4px 6px -2px rgba(0,0,0,.05)}.login-provider.google:active{transform:translateY(0)}.google-icon{flex-shrink:0;transition:transform .2s ease}.login-provider.google:hover .google-icon{transform:scale(1.05)}.login-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px;font-weight:600}.login-divider:after,.login-divider:before{content:"";height:1px;flex:1 1;background:rgba(255,255,255,.08)}.password-login-form{display:grid;grid-gap:10px;gap:10px}.login-input{width:100%;min-height:42px;padding:0 14px;color:var(--fg-emphasis);background:rgba(15,18,25,.8);border:1px solid rgba(255,255,255,.1);border-radius:8px;font:inherit}.login-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px rgba(70,197,143,.14)}.login-input:disabled{cursor:not-allowed;opacity:.62}.login-password-submit{margin-top:4px;width:100%}.login-message{color:var(--muted);font-size:12px;font-weight:600}.login-message.error{color:var(--down)}.login-disclaimer{margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.06);text-align:center;color:var(--muted-alt);font-size:11px;line-height:1.6}@media (max-width:1100px){.backtest-form{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:860px){body{overflow:auto}.app-shell{height:auto;min-height:100vh;flex-direction:column;overflow:visible}.app-sidebar{width:100%;min-width:0;flex-direction:row;overflow-x:auto;padding:8px 12px}.sidebar-brand,.sidebar-footer{display:none}.sidebar-nav{flex-direction:row;padding:8px}.app-workspace{margin:8px 12px 12px;border-radius:12px}.app-content,.app-workspace{overflow:visible}.app-topbar{display:none}.page-surface,main{padding:16px 12px 28px}.panel,.section-heading,header{display:block}.backtest-form,.backtest-highlights,.backtest-metrics,.detail-grid,.grid{grid-template-columns:1fr}.card,.table-panel{padding:12px;overflow-x:auto}.charts-layout{height:auto;min-height:100vh;flex-direction:column}.charts-header-bar{flex-direction:column;align-items:stretch}.chart-tabs-list{padding:8px}.chart-tab{min-width:116px}.charts-body{height:auto;flex-direction:column}.charts-chart-container{height:460px;min-height:460px;flex:none}.charts-sidebar{width:100%;max-height:500px;border-top:1px solid var(--border);border-left:0}.chart-stage,.chart-stage.full-height{height:460px}.charts-header-company-name{display:none}}.news-pagination{gap:8px;margin:32px 0 16px}.news-pagination,.pagination-number{display:flex;justify-content:center;align-items:center}.pagination-number{min-width:36px;height:36px;padding:0;border-radius:var(--radius);text-decoration:none;font-weight:500;transition:color .16s ease,background .16s ease,border-color .16s ease}.pagination-number.is-active{color:var(--accent);background:var(--accent-bg);border-color:rgba(34,201,151,.35);pointer-events:none;cursor:default}.pagination-arrow{height:36px;display:flex;align-items:center;gap:6px;padding:0 16px;text-decoration:none;font-weight:500;transition:color .16s ease,background .16s ease,border-color .16s ease}.pagination-arrow.is-disabled{opacity:.35;cursor:not-allowed;border-color:var(--border);background:transparent;color:var(--muted)}.charts-nav-btn.is-disabled:hover{color:var(--muted)!important;background:transparent!important;border-color:var(--border)!important;cursor:not-allowed}.pagination-ellipsis{color:var(--muted);padding:0 4px;font-size:14px;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (max-width:640px){.news-pagination{gap:4px}.pagination-arrow-text{display:none}.pagination-arrow{padding:0 12px;height:32px}.pagination-number{min-width:32px;height:32px;font-size:11px}}.charts-header-bar{justify-content:space-between;gap:16px;padding:10px 16px;background:var(--surface);border-bottom:1px solid var(--border)}.charts-header-bar,.header-left{display:flex;flex-shrink:0;align-items:center}.header-center{justify-content:center;min-width:0;flex:1 1}.header-center,.header-right{display:flex;align-items:center}.header-right{justify-content:flex-end;flex-shrink:0}.back-link{color:var(--accent);text-decoration:none;font-weight:500;transition:color .2s ease;margin-bottom:0}.back-link:hover{color:var(--primary-strong)}.search-input-container{position:relative;display:flex;align-items:center}.search-input{width:150px;height:36px;padding-block:7px;line-height:20px;transition:width .2s cubic-bezier(.4,0,.2,1),border-color .2s ease}.search-input:focus{width:180px}.group-selector-wrapper{position:relative;width:100%;margin-bottom:10px}.group-selector-trigger{display:flex;width:100%;min-height:36px;align-items:center;justify-content:space-between;padding:8px 12px;color:var(--fg);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-weight:600;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.group-selector-trigger:hover:not(:disabled){border-color:var(--accent);background:var(--surface-alt)}.group-selector-trigger.open{border-color:var(--accent);box-shadow:0 0 0 2px rgba(34,201,151,.15)}.group-selector-trigger.open .chevron-down{transform:rotate(180deg)}.group-selector-label{display:flex;align-items:center;gap:8px}.group-selector-count{font-size:11px;color:var(--muted);font-weight:500}.autocomplete-dropdown,.group-dropdown-menu{position:absolute;z-index:110;max-height:250px;overflow-y:auto;background:rgba(26,36,47,.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-lg);box-shadow:var(--shadow-drop),inset 0 1px 0 rgba(255,255,255,.05);animation:dropdownFadeIn .2s cubic-bezier(.16,1,.3,1)}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.autocomplete-dropdown{top:calc(100% + 6px);left:0;width:100%;min-width:260px;max-width:360px}.autocomplete-dropdown.sidebar-suggestions{width:100%;max-width:280px}.autocomplete-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;flex-direction:column;padding:10px 14px;color:var(--fg);background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.03);box-shadow:none;cursor:pointer;transition:background .2s ease,color .2s ease}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item.active,.autocomplete-item:hover,.group-dropdown-item.active,.group-dropdown-item:hover{color:var(--accent);background:rgba(34,201,151,.12)}.group-dropdown-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.03);transition:background .2s ease,color .2s ease}.group-item-label{display:flex;align-items:center;gap:8px}.group-item-count{font-size:11px;opacity:.6}.group-dropdown-divider{border-top:1px solid var(--border);margin:5px 0}.delete-group-pill-btn{display:flex;align-items:center;justify-content:center;color:var(--muted);background:transparent;border:0;padding:4px;border-radius:4px;cursor:pointer;transition:background-color .2s ease,color .2s ease}.delete-group-pill-btn:hover{background:rgba(239,83,80,.12);color:var(--down)}.new-group-form{padding:8px 12px;display:flex;gap:6px}.new-group-input{width:100%;padding:6px 10px;border-radius:6px;background:var(--bg);border:1px solid var(--border);color:var(--fg);font-size:12px;height:30px;transition:border-color .2s ease}.new-group-input:focus{border-color:var(--accent);outline:none}.new-group-submit-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-inline:12px;color:var(--fg);background:var(--surface-alt);border:1px solid var(--border);border-radius:6px}.new-group-submit-btn:hover{color:var(--fg-emphasis);background:var(--surface-soft);border-color:var(--border-focus)}.group-dropdown-create-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;align-items:center;gap:6px;color:var(--accent);background:transparent;border:0;font-weight:700;padding:8px 12px;cursor:pointer;transition:background-color .2s ease}.group-dropdown-create-btn:hover{background:rgba(34,201,151,.08)}.sidebar-add-form{display:flex;gap:6px;margin-bottom:12px}.sidebar-search-container{position:relative;flex:1 1}.sidebar-add-btn{height:36px;width:36px;padding:0;justify-content:center;flex-shrink:0}.sidebar-add-btn,.sidebar-item{display:flex;align-items:center}.sidebar-item{position:relative;gap:12px;padding:10px 12px;cursor:pointer;border-radius:var(--radius);margin:4px 8px;border:1px solid transparent;transition:background-color .2s ease,border-color .2s ease}.sidebar-item:hover{background:var(--surface-alt);border-color:rgba(255,255,255,.02)}.sidebar-item.active{background:var(--accent-bg);border-color:rgba(34,201,151,.15)}.sidebar-item.active:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 2px 2px 0}.sidebar-item-content{flex:1 1;display:flex;flex-direction:column;gap:3px;min-width:0}.sidebar-item-row-1,.sidebar-item-row-2{display:flex;justify-content:space-between;align-items:center}.sidebar-item-price{font-weight:600;font-size:14px;color:var(--fg)}.sidebar-item-name{color:var(--muted);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;margin-right:8px;flex:1 1;font-size:11px}.sidebar-item-change{font-weight:500;white-space:nowrap;font-size:11px}.delete-item-btn{position:absolute;right:10px;top:50%;z-index:5;display:flex;width:22px;height:22px;align-items:center;justify-content:center;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:50%;opacity:0;pointer-events:none;transform:translateY(-50%) scale(.85);transition:opacity .2s ease,transform .2s cubic-bezier(.34,1.56,.64,1),background-color .2s ease,border-color .2s ease,color .2s ease;cursor:pointer}.sidebar-item:hover .delete-item-btn{opacity:1;pointer-events:auto;transform:translateY(-50%) scale(1)}.delete-item-btn:hover{color:var(--down);border-color:rgba(239,83,80,.4);background:rgba(239,83,80,.08)}.sidebar-empty-state{padding:24px;text-align:center;color:var(--muted);font-size:13px}.sidebar-empty-state.compact{padding:12px 14px 16px;text-align:left}.watchlist-auth-card{display:grid;grid-gap:10px;gap:10px;margin-bottom:16px;padding:16px;background:rgba(34,201,151,.04);border:1px solid rgba(34,201,151,.16);border-radius:var(--radius-lg);box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}.watchlist-auth-card .eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--accent)}.watchlist-auth-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}@media (max-width:768px){.charts-header-bar{display:grid;grid-template-areas:"title back" "search search";grid-template-columns:1fr auto;grid-gap:12px;gap:12px;padding:12px}.header-left{grid-area:search}.header-center{grid-area:title;justify-content:flex-start}.header-right{grid-area:back;justify-content:flex-end}.search-input{width:100%!important}.chart-tabs-list{padding:8px}.chart-tab{min-width:112px;max-width:172px}.chart-tab-price{display:none}.charts-layout{min-height:100vh}.charts-body,.charts-layout{height:auto;flex-direction:column}.charts-chart-container{height:400px;min-height:400px;flex:none}.charts-sidebar{width:100%;max-height:none;border-top:1px solid var(--border);border-left:0}.chart-stage,.chart-stage.full-height{height:400px}}body{background:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px),var(--bg);background-size:48px 48px,48px 48px,auto}.app-shell{background:transparent}.app-sidebar,.app-topbar,.disclaimer{background:rgba(13,16,23,.88);border-color:rgba(255,255,255,.07);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.app-sidebar{box-shadow:inset -1px 0 0 rgba(255,255,255,.025)}.sidebar-brand{border-color:rgba(255,255,255,.07)}.brand-logo,.nav-icon{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.08)}.brand-mark strong,.card-title,.charts-header-title,h1,h2{letter-spacing:0}.nav-item{position:relative;color:var(--muted);border:1px solid transparent}.nav-item:hover{color:var(--fg);background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.06)}.nav-item.active{background:linear-gradient(90deg,rgba(70,197,143,.12),rgba(127,159,143,.045));border-color:rgba(70,197,143,.22);box-shadow:inset 2px 0 0 var(--accent)}.nav-item.active .nav-icon{color:var(--accent);background:rgba(70,197,143,.09);border-color:rgba(70,197,143,.24)}.status-dot{background:var(--accent);box-shadow:0 0 0 4px rgba(70,197,143,.075),0 0 16px rgba(70,197,143,.34)}.page-surface,main{width:min(1540px,100%)}.auth-required-panel,.card,.chart-modal,.inline-auth-panel,.login-card,.news-card,.panel,.table-panel,.watchlist-auth-card,article{background:rgba(17,21,29,.82);border-color:rgba(255,255,255,.075);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.card:hover,.news-card:hover,.panel:hover,.table-panel:hover,article:hover{border-color:rgba(70,197,143,.16)}.card-header,.section-heading{border-bottom:1px solid rgba(255,255,255,.045);padding-bottom:10px}.backtest-form label,.card-title,.eyebrow,.signal-scan-controls label,thead th{color:#9ba6ba;letter-spacing:.04em}.input,.new-group-input,.search-input,.sidebar-search,input,select{background:rgba(8,10,15,.72);border-color:rgba(255,255,255,.08);box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}.new-group-input:hover,.search-input:hover,.sidebar-search:hover,input:hover,select:hover{border-color:rgba(255,255,255,.13)}.new-group-input:focus,.search-input:focus,.sidebar-search:focus,input:focus,select:focus{border-color:rgba(70,197,143,.45);box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 0 0 3px rgba(70,197,143,.09)}.login-provider,.search-btn,button:not(.symbol-button):not(.modal-close):not(.delete-group-pill-btn):not(.add-group-pill-btn):not(.delete-item-btn):not(.group-selector-trigger):not(.indicator-toggle-btn):not(.indicator-panel-close):not(.indicator-color-dot):not(.autocomplete-item):not(.group-item-select):not(.group-dropdown-create-btn):not(.mobile-watchlist-trigger):not(.watchlist-drawer-close):not(.new-group-submit-btn){color:#04120f;background:linear-gradient(180deg,#a6e4c2,var(--accent));border-color:rgba(166,228,194,.34);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 10px 22px rgba(70,197,143,.12)}.login-provider:hover,.search-btn:hover,button:not(.symbol-button):not(.modal-close):not(.delete-group-pill-btn):not(.add-group-pill-btn):not(.delete-item-btn):not(.group-selector-trigger):not(.indicator-toggle-btn):not(.indicator-panel-close):not(.indicator-color-dot):not(.autocomplete-item):not(.group-item-select):not(.group-dropdown-create-btn):not(.mobile-watchlist-trigger):not(.watchlist-drawer-close):not(.new-group-submit-btn):hover{background:linear-gradient(180deg,#c0efd4,#63c99b);border-color:rgba(192,239,212,.42);transform:translateY(-1px)}.back-link,.btn-secondary,.charts-nav-btn,.group-selector-trigger,.pagination-arrow,.pagination-number{color:var(--fg);background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.08)}.back-link:hover,.btn-secondary:hover,.charts-nav-btn:hover,.group-selector-trigger:hover:not(:disabled),.pagination-arrow:hover,.pagination-number:hover{color:var(--accent);background:rgba(70,197,143,.065);border-color:rgba(70,197,143,.21)}table{border-spacing:0}thead th{background:rgba(13,16,23,.92);border-bottom-color:rgba(255,255,255,.08)}td,th{border-bottom-color:rgba(255,255,255,.055)}tbody tr:hover td{background:rgba(70,197,143,.035)}.positive,.up{color:var(--up)}.down,.negative{color:var(--down)}.charts-body,.charts-chart-container,.charts-layout,.charts-main{background:transparent}.charts-header-bar{background:rgba(13,16,23,.9);border-color:rgba(255,255,255,.07);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.charts-sidebar{background:rgba(13,16,23,.82);border-color:rgba(255,255,255,.07)}.chart-stage{background:rgba(8,10,15,.74);border-color:rgba(255,255,255,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 24px 70px rgba(0,0,0,.28)}.chart-legend{color:var(--fg);text-shadow:0 1px 2px rgba(0,0,0,.72)}.chart-legend-title{color:#f2f5f9}.chart-legend,.chart-status,.indicator-panel,.indicator-toggle-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.indicator-toggle-btn{background:rgba(13,16,23,.88);border-color:rgba(255,255,255,.08)}.indicator-toggle-btn.active,.indicator-toggle-btn:hover{color:var(--accent);border-color:rgba(70,197,143,.24);box-shadow:var(--glow)}.autocomplete-dropdown,.group-dropdown-menu,.indicator-panel{background:rgba(13,16,23,.92);border-color:rgba(255,255,255,.09);box-shadow:var(--shadow-drop)}.sidebar-item:hover{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.06)}.sidebar-item.active{background:linear-gradient(90deg,rgba(70,197,143,.1),rgba(127,159,143,.035));border-color:rgba(70,197,143,.18)}.sidebar-item.active:before{background:var(--accent);box-shadow:0 0 12px rgba(70,197,143,.32)}.badge,.badge-neutral,.badge-offline,.badge-online,.badge-warn,.state,.strategy-badge{border-color:rgba(255,255,255,.075)}.news-card:hover{box-shadow:0 18px 44px rgba(0,0,0,.38),0 0 0 1px rgba(70,197,143,.11)}.delete-group-pill-btn,.delete-item-btn,.modal-close{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.08)}.delete-group-pill-btn:hover,.delete-item-btn:hover,.modal-close:hover{background:rgba(255,92,122,.1);border-color:rgba(255,92,122,.25)}@media (max-width:768px){body{background-size:36px 36px,36px 36px,auto}.chart-legend{max-width:calc(100% - 56px);font-size:12px}.chart-legend-title{font-size:13px}}:root{--bg:#111111;--bg-elevated:#1b1b1b;--surface:#181818;--surface-alt:#232323;--surface-soft:#151515;--border:#303030;--border-focus:#4a4a4a;--fg:#e6e6e6;--fg-emphasis:#f5f5f5;--muted:#a0a0a0;--muted-alt:#777777;--accent:#d7d7d7;--accent-dim:#a8a8a8;--accent-bg:rgba(255,255,255,0.08);--primary:var(--accent);--primary-strong:#ffffff;--primary-soft:var(--accent-bg);--secondary-accent:#8f8f8f;--secondary-accent-bg:rgba(255,255,255,0.06);--neutral-bg:rgba(255,255,255,0.06);--shadow:none;--shadow-drop:0 20px 60px rgba(0,0,0,0.45);--glow:none}.app-shell,.charts-body,.charts-chart-container,.charts-layout,.charts-main,body{background:var(--bg)}.profile-page{position:relative;display:flex;flex-direction:column;gap:24px;padding:32px;max-width:1200px;margin:0 auto;min-height:80vh;z-index:1}.profile-ambient-bloom-1{top:10%;left:5%;width:250px;height:250px;background:rgba(34,201,151,.08);filter:blur(100px)}.profile-ambient-bloom-1,.profile-ambient-bloom-2{position:absolute;pointer-events:none;border-radius:50%;z-index:-1}.profile-ambient-bloom-2{bottom:10%;right:5%;width:300px;height:300px;background:rgba(59,130,246,.06);filter:blur(120px)}.profile-empty,.profile-header,.profile-panel{background:rgba(22,26,35,.65);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.075);border-radius:16px;box-shadow:0 16px 36px -8px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.02)}.profile-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:24px;gap:24px;padding:24px 32px}.profile-avatar{display:grid;width:80px;height:80px;place-items:center;overflow:hidden;border-radius:50%;border:2px solid rgba(34,201,151,.3);font-size:24px;font-weight:700;background:var(--accent-bg);color:var(--accent)}.profile-avatar img{display:block;width:100%;height:100%;object-fit:cover}.profile-empty{flex-direction:column;text-align:center;gap:20px;max-width:440px;margin:auto;padding:48px 40px}.profile-empty,.profile-empty-icon{display:flex;align-items:center;justify-content:center}.profile-empty-icon{width:80px;height:80px;border-radius:50%;background:rgba(34,201,151,.1);border:1px solid rgba(34,201,151,.2);color:var(--accent);margin-bottom:8px}.profile-empty h1{font-size:24px;font-weight:700;color:var(--fg-emphasis);margin:0}.profile-empty p{font-size:14px;line-height:1.6;color:var(--muted);margin:0}.google-login-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;padding:12px 24px;border-radius:10px;font-weight:600;font-size:14px;text-decoration:none;background:#ffffff;color:#1f2937;border:1px solid #e5e7eb;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.google-login-btn:hover{background:#f9fafb;border-color:#d1d5db;transform:translateY(-2px);box-shadow:0 8px 16px -4px rgba(0,0,0,.15)}.google-login-btn:active{transform:translateY(0)}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:24px;gap:24px}.profile-panel{display:flex;flex-direction:column;gap:16px;padding:32px}.profile-panel-heading{margin-bottom:6px}.profile-input{width:100%;min-height:40px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(15,18,25,.8);color:var(--fg-emphasis);padding:0 14px;font:inherit;transition:all .2s ease}.profile-input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px rgba(34,201,151,.15)}.profile-input:disabled{opacity:.6;cursor:not-allowed;background:rgba(255,255,255,.02);border-color:rgba(255,255,255,.05)}.profile-btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 20px;border-radius:8px;font-size:14px;font-weight:600;color:#051610;background:linear-gradient(135deg,#46c58f,#2b936a);border:1px solid rgba(70,197,143,.3);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px rgba(70,197,143,.15)}.profile-btn-primary:hover:not(:disabled){transform:translateY(-1px) scale(1.02);background:linear-gradient(135deg,#57d49e,#32aa7b);box-shadow:0 6px 16px rgba(70,197,143,.25)}.profile-btn-primary:active:not(:disabled){transform:translateY(1px) scale(.99);box-shadow:0 2px 6px rgba(70,197,143,.15)}.profile-btn-primary:disabled{opacity:.6;cursor:not-allowed;background:var(--muted-alt);color:var(--bg);border-color:transparent;box-shadow:none}.profile-logout{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;color:var(--fg);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);text-decoration:none;transition:all .2s ease}.profile-logout:hover{color:var(--danger);background:rgba(255,92,122,.08);border-color:rgba(255,92,122,.2);transform:translateY(-1px)}.profile-logout:active{transform:translateY(0)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.profile-message{color:var(--muted);font-size:13px;animation:fadeIn .25s ease-out forwards}.profile-message.saved{color:var(--up)}.profile-message.error{color:var(--down)}@media (max-width:900px){.profile-page{padding:16px}.profile-grid{grid-template-columns:1fr;gap:16px}.profile-header{grid-template-columns:1fr;justify-items:center;text-align:center;padding:24px}.profile-logout{justify-self:center}}.app-sidebar{border-right:none}.app-sidebar,.app-topbar{background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.app-topbar{border-bottom:1px solid rgba(255,255,255,.05)}.sidebar-brand,.sidebar-footer{border-bottom:none;border-top:none}.app-workspace{border:1px solid #282828;backdrop-filter:none;box-shadow:0 12px 40px -12px rgba(0,0,0,.6)}.app-workspace,.charts-header-bar,.disclaimer{background:#151515;-webkit-backdrop-filter:none}.charts-header-bar,.disclaimer{border-color:#2a2a2a;box-shadow:none;backdrop-filter:none}.brand-logo,.nav-icon{background:#2d2d31;border-color:#3a3b42;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 18px rgba(0,0,0,.16)}.brand-mark strong,.charts-header-title strong,h1,h2,h3{color:var(--fg-emphasis)}.charts-header-company-name,.disclaimer,.header-status,.header-time,.sidebar-brand p{color:var(--muted)}.status-dot{width:6px;height:6px;background:#8f8f8f;box-shadow:none}.nav-item{gap:12px;min-height:46px;padding:8px 10px;color:#b8bbc4;background:transparent;border-color:transparent;box-shadow:none}.nav-item:hover{color:var(--fg-emphasis);background:#292a2f;border-color:#383942}.nav-item.active{color:var(--fg-emphasis);background:#2a2a2a;border-color:#343434;box-shadow:none}.nav-item.active .nav-icon{color:#f2f2f2;background:#363636;border-color:#474747;box-shadow:none}.page-surface,main{background:transparent}.auth-required-panel,.autocomplete-dropdown,.card,.chart-modal,.group-dropdown-menu,.indicator-panel,.inline-auth-panel,.login-card,.news-card,.panel,.table-panel,.watchlist-auth-card,article{background:#181818;border-color:#303030;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card:hover,.news-card:hover,.panel:hover,.table-panel:hover,article:hover{border-color:#424242}.card-header,.section-heading{border-bottom-color:#2a2a2a}.backtest-form label,.card-title,.eyebrow,.signal-scan-controls label,thead th{color:#a6a6a6}.input,.new-group-input,.search-input,.sidebar-search,input,select{color:var(--fg);background:#121212;border-color:#303030;box-shadow:none}.new-group-input:hover,.search-input:hover,.sidebar-search:hover,input:hover,select:hover{border-color:#4a4a4a}.new-group-input:focus,.search-input:focus,.sidebar-search:focus,input:focus,select:focus{border-color:#6a6a6a;box-shadow:0 0 0 2px rgba(255,255,255,.08)}.login-provider,.search-btn,button:not(.symbol-button):not(.modal-close):not(.delete-group-pill-btn):not(.add-group-pill-btn):not(.delete-item-btn):not(.group-selector-trigger):not(.indicator-toggle-btn):not(.indicator-panel-close):not(.indicator-color-dot):not(.autocomplete-item):not(.group-item-select):not(.group-dropdown-create-btn):not(.mobile-watchlist-trigger):not(.watchlist-drawer-close):not(.new-group-submit-btn){color:var(--fg-emphasis);background:#303030;border-color:#424242;box-shadow:none}.login-provider:hover,.search-btn:hover,button:not(.symbol-button):not(.modal-close):not(.delete-group-pill-btn):not(.add-group-pill-btn):not(.delete-item-btn):not(.group-selector-trigger):not(.indicator-toggle-btn):not(.indicator-panel-close):not(.indicator-color-dot):not(.autocomplete-item):not(.group-item-select):not(.group-dropdown-create-btn):not(.mobile-watchlist-trigger):not(.watchlist-drawer-close):not(.new-group-submit-btn):hover{color:#ffffff;background:#3a3a3a;border-color:#565656;transform:none}.back-link,.btn-secondary,.charts-nav-btn,.delete-group-pill-btn,.delete-item-btn,.group-selector-trigger,.indicator-toggle-btn,.modal-close,.pagination-arrow,.pagination-number{color:var(--fg);background:#202020;border-color:#343434;box-shadow:none}.back-link:hover,.btn-secondary:hover,.charts-nav-btn:hover,.group-selector-trigger:hover:not(:disabled),.indicator-toggle-btn.active,.indicator-toggle-btn:hover,.pagination-arrow:hover,.pagination-number:hover{color:#ffffff;background:#2c2c2c;border-color:#4a4a4a;box-shadow:none}.charts-sidebar{background:#151515;border-color:#2f2f2f}.chart-stage{background:#111111;border-color:#2a2a2a;box-shadow:none}.chart-legend-title{color:#f0f0f0}.chart-legend,.chart-status{color:var(--fg);text-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}thead th{background:#181818;border-bottom-color:#303030}td,th{border-bottom-color:#2a2a2a}tbody tr:hover td{background:#202020}.sidebar-item{border-color:transparent}.sidebar-item:hover{background:#202020;border-color:#303030}.sidebar-item.active{background:#2a2a2a;border-color:#3d3d3d}.sidebar-item.active:before{background:#d0d0d0;box-shadow:none}.badge,.badge-neutral,.badge-offline,.badge-online,.badge-warn,.state,.strategy-badge{background:#232323;border-color:#343434}.positive,.up{color:#26a69a}.down,.negative{color:#ef5350}.chart-legend .up{color:#26a69a}.chart-legend .down{color:#ef5350}.watchlist-auth-card{background:#1b1b1b;border-color:#303030}.back,.back-link,.group-dropdown-create-btn,.symbol,.symbol a,.symbol-button,.watchlist-auth-card .eyebrow{color:var(--fg)}.autocomplete-item.active,.autocomplete-item:hover,.group-dropdown-create-btn:hover,.group-dropdown-item.active,.group-dropdown-item:hover{color:#ffffff;background:#2a2a2a}.news-card:hover,.theme-toggle{box-shadow:none}.theme-toggle{display:flex;align-items:center;justify-content:center;padding:0;width:34px;height:34px;color:var(--fg);background:#202020;border:1px solid #343434;border-radius:8px;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.theme-toggle:hover{color:var(--fg-emphasis);background:#2c2c2c;border-color:#4a4a4a}.theme-toggle svg{width:24px!important;height:24px!important;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.theme-toggle svg circle{fill:currentColor;stroke:none}html[data-theme=light]{color-scheme:light;--bg:#f4f6f8;--bg-elevated:#ffffff;--surface:#ffffff;--surface-alt:#f1f3f6;--surface-soft:#f7f8fa;--border:#d9dee7;--border-focus:#aeb8c8;--fg:#20242c;--fg-emphasis:#0b0d12;--text:var(--fg);--muted:#667085;--muted-alt:#8a94a6;--line:var(--border);--line-strong:var(--border-focus);--accent:#188a2f;--accent-dim:#166f29;--accent-bg:rgba(24,138,47,0.1);--primary:var(--accent);--primary-strong:#0f7a29;--primary-soft:var(--accent-bg);--up:#188a2f;--up-bg:rgba(24,138,47,0.1);--success:var(--up);--success-soft:var(--up-bg);--down:#d00000;--down-bg:rgba(208,0,0,0.09);--danger:var(--down);--danger-soft:var(--down-bg);--warn:#a16207;--warn-bg:rgba(161,98,7,0.1);--warning:var(--warn);--warning-soft:var(--warn-bg);--neutral-bg:rgba(31,41,55,0.06);--secondary-accent:#667085;--secondary-accent-bg:rgba(102,112,133,0.1);--shadow:0 1px 2px rgba(16,24,40,0.06),0 14px 36px rgba(16,24,40,0.08);--shadow-drop:0 22px 64px rgba(16,24,40,0.16);--glow:none}html[data-theme=light] .backtest-form label,html[data-theme=light] .card-title,html[data-theme=light] .eyebrow,html[data-theme=light] .signal-scan-controls label,html[data-theme=light] thead th{color:var(--muted)}html[data-theme=light] .app-shell,html[data-theme=light] .charts-body,html[data-theme=light] .charts-chart-container,html[data-theme=light] .charts-layout,html[data-theme=light] .charts-main,html[data-theme=light] body{background:var(--bg);color:var(--fg)}html[data-theme=light] .app-sidebar{background:transparent;border-right:none}html[data-theme=light] .sidebar-brand,html[data-theme=light] .sidebar-footer{border-bottom:none;border-top:none}html[data-theme=light] .app-workspace{background:rgba(255,255,255,.7);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(0,0,0,.06);box-shadow:0 12px 40px -12px rgba(0,0,0,.06),inset 0 1px 0 rgba(255,255,255,.8)}html[data-theme=light] .app-topbar{background:transparent;border-bottom:1px solid rgba(0,0,0,.05);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme=light] .charts-header-bar,html[data-theme=light] .disclaimer{background:rgba(255,255,255,.92);border-color:#dde2ea;box-shadow:0 1px 0 rgba(16,24,40,.04)}html[data-theme=light] .app-shell:after,html[data-theme=light] .app-shell:before{display:none}html[data-theme=light] .brand-logo,html[data-theme=light] .nav-icon{background:#f4f6f8;border-color:#d9dee7;box-shadow:inset 0 1px 0 rgba(255,255,255,.72)}.brand-logo,html[data-theme=light] .brand-logo{background:transparent;border-color:transparent;box-shadow:none}html[data-theme=light] .brand-mark strong,html[data-theme=light] .chart-legend-title,html[data-theme=light] .charts-header-title strong,html[data-theme=light] h1,html[data-theme=light] h2,html[data-theme=light] h3{color:var(--fg-emphasis)}html[data-theme=light] .nav-item{color:#4b5565;background:transparent}html[data-theme=light] .nav-item:hover{color:#111827;background:#f1f3f6;border-color:#e3e7ee}html[data-theme=light] .nav-item.active{color:#111827;background:#f1f3f6;border-color:#e0e5ec}html[data-theme=light] .nav-item.active .nav-icon{color:#111827;background:#ffffff;border-color:#d8dee8;box-shadow:none}html[data-theme=light] .page-surface,html[data-theme=light] main{background:transparent}html[data-theme=light] .auth-required-panel,html[data-theme=light] .autocomplete-dropdown,html[data-theme=light] .card,html[data-theme=light] .chart-modal,html[data-theme=light] .charts-sidebar,html[data-theme=light] .group-dropdown-menu,html[data-theme=light] .indicator-panel,html[data-theme=light] .inline-auth-panel,html[data-theme=light] .login-card,html[data-theme=light] .news-card,html[data-theme=light] .panel,html[data-theme=light] .table-panel,html[data-theme=light] .watchlist-auth-card,html[data-theme=light] article{background:#ffffff;border-color:#dfe4ec;box-shadow:var(--shadow)}html[data-theme=light] .input,html[data-theme=light] .login-input,html[data-theme=light] .new-group-input,html[data-theme=light] .search-input,html[data-theme=light] .sidebar-search,html[data-theme=light] input,html[data-theme=light] select{color:#111827;background:#ffffff;border-color:#d7dde7}html[data-theme=light] .login-input:focus,html[data-theme=light] .new-group-input:focus,html[data-theme=light] .search-input:focus,html[data-theme=light] .sidebar-search:focus,html[data-theme=light] input:focus,html[data-theme=light] select:focus{border-color:#98a2b3;box-shadow:0 0 0 3px rgba(24,138,47,.1)}html[data-theme=light] .back-link,html[data-theme=light] .btn-secondary,html[data-theme=light] .charts-nav-btn,html[data-theme=light] .delete-group-pill-btn,html[data-theme=light] .delete-item-btn,html[data-theme=light] .group-selector-trigger,html[data-theme=light] .indicator-toggle-btn,html[data-theme=light] .login-provider,html[data-theme=light] .modal-close,html[data-theme=light] .pagination-arrow,html[data-theme=light] .pagination-number,html[data-theme=light] .search-btn,html[data-theme=light] .theme-toggle,html[data-theme=light] button:not(.symbol-button):not(.modal-close):not(.delete-group-pill-btn):not(.add-group-pill-btn):not(.delete-item-btn):not(.group-selector-trigger):not(.indicator-toggle-btn):not(.indicator-panel-close):not(.indicator-color-dot):not(.autocomplete-item):not(.group-item-select):not(.group-dropdown-create-btn):not(.mobile-watchlist-trigger):not(.watchlist-drawer-close):not(.new-group-submit-btn){color:#111827;background:#ffffff;border-color:#d9dee7;box-shadow:none}html[data-theme=light] .back-link:hover,html[data-theme=light] .btn-secondary:hover,html[data-theme=light] .charts-nav-btn:hover,html[data-theme=light] .group-selector-trigger:hover:not(:disabled),html[data-theme=light] .indicator-toggle-btn.active,html[data-theme=light] .indicator-toggle-btn:hover,html[data-theme=light] .login-provider:hover,html[data-theme=light] .pagination-arrow:hover,html[data-theme=light] .pagination-number:hover,html[data-theme=light] .search-btn:hover,html[data-theme=light] .theme-toggle:hover,html[data-theme=light] button:not(.symbol-button):not(.modal-close):not(.delete-group-pill-btn):not(.add-group-pill-btn):not(.delete-item-btn):not(.group-selector-trigger):not(.indicator-toggle-btn):not(.indicator-panel-close):not(.indicator-color-dot):not(.autocomplete-item):not(.group-item-select):not(.group-dropdown-create-btn):not(.mobile-watchlist-trigger):not(.watchlist-drawer-close):not(.new-group-submit-btn):hover{color:#0b0d12;background:#f4f6f8;border-color:#c8d0dc}html[data-theme=light] .chart-stage{background:#ffffff;border-color:#d8dde5;box-shadow:inset 0 1px 0 rgba(16,24,40,.04)}html[data-theme=light] .chart-legend,html[data-theme=light] .chart-status{color:#20242c;background:rgba(255,255,255,.84);border-color:rgba(16,24,40,.1);text-shadow:none}html[data-theme=light] .chart-legend-row.volume{color:#4b5565}html[data-theme=light] thead th{color:#667085;background:#f8fafc;border-bottom-color:#dfe4ec}html[data-theme=light] td,html[data-theme=light] th{border-bottom-color:#e6eaf0}html[data-theme=light] .autocomplete-item.active,html[data-theme=light] .autocomplete-item:hover,html[data-theme=light] .group-dropdown-item.active,html[data-theme=light] .group-dropdown-item:hover,html[data-theme=light] .sidebar-item:hover,html[data-theme=light] tbody tr:hover td{color:#111827;background:#f4f6f8}html[data-theme=light] .sidebar-item.active{background:#edf1f6;border-color:#d7dde7}html[data-theme=light] .badge,html[data-theme=light] .badge-neutral,html[data-theme=light] .badge-offline,html[data-theme=light] .badge-online,html[data-theme=light] .badge-warn,html[data-theme=light] .state,html[data-theme=light] .strategy-badge{background:#f3f5f8;border-color:#d9dee7}html[data-theme=light] .chart-legend .up,html[data-theme=light] .positive,html[data-theme=light] .up{color:#188a2f}html[data-theme=light] .chart-legend .down,html[data-theme=light] .down,html[data-theme=light] .negative{color:#d00000}html[data-theme=light] .back,html[data-theme=light] .back-link,html[data-theme=light] .symbol,html[data-theme=light] .symbol a,html[data-theme=light] .symbol-button{color:#111827}.logout-modal-backdrop{position:fixed;inset:0;background:rgba(8,10,15,.75);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:grid;place-items:center;z-index:2000;animation:logoutFadeIn .22s cubic-bezier(.16,1,.3,1)}html[data-theme=light] .logout-modal-backdrop{background:rgba(244,246,248,.7)}.logout-modal-card{background:rgba(17,21,29,.85);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:16px;width:min(420px,90vw);padding:32px 24px;text-align:center;box-shadow:0 24px 64px -12px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.03);animation:logoutScaleIn .28s cubic-bezier(.16,1,.3,1)}html[data-theme=light] .logout-modal-card{background:rgba(255,255,255,.9);border-color:rgba(0,0,0,.06);box-shadow:0 24px 64px -12px rgba(16,24,40,.15),inset 0 1px 0 rgba(255,255,255,.8)}.logout-modal-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--danger-soft);border:1px solid rgba(255,92,122,.2);color:var(--danger);margin-bottom:18px}html[data-theme=light] .logout-modal-icon{border-color:rgba(208,0,0,.15)}.logout-modal-icon svg{width:24px;height:24px}.logout-modal-card h2{font-size:20px;font-weight:700;color:var(--fg-emphasis);margin:0 0 10px;letter-spacing:-.01em}.logout-modal-card p{font-size:14px;line-height:1.5;color:var(--muted);margin:0 0 24px}.logout-modal-actions{display:flex;gap:12px}.logout-modal-card .logout-btn-cancel{flex:1 1;display:inline-flex;align-items:center;justify-content:center;min-height:40px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;background:var(--surface-alt);border:1px solid var(--border);color:var(--fg);transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none}.logout-modal-card .logout-btn-cancel:hover{background:var(--surface);border-color:var(--border-focus);transform:translateY(-1px);color:var(--fg-emphasis)}.logout-modal-card .logout-btn-confirm{flex:1 1;display:inline-flex;align-items:center;justify-content:center;min-height:40px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;background:var(--danger);border:1px solid rgba(0,0,0,.1);color:#ffffff;box-shadow:0 4px 12px var(--danger-soft);transition:all .2s cubic-bezier(.4,0,.2,1);text-decoration:none}.logout-modal-card .logout-btn-confirm:hover{filter:brightness(1.15);transform:translateY(-1px);box-shadow:0 6px 18px var(--danger-soft)}.logout-modal-card .logout-btn-cancel:active,.logout-modal-card .logout-btn-confirm:active{transform:translateY(1px)}@keyframes logoutFadeIn{0%{opacity:0}to{opacity:1}}@keyframes logoutScaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.sidebar-auth-promo{padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1}.sidebar-auth-promo .watchlist-auth-card{background:rgba(21,26,36,.45);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);padding:24px 16px;text-align:center;box-shadow:var(--shadow);width:100%;transition:border-color .3s ease,box-shadow .3s ease}.sidebar-auth-promo .watchlist-auth-card:hover{border-color:rgba(255,255,255,.09);box-shadow:0 8px 32px rgba(0,0,0,.35)}html[data-theme=light] .sidebar-auth-promo .watchlist-auth-card{background:rgba(255,255,255,.75);border-color:rgba(0,0,0,.04);box-shadow:0 8px 32px rgba(16,24,40,.06)}.sidebar-auth-promo .watchlist-auth-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--surface-alt);border:1px solid var(--border);color:var(--accent);margin-bottom:14px;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.sidebar-auth-promo .watchlist-auth-icon svg{width:20px;height:20px;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.sidebar-auth-promo .watchlist-auth-card:hover .watchlist-auth-icon{transform:scale(1.05);border-color:var(--accent);background:var(--accent-bg)}.sidebar-auth-promo .watchlist-auth-card:hover .watchlist-auth-icon svg{transform:scale(1.15) rotate(5deg)}.sidebar-auth-promo .watchlist-auth-card h3{font-size:15px;font-weight:600;color:var(--fg-emphasis);margin:0 0 8px}.sidebar-auth-promo .watchlist-auth-card p{font-size:12px;line-height:1.5;color:var(--muted);margin:0 0 18px}.sidebar-auth-promo .sidebar-google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:38px;padding:8px 16px;border-radius:var(--radius-lg);font-weight:600;font-size:13px;text-decoration:none;background:var(--surface-alt);color:var(--fg);border:1px solid var(--border);transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow)}.sidebar-auth-promo .sidebar-google-btn:hover{background:var(--surface);border-color:var(--border-focus);transform:translateY(-1.5px);box-shadow:0 4px 12px rgba(0,0,0,.25)}.sidebar-auth-promo .sidebar-google-btn:active{transform:translateY(.5px)}.app-sidebar{display:flex;flex-direction:column}.sidebar-nav{flex:1 1}.sidebar-footer{display:block;padding:12px 8px;border-top:none;margin-top:auto}.sidebar-profile-widget{display:flex;align-items:center;gap:12px;padding:10px;border-radius:var(--radius-lg);text-decoration:none;background:transparent;border:1px solid transparent;transition:all .22s cubic-bezier(.4,0,.2,1);cursor:pointer;overflow:hidden;width:100%}.sidebar-profile-widget:hover{background:var(--surface-alt);border-color:var(--border);box-shadow:var(--shadow)}.profile-widget-avatar{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--accent-bg);border:1px solid rgba(70,197,143,.15);color:var(--accent);font-size:12px;font-weight:700;flex-shrink:0;overflow:hidden;transition:all .22s ease}.profile-widget-avatar img{width:100%;height:100%;object-fit:cover}.sidebar-profile-widget:hover .profile-widget-avatar{border-color:var(--accent);box-shadow:0 0 8px rgba(70,197,143,.25)}.profile-widget-avatar.guest{background:var(--surface-alt);border-color:var(--border);color:var(--muted)}.sidebar-profile-widget.guest:hover .profile-widget-avatar.guest{border-color:var(--muted-alt);box-shadow:none;color:var(--fg)}.guest-avatar-icon{opacity:.85}.profile-widget-info{display:flex;flex-direction:column;min-width:0;flex:1 1}.profile-widget-name{font-size:13px;font-weight:600;color:var(--fg-emphasis)}.profile-widget-email,.profile-widget-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.profile-widget-email{font-size:11px;color:var(--muted);margin-top:1px}.sidebar-profile-widget.loading{cursor:default}.sidebar-profile-widget.loading:hover{background:transparent;border-color:transparent;box-shadow:none}.sidebar-profile-widget.loading .profile-widget-avatar{border-color:var(--border);background:var(--surface-alt)}.shimmer{background:linear-gradient(90deg,var(--surface-alt) 25%,var(--border) 50%,var(--surface-alt) 75%);background-size:200% 100%;animation:shimmerAnim 1.6s linear infinite}.shimmer-title{height:12px;width:70px;border-radius:4px;margin-bottom:6px}.shimmer-desc{height:9px;width:100px;border-radius:4px}@keyframes shimmerAnim{0%{background-position:200% 0}to{background-position:-200% 0}}.telegram-send-btn:hover:not(:disabled){transform:translateY(-1.5px);box-shadow:0 4px 12px rgba(0,136,204,.35)!important;background:linear-gradient(135deg,#0099e0,#0088cc)!important}.telegram-send-btn:active:not(:disabled){transform:translateY(.5px)}.telegram-send-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none!important}.state-container{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.state.approved{color:var(--success);background:var(--success-soft);border:1px solid rgba(78,203,130,.28)}.relative-strength-page{min-height:100%;padding:28px 30px;overflow:auto}.relative-strength-view-tabs{display:inline-flex;gap:3px;margin-bottom:22px;padding:3px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft)}.relative-strength-view-tabs button{min-height:34px;padding:6px 12px;color:var(--muted);background:transparent;border:0;border-radius:4px;font-size:12px;font-weight:700}.relative-strength-view-tabs button:focus-visible,.relative-strength-view-tabs button:hover{color:var(--fg)}.relative-strength-view-tabs button.active{color:var(--fg-emphasis);background:var(--surface-alt);box-shadow:inset 0 0 0 1px var(--border-focus)}.relative-strength-header,.relative-strength-meta,.relative-strength-toolbar{display:flex;align-items:center}.market-resilience-benchmark{color:var(--fg-emphasis);font-family:var(--font-mono)}.market-resilience-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.market-resilience-behavior,.market-resilience-summary span{display:inline-flex;align-items:center;min-height:24px;padding:3px 7px;border:1px solid var(--border);border-radius:4px;color:var(--muted);background:var(--surface-soft);font-size:11px;font-weight:700}.market-resilience-behavior.behavior-advancing{color:var(--up);border-color:rgba(78,203,130,.32);background:var(--success-soft)}.market-resilience-behavior.behavior-basing{color:var(--primary-strong);border-color:rgba(127,179,255,.34);background:rgba(127,179,255,.1)}.market-resilience-behavior.behavior-limited_decline{color:var(--warn);border-color:rgba(242,184,75,.36);background:var(--warn-bg)}.relative-strength-header{justify-content:space-between;gap:24px;margin-bottom:20px}.relative-strength-header h1{margin:4px 0;color:var(--fg-emphasis);font-size:24px;line-height:1.2}.relative-strength-header p,.relative-strength-method,.relative-strength-state p{margin:0;color:var(--muted)}.relative-strength-meta{flex-wrap:wrap;justify-content:flex-end;gap:10px 14px;color:var(--muted);font-size:12px;text-align:right}.relative-strength-toolbar{flex-wrap:wrap;gap:12px;padding:12px 0 18px}.relative-strength-toolbar label:not(.relative-strength-toggle){display:grid;grid-gap:4px;gap:4px;min-width:138px;color:var(--muted);font-size:11px;font-weight:700}.relative-strength-toolbar input[type=search],.relative-strength-toolbar select{width:100%;min-height:36px;padding:7px 10px;color:var(--fg);background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius);outline:none}.relative-strength-toolbar input[type=search]:focus,.relative-strength-toolbar select:focus{border-color:var(--accent)}.relative-strength-search{min-width:210px!important}.relative-strength-toggle{display:inline-flex;align-items:center;gap:8px;min-height:36px;margin-top:16px;color:var(--fg);white-space:nowrap}.relative-strength-toggle input{width:16px;height:16px;accent-color:var(--accent)}.relative-strength-count{margin-left:auto;color:var(--muted);font-size:12px;white-space:nowrap}.relative-strength-table-shell{max-height:calc(100vh - 250px);overflow:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.relative-strength-table{width:100%;min-width:1040px;border-collapse:collapse;font-size:12px}.relative-strength-table td,.relative-strength-table th{padding:10px 12px;border-bottom:1px solid var(--border);text-align:right;white-space:nowrap}.relative-strength-table th{position:-webkit-sticky;position:sticky;top:0;z-index:2;background:var(--surface-alt);color:var(--muted);font-size:11px;font-weight:700}.relative-strength-table th button{padding:0;color:inherit;background:transparent;border:0;font:inherit;font-weight:inherit}.relative-strength-table th button:hover{color:var(--fg)}.relative-strength-table td:nth-child(2),.relative-strength-table td:nth-child(3),.relative-strength-table td:nth-child(5),.relative-strength-table th:nth-child(2),.relative-strength-table th:nth-child(3),.relative-strength-table th:nth-child(5){text-align:left}.relative-strength-table tbody tr:hover{background:var(--surface-alt)}.relative-strength-table tbody tr:last-child td{border-bottom:0}.market-resilience-table{min-width:980px}.market-resilience-table td:nth-child(2),.market-resilience-table td:nth-child(3),.market-resilience-table td:nth-child(4),.market-resilience-table th:nth-child(2),.market-resilience-table th:nth-child(3),.market-resilience-table th:nth-child(4){text-align:left}.market-resilience-table td:nth-child(n+5),.market-resilience-table th:nth-child(n+5){text-align:right}.relative-strength-symbol{color:var(--fg-emphasis);font-family:var(--font-mono);font-weight:700}.relative-strength-rating{color:var(--primary-strong);font-family:var(--font-mono);font-size:14px}.rs-leadership{display:inline-flex;min-width:76px;justify-content:center;padding:3px 6px;border:1px solid var(--border);border-radius:4px;color:var(--muted);font-size:11px;font-weight:700}.rs-leadership.rs-elite{color:var(--primary-strong);border-color:rgba(70,197,143,.4);background:var(--accent-bg)}.rs-leadership.rs-strong{color:#7fb3ff;border-color:rgba(127,179,255,.36);background:rgba(127,179,255,.1)}.rs-leadership.rs-above_average{color:var(--warn);border-color:rgba(242,184,75,.36);background:var(--warn-bg)}.relative-strength-up{color:var(--up);font-family:var(--font-mono)}.relative-strength-down{color:var(--down);font-family:var(--font-mono)}.relative-strength-chart-link{min-width:42px;min-height:28px;padding:4px 8px;color:var(--primary-strong);background:transparent;border:1px solid var(--border-focus);border-radius:4px;font-size:11px;font-weight:700}.relative-strength-chart-link:focus-visible,.relative-strength-chart-link:hover{border-color:var(--accent);background:var(--accent-bg)}.relative-strength-state{padding:34px 18px;border:1px dashed var(--border-focus);border-radius:var(--radius-lg);text-align:center}.relative-strength-state h2{margin:0 0 6px;font-size:16px}.relative-strength-state .charts-nav-btn{margin-top:16px}.relative-strength-empty-row{padding:32px!important;color:var(--muted);text-align:center!important}.relative-strength-loading-row td{padding:11px 12px}.relative-strength-loading-row span{display:block;width:100%;height:14px;border-radius:3px;background:var(--surface-alt)}.relative-strength-method{padding-top:12px;font-size:12px}@media (max-width:760px){.sidebar-nav .nav-item{min-width:max-content;white-space:nowrap}.sidebar-nav .nav-item>span:last-child{white-space:nowrap}.relative-strength-page{padding:18px 14px}.relative-strength-view-tabs{display:flex;width:100%;overflow-x:auto}.relative-strength-view-tabs button{flex:1 0 max-content}.relative-strength-header{align-items:flex-start;flex-direction:column;gap:12px}.relative-strength-meta{justify-content:flex-start;text-align:left}.relative-strength-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.relative-strength-search{grid-column:1/-1}.relative-strength-toggle{margin-top:0}.relative-strength-count{margin-left:0;align-self:center}.relative-strength-table-shell{max-height:calc(100vh - 310px)}}.admin-market-commentary-page,.market-commentary-detail-page,.market-commentary-page{width:100%;max-width:1080px;margin-inline:auto}.admin-market-commentary-page>header p,.market-commentary-page>header p{max-width:720px;margin:6px 0 0;color:var(--muted)}.market-commentary-list{display:grid;max-width:1080px;margin:18px auto 0;grid-gap:12px;gap:12px}.market-commentary-admin-list,.market-commentary-card,.market-commentary-detail,.market-commentary-editor-panel{background:var(--surface);border:1px solid var(--border);border-radius:10px}.market-commentary-card{padding:20px}.market-commentary-admin-item-meta,.market-commentary-byline,.market-commentary-card-footer,.market-commentary-card-meta,.market-commentary-editor-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.market-commentary-admin-item-meta,.market-commentary-byline,.market-commentary-card-footer>span,.market-commentary-card-meta time{color:var(--muted);font-size:12px}.market-commentary-card h2{margin:14px 0 8px;font-size:clamp(20px,2vw,26px);line-height:1.3}.market-commentary-card h2 a{color:var(--fg-emphasis);text-decoration:none}.market-commentary-card h2 a:hover{color:var(--accent)}.market-commentary-card>p{margin:0 0 18px;color:var(--muted);line-height:1.65}.market-commentary-detail-page{width:100%}.market-commentary-back-link{display:inline-flex;margin-bottom:14px;color:var(--accent);text-decoration:none}.market-commentary-detail{max-width:860px;margin-inline:auto;padding:clamp(20px,4vw,44px)}.market-commentary-detail>header{min-height:0;padding:0 0 20px;border-bottom:1px solid var(--border)}.market-commentary-detail>header p{max-width:760px;margin:12px 0 0;color:var(--muted);font-size:16px;line-height:1.65}.market-commentary-byline{justify-content:flex-start;margin:16px 0 28px}.market-commentary-content{color:var(--fg);font-size:15px;line-height:1.75}.market-commentary-content h2,.market-commentary-content h3{margin:28px 0 10px;color:var(--fg-emphasis)}.market-commentary-content p,.market-commentary-content ul{margin:0 0 18px}.market-commentary-content ul{padding-left:22px}.page-disclaimer{max-width:1080px;margin:18px auto 0;color:var(--muted);font-size:12px}.market-commentary-admin-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:start;grid-gap:16px;gap:16px;margin-top:16px}.market-commentary-admin-list,.market-commentary-editor-panel{padding:18px}.market-commentary-admin-list{position:-webkit-sticky;position:sticky;top:12px;max-height:calc(100vh - 110px);overflow:auto}.market-commentary-form{display:grid;grid-gap:14px;gap:14px;margin-top:16px}.market-commentary-form label{display:grid;grid-gap:6px;gap:6px;color:var(--fg);font-size:12px;font-weight:700}.market-commentary-form input,.market-commentary-form textarea{width:100%;padding:10px 12px;color:var(--fg-emphasis);background:var(--surface-alt);border:1px solid var(--border);border-radius:7px;font:inherit;line-height:1.5;resize:vertical}.market-commentary-form input:focus,.market-commentary-form textarea:focus{border-color:var(--border-focus);outline:2px solid color-mix(in srgb,var(--accent) 24%,transparent);outline-offset:1px}.market-commentary-editor-actions{justify-content:flex-end}.market-commentary-unpublish,.primary-button,.secondary-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:38px;padding:8px 14px;border:1px solid transparent;border-radius:7px;font-weight:800;cursor:pointer}.primary-button{color:#04120f!important;background:var(--success)!important;border-color:var(--success)!important}.secondary-button{color:var(--fg-emphasis)!important;background:var(--surface-alt)!important;border-color:var(--border)!important}.market-commentary-unpublish{color:var(--danger)!important;background:transparent!important;border-color:color-mix(in srgb,var(--danger) 42%,var(--border))!important}.market-commentary-unpublish:hover,.primary-button:hover,.secondary-button:hover{filter:brightness(1.08)}.market-commentary-unpublish:disabled,.primary-button:disabled,.secondary-button:disabled{cursor:wait;opacity:.58}.market-commentary-form-status{min-height:22px}.chart-inline-message.success{color:var(--success)}.market-commentary-admin-items{display:grid;grid-gap:8px;gap:8px;margin-top:14px}.market-commentary-admin-item{display:grid;grid-gap:8px;gap:8px;padding:10px;background:var(--surface-alt);border:1px solid var(--border);border-radius:8px}.market-commentary-admin-item.active{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.market-commentary-admin-item>button.market-commentary-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;min-height:0;padding:0!important;color:var(--fg)!important;background:transparent!important;border:0!important;text-align:left;cursor:pointer}.market-commentary-admin-item>button.market-commentary-select strong{margin:8px 0 4px;color:var(--fg-emphasis);line-height:1.35}.market-commentary-admin-item>button.market-commentary-select>span:last-child{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.market-commentary-unpublish{justify-self:start;min-height:32px;padding:5px 10px;font-size:12px}@media (max-width:900px){.market-commentary-admin-grid{grid-template-columns:1fr}.market-commentary-admin-list{position:static;max-height:none}}@media (max-width:600px){.market-commentary-admin-list,.market-commentary-card,.market-commentary-editor-panel{padding:14px}.market-commentary-card-footer,.market-commentary-card-meta,.market-commentary-editor-actions{align-items:stretch;flex-direction:column}.market-commentary-card-footer .charts-nav-btn,.market-commentary-editor-actions>button{width:100%;min-height:44px}}.intraday-signal-panel{padding:0;overflow:hidden}.intraday-signal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:20px 20px 16px;border-bottom:1px solid var(--border)}.intraday-signal-title{min-width:260px}.intraday-signal-title .eyebrow{display:block;margin-bottom:4px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.intraday-signal-empty h3,.intraday-signal-title h2{margin:0;color:var(--fg-emphasis)}.intraday-signal-title h2{font-size:19px;line-height:1.3}.intraday-signal-empty p,.intraday-signal-note,.intraday-signal-title p{margin:4px 0 0;color:var(--muted)}.intraday-signal-title p{max-width:620px;font-size:12px}.intraday-signal-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px 18px}.intraday-signal-summary>div{display:grid;grid-gap:2px;gap:2px;padding-left:16px;border-left:1px solid var(--border)}.intraday-signal-summary>div:first-child{padding-left:0;border-left:0}.intraday-signal-summary span{color:var(--muted-alt);font-size:10px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.intraday-signal-summary strong{color:var(--fg);font-family:var(--font-mono);font-size:12px;white-space:nowrap}.intraday-engine-state{display:inline-flex;min-height:25px;align-items:center;padding:3px 8px;border:1px solid var(--border);border-radius:999px;text-transform:none!important}.intraday-engine-state.online{color:var(--up);background:var(--up-bg);border-color:rgba(78,203,130,.28)}.intraday-engine-state.offline{color:var(--warn);background:var(--warn-bg);border-color:rgba(242,184,75,.28)}.signal-scan-controls{display:grid;grid-template-columns:minmax(170px,210px) minmax(0,1fr);align-items:start;grid-gap:12px 18px;gap:12px 18px;padding:14px 20px;background:var(--surface-soft);border-bottom:1px solid var(--border)}.signal-date-control{display:grid;grid-gap:5px;gap:5px;color:var(--muted);font-size:10px;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.signal-date-control input{min-width:0;height:40px;background:var(--bg)}.signal-control-actions{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-end;gap:8px;padding-top:17px}.manual-scan-control,.telegram-send-control{display:flex;max-width:min(100%,330px);flex-direction:column;align-items:flex-start;gap:5px}button.signal-action-button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:7px;padding:8px 12px;border:1px solid var(--border-focus);border-radius:var(--radius);font-size:12px;font-weight:760;line-height:1;white-space:nowrap}button.signal-action-button svg{width:15px;height:15px;fill:currentColor}button.signal-history-button{color:var(--fg);background:var(--surface-alt)}button.signal-history-button:focus-visible,button.signal-history-button:hover:not(:disabled){color:var(--accent);background:var(--surface);border-color:var(--accent-dim)}button.signal-scan-button{color:#061411;background:var(--accent);border-color:var(--accent)}button.signal-scan-button:focus-visible,button.signal-scan-button:hover:not(:disabled){background:var(--primary-strong);border-color:var(--primary-strong)}button.telegram-send-btn{color:#dff5ff;background:#167ca8;border-color:#238db9}button.telegram-send-btn:focus-visible,button.telegram-send-btn:hover:not(:disabled){color:#fff;background:#218fbd;border-color:#45add6}button.signal-action-button:disabled{cursor:not-allowed;opacity:.55}.signal-action-feedback{max-width:330px;font-size:11px;line-height:1.35}.intraday-signal-table-shell{max-height:min(620px,calc(100vh - 230px));overflow:auto}.intraday-signal-table{min-width:1180px}.intraday-signal-table td,.intraday-signal-table th{padding:11px 12px}.intraday-signal-table th{top:0;background:var(--surface)}.intraday-stage-badge,.intraday-state{display:inline-flex;align-items:center;min-height:24px;padding:3px 7px;border:1px solid var(--border);border-radius:4px;font-family:var(--font-mono);font-size:10px;font-weight:750;white-space:nowrap}.intraday-stage-badge{color:var(--muted);background:var(--neutral-bg)}.intraday-state.state-buy-candidate{color:var(--up);background:var(--up-bg);border-color:rgba(78,203,130,.3)}.intraday-rr,.intraday-snapshot,.intraday-strategy{font-family:var(--font-mono)}.intraday-snapshot,.intraday-strategy{color:var(--muted);font-size:11px}.intraday-quality{display:grid;grid-template-columns:auto 1fr;align-items:baseline;grid-gap:0 5px;gap:0 5px;min-width:86px}.intraday-quality strong{color:var(--fg-emphasis);font-family:var(--font-mono);font-size:17px}.intraday-price-plan small,.intraday-quality small,.intraday-quality span{color:var(--muted-alt);font-size:9px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.intraday-quality small{grid-column:1/-1;margin-top:2px}.intraday-price-plan{display:grid;grid-template-columns:repeat(3,minmax(72px,1fr));grid-gap:10px;gap:10px;min-width:260px}.intraday-price-plan span{display:grid;grid-gap:2px;gap:2px}.intraday-price-plan strong{font-family:var(--font-mono);font-size:11px}.intraday-rr{color:var(--fg-emphasis)}.intraday-signal-empty{display:flex;min-height:180px;align-items:center;justify-content:center;gap:14px;padding:34px 20px;text-align:left}.intraday-signal-empty h3{font-size:15px}.intraday-signal-empty p{max-width:580px;font-size:12px}.intraday-empty-icon{display:inline-flex;width:38px;height:38px;flex:0 0 38px;align-items:center;justify-content:center;color:var(--accent);background:var(--accent-bg);border:1px solid rgba(70,197,143,.25);border-radius:50%;font-family:var(--font-mono);font-size:18px;font-weight:800}.intraday-signal-offline .intraday-empty-icon{color:var(--warn);background:var(--warn-bg);border-color:rgba(242,184,75,.28)}.intraday-signal-note{padding:10px 20px 12px;border-top:1px solid var(--border);font-size:10px}@media (max-width:980px){.intraday-signal-header{flex-direction:column}.intraday-signal-summary{justify-content:flex-start}.signal-scan-controls{grid-template-columns:minmax(160px,200px) minmax(0,1fr)}}@media (max-width:700px){.intraday-signal-header{gap:16px;padding:16px 14px 14px}.intraday-signal-summary{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.intraday-signal-summary>div,.intraday-signal-summary>div:first-child{padding:0;border:0}.intraday-engine-state{justify-self:start}.signal-scan-controls{grid-template-columns:1fr;padding:12px 14px}.signal-control-actions{display:grid;grid-template-columns:1fr;padding-top:0}.manual-scan-control,.telegram-send-control,button.signal-action-button{width:100%;max-width:none}.intraday-signal-empty{min-height:200px;align-items:flex-start;justify-content:flex-start;padding:30px 16px}.intraday-signal-note{padding-inline:14px}}.charts-layout .charts-command-bar{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr) auto;align-items:center;grid-gap:20px;gap:20px;min-height:84px;padding:12px 16px}.charts-layout .charts-command-bar .header-center{display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0}.charts-layout .chart-tabs-bar{min-height:46px;padding:5px 12px}.charts-layout .charts-body{display:grid;grid-template-columns:minmax(0,1fr) 304px;min-width:0;overflow:hidden}.charts-layout .charts-body.watchlist-collapsed{grid-template-columns:minmax(0,1fr) 0}.charts-layout .charts-chart-container{min-width:0;min-height:540px}.charts-layout .charts-sidebar{width:auto;min-width:0;overflow:hidden auto}.charts-layout .charts-sidebar.collapsed{width:0;border-color:transparent;opacity:0;pointer-events:none}@media (max-width:900px){.charts-layout .charts-command-bar{grid-template-columns:1fr;gap:10px;min-height:0;padding:12px}.charts-layout .charts-command-bar .header-center{align-items:flex-start}.charts-layout .charts-command-bar .header-right,.charts-layout .watchlist-collapse-btn{display:none}.charts-layout .chart-tabs-bar{padding-inline:10px;overflow:hidden}.charts-layout .charts-body,.charts-layout .charts-body.watchlist-collapsed{display:block;overflow:visible}.charts-layout .charts-chart-container{height:min(520px,calc(100dvh - 330px));min-height:430px}.charts-layout .charts-sidebar,.charts-layout .charts-sidebar.collapsed{position:fixed;right:0;bottom:0;left:0;z-index:70;width:100%;max-width:520px;max-height:72dvh;margin-inline:auto;overflow-y:auto;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(100%)}.charts-layout .charts-sidebar.collapsed.mobile-open,.charts-layout .charts-sidebar.mobile-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.charts-layout .delete-group-pill-btn,.charts-layout .delete-item-btn,.charts-layout .sidebar-add-btn{min-width:44px;min-height:44px}.charts-layout .sidebar-item{grid-template-columns:minmax(0,1fr) 48px}}.chart-status{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.chart-status-action{min-height:40px;padding-inline:14px}.chart-status-chip.connection-reconnecting .status-dot{background:var(--warn)}.chart-status-chip.connection-connecting .status-dot{background:var(--muted)}.new-group-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}.new-group-form .new-group-input,.new-group-submit-btn{min-height:40px}.new-group-form .chart-inline-message{grid-column:1/-1}.charts-layout .sidebar-item .delete-item-btn{position:static;min-width:36px;min-height:36px;pointer-events:auto}.profile-page.profile-v2{display:block;width:100%;max-width:1000px;min-height:auto;margin:0 auto;padding:28px 32px 48px;color:var(--fg)}.profile-v2 .profile-summary{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(220px,auto);align-items:center;grid-gap:18px;gap:18px;padding:20px 22px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.profile-v2 .profile-avatar-compact{width:56px;height:56px;border:1px solid var(--border-focus);border-radius:50%;background:var(--accent-bg);color:var(--accent);font-size:17px}.profile-v2 .profile-summary-actions,.profile-v2 .profile-summary-identity{min-width:0}.profile-v2 .profile-section-kicker,.profile-v2 .profile-summary-label{margin:0 0 4px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.profile-v2 .profile-summary h1{margin:0;font-size:clamp(20px,2.4vw,26px);line-height:1.2;letter-spacing:-.025em}.profile-v2 .profile-summary-email{margin:4px 0 0;overflow:hidden;color:var(--muted);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.profile-v2 .profile-summary-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.profile-v2 .profile-account-state,.profile-v2 .profile-role-badge{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;color:var(--fg);background:var(--surface-alt);border:1px solid var(--border);border-radius:999px;font-size:11px;font-weight:700}.profile-v2 .profile-account-state:before{width:7px;height:7px;margin-right:6px;background:var(--muted);border-radius:50%;content:""}.profile-v2 .profile-account-state.active:before{background:var(--accent)}.profile-v2 .profile-account-state.inactive:before{background:var(--danger)}.profile-v2 .profile-summary-actions{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.profile-v2 .profile-summary-actions p{max-width:250px;margin:0;color:var(--muted);font-size:11px;line-height:1.45;text-align:right}.profile-v2 .profile-logout{min-height:44px;padding:9px 14px;color:var(--danger);background:transparent;border:1px solid color-mix(in srgb,var(--danger) 32%,var(--border));border-radius:var(--radius)}.profile-v2 .profile-content-column{display:grid;grid-gap:18px;gap:18px;width:min(100%,720px);margin:22px auto 0}.profile-v2 .profile-panel{display:grid;grid-gap:18px;gap:18px;padding:26px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);-webkit-backdrop-filter:none;backdrop-filter:none}.profile-v2 .profile-panel-heading{margin:0 0 2px;padding-bottom:16px;border-bottom:1px solid var(--border)}.profile-v2 .profile-panel-heading h2{margin:0;font-size:19px;letter-spacing:-.015em}.profile-v2 .profile-panel-heading>p:last-child{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.profile-v2 .profile-field{display:grid;grid-gap:7px;gap:7px}.profile-v2 .profile-field label{color:var(--fg);font-size:13px;font-weight:650}.profile-v2 .profile-input{min-height:46px;padding:10px 12px;color:var(--fg-emphasis);background:var(--bg-elevated);border:1px solid var(--border-focus);border-radius:var(--radius);box-shadow:none}.profile-v2 .profile-input:hover:not(:disabled){border-color:color-mix(in srgb,var(--fg) 32%,var(--border))}.profile-v2 .profile-input:focus,.profile-v2 .profile-input:focus-visible{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 36%,transparent);outline-offset:1px;box-shadow:none}.profile-v2 .profile-input[aria-invalid=true]{border-color:var(--danger)}.profile-v2 .profile-field-error,.profile-v2 .profile-field-help{min-height:17px;font-size:11px;line-height:1.45}.profile-v2 .profile-field-help{color:var(--muted)}.profile-v2 .profile-field-error{color:var(--danger)}.profile-v2 .profile-password-control{position:relative}.profile-v2 .profile-password-control .profile-input{padding-right:68px}.profile-v2 .profile-password-toggle{position:absolute;top:50%;right:3px;min-width:58px;min-height:44px;padding:6px 10px;color:var(--muted);background:transparent;border:0;border-radius:5px;transform:translateY(-50%)}.profile-v2 .profile-password-toggle:hover{color:var(--fg-emphasis);background:var(--surface-alt)}.profile-v2 .profile-password-requirements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin:-4px 0 0;padding:0;list-style:none}.profile-v2 .profile-password-requirements li{display:flex;align-items:center;gap:6px;min-width:0;padding:8px 9px;color:var(--muted);background:var(--surface-alt);border:1px solid var(--border);border-radius:var(--radius);font-size:11px;line-height:1.35}.profile-v2 .profile-password-requirements li.met{color:var(--fg);border-color:color-mix(in srgb,var(--accent) 42%,var(--border))}.profile-v2 .profile-password-requirements li.met span{color:var(--accent)}.profile-v2 .profile-actions{display:flex;align-items:center;gap:14px;min-height:46px;padding-top:4px}.profile-v2 .profile-btn-primary{min-height:44px;padding:9px 18px;color:#06140e;background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius);box-shadow:none;transform:none}.profile-v2 .profile-btn-primary:hover:not(:disabled){background:var(--primary-strong);border-color:var(--primary-strong);box-shadow:none;transform:none}.profile-v2 .profile-btn-primary:disabled{color:var(--muted);background:var(--surface-alt);border-color:var(--border);opacity:.72}.profile-v2 .profile-message{min-height:20px;line-height:1.45;animation:none}.profile-v2.profile-state-page{display:grid;min-height:min(620px,calc(100dvh - 120px));place-items:center}.profile-v2 .profile-access-state{display:flex;flex-direction:column;align-items:center;width:min(100%,480px);padding:34px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.profile-v2 .profile-access-icon{display:grid;width:48px;height:48px;margin-bottom:16px;place-items:center;color:var(--accent);background:var(--accent-bg);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:50%;font-size:20px;font-weight:800}.profile-v2 .profile-access-state h1{margin:0;font-size:22px}.profile-v2 .profile-access-state>p:not(.profile-section-kicker){margin:10px 0 20px;color:var(--muted);line-height:1.6}.profile-v2 .profile-access-state .profile-btn-primary{text-decoration:none}.profile-v2 .logout-modal-card{width:min(420px,calc(100vw - 32px));padding:28px 24px 24px;background:var(--surface);border-color:var(--border-focus);box-shadow:var(--shadow-drop);-webkit-backdrop-filter:none;backdrop-filter:none}.profile-v2 .logout-modal-card .logout-unsaved-warning{margin:-10px 0 18px;padding:9px 10px;color:var(--warning);background:var(--warning-soft);border:1px solid color-mix(in srgb,var(--warning) 30%,var(--border));border-radius:var(--radius);font-size:12px;font-weight:650}.profile-v2 .logout-modal-actions>*{min-height:44px}.profile-v2 :is(button,a,input):focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:700px){.profile-page.profile-v2{padding:16px 14px 36px}.profile-v2 .profile-summary{grid-template-columns:48px minmax(0,1fr);gap:12px;padding:16px}.profile-v2 .profile-avatar-compact{width:48px;height:48px}.profile-v2 .profile-summary-actions{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100%;padding-top:12px;border-top:1px solid var(--border)}.profile-v2 .profile-summary-actions p{text-align:left}.profile-v2 .profile-content-column{gap:14px;margin-top:14px}.profile-v2 .profile-panel{gap:16px;padding:20px 16px}.profile-v2 .profile-password-requirements{grid-template-columns:1fr}.profile-v2 .profile-password-requirements li{min-height:38px}.profile-v2 .profile-actions{align-items:stretch;flex-direction:column;gap:8px}.profile-v2 .profile-actions .profile-btn-primary,.profile-v2 .profile-logout{width:100%}.profile-v2 .profile-summary-actions{grid-template-columns:1fr}.profile-v2 .logout-modal-actions{flex-direction:column-reverse}}@media (prefers-reduced-motion:reduce){.profile-v2 *,.profile-v2 :after,.profile-v2 :before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.charts-layout .sidebar-list{min-width:0}.charts-layout .sidebar-item{display:grid;grid-template-columns:minmax(0,1fr) 36px;align-items:stretch;width:calc(100% - 16px);min-height:64px;padding:0;box-sizing:border-box;color:#ededed;background:#1b1b1b;border:1px solid #303030}.charts-layout .sidebar-item:hover{background:#222222;border-color:#404040}.charts-layout .sidebar-item.active{background:#292929;border-color:#505050}.charts-layout .sidebar-item>button.sidebar-item-main,html[data-theme=light] .charts-layout .sidebar-item>button.sidebar-item-main{display:block;width:100%;min-width:0;height:100%;margin:0;padding:10px 8px 10px 14px;color:inherit!important;background:transparent!important;border:0!important;border-radius:inherit;box-shadow:none!important;text-align:left;transform:none!important}.charts-layout .sidebar-item>button.sidebar-item-main:hover,html[data-theme=light] .charts-layout .sidebar-item>button.sidebar-item-main:hover{color:inherit!important;background:transparent!important;border-color:transparent!important;transform:none!important}.charts-layout .sidebar-item-content,.charts-layout .sidebar-item-row-1,.charts-layout .sidebar-item-row-2{width:100%;min-width:0}.charts-layout .sidebar-item-price,.charts-layout .sidebar-item-symbol{color:#f5f5f5}.charts-layout .sidebar-item-name{color:#a8a8a8}.charts-layout .sidebar-item>.delete-item-btn{position:static;align-self:center;justify-self:center;width:32px;height:32px;pointer-events:auto;transform:none}.charts-layout .sidebar-item:focus-within>.delete-item-btn,.charts-layout .sidebar-item:hover>.delete-item-btn{transform:none}html[data-theme=light] .charts-layout .sidebar-item{color:#1f2937;background:#ffffff;border-color:#d7dde7}html[data-theme=light] .charts-layout .sidebar-item:hover{background:#f4f6f8;border-color:#c8d0dc}html[data-theme=light] .charts-layout .sidebar-item.active{background:#edf1f6;border-color:#98a2b3}html[data-theme=light] .charts-layout .sidebar-item-price,html[data-theme=light] .charts-layout .sidebar-item-symbol{color:#111827}html[data-theme=light] .charts-layout .sidebar-item-name{color:#667085}.charts-layout .search-btn,.charts-layout .watchlist-collapse-btn{color:#f4f4f5!important;background:#242424!important;border-color:#444444!important;box-shadow:none!important;transform:none!important}.charts-layout .search-btn:hover,.charts-layout .watchlist-collapse-btn:hover{color:#ffffff!important;background:#303030!important;border-color:#606060!important;transform:none!important}.charts-layout .chart-tab{color:#b8b8b8;background:#1b1b1b;border-color:#343434}.charts-layout .chart-tab:hover{color:#eeeeee;background:#222222;border-color:#484848}.charts-layout .chart-tab.active{color:#ffffff;background:#2a2a2a;border-color:#6a6a6a;box-shadow:inset 0 0 0 1px #3d3d3d}.charts-layout .chart-tab>button.chart-tab-close,.charts-layout .chart-tab>button.chart-tab-main{color:inherit!important;background:transparent!important;border:0!important;box-shadow:none!important;transform:none!important}.charts-layout .chart-tab>button.chart-tab-main:hover{color:inherit!important;background:transparent!important;transform:none!important}.charts-layout .chart-tab>button.chart-tab-close:hover:not(:disabled){color:#ff7b7b!important;background:#3b2424!important;transform:none!important}html[data-theme=light] .charts-layout .search-btn,html[data-theme=light] .charts-layout .watchlist-collapse-btn{color:#1f2937!important;background:#f4f6f8!important;border-color:#c8d0dc!important}html[data-theme=light] .charts-layout .search-btn:hover,html[data-theme=light] .charts-layout .watchlist-collapse-btn:hover{color:#111827!important;background:#e9edf2!important;border-color:#98a2b3!important}html[data-theme=light] .charts-layout .chart-tab{color:#475467;background:#f8fafc;border-color:#d7dde7}html[data-theme=light] .charts-layout .chart-tab:hover{color:#1f2937;background:#f1f4f7;border-color:#b8c0cc}html[data-theme=light] .charts-layout .chart-tab.active{color:#111827;background:#e8edf3;border-color:#667085;box-shadow:inset 0 0 0 1px #c8d0dc}.relative-strength-page .relative-strength-view-tabs>button{color:#b8b8b8!important;background:transparent!important;border-color:transparent!important;box-shadow:none!important;transform:none!important}.relative-strength-page .relative-strength-view-tabs>button:hover{color:#f4f4f5!important;background:#222222!important;transform:none!important}.relative-strength-page .relative-strength-view-tabs>button.active{color:#ffffff!important;background:#2a2a2a!important;box-shadow:inset 0 0 0 1px #5a5a5a!important}.relative-strength-page .relative-strength-header .charts-nav-btn,.relative-strength-page button.relative-strength-chart-link{color:#f0f0f0!important;background:#242424!important;border-color:#444444!important;box-shadow:none!important;transform:none!important}.relative-strength-page .relative-strength-header .charts-nav-btn:hover,.relative-strength-page button.relative-strength-chart-link:hover{color:#ffffff!important;background:#303030!important;border-color:#606060!important;transform:none!important}.relative-strength-page .relative-strength-table th>button{color:inherit!important;background:transparent!important;border:0!important;box-shadow:none!important;transform:none!important}.relative-strength-page .relative-strength-table th>button:hover{color:#f4f4f5!important;background:transparent!important;transform:none!important}html[data-theme=light] .relative-strength-page .relative-strength-view-tabs>button{color:#667085!important}html[data-theme=light] .relative-strength-page .relative-strength-view-tabs>button:hover{color:#1f2937!important;background:#f1f4f7!important}html[data-theme=light] .relative-strength-page .relative-strength-view-tabs>button.active{color:#111827!important;background:#e8edf3!important;box-shadow:inset 0 0 0 1px #98a2b3!important}html[data-theme=light] .relative-strength-page .relative-strength-header .charts-nav-btn,html[data-theme=light] .relative-strength-page button.relative-strength-chart-link{color:#1f2937!important;background:#f4f6f8!important;border-color:#c8d0dc!important}html[data-theme=light] .relative-strength-page .relative-strength-header .charts-nav-btn:hover,html[data-theme=light] .relative-strength-page button.relative-strength-chart-link:hover{color:#111827!important;background:#e9edf2!important;border-color:#98a2b3!important}.topbar-control-cluster{display:flex;align-items:center;gap:8px;min-width:0;margin-left:auto}.topbar-control-cluster .header-time{display:inline-flex;min-width:142px;align-items:center;justify-content:flex-end;color:#b8b8b8;line-height:1;white-space:nowrap}.header-time-short{display:none}.locale-switch{display:inline-flex;gap:2px;padding:2px;background:#181818;border:1px solid #343434;border-radius:10px}.app-topbar .locale-switch>button{min-width:38px;width:38px;min-height:34px;height:34px;padding:0!important;color:#a8a8a8!important;background:transparent!important;border:1px solid transparent!important;border-radius:7px!important;box-shadow:none!important;font-size:11px;font-weight:800;letter-spacing:.04em;transform:none!important}.app-topbar .locale-switch>button:hover{color:#f4f4f5!important;background:#242424!important;border-color:#3f3f3f!important;transform:none!important}.app-topbar .locale-switch>button.active{color:#ffffff!important;background:#303030!important;border-color:#505050!important;box-shadow:inset 0 0 0 1px #393939!important}.app-topbar .theme-toggle{width:36px;min-width:36px;height:36px;min-height:36px;padding:0!important;color:#d4d4d4!important;background:#202020!important;border-color:#3a3a3a!important;box-shadow:none!important;transform:none!important}.app-topbar .theme-toggle:hover{color:#ffffff!important;background:#2c2c2c!important;border-color:#525252!important;transform:none!important}.app-topbar .theme-toggle svg{width:19px!important;height:19px!important}.app-topbar .locale-switch>button:focus-visible,.app-topbar .theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}html[data-theme=light] .topbar-control-cluster .header-time{color:#475467}html[data-theme=light] .locale-switch{background:#f4f6f8;border-color:#d7dde7}html[data-theme=light] .app-topbar .locale-switch>button{color:#667085!important}html[data-theme=light] .app-topbar .locale-switch>button:hover{color:#1f2937!important;background:#e9edf2!important;border-color:#c8d0dc!important}html[data-theme=light] .app-topbar .locale-switch>button.active{color:#111827!important;background:#ffffff!important;border-color:#98a2b3!important;box-shadow:inset 0 0 0 1px #d7dde7!important}html[data-theme=light] .app-topbar .theme-toggle{color:#344054!important;background:#f4f6f8!important;border-color:#c8d0dc!important}html[data-theme=light] .app-topbar .theme-toggle:hover{color:#111827!important;background:#e9edf2!important;border-color:#98a2b3!important}@media (max-width:860px){.app-topbar{display:flex;height:52px;min-height:52px;padding:0 12px}.topbar-control-cluster{width:100%;justify-content:flex-end}.app-topbar .locale-switch>button,.app-topbar .theme-toggle{min-width:44px;width:44px;min-height:44px;height:44px}.app-shell{width:100%;max-width:100%;overflow-x:hidden}.app-sidebar{max-width:100vw}.sidebar-nav{flex:0 0 auto;min-width:max-content}.app-workspace{width:calc(100% - 24px);max-width:calc(100% - 24px);min-width:0}}@media (max-width:420px){.topbar-control-cluster .header-time{min-width:0;margin-right:auto}.header-time-full{display:none}.header-time-short{display:inline}}