:root{--color-bg: #f4f6f9;--color-surface-1: #ffffff;--color-surface-2: #f8fafc;--color-surface-3: #eef2f6;--color-bg-accent: #e2e8f0;--color-primary: #0f4c5c;--color-primary-soft: #e0f0f4;--color-text: #0f172a;--color-text-muted: #64748b;--color-text-subtle: #94a3b8;--color-positive: #059669;--color-negative: #dc2626;--color-positive-soft: color-mix(in srgb, #059669 10%, var(--color-surface-1));--color-negative-soft: color-mix(in srgb, #dc2626 10%, var(--color-surface-1));--color-positive-muted: #047857;--color-negative-muted: #b91c1c;--color-flat: #64748b;--color-dividend: #2563eb;--color-dividend-soft: color-mix(in srgb, #2563eb 10%, var(--color-surface-1));--color-warn: #d97706;--color-warn-soft: color-mix(in srgb, #d97706 12%, var(--color-surface-1));--color-section-portfolio: color-mix(in srgb, var(--color-primary) 6%, var(--color-surface-1));--color-section-research: color-mix(in srgb, #6366f1 5%, var(--color-surface-1));--color-section-tools: color-mix(in srgb, var(--color-warn) 4%, var(--color-surface-1));--pnl-tier-1: .55;--pnl-tier-2: .75;--pnl-tier-3: 1;--color-chart-grid: #e2e8f0;--color-chart-primary: #0f4c5c;--color-chart-secondary: #64748b;--color-chart-tertiary: #78716c;--color-chart-warn: #dc2626;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-8: 48px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: 0 4px 12px rgba(15, 23, 42, .08);--shadow-pop: 0 10px 28px rgba(15, 23, 42, .12);--font: "Public Sans", "Segoe UI", sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--sidebar-width: 220px;--sidebar-width-collapsed: 64px;--topbar-height: 56px;--shell-h: 0px;--content-max: none;--bg: var(--color-bg);--bg-accent: var(--color-bg-accent);--surface: var(--color-surface-2);--surface-solid: var(--color-surface-1);--ink: var(--color-text);--muted: var(--color-text-muted);--line: #cbd5e1;--accent: var(--color-primary);--accent-soft: var(--color-primary-soft);--gain: var(--color-positive);--loss: var(--color-negative);--chart-grid: var(--color-chart-grid);--chart-primary: var(--color-chart-primary);--chart-secondary: var(--color-chart-secondary);--chart-tertiary: var(--color-chart-tertiary);--chart-warn: var(--color-chart-warn);--shadow: var(--shadow-sm);--pop-shadow: var(--shadow-pop);--radius: var(--radius-md);font-family:var(--font);color:var(--color-text);background:linear-gradient(180deg,#ffffff 0%,var(--color-bg) 48%);line-height:1.5;font-feature-settings:"ss01" 1,"kern" 1}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;min-height:100dvh;overflow-x:clip;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}#root{min-height:100vh}h1,h2,h3{font-family:var(--font);font-weight:700;letter-spacing:-.03em;margin:0}button,select,input{font:inherit}.muted{color:var(--muted);font-size:.92rem}.app-layout{display:flex;min-height:100vh;min-height:100dvh;width:100%}.app-sidebar{flex:0 0 var(--sidebar-width);width:var(--sidebar-width);position:sticky;top:0;align-self:flex-start;height:100vh;height:100dvh;display:flex;flex-direction:column;padding:var(--space-4) var(--space-3);background:var(--color-surface-1);border-right:1px solid var(--line);z-index:60;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:auto;transition:flex-basis .22s ease,width .22s ease,padding .22s ease}.app-sidebar.collapsed{flex-basis:var(--sidebar-width-collapsed);width:var(--sidebar-width-collapsed);padding:var(--space-3) var(--space-2)}.app-sidebar-brand{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-2) var(--space-4);border:none;background:none;cursor:pointer;text-align:left;width:100%;border-radius:var(--radius-sm);min-width:0}.app-sidebar.collapsed .app-sidebar-brand{justify-content:center;padding:var(--space-2) 0 var(--space-4)}.app-sidebar-brand:hover{background:var(--color-surface-2)}.app-sidebar-brand .brand-logo{width:40px;height:40px;flex-shrink:0}.app-sidebar.collapsed .app-sidebar-brand .brand-logo{width:32px;height:32px}.app-sidebar-brand h1{font-size:1.1rem;margin:0;color:var(--color-text)}.app-sidebar-brand .brand-kicker{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-subtle);margin:0}.app-sidebar.collapsed .brand-text{display:none}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:var(--space-4);min-height:0}.sidebar-group-title{font-size:.72rem;font-weight:600;color:var(--color-text-subtle);margin:0 0 var(--space-2) var(--space-2);padding-left:var(--space-2);letter-spacing:.02em;white-space:nowrap;border-left:2px solid var(--color-primary-soft)}.sidebar-group--portfolio .sidebar-group-title{border-left-color:color-mix(in srgb,var(--color-primary) 35%,transparent)}.sidebar-group--research .sidebar-group-title{border-left-color:color-mix(in srgb,#6366f1 35%,transparent)}.sidebar-group--tools .sidebar-group-title{border-left-color:color-mix(in srgb,var(--color-warn) 35%,transparent)}.sidebar-group--help .sidebar-group-title{border-left-color:var(--color-surface-3)}.app-sidebar.collapsed .sidebar-group-title{height:1px;margin:var(--space-2) var(--space-2);padding:0;overflow:hidden;color:transparent;background:var(--line);border-radius:1px}.sidebar-link{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:.5rem var(--space-3);border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);font-size:.88rem;font-weight:500;cursor:pointer;text-align:left;transition:background .12s,color .12s;white-space:nowrap}.app-sidebar.collapsed .sidebar-link{justify-content:center;padding:.55rem;gap:0}.app-sidebar.collapsed .sidebar-link-label,.app-sidebar.collapsed .sidebar-link-count{display:none}.sidebar-link:hover{background:var(--color-surface-2);color:var(--color-text)}.sidebar-link.active{background:var(--color-primary-soft);color:var(--color-primary);font-weight:600;box-shadow:inset 3px 0 0 var(--accent)}.sidebar-link-icon{flex-shrink:0;width:1.1rem;height:1.1rem;opacity:.75}.sidebar-link.active .sidebar-link-icon{opacity:1}.sidebar-link-count{margin-left:auto;font-size:.72rem;font-weight:600;padding:.1rem .4rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--color-surface-1));color:var(--accent)}.sidebar-link.active .sidebar-link-count{background:color-mix(in srgb,var(--color-primary) 15%,white);color:var(--color-primary)}.sidebar-collapse-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;margin-top:auto;padding:.55rem var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--color-surface-1);color:var(--color-text-muted);font-size:.82rem;font-weight:500;cursor:pointer}.sidebar-collapse-btn:hover{background:var(--color-surface-2);color:var(--color-text)}.app-sidebar.collapsed .sidebar-collapse-btn{padding:.55rem}.app-sidebar.collapsed .sidebar-collapse-btn-label{display:none}.sidebar-collapse-btn svg{flex-shrink:0;width:1.1rem;height:1.1rem}.app-main-column{flex:1;min-width:0;display:flex;flex-direction:column}.app-topbar{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"toggle search actions";align-items:center;column-gap:var(--space-3);row-gap:var(--space-2);padding:var(--space-3) var(--space-5);background:color-mix(in srgb,var(--color-surface-1) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.app-topbar.has-filters{grid-template-columns:auto auto minmax(0,1fr) auto;grid-template-areas:"toggle search filters actions"}.app-topbar .sidebar-toggle-btn{grid-area:toggle}.app-topbar .topbar-search{grid-area:search}.app-topbar-filters{grid-area:filters;min-width:0}.app-topbar-actions{grid-area:actions;display:flex;align-items:center;gap:var(--space-2);margin-left:0}@media(min-width:901px){.app-topbar.has-filters:has(.filter-strip){grid-template-areas:"toggle search filters actions" ". strip strip strip"}}.app-main-content{flex:1;padding:var(--space-5) var(--space-6);width:100%;max-width:none}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;z-index:55}.sidebar-backdrop.open{display:block}.sidebar-toggle-btn{display:none;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;min-height:2.35rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--color-surface-1);cursor:pointer;flex-shrink:0;color:var(--color-text-muted)}.sidebar-toggle-btn:hover{background:var(--color-surface-2);color:var(--color-text)}.sidebar-toggle-icon{width:1.35rem;height:1.35rem;display:block}@media(max-width:900px){.sidebar-toggle-btn{display:inline-flex}.app-layout{flex-direction:column}.app-sidebar{position:fixed;left:0;top:0;transform:translate(-100%);transition:transform .22s ease;box-shadow:var(--shadow-md);width:min(var(--sidebar-width),88vw);flex-basis:auto}.app-sidebar.collapsed{width:min(var(--sidebar-width),88vw);padding:var(--space-4) var(--space-3)}.app-sidebar.collapsed .brand-text,.app-sidebar.collapsed .sidebar-link-label,.app-sidebar.collapsed .sidebar-link-count,.app-sidebar.collapsed .sidebar-collapse-btn-label{display:initial}.app-sidebar.collapsed .sidebar-group-title{height:auto;margin:0 0 var(--space-2) var(--space-2);color:var(--color-text-subtle);background:none}.app-sidebar.collapsed .sidebar-link{justify-content:flex-start;padding:.5rem var(--space-3);gap:var(--space-3)}.app-sidebar.collapsed .app-sidebar-brand{justify-content:flex-start}.app-sidebar .sidebar-collapse-btn{display:none}.app-sidebar.open{transform:translate(0)}.app-main-content{padding:var(--space-4)}}@media(prefers-reduced-motion:reduce){.app-sidebar{transition:none}.section{animation:none!important}}.section-page{display:flex;flex-direction:column;gap:var(--space-5)}.section-page-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-3);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin:calc(-1 * var(--space-2)) calc(-1 * var(--space-2)) 0}.section-page-head.section-page--tone-portfolio,.section-head.section-tone-portfolio{background:linear-gradient(135deg,var(--color-section-portfolio) 0%,var(--color-surface-1) 72%);border-bottom:1px solid color-mix(in srgb,var(--color-primary) 12%,var(--line))}.section-page-head.section-page--tone-research,.section-head.section-tone-research{background:linear-gradient(135deg,var(--color-section-research) 0%,var(--color-surface-1) 72%);border-bottom:1px solid color-mix(in srgb,#6366f1 12%,var(--line))}.section-page-head.section-page--tone-tools,.section-head.section-tone-tools{background:linear-gradient(135deg,var(--color-section-tools) 0%,var(--color-surface-1) 72%);border-bottom:1px solid color-mix(in srgb,var(--color-warn) 10%,var(--line))}.section.section-tone-portfolio>.section-head,.section-head.section-tone-portfolio{background:linear-gradient(135deg,var(--color-section-portfolio) 0%,var(--color-surface-1) 72%);border-bottom:1px solid color-mix(in srgb,var(--color-primary) 12%,var(--line))}.section.section-tone-tools>.section-head,.section-head.section-tone-tools{background:linear-gradient(135deg,var(--color-section-tools) 0%,var(--color-surface-1) 72%);border-bottom:1px solid color-mix(in srgb,var(--color-warn) 10%,var(--line))}.section.section-tone-portfolio>.section-head,.section.section-tone-tools>.section-head{border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4)}.section-head-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;min-width:0}.section-head-title-row h2{margin:0;min-width:0}.section-page-head h2{font-size:1.35rem;font-weight:700;letter-spacing:-.02em;margin:0}.section-page-head p{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:.92rem}.kpi-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:var(--color-surface-1);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.kpi-card{background:transparent;border:none;border-radius:0;box-shadow:none;padding:.65rem 1rem;min-width:0;position:relative}.kpi-card+.kpi-card{border-left:1px solid var(--line)}.kpi-card-label{font-size:.7rem;font-weight:500;color:var(--color-text-subtle);margin:0 0 .2rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-card-value{font-family:var(--mono);font-size:1.05rem;font-weight:600;margin:0;letter-spacing:-.02em;line-height:1.2;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpi-card-value .pnl-value-primary{padding:0;background:transparent;border-radius:0}.kpi-card-value .pnl-value-primary.pnl-cell-primary-gain,.kpi-card-value .pnl-value-primary.pnl-cell-primary-loss{background:transparent}.kpi-card-sub{font-size:.68rem;color:var(--color-text-subtle);margin-top:.2rem;display:flex;flex-direction:column;gap:.05rem;line-height:1.25}.kpi-sim-line,.kpi-sum-line{display:block;font-family:var(--mono);font-variant-numeric:tabular-nums;line-height:1.3}.kpi-sum-line{font-weight:600;color:var(--color-text-muted)}@media(max-width:720px){.kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-card:nth-child(odd){border-left:none}.kpi-card:nth-child(n+3){border-top:1px solid var(--line)}}@media(max-width:420px){.kpi-row{grid-template-columns:1fr}.kpi-card+.kpi-card{border-left:none;border-top:1px solid var(--line)}}.table-wrap,.scroll-pane,.ai-prompts-stack,.ai-strategy-results,.ai-prompt-builtin-text,.allocation-legend,.ai-chat-thread,.ai-chat-layout .ai-chat-thread,.market-news-list,.news-feed,.news-cards,.watchlist-rows,.multi-select-panel,.multi-select-panel-portal{overscroll-behavior-y:auto}.table-wrap,.multi-select-panel,.multi-select-panel-portal{overscroll-behavior-x:contain}.insight-banner{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface-1);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.insight-banner-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}.insight-banner-kicker{margin:0}.insight-banner-empty{margin:0;font-size:.9rem}.insight-banner-body{display:flex;flex-direction:column;gap:var(--space-2)}.insight-banner-headline{margin:0;font-size:1rem;font-weight:650;line-height:1.4}.insight-banner-bullets{margin:0;padding-left:1.25rem}.insight-banner-bullets li{margin-bottom:var(--space-2);line-height:1.45;color:var(--color-text-muted);font-size:.9rem}.insight-banner-bullets li:last-child{margin-bottom:0}.insight-banner-meta{margin:0}.insight-banner-text{flex:1;min-width:12rem;margin:0;font-size:.9rem}.insight-banner-text strong{font-weight:600}.prose-card{background:var(--color-surface-1);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);box-shadow:var(--shadow-sm)}.prose-card-headline{font-size:1rem;font-weight:650;margin:0 0 var(--space-3);line-height:1.4}.prose-card ul{margin:0 0 var(--space-3);padding-left:1.25rem}.prose-card li{margin-bottom:var(--space-2);line-height:1.45;color:var(--color-text-muted)}.prose-card-meta{font-size:.78rem;color:var(--color-text-subtle);margin:0}.chart-shell{background:var(--color-surface-1);border:1px solid var(--line);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:var(--shadow-sm)}.chart-shell-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.chart-shell-head h3{font-size:.95rem;font-weight:650;margin:0}.chart-shell-controls{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.table-preset-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.table-preset-btn{padding:.25rem .65rem;font-size:.78rem;font-weight:500;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--color-surface-1);color:var(--color-text-muted);cursor:pointer}.table-preset-btn.active{background:var(--color-primary-soft);border-color:color-mix(in srgb,var(--color-primary) 35%,var(--line));color:var(--color-primary)}.table-wrap.sticky-first-col th:first-child,.table-wrap.sticky-first-col td:first-child{position:sticky;left:0;z-index:2;background:var(--color-surface-1);box-shadow:2px 0 4px #0f172a0a}.pnl-dot{display:inline-block;width:.45rem;height:.45rem;border-radius:50%;margin-right:.35rem;vertical-align:middle;background:var(--color-text-subtle)}.pnl-dot.pnl-p1,.pnl-dot.pnl-p2,.pnl-dot.pnl-p3{background:var(--color-positive)}.pnl-dot.pnl-n1,.pnl-dot.pnl-n2,.pnl-dot.pnl-n3{background:var(--color-negative)}.ai-history-list{display:grid;gap:var(--space-3)}.asset-detail-page .section-page-head{align-items:center;gap:var(--space-2)}.asset-detail-page .section-page-head p{margin-top:.15rem;font-size:.82rem}.asset-detail-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.45rem;min-width:0}.asset-detail-actions .quote-refresh-bar{margin:0;gap:.4rem}.asset-detail-actions .quote-refresh-asof{font-size:.72rem;max-width:12rem}.asset-detail-actions .quote-refresh-btn{height:1.85rem;min-height:1.85rem;padding:0 .55rem;font-size:.75rem}.watchlist-star-btn-sm{display:inline-flex;align-items:center;gap:.3rem;height:1.85rem;min-height:1.85rem;padding:0 .55rem;font-size:.75rem;border-radius:var(--radius-sm)}.asset-detail-layout{display:flex;flex-direction:column;gap:var(--space-4)}.asset-detail-metrics{margin-top:0}.asset-detail-subtabs.subtabs{margin:0;padding:2px;gap:1px;border-radius:var(--radius-sm);align-self:flex-start}.asset-detail-subtabs .subtab{padding:.28rem .55rem;font-size:.78rem;font-weight:550;line-height:1.2;border-radius:calc(var(--radius-sm) - 1px)}.asset-detail-content-tabs.analysis-mode-toggle{margin:0;align-self:flex-start}.asset-detail-page .asset-compare-toolbar{margin-bottom:.45rem;padding:.4rem .5rem;gap:.3rem .45rem}.asset-detail-page .asset-compare-toolbar>label{font-size:.68rem}.asset-detail-page .asset-compare-toolbar .price-history-asset-pick{max-width:14rem;gap:.3rem}.asset-detail-page .asset-compare-toolbar .ticker-suggest{min-width:0;max-width:11rem;flex:1 1 auto}.asset-detail-page .asset-compare-toolbar .ticker-suggest input{height:1.75rem;min-height:1.75rem;font-size:.78rem;padding:0 .45rem}.asset-detail-page .asset-compare-toolbar .primary-btn{height:1.75rem;min-height:1.75rem;padding:0 .55rem;font-size:.75rem}.profile-asset-pick{max-width:28rem;margin-bottom:var(--space-4)}@media(max-width:900px){.asset-detail-page .section-page-head{align-items:flex-start}.asset-detail-actions{width:100%;justify-content:flex-start}.asset-detail-actions .quote-refresh-asof{max-width:none}.asset-detail-page .asset-compare-toolbar .price-history-asset-pick{max-width:none;width:100%}}.watchlist-stack{display:flex;flex-direction:column;gap:var(--space-5);align-items:stretch}.watchlist-stack .watchlist-split-list{max-width:44rem;width:100%}.watchlist-chart-panel{width:100%;min-width:0;padding-top:var(--space-3);border-top:1px solid var(--line);display:flex;flex-direction:column;gap:var(--space-4)}.watchlist-asset-metrics{margin-top:0}.watchlist-split{display:flex;flex-direction:column;gap:var(--space-5)}@media(max-width:860px){.watchlist-stack .watchlist-split-list{max-width:none}}.app{max-width:1280px;margin:0 auto;padding:0 1.25rem 3.5rem}.app-shell{position:relative;z-index:50;margin:0 -1.25rem;padding:.85rem 1.25rem 0;background:color-mix(in srgb,var(--bg) 82%,#fff);border-bottom:1px solid var(--line)}.topbar{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:.75rem 1.25rem;padding-bottom:.75rem}.topbar-account{flex:0 0 auto;margin-left:auto;display:flex;align-items:center;justify-content:flex-end}.impersonate-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem .85rem;margin:0 0 .75rem;padding:.45rem .75rem;border-radius:8px;background:color-mix(in srgb,var(--chart-tertiary) 16%,var(--surface-solid));border:1px solid color-mix(in srgb,var(--chart-tertiary) 40%,var(--line));font-size:.85rem}.impersonate-banner p{margin:0}.user-menu-trigger.impersonating{border-color:color-mix(in srgb,var(--chart-tertiary) 55%,var(--line));background:color-mix(in srgb,var(--chart-tertiary) 12%,var(--surface-solid))}.brand{display:flex;align-items:center;gap:.7rem;min-width:0;margin:0;padding:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;border-radius:8px}.brand:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:3px}.brand-logo{width:3.35rem;height:3.35rem;border-radius:9px;flex-shrink:0;object-fit:contain;background:var(--surface-solid);border:1px solid var(--line)}.brand-text{min-width:0}.brand-kicker{margin:0 0 .15rem;color:var(--accent);font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.topbar h1{font-size:clamp(1.65rem,2.8vw,2.1rem);letter-spacing:-.04em;line-height:1.05}.toolbar{display:flex;flex-wrap:nowrap;gap:.45rem .55rem;align-items:flex-end;padding:.45rem .55rem;margin-bottom:.35rem;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius);overflow:visible}.toolbar-group{display:flex;flex-direction:column;gap:.15rem;flex:1 1 0;min-width:0}.toolbar label{color:var(--muted);font-size:.62rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.fx-rate-input{width:5.5rem;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:.4rem .55rem;color:inherit;font-family:var(--mono);font-size:.88rem;font-variant-numeric:tabular-nums}.fx-rate-input:focus{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-color:var(--accent)}.fx-rate-reset{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:6px;padding:.35rem .5rem;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.fx-rate-reset:hover{border-color:var(--accent);color:var(--accent)}.fx-rates-panel{margin-top:.35rem}.fx-rates-hint{margin:0 0 .85rem;max-width:40rem;font-size:.88rem;line-height:1.45}.fx-rates-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.65rem;font-size:.88rem;color:var(--muted)}.fx-rates-table{max-width:32rem}.fx-rates-table .fx-rate-input{width:7rem}.fx-pair{margin-left:.15rem;font-size:.78rem;font-weight:500}.fx-row-manual td{background:color-mix(in srgb,var(--accent) 6%,transparent)}.app-main{padding-top:1.25rem}.multi-select{position:relative;width:100%;min-width:0}.multi-select-trigger{display:inline-flex;align-items:center;gap:.35rem;width:100%;min-width:0;max-width:none;height:2rem;box-sizing:border-box;border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:0 .5rem;color:inherit;cursor:pointer;text-align:left;font-size:.82rem;transition:border-color .12s ease}.multi-select-trigger:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.multi-select-trigger:disabled{opacity:.55;cursor:not-allowed}.multi-select-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.multi-select-title{color:var(--muted);font-weight:600}.multi-select-title:after{content:" · ";font-weight:400;color:var(--muted)}.multi-select-value{color:var(--ink)}.multi-select-caret{color:var(--muted);font-size:.75rem}.multi-select-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:60;min-width:14rem;max-width:min(22rem,90vw);max-height:18rem;overflow:auto;border:1px solid var(--line);background:var(--surface-solid);border-radius:var(--radius);box-shadow:var(--pop-shadow);padding:.35rem}.multi-select-panel-portal{position:fixed;top:0;left:0;z-index:80;max-width:min(22rem,calc(100vw - 1rem));max-height:min(18rem,50vh);overflow:auto;padding:0 0 .35rem}.multi-select-search{position:sticky;top:0;z-index:1;padding:.35rem .35rem .3rem;background:var(--surface-solid);border-bottom:1px solid var(--line)}.multi-select-search-input{width:100%;box-sizing:border-box;height:1.85rem;border:1px solid var(--line);border-radius:6px;padding:0 .5rem;font-size:.85rem;background:var(--surface);color:inherit}.multi-select-search-input:focus{outline:none;border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.multi-select-panel-portal>.multi-select-option,.multi-select-panel-portal>.multi-select-divider,.multi-select-panel-portal>.multi-select-empty{margin-left:.35rem;margin-right:.35rem}.multi-select-empty{margin:.35rem;padding:.45rem .5rem;font-size:.85rem}.multi-select-option{display:flex;align-items:flex-start;gap:.5rem;padding:.4rem .5rem;border-radius:6px;cursor:pointer;font-size:.92rem}.multi-select-option:hover{background:var(--accent-soft)}.multi-select-option input{margin-top:.15rem;flex-shrink:0}.multi-select-divider{height:1px;background:var(--line);margin:.25rem .35rem}.filter-strip{display:flex;flex-wrap:wrap;gap:.35rem;padding:.35rem 0 .45rem}.filter-chip{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--accent);background:var(--accent-soft);color:var(--accent);border-radius:6px;padding:.28rem .55rem;cursor:pointer;font-weight:600;font-size:.8rem}.filter-chip span{font-size:1rem;line-height:1}.filter-chip.clear{border-style:dashed;background:transparent}.app-nav{position:relative}.app-nav-burger{display:none}.tabs{display:flex;flex-wrap:wrap;gap:0;margin:0;padding:0;border-bottom:none}.tab{display:inline-flex;align-items:center;gap:.4rem;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--muted);margin-bottom:0;padding:.7rem .95rem;cursor:pointer;font-weight:500;font-size:.92rem;transition:color .15s ease,border-color .15s ease}.tab:hover{color:var(--ink)}.tab.active{color:var(--ink);border-color:var(--accent);font-weight:600}.tab-count{display:inline-flex;min-width:1.25rem;justify-content:center;padding:.05rem .35rem;border-radius:4px;background:var(--bg-accent);color:var(--muted);font-family:var(--mono);font-size:.68rem;font-weight:600}.tab.active .tab-count,.subtab.active .tab-count{background:var(--accent-soft);color:var(--accent)}.subtabs{display:inline-flex;gap:0;margin:0 0 1rem;border:1px solid var(--line);border-radius:8px;background:var(--surface-solid);overflow:hidden}.subtab{display:inline-flex;align-items:center;gap:.4rem;border:none;background:transparent;color:var(--muted);padding:.5rem .9rem;cursor:pointer;font-weight:500;font-size:.88rem;border-right:1px solid var(--line);transition:background .12s ease,color .12s ease}.subtab:last-child{border-right:none}.subtab:hover{color:var(--ink);background:color-mix(in srgb,var(--accent-soft) 40%,transparent)}.subtab.active{color:var(--ink);background:var(--accent-soft);font-weight:600}.summary{margin-bottom:1.5rem}.summary-card{background:transparent;border:none;border-radius:0;overflow:visible;box-shadow:none}.sim-vs-real{margin:0 0 1.25rem;padding:1rem 1.15rem 1.1rem;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 7%,var(--surface-solid)),var(--surface-solid) 55%)}.sim-vs-real-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem 1rem;margin-bottom:.55rem}.sim-vs-real-head h3{margin:0;font-size:.95rem;font-weight:700;letter-spacing:.01em}.sim-vs-real-hint{margin:0;font-size:.78rem}.sim-vs-real-headline{margin:0 0 .85rem;font-size:1.05rem;font-weight:650;line-height:1.35;max-width:42rem}.sim-vs-real-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:.65rem 1rem}.sim-vs-real-metric{min-width:0}.sim-vs-real-label{display:block;margin-bottom:.2rem;font-size:.64rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.sim-vs-real-metric strong{font-family:var(--mono);font-size:1.05rem;font-variant-numeric:tabular-nums}.sim-vs-real-implied{margin:.85rem 0 0;font-size:.82rem;line-height:1.4;max-width:40rem}.summary-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0}.summary-groups{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:.75rem}.summary-group{min-width:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface-solid);box-shadow:var(--shadow)}.summary-group-capital{border-color:color-mix(in srgb,#1f4e79 35%,var(--line));background:linear-gradient(180deg,#e8f0f7 0%,var(--surface-solid) 42%);box-shadow:inset 4px 0 #1f4e79}.summary-group-pnl{border-color:color-mix(in srgb,#8a5a2b 35%,var(--line));background:linear-gradient(180deg,#f7efe4 0%,var(--surface-solid) 42%);box-shadow:inset 4px 0 #8a5a2b}.summary-group-title{margin:0;padding:.55rem 1rem .25rem;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.summary-group-capital .summary-group-title{color:#1f4e79}.summary-group-pnl .summary-group-title{color:#8a5a2b}.summary-stats-2{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-stats-3{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{padding:.75rem 1rem .95rem;border-right:1px solid color-mix(in srgb,var(--line) 85%,transparent);min-width:0}.stat:last-child{border-right:none}.stat-sim-sub{display:block;margin-top:.28rem;font-family:var(--mono);font-size:.7rem;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--muted);line-height:1.2}.stat-sum-sub{display:block;margin-top:.12rem;font-family:var(--mono);font-size:.7rem;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--ink);line-height:1.2}.stat-sim-sub.gain,.stat-sum-sub.gain{color:var(--gain)}.stat-sim-sub.loss,.stat-sum-sub.loss{color:var(--loss)}.stat>span:first-child{display:block;color:var(--muted);font-size:.72rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;margin-bottom:.35rem}.stat strong{display:block;font-family:var(--mono);font-size:1.08rem;font-weight:650;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink)}.stat strong.gain,.gain{color:var(--gain)}.stat strong.loss,.loss{color:var(--loss)}.section{margin-bottom:2rem;animation:section-in .26s ease}@keyframes section-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.section-head-copy{min-width:0;flex:1 1 auto}.section-head-spaced{margin-top:1.75rem}.section-head h2{margin:0;font-size:1.2rem;letter-spacing:-.025em}.section-head p{margin:.15rem 0 0;color:var(--muted);font-size:.9rem}.section-head>p{margin:0}.quote-refresh-bar{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;margin:0;min-width:0;flex:0 1 auto}.quote-refresh-asof{font-size:.78rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:16rem}.quote-refresh-btn{flex-shrink:0}.quote-refresh-icon{display:block;flex-shrink:0}.quote-refresh-btn.is-busy .quote-refresh-icon{animation:quote-refresh-spin .75s linear infinite}@keyframes quote-refresh-spin{to{transform:rotate(360deg)}}.app-filters{position:relative}.app-filters-toggle{display:none}.app-filters-body{display:block}.positions-subtabs-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-bottom:1rem}.positions-subtabs-row .subtabs{margin:0;flex-shrink:0}.positions-subtabs-row .quote-refresh-bar{flex:1 1 auto}@media(max-width:520px){.toolbar{gap:.35rem;padding:.35rem .45rem;margin-bottom:.25rem;flex-direction:column;align-items:stretch}.toolbar-group{flex:none;width:100%}.filter-strip{flex-wrap:wrap;overflow-x:visible;padding-top:.25rem;padding-bottom:.35rem}.filter-chip{white-space:nowrap;flex:0 0 auto}}.table-wrap{overflow:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:stable;max-height:min(70vh,40rem);background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius)}.table-wrap thead th{position:sticky;top:0;z-index:3;box-shadow:0 1px 0 var(--line)}.table-wrap.sticky-first-col thead th:first-child{z-index:4}.table-wrap.table-scroll{max-height:min(70vh,40rem)}.table-wrap.table-wrap--noscroll,.table-wrap.table-wrap--grow{max-height:none;overflow-x:auto;overflow-y:visible;scrollbar-gutter:auto}.table-wrap.table-wrap--noscroll thead th,.table-wrap.table-wrap--grow thead th{position:static;box-shadow:none}.scroll-pane{max-height:min(70vh,40rem);overflow:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:stable}.table-panel{display:flex;flex-direction:column;gap:0}.table-panel>.csv-bar{margin-bottom:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.table-panel>.table-mobile-toolbar{margin:0;padding:.35rem .5rem;border:1px solid var(--line);border-top:none;background:var(--surface-solid)}.table-panel>.bulk-bar{margin:0;border-radius:0;border-left:1px solid var(--line);border-right:1px solid var(--line)}.table-panel>.table-wrap.table-scroll{border-top-left-radius:0;border-top-right-radius:0}.table-mobile-sort,.table-mobile-toolbar,.row-menu-inline{display:none}table{width:100%;border-collapse:collapse;font-size:.84rem}th,td{padding:.38rem .55rem;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}th{font-weight:600;color:var(--muted);font-size:.64rem;text-transform:uppercase;letter-spacing:.06em;background:color-mix(in srgb,var(--bg-accent) 65%,var(--surface-solid))}th.sortable-th{padding:0}.th-sort{display:inline-flex;align-items:center;gap:.25rem;width:100%;margin:0;padding:.38rem .55rem;border:0;background:transparent;color:inherit;font-family:inherit;font-size:.64rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;line-height:1.25;text-align:inherit;cursor:pointer}.th-sort:hover{color:var(--ink)}.th-sort-hint{cursor:help}.th-sort-hint .th-sort-label{border-bottom:1px dotted color-mix(in srgb,var(--muted) 55%,transparent)}.sortable-th.sorted .th-sort{color:var(--accent)}.th-sort-ind{font-size:.64rem;opacity:.45;flex-shrink:0;font-weight:600;letter-spacing:0;text-transform:none}.sortable-th.sorted .th-sort-ind{opacity:.95}th.num .th-sort{justify-content:flex-end}tr:last-child td{border-bottom:none}tbody tr{transition:background .1s ease}tbody tr:hover{background:color-mix(in srgb,var(--accent-soft) 30%,transparent)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}td.num{font-family:var(--mono);font-size:.8rem}.row-active{box-shadow:inset 3px 0 0 var(--accent)}.row-sim{background:color-mix(in srgb,var(--color-surface-3, #eef2f6) 72%,var(--surface-solid))}.row-sim:hover{background:color-mix(in srgb,var(--color-surface-3, #eef2f6) 88%,var(--surface-solid))}.row-muted{opacity:.38}.row-muted:hover{opacity:.72}.row-editing{background:color-mix(in srgb,var(--accent-soft) 70%,#fff)}.row-editing td{vertical-align:middle;white-space:normal;border-bottom-color:transparent}.row-editing-actions{background:color-mix(in srgb,var(--accent-soft) 70%,#fff)}.row-editing-actions td{padding-top:.2rem;padding-bottom:.5rem;border-top:none}.row-edit-input,.row-editing .ticker-suggest input{width:100%;min-width:4.5rem;max-width:9rem;box-sizing:border-box;border:1px solid var(--line);border-radius:6px;background:var(--surface-solid);padding:.28rem .4rem;font:inherit;font-size:.82rem;color:var(--ink)}.row-edit-input.num{max-width:5.5rem;text-align:right;font-variant-numeric:tabular-nums}.row-editing td:first-child .row-edit-input{max-width:6.5rem}.row-editing .ticker-suggest{min-width:6.5rem;max-width:10rem}.row-editing .ticker-suggest input{max-width:none}.row-edit-actions{white-space:nowrap;display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-start;align-items:center}.row-edit-actions .row-edit-save,.row-edit-actions .row-edit-cancel{min-width:5.75rem}.row-edit-save{border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:7px;padding:.28rem .55rem;font-size:.78rem;font-weight:700;cursor:pointer}.row-edit-save:hover:not(:disabled){filter:brightness(1.08)}.row-edit-save:disabled,.row-edit-cancel:disabled{opacity:.55;cursor:not-allowed}.row-edit-cancel{padding:.28rem .5rem;font-size:.78rem}.row-editing-msg td{padding-top:0;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--accent-soft) 55%,#fff)}.row-editing-msg .invest-form-msg{margin:0 0 .45rem}.row-check-cell{width:2rem;text-align:center;vertical-align:middle}.row-check-cell input[type=checkbox]{width:.95rem;height:.95rem;accent-color:var(--accent);cursor:pointer}tbody tr.row-selected{box-shadow:inset 3px 0 color-mix(in srgb,var(--accent) 55%,transparent)}.bulk-bar{display:flex;flex-direction:column;gap:.5rem;margin:0 0 .65rem;padding:.5rem .65rem;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:var(--radius);background:color-mix(in srgb,var(--accent-soft) 45%,var(--surface-solid))}.csv-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .65rem;margin:0 0 .55rem;padding:.35rem .5rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid)}.csv-bar-actions{display:flex;flex-wrap:wrap;gap:.3rem}.csv-bar-actions .ghost-btn{padding:.28rem .55rem;font-size:.8rem;min-height:0}.csv-bar-hint{margin:0;flex:1 1 12rem;color:var(--muted);font-size:.72rem;line-height:1.3}.csv-bar-hint code{font-size:.85em}.csv-bar .invest-form-msg{flex:1 1 100%;margin:0;font-size:.78rem}.bulk-bar-main{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.4rem .55rem}.bulk-bar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem}.bulk-bar-actions .ghost-btn,.bulk-bar-delete{min-height:0;padding:.28rem .55rem;font-size:.78rem}.bulk-bar-count{font-size:.85rem;font-weight:700;color:var(--accent)}.bulk-bar-delete{border:1px solid color-mix(in srgb,var(--loss) 40%,var(--line));background:color-mix(in srgb,var(--loss) 10%,#fff);color:var(--loss);border-radius:7px;padding:.28rem .65rem;font-size:.78rem;font-weight:700;cursor:pointer}.bulk-bar-delete:hover:not(:disabled){background:color-mix(in srgb,var(--loss) 18%,#fff)}.bulk-bar-delete.is-armed,.row-menu-item.danger.is-armed{background:color-mix(in srgb,var(--loss) 22%,#fff);border-color:color-mix(in srgb,var(--loss) 65%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--loss) 28%,transparent);animation:delete-arm-pulse 1.1s ease-in-out infinite}@keyframes delete-arm-pulse{0%,to{box-shadow:0 0 0 2px color-mix(in srgb,var(--loss) 22%,transparent)}50%{box-shadow:0 0 0 3px color-mix(in srgb,var(--loss) 40%,transparent)}}.bulk-bar-delete:disabled{opacity:.55;cursor:not-allowed}.bulk-edit-hint{margin:0;font-size:.78rem;color:var(--muted)}.bulk-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem .75rem;align-items:end}.bulk-edit-grid label{display:flex;flex-direction:column;gap:.2rem;font-size:.72rem;font-weight:600;color:var(--muted)}.bulk-edit-grid input,.bulk-edit-grid select{border:1px solid var(--line);border-radius:6px;background:var(--surface-solid);padding:.32rem .45rem;font:inherit;font-size:.82rem;color:var(--ink)}.bulk-edit-actions{display:flex;align-items:flex-end}.bulk-edit-form .invest-form-msg{margin:.35rem 0 0}tbody tr.pnl-n3{background:color-mix(in srgb,var(--loss) 34%,var(--surface-solid))}tbody tr.pnl-n2{background:color-mix(in srgb,var(--loss) 22%,var(--surface-solid))}tbody tr.pnl-n1{background:color-mix(in srgb,var(--loss) 12%,var(--surface-solid))}tbody tr.pnl-flat{background:var(--surface-solid)}tbody tr.pnl-p1{background:color-mix(in srgb,var(--gain) 12%,var(--surface-solid))}tbody tr.pnl-p2{background:color-mix(in srgb,var(--gain) 22%,var(--surface-solid))}tbody tr.pnl-p3{background:color-mix(in srgb,var(--gain) 34%,var(--surface-solid))}tbody tr.pnl-n3:hover,tbody tr.pnl-n2:hover,tbody tr.pnl-n1:hover,tbody tr.pnl-p1:hover,tbody tr.pnl-p2:hover,tbody tr.pnl-p3:hover{filter:brightness(.985)}tbody tr.pnl-n3.row-active,tbody tr.pnl-n2.row-active,tbody tr.pnl-n1.row-active,tbody tr.pnl-p1.row-active,tbody tr.pnl-p2.row-active,tbody tr.pnl-p3.row-active,tbody tr.pnl-flat.row-active{box-shadow:inset 3px 0 0 var(--accent)}.pnl-cell{border-radius:4px}td.pnl-cell.pnl-n3,td.pnl-cell.pnl-n2,td.pnl-cell.pnl-n1{font-weight:700;background:color-mix(in srgb,var(--loss) 18%,transparent)}td.pnl-cell.pnl-n3{background:color-mix(in srgb,var(--loss) 28%,transparent)}td.pnl-cell.pnl-p1,td.pnl-cell.pnl-p2,td.pnl-cell.pnl-p3{font-weight:700;background:color-mix(in srgb,var(--gain) 18%,transparent)}td.pnl-cell.pnl-p3{background:color-mix(in srgb,var(--gain) 28%,transparent)}.pnl-legend{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;padding:.4rem .55rem;border-bottom:1px solid var(--line);font-size:.75rem;color:var(--muted)}.pnl-legend-label{font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;margin-right:.25rem}.pnl-legend-hint{margin-left:.35rem}.pnl-swatch{display:inline-block;width:1.1rem;height:.7rem;border-radius:3px;border:1px solid var(--line)}.pnl-swatch.pnl-n3{background:color-mix(in srgb,var(--loss) 70%,#fff)}.pnl-swatch.pnl-n2{background:color-mix(in srgb,var(--loss) 48%,#fff)}.pnl-swatch.pnl-n1{background:color-mix(in srgb,var(--loss) 28%,#fff)}.pnl-swatch.pnl-flat{background:var(--surface-solid)}.pnl-swatch.pnl-p1{background:color-mix(in srgb,var(--gain) 28%,#fff)}.pnl-swatch.pnl-p2{background:color-mix(in srgb,var(--gain) 48%,#fff)}.pnl-swatch.pnl-p3{background:color-mix(in srgb,var(--gain) 70%,#fff)}.text-link,.asset-link{border:none;background:none;padding:0;margin:0;color:var(--accent);font:inherit;font-weight:600;cursor:pointer;text-align:left;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px;display:inline-flex;flex-direction:column;align-items:flex-start;gap:.05rem;line-height:1.2}.asset-link-ticker{font-size:.72em;font-weight:500;color:var(--muted);text-decoration:none}.asset-name-stack{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.05rem;line-height:1.2}.text-link:hover,.asset-link:hover,.asset-link.active{color:var(--ink)}.asset-hover-wrap{display:inline}.hint{cursor:help;border-bottom:1px dotted color-mix(in srgb,var(--muted) 70%,transparent)}th .hint,.stat .hint,.subtab .hint{border-bottom-color:color-mix(in srgb,var(--muted) 55%,transparent)}.badge{display:inline-block;padding:.12rem .4rem;border-radius:5px;background:var(--bg-accent);font-size:.75rem;font-weight:600}button.badge.filter-toggle,button.side-badge.filter-toggle{border:1px solid transparent;cursor:pointer;font:inherit;font-size:.75rem;font-weight:600}button.badge.filter-toggle:hover,button.badge.filter-toggle.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}button.side-badge.filter-toggle:hover,button.side-badge.filter-toggle.active{outline:2px solid var(--ink);outline-offset:1px}.side-badge{display:inline-block;padding:.12rem .4rem;border-radius:5px;font-size:.75rem;font-weight:600}.side-badge.buy{background:var(--accent-soft);color:var(--gain)}.side-badge.sell{background:#f5e0e2;color:var(--loss)}.side-badge.dividend{background:color-mix(in srgb,#2d6a4f 16%,#fff);color:#2d6a4f}.price-source{color:var(--accent);font-size:.68rem;font-weight:700}.price-cell{cursor:help;border-bottom:1px dotted color-mix(in srgb,var(--muted) 55%,transparent)}.chg-cell{white-space:nowrap;font-variant-numeric:tabular-nums}.legend-asset{border:none;background:none;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer}.legend-asset.active{font-weight:700;text-decoration:underline}.allocation-chart{display:flex;flex-direction:column;gap:.75rem}.allocation-card-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;margin-bottom:.35rem}.allocation-card-head h3{margin:0}.allocation-tabs{display:inline-flex;gap:.15rem;padding:.12rem;border-radius:6px;background:color-mix(in srgb,var(--bg-accent) 70%,var(--surface-solid))}.allocation-tab{margin:0;padding:.28rem .55rem;border:0;border-radius:4px;background:transparent;color:var(--muted);font:inherit;font-size:.72rem;font-weight:600;letter-spacing:.02em;cursor:pointer}.allocation-tab:hover{color:var(--ink)}.allocation-tab.active{background:var(--surface-solid);color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--line) 80%,transparent)}.legend-asset.static{cursor:default}.allocation-legend{list-style:none;margin:0;padding:0 0 .35rem;display:flex;flex-wrap:wrap;gap:.35rem .65rem;max-height:9.5rem;overflow-y:auto}.allocation-legend .legend-asset{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;font-size:.78rem;line-height:1.2;text-align:left}.allocation-legend-swatch{width:.65rem;height:.65rem;border-radius:2px;flex:0 0 auto}.allocation-legend-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.allocation-legend-pct{color:var(--muted);font-variant-numeric:tabular-nums;flex:0 0 auto}.charts{display:grid;gap:1.25rem}.benchmark-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .85rem;font-size:.88rem}.benchmark-bar label{color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.benchmark-bar select{border:1px solid var(--line);border-radius:6px;background:var(--surface-solid);color:var(--ink);font:inherit;font-size:.88rem;padding:.35rem .55rem;max-width:min(100%,22rem)}.perf-panel{margin:0 0 .85rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid);display:grid;gap:.75rem}.perf-panel-section{display:grid;gap:.4rem}.perf-panel-section+.perf-panel-section{padding-top:.55rem;border-top:1px solid var(--line)}.perf-panel-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .75rem;margin-bottom:0}.perf-panel-head h3{margin:0;font-size:.92rem;letter-spacing:-.02em}.perf-panel-head p{margin:0;font-size:.8rem}.perf-benchmark-bar{margin:0;gap:.35rem .55rem}.perf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:.4rem}.perf-card{display:flex;flex-direction:column;gap:.1rem;padding:.4rem .5rem;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.perf-card--emphasis{border-color:color-mix(in srgb,var(--color-primary) 28%,var(--line))}.perf-label{font-size:.62rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.perf-card strong,.perf-fees-value{font-size:1.02rem;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.2;font-family:var(--mono, ui-monospace, monospace);font-weight:600}.perf-meta{font-size:.68rem;line-height:1.25}.perf-vs{font-size:.72rem;font-weight:600;font-variant-numeric:tabular-nums}.charts-book{display:grid;gap:1rem}.charts-book.sim{padding-top:.35rem;border-top:1px dashed var(--line)}.charts-book-title{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.charts-book.sim .charts-book-title{color:#6a5638}.chart-card{background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1rem .55rem}.chart-card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.55rem 1rem;margin-bottom:.75rem}.chart-card-benchmark{margin:-.35rem 0 .65rem}.chart-card-head h3,.chart-card>h3{font-size:.95rem;font-weight:600;letter-spacing:-.02em;margin:0}.chart-card>h3{margin-bottom:.75rem}.chart-card .chart-note{color:var(--muted);font-size:.85rem;margin:.5rem 0 0}.ai-prompts-hint{margin:0 0 .85rem}.ai-prompts-stack{display:flex;flex-direction:column;gap:.75rem;margin-bottom:.75rem;max-height:min(70vh,40rem);overflow:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:stable;padding-right:.15rem}.ai-strategy-layout{display:flex;flex-direction:column;gap:.4rem}.ai-strategy-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem}.ai-strategy-toolbar .primary-btn,.ai-strategy-toolbar .ghost-btn{min-height:2rem;padding:.35rem .65rem;font-size:.82rem}.ai-strategy-toolbar .ghost-btn.active{border-color:color-mix(in srgb,var(--accent, #15485e) 45%,var(--line));background:color-mix(in srgb,var(--accent, #15485e) 10%,transparent)}.ai-strategy-prompt{margin:0}.ai-strategy-prompt textarea{font-size:.82rem;line-height:1.35;min-height:6.5rem}.ai-strategy-empty{margin:0}.ai-strategy-results-wrap{display:flex;flex-direction:column;gap:.35rem}.ai-strategy-results-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .65rem}.ai-strategy-results-count{font-size:.78rem;font-weight:650;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.ai-strategy-disclaimer{line-height:1.35;font-size:.72rem}.ai-strategy-results{display:flex;flex-direction:column;gap:.3rem;max-height:min(70vh,40rem);overflow:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:stable;padding:.1rem .15rem .65rem 0}.ai-strategy-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-solid, var(--surface));overflow:hidden}.ai-strategy-item[open]{border-color:color-mix(in srgb,var(--accent) 28%,var(--line))}.ai-strategy-item-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .5rem;padding:.38rem .5rem;cursor:pointer;list-style:none}.ai-strategy-item-summary::-webkit-details-marker{display:none}.ai-strategy-item-summary::marker{content:""}.ai-strategy-item-main{display:flex;flex-direction:column;gap:.08rem;min-width:0;flex:1 1 10rem}.ai-strategy-item-title{font-size:.84rem;line-height:1.25}.ai-strategy-item-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .45rem;line-height:1.25}.ai-strategy-item-side{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .45rem;flex-shrink:0}.ai-strategy-badge{color:var(--accent, #15485e);font-weight:600}.ai-strategy-badge.is-held{color:var(--muted, #6b7280);font-weight:500}.ai-strategy-asset-link{border:none;background:transparent;padding:0;margin:0;font:inherit;font-size:.84rem;color:inherit;text-align:left;cursor:pointer;border-radius:4px;line-height:1.25}.ai-strategy-asset-link:hover strong{color:var(--accent, #15485e);text-decoration:underline}.ai-strategy-drawdown{display:flex;flex-direction:column;align-items:flex-end;gap:0;line-height:1.2;font-size:.82rem}.ai-strategy-drawdown .muted{font-size:.68rem}.ai-strategy-item-quick{display:inline-flex;gap:.2rem}.ai-strategy-quick-btn{min-height:1.65rem!important;padding:.15rem .4rem!important;font-size:.72rem!important}.ai-strategy-expand-hint{opacity:.75}.ai-strategy-item[open] .ai-strategy-expand-hint{display:none}.ai-strategy-item-body{padding:.15rem .7rem .95rem;border-top:1px solid var(--line)}.ai-strategy-why{margin:.35rem 0 .4rem;line-height:1.4}.ai-strategy-block-title{font-size:.74rem;font-weight:650;text-transform:uppercase;letter-spacing:.02em;color:var(--muted);margin-bottom:.15rem}.ai-strategy-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.35rem .65rem;margin-bottom:.35rem}.ai-strategy-col ul{margin:0;padding-left:1rem;line-height:1.35}.ai-strategy-horizon{margin:.15rem 0 0;line-height:1.4}.ai-strategy-horizon .ai-strategy-block-title{display:inline;text-transform:none;letter-spacing:0;font-size:inherit;font-weight:600;color:inherit}.ai-action-bar{display:flex;flex-wrap:wrap;gap:.4rem;margin:.55rem 0 .25rem}.ai-action-btn{font-size:.8rem;padding:.2rem .55rem}.ai-suggestion-chips{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.25rem .35rem;margin:0;padding:0;flex:1 1 12rem;min-width:0}.ai-suggestion-chips-label{margin-right:.1rem;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;line-height:1.2;color:var(--muted)}.ai-suggestion-chip{cursor:pointer}.ai-suggestion-chips .filter-chip.ai-suggestion-chip{padding:.1rem .4rem;min-height:0;font-size:.72rem;line-height:1.25;font-weight:500;border-radius:var(--radius-sm)}.positions-subtabs-row .ai-suggestion-chips{margin:0}.ai-trade-draft-banner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.65rem;padding:.45rem .65rem;border-radius:var(--radius);background:var(--color-primary-soft, rgba(15, 76, 92, .08));font-size:.85rem}.sim-btn.preferred{outline:2px solid var(--color-primary, #0f4c5c);outline-offset:1px}.ai-welcome-plan-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin:.35rem 0 .75rem;padding:.5rem .65rem;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface)}.ai-welcome-plan-actions{display:flex;flex-wrap:wrap;gap:.35rem}.ai-plan-save-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.insight-banner--compact .insight-banner-headline{font-size:1rem}.ai-hub-settings{display:flex;flex-direction:column;gap:.75rem}.ai-ticker-hints{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.35rem}.ai-ticker-hint{display:inline-flex;align-items:center;gap:.2rem;font-size:.7rem;padding:.08rem .28rem;border-radius:var(--radius);background:var(--color-primary-soft, rgba(37, 99, 235, .08))}.ai-ticker-hint-btn{font-size:.65rem!important;min-height:1.35rem!important;padding:.05rem .28rem!important;font-weight:550!important}.ai-plan-panel{display:flex;flex-direction:column;gap:.85rem;max-width:42rem}.ai-plan-panel>.muted.small{margin:0}.ai-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.75rem}.ai-plan-field{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;font-size:.9rem}.ai-plan-field>span{color:var(--color-text-muted);font-size:.82rem}.ai-plan-field input,.ai-plan-field select,.ai-plan-field textarea,.ai-plan-target-row input,.ai-plan-target-row select{display:block;width:100%;box-sizing:border-box;font:inherit;padding:.45rem .65rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--color-surface-3);color:inherit;line-height:1.3}.ai-plan-field textarea{resize:vertical;min-height:4.5rem}.ai-plan-field input:focus,.ai-plan-field select:focus,.ai-plan-field textarea:focus,.ai-plan-target-row input:focus,.ai-plan-target-row select:focus{outline:2px solid color-mix(in srgb,var(--color-primary) 45%,transparent);outline-offset:1px}.ai-plan-targets-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem;font-size:.9rem}.ai-plan-target-row{display:grid;grid-template-columns:minmax(7.5rem,9rem) minmax(0,1fr) 5rem auto;gap:.45rem;align-items:center;margin-bottom:.45rem}.ai-plan-target-row>button{justify-self:center;min-width:2rem}.ai-plan-accepted{margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--line)}.ai-plan-accepted h4{margin:0 0 .45rem;font-size:.95rem}@media(max-width:560px){.ai-plan-target-row{grid-template-columns:1fr 5rem auto}.ai-plan-target-row>select{grid-column:1 / -1}.ai-plan-target-row>input:nth-of-type(1){grid-column:1}.ai-plan-target-row>input:nth-of-type(2){grid-column:2}.ai-plan-target-row>button{grid-column:3}}details.ai-prompt-card{padding:.75rem .85rem .85rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}details.ai-prompt-card[open] .ai-prompt-fields{margin-top:.65rem}details.ai-prompt-card>summary{cursor:pointer;list-style:none}details.ai-prompt-card>summary::-webkit-details-marker{display:none}details.ai-prompt-card>summary::marker{content:""}details.ai-prompt-card>summary:after{content:"▸";margin-left:.4rem;color:var(--muted);font-weight:800}details.ai-prompt-card[open]>summary:after{content:"▾"}.ai-prompt-card.is-active{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 6%,var(--surface-solid))}.ai-prompt-card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.45rem .75rem}.ai-prompt-card-head strong{margin-right:auto;font-size:.9rem;font-weight:650}.ai-prompt-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-left:auto}.ai-prompt-card-actions .ghost-btn{min-height:1.9rem;padding:.22rem .55rem;font-size:.78rem}.ai-prompt-active{display:inline-flex;align-items:center;gap:.4rem;margin:0;font-size:.78rem;font-weight:650;color:var(--muted);cursor:pointer}.ai-prompt-active input{accent-color:var(--accent);width:.95rem;height:.95rem;margin:0}.ai-prompt-builtin-text{margin:.45rem 0 0;line-height:1.45;white-space:pre-wrap;max-height:14rem;overflow:auto}.ai-prompt-builtin-details summary{cursor:pointer;font-size:.78rem;font-weight:600;color:var(--muted)}.ai-prompt-fields{display:flex;flex-direction:column;gap:.55rem}.ai-prompt-fields label{display:flex;flex-direction:column;gap:.25rem;color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.03em}.ai-prompt-fields input,.ai-prompt-fields textarea{width:100%;box-sizing:border-box;border:1px solid var(--line);background:var(--surface-solid);border-radius:6px;padding:.4rem .55rem;font:inherit;font-size:.88rem;color:var(--ink)}.ai-prompt-fields textarea{min-height:8.5rem;resize:vertical;line-height:1.45}.ai-prompt-fields input:focus,.ai-prompt-fields textarea:focus{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-color:var(--accent)}.ai-run-prompt{display:flex;flex-direction:column;gap:.25rem;margin:0 0 .75rem;color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.03em;max-width:22rem}.ai-run-prompt select{width:100%;box-sizing:border-box;border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:.38rem .55rem;font-size:.88rem;font-weight:500;color:var(--ink)}.ai-run-prompt select:focus{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-color:var(--accent)}.ai-assist-qa{display:flex;flex-direction:column;gap:.45rem;margin:.65rem 0}.ai-assist-qa label{font-size:.8rem;font-weight:600}.ai-assist-qa textarea{width:100%;min-height:4.5rem;resize:vertical}.ai-chat-card{display:flex;flex-direction:column;gap:.45rem}.ai-chat-head{align-items:flex-start;gap:.5rem}.ai-chat-tools{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem}.ai-chat-tools .ghost-btn{font-size:.72rem;padding:.22rem .45rem}.ai-chat-thread{display:flex;flex-direction:column;gap:.45rem;min-height:16rem;max-height:min(78vh,52rem);overflow-y:auto;padding:.4rem .3rem;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface) 88%,var(--bg, #f4f6f8))}.ai-chat-empty{display:flex;flex-direction:column;gap:.35rem;padding:.2rem .3rem}.ai-chat-bubble{max-width:min(92%,40rem);display:flex;flex-direction:column;gap:.15rem}.ai-chat-bubble-user{align-self:flex-end}.ai-chat-bubble-assistant{align-self:flex-start;width:min(92%,40rem)}.ai-chat-bubble-user .ai-chat-bubble-meta{text-align:right;font-size:.72rem}.ai-chat-user-text{margin:0;padding:.4rem .6rem;border-radius:10px 10px 3px;background:color-mix(in srgb,var(--accent, #15485e) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--accent, #15485e) 28%,var(--line));line-height:1.4;font-size:.88rem;white-space:pre-wrap}.ai-chat-bubble-assistant .prose-card{margin:0;box-shadow:none}.ai-chat-typing{padding:.25rem .4rem}.ai-chat-composer{display:grid;grid-template-columns:1fr auto;gap:.35rem;align-items:end}.ai-chat-composer textarea{width:100%;min-height:2.5rem;max-height:7rem;resize:vertical;border-radius:var(--radius);border:1px solid var(--line);padding:.4rem .55rem;font:inherit;font-size:.88rem;line-height:1.35;background:var(--surface);color:inherit}.ai-chat-composer .primary-btn{min-height:2.25rem;padding:.4rem .75rem;font-size:.84rem;white-space:nowrap}.ai-chat-hint{margin:0;font-size:.72rem}.ai-assist-suggestions{display:flex;flex-wrap:wrap;gap:.35rem}.ai-assist-suggestions .ghost-btn{font-size:.72rem;padding:.25rem .5rem}.ai-assist-result{margin-top:.85rem}.ai-hub-chat-first.section-page{gap:var(--space-3)}.ai-hub-chat-first .section-page-head h2{font-size:1.2rem}.ai-hub-chat-first .section-page-head p{margin-top:.1rem;font-size:.8rem;line-height:1.35}.ai-hub-nav-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.ai-hub-nav-row .subtabs{flex:1 1 auto}.ai-hub-chat-first>.subtabs{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.ai-hub-settings-btn{margin-left:auto;font-size:.78rem}.ai-hub-nav{display:flex;flex-direction:column;gap:.2rem;margin-bottom:.15rem}.ai-hub-nav .subtabs{display:flex;flex-wrap:wrap;gap:.25rem}.ai-hub-tab-hint{margin:0;line-height:1.35;font-size:.75rem}.link-btn{border:none;background:none;padding:0;color:var(--accent, #15485e);font:inherit;font-size:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.link-btn:hover{opacity:.85}.ai-chat-layout-empty{height:auto;min-height:auto;max-height:none}.ai-chat-layout-empty .ai-chat-thread{min-height:0;max-height:none;overflow:visible;border:none;background:transparent;padding:0;scrollbar-gutter:auto}.ai-chat-layout-empty .ai-chat-composer-sticky{border-top:1px solid var(--line);padding-top:.5rem;margin-top:.15rem}.ai-chat-active-label{margin:0;font-size:.75rem}.ai-welcome{display:flex;flex-direction:column;gap:.55rem;padding:0}.ai-welcome-hero{display:flex;flex-direction:column;gap:.15rem}.ai-welcome-title{margin:0;font-size:clamp(1rem,2.2vw,1.15rem);letter-spacing:-.02em;line-height:1.25}.ai-welcome-lead{margin:0;color:var(--muted);line-height:1.35;font-size:.82rem}.ai-welcome-steps-inline{margin:0;font-size:.72rem;line-height:1.3}.ai-welcome-action-row{display:flex;flex-wrap:wrap;align-items:stretch;gap:.35rem}.ai-welcome-portfolio{display:flex;align-items:center;gap:.35rem;flex:1 1 auto;min-width:min(100%,12rem);padding:.35rem .55rem;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--accent) 25%,var(--line));background:color-mix(in srgb,var(--accent) 7%,var(--surface));font-size:.76rem;font-weight:550;line-height:1.3}.ai-welcome-portfolio-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.1rem;height:1.1rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent, #15485e);font-size:.65rem;font-weight:700}.ai-welcome-cta{flex:0 0 auto;width:auto;max-width:none;font-size:.82rem;padding:.4rem .75rem;white-space:nowrap}.ai-welcome-picks{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.45rem .65rem}.ai-welcome-pick-group{display:flex;flex-direction:column;gap:.25rem;min-width:0}.ai-welcome-section-label{margin:0;font-size:.68rem;font-weight:650;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.ai-welcome-starters{display:flex;flex-wrap:wrap;gap:.3rem}.ai-welcome-starter-card{text-align:left;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-solid, var(--surface));padding:.32rem .5rem;cursor:pointer;color:inherit;font-size:.78rem;font-weight:600;line-height:1.25;transition:border-color .12s ease}.ai-welcome-starter-card:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.ai-welcome-topics{display:flex;flex-wrap:wrap;gap:.28rem}.ai-welcome-topic-card{text-align:left;border:1px dashed var(--line);border-radius:var(--radius-sm);background:transparent;padding:.28rem .45rem;cursor:pointer;color:inherit;font-size:.76rem;font-weight:600;line-height:1.25}.ai-welcome-topic-card:hover:not(:disabled){border-style:solid;border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.ai-welcome-footer{margin:0;line-height:1.35;font-size:.72rem}@media(max-width:520px){.ai-welcome-action-row{flex-direction:column}.ai-welcome-cta{width:100%}}.ai-chat-suggestions-compact{opacity:.92}.ai-chat-layout{display:flex;flex-direction:column;gap:.4rem;height:min(90vh,62rem);min-height:32rem;max-height:calc(100dvh - 5.5rem)}.ai-chat-layout-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex:0 0 auto}.ai-chat-session-select{flex:1 1 auto;min-width:0;max-width:100%;height:2rem;padding:0 .55rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-solid, var(--surface));color:var(--ink, var(--color-text));font:inherit;font-size:.82rem;font-weight:550}.ai-chat-session-select:focus{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-color:var(--accent)}.ai-chat-new{flex:0 0 auto}.ai-chat-layout-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem}.ai-chat-layout-title{margin:0;font-size:.95rem}.ai-chat-context{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem .3rem;padding:.3rem .5rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent, #15485e) 5%,var(--surface));font-size:.72rem;line-height:1.3;flex:0 0 auto}.ai-chat-context-main{font-weight:600}.ai-chat-context-sep{color:var(--muted);-webkit-user-select:none;user-select:none}.ai-chat-layout .ai-chat-thread{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:stable}.ai-chat-composer-sticky{position:relative;bottom:auto;z-index:2;flex:0 0 auto;display:flex;flex-direction:column;gap:.3rem;padding-top:.35rem;background:var(--bg, #f4f6f8)}.ai-chat-suggestions{display:flex;flex-wrap:wrap;gap:.25rem}.ai-chat-suggestion-chip{border:1px solid var(--line);background:var(--surface-solid, var(--surface));color:inherit;border-radius:999px;padding:.2rem .5rem;font-size:.7rem;line-height:1.25;cursor:pointer;transition:border-color .12s ease,background .12s ease}.ai-chat-suggestion-chip:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.ai-chat-suggestion-chip:disabled{opacity:.55;cursor:not-allowed}.ai-chat-message-headline{margin:0 0 .25rem;font-size:.86rem;font-weight:650;line-height:1.3}.ai-chat-message-bullets{margin:0 0 .25rem;padding-left:1rem;font-size:.82rem;line-height:1.4}.ai-chat-stream-body{margin:0;font-size:.86rem;line-height:1.45;word-break:break-word}.ai-md{display:flex;flex-direction:column;gap:.35rem}.ai-md-p{margin:0}.ai-md-h{margin:.35rem 0 0;font-weight:700;line-height:1.3}.ai-md-h:first-child{margin-top:0}.ai-md-h1,.ai-md-h2{font-size:.95rem}.ai-md-h3{font-size:.88rem}.ai-md-list{margin:0;padding-left:1.15rem}.ai-md-list li{margin:.12rem 0}.ai-md-hr{border:0;border-top:1px solid var(--line);margin:.35rem 0}.ai-chat-message strong,.ai-chat-stream-body strong,.insight-banner-body strong,.prose-card strong{font-weight:750}.ai-chat-message em,.ai-chat-stream-body em,.insight-banner-body em,.prose-card em{font-style:italic}.ai-chat-message code,.ai-chat-stream-body code{font-size:.9em;padding:.05em .3em;border-radius:4px;background:var(--color-primary-soft, color-mix(in srgb, var(--accent) 12%, transparent))}.ai-chat-stream-phase{margin:0}.ai-strategy-status{flex:1 1 100%;margin:0}.ai-strategy-toolbar:has(.ai-strategy-status){align-items:center}.ai-chat-message .ai-action-bar{gap:.25rem;margin:.4rem 0 .15rem}.ai-chat-message .ai-action-btn{font-size:.68rem;min-height:1.4rem;padding:.08rem .38rem}.ai-chat-bubble-assistant .ai-chat-message{padding:.4rem .55rem;border-radius:10px 10px 10px 3px;border:1px solid var(--line);background:var(--surface-solid, var(--surface))}.ai-advanced-drawer-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;justify-content:flex-end}.ai-advanced-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#0f172a59;cursor:pointer}.ai-advanced-panel{position:relative;z-index:1;width:min(100%,28rem);height:100%;overflow-y:auto;padding:1rem 1rem 1.5rem;background:var(--surface-solid, var(--surface));border-left:1px solid var(--line);box-shadow:-8px 0 24px #0f172a1f}.ai-advanced-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.ai-advanced-head h2{margin:0;font-size:1.05rem}.ai-advanced-sub{margin:0 0 .85rem}.ai-advanced-body{display:flex;flex-direction:column;gap:1.25rem}.asset-detail-ai-chat-link{margin:.65rem 0 0}.asset-detail-ai-chat-link .ghost-btn{font-size:.82rem}.market-news-card{margin-top:1rem}.market-news-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem;max-height:min(70vh,40rem);overflow:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:stable}.market-news-item{padding:.55rem .15rem;border-bottom:1px solid var(--line)}.market-news-item:last-child{border-bottom:none}.market-news-item-top{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .65rem;margin-bottom:.25rem}.market-news-tag{font-size:.68rem;font-weight:650;letter-spacing:.02em;text-transform:uppercase;padding:.12rem .4rem;border-radius:4px;border:1px solid var(--line)}.market-news-tag-market{color:color-mix(in srgb,var(--accent, #15485e) 85%,#000);background:color-mix(in srgb,var(--accent, #15485e) 10%,transparent)}.market-news-tag-portfolio{color:#1f5d3a;background:color-mix(in srgb,#2f9e62 12%,transparent);border-color:color-mix(in srgb,#2f9e62 35%,var(--line))}.market-news-title{display:block;font-weight:600;line-height:1.35;color:inherit;text-decoration:none}a.market-news-title:hover{color:var(--accent, #15485e);text-decoration:underline}.market-news-tickers{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.35rem}.market-news-ticker{font-size:.7rem;padding:.15rem .45rem}.market-news-ticker-plain{font-size:.7rem;color:var(--muted, #6b7280)}.market-news-disclaimer{margin:.65rem 0 0}.news-page{display:flex;flex-direction:column;gap:.75rem}.news-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem .75rem}.news-toolbar-main{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .65rem;min-width:0;flex:1 1 auto}.news-tabs{flex:0 0 auto;margin:0}.news-asset-search{display:flex;flex-wrap:nowrap;align-items:center;gap:.35rem .5rem;flex:0 1 14rem;width:14rem;max-width:min(100%,16rem);min-height:2.35rem}.news-asset-search .ticker-suggest{flex:1 1 auto;min-width:0;width:100%}.news-asset-search .ticker-suggest input{width:100%;box-sizing:border-box;height:2.35rem;min-height:2.35rem;padding:0 .7rem;font-size:.88rem;border-radius:var(--radius-md);line-height:1.2}.news-clear-asset{flex-shrink:0;height:2.35rem;display:inline-flex;align-items:center}.news-asset-filter-label{max-width:16rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.news-toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;margin-left:auto;min-height:2.35rem}.news-asof{max-width:14rem}.news-state,.news-empty{padding:.75rem 0}.news-empty{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.news-feed{display:flex;flex-direction:column;gap:1rem;max-height:min(70vh,40rem);overflow:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:stable;padding-right:.15rem}.news-group{display:flex;flex-direction:column;gap:.4rem;min-width:0}.news-group-head{display:flex;align-items:baseline;gap:.45rem;position:sticky;top:0;z-index:1;padding:.15rem 0 .2rem;background:color-mix(in srgb,var(--bg, #f6f7f9) 92%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.news-group-title{margin:0;font-size:.78rem;font-weight:700;letter-spacing:.02em;color:var(--ink, #1a1f24);line-height:1.3}.news-group-title-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;padding:0;font:inherit;font-size:.78rem;font-weight:700;letter-spacing:.02em;color:var(--ink, #1a1f24);cursor:pointer;text-align:left}.news-group-title-btn:hover{color:var(--accent, #15485e);text-decoration:underline;text-underline-offset:2px}.news-group-count{font-size:.68rem;font-weight:600;font-variant-numeric:tabular-nums}.news-cards{display:flex;flex-direction:column;gap:.45rem}.news-card{padding:.55rem .65rem .55rem .7rem;border:1px solid var(--line);border-left-width:4px;border-radius:8px;background:var(--surface, #fff)}.news-card-sentiment-positive{border-left-color:#2f9e62;background:color-mix(in srgb,#2f9e62 8%,var(--surface, #fff))}.news-card-sentiment-negative{border-left-color:#d64545;background:color-mix(in srgb,#e05252 7%,var(--surface, #fff))}.news-card-sentiment-neutral{border-left-color:color-mix(in srgb,var(--muted, #6b7280) 55%,var(--line));background:color-mix(in srgb,var(--muted, #6b7280) 5%,var(--surface, #fff))}.news-card-sentiment-mixed{border-left-color:#c9920a;background:color-mix(in srgb,#d4a017 8%,var(--surface, #fff))}.news-card-top{display:flex;align-items:center;gap:.4rem .55rem;margin-bottom:.28rem}.news-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem .3rem;flex:1 1 auto;min-width:0;font-size:.72rem;color:var(--muted, #6b7280)}.news-card-sep{opacity:.65}.news-card-title{margin:0 0 .2rem;font-size:.94rem;font-weight:650;line-height:1.38}.news-card-summary{margin:0;font-size:.8rem;line-height:1.42;color:var(--muted, #6b7280);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-sentiment{flex:0 0 auto;font-size:.62rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:.12rem .38rem;border-radius:999px;border:1px solid transparent;white-space:nowrap}.news-sentiment-positive{color:#1f5d3a;background:color-mix(in srgb,#2f9e62 18%,transparent);border-color:color-mix(in srgb,#2f9e62 40%,transparent)}.news-sentiment-negative{color:#8b2e2e;background:color-mix(in srgb,#e05252 16%,transparent);border-color:color-mix(in srgb,#e05252 35%,transparent)}.news-sentiment-neutral{color:var(--muted, #6b7280);background:color-mix(in srgb,var(--muted, #6b7280) 12%,transparent);border-color:color-mix(in srgb,var(--muted, #6b7280) 25%,transparent)}.news-sentiment-mixed{color:#8a5a12;background:color-mix(in srgb,#d4a017 16%,transparent);border-color:color-mix(in srgb,#d4a017 35%,transparent)}.news-card-link{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:6px;font-size:.85rem;font-weight:650;color:var(--accent, #15485e);text-decoration:none;background:color-mix(in srgb,var(--accent, #15485e) 8%,transparent)}.news-card-link:hover{background:color-mix(in srgb,var(--accent, #15485e) 14%,transparent)}.news-card-tickers{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.35rem}.news-ticker-pill{display:inline-flex;align-items:center;padding:.1rem .4rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--line) 90%,transparent);background:color-mix(in srgb,var(--surface, #fff) 70%,transparent);font-size:.67rem;line-height:1.25;cursor:pointer}.news-ticker-pill-static{cursor:default}.news-ticker-label{font-weight:600}.news-card-time-abs{font-size:.68rem;color:color-mix(in srgb,var(--muted, #6b7280) 88%,transparent);white-space:nowrap}.news-fetch-fresh{font-size:.78rem}.news-load-more{display:flex;justify-content:center;padding:.25rem 0 .35rem}.news-disclaimer{margin:.15rem 0 0;font-size:.78rem}@media(max-width:640px){.news-card-top{flex-wrap:wrap}.news-card-meta{order:3;width:100%}}.ai-hub>.subtabs{max-width:100%}.ai-assist-kinds{max-width:100%}@media(max-width:720px){.ai-hub>.subtabs,.ai-assist-kinds{display:flex;width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;overscroll-behavior-x:contain}.ai-hub>.subtabs .subtab,.ai-assist-kinds .subtab{flex:0 0 auto;white-space:nowrap;padding:.42rem .72rem;font-size:.8rem}.ai-hub .chart-card-head{align-items:flex-start}.ai-hub .chart-card-head .muted.small,.ai-hub .chart-card-head p{max-width:100%;overflow-wrap:anywhere}.ai-hub .account-actions .primary-btn{width:100%;justify-content:center}.ai-chat-layout{height:min(86vh,56rem);min-height:24rem;max-height:calc(100dvh - 5rem)}.ai-chat-layout-head{gap:.35rem}.ai-chat-active-label{margin:0;font-size:.75rem}.ai-chat-new{min-height:1.85rem;padding:.2rem .5rem;font-size:.75rem;font-weight:550}.ai-chat-composer{grid-template-columns:1fr}.ai-chat-composer .primary-btn{width:100%;justify-content:center}.ai-chat-thread{max-height:none}.ai-assist-suggestions{flex-direction:column;align-items:stretch}.ai-assist-suggestions .ghost-btn{width:100%;max-width:100%;white-space:normal;text-align:left;line-height:1.35;justify-content:flex-start}.ai-assist-qa textarea{min-height:5.5rem;font-size:16px}.ai-strategy-toolbar{flex-direction:column;align-items:stretch}.ai-strategy-toolbar .primary-btn,.ai-strategy-toolbar .ghost-btn{width:100%;justify-content:center}.ai-strategy-disclaimer{width:100%;line-height:1.35}.ai-strategy-prompt textarea{min-height:8rem;font-size:16px}.ai-strategy-item-summary{flex-direction:column;align-items:stretch}.ai-strategy-item-side{width:100%;justify-content:space-between}.ai-strategy-drawdown{align-items:flex-start}.ai-strategy-cols{grid-template-columns:1fr}.ai-hub .prose-card{padding:.75rem .8rem}.ai-hub .prose-card-headline,.ai-hub .prose-card li{overflow-wrap:anywhere}.ai-prompts-panel .chart-card-head{flex-direction:column;align-items:stretch}.ai-prompts-panel .chart-card-head .primary-btn{width:100%;justify-content:center}.ai-prompt-card-actions{width:100%}.ai-prompt-card-actions .ghost-btn{flex:1 1 auto;justify-content:center}.ai-prompt-fields textarea{font-size:16px;min-height:8rem}.div-cal-ai .chart-card-head{flex-direction:column;align-items:stretch}.div-cal-ai .primary-btn{width:100%;justify-content:center}}.open-positions-perf-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.55rem}.open-positions-perf-head h3{margin-bottom:0}.open-positions-perf-hint{margin:.15rem 0 0;font-size:.78rem;color:var(--muted)}.chart-placeholder{position:relative;min-height:280px;opacity:.9}.chart-placeholder-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;margin:0;padding:1rem;text-align:center;pointer-events:none;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-solid) 35%,transparent),color-mix(in srgb,var(--surface-solid) 72%,transparent))}.open-positions-perf-chart{min-height:0}.open-pos-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem .85rem;list-style:none;margin:.35rem 0 0;padding:0}.open-pos-legend-item{margin:0;transition:opacity .15s ease}.open-pos-legend-item.is-dimmed{opacity:.38}.open-pos-legend-item.is-focus .open-pos-legend-btn{font-weight:700}.open-pos-legend-btn{display:inline-flex;align-items:center;gap:.35rem;border:0;background:transparent;padding:.15rem 0;color:var(--ink);font:inherit;font-size:.78rem}.open-pos-legend-btn:disabled{cursor:default}.open-pos-legend-swatch{width:1.15rem;height:0;border-top:3px solid var(--muted);border-radius:0;background:none;flex-shrink:0}.open-pos-legend-name{font-weight:600;max-width:14rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink)}.open-pos-legend-pct{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:600;color:var(--muted)}.open-pos-end-label{pointer-events:none;paint-order:stroke fill;stroke:var(--surface-solid, #fff);stroke-width:3px;stroke-linejoin:round}.chart-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1rem}@media(max-width:860px){.chart-grid{grid-template-columns:1fr}}.chart-tooltip{background:var(--surface-solid);border:1px solid var(--line);border-radius:8px;padding:.5rem .7rem;font-size:.8rem;box-shadow:var(--pop-shadow);max-width:32rem}.ai-chart-tooltip-note{margin-top:.4rem;padding-top:.35rem;border-top:1px solid var(--line);color:var(--color-text);line-height:1.35}.ai-chart-dot{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;margin-right:.25rem;vertical-align:middle;box-shadow:0 0 0 1px #fff}.ai-chart-dot.ai-milestone{border-radius:0;transform:rotate(45deg) scale(.85);box-shadow:none;border:1.5px solid currentColor;background:var(--surface-solid, #fff)!important}.ai-chart-dot.up{background:var(--color-positive)}.ai-chart-dot.ai-milestone.up{color:#0f766e;border-color:#0f766e}.ai-chart-dot.down{background:var(--color-negative)}.ai-chart-dot.ai-milestone.down{color:#b45309;border-color:#b45309}.ai-chart-dot.trade{background:#c45c26}.ai-chart-dot.ai-milestone.trade{color:#7c3aed;border-color:#7c3aed}.ai-chart-dot.dividend{background:var(--color-dividend)}.ai-chart-dot.ai-milestone.dividend{color:#2563eb;border-color:#2563eb}.ai-chart-dot.news{background:var(--color-primary)}.ai-chart-dot.ai-milestone.news{color:var(--color-primary);border-color:var(--color-primary)}.ai-chart-legend{margin:.35rem 0 .15rem}.ai-chart-caption{margin:.35rem 0 0;padding:.45rem .6rem;font-size:.82rem;line-height:1.4;color:var(--color-text);background:var(--color-primary-soft);border-radius:var(--radius-sm)}.chart-tooltip-label{margin-bottom:.25rem;color:var(--muted)}.open-pos-tip-row{display:flex;align-items:center;gap:.4rem;font-variant-numeric:tabular-nums}.open-pos-tip-swatch{width:.55rem;height:.18rem;border-radius:1px;flex-shrink:0}.open-pos-tip-name{flex:1;font-weight:600}.open-pos-tip-pct{font-family:var(--mono);font-weight:600;color:var(--muted)}.status{padding:.85rem 1rem;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent);margin-bottom:1rem;border:1px solid color-mix(in srgb,var(--accent) 25%,transparent)}.status.error{background:#f8e8e9;color:var(--loss);border-color:color-mix(in srgb,var(--loss) 25%,transparent)}.status-hint{margin:.4rem 0 0;font-size:.88rem;opacity:.9}.invest-form{border:1px solid var(--line);background:var(--surface-solid);border-radius:var(--radius);padding:.7rem .85rem .8rem;margin-bottom:.5rem}.invest-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem .75rem}.invest-form label{display:flex;flex-direction:column;gap:.2rem;color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.03em}.invest-form input,.invest-form select{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:.32rem .5rem;font-size:.88rem;color:var(--ink)}.invest-form input:focus,.invest-form select:focus{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-color:var(--accent)}.invest-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;margin-top:.7rem}.primary-btn,.ghost-btn,.danger-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;box-sizing:border-box;min-height:2.15rem;padding:.38rem .8rem;border-radius:8px;font-size:.88rem;font-weight:600;line-height:1.2;white-space:nowrap;cursor:pointer;text-decoration:none}.primary-btn{border:1px solid var(--accent);background:var(--accent);color:#fff}.primary-btn:hover:not(:disabled){filter:brightness(1.06);text-decoration:none}.primary-btn:disabled,.ghost-btn:disabled{opacity:.65;cursor:wait}.ghost-btn{border:1px solid var(--line);background:var(--surface-solid);color:var(--ink)}.ghost-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);text-decoration:none}.ghost-btn-sm{min-height:2.15rem;padding:.35rem .7rem;font-size:.82rem}.danger-btn{border:1px solid color-mix(in srgb,var(--loss) 45%,var(--line));background:transparent;color:var(--loss)}.danger-btn:hover:not(:disabled){background:#f5e0e2;border-color:var(--loss)}.danger-btn:disabled{opacity:.65;cursor:wait}.invest-form-msg{margin:0;color:var(--accent);font-size:.84rem}.invest-form-msg.error{color:var(--loss)}.row-menu-cell{width:2.5rem;position:relative}.row-menu{position:relative;display:inline-flex;justify-content:flex-end}.row-menu-trigger{border:1px solid transparent;background:transparent;color:var(--muted);border-radius:8px;width:2rem;height:2rem;padding:0;font-size:1.25rem;line-height:1;cursor:pointer}.row-menu-trigger:hover:not(:disabled),.row-menu-trigger[aria-expanded=true]{border-color:var(--line);background:var(--surface);color:var(--ink)}.row-menu-trigger:disabled{opacity:.4;cursor:not-allowed}.row-menu-pop{position:fixed;z-index:50;min-width:8.5rem;padding:.3rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid);box-shadow:var(--pop-shadow);display:flex;flex-direction:column;gap:.15rem}.row-menu-item{border:none;background:transparent;text-align:left;padding:.45rem .65rem;border-radius:7px;font-size:.9rem;font-weight:600;color:var(--ink);cursor:pointer}.row-menu-item:hover{background:var(--accent-soft);color:var(--accent)}.row-menu-item.danger{color:var(--loss)}.row-menu-item.danger:hover{background:#f5e0e2;color:var(--loss)}.asset-chart-pop{position:fixed;z-index:40;width:340px;padding:.65rem .75rem .55rem;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--pop-shadow);pointer-events:auto}.asset-chart-pop-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.35rem;font-size:.88rem}.asset-chart-pop-res{color:var(--muted);font-size:.72rem;font-weight:600}.asset-chart-pop-ranges{margin-bottom:.4rem}.asset-chart-pop-pill.range-pill{padding:.18rem .4rem;font-size:.7rem}.asset-chart-pop-meta{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.25rem;font-size:.85rem}.asset-chart-pop-msg{margin:.5rem 0;color:var(--muted);font-size:.85rem}.asset-chart-pop-foot{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.35rem;padding-top:.35rem;border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.asset-chart-pop-dates{color:var(--muted);font-size:.72rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-chart-pop-detail{flex-shrink:0;margin-left:auto;font-size:.78rem;font-weight:600}.ticker-suggest{position:relative;display:block}.ticker-suggest input{width:100%;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:.45rem .7rem;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticker-suggest-list{position:absolute;z-index:30;left:0;right:0;top:calc(100% + 4px);margin:0;padding:.25rem 0;list-style:none;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--pop-shadow);max-height:16rem;overflow:auto}.ticker-suggest-item{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;border:none;background:transparent;padding:.45rem .75rem;text-align:left;cursor:pointer;color:var(--ink)}.ticker-suggest-item:hover,.ticker-suggest-item.active{background:var(--accent-soft)}.ticker-suggest-sym{font-weight:700;font-size:.88rem}.ticker-suggest-meta{color:var(--muted);font-size:.78rem}.ticker-suggest-empty{padding:.55rem .75rem;color:var(--muted);font-size:.85rem}.invest-form .ticker-suggest{width:100%}.asset-profile{margin:1rem 0 0;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid);overflow:visible}.asset-profile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.4rem}.asset-profile-title{margin:0;font-size:1.1rem;font-weight:700}.asset-profile-sym{margin:.15rem 0 0;color:var(--muted);font-size:.85rem;font-family:var(--mono)}.asset-profile-actions{display:flex;align-items:center;gap:.55rem;flex-shrink:0}.asset-profile-web{color:var(--accent);font-weight:600;font-size:.88rem}.asset-profile-badge{display:inline-block;padding:.12rem .4rem;border-radius:5px;background:var(--accent-soft);color:var(--accent);font-size:.7rem;font-weight:700;letter-spacing:.04em}.asset-profile-summary-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.35rem}.asset-profile-meta,.asset-profile-class,.asset-profile-busy,.asset-profile-error{margin:.2rem 0;color:var(--muted);font-size:.86rem}.asset-profile-class{color:var(--ink);font-weight:600}.asset-profile-error{color:var(--loss)}.asset-profile-summary{margin-top:.55rem}.asset-profile-summary p{margin:0;font-size:.9rem;line-height:1.45;color:var(--ink);white-space:pre-wrap}.asset-profile-more{margin-top:.35rem;border:none;background:none;padding:0;color:var(--accent);font-size:.85rem;font-weight:600;cursor:pointer}.asset-profile-metrics{margin:.85rem 0 .35rem;padding-top:.75rem;border-top:1px solid var(--line)}.asset-profile-metrics-title{margin:0 0 .5rem;font-size:.72rem;font-weight:700;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.asset-profile-metrics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.5rem .75rem;margin:0}.asset-profile-metric{position:relative;min-width:0}.asset-profile-metric dt{margin:0;font-size:.7rem;color:var(--muted)}.asset-profile-metric-label{position:relative;display:inline;border-bottom:1px dotted color-mix(in srgb,var(--muted) 70%,transparent);cursor:help;outline:none}.asset-profile-metric-tip{position:absolute;left:0;top:calc(100% + .35rem);z-index:5;width:max-content;max-width:min(16.5rem,70vw);padding:.45rem .55rem;border:1px solid var(--line);border-radius:8px;background:var(--surface-solid);color:var(--ink);font-size:.75rem;font-weight:500;line-height:1.35;letter-spacing:0;text-transform:none;box-shadow:var(--pop-shadow);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-.15rem);transition:opacity .12s ease,transform .12s ease,visibility .12s}.asset-profile-metric-label:hover,.asset-profile-metric-label:focus-visible{z-index:6;color:var(--ink)}.asset-profile-metric:has(.asset-profile-metric-label:hover),.asset-profile-metric:has(.asset-profile-metric-label:focus-visible){z-index:6}.asset-profile-metric-label:hover .asset-profile-metric-tip,.asset-profile-metric-label:focus-visible .asset-profile-metric-tip{opacity:1;visibility:visible;transform:translateY(0)}.asset-profile-metric dd{margin:.1rem 0 0;font-size:.9rem;font-weight:600;font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink)}.asset-profile.is-placeholder{opacity:.92}.skeleton-line{display:block;height:.72rem;margin:.35rem 0;border-radius:4px;background:linear-gradient(90deg,var(--line) 0%,color-mix(in srgb,var(--surface-solid) 55%,var(--line)) 45%,var(--line) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.25s ease-in-out infinite}.skeleton-line-sm{width:42%;height:.62rem}.skeleton-line-md{width:68%}.skeleton-line-value{width:55%;height:.95rem;margin-top:.25rem}.asset-profile-metric.is-skeleton dt,.asset-profile-metric.is-skeleton dd{margin:0}.asset-profile-metric.is-skeleton .skeleton-line{margin:.2rem 0}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.price-history-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .6rem;margin-bottom:.7rem;padding:.45rem .6rem;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm)}.price-history-toolbar label,.price-history-toolbar-label{color:var(--muted);font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.price-history-toolbar select,.price-history-asset-pick input{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-sm);padding:.3rem .55rem;min-width:9rem;height:1.85rem;min-height:1.85rem;box-sizing:border-box;font-size:.8rem}.price-history-asset-pick{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem}.price-history-asset-pick .ticker-suggest{min-width:11rem;max-width:15rem}.price-history-asset-pick .ticker-suggest input{width:100%;min-width:0;height:1.85rem;min-height:1.85rem;font-size:.8rem;padding:0 .5rem}.price-history-toolbar .primary-btn{height:1.85rem;min-height:1.85rem;padding:0 .65rem;font-size:.78rem}.price-history .asset-profile{margin-bottom:1rem}.price-history-chart-card{margin-top:0}.price-history-chart-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.65rem 1rem;margin-bottom:.35rem}.price-history-chart-head h3{margin:0;flex:1 1 10rem}.price-history-chart-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .65rem;max-width:100%}.price-history-bench-pick{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem}.price-history-bench-pick label{color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.price-history-bench-pick select{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:.35rem .55rem;font:inherit;font-size:.88rem;color:var(--ink);max-width:min(100%,16rem)}.price-history-chart-card .price-history-meta{margin:0 0 .55rem}.range-pills{display:inline-flex;flex-wrap:wrap;gap:.3rem}.range-pill{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:8px;padding:.32rem .55rem;min-height:1.9rem;font-family:var(--mono);font-size:.75rem;font-weight:600;cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.range-pill:hover{border-color:var(--accent);color:var(--accent)}.range-pill.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.price-history-busy{color:var(--accent);font-size:.88rem;font-weight:600}.price-history-meta{margin:0 0 .65rem;color:var(--muted);font-size:.88rem}.price-history .chart-card{border:1px solid var(--line);background:var(--surface-solid);border-radius:var(--radius);padding:1rem 1rem .5rem}.price-history .chart-card h3{margin:0 0 .75rem;font-size:.95rem}.analysis-overlay-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem 1.1rem;margin:-.25rem 0 .75rem;font-size:.82rem;color:var(--muted);line-height:1.35}.analysis-overlay-metric{display:inline-flex;align-items:center;gap:.35rem;min-height:1.5rem}.analysis-overlay-label{color:var(--muted)}.analysis-overlay-bar strong{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:650;color:var(--color-text, var(--fg));line-height:1.2}.analysis-marker-legend{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .65rem;margin:.55rem 0 .35rem;font-size:.78rem}.analysis-marker{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;margin-right:.15rem;vertical-align:middle}.analysis-marker.buy{background:var(--gain, #067a45)}.analysis-marker.sell{background:var(--warn, #c4122a)}.analysis-marker.dividend{background:var(--muted)}.analysis-mode-toggle{display:inline-flex;gap:.2rem;margin:0 0 .85rem;padding:.2rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid)}.analysis-mode-btn{border:none;background:transparent;color:var(--muted);font:inherit;font-size:.88rem;font-weight:550;padding:.35rem .85rem;border-radius:calc(var(--radius) - 2px);cursor:pointer}.analysis-mode-btn:hover{color:var(--ink);background:color-mix(in srgb,var(--line) 55%,transparent)}.analysis-mode-btn.active{color:var(--ink);background:color-mix(in srgb,var(--primary, #15485e) 12%,var(--surface-solid));font-weight:650}.asset-compare-toolbar{margin-bottom:.55rem}.asset-compare-add{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.55rem}.asset-compare-add-label{color:var(--muted);font-size:.7rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.asset-compare-add-row{display:flex;flex-wrap:nowrap;align-items:stretch;gap:.4rem;max-width:28rem}.asset-compare-add-row .ticker-suggest{flex:1 1 auto;min-width:0}.asset-compare-add-row .ticker-suggest input{width:100%;min-width:0;height:2rem;min-height:2rem;box-sizing:border-box;font-size:.85rem;padding:0 .55rem;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-sm)}.asset-compare-add-btn{flex:0 0 auto;height:2rem;min-height:2rem;padding:0 .85rem;font-size:.8rem;white-space:nowrap}.asset-compare-chips{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:0 0 .45rem;padding:0}.asset-compare-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .25rem .2rem .45rem;border:1px solid var(--line);border-radius:999px;background:var(--surface-solid);font-size:.82rem;font-family:var(--mono)}.asset-compare-chip.warn{border-color:color-mix(in srgb,var(--warn, #c4122a) 45%,var(--line))}.asset-compare-chip.muted-chip{opacity:.72}.watchlist-panel{display:flex;flex-direction:column;gap:.15rem}.watchlist-empty-block{display:flex;flex-direction:column;gap:.75rem;max-width:32rem}.watchlist-add-row{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.65rem}.watchlist-add-row>label{font-size:.82rem;font-weight:600;color:var(--muted)}.watchlist-list-head{margin-bottom:.45rem}.watchlist-list-title{display:inline-flex;align-items:center;gap:.4rem;margin:0;font-size:.95rem;font-weight:650}.watchlist-toolbar{margin-bottom:.55rem}.watchlist-empty{margin:.35rem 0 1rem;font-size:.9rem}.watchlist-chart-cap{margin:0 0 .75rem;font-size:.82rem}.watchlist-list-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 .55rem}.watchlist-list-actions .ghost-btn.active{border-color:color-mix(in srgb,var(--accent, #15485e) 45%,var(--line));background:color-mix(in srgb,var(--accent, #15485e) 10%,transparent)}.watchlist-rows{list-style:none;margin:0 0 .35rem;padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid);max-height:min(70vh,40rem);overflow:auto;overscroll-behavior-x:contain;overscroll-behavior-y:auto;scrollbar-gutter:stable}.watchlist-row{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,max-content) 3.15rem auto;align-items:center;column-gap:.45rem;row-gap:.2rem;padding:.45rem .65rem;border-bottom:1px solid var(--line)}.watchlist-row.is-preview{background:color-mix(in srgb,var(--primary, #15485e) 7%,transparent)}.watchlist-row.is-selected:not(.is-preview){background:color-mix(in srgb,var(--line) 55%,transparent)}.watchlist-row:last-child{border-bottom:none}.watchlist-row-select{display:flex;align-items:center;margin:0}.watchlist-row-name{border:none;background:transparent;color:var(--ink);font:inherit;font-size:.92rem;font-weight:600;padding:.15rem .25rem;cursor:pointer;text-align:left;border-radius:4px;display:flex;flex-direction:column;align-items:flex-start;gap:.05rem;line-height:1.2;min-width:0;max-width:100%;overflow:hidden}.watchlist-row-label,.watchlist-row-name .asset-link-ticker{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.watchlist-row-name:hover,.watchlist-row-name.active{background:color-mix(in srgb,var(--primary, #15485e) 10%,transparent)}.watchlist-row-badge{display:flex;align-items:center;justify-content:flex-start;min-height:1.35rem;min-width:0}.watchlist-badge{font-size:.72rem;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.1rem .45rem}.watchlist-row-remove{margin-left:0;border:none;background:transparent;color:var(--muted);font:inherit;font-size:1.15rem;line-height:1;padding:.1rem .35rem;cursor:pointer;border-radius:4px}.watchlist-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:.3rem;flex-shrink:0}.watchlist-alert-btn{font-size:.78rem}.watchlist-alert-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:1rem;background:color-mix(in srgb,var(--ink) 35%,transparent)}.watchlist-alert-dialog{width:min(28rem,100%);max-height:min(90vh,40rem);overflow:auto;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius);padding:.95rem 1.05rem 1.1rem;box-shadow:var(--pop-shadow)}.watchlist-alert-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.watchlist-alert-dialog-head h3{margin:0;font-size:1.05rem}.watchlist-alert-hint{margin:.4rem 0 .75rem;font-size:.82rem}.watchlist-alert-list{list-style:none;margin:0 0 .85rem;padding:0;display:flex;flex-direction:column;gap:.4rem}.watchlist-alert-item{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.35rem .45rem;border:1px solid var(--line);border-radius:8px}.watchlist-alert-item-copy{flex:1 1 8rem;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.86rem}.watchlist-alert-form{display:flex;flex-direction:column;gap:.5rem}.watchlist-alert-form label{display:flex;flex-direction:column;gap:.2rem;font-size:.78rem;font-weight:600;color:var(--muted)}.watchlist-row-remove:hover{color:var(--ink);background:color-mix(in srgb,var(--line) 70%,transparent)}.watchlist-hint{margin:0 0 .85rem;font-size:.82rem}.watchlist-preview{margin-top:.5rem}.watchlist-preview-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.55rem}.watchlist-preview-head h3{margin:0;font-size:.95rem}.watchlist-star-btn{border:1px solid var(--line);background:var(--surface-solid);color:var(--muted);font:inherit;font-size:.88rem;font-weight:550;padding:.4rem .75rem;border-radius:var(--radius);cursor:pointer;white-space:nowrap}.watchlist-star-btn:hover{color:var(--ink);border-color:color-mix(in srgb,var(--primary, #15485e) 35%,var(--line))}.watchlist-star-btn.active{color:var(--ink);border-color:color-mix(in srgb,var(--primary, #15485e) 45%,var(--line));background:color-mix(in srgb,var(--primary, #15485e) 10%,var(--surface-solid));font-weight:650}.asset-compare-chip-swatch{width:.55rem;height:.55rem;border-radius:50%;flex-shrink:0}.asset-compare-chip-name{max-width:10rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-compare-chip-status{font-size:.75rem}.asset-compare-chip-remove{border:none;background:transparent;color:var(--muted);font:inherit;font-size:1.05rem;line-height:1;padding:.05rem .35rem;cursor:pointer;border-radius:999px}.asset-compare-chip-remove:hover{color:var(--ink);background:color-mix(in srgb,var(--line) 70%,transparent)}.asset-compare-hint{margin:0 0 .75rem;font-size:.82rem}.asset-compare>.chart-card+.chart-card{margin-top:.75rem}.asset-compare-chart{width:100%;min-height:360px}.asset-compare-end-label{pointer-events:none;paint-order:stroke fill;stroke:var(--surface-solid, #fff);stroke-width:3px;stroke-linejoin:round}.origin-badge{display:inline-block;padding:.1rem .4rem;border-radius:4px;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.origin-badge.real{background:color-mix(in srgb,var(--accent-soft) 80%,#fff);color:var(--accent)}.origin-badge.sim{background:color-mix(in srgb,var(--tertiary, #8b7355) 22%,#fff);color:#6a5638}.rec-badge{display:inline-flex;align-items:center;font-size:.62rem;font-weight:700;letter-spacing:.01em;padding:.1rem .32rem;border-radius:4px;border:1px solid transparent;white-space:nowrap;line-height:1.15}.rec-badge-compact{font-size:.62rem;padding:.08rem .3rem}.rec-badge-buy{color:var(--color-positive-muted, #1f5d3a);background:var(--color-positive-soft, color-mix(in srgb, #2f9e62 16%, transparent));border-color:color-mix(in srgb,var(--color-positive, #2f9e62) 35%,transparent)}.rec-badge-hold{color:var(--color-flat, #6b7280);background:color-mix(in srgb,var(--color-flat, #6b7280) 12%,transparent);border-color:color-mix(in srgb,var(--color-flat, #6b7280) 28%,transparent)}.rec-badge-sell{color:var(--color-negative-muted, #8b2e2e);background:var(--color-negative-soft, color-mix(in srgb, #e05252 14%, transparent));border-color:color-mix(in srgb,var(--color-negative, #d64545) 35%,transparent)}.rec-badge-empty{color:var(--muted);font-weight:500;border:none;background:transparent;padding:0 .1rem}th.rec-col,td.rec-col{width:1%;white-space:nowrap;text-align:center;padding-left:.35rem;padding-right:.35rem}.sim-trade-panel{margin-top:.5rem;padding:.5rem .65rem;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:var(--radius);background:var(--surface-solid);overflow:visible}.sim-trade-panel-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .5rem;margin-bottom:.4rem}.sim-trade-panel-head strong{font-size:.86rem;font-weight:650;line-height:1.25}.sim-trade-panel-head-actions .ghost-btn{padding:.22rem .5rem;font-size:.78rem;min-height:0}.sim-trade-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.35rem .5rem}.sim-trade-grid label{display:flex;flex-direction:column;gap:.12rem;font-size:.68rem;font-weight:600;color:var(--muted)}.sim-trade-grid input,.sim-trade-grid select,.sim-trade-grid .broker-suggest input{border:1px solid var(--line);border-radius:6px;padding:.26rem .4rem;font-size:.84rem;line-height:1.2;color:var(--ink);background:var(--surface);width:100%;box-sizing:border-box;min-height:2.05rem;height:2.05rem}.sim-trade-grid input[type=date],.sim-trade-grid input[type=time]{min-width:0;-moz-appearance:none;appearance:none;-webkit-appearance:none}.sim-trade-grid input[type=date]::-webkit-datetime-edit,.sim-trade-grid input[type=time]::-webkit-datetime-edit,.sim-trade-grid input[type=date]::-webkit-datetime-edit-fields-wrapper,.sim-trade-grid input[type=time]::-webkit-datetime-edit-fields-wrapper{padding:0}.sim-trade-grid input[type=date]::-webkit-calendar-picker-indicator,.sim-trade-grid input[type=time]::-webkit-calendar-picker-indicator{width:.95rem;height:.95rem;margin:0 0 0 .15rem;padding:0;cursor:pointer}.broker-suggest{position:relative;width:100%}.broker-suggest-list{position:absolute;z-index:40;left:0;right:0;top:calc(100% + 3px);margin:0;padding:.2rem 0;list-style:none;background:var(--surface-solid);border:1px solid var(--line);border-radius:var(--radius-sm, 6px);box-shadow:var(--pop-shadow, 0 10px 28px rgba(15, 23, 42, .12));max-height:11rem;overflow:auto}.broker-suggest-item{display:block;width:100%;border:none;background:transparent;text-align:left;padding:.4rem .55rem;font:inherit;font-size:.84rem;color:var(--ink);cursor:pointer}.broker-suggest-item:hover,.broker-suggest-item.active{background:var(--color-primary-soft, var(--accent-soft));color:var(--color-primary, var(--accent))}.sim-trade-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .45rem;margin-top:.45rem}.sim-trade-panel-head-actions{display:flex;gap:.3rem}.sim-btn{border:1px solid transparent;border-radius:6px;padding:.32rem .7rem;font-size:.82rem;font-weight:700;cursor:pointer}.sim-btn:disabled{opacity:.55;cursor:wait}.sim-btn.buy{background:color-mix(in srgb,var(--gain) 18%,#fff);border-color:color-mix(in srgb,var(--gain) 45%,var(--line));color:var(--gain)}.sim-btn.buy:hover:not(:disabled){background:color-mix(in srgb,var(--gain) 28%,#fff)}.sim-btn.sell{background:color-mix(in srgb,var(--loss) 14%,#fff);border-color:color-mix(in srgb,var(--loss) 40%,var(--line));color:var(--loss)}.sim-btn.dividend{background:color-mix(in srgb,#2d6a4f 14%,#fff);border-color:color-mix(in srgb,#2d6a4f 40%,var(--line));color:#2d6a4f}.sim-btn.dividend:hover:not(:disabled){background:color-mix(in srgb,#2d6a4f 24%,#fff)}.app-info{margin-top:2rem;padding-top:1.5rem;border-top:1px dashed var(--line)}.app-info-body{max-width:46rem}.app-info-body>p{margin:0 0 1rem;color:var(--ink);font-size:.95rem;line-height:1.55}.app-info-subtitle{margin:0 0 .5rem;font-size:.85rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.app-info-list{margin:0 0 1.15rem;padding-left:1.15rem;color:var(--ink);font-size:.92rem;line-height:1.5}.app-info-list li{margin-bottom:.35rem}.app-info-disclaimer{margin:0;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--chart-warn, #a61b2b) 28%,var(--line));border-radius:var(--radius);background:color-mix(in srgb,#a61b2b 6%,var(--surface-solid));color:var(--ink);font-size:.88rem;line-height:1.5}.app-info-beta{margin:1rem 0 0;max-width:46rem;color:var(--muted);font-size:.88rem;line-height:1.5}.guide-section .section-head{margin-bottom:.5rem}.guide-section .app-info{margin-top:.75rem;padding-top:0;border-top:none}.guide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.55rem;margin-top:.75rem}.guide-card{padding:.6rem .75rem;border-radius:calc(var(--radius) - 2px);border:1px solid var(--line);background:var(--surface-solid)}.guide-card-title{margin:0 0 .25rem;font-size:.92rem;font-weight:650;display:flex;align-items:baseline;flex-wrap:wrap;gap:.35rem;line-height:1.3}.guide-card-where{margin:0 0 .45rem;color:var(--muted);line-height:1.4;font-size:.82rem}.guide-example{margin:0;padding-top:.45rem;border-top:1px dashed color-mix(in srgb,var(--line) 80%,transparent);font-size:.82rem;line-height:1.45;color:var(--ink)}.guide-example strong{font-weight:650;color:var(--muted);font-size:.78rem;letter-spacing:.02em}.guide-workflows{margin-top:1.25rem;padding-top:.85rem;border-top:1px dashed var(--line)}.guide-h3{margin:0 0 .55rem;font-size:.95rem;font-weight:650}.guide-terms .guide-term{display:grid;grid-template-columns:10rem 1fr;gap:.6rem .8rem;padding:.35rem 0}.guide-term-term{font-weight:700;color:var(--ink)}.guide-term-def{color:var(--muted);line-height:1.45;font-size:.92rem}.guide-actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.55rem}.guide-action{padding:.55rem .7rem;border-radius:calc(var(--radius) - 2px);border:1px solid var(--line);background:color-mix(in srgb,var(--surface-solid) 88%,transparent)}.guide-action p{margin:0;font-size:.82rem;line-height:1.45}.guide-action strong{font-weight:650;font-size:.84rem}@media(max-width:640px){.guide-terms .guide-term{grid-template-columns:1fr}}.app-footer-disclaimer{margin-top:2.5rem;padding-top:1rem;border-top:1px solid var(--line);text-align:center}.app-footer-disclaimer p{margin:0 auto;max-width:46rem;color:var(--muted);font-size:.78rem;line-height:1.45;text-align:center}.app-info-glossary-link{margin:0 0 1rem;font-size:.9rem;color:var(--ink)}button.text-link{display:inline;margin:0;padding:0;border:0;background:none;color:var(--accent);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:.15em;cursor:pointer}button.text-link:hover{color:var(--ink)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.glossary-section.section{margin-bottom:1.25rem}.glossary-section .section-head{margin-bottom:.55rem}.glossary-section .section-head h2{font-size:1.05rem}.glossary-section .section-head p{font-size:.82rem}.glossary-section .glossary-search{display:block;margin:0 0 .75rem;max-width:18rem}.glossary-section .glossary-search input{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:6px;background:var(--surface-solid);padding:.35rem .55rem;font:inherit;font-size:.84rem;color:var(--ink)}.glossary-group{margin-bottom:1rem}.glossary-group-title{margin:0 0 .4rem;font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.glossary-list{margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:0;max-width:none;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid);overflow:hidden}@media(min-width:900px){.glossary-list{grid-template-columns:1fr 1fr}.glossary-item:nth-child(odd):last-child{border-right:0}}.glossary-item{margin:0;padding:.4rem .65rem;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(5.5rem,8.5rem) 1fr;gap:.2rem .65rem;align-items:baseline}@media(max-width:520px){.glossary-item{grid-template-columns:1fr;gap:.1rem}}@media(min-width:900px){.glossary-item{border-right:1px solid var(--line)}.glossary-item:nth-child(2n){border-right:0}.glossary-item:nth-last-child(-n+2){border-bottom:0}}.glossary-item:last-child{border-bottom:0}.glossary-item dt{margin:0;font-size:.8rem;font-weight:700;letter-spacing:-.02em;color:var(--ink);line-height:1.3}.glossary-item dd{margin:0;font-size:.78rem;line-height:1.35;color:var(--muted)}@media(max-width:720px){.app-shell{position:static;margin:0;padding:.75rem 0 0;background:transparent;border-bottom:none;-webkit-backdrop-filter:none;backdrop-filter:none}.summary-groups{grid-template-columns:1fr;gap:.45rem}.summary-group{border-right:none;border-bottom:none;box-shadow:inset 3px 0 0 currentColor}.summary-group-capital{box-shadow:inset 3px 0 #1f4e79}.summary-group-pnl{box-shadow:inset 3px 0 #8a5a2b}.summary-group-title{padding:.35rem .55rem .1rem;font-size:.62rem;letter-spacing:.06em}.summary-stats,.summary-stats-2,.summary-stats-3{grid-template-columns:1fr 1fr}.summary-stats-3{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-stats-3 .stat:last-child{grid-column:auto}.stat{padding:.35rem .5rem .45rem;border-right:1px solid var(--line);border-bottom:none}.stat:nth-child(2n){border-right:none}.summary-stats-3 .stat:nth-child(2n){border-right:1px solid var(--line)}.summary-stats-3 .stat:nth-child(3n){border-right:none}.summary-stats-2 .stat:nth-last-child(-n+2),.summary-stats-3 .stat:last-child{border-bottom:none}.summary-stats-3 .stat:nth-child(1),.summary-stats-3 .stat:nth-child(2){border-bottom:none}.stat>span:first-child{font-size:.58rem;margin-bottom:.15rem;letter-spacing:.03em}.stat strong{font-size:.88rem;letter-spacing:-.03em}.stat-sim-sub,.stat-sum-sub{margin-top:.1rem;font-size:.62rem}.summary{margin-bottom:.85rem}.toolbar{width:100%}.app-nav{margin:.15rem 0 .35rem}.app-filters{margin:0 0 .35rem}.app-filters-toggle{display:flex}.app-filters:not(.open) .app-filters-body{display:none}.app-filters.open .app-filters-body{display:block;margin-top:.4rem}.app-filters .toolbar{flex-direction:column;align-items:stretch;gap:.45rem}.app-filters .toolbar-group{flex:none;width:100%}.app-nav-burger{display:flex;align-items:center;gap:.65rem;width:100%;min-height:2.6rem;padding:.45rem .7rem;border:1px solid var(--line);border-radius:8px;background:var(--surface-solid);color:var(--ink);font:inherit;font-weight:600;cursor:pointer;box-sizing:border-box}.app-nav-burger-icon{display:flex;flex-direction:column;justify-content:center;gap:4px;width:1.15rem;flex-shrink:0}.app-nav-burger-icon span{display:block;height:2px;width:100%;border-radius:1px;background:var(--accent);transition:transform .15s ease,opacity .15s ease}.app-nav.open .app-nav-burger-icon span:nth-child(1){transform:translateY(6px) rotate(45deg)}.app-nav.open .app-nav-burger-icon span:nth-child(2){opacity:0}.app-nav.open .app-nav-burger-icon span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.app-filters.open .app-nav-burger-icon span:nth-child(1){transform:translateY(6px) rotate(45deg)}.app-filters.open .app-nav-burger-icon span:nth-child(2){opacity:0}.app-filters.open .app-nav-burger-icon span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.app-nav-current{flex:1;text-align:left;font-size:.95rem}.app-nav-burger-caret{color:var(--muted);font-size:.75rem;transition:transform .15s ease}.app-nav.open .app-nav-burger-caret,.app-filters.open .app-nav-burger-caret{transform:rotate(180deg)}.app-nav .tabs{display:none;position:absolute;top:calc(100% + .35rem);left:0;right:0;z-index:55;flex-direction:column;flex-wrap:nowrap;gap:.15rem;padding:.4rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid);box-shadow:var(--pop-shadow);overflow:visible}.app-nav.open .tabs{display:flex}.app-nav .tab{width:100%;justify-content:space-between;padding:.7rem .75rem;border:none;border-radius:7px;border-bottom:none;font-size:.95rem;text-align:left}.app-nav .tab.active{background:var(--accent-soft);color:var(--accent);border-color:transparent}.app-nav .tab:hover{background:color-mix(in srgb,var(--accent-soft) 55%,transparent)}.tabs{overflow-x:visible;flex-wrap:nowrap;border-bottom:none}.tab{flex:0 0 auto;padding:.65rem .75rem;font-size:.86rem}.section-head{flex-direction:column;align-items:stretch;gap:.55rem}.section-head-copy+.quote-refresh-bar,.positions-subtabs-row .quote-refresh-bar{width:100%;justify-content:space-between}.quote-refresh-asof{max-width:none;white-space:normal}.positions-subtabs-row{flex-direction:column;align-items:stretch;gap:.45rem}.positions-subtabs-row .subtabs{width:100%}.positions-subtabs-row .subtab{flex:1 1 0;justify-content:center}.positions-subtabs-row .ai-suggestion-chips{justify-content:flex-start;flex:1 1 auto}}.tax-report-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.5rem 1rem;margin-bottom:.65rem}.tax-report-toolbar label{display:flex;flex-direction:column;gap:.2rem;font-size:.72rem;font-weight:600;letter-spacing:.03em;color:var(--muted)}.tax-report-toolbar select{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:.35rem .55rem;font-size:.9rem;color:var(--ink);min-width:6rem}.tax-report-disclaimer{margin:0;flex:1 1 14rem;font-size:.82rem;line-height:1.4;color:var(--muted)}.tax-report-refresh{margin:0 0 .45rem;font-size:.78rem}.tax-report.is-refreshing .tax-facts,.tax-report.is-refreshing .tax-kpis,.tax-report.is-refreshing .table-wrap,.tax-report.is-refreshing .section-head{opacity:.55;transition:opacity .15s ease}.tax-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:1rem}.tax-fact{margin:0;padding:.75rem .85rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid)}.tax-fact h3{margin:0 0 .4rem;font-size:.88rem;font-weight:700;color:var(--ink)}.tax-fact p{margin:0;font-size:.82rem;line-height:1.45;color:var(--muted)}.tax-fact-note{margin-top:.45rem!important;padding-top:.45rem;border-top:1px dashed var(--line);font-size:.78rem!important}.tax-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.65rem;margin-bottom:.5rem}.tax-kpi{display:flex;flex-direction:column;gap:.2rem;padding:.7rem .8rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid)}.tax-kpi-label{font-size:.7rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.tax-kpi strong{font-size:1.05rem;font-variant-numeric:tabular-nums}.tax-kpi-sub{font-size:.75rem;color:var(--muted);line-height:1.3}.div-cal-kpis{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:.4rem;margin-bottom:.65rem}.div-cal-ai{margin:0 0 1rem}.div-cal-ai .chart-card-head{align-items:flex-start;gap:.75rem}.div-cal-kpis .tax-kpi,.tax-kpis-compact .tax-kpi{gap:.1rem;padding:.4rem .5rem;border-radius:6px}.div-cal-kpis .tax-kpi-label,.tax-kpis-compact .tax-kpi-label{font-size:.62rem;letter-spacing:.05em}.div-cal-kpis .tax-kpi strong,.tax-kpis-compact .tax-kpi strong{font-size:1.02rem;letter-spacing:-.02em;line-height:1.2}.div-cal-kpis .tax-kpi-sub,.tax-kpis-compact .tax-kpi-sub{font-size:.68rem;line-height:1.25}.tax-kpis-compact{grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:.4rem;margin-bottom:.75rem}.tax-kpi-emphasis{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent-soft) 40%,var(--surface-solid))}.tax-report .tax-facts{gap:.5rem;margin-bottom:.75rem}.tax-report .tax-fact{padding:.55rem .65rem}.tax-report .tax-fact h3{margin-bottom:.3rem;font-size:.84rem}.tax-report .tax-fact p{font-size:.78rem;line-height:1.4}.tax-report .tax-fact-note{margin-top:.35rem!important;padding-top:.35rem;font-size:.74rem!important}.tax-report .tax-notes{margin-top:.75rem;font-size:.76rem}.section-head-compact{margin-bottom:.55rem}.section-head-compact h2{font-size:1rem}.section-head-compact p{font-size:.82rem}.div-cal .tax-report-disclaimer{margin:0 0 .65rem;font-size:.8rem;line-height:1.35}.div-cal .tax-notes{margin-top:.75rem;font-size:.76rem}.tax-status{display:inline-block;font-size:.72rem;font-weight:700;padding:.1rem .35rem;border-radius:4px;line-height:1.2;white-space:normal}.tax-status.ok{color:var(--gain);background:color-mix(in srgb,var(--gain) 12%,transparent)}.tax-status.tax{color:var(--loss);background:color-mix(in srgb,var(--loss) 12%,transparent)}.tax-status.warn{color:var(--chart-warn, #a61b2b);background:color-mix(in srgb,var(--chart-warn, #a61b2b) 12%,transparent)}.tax-notes{margin:1.25rem 0 0;padding-left:1.15rem;color:var(--muted);font-size:.8rem;line-height:1.45}.tax-notes li{margin-bottom:.3rem}.div-cal-history{white-space:normal;vertical-align:top;min-width:9.5rem;max-width:12rem}.div-cal-wrap{border-radius:var(--radius-md, 10px);box-shadow:var(--shadow-sm)}.div-cal-table{width:100%;border-collapse:collapse}.div-cal-table th{font-size:.72rem;font-weight:600;color:var(--muted);text-transform:none;letter-spacing:0;white-space:nowrap}.div-cal-table td{vertical-align:middle}.div-cal-asset{min-width:10rem}.div-cal-asset-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;margin-top:.2rem;font-size:.75rem}.div-cal-stack{display:flex;flex-direction:column;gap:.12rem;min-width:0}.div-cal-stack-main{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-variant-numeric:tabular-nums;font-weight:600}.div-cal-stack-sub{font-size:.72rem;line-height:1.3}.div-cal-yield{display:inline-block;font-family:var(--mono);font-weight:650;font-variant-numeric:tabular-nums;padding:.12rem .4rem;border-radius:999px;background:color-mix(in srgb,var(--accent-soft) 55%,transparent);color:var(--accent)}.div-cal-soon{color:var(--accent)}.div-cal-soon-badge{display:inline-block;font-size:.68rem;font-weight:700;padding:.08rem .35rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);white-space:nowrap}.div-cal-row-soon{background:color-mix(in srgb,var(--accent-soft) 35%,var(--surface-solid))}.div-cal-row-soon td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.div-cal-chips{display:flex;flex-wrap:wrap;gap:.25rem;max-width:14rem}.div-cal-chip{display:inline-flex;align-items:baseline;gap:.3rem;padding:.15rem .4rem;border-radius:6px;background:var(--color-surface-2, var(--surface));border:1px solid var(--line);font-size:.72rem;font-variant-numeric:tabular-nums;line-height:1.2}.div-cal-chip time{color:var(--muted)}.div-cal-chip-dps{font-family:var(--mono);font-weight:600}.div-cal-chip.more{color:var(--muted);border-style:dashed}.div-cal-history-list{margin:0;padding:0;list-style:none;display:grid;gap:.18rem;font-size:.78rem;line-height:1.25;font-variant-numeric:tabular-nums}.div-cal-history-list li{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:.45rem;align-items:baseline}.div-cal-history-list time{color:var(--muted)}.div-cal-history-dps{text-align:right;font-family:var(--mono)}.div-cal-history-more{margin-top:.25rem;font-size:.7rem;color:var(--muted)}.lang-switch-group{margin-left:0}.toolbar .lang-switch-group{margin-left:auto}.lang-switch{display:inline-flex;align-items:stretch;height:2.125rem;box-sizing:border-box;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface)}.lang-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--muted);font:inherit;font-weight:600;font-size:.8rem;letter-spacing:.04em;padding:0 .7rem;cursor:pointer;line-height:1;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:2.125rem}.lang-btn:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.lang-btn.active{background:var(--accent);color:#fff}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:2rem 1rem;background:radial-gradient(ellipse at 20% 0%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 55%),var(--bg)}.auth-card{width:min(26rem,100%);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.auth-card-top{display:flex;flex-wrap:nowrap;align-items:center;gap:.65rem .75rem}.auth-brand{display:flex;align-items:center;gap:.75rem;flex:1 1 auto;min-width:0}.auth-logo{width:3.35rem;height:3.35rem;border-radius:9px;flex-shrink:0;object-fit:contain;background:var(--surface-solid);border:1px solid var(--line)}.auth-brand-text{display:flex;flex-direction:column;gap:.1rem;min-width:0}.auth-title{margin:0;font-size:1.75rem}.auth-tabs{display:flex;gap:.5rem}.auth-tabs button{flex:1;border:1px solid var(--line);background:transparent;border-radius:8px;padding:.5rem;cursor:pointer;font:inherit}.auth-tabs button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.auth-form{display:flex;flex-direction:column;gap:.75rem}.auth-form .primary-btn{align-self:stretch;padding:.55rem .9rem;border-radius:8px;font-size:.95rem}.auth-user .primary-btn{height:2.125rem;padding:0 .8rem;display:inline-flex;align-items:center;box-sizing:border-box}.auth-form label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}.auth-form input[type=email],.auth-form input[type=password],.auth-form input[type=text]{padding:.5rem .65rem;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:inherit;font:inherit}.auth-check{flex-direction:row!important;align-items:flex-start;gap:.5rem!important}.auth-error{color:var(--danger, #b42318);margin:0}.ok-msg{color:var(--ok, #067647);margin:0}.linkish{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;color:var(--accent);text-decoration:underline;cursor:pointer;font:inherit;padding:0}.auth-privacy{font-size:.85rem;color:var(--muted, #667);display:flex;flex-direction:column;gap:.5rem}.account-privacy{margin-top:.25rem;padding-top:.85rem;border-top:1px solid var(--line);gap:.35rem}.account-privacy h3{font-size:.95rem;font-weight:700;letter-spacing:-.02em}.privacy-compact{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.2rem;font-size:.78rem;line-height:1.35;color:var(--muted)}.privacy-compact li::marker{color:color-mix(in srgb,var(--muted) 70%,transparent)}.auth-user{display:flex;align-items:center;gap:.5rem}.auth-email{max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;opacity:.85}.user-menu{position:relative}.user-menu-trigger{display:inline-flex;align-items:center;gap:.4rem;height:2.5rem;max-width:min(12rem,46vw);padding:0 .85rem;border:1px solid var(--accent);border-radius:8px;background:var(--accent);color:#fff;font:inherit;font-weight:600;font-size:.9rem;cursor:pointer;box-sizing:border-box}.user-menu-trigger:hover,.user-menu-trigger[aria-expanded=true]{filter:brightness(1.06)}.user-menu-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-caret{flex-shrink:0;font-size:.7rem;opacity:.9}.user-menu-pop{position:absolute;top:calc(100% + .35rem);right:0;z-index:60;min-width:12rem;padding:.35rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-solid);box-shadow:var(--pop-shadow);display:flex;flex-direction:column;gap:.15rem}.user-menu-item{border:none;background:transparent;text-align:left;padding:.5rem .7rem;border-radius:7px;font-size:.9rem;font-weight:600;color:var(--ink);cursor:pointer}.user-menu-item:hover{background:var(--accent-soft);color:var(--accent)}.user-menu-item.danger{color:var(--loss)}.user-menu-item.danger:hover{background:#f5e0e2;color:var(--loss)}.user-menu-sep{height:1px;margin:.2rem .35rem;background:var(--line)}.user-menu-lang{display:flex;align-items:center;justify-content:space-between;gap:.65rem;padding:.35rem .55rem}.user-menu-lang-label{font-size:.85rem;font-weight:600;color:var(--muted)}.user-menu-lang-switch{height:1.75rem}.user-menu-lang-switch .lang-btn{padding:0 .55rem;font-size:.8rem}.user-menu-err{display:block;margin-top:.25rem;max-width:14rem;font-size:.78rem;color:var(--loss)}.account-panel,.admin-panel{display:flex;flex-direction:column;gap:1.25rem}.account-data-block{display:flex;flex-direction:column;gap:.65rem}.account-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.account-password-form .primary-btn{align-self:flex-start;padding:.38rem .8rem;border-radius:6px;font-size:.88rem}.admin-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr))}.admin-detail{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}.data-table tr.selected{background:color-mix(in srgb,var(--accent) 12%,transparent)}.data-table tbody tr{cursor:pointer}.auth-card-top-actions{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:.45rem;flex:0 0 auto;margin-left:0}.auth-card-top-actions .lang-switch-group{margin-left:0;flex-direction:row;align-items:center}.auth-card-top-actions .lang-switch{height:2.25rem;background:var(--surface-solid)}.auth-card-top-actions .lang-btn{min-height:2.25rem;padding:0 .65rem;font-size:.8rem;letter-spacing:.04em}.auth-card-top-actions .ghost-btn{flex-shrink:0;white-space:nowrap}@media(max-width:720px){.app{padding:0 .75rem 2.5rem;padding-bottom:max(2.5rem,env(safe-area-inset-bottom))}.app-shell{margin:0 -.75rem;padding:.55rem .75rem 0;padding-top:max(.55rem,env(safe-area-inset-top))}.topbar{gap:.65rem;padding-bottom:.65rem}.brand-logo,.auth-logo{width:2.75rem;height:2.75rem}.topbar h1{font-size:1.45rem}.toolbar{width:100%;gap:.35rem;padding:.4rem .45rem}.toolbar-group{flex:1 1 0;min-width:0}.toolbar label{font-size:.58rem}.multi-select-trigger{height:1.9rem;padding:0 .4rem;font-size:.78rem;border-radius:6px}.multi-select-caret{font-size:.65rem}.table-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;overscroll-behavior-y:auto;margin-inline:-.15rem;border-radius:8px}table{font-size:.78rem}th,td{padding:.42rem .45rem}.invest-form input,.invest-form select,.auth-form input[type=email],.auth-form input[type=password],.auth-form input[type=text],.fx-rate-input,.ticker-suggest input,select,input:not([type=checkbox]):not([type=radio]):not([type=range]){font-size:16px}.primary-btn,.ghost-btn:not(.ghost-btn-sm),.danger-btn,.auth-tabs button,.tab{min-height:2.5rem}.primary-btn,.ghost-btn:not(.ghost-btn-sm){padding-inline:.85rem}.ghost-btn-sm,.quote-refresh-btn{min-height:2.15rem;padding:.35rem .7rem}.ai-chat-new.ghost-btn-sm,.news-fetch-fresh.ghost-btn-sm{min-height:1.85rem;padding:.2rem .5rem;font-size:.75rem}.csv-bar{padding:.3rem .4rem;gap:.3rem}.csv-bar-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:.3rem}.csv-bar-actions .ghost-btn{width:100%;justify-content:center;min-height:2.15rem;padding:.3rem .35rem;font-size:.78rem}.csv-bar-hint{display:none}.perf-panel{padding:.45rem .55rem;margin-bottom:.7rem}.perf-panel-head{flex-direction:column;align-items:stretch;gap:.35rem;margin-bottom:.35rem}.perf-benchmark-bar{width:100%}.perf-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}.perf-card{padding:.35rem .4rem}.perf-card strong{font-size:.95rem}.perf-meta{display:none}.table-mobile-toolbar{display:flex;align-items:flex-end;gap:.45rem;margin:0 0 .4rem}.table-mobile-select-all{display:inline-flex;align-items:center;gap:.35rem;flex:0 0 auto;min-height:1.95rem;padding:0 .15rem .05rem;font-size:.78rem;font-weight:600;color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none}.table-mobile-select-all input{width:1.05rem;height:1.05rem;accent-color:var(--accent)}.table-mobile-toolbar .table-mobile-sort{flex:1 1 auto;min-width:0;margin:0}.table-mobile-sort{display:flex;align-items:flex-end;gap:.3rem;margin:0 0 .4rem;padding:0}.table-mobile-sort-field{display:flex;flex-direction:column;gap:.1rem;flex:1 1 auto;min-width:0;font-size:.62rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.table-mobile-sort-field select{width:100%;min-height:1.95rem;border:1px solid var(--line);border-radius:6px;background:var(--surface-solid);color:var(--ink);font:inherit;font-size:.82rem;font-weight:600;text-transform:none;letter-spacing:0;padding:.2rem .45rem}.table-mobile-sort-dir{flex:0 0 auto;min-width:2.1rem;min-height:1.95rem;padding:.2rem .4rem;font-size:.95rem;line-height:1}.table-wrap.as-cards{border:none;background:transparent;margin-inline:0}.table-wrap.as-cards.table-scroll,.table-wrap.as-cards:not(.table-wrap--grow):not(.table-wrap--noscroll){max-height:min(65vh,36rem);overflow:auto}.table-wrap.as-cards .pnl-heat-legend{margin:0 0 .4rem;font-size:.72rem}.table-panel>.csv-bar,.table-panel>.bulk-bar,.table-panel>.status,.table-wrap.as-cards .csv-bar,.table-wrap.as-cards .bulk-bar,.table-wrap.as-cards>.status{margin-bottom:.4rem}.table-panel>.csv-bar,.table-panel>.bulk-bar,.table-panel>.table-mobile-toolbar{border:none;background:transparent}.table-panel>.bulk-bar,.table-wrap.as-cards .bulk-bar{position:sticky;top:.35rem;z-index:40;gap:.4rem;padding:.4rem .5rem;border-radius:8px;box-shadow:0 6px 18px color-mix(in srgb,var(--ink) 8%,transparent)}.table-wrap.as-cards .bulk-bar-main{gap:.35rem}.table-wrap.as-cards .bulk-bar-count{font-size:.8rem}.table-wrap.as-cards .bulk-bar-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:.3rem}.table-wrap.as-cards .bulk-bar-main{flex-direction:column;align-items:stretch}.table-wrap.as-cards .bulk-bar-actions .ghost-btn,.table-wrap.as-cards .bulk-bar-delete{width:100%;justify-content:center;min-height:2rem;padding:.3rem .35rem;font-size:.76rem}.table-wrap.as-cards .bulk-edit-hint{display:none}.table-wrap.as-cards .bulk-edit-grid{grid-template-columns:1fr 1fr;gap:.35rem .4rem}.table-wrap.as-cards .bulk-edit-grid label{font-size:.62rem;gap:.1rem}.table-wrap.as-cards .bulk-edit-grid input,.table-wrap.as-cards .bulk-edit-grid select{min-height:2rem;padding:.28rem .4rem;font-size:16px}.table-wrap.as-cards .bulk-edit-actions{grid-column:1 / -1}.table-wrap.as-cards .bulk-edit-actions .row-edit-save{width:100%;min-height:2.1rem;justify-content:center}.table-wrap.as-cards tbody tr.row-selected{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));box-shadow:inset 3px 0 0 var(--accent),0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}.table-wrap.as-cards tbody tr.row-editing{grid-template-columns:1fr 1fr;column-gap:.45rem;row-gap:.15rem;padding:.5rem .55rem .25rem;border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface-solid));border-bottom-left-radius:0;border-bottom-right-radius:0;margin-bottom:0}.table-wrap.as-cards tbody tr.row-editing td.card-primary,.table-wrap.as-cards tbody tr.row-editing td.row-check-cell,.table-wrap.as-cards tbody tr.row-editing td.row-menu-cell,.table-wrap.as-cards tbody tr.row-editing td.card-span{grid-column:1 / -1}.table-wrap.as-cards tbody tr.row-editing td.card-primary{order:-20;padding-bottom:.25rem}.table-wrap.as-cards tbody tr.row-editing .row-edit-input,.table-wrap.as-cards tbody tr.row-editing .ticker-suggest input{min-height:2rem;max-width:none;width:100%;font-size:16px;padding:.28rem .4rem}.table-wrap.as-cards tbody tr.row-editing .row-edit-input.num{max-width:none;text-align:left}.table-wrap.as-cards .row-menu{width:100%;display:flex;justify-content:stretch}.table-wrap.as-cards .row-menu-inline{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;width:100%}.table-wrap.as-cards .row-menu-inline-btn{width:100%;justify-content:center;min-height:2.05rem;padding:.3rem .45rem;font-size:.8rem}.table-wrap.as-cards .row-menu-trigger{display:none}.table-wrap.as-cards td.row-check-cell input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--accent)}.table-wrap.as-cards td.row-menu-cell{grid-column:1 / -1;flex-direction:row;justify-content:stretch;padding:.25rem 0 0;margin-top:.1rem;border-top:1px solid color-mix(in srgb,var(--line) 80%,transparent)}.table-wrap.as-cards td.row-menu-cell:before{display:none}.table-wrap.as-cards .row-edit-actions{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;width:100%}.table-wrap.as-cards .row-edit-actions .row-edit-save,.table-wrap.as-cards .row-edit-actions .row-edit-cancel{width:100%;min-height:2.05rem;justify-content:center}.table-wrap.as-cards tbody tr.row-editing-actions{display:block;margin-top:0;padding:.25rem .55rem .5rem;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-top:none;border-radius:0 0 8px 8px;background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface-solid));box-shadow:none}.table-wrap.as-cards tbody tr.row-editing-actions td{display:block;padding:0;border:none}.table-wrap.as-cards tbody tr.row-editing-msg{display:block;margin-top:0;padding:.3rem .55rem .45rem;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-top:none;border-radius:0 0 8px 8px;background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface-solid))}.table-wrap.as-cards tbody tr.row-editing-msg td{display:block;padding:0;border:none}.table-wrap.as-cards tbody tr.row-editing-actions+tr.row-editing-msg{border-top:none}.table-wrap.as-cards tbody tr.row-editing-actions:has(+tr.row-editing-msg){border-bottom-left-radius:0;border-bottom-right-radius:0;padding-bottom:.2rem}.table-wrap.as-cards .row-edit-input,.table-wrap.as-cards .row-edit-ticker,.table-wrap.as-cards .ticker-suggest{width:100%;max-width:none}.table-wrap.as-cards td.card-hide-mobile{display:none}.table-wrap.as-cards table{display:block;width:100%}.table-wrap.as-cards thead{display:none}.table-wrap.as-cards tbody{display:flex;flex-direction:column;gap:.4rem}.table-wrap.as-cards tbody tr{display:grid;grid-template-columns:1fr 1fr;column-gap:.5rem;row-gap:0;align-items:start;padding:.45rem .55rem .4rem;border:1px solid var(--line);border-radius:8px;background:var(--surface-solid);box-shadow:none}.table-wrap.as-cards td{display:flex;flex-direction:column;align-items:flex-start;gap:.05rem;padding:.22rem 0;border:none;white-space:normal;min-width:0;font-size:.82rem;line-height:1.25;font-variant-numeric:tabular-nums}.table-wrap.as-cards td.num{text-align:left;align-items:flex-start}.table-wrap.as-cards td[data-label]:before{content:attr(data-label);font-size:.58rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);line-height:1.15}.table-wrap.as-cards td.card-primary{grid-column:1 / -1;order:-20;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.25rem .4rem;padding:0 0 .3rem;margin:0 0 .15rem;border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent);font-size:.9rem;font-weight:700;letter-spacing:-.01em}.table-wrap.as-cards td.card-primary:before{display:none}.table-wrap.as-cards td.card-emphasis{order:-10;margin:0 0 .2rem;padding:.28rem .4rem;border-radius:6px;background:color-mix(in srgb,var(--bg-accent) 55%,var(--surface));font-size:.9rem;font-weight:700;line-height:1.2}.table-wrap.as-cards td.card-emphasis[data-label]:before{margin-bottom:.02rem;font-size:.56rem}.table-wrap.as-cards td.card-span{grid-column:1 / -1}.table-wrap.as-cards .badge,.table-wrap.as-cards .side-badge,.table-wrap.as-cards .origin-badge{font-size:.68rem;padding:.12rem .35rem;border-radius:4px}.table-wrap.as-cards button.badge.filter-toggle,.table-wrap.as-cards button.side-badge.filter-toggle{min-height:0;padding:.12rem .35rem}.table-wrap.as-cards td.row-check-cell{grid-column:1 / -1;flex-direction:row;align-items:center;gap:.35rem;padding:0 0 .1rem;order:-25}.table-wrap.as-cards td.row-check-cell:before{content:none}.div-cal .tax-report-disclaimer{margin-bottom:.5rem;font-size:.76rem}.div-cal-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;margin-bottom:.55rem}.div-cal-kpis .tax-kpi:last-child{grid-column:1 / -1}.div-cal-kpis .tax-kpi{padding:.35rem .4rem}.div-cal-kpis .tax-kpi strong{font-size:.95rem}.div-cal-kpis .tax-kpi-sub{display:none}.div-cal .section-head-compact{margin-bottom:.4rem;gap:.15rem}.div-cal .section-head-compact h2{font-size:.92rem}.div-cal .section-head-compact p{font-size:.76rem}.table-wrap.as-cards .div-cal-history{min-width:0;max-width:none;order:5;margin-top:.15rem;padding-top:.3rem;border-top:1px solid color-mix(in srgb,var(--line) 80%,transparent)}.table-wrap.as-cards .div-cal-history-list{font-size:.74rem;gap:.12rem}.table-wrap.as-cards .div-cal-history-list li{grid-template-columns:4.75rem minmax(0,1fr);gap:.35rem}.table-wrap.as-cards .div-cal-history-list li:nth-child(n+3){display:none}.table-wrap.as-cards .div-cal-history-more{margin-top:.15rem;font-size:.66rem}.div-cal .tax-notes{margin-top:.6rem;padding-left:1rem;font-size:.72rem}.tax-report .tax-facts{grid-template-columns:1fr;gap:.4rem;margin-bottom:.55rem}.tax-report .tax-fact{padding:.45rem .55rem}.tax-report .tax-fact h3{font-size:.8rem}.tax-report .tax-fact p{font-size:.74rem}.tax-kpis-compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;margin-bottom:.55rem}.tax-kpis-compact .tax-kpi{padding:.35rem .4rem}.tax-kpis-compact .tax-kpi strong{font-size:.95rem}.tax-kpis-compact .tax-kpi-sub{display:none}.tax-kpi-emphasis{border-width:1px}.tax-report .section-head-compact{margin-bottom:.4rem;gap:.15rem}.tax-report .section-head-compact h2{font-size:.92rem}.tax-report .section-head-compact p{font-size:.76rem}.tax-report .tax-notes{margin-top:.6rem;padding-left:1rem;font-size:.72rem}.table-wrap.as-cards .tax-status{font-size:.66rem;padding:.08rem .3rem}.tax-report-toolbar{gap:.35rem;margin-bottom:.45rem;align-items:stretch}.tax-report-disclaimer{flex:0 1 auto;font-size:.76rem;line-height:1.35}.sim-trade-panel{margin-top:.4rem;padding:.4rem .5rem}.sim-trade-panel-head{margin-bottom:.3rem}.sim-trade-panel-head strong{font-size:.8rem}.sim-trade-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem .4rem}.sim-trade-grid.manual{grid-template-columns:repeat(2,minmax(0,1fr))}.sim-trade-grid input,.sim-trade-grid select,.sim-trade-grid .broker-suggest input{min-height:2.35rem;height:2.35rem;font-size:16px}.sim-trade-actions{margin-top:.35rem;gap:.3rem}.sim-btn{flex:1 1 auto;min-width:0;padding:.4rem .45rem;font-size:.8rem;text-align:center}.sim-trade-actions .invest-form-msg{flex:1 1 100%;margin:0;font-size:.78rem}.sim-trade-panel-head-actions .ghost-btn{min-height:2rem}.price-history-toolbar,.watchlist-toolbar,.tax-report-toolbar{flex-direction:column;align-items:stretch}.price-history-toolbar select,.price-history-toolbar input,.benchmark-bar{width:100%;max-width:none}.asset-compare-add-row{max-width:none}.benchmark-bar{flex-wrap:wrap}.benchmark-bar select{min-width:0;flex:1 1 10rem}.chart-card{padding:.65rem .55rem}.ai-prompt-card{padding:.6rem .6rem .7rem}.ai-prompt-card-head{gap:.35rem}.ai-prompt-card-actions{width:100%}.ai-prompt-card-actions .ghost-btn{flex:1 1 auto}.chart-card .recharts-legend-wrapper{font-size:.62rem!important;line-height:1.2}.chart-card .recharts-default-legend{margin:0!important;padding:0!important}.chart-card .recharts-legend-item{margin-right:.55rem!important}.chart-card .recharts-legend-item-text{font-size:.62rem}.allocation-legend{gap:.12rem .4rem;max-height:5.5rem;padding-bottom:.15rem}.allocation-legend .legend-asset{font-size:.62rem;gap:.2rem;line-height:1.2}.allocation-legend-swatch{width:.42rem;height:.42rem}.open-positions-perf-head{gap:.4rem;margin-bottom:.35rem}.open-positions-perf .open-pos-legend{gap:.1rem .45rem;margin:.25rem 0 0}.open-positions-perf .open-pos-legend-btn{gap:.2rem;padding:0;font-size:.62rem;line-height:1.2}.open-positions-perf .open-pos-legend-swatch{width:.75rem;height:0;border-top-width:2px}.open-positions-perf .open-pos-legend-name{font-weight:600}.auth-shell{padding:1rem .75rem;padding-bottom:max(1rem,env(safe-area-inset-bottom));align-items:start}.auth-card{padding:1.15rem 1rem;border-radius:10px}.auth-title{font-size:1.35rem}.auth-logo{width:2.75rem;height:2.75rem}.auth-card-top{gap:.5rem}.auth-card-top-actions .lang-switch{height:2.5rem}.auth-card-top-actions .lang-btn{min-height:2.5rem;padding:0 .7rem}.auth-card-top-actions .ghost-btn{min-height:2.5rem;padding:0 .65rem;font-size:.85rem}.user-menu-pop{max-width:min(18rem,calc(100vw - 1.5rem))}.filter-multi{max-width:100%}}@media(max-width:480px){.summary-stats-2{grid-template-columns:1fr 1fr}.summary-stats-3{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{padding:.3rem .4rem .4rem}.stat strong{font-size:.8rem}.brand-kicker{font-size:.62rem}.tabs{margin-inline:-.75rem;padding-inline:.75rem}}.app-main-column>.impersonate-banner{margin:var(--space-3) var(--space-5) 0}.app-main-content>.section-page+.section-page{margin-top:0}.section-page{animation:section-in .22s ease}.app-topbar{align-items:center}.topbar-search{min-width:0;max-width:14rem;width:100%}.topbar-search .ticker-suggest{width:100%}.topbar-search .ticker-suggest input{width:100%;height:1.85rem;min-height:1.85rem;box-sizing:border-box;padding:0 .45rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--color-surface-1);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-search .ticker-suggest input:focus{border-color:color-mix(in srgb,var(--color-primary) 45%,var(--line));outline:2px solid color-mix(in srgb,var(--color-primary) 18%,transparent);outline-offset:1px}.app-topbar-filters{min-width:0}.app-topbar-filters .filter-bar{width:100%}.app-topbar .filter-bar .toolbar{background:transparent;border:none;padding:0;margin:0;gap:var(--space-2);align-items:center;--filter-control-h: 2rem;--filter-control-fs: .82rem}.app-topbar .filter-bar .toolbar label{font-size:.75rem;font-weight:500;letter-spacing:0;text-transform:none;color:var(--color-text-subtle);line-height:1.2}.app-topbar .filter-bar .toolbar-group{flex:1 1 0;min-width:0;gap:.15rem}.app-topbar .filter-bar .multi-select-trigger,.app-topbar .filter-bar .filter-date-range{height:var(--filter-control-h);min-height:var(--filter-control-h);box-sizing:border-box;border-radius:var(--radius-sm);font-size:var(--filter-control-fs);width:100%}.app-topbar .filter-bar .filter-date-range{display:flex;align-items:center;gap:.2rem;border:1px solid var(--line);background:var(--surface-solid);padding:0 .35rem}.app-topbar .filter-bar .filter-date-range:focus-within{outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);border-color:var(--accent)}.app-topbar .filter-bar .filter-date-field{display:flex;align-items:center;flex:1 1 0;min-width:0;height:100%;gap:.1rem}.app-topbar .filter-bar .filter-date-input-wrap{position:relative;flex:1 1 0;min-width:0;height:100%;display:flex;align-items:center}.app-topbar .filter-bar .filter-date-guide{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;padding:0 .1rem;font-family:var(--mono);font-size:var(--filter-control-fs);font-variant-numeric:tabular-nums;pointer-events:none;white-space:pre;overflow:hidden}.app-topbar .filter-bar .filter-date-guide-typed{color:transparent}.app-topbar .filter-bar .filter-date-guide-rest{color:var(--color-text-subtle, var(--muted));opacity:.7}.app-topbar .filter-bar .filter-date-input{position:relative;z-index:1;flex:1 1 0;min-width:0;width:100%;height:100%;border:0;background:transparent;padding:0 .1rem;color:inherit;font-family:var(--mono);font-size:var(--filter-control-fs);font-variant-numeric:tabular-nums}.app-topbar .filter-bar .filter-date-native{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;padding:0;margin:-1px}.app-topbar .filter-bar .filter-date-picker-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.app-topbar .filter-bar .filter-date-picker-btn:hover{color:var(--ink);background:color-mix(in srgb,var(--line) 55%,transparent)}.app-topbar .filter-bar .filter-date-picker-btn svg{width:.95rem;height:.95rem}.app-topbar .filter-bar .filter-date-input:focus{outline:none}.app-topbar .filter-bar .filter-date-input.invalid{color:var(--loss)}.app-topbar .filter-bar .filter-date-hint{margin:.35rem 0 0;line-height:1.35}.app-topbar .filter-bar .filter-date-sep{flex:0 0 auto;color:var(--muted);font-size:calc(var(--filter-control-fs) * .92);line-height:1;-webkit-user-select:none;user-select:none}.app-topbar .filter-bar .filter-strip{padding:0;margin:0;gap:.25rem}.app-topbar .filter-bar .filter-chip{gap:.2rem;padding:.12rem .4rem;font-size:.72rem;font-weight:550;border-radius:var(--radius-sm);line-height:1.2;background:var(--color-primary-soft);border-color:color-mix(in srgb,var(--color-primary) 28%,var(--line));color:var(--color-primary)}.app-topbar .filter-bar .filter-chip span{font-size:.85rem}.app-topbar .filter-bar .app-filters-toggle{min-height:2rem;height:2rem;width:auto;border-radius:var(--radius-sm)}@media(min-width:901px){.app-topbar{align-items:center}.app-topbar.has-filters{grid-template-columns:auto minmax(0,12rem) minmax(0,1fr) auto;grid-template-areas:"toggle search filters actions"}.app-topbar.has-filters:has(.filter-strip){grid-template-areas:"toggle search filters actions" ". strip strip strip"}.app-topbar .sidebar-toggle-btn{display:none}.app-topbar-filters,.app-topbar-filters .filter-bar{display:contents}.app-topbar .filter-bar .app-filters-toggle{display:none}.app-topbar .filter-bar .app-filters-body{display:contents}.app-topbar .filter-bar .toolbar{grid-area:filters;flex-direction:row;align-items:center;min-width:0;--filter-control-h: 1.85rem;--filter-control-fs: .78rem}.app-topbar .filter-bar .toolbar-group{flex:1 1 0;min-width:7.5rem}.app-topbar .filter-bar .toolbar-group>label{display:none}.app-topbar .filter-bar .filter-strip{grid-area:strip;margin-top:0}.topbar-search,.app-topbar-actions{align-self:center}}@media(max-width:900px){.app-topbar{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"toggle search actions";align-items:center;column-gap:var(--space-2);row-gap:var(--space-2);padding:var(--space-2) var(--space-3)}.app-topbar.has-filters{grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"toggle search filtbtn actions" "body body body body"}.app-topbar.has-filters:has(.filter-strip){grid-template-areas:"toggle search filtbtn actions" "body body body body"}.app-topbar .sidebar-toggle-btn{grid-area:toggle;width:2.75rem;height:1.85rem;min-height:1.85rem;align-self:center}.app-topbar .sidebar-toggle-icon{width:1.5rem;height:1.5rem}.topbar-search{max-width:none;align-self:center}.app-topbar-actions{align-self:center}.app-topbar .user-menu-trigger{height:1.85rem;min-height:1.85rem;max-width:6.5rem;padding:0 .5rem;font-size:.75rem;border-radius:var(--radius-sm);gap:.25rem}.app-topbar-filters,.app-topbar-filters .filter-bar{display:contents}.app-topbar .filter-bar .app-filters-toggle{grid-area:filtbtn;display:inline-flex;width:auto;max-width:7.5rem;height:1.85rem;min-height:1.85rem;padding:0 .5rem;font-size:.75rem;justify-content:space-between;gap:.3rem;align-self:center}.app-topbar .filter-bar .app-filters-toggle .tab-count{font-size:.68rem;padding:.05rem .35rem}.app-topbar .filter-bar .app-filters-body{grid-area:body}.app-topbar .filter-bar:not(.open) .app-filters-body{display:none}.app-topbar .filter-bar.open .app-filters-body{display:block;margin-top:0}.app-topbar .filter-bar .toolbar{flex-direction:column;align-items:stretch;gap:var(--space-1);--filter-control-h: 1.75rem;--filter-control-fs: .75rem}.app-topbar .filter-bar .toolbar label{font-size:.68rem}.app-topbar .filter-bar .multi-select-trigger{padding:0 .45rem}.app-topbar .filter-bar .filter-chip{font-size:.7rem;padding:.1rem .35rem}.app-topbar .filter-bar .filter-strip{margin-top:var(--space-1)}}.subtabs{padding:3px;gap:2px;border:none;border-radius:var(--radius-md);background:var(--color-surface-3);box-shadow:inset 0 1px 2px #0f172a0a}.subtab{border:none!important;border-radius:calc(var(--radius-md) - 3px);padding:.45rem .85rem;color:var(--color-text-muted)}.ai-hub>.subtabs,.ai-assist-kinds{max-width:100%}.subtab:hover{background:color-mix(in srgb,var(--color-surface-1) 70%,transparent);color:var(--color-text)}.subtab.active{background:var(--color-surface-1);color:var(--color-primary);box-shadow:var(--shadow-sm);box-shadow:var(--shadow-sm),inset 0 -2px 0 var(--color-primary)}.kpi-row{gap:0}.section-page .summary{margin:0 0 var(--space-4)}.section-page .kpi-row{margin:0}.kpi-card--performance{border-color:inherit;background:transparent}.kpi-card--performance .kpi-card-value{color:inherit}.insight-banner{margin-top:var(--space-2)}.section-page .sim-vs-real{margin:0}.section-page .perf-panel{margin:0 0 var(--space-4);padding:var(--space-4);background:var(--color-surface-1);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.section-page .perf-label{text-transform:none;letter-spacing:0;font-size:.72rem;font-weight:500;color:var(--color-text-subtle)}.section-page .perf-card{background:var(--color-surface-0, var(--color-surface-1));border-radius:var(--radius-sm)}.sim-vs-real{background:var(--color-surface-1);box-shadow:var(--shadow-sm);border-radius:var(--radius-md);border-color:var(--line)}.sim-vs-real-label{text-transform:none;letter-spacing:0;font-size:.78rem;font-weight:500;color:var(--color-text-subtle)}.sim-vs-real-headline.gain{color:var(--color-positive-muted)}.sim-vs-real-headline.loss{color:var(--color-negative-muted)}.sim-vs-real-metric--delta{padding:.45rem .55rem;border-radius:var(--radius-sm)}.sim-vs-real-metric--gain{background:var(--color-positive-soft)}.sim-vs-real-metric--loss{background:var(--color-negative-soft)}.allocation-legend-label{font-weight:600;color:var(--color-text)}.allocation-legend-pct{color:var(--color-text-muted);font-weight:500}.charts{gap:var(--space-5)}.charts-book{gap:var(--space-4)}.charts-book-title{text-transform:none;letter-spacing:.01em;font-size:.82rem;font-weight:600;color:var(--color-text-muted)}.chart-card,.chart-shell{box-shadow:var(--shadow-sm);border-radius:var(--radius-md)}.chart-card{padding:var(--space-4)}.charts-book .chart-shell+.chart-grid{margin-top:var(--space-1)}.chart-grid{gap:var(--space-4)}.benchmark-bar label{text-transform:none;letter-spacing:0;font-size:.78rem;font-weight:500}.overview-grid{display:block}.overview-grid .charts{gap:var(--space-5)}.app-main-content tbody tr.pnl-n1,.app-main-content tbody tr.pnl-n2,.app-main-content tbody tr.pnl-n3,.app-main-content tbody tr.pnl-p1,.app-main-content tbody tr.pnl-p2,.app-main-content tbody tr.pnl-p3,.app-main-content tbody tr.pnl-flat{background:transparent}.app-main-content tbody tr.pnl-n1:hover,.app-main-content tbody tr.pnl-n2:hover,.app-main-content tbody tr.pnl-n3:hover,.app-main-content tbody tr.pnl-p1:hover,.app-main-content tbody tr.pnl-p2:hover,.app-main-content tbody tr.pnl-p3:hover,.app-main-content tbody tr.pnl-flat:hover{filter:none}.app-main-content tbody tr:hover{background:color-mix(in srgb,var(--color-primary) 4%,var(--color-surface-1))}.app-main-content tbody tr.row-sim{background:color-mix(in srgb,var(--color-surface-3) 75%,var(--color-surface-1))}.app-main-content tbody tr.row-sim:hover{background:color-mix(in srgb,var(--color-surface-3) 92%,var(--color-surface-1))}.app-main-content .table-wrap.sticky-first-col tbody tr.row-sim td:first-child{background:color-mix(in srgb,var(--color-surface-3) 75%,var(--color-surface-1))}.app-main-content td.pnl-cell.pnl-n1,.app-main-content td.pnl-cell.pnl-n2,.app-main-content td.pnl-cell.pnl-n3,.app-main-content td.pnl-cell.pnl-p1,.app-main-content td.pnl-cell.pnl-p2,.app-main-content td.pnl-cell.pnl-p3{background:transparent;font-weight:inherit}.app-main-content .table-wrap.sticky-first-col tbody tr:hover{background:var(--color-surface-2)}.app-main-content .table-wrap.sticky-first-col tbody tr.row-sim:hover,.app-main-content .table-wrap.sticky-first-col tbody tr.row-sim:hover td:first-child{background:color-mix(in srgb,var(--color-surface-3) 92%,var(--color-surface-1))}.app-main-content .pnl-cell .pnl-dot+*,.app-main-content .pnl-cell{font-weight:600}.table-preset-bar+.table-wrap{margin-top:0}.table-wrap.sticky-first-col{border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.table-preset-btn:hover:not(.active){background:var(--color-surface-2);color:var(--color-text)}.watchlist-split-list{padding-right:0;border-right:none;min-width:0}.watchlist-chart-panel .watchlist-preview-head{margin-bottom:var(--space-3)}.watchlist-chart-panel .price-history-chart-card,.watchlist-chart-panel .asset-compare .chart-card{max-width:none}@media(max-width:860px){.watchlist-split-list{padding-right:0;border-right:none;padding-bottom:0;border-bottom:none}}.watchlist-preview-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3)}.watchlist-preview-head h3{font-size:.95rem;font-weight:650;margin:0}.ai-history-list{margin-top:var(--space-3)}.ai-prompt-card{border-radius:var(--radius-md);border-color:var(--line)}.account-data-block h3{font-size:.95rem;margin:0}.account-data-block .muted.small{margin:0}.account-data-block .fx-rates-panel{margin-top:var(--space-2)}.account-field{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;font-size:.9rem;max-width:100%}.account-field--narrow{max-width:12rem}.account-field--wide{max-width:min(100%,22rem)}.account-field select{display:block;width:100%;box-sizing:border-box;padding:.45rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--color-surface-3);color:inherit;font:inherit;line-height:1.3}.account-field select:focus{outline:2px solid color-mix(in srgb,var(--color-primary) 45%,transparent);outline-offset:1px}.account-field select:disabled{opacity:.65;cursor:not-allowed}.account-default-currency{display:flex;flex-direction:column;gap:.35rem;max-width:12rem;font-size:.9rem}.account-default-currency select{display:block;width:100%;box-sizing:border-box;padding:.45rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--color-surface-3);color:inherit;font:inherit}.account-fx-amount-mode{margin:0 0 var(--space-3);padding:0;border:0;display:flex;flex-direction:column;gap:var(--space-2)}.account-fx-amount-mode legend{font-weight:600;font-size:.9rem;padding:0;margin-bottom:var(--space-1)}.account-fx-amount-mode label{display:flex;align-items:flex-start;gap:var(--space-2);font-size:.9rem;cursor:pointer}.account-fx-amount-mode input{margin-top:.2rem}.ai-quota-section{display:flex;flex-direction:column;gap:.55rem;margin:.75rem 0}.ai-quota-section h4{margin:0;font-size:.95rem}.ai-quota-section .muted.small{margin:0}.ai-quota-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.65rem;max-width:28rem}.ai-quota-field{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;font-size:.9rem}.ai-quota-field>span{color:var(--color-text-muted);font-size:.82rem}.ai-quota-field input{display:block;width:100%;box-sizing:border-box;padding:.45rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--color-surface-3);color:inherit;font:inherit;line-height:1.3}.ai-quota-field input:focus{outline:2px solid color-mix(in srgb,var(--color-primary) 45%,transparent);outline-offset:1px}.ai-quota-field--wide{min-width:0}.ai-quota-section .account-actions{margin-top:.15rem}.section{margin-bottom:var(--space-6)}.section-head h2{font-size:1.35rem;font-weight:700;letter-spacing:-.02em}.positions-subtabs-row{margin-bottom:var(--space-3)}.positions-section-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;max-width:min(100%,28rem)}.section-page-head:has(.positions-section-actions){align-items:center}.positions-section-actions .quote-refresh-bar{width:auto;justify-content:flex-end;gap:.4rem}.positions-section-actions .quote-refresh-asof{font-size:.72rem;max-width:12rem}.positions-section-actions .quote-refresh-btn{padding:.18rem .45rem;font-size:.75rem;min-height:0}.positions-section-actions .csv-bar{margin:0;width:auto;max-width:100%;justify-content:flex-end;min-width:0;padding:.2rem .35rem;gap:.25rem;border-radius:var(--radius-sm, 4px)}.positions-section-actions .csv-bar-actions{justify-content:flex-end;gap:.2rem}.positions-section-actions .csv-bar-actions .ghost-btn{padding:.15rem .4rem;font-size:.72rem;min-height:0;line-height:1.2}.position-asset-panel{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border);scroll-margin-top:1rem}.position-asset-panel-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-3)}.position-asset-panel-title{margin:0;font-size:1.15rem;font-weight:700;letter-spacing:-.02em}.position-asset-panel-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.position-asset-metrics{margin:var(--space-3) 0}.position-asset-metrics .asset-profile{margin:0;padding:.65rem .75rem}.position-asset-metrics .asset-profile-title{font-size:1rem}.position-asset-metrics .asset-profile-metrics-title{font-size:.82rem;margin-bottom:.35rem}.position-asset-metrics .asset-profile-metrics-grid{gap:.35rem .65rem}.position-asset-metrics .asset-profile-metric{font-size:.82rem}.position-asset-metrics .asset-profile-summary p{font-size:.85rem;line-height:1.4;margin:0}.position-asset-metrics .asset-profile-meta,.position-asset-metrics .asset-profile-class{font-size:.78rem;margin:.15rem 0}tbody tr.pos-row-clickable{cursor:pointer}tbody tr.row-expanded{outline:1px solid color-mix(in srgb,var(--color-primary) 35%,transparent);outline-offset:-1px}.chg-cell--spark{text-align:left}.chg-with-spark{display:inline-flex;align-items:center;justify-content:flex-start;gap:.45rem;width:100%}.day-sparkline{flex-shrink:0;display:block}.day-sparkline-line{stroke:var(--color-flat, #64748b)}.day-sparkline-fill{fill:color-mix(in srgb,var(--color-flat, #64748b) 22%,transparent)}.day-sparkline--up .day-sparkline-line{stroke:var(--color-positive)}.day-sparkline--up .day-sparkline-fill{fill:color-mix(in srgb,var(--color-positive) 28%,transparent)}.day-sparkline--down .day-sparkline-line{stroke:var(--color-negative)}.day-sparkline--down .day-sparkline-fill{fill:color-mix(in srgb,var(--color-negative) 28%,transparent)}.day-sparkline--loading,.day-sparkline--empty{width:56px;height:20px;border-radius:2px}.day-sparkline--loading{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--color-border) 80%,transparent),transparent);background-size:200% 100%;animation:day-spark-shimmer 1.2s ease-in-out infinite}@keyframes day-spark-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.pnl-flat{color:var(--color-flat)}.pnl-value{display:inline-flex;align-items:center;gap:.25rem;font-variant-numeric:tabular-nums}.pnl-value-primary{padding:.12rem .35rem;border-radius:var(--radius-sm);font-weight:600}.pnl-cell-primary-gain{color:var(--color-positive);background:var(--color-positive-soft)}.pnl-cell-primary-loss{color:var(--color-negative);background:var(--color-negative-soft)}.pnl-value-secondary .pnl-value-text{font-weight:550}.pnl-value-secondary.gain{color:var(--color-positive-muted)}.pnl-value-secondary.loss{color:var(--color-negative-muted)}.pnl-trend-icon{flex-shrink:0;opacity:.85}.pnl-badge{display:inline-flex;align-items:center;font-size:.78rem;border-radius:999px;padding:.1rem .45rem;border:1px solid var(--line)}.pnl-badge-primary.gain{border-color:color-mix(in srgb,var(--color-positive) 35%,var(--line));background:var(--color-positive-soft)}.pnl-badge-primary.loss{border-color:color-mix(in srgb,var(--color-negative) 35%,var(--line));background:var(--color-negative-soft)}.pnl-badge-secondary{border-color:transparent;background:transparent;padding:0}td.pnl-cell-primary{border-radius:var(--radius-sm)}td.pnl-cell-primary.pnl-cell-primary-gain{background:var(--color-positive-soft)}td.pnl-cell-primary.pnl-cell-primary-loss{background:var(--color-negative-soft)}.app-main-content tbody tr.pos-row-gain{box-shadow:inset 3px 0 0 var(--color-positive)}.app-main-content tbody tr.pos-row-loss{box-shadow:inset 3px 0 0 var(--color-negative)}.pnl-dot.pnl-p1,.pnl-dot.pnl-n1{opacity:var(--pnl-tier-1)}.pnl-dot.pnl-p2,.pnl-dot.pnl-n2{opacity:var(--pnl-tier-2)}.pnl-dot.pnl-p3,.pnl-dot.pnl-n3{opacity:var(--pnl-tier-3)}.side-badge{display:inline-flex;align-items:center;gap:.25rem}.side-badge.buy{color:var(--color-positive-muted);border-color:color-mix(in srgb,var(--color-positive) 35%,var(--line));background:var(--color-positive-soft)}.side-badge.sell{color:var(--color-negative-muted);border-color:color-mix(in srgb,var(--color-negative) 35%,var(--line));background:var(--color-negative-soft)}.side-badge.dividend{color:var(--color-dividend);border-color:color-mix(in srgb,var(--color-dividend) 35%,var(--line));background:var(--color-dividend-soft)}.badge.broker-badge{color:var(--color-text-muted);background:var(--color-surface-2);border-color:var(--line)}.price-source-badge{font-size:.62rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;padding:.05rem .3rem;border-radius:4px;color:var(--color-text-subtle);background:var(--color-surface-2);border:1px solid var(--line)}.dividend-soon{display:inline-flex;align-items:center;gap:.25rem;color:var(--color-warn);font-weight:600}.insight-banner--info{background:color-mix(in srgb,var(--color-primary) 8%,var(--color-surface-1));border-color:color-mix(in srgb,var(--color-primary) 25%,var(--line))}.insight-banner--warn{background:var(--color-warn-soft);border-color:color-mix(in srgb,var(--color-warn) 35%,var(--line))}.insight-banner--success{background:var(--color-positive-soft);border-color:color-mix(in srgb,var(--color-positive) 35%,var(--line))}.filter-bar-toggle-icon{display:inline-flex;margin-right:.3rem;vertical-align:-2px}.watchlist-star-btn.icon-only{width:2rem;height:2rem;padding:0;justify-content:center}.sort-icon{display:inline-flex;margin-left:.2rem;vertical-align:-2px;opacity:.65}.news-card-sentiment-positive{border-left-color:var(--color-positive);background:var(--color-positive-soft)}.news-card-sentiment-negative{border-left-color:var(--color-negative);background:var(--color-negative-soft)}.news-card-sentiment-neutral{border-left-color:color-mix(in srgb,var(--color-flat) 55%,var(--line));background:color-mix(in srgb,var(--color-flat) 5%,var(--color-surface-1))}.news-card-sentiment-mixed{border-left-color:var(--color-warn);background:var(--color-warn-soft)}.news-sentiment-positive{color:var(--color-positive-muted);background:color-mix(in srgb,var(--color-positive) 18%,transparent);border-color:color-mix(in srgb,var(--color-positive) 40%,transparent)}.news-sentiment-negative{color:var(--color-negative-muted);background:color-mix(in srgb,var(--color-negative) 16%,transparent);border-color:color-mix(in srgb,var(--color-negative) 35%,transparent)}.news-sentiment-mixed{color:var(--color-warn);background:color-mix(in srgb,var(--color-warn) 16%,transparent);border-color:color-mix(in srgb,var(--color-warn) 35%,transparent)}.tax-fact{border-left:3px solid var(--line)}.tax-fact--exempt{border-left-color:var(--color-positive);background:color-mix(in srgb,var(--color-positive-soft) 55%,var(--color-surface-1))}.tax-fact--limit{border-left-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary-soft) 45%,var(--color-surface-1))}.tax-fact--neutral{border-left-color:var(--color-dividend)}.tax-kpi--taxable{border-left:3px solid var(--color-warn)}.asset-detail-title-end{display:inline-flex;align-items:center;gap:.35rem;margin-left:.35rem}.watchlist-list-head-cols{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.watchlist-col-change{font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.watchlist-row--portfolio{box-shadow:inset 3px 0 0 var(--color-positive);background:color-mix(in srgb,var(--color-positive-soft) 35%,transparent)}.watchlist-badge--portfolio{background:var(--color-positive-soft);color:var(--color-positive-muted);border:1px solid color-mix(in srgb,var(--color-positive) 25%,transparent)}.watchlist-row-change{flex-shrink:0;min-width:0;max-width:100%;justify-self:end;text-align:right;font-size:.72rem;line-height:1.2;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden}.watchlist-row-change .pnl-value,.watchlist-row-change .pnl-value-text{font-size:inherit}.watchlist-row-actions{margin-left:0;flex-shrink:0}@media(max-width:540px){.watchlist-row{grid-template-columns:auto minmax(0,1fr) minmax(4.8rem,max-content) auto}.watchlist-col-change,.watchlist-row-change{display:none}}.watchlist-alert-btn--active{background:var(--color-warn-soft);border-color:color-mix(in srgb,var(--color-warn) 35%,var(--line))}.watchlist-alert-count{background:var(--color-warn-soft);color:var(--color-warn)}.badge--dividend{background:var(--color-dividend-soft);color:var(--color-dividend);border-color:color-mix(in srgb,var(--color-dividend) 30%,transparent)}.ai-chat-context{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .65rem}.ai-chat-context-pills{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.ai-chat-context-pill{display:inline-flex;align-items:center;padding:.15rem .45rem;border-radius:999px;font-size:.78rem;font-weight:550;background:var(--color-surface-2);border:1px solid var(--line);color:var(--color-text)}.ai-chat-context-pill--pnl,.ai-chat-context-pill--roi{border-color:transparent;background:transparent;padding:0}.ai-chat-context-meta:before{content:"·";margin-right:.35rem;color:var(--color-text-subtle)}.ai-chat-bubble-user .ai-chat-user-text{background:var(--color-primary-soft);border:1px solid color-mix(in srgb,var(--color-primary) 18%,transparent)}.ai-chat-bubble-assistant .ai-chat-user-text,.ai-chat-bubble-assistant .prose-card{background:var(--color-surface-1);border:1px solid var(--line)}.landing{min-height:100vh;min-height:100dvh;color:var(--color-text);background:radial-gradient(1200px 520px at 12% -10%,color-mix(in srgb,var(--color-primary-soft) 70%,transparent),transparent 70%),radial-gradient(900px 420px at 88% 8%,color-mix(in srgb,var(--color-surface-3) 80%,transparent),transparent 65%),var(--color-bg);font-family:var(--font)}.landing-main{display:flex;flex-direction:column}.landing-nav{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand lang" "cta cta" "secondary secondary";align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--color-surface-1) 92%,transparent);position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@media(min-width:900px){.landing-nav{display:flex;flex-wrap:nowrap;justify-content:flex-start;gap:var(--space-3) var(--space-5);padding:var(--space-3) var(--space-6)}}.landing-nav-brand{grid-area:brand;display:flex;align-items:center;gap:var(--space-3);min-width:0}.landing-nav-logo{width:2.25rem;height:2.25rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--color-surface-1);object-fit:contain}.landing-nav-name{font-weight:700;font-size:1.1rem;letter-spacing:-.03em;color:var(--color-text)}.landing-nav-lang{grid-area:lang;justify-self:end;align-self:center}.landing-nav-lang .lang-switch-group{margin-left:0;flex-direction:row}.landing-nav-lang .lang-switch{height:2rem;background:var(--color-surface-1);border-radius:var(--radius-sm)}.landing-nav-lang .lang-btn{min-height:2rem;padding:0 .6rem;font-size:.78rem;letter-spacing:.04em;color:var(--color-text-muted)}.landing-nav-lang .lang-btn.active{color:#fff}.landing-nav-cta{grid-area:cta;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);align-items:center;gap:var(--space-2);width:100%}.landing-nav-cta .ghost-btn,.landing-nav-cta .primary-btn{justify-content:center;text-align:center;min-height:2rem;height:2rem;padding:0 .75rem;font-size:.82rem;border-radius:var(--radius-sm);text-decoration:none}.landing-nav-secondary{grid-area:secondary;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-2) var(--space-4)}.landing-nav-link{display:inline-flex;align-items:center;color:var(--color-text-muted);font-size:.84rem;font-weight:600;text-decoration:none;padding:.25rem 0}.landing-nav-link:hover{color:var(--color-primary)}@media(min-width:900px){.landing-nav-brand{order:1}.landing-nav-secondary{order:2;justify-content:flex-start}.landing-nav-cta{order:3;display:inline-flex;width:auto;margin-left:auto;grid-template-columns:none}.landing-nav-lang{order:4;margin-left:0}}.landing-hero{display:grid;grid-template-columns:minmax(0,1fr);position:relative;overflow:hidden;max-width:1120px;margin:0 auto;padding:var(--space-6) var(--space-5) var(--space-8);gap:var(--space-5);justify-items:center}@media(min-width:900px){.landing-hero{grid-template-columns:minmax(16rem,.9fr) minmax(0,1.2fr);align-items:center;justify-items:stretch;gap:var(--space-8);padding:var(--space-8) var(--space-6) var(--space-8)}}.landing-hero-copy{display:flex;flex-direction:column;justify-content:center;gap:var(--space-3);max-width:32rem;width:100%;position:relative;z-index:2;animation:landing-fade-up .65s ease both}.landing-hero-copy .brand-kicker{color:var(--color-primary);margin:0}@media(max-width:899px){.landing-hero-copy{text-align:center;align-items:center}.landing-hero-lead,.landing-hero-pilot{max-width:28rem}.landing-hero-cta{justify-content:center}}.landing-hero-brand{margin:0;font-size:clamp(2.5rem,6.5vw,3.75rem);line-height:.98;letter-spacing:-.04em;font-weight:700;color:var(--color-text)}.landing-hero-lead{margin:0;color:var(--color-text-muted);font-size:clamp(1rem,2vw,1.12rem);line-height:1.5;max-width:28rem}.landing-hero-pilot{margin:0;max-width:28rem;color:var(--color-text);font-size:.9rem;line-height:1.45}.landing-hero-pilot a{color:var(--color-primary);font-weight:600}.landing-hero-cta{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.landing-hero-cta .primary-btn,.landing-hero-cta .ghost-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:2.25rem;border-radius:var(--radius-sm)}.landing-hero-media{position:relative;margin:0;max-width:52rem;width:100%;justify-self:center;animation:landing-fade-in .9s ease .12s both}.landing-hero-media:before{content:"";position:absolute;top:12%;right:-6%;bottom:-8%;left:8%;background:color-mix(in srgb,var(--color-primary-soft) 55%,transparent);border-radius:var(--radius-lg);z-index:0}.landing-hero-img{position:relative;z-index:1;display:block;width:100%;height:auto;max-height:28rem;object-fit:cover;object-position:top center;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--color-surface-1);box-shadow:var(--shadow-md)}.landing-section{display:grid;gap:var(--space-5);padding:var(--space-8) var(--space-5);max-width:1100px;margin:0 auto;align-items:center}.landing-section-band{width:100%;background:color-mix(in srgb,var(--color-surface-1) 70%,transparent);border-block:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.landing-section-band .landing-section{padding-block:var(--space-8)}@media(min-width:860px){.landing-section{grid-template-columns:1fr 1.15fr;gap:var(--space-8);padding-inline:var(--space-6)}.landing-section-flip .landing-section-copy{order:2}.landing-section-flip .landing-shot{order:1}}.landing-section-copy h2{font-size:clamp(1.35rem,2.6vw,1.7rem);letter-spacing:-.025em;margin:0 0 var(--space-3);font-weight:700}.landing-section-copy p{margin:0;color:var(--color-text-muted);font-size:1rem;line-height:1.55;max-width:34rem}.landing-shot{margin:0;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--color-surface-1);box-shadow:var(--shadow-sm);overflow:hidden}.landing-shot img{display:block;width:100%;height:auto;max-height:32rem;object-fit:cover;object-position:top center}.landing-ai{padding:var(--space-8) var(--space-5);border-block:1px solid color-mix(in srgb,var(--line) 70%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary-soft) 75%,transparent),color-mix(in srgb,var(--color-surface-1) 85%,transparent))}.landing-ai-inner{max-width:720px;margin:0 auto;text-align:center}.landing-ai-inner h2{font-size:clamp(1.35rem,2.6vw,1.7rem);letter-spacing:-.025em;margin:0 0 var(--space-3);font-weight:700}.landing-ai-inner p{margin:0;color:var(--color-text-muted);font-size:1rem;line-height:1.55}.landing-more{max-width:880px;margin:0 auto;padding:var(--space-6) var(--space-5) var(--space-8)}.landing-more h2{font-size:clamp(1.35rem,2.6vw,1.7rem);letter-spacing:-.025em;margin:0 0 var(--space-2)}.landing-more-lead{margin:0 0 var(--space-5);color:var(--color-text-muted)}.landing-more-list{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-2);grid-template-columns:1fr}@media(min-width:720px){.landing-more-list{grid-template-columns:1fr 1fr;gap:var(--space-3)}}.landing-more-list li{padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--color-surface-1);font-size:.95rem;line-height:1.45;color:var(--color-text);box-shadow:var(--shadow-sm)}.landing-seo{max-width:880px;margin:0 auto;padding:var(--space-4) var(--space-5) var(--space-8)}.landing-seo h2{font-size:clamp(1.35rem,2.6vw,1.7rem);letter-spacing:-.025em;margin:0 0 var(--space-2)}.landing-seo-lead{margin:0 0 var(--space-5);color:var(--color-text-muted)}.landing-seo-sub{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:var(--space-5) 0 var(--space-3);color:var(--color-text-subtle)}.landing-seo-list{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-2)}.landing-seo-list li{padding:0;border:none;font-size:.9rem}.landing-seo-list a,.landing-seo-list .landing-seo-link{display:inline-flex;align-items:center;padding:.4rem .7rem;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--color-surface-1);color:var(--color-primary);font-weight:600;text-decoration:none;font-size:.84rem;transition:background .12s ease,border-color .12s ease}.landing-seo-list a:hover,.landing-seo-list .landing-seo-link:hover{background:var(--color-primary-soft);border-color:color-mix(in srgb,var(--color-primary) 28%,var(--line));text-decoration:none}.landing-glossary-body{max-width:880px;margin:0 auto;padding:var(--space-5) var(--space-5) var(--space-8)}.landing-footer-cta{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-8) var(--space-5);padding-bottom:max(var(--space-8),env(safe-area-inset-bottom));border-top:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--color-primary-soft) 55%,transparent),color-mix(in srgb,var(--color-surface-2) 80%,transparent))}.landing-footer-cta h2{font-size:clamp(1.35rem,2.6vw,1.7rem);letter-spacing:-.025em;margin:0 0 var(--space-2)}.landing-footer-cta>p{margin:0 0 var(--space-4);max-width:36rem;color:var(--color-text-muted)}.landing-footer-cta a:not(.primary-btn):not(.ghost-btn){color:var(--color-primary);font-weight:600}.landing-footer-login-hint{margin:0 0 var(--space-4)!important;font-size:.92rem}.landing-footer-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center}.landing-footer-actions .primary-btn,.landing-footer-actions .ghost-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:2.25rem;border-radius:var(--radius-sm)}.landing-footer-cta .landing-disclaimer{margin:var(--space-5) 0 0;max-width:32rem;color:var(--color-text-muted);font-size:.84rem;line-height:1.45;text-align:center}@keyframes landing-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes landing-fade-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.landing-hero-copy,.landing-hero-media{animation:none!important;opacity:1;transform:none}}@media(max-width:720px){.landing-nav{padding:var(--space-2) var(--space-3);padding-top:max(var(--space-2),env(safe-area-inset-top))}.landing-nav-cta .ghost-btn,.landing-nav-cta .primary-btn{min-height:2.35rem;height:2.35rem}.landing-hero{padding:var(--space-5) var(--space-3) var(--space-6);gap:var(--space-4)}.landing-hero-brand{font-size:clamp(2.15rem,11vw,2.85rem)}.landing-hero-img,.landing-shot img{max-height:16rem}.landing-section,.landing-section-band .landing-section{padding:var(--space-6) var(--space-3);gap:var(--space-4)}.landing-more,.landing-seo,.landing-footer-cta,.landing-ai{padding-inline:var(--space-3)}.landing-footer-actions{width:100%;flex-direction:column}.landing-footer-actions .primary-btn,.landing-footer-actions .ghost-btn,.landing-hero-cta .primary-btn,.landing-hero-cta .ghost-btn{width:100%;justify-content:center}}@media(max-width:480px){.landing-nav-name{font-size:1.02rem}}
