:root,[data-theme=light]{--bg:#f5f7fb;--fg:#373b4f;--card:#ffffff;--card-soft:#f4f7fb;--muted:#8b91a7;--border:#e7ecf4;--primary:#5aa9ff;--primary-soft:#edf6ff;--success:#55c7bd;--danger:#f05f70;--warning:#d99a32;--shadow:0 14px 34px rgba(38,46,72,0.055)}[data-theme=dark]{--bg:#0f172a;--fg:#e5edf7;--card:#172033;--card-soft:#111827;--muted:#9fb0c4;--border:#26364f;--primary:#60a5fa;--primary-soft:#172554;--success:#4ade80;--danger:#f87171;--warning:#fbbf24;--shadow:0 20px 70px rgba(0,0,0,0.28)}@media (prefers-color-scheme:dark){:root{--bg:#0f172a;--fg:#e5edf7;--card:#172033;--card-soft:#111827;--muted:#9fb0c4;--border:#26364f;--primary:#60a5fa;--primary-soft:#172554;--success:#4ade80;--danger:#f87171;--warning:#fbbf24;--shadow:0 20px 70px rgba(0,0,0,0.28)}}*{box-sizing:border-box}body,html{min-height:100%;background:var(--bg)}body{margin:0;color:var(--fg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}a,button,input,select{font:inherit}a,button{min-height:44px}button{cursor:pointer}a{color:inherit;text-decoration:none}.cockpit{min-height:100vh;background:var(--bg)}.sidebar{position:fixed;inset:0 auto 0 0;z-index:12;display:flex;width:280px;flex-direction:column;padding:22px;color:#e5edf7;background:#111827}.brand{display:flex;align-items:center;gap:12px;min-height:54px}.brand-copy{min-width:0;flex:1 1}.brand-mark{display:grid;width:44px;height:44px;place-items:center;border-radius:12px;color:white;background:linear-gradient(135deg,#2563eb,#14b8a6);font-weight:900}.brand span,.brand strong{display:block}.sidebar-collapse{width:38px;min-height:38px;flex:0 0 auto;padding:0}.brand span,.sidebar-footer{color:#9fb0c4;font-size:13px}.sidebar nav{display:grid;gap:7px;margin-top:28px}.ai-actions button,.import-form a,.import-form button,.inline-actions a,.inline-actions button,.install-prompt,.sidebar button,.topbar-actions button,.topbar-actions select{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:12px;transition:transform .14s ease,border-color .14s ease,background .14s ease,color .14s ease}.sidebar button{justify-content:flex-start;padding:0 12px;color:#c6d2e1;background:transparent}.sidebar button.active,.sidebar button:hover{color:#fff;background:rgba(255,255,255,.11)}[data-theme=light] .sidebar{color:var(--fg);background:#ffffff;border-right:1px solid var(--border);box-shadow:10px 0 34px rgba(38,46,72,.035)}[data-theme=light] .brand span,[data-theme=light] .sidebar-footer{color:var(--muted)}[data-theme=light] .sidebar button{color:#575d72}[data-theme=light] .sidebar button.active,[data-theme=light] .sidebar button:hover{color:#34394e;background:#f0f4fa}[data-theme=light] .sidebar-footer{border-top-color:var(--border)}.sidebar-footer{display:grid;gap:6px;margin-top:auto;padding-top:18px;border-top:1px solid rgba(255,255,255,.12)}.workspace{width:calc(100% - 280px);max-width:calc(100vw - 280px);min-height:100vh;margin-left:280px;padding:28px 28px calc(28px + env(safe-area-inset-bottom))}.brand-copy,.nav-label,.sidebar,.sidebar-footer,.workspace{transition:width .18s ease,max-width .18s ease,margin .18s ease,opacity .14s ease,transform .14s ease}.sidebar-collapsed .sidebar{width:88px;padding:22px 14px}.sidebar-collapsed .workspace{width:calc(100% - 88px);max-width:calc(100vw - 88px);margin-left:88px}.sidebar-collapsed .brand{justify-content:center}.sidebar-collapsed .brand-copy,.sidebar-collapsed .sidebar-footer{width:0;min-width:0;opacity:0;overflow:hidden;pointer-events:none}.sidebar-collapsed .sidebar-footer{display:none}.sidebar-collapsed .sidebar-collapse{position:absolute;right:8px;top:72px;width:32px;min-height:32px}.sidebar-collapsed .sidebar nav{margin-top:54px}.sidebar-collapsed .sidebar nav button{position:relative;justify-content:center;padding:0}.sidebar-collapsed .sidebar nav button .nav-label{position:absolute;left:calc(100% + 12px);top:50%;z-index:30;width:max-content;max-width:220px;min-height:34px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;color:var(--fg);background:var(--card);box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translateY(-50%) translateX(-4px)}.sidebar-collapsed .sidebar nav button:focus-visible .nav-label,.sidebar-collapsed .sidebar nav button:hover .nav-label{opacity:1;transform:translateY(-50%) translateX(0)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.topbar h1{margin:4px 0 0;font-size:clamp(28px,4vw,42px);line-height:1.05}.eyebrow{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.topbar-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.ai-actions button,.import-form button,.install-prompt,.topbar-actions button{padding:0 14px;color:white;background:var(--primary)}.topbar-actions select{min-width:108px;padding:0 12px;color:var(--fg);background:var(--card);border-color:var(--border)}.icon-button{width:44px;padding:0}.install-prompt,.kpi-grid{margin-bottom:14px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kpi-card,.panel,.portfolio-card{border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:var(--shadow)}.kpi-card{display:flex;align-items:center;gap:14px;min-height:118px;padding:18px}.kpi-icon{display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;border-radius:14px;color:var(--primary);background:var(--primary-soft)}.data-note,.holding-mini span,.holding-row span,.kpi-card span,.metric span,.portfolio-card span,.suggestion-row span{color:var(--muted);font-size:13px}.kpi-card strong{display:block;margin-top:4px;font-size:25px}.kpi-card em{display:block;color:var(--muted);font-size:12px;font-style:normal;font-weight:700}.text-action{display:inline-flex;align-items:center;gap:5px;min-height:28px;margin-top:8px;padding:0;border:0;color:var(--primary);background:transparent;font-size:12px;font-weight:800}.good .kpi-icon,.positive{color:var(--success)}.bad .kpi-icon,.negative{color:var(--danger)}.warn .kpi-icon{color:var(--warning)}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.panel{min-width:0;padding:18px}.panel.wide{grid-column:1/-1}.panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.panel h2{margin:0;font-size:18px}.holdings-list,.legend-list,.preview-table,.stack,.suggestion-list{display:grid;gap:10px}.holding-mini,.holding-row,.legend-row,.preview-table div,.suggestion-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--border);border-radius:12px;background:var(--card-soft);padding:12px}.legend-row i{width:12px;height:12px;border-radius:4px}.holding-mini{grid-template-columns:minmax(0,1fr) auto auto}.holding-row{width:100%;grid-template-columns:minmax(160px,1.6fr) 90px 90px 130px 130px 70px;color:var(--fg);text-align:left}.holding-row:hover,.portfolio-card:hover,.suggestion-row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 45%,var(--border))}.cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.portfolio-card{padding:18px}.ai-card h3,.portfolio-card h2,.portfolio-card h3{margin:10px 0 6px}.ai-card p,.offline-card p,.portfolio-card p{color:var(--muted);line-height:1.55}.settings-page{display:grid;gap:16px}.settings-card,.settings-hero{border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:var(--shadow)}.settings-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:22px}.settings-hero h2{margin:5px 0 8px;font-size:clamp(26px,4vw,38px);line-height:1.05}.schedule-list em,.setting-toggle em,.settings-card p,.settings-hero p,.settings-result em,.settings-result span,.source-card em{color:var(--muted);line-height:1.45}.settings-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.settings-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 14px;border:1px solid var(--border);border-radius:8px;color:var(--fg);background:var(--card-soft);font-weight:850}.settings-actions button:first-child{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));color:white;background:var(--primary)}.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.settings-card{display:grid;align-content:start;gap:14px;min-width:0;padding:18px}.settings-card.large{grid-column:span 2}.settings-card-header{display:flex;align-items:flex-start;gap:12px}.settings-card-header>svg{flex:0 0 auto;color:var(--primary)}.settings-card h3{margin:0 0 4px;font-size:18px}.settings-card p{margin:0}.setting-toggle{display:flex;width:100%;align-items:flex-start;gap:10px;min-height:64px;padding:12px;border:1px solid var(--border);border-radius:8px;color:var(--fg);background:var(--card-soft);text-align:left}.setting-toggle svg{flex:0 0 auto;color:var(--muted)}.setting-toggle.on svg{color:var(--success)}.setting-toggle em,.setting-toggle strong{display:block}.setting-toggle em{margin-top:3px;font-size:13px;font-style:normal}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-grid,.schedule-list,.source-grid{display:grid;gap:10px}.schedule-list div,.settings-result,.source-card{display:grid;gap:4px;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--card-soft)}.schedule-list span,.source-card span{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:12px;font-weight:850;text-transform:uppercase}.schedule-list strong,.settings-result strong,.source-card strong{color:var(--fg)}.schedule-list em,.settings-result em,.source-card em{font-size:13px;font-style:normal}.status-dot{width:8px;height:8px;border-radius:999px;background:var(--muted)}.status-dot.on{background:var(--success);box-shadow:0 0 0 4px color-mix(in srgb,var(--success) 16%,transparent)}.primary-card{grid-column:span 2}.ai-actions,.inline-actions,.tag-row{display:flex;flex-wrap:wrap;gap:8px}.inline-actions a,.inline-actions button,.pill,.tag-row span{min-height:34px;padding:7px 10px;border-radius:999px;background:var(--card-soft);color:var(--muted);font-weight:800}.pill.buy{color:#075985;background:#e0f2fe}.pill.sell{color:#991b1b;background:#fee2e2}.pill.hold{color:#166534;background:#dcfce7}.metric-grid,.quality-summary,.reconciliation-summary,.waterfall{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quality-summary{grid-template-columns:repeat(4,minmax(0,1fr));margin:12px 0}.metric{min-height:92px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--card-soft)}.metric strong{display:block;margin-top:8px;font-size:21px}.suggestion-row{grid-template-columns:minmax(0,1fr) auto auto auto}.import-form{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;margin-bottom:14px}.import-form input{min-height:46px;padding:10px;border:1px dashed var(--border);border-radius:12px;color:var(--fg);background:var(--card-soft)}.import-form a{padding:0 14px;border-color:var(--border);color:var(--primary);background:var(--primary-soft)}.preview-box h3{margin-bottom:4px}.preview-table div{grid-template-columns:60px minmax(0,1fr) minmax(0,1.4fr)}.preview-table .bad{border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.preview-table .good{border-color:color-mix(in srgb,var(--success) 35%,var(--border))}.empty-state,.skeleton-card{display:grid;min-height:180px;place-items:center;padding:20px;border:1px dashed var(--border);border-radius:14px;color:var(--muted);background:var(--card-soft);text-align:center}.skeleton-card{background:linear-gradient(90deg,var(--card-soft),color-mix(in srgb,var(--card) 60%,var(--primary-soft)),var(--card-soft));background-size:220% 100%;animation:shimmer 1.3s infinite}@keyframes shimmer{to{background-position:-220% 0}}.instrument-header{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:14px;align-items:center}.instrument-header button,.instrument-header select{min-height:44px;border:1px solid var(--border);border-radius:12px;color:var(--fg);background:var(--card-soft)}.instrument-header button{color:white;background:var(--primary)}.ai-card,.ai-output{display:grid;gap:10px}.trust-warning{display:flex;gap:10px;align-items:flex-start;margin-bottom:12px;border:1px solid color-mix(in srgb,var(--warning) 42%,var(--border));border-radius:14px;padding:12px;color:var(--warning);background:color-mix(in srgb,var(--warning) 13%,var(--card))}.trust-warning span{display:block;margin-top:3px;color:var(--muted);font-size:13px}.trust-grid{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(0,1.35fr);gap:14px}.explain-card,.quality-card{border:1px solid var(--border);border-radius:14px;padding:14px;background:var(--card-soft)}.quality-card{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px}.quality-ring{display:grid;width:104px;height:104px;place-items:center;align-content:center;border-radius:999px;background:radial-gradient(circle closest-side,var(--card-soft) 72%,transparent 73%),conic-gradient(var(--success) calc(var(--score) * 1%),color-mix(in srgb,var(--border) 80%,transparent) 0)}.quality-ring strong{font-size:27px}.explain-card p,.issue em,.issue span,.mismatch em,.mismatch span,.quality-card p,.quality-ring span{color:var(--muted);font-size:13px}.audit-list,.component-list,.fx-list,.issue-list,.manual-form,.mismatch-list{display:grid;gap:9px}.audit-list div,.component-list div,.issue,.mismatch{display:grid;gap:5px;border:1px solid var(--border);border-radius:12px;padding:10px;background:var(--card)}.issue.critical,.issue.high,.mismatch.broken,.mismatch.needs_review{border-color:color-mix(in srgb,var(--danger) 42%,var(--border))}.issue.medium,.mismatch.minor_difference{border-color:color-mix(in srgb,var(--warning) 42%,var(--border))}.component-list{grid-template-columns:repeat(2,minmax(0,1fr));margin:12px 0}.component-list strong{display:block;font-size:18px}.fx-list{margin-top:10px}.fx-list span{color:var(--muted);font-size:12px}.audit-list div{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.audit-list em{grid-column:2/-1;color:var(--muted);font-size:12px;font-style:normal}.mismatch{grid-template-columns:minmax(0,1fr) auto auto auto}.mismatch em{grid-column:1/-1;font-style:normal}.manual-form input,.manual-form select,.manual-form textarea{min-height:44px;border:1px solid var(--border);border-radius:12px;padding:10px 12px;color:var(--fg);background:var(--card-soft)}.manual-form button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;color:#fff;background:var(--primary)}.result-box{max-height:260px;overflow:auto;border:1px solid var(--border);border-radius:12px;padding:12px;color:var(--muted);background:var(--card-soft)}.ai-output ul{margin:8px 0 0;padding-left:18px;color:var(--muted)}.terminal{display:grid;gap:14px;margin-top:14px}.terminal.fullscreen{position:fixed;inset:12px;z-index:50;overflow:auto;padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--card);box-shadow:var(--shadow)}.terminal-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start}.terminal-header h2{margin:3px 0;font-size:clamp(28px,4vw,44px)}.quote-tape{display:grid;min-width:220px;gap:3px;justify-items:end;color:var(--muted)}.quote-tape strong{color:var(--fg);font-size:26px}.quote-tape em{font-style:normal;font-size:12px}.segmented,.terminal-controls{display:flex;flex-wrap:wrap;gap:7px}.terminal-controls{align-items:center}.compact-controls{flex-wrap:nowrap;max-width:100%;padding-bottom:4px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.compact-controls .segmented{flex:0 0 auto;flex-wrap:nowrap}.compact-controls button,.compact-controls select{flex:0 0 auto;white-space:nowrap}.segmented button,.terminal-controls button,.terminal-controls select{min-height:38px;border:1px solid var(--border);border-radius:10px;padding:0 10px;color:var(--fg);background:var(--card-soft);font-size:13px;font-weight:800}.segmented button.active,.terminal-controls button.active{border-color:color-mix(in srgb,var(--primary) 42%,var(--border));color:var(--primary);background:var(--primary-soft)}.chart-indicator-legend{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--muted);font-size:12px;font-weight:750}.chart-indicator-legend span{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:5px 8px;border:1px solid var(--border);border-radius:999px;background:var(--card-soft)}.chart-indicator-legend i{width:16px;height:2px;border-radius:999px;background:var(--muted)}.chart-indicator-legend .sma-20{background:#5aa9ff}.chart-indicator-legend .sma-50{background:#8b5cf6}.chart-indicator-legend .level{background:repeating-linear-gradient(90deg,#94a3b8 0 5px,transparent 5px 8px)}.terminal-chart{min-height:420px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--card) 88%,var(--card-soft));overflow:hidden}.terminal.fullscreen .terminal-chart{min-height:68vh}.terminal-tooltip{min-height:30px;color:var(--muted);font-size:13px}.terminal-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.terminal-fact{min-height:70px;border:1px solid var(--border);border-radius:12px;padding:11px;background:var(--card-soft)}.terminal-fact span{display:block;color:var(--muted);font-size:12px}.terminal-fact strong{display:block;margin-top:6px;overflow-wrap:anywhere}.terminal-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.terminal-empty,.terminal-error,.terminal-skeleton,.terminal-tabs article{border:1px solid var(--border);border-radius:12px;padding:14px;background:var(--card-soft)}.terminal-tabs h3{margin:0 0 7px}.terminal-empty,.terminal-error,.terminal-skeleton,.terminal-tabs p{color:var(--muted)}.terminal-error{border-color:color-mix(in srgb,var(--danger) 40%,var(--border))}.terminal-error button{margin-left:10px;border:0;border-radius:10px;color:white;background:var(--danger)}.echart{min-height:310px;width:100%}.echart.compact{min-height:250px}.bottom-nav{display:none}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,rgba(37,99,235,.12),transparent 36%),linear-gradient(225deg,rgba(20,184,166,.14),transparent 34%),var(--bg)}.login-card{width:min(100%,430px);background:var(--card);border:1px solid var(--border);border-radius:18px;padding:26px;box-shadow:var(--shadow)}.login-card h1{margin:12px 0 8px}.login-card p,.login-card small{color:var(--muted)}.login-card form{display:grid;gap:14px;margin:22px 0 14px}.login-card label{display:grid;gap:7px;font-size:.88rem;font-weight:700}.login-card input{min-height:46px;border:1px solid var(--border);border-radius:12px;padding:0 13px;color:var(--fg);background:var(--card-soft)}.login-card button{min-height:46px;border:0;border-radius:12px;color:#fff;background:var(--primary);font-weight:800}.offline-page{display:grid;min-height:100vh;place-items:center;padding:24px}.offline-card{max-width:480px;border:1px solid var(--border);border-radius:18px;background:var(--card);box-shadow:var(--shadow);padding:24px}.offline-card a{display:inline-flex;align-items:center;margin-top:12px;color:var(--primary);font-weight:800}.standalone-page{min-height:100vh;padding:28px;background:var(--bg)}.standalone-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;max-width:1440px;margin:0 auto 18px}.standalone-header h1{margin:4px 0 8px;font-size:clamp(30px,4vw,48px);line-height:1.04}.standalone-header p{max-width:720px;margin:0;color:var(--muted);line-height:1.55}.standalone-page>.dashboard-grid,.standalone-page>.kpi-grid,.standalone-page>.panel,.standalone-page>.provider-grid{max-width:1440px;margin-right:auto;margin-left:auto}.chart-first-grid{margin-bottom:14px}.sticky-compact{position:sticky;top:0;z-index:10;padding:12px 0;background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.soft-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--border);border-radius:12px;padding:0 14px;color:var(--primary);background:var(--card);font-weight:800}.asset-grid,.provider-grid{display:grid;gap:12px}.asset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-card,.provider-card{border:1px solid var(--border);border-radius:14px;padding:14px;background:var(--card-soft);transition:transform .14s ease,border-color .14s ease}.asset-card:hover,.provider-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 42%,var(--border))}.asset-card span,.asset-card strong,.provider-card em,.provider-card span,.provider-card strong{display:block}.asset-card span,.provider-card em,.provider-card p,.provider-card span{color:var(--muted);font-size:13px}.provider-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.provider-card{display:grid;gap:9px}.provider-card b{width:fit-content;border-radius:999px;padding:4px 8px;color:var(--muted);background:var(--card);font-size:12px}.provider-card.ok b{color:var(--success)}.provider-card.failed b,.provider-card.rate_limited b{color:var(--danger)}.provider-card p{display:flex;align-items:center;gap:6px;margin:0}.crypto-terminal .terminal-chart{min-height:500px}.compact-controls select{min-height:38px;border:1px solid var(--border);border-radius:10px;padding:0 10px;color:var(--fg);background:var(--card-soft);font-size:13px;font-weight:800}.asset-board,.instrument-detail{display:grid;gap:16px}.asset-board-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.asset-board-top h2{margin:4px 0 0;color:var(--fg);font-size:28px;line-height:1.08}.add-asset-button,.reference-card-header button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;border:0;border-radius:8px;padding:0 18px;color:#44495d;background:#ffffff;box-shadow:var(--shadow);font-weight:800}.asset-panel,.instrument-hero-card,.reference-card{border:1px solid var(--border);border-radius:8px;background:var(--card);box-shadow:var(--shadow)}.asset-panel{min-width:0;max-width:100%;overflow:hidden;padding:28px}.asset-toolbar{display:grid;grid-template-columns:auto auto minmax(220px,1fr) auto auto;gap:12px;align-items:center;margin-bottom:22px}.asset-mode-switch{display:inline-flex;min-height:48px;padding:4px;border-radius:8px;background:var(--card-soft)}.asset-mode-switch button,.asset-tabs button,.instrument-tabs-detail button{border:0;color:var(--muted);background:transparent;font-weight:800}.asset-mode-switch button{min-height:40px;border-radius:7px;padding:0 16px}.asset-mode-switch button.active{color:#4a5065;background:var(--card);box-shadow:0 8px 22px rgba(38,46,72,.055)}.asset-checkbox{display:inline-flex;align-items:center;gap:9px;min-height:44px;color:#575d72;font-weight:700}.asset-checkbox input{width:18px;height:18px;accent-color:var(--primary)}.asset-search{display:flex;align-items:center;justify-self:end;width:min(100%,320px);min-height:48px;gap:10px;border-radius:8px;padding:0 14px;color:var(--muted);background:var(--card-soft)}.asset-search input{width:100%;border:0;outline:0;color:var(--fg);background:transparent;font-size:16px}.asset-search input::placeholder{color:#b4b9c9}.soft-icon-button{display:inline-grid;width:48px;min-height:48px;place-items:center;border:0;border-radius:8px;color:#697086;background:var(--card-soft)}.asset-tabs,.instrument-tabs-detail{display:flex;flex-wrap:wrap;align-items:center;gap:0;margin-bottom:22px}.asset-tabs button,.instrument-tabs-detail button{position:relative;min-height:38px;padding:0 14px 0 0;font-size:16px}.asset-tabs button+button:before,.instrument-tabs-detail button+button:before{content:"|";margin-right:12px;color:#d9deea}.asset-tabs button.active,.instrument-tabs-detail button.active{color:#44495d}.asset-summary-strip,.portfolio-position-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.asset-summary-strip{margin-bottom:18px}.asset-summary{min-width:0;border:1px solid var(--border);border-radius:8px;padding:12px 14px;background:#fbfcfe}.about-meta,.asset-summary span,.dividend-event-list span,.score-line span,.transactions-head{color:var(--muted);font-size:13px;font-weight:700}.asset-summary strong{display:block;margin-top:5px;color:var(--fg);font-size:18px}.asset-table{overflow-x:auto;border-top:1px solid var(--border)}.asset-row,.asset-table-head{display:grid;grid-template-columns:30px minmax(240px,2fr) 80px 145px 165px 135px 130px 155px 120px 46px;min-width:1220px;align-items:center;column-gap:14px}.asset-table-head{min-height:58px;color:#b0b5c5;font-size:14px;font-weight:800}.asset-table-head button{display:inline-flex;align-items:center;min-height:36px;border:0;color:var(--primary);background:transparent;font-weight:900}.asset-row{width:100%;min-height:86px;border:0;border-top:1px solid var(--border);padding:0;color:var(--fg);background:transparent;text-align:left;transition:background .14s ease}.asset-row:hover{background:#fbfdff}.asset-select-dot{width:20px;height:20px;border-radius:7px;background:#eef1f7}.asset-title-cell{display:flex;align-items:center;min-width:0;gap:12px}.asset-number em,.asset-number strong,.asset-title-cell em,.asset-title-cell strong,.transaction-row em,.transaction-row strong{display:block}.asset-title-cell strong{overflow:hidden;color:#454a60;font-size:16px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.asset-number em,.asset-title-cell em,.transaction-row em{color:var(--muted);font-style:normal;font-weight:650}.asset-logo{display:grid;width:48px;height:48px;flex:0 0 auto;place-items:center;border:1px solid var(--border);border-radius:8px;color:#4b556c;background:linear-gradient(180deg,#ffffff,#f2f5fa);font-size:12px;font-weight:900}.asset-logo.stock{color:#1f2937;background:#ffffff}.asset-logo.bond,.asset-logo.etf{color:#3f5f89;background:#f4f8ff}.asset-logo.crypto{color:#6d5308;background:#fff7df}.asset-number{color:#4a5065;font-size:15px;font-weight:800}.asset-number strong{font-size:16px}.asset-number.muted strong{color:var(--muted)}.delta.positive,.positive{color:var(--success)}.delta.negative,.negative{color:var(--danger)}.row-more{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;color:var(--muted);background:var(--card-soft)}.instrument-detail{min-width:0;max-width:1440px}.instrument-hero-card,.reference-card{min-width:0;max-width:100%;overflow:hidden;padding:24px}.instrument-picker-line,.reference-card-header{display:flex;align-items:center;justify-content:space-between;gap:14px}.instrument-picker-line{margin-bottom:18px;color:var(--muted);font-weight:750}.instrument-picker-line select{min-height:42px;border:1px solid var(--border);border-radius:8px;padding:0 12px;color:var(--fg);background:var(--card-soft);font-weight:800}.instrument-hero-main{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center}.instrument-identity{display:flex;align-items:center;gap:14px;min-width:0}.instrument-identity .asset-logo{width:58px;height:58px;font-size:13px}.instrument-identity h2,.reference-card h3{margin:0;color:#303548}.instrument-identity h2{font-size:22px}.about-card p,.instrument-identity p,.reference-card-header span{margin:5px 0 0;color:var(--muted);line-height:1.55}.instrument-price-block{display:grid;justify-items:end;gap:5px}.instrument-price-block strong{color:#34394e;font-size:30px}.instrument-price-block span{font-weight:850}.instrument-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.instrument-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:0;border-radius:8px;padding:0 12px;color:#555b70;background:var(--card-soft);font-weight:850}.instrument-quick-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px}.instrument-tabs-detail{margin:18px 0 0}.instrument-layout-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;min-width:0;max-width:100%;gap:16px}.chart-card{min-width:0}.terminal.chart-only{display:grid;min-width:0;max-width:100%;overflow:hidden;gap:12px}.terminal.chart-only .terminal-chart{min-height:430px;border-color:transparent;background:linear-gradient(180deg,#ffffff,#f7fbff)}.terminal.chart-only .terminal-tooltip{margin-top:-4px}.score-card{display:grid;align-content:start;gap:12px}.score-line{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:30px}.score-line strong{color:#4a5065}.about-card,.portfolio-position-card,.transactions-card{display:grid;gap:16px}.transactions-table{overflow-x:auto}.transaction-row,.transactions-head{display:grid;grid-template-columns:minmax(150px,1.5fr) 110px 90px 120px 140px 130px;min-width:840px;align-items:center;gap:14px}.transactions-head{min-height:42px}.transaction-row,.transactions-head{border-bottom:1px solid var(--border)}.transaction-row{min-height:62px;color:#50566b;font-weight:750}.about-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:8px}.about-meta b{display:block;margin-top:5px;color:#454a60}.dividend-event-list{display:grid;gap:10px}.dividend-event-list>div:not(.empty-state){display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:52px;border-bottom:1px solid var(--border)}.ai-actions button,.asset-card,.audit-list div,.compact-controls select,.component-list div,.explain-card,.holding-mini,.holding-row,.import-form a,.import-form button,.inline-actions a,.inline-actions button,.install-prompt,.issue,.kpi-card,.legend-row,.login-card,.manual-form input,.manual-form select,.manual-form textarea,.metric,.mismatch,.offline-card,.panel,.portfolio-card,.preview-table div,.provider-card,.quality-card,.result-box,.segmented button,.sidebar button,.soft-link,.suggestion-row,.terminal-chart,.terminal-controls button,.terminal-controls select,.terminal-empty,.terminal-error,.terminal-fact,.terminal-skeleton,.terminal-tabs article,.topbar-actions button,.topbar-actions select{border-radius:8px}@media (max-width:1180px){.cards-grid,.kpi-grid,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-card.large{grid-column:span 2}.asset-toolbar{grid-template-columns:1fr 1fr}.asset-search{justify-self:stretch;width:100%}.instrument-layout-grid{grid-template-columns:1fr}.holding-row{grid-template-columns:minmax(170px,1fr) repeat(3,auto);overflow-x:auto}}@media (max-width:820px){.sidebar{position:static;width:100%;min-height:auto;padding:18px 18px 12px}.sidebar nav{display:none}.sidebar-footer{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-collapse{display:none}.sidebar-collapsed .sidebar{width:100%;padding:18px 18px 12px}.sidebar-collapsed .brand{justify-content:flex-start}.sidebar-collapsed .brand-copy,.sidebar-collapsed .sidebar-footer{width:auto;opacity:1;overflow:visible;pointer-events:auto}.sidebar-collapsed .sidebar-footer{display:grid}.sidebar-collapsed .sidebar nav{display:none}.workspace{padding:18px 18px calc(94px + env(safe-area-inset-bottom))}.sidebar-collapsed .workspace,.workspace{width:100%;max-width:100%;margin-left:0}.import-form,.instrument-header,.settings-hero,.standalone-header,.terminal-header,.topbar,.topbar-actions{align-items:stretch;grid-template-columns:1fr;flex-direction:column;display:flex}.cards-grid,.component-list,.dashboard-grid,.kpi-grid,.metric-grid,.module-grid,.quality-card,.quality-summary,.settings-grid,.terminal-facts,.terminal-tabs,.trust-grid,.waterfall{grid-template-columns:1fr}.settings-card.large{grid-column:auto}.settings-actions{justify-content:stretch}.settings-actions button{width:100%}.asset-board-top,.asset-toolbar,.instrument-hero-main,.instrument-picker-line,.reference-card-header{align-items:stretch;grid-template-columns:1fr;flex-direction:column;display:flex}.asset-panel,.instrument-hero-card,.reference-card{padding:18px}.about-meta,.asset-summary-strip,.instrument-quick-metrics,.portfolio-position-grid{grid-template-columns:1fr}.instrument-price-block{justify-items:start}.instrument-actions{justify-content:flex-start}.asset-tabs,.instrument-tabs-detail{overflow-x:auto;flex-wrap:nowrap;white-space:nowrap}.terminal-chart{min-height:330px}.crypto-terminal .terminal-chart{min-height:360px}.crypto-page .kpi-grid{margin-top:14px}.quote-tape{justify-items:start}.panel.wide,.primary-card{grid-column:auto}.standalone-page{padding:18px}.asset-grid,.holding-row,.mismatch,.provider-grid,.suggestion-row{grid-template-columns:1fr}.bottom-nav{position:fixed;right:12px;bottom:max(12px,env(safe-area-inset-bottom));left:12px;z-index:20;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:8px;border:1px solid var(--border);border-radius:20px;background:color-mix(in srgb,var(--card) 92%,transparent);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.bottom-nav button{display:grid;min-height:54px;place-items:center;border:0;border-radius:14px;color:var(--muted);background:transparent;font-size:10px}.bottom-nav button.active{color:var(--primary);background:var(--primary-soft)}}