:root,[data-theme=night]{--app-bg: #0d1415;--app-bg-soft: #111b1d;--surface: #1a2426;--surface-muted: #0d1415;--surface-raised: #243033;--text: #edf7f3;--text-secondary: #7a9490;--accent: #4db8a0;--accent-soft: rgba(77, 184, 160, .15);--gain: #4db880;--gain-soft: rgba(77, 184, 128, .15);--loss: #e87070;--loss-soft: rgba(232, 112, 112, .15);--warning: #e8a44a;--warning-soft: rgba(232, 164, 74, .15);--border: rgba(255, 255, 255, .07);--shadow: rgba(0, 0, 0, .4);--chart-series-1: #4db8a0;--chart-series-2: #7b6cf6;--chart-series-3: #e8a44a;--chart-series-4: #e87070;--chart-series-5: #5bb8e8;--chart-series-6: #b8d44d;--chart-series-7: #d44db8;--chart-series-8: #d4a44d;--chart-grid: rgba(255, 255, 255, .06);--chart-tooltip-bg: #1a2426}[data-theme=day]{--app-bg: #f7f6f1;--app-bg-soft: #fcfbf7;--surface: #fffefa;--surface-muted: #f7f6f1;--surface-raised: #fffefa;--text: #20251f;--text-secondary: #697265;--accent: #3e6f3c;--accent-soft: rgba(62, 111, 60, .12);--gain: #39713d;--gain-soft: rgba(57, 113, 61, .12);--loss: #a64c3b;--loss-soft: rgba(166, 76, 59, .12);--warning: #9b6a22;--warning-soft: rgba(155, 106, 34, .12);--border: rgba(64, 73, 56, .14);--shadow: rgba(44, 50, 39, .08);--chart-series-1: #4db8a0;--chart-series-2: #7b6cf6;--chart-series-3: #e8a44a;--chart-series-4: #e87070;--chart-series-5: #5bb8e8;--chart-series-6: #b8d44d;--chart-series-7: #d44db8;--chart-series-8: #d4a44d;--chart-grid: rgba(0, 0, 0, .06);--chart-tooltip-bg: #ffffff}[data-theme=day]{--app-bg: #F1EFE9;--app-bg-soft: #F4F3EF;--surface: #ffffff;--surface-muted: #F4F3EF;--surface-raised: #EFEDE8;--text: #14181A;--text-secondary: #6E5B4B;--accent: #3FAE72;--accent-ink: #0B2018;--accent-soft: #E4F5EB;--accent-soft-strong: #D8EFE1;--tertiary: #E3E0D7;--tertiary-soft: #F4F3EF;--gain: #2E8A5B;--gain-soft: rgba(46, 138, 91, .14);--loss: #B5502C;--loss-soft: rgba(181, 80, 44, .14);--warning: #7C5A18;--warning-soft: #FBF1DC;--stale-ink: #9A4526;--stale-soft: #F7E9E2;--link: #3C7DD9;--link-strong: #2A62B0;--link-soft: #E7F0FB;--border: transparent;--shadow: rgba(20, 24, 26, .06);--radius-lg: 26px;--radius-md: 20px;--radius-sm: 14px;--pill-radius: 999px;--font-sans: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--chart-series-1: #3C7DD9;--chart-series-2: #38BDF8;--chart-series-3: #E9B44C;--chart-series-4: #F97316;--chart-series-5: #3FAE72;--chart-series-6: #94A3B8;--chart-series-7: #B5502C;--chart-series-8: #6E5B4B;--chart-grid: rgba(20, 24, 26, .07);--chart-tooltip-bg: #ffffff}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{background-color:var(--app-bg);color:var(--text);font-family:var(--font-sans, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .2s ease,color .2s ease}*,*:before,*:after{transition-property:background-color,border-color,color,box-shadow;transition-duration:.2s;transition-timing-function:ease}.no-transition{transition:none!important}.app-layout{max-width:1440px;margin:0 auto;padding:clamp(16px,3vw,40px)}.app-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:16px}.app-header-brand{display:flex;flex-direction:column;gap:2px}.app-header-title{font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--text)}.app-header-subtitle{font-size:12px;color:var(--text-secondary)}.app-header-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.app-header-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.sync-btn{height:32px;padding:0 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,opacity .15s}.sync-btn:hover:not(:disabled){background:var(--surface-raised)}.sync-btn:disabled,.sync-btn.syncing{opacity:.5;cursor:not-allowed}.sync-status{font-size:12px;color:var(--text-secondary);margin:0;text-align:right;min-height:1em}.app-grid{display:grid;grid-template-columns:1fr;gap:24px;margin-top:24px}@media(min-width:900px){.app-grid{grid-template-columns:1fr 1fr}.right-col{position:sticky;top:24px;height:fit-content}}.left-col,.right-col{display:flex;flex-direction:column;gap:0}.health-bar{background:var(--surface);border-bottom:1px solid var(--border);padding:8px clamp(16px,3vw,40px);font-size:12px;display:flex;gap:16px;align-items:center;flex-wrap:wrap}.health-bar-item{display:flex;align-items:center;gap:6px;color:var(--text-secondary)}.panel{background:var(--surface);border-radius:var(--radius-lg, 12px);padding:24px;box-shadow:0 2px 12px var(--shadow)}.surface-card{background:var(--surface);border-radius:var(--radius-lg, 20px);box-shadow:0 2px 12px var(--shadow)}.panel+.panel{margin-top:16px}.panel-eyebrow{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:6px}.panel-heading{font-size:20px;font-weight:700;margin-bottom:20px}.metric-row{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:20px}.metric{display:flex;flex-direction:column;gap:4px}.metric-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.metric-value{font-size:24px;font-weight:700;line-height:1.1}.metric-value.gain{color:var(--gain)}.metric-value.loss{color:var(--loss)}.metric-value.neutral{color:var(--text)}.metric-delta{font-size:12px;font-weight:600}.metric-delta.gain{color:var(--gain)}.metric-delta.loss{color:var(--loss)}.pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;line-height:1.4}.pill.connected{background:var(--gain-soft);color:var(--gain)}.pill.stale,.pill.partial{background:var(--warning-soft);color:var(--warning)}.pill.error{background:var(--loss-soft);color:var(--loss)}.pill.disconnected{background:var(--surface-raised);color:var(--text-secondary)}.pill-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.data-table{display:grid;font-size:13px;width:100%}.data-table-header{position:sticky;top:0;background:var(--surface);font-size:11px;text-transform:uppercase;color:var(--text-secondary);font-weight:600;padding:8px 12px;border-bottom:1px solid var(--border);display:grid;align-items:center;z-index:1}.data-table-row{padding:10px 12px;border-bottom:1px solid var(--border);display:grid;align-items:center}.data-table-row:last-child{border-bottom:none}.data-table-row:hover{background:var(--surface-raised)}.btn{padding:8px 16px;border-radius:var(--radius-sm, 8px);border:none;cursor:pointer;font-size:13px;font-weight:600;transition:background .15s ease;display:inline-flex;align-items:center;gap:6px;line-height:1}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary{background:var(--accent);color:var(--accent-ink, #fff)}.btn-primary:hover{filter:brightness(1.1)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--surface-raised)}.btn-pill-primary,.btn-pill-secondary,.btn-pill-tertiary{height:44px;padding:0 22px;border-radius:var(--pill-radius);border:none}.btn-pill-primary{background:var(--accent);color:var(--accent-ink, #0B2018)}.btn-pill-primary:hover{filter:brightness(1.05)}.btn-pill-secondary{background:var(--accent-soft-strong, var(--accent-soft));color:var(--gain)}.btn-pill-secondary:hover{filter:brightness(.98)}.btn-pill-tertiary{background:var(--tertiary, var(--surface-raised));color:var(--text)}.btn-pill-tertiary:hover{filter:brightness(.98)}.segmented-control{display:inline-flex;background:var(--surface-muted);border-radius:8px;padding:3px;gap:2px}.segmented-control button{padding:5px 12px;border-radius:6px;border:none;cursor:pointer;font-size:12px;font-weight:600;background:transparent;color:var(--text-secondary);transition:all .15s ease;white-space:nowrap}.segmented-control button:hover{color:var(--text)}.segmented-control button.active{background:var(--surface-raised);color:var(--text);box-shadow:0 1px 4px var(--shadow)}.segmented-control button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.analytics-chart-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.comparison-toggle{min-height:34px;display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-raised);color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap}.comparison-toggle:hover{color:var(--text);border-color:var(--text-secondary)}.comparison-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.comparison-toggle-indicator{width:10px;height:10px;border:2px solid currentColor;border-radius:50%;background:transparent}.comparison-toggle[aria-pressed=true]{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.comparison-toggle[aria-pressed=true] .comparison-toggle-indicator{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 2px var(--surface-raised)}.trend-tooltip{min-width:190px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface-raised);color:var(--text);box-shadow:0 8px 24px var(--shadow);font-size:12px}.trend-tooltip>strong{display:block;margin-bottom:7px}.trend-tooltip-row{display:flex;justify-content:space-between;gap:18px;margin-top:5px}.trend-tooltip-source{margin-top:2px;color:var(--text-secondary);font-size:11px}.trend-pnl-positive{color:var(--gain)}.trend-pnl-negative{color:var(--loss)}.trend-legend{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:10px;margin-bottom:5px;color:var(--text-secondary);font-size:12px}.trend-legend>span{display:inline-flex;align-items:center;gap:7px}.trend-key{display:inline-block;width:18px;height:0;border-top:3px solid var(--accent);border-radius:2px}.trend-key-invested{border-top-width:2px;border-top-style:dashed;border-top-color:var(--chart-series-2)}.trend-explainer{margin-bottom:24px;color:var(--text-secondary);font-size:11px;line-height:1.5;opacity:.82}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal{background:var(--surface);border-radius:var(--radius-lg, 16px);padding:28px;max-width:560px;width:90%;max-height:80vh;overflow-y:auto;position:relative;box-shadow:0 8px 40px var(--shadow)}.modal-close{position:absolute;top:16px;right:16px;background:transparent;border:none;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;padding:4px;border-radius:6px}.modal-close:hover{background:var(--surface-raised);color:var(--text)}.modal-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.modal-title{font-size:18px;font-weight:700;margin-bottom:16px;padding-right:32px}.news-card{background:var(--surface-muted);border-radius:8px;padding:14px;cursor:pointer;border:1px solid transparent;transition:border-color .15s ease}.news-card:hover{border-color:var(--accent-soft)}.news-card+.news-card{margin-top:8px}.news-card-title{font-size:14px;font-weight:600;margin-bottom:6px;line-height:1.4;color:var(--text)}.news-card-body{font-size:13px;color:var(--text-secondary);margin-bottom:8px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.news-card-meta{font-size:11px;color:var(--text-secondary);display:flex;gap:8px;align-items:center}.tab-list{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--border);padding-bottom:0;overflow-x:auto;scrollbar-width:none}.tab-list::-webkit-scrollbar{display:none}.tab{padding:8px 16px;border-radius:8px 8px 0 0;font-size:13px;font-weight:600;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:color .15s ease;border-bottom:2px solid transparent;margin-bottom:-1px}.tab:hover{color:var(--text)}.tab.active{color:var(--accent);border-bottom:2px solid var(--accent)}.tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chat-launcher{position:fixed;bottom:24px;right:24px;width:48px;height:48px;border-radius:50%;background:var(--accent);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px var(--shadow);z-index:100;transition:transform .15s ease,filter .15s ease}.chat-launcher:hover{filter:brightness(1.1);transform:scale(1.05)}.chat-launcher:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.chat-messages{display:flex;flex-direction:column;gap:12px;max-height:360px;overflow-y:auto;margin-bottom:16px;padding-right:4px;scroll-behavior:smooth}.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.chat-bubble{padding:10px 14px;border-radius:12px;font-size:13px;max-width:85%;line-height:1.5}.chat-bubble.user{background:var(--accent-soft);margin-left:auto;border-radius:12px 12px 0;color:var(--text)}.chat-bubble.assistant{background:var(--surface-muted);border-radius:12px 12px 12px 0;color:var(--text)}.chat-bubble.assistant.is-error{border:1px solid var(--warning-soft, var(--warning))}.chat-input-row{display:flex;gap:8px;align-items:flex-end}.chat-input{flex:1;padding:10px 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface-muted);color:var(--text);font-size:13px;font-family:inherit;resize:none;min-height:40px;max-height:120px;line-height:1.5}.chat-input::placeholder{color:var(--text-secondary)}.chat-input:focus{outline:none;border-color:var(--accent)}.chat-evidence{margin-top:8px;padding:8px 10px;border-radius:6px;background:var(--surface-raised);font-size:11px;color:var(--text-secondary)}.chat-evidence-list{list-style:none;display:flex;flex-direction:column;gap:2px;margin-top:4px}.chat-privacy-notice{margin-top:8px;font-size:11px;color:var(--text-secondary);padding:6px 10px;border-radius:6px;background:var(--accent-soft);border-left:2px solid var(--accent)}.chart-frame{width:100%;overflow:hidden}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;color:var(--text-secondary)}.loading-spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.text-gain{color:var(--gain)}.text-loss{color:var(--loss)}.text-warning{color:var(--warning)}.text-secondary{color:var(--text-secondary)}.text-accent{color:var(--accent)}.font-mono{font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.alloc-bar{height:4px;border-radius:2px;background:var(--accent);min-width:2px;transition:width .3s ease}.alloc-row-swatch{width:8px;height:8px;border-radius:2px;flex-shrink:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}button,input,select,textarea{font:inherit}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.55}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-layout,.app-grid,.left-col,.right-col,.panel{min-width:0}.app-grid{align-items:start}@media(min-width:1080px){.app-grid{grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr)}}.btn-secondary{background:var(--surface-raised);border:1px solid var(--border);color:var(--text)}.btn-secondary:hover:not(:disabled){filter:brightness(.97);border-color:var(--accent)}.btn-danger{background:var(--loss);color:#fff}.btn-ghost.danger{color:var(--loss)}.icon-btn{width:38px;height:38px;padding:0;justify-content:center;flex:0 0 auto;border-radius:var(--pill-radius)}.icon-spin{animation:spin .8s linear infinite}.control-help{max-width:420px;min-height:18px;color:var(--text-secondary);font-size:11px;text-align:right}.operation-status,.warning-stack{display:flex;flex-direction:column;gap:6px;margin-top:14px}.operation-status{padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-secondary);font-size:12px}.overview-skeleton,.page-error{margin-top:24px;min-height:240px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.overview-skeleton{display:grid;place-items:center;color:var(--text-secondary)}.page-error{display:flex;align-items:center;gap:18px;padding:28px;color:var(--loss)}.page-error>div{flex:1}.page-error h2{color:var(--text);font-size:20px;margin-bottom:4px}.page-error p{color:var(--text-secondary);font-size:13px}.page-inline-error{margin-top:20px}.portfolio-hero{margin-top:24px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(140deg,var(--surface),var(--app-bg-soft));box-shadow:0 4px 24px var(--shadow);overflow:hidden}.portfolio-hero-main{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:clamp(22px,4vw,38px)}.portfolio-label{color:var(--text-secondary);font-size:14px;font-weight:600}.portfolio-net-worth{margin:3px 0 4px;color:var(--text);font-size:clamp(36px,6vw,58px);font-weight:800;letter-spacing:-.045em;line-height:1.05}.portfolio-gain{font-size:14px;font-weight:700}.portfolio-gain span{color:var(--text-secondary);font-weight:500}.hero-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.summary-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.summary-metrics>div{padding:16px clamp(18px,3vw,32px)}.summary-metrics>div+div{border-left:1px solid var(--border)}.summary-metrics dt{color:var(--text-secondary);font-size:11px;letter-spacing:.05em;text-transform:uppercase}.summary-metrics dd{margin-top:2px;font-size:18px;font-weight:700}.provenance-banner{padding:16px clamp(18px,3vw,32px);background:var(--gain-soft)}.provenance-banner.is-warning{background:var(--warning-soft)}.provenance-summary{display:flex;align-items:center;gap:10px}.provenance-summary>div{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}.provenance-summary strong{font-size:13px}.provenance-summary span,.source-list,.provenance-errors,.fx-provenance{color:var(--text-secondary);font-size:11px}.fx-provenance{margin-top:8px}.source-list{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:10px;list-style:none}.source-list li{display:inline-flex;align-items:center;gap:5px}.source-list li.is-warning,.source-error{color:var(--warning)}.provenance-errors{display:flex;flex-direction:column;gap:3px;margin-top:10px;color:var(--warning)}.section-heading-row,.asset-detail-header,.asset-trend-heading,.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.section-heading-row .panel-heading{margin-bottom:0}.asset-toolbar{display:flex;align-items:end;gap:12px;margin:20px 0}.search-field{flex:1;min-width:180px;display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;border:1px solid var(--border);border-radius:9px;background:var(--surface-muted);color:var(--text-secondary)}.search-field:focus-within{border-color:var(--accent)}.search-field input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--text)}.select-field,.field{display:flex;flex-direction:column;gap:5px;color:var(--text-secondary);font-size:11px;font-weight:600}.select-field select,.field input,.field select,.field textarea{width:100%;min-width:0;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);color:var(--text)}.select-field select,.field input,.field select{min-height:40px;padding:0 10px}.field textarea{padding:10px;resize:vertical}.inline-notice,.inline-error,.inline-warning{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-radius:8px;font-size:12px}.inline-notice{background:var(--gain-soft);color:var(--gain)}.inline-error{background:var(--loss-soft);color:var(--loss)}.inline-warning{background:var(--warning-soft);color:var(--warning)}.inline-notice a,.inline-error button{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:inherit;font-weight:700;cursor:pointer}.state-card{display:flex;align-items:center;gap:12px;padding:18px;border:1px solid var(--border);border-radius:10px;color:var(--text-secondary)}.state-card>div{flex:1}.state-card p{margin-top:3px;font-size:12px}.state-card.is-error{border-color:var(--loss-soft);color:var(--loss)}.asset-skeleton{min-height:180px;display:grid;place-items:center;color:var(--text-secondary)}.empty-state{padding:42px 20px;text-align:center;border:1px dashed var(--border);border-radius:12px}.empty-state.compact{padding:24px 16px}.empty-icon{width:48px;height:48px;display:grid;place-items:center;margin:0 auto 12px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.empty-state h3{font-size:16px}.empty-state p{max-width:500px;margin:5px auto 16px;color:var(--text-secondary);font-size:13px}.asset-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.portfolio-group-list{display:grid;gap:12px;margin-top:16px}.portfolio-group{overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--surface-muted)}.portfolio-group.is-expanded{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.portfolio-group-header{display:flex;align-items:stretch;gap:8px;padding:4px}.portfolio-group-toggle{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;flex:1 1 auto;min-width:0;gap:10px;padding:12px;border:0;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.portfolio-group-toggle:hover,.portfolio-group-toggle:focus-visible{background:var(--app-bg-soft)}.portfolio-group-chevron{display:grid;place-items:center;color:var(--accent);transition:transform .16s ease}.portfolio-group.is-expanded .portfolio-group-chevron{transform:rotate(180deg)}.portfolio-group-heading{display:flex;min-width:0;flex-direction:column;gap:2px}.portfolio-group-heading strong,.portfolio-group-heading small,.portfolio-group-heading span{overflow-wrap:anywhere}.portfolio-group-heading small,.portfolio-group-heading span,.portfolio-group-summary small{color:var(--text-secondary);font-size:11px}.portfolio-group-summary{display:flex;min-width:110px;flex-direction:column;align-items:flex-end;gap:2px}.portfolio-group-edit{align-self:center;margin-right:4px;white-space:nowrap}.portfolio-group-content{padding:0 12px 12px;border-top:1px solid var(--border)}.portfolio-cash-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 0;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-raised, var(--surface))}.portfolio-cash-row span{display:flex;min-width:0;flex-direction:column;gap:2px}.portfolio-cash-row small{color:var(--text-secondary);font-size:11px}.portfolio-group-empty{padding:18px 4px 6px;color:var(--text-secondary);font-size:13px}.asset-card{min-width:0;border:1px solid var(--border);border-radius:11px;background:var(--surface-muted);overflow:hidden}.portfolio-group-content .asset-card{border-color:var(--tertiary, var(--border));background:var(--surface);box-shadow:0 1px 0 var(--shadow)}.portfolio-group-content .asset-card:hover{border-color:var(--accent)}.asset-card.is-selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.asset-card-main{width:100%;padding:14px;border:0;background:transparent;color:var(--text);cursor:pointer;text-align:left}.asset-card-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.asset-card-title-row>span:first-child{min-width:0;display:flex;flex-direction:column}.asset-card-title-row strong,.asset-card-title-row small{overflow-wrap:anywhere}.asset-card-title-row small{color:var(--text-secondary);font-size:11px}.source-pill{max-width:150px;padding:2px 7px;border-radius:999px;background:var(--gain-soft);color:var(--gain);font-size:10px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-pill.stale{background:var(--warning-soft);color:var(--warning)}.asset-card-value{display:block;margin:14px 0 9px;font-size:23px;font-weight:750;letter-spacing:-.025em}.asset-card-value.is-unvalued{color:var(--text-secondary);font-size:18px;font-weight:650;letter-spacing:0}.asset-card-native{display:block;margin:-5px 0 9px;color:var(--text-secondary);font-size:11px}.asset-card-meta{display:flex;flex-wrap:wrap;gap:4px 10px;color:var(--text-secondary);font-size:10px}.asset-card-actions{display:flex;flex-wrap:wrap;gap:2px;padding:7px;border-top:1px solid var(--border)}.asset-card-actions .btn{flex:1 1 auto;justify-content:center;min-height:34px;padding:6px 8px;font-size:11px}.asset-detail{margin-top:18px;padding:20px;border:1px solid var(--border);border-radius:12px;background:var(--app-bg-soft)}.asset-detail h3{font-size:18px}.asset-detail-header>span{font-size:11px}.asset-detail-status-row{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.asset-detail-status{font-size:11px}.btn-compact.btn.btn-ghost{padding:6px 10px;font-size:11px;min-height:30px}.asset-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.asset-facts>div{min-width:0;padding:10px;border-radius:8px;background:var(--surface)}.asset-facts dt,.asset-trend-heading span{color:var(--text-secondary);font-size:10px;text-transform:uppercase}.asset-facts dd{margin-top:3px;font-size:12px;font-weight:650;overflow-wrap:anywhere}.asset-trend-heading{align-items:baseline}.asset-trend-heading h4{font-size:14px}.asset-trend-chart{width:100%;min-width:0;margin-top:8px}.chart-empty{padding:26px 10px;color:var(--text-secondary);font-size:12px;text-align:center}.valuation-ledger{display:flex;flex-direction:column;margin-top:8px}.valuation-ledger>div{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;padding:7px 0;border-top:1px solid var(--border);color:var(--text-secondary);font-size:11px}.valuation-ledger>div>:last-child{text-align:right}.valuation-ledger strong{color:var(--text)}.asset-notes{display:flex;flex-direction:column;gap:3px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border);color:var(--text-secondary);font-size:12px;white-space:pre-wrap}.dialog-header{margin-bottom:20px}.dialog-title{font-size:20px}.dialog-description{max-width:620px;margin-top:4px;color:var(--text-secondary);font-size:12px}.asset-form-dialog{max-width:760px}.small-dialog{max-width:520px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field.span-2{grid-column:1 / -1}.field-action{align-self:end;min-height:40px}.holding-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.holding-choice-grid .btn{min-height:104px;justify-content:flex-start;align-items:flex-start;flex-direction:column;gap:7px;text-align:left}.holding-choice-grid small{color:var(--text-secondary);font-size:11px;font-weight:400;line-height:1.45}.form-error{margin-top:14px;padding:9px 11px;border-radius:7px;background:var(--loss-soft);color:var(--loss);font-size:12px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.delete-copy{color:var(--text-secondary);font-size:14px}.assistant-dialog{width:min(620px,calc(100vw - 32px));max-width:620px;overflow:hidden}.provider-card{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--border);border-radius:9px;background:var(--surface-muted)}.provider-card.state-connected{border-color:var(--gain-soft)}.provider-icon{color:var(--text-secondary)}.state-connected .provider-icon{color:var(--gain)}.provider-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}.provider-copy strong{font-size:13px}.provider-copy span{color:var(--text-secondary);font-size:11px;overflow-wrap:anywhere}.assistant-model-picker{display:flex;flex-direction:column;gap:4px;margin:0 16px 8px}.assistant-provider-picker{display:flex;align-items:center;gap:8px;margin:0 16px 8px}.assistant-provider-picker label{flex:0 0 auto;color:var(--text-secondary);font-size:10px;font-weight:700}.assistant-provider-picker select{min-width:0;flex:1;min-height:34px;padding:0 9px;border:1px solid var(--border);border-radius:7px;background:var(--surface-muted);color:var(--text);font-size:11px}.assistant-model-picker label{color:var(--text-secondary);font-size:10px;font-weight:700}.assistant-model-picker select{width:100%;min-height:34px;padding:0 9px;border:1px solid var(--border);border-radius:7px;background:var(--surface-muted);color:var(--text);font-size:11px}.assistant-model-picker small{color:var(--text-secondary);font-size:9px}.assistant-chatgpt-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0 16px 8px}.assistant-chatgpt-action{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:32px;padding:0 8px;font-size:10px;text-align:center}.assistant-connect-state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:34px 18px 18px;text-align:center}.assistant-connect-state h3{font-size:16px}.assistant-connect-state p{max-width:420px;color:var(--text-secondary);font-size:12px}.assistant-privacy{display:flex;align-items:center;gap:6px;margin:12px 0;color:var(--text-secondary);font-size:11px}.assistant-empty>p{margin-bottom:12px;color:var(--text-secondary);font-size:12px}.suggestion-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.suggestion-list button{min-width:0;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);color:var(--text);cursor:pointer;font-size:11px;text-align:left}.message-block{min-width:0}.chat-bubble{display:flex;flex-direction:column;overflow-wrap:anywhere}.chat-bubble small{margin-top:5px;color:var(--text-secondary);font-size:9px}.assistant-progress-loader{display:flex;align-items:flex-start;gap:9px;margin:8px 0 2px;padding:10px 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface-raised);color:var(--text-secondary);font-size:10px}.assistant-loader-spinner,.assistant-tool-spinner{flex:0 0 auto;color:var(--accent);animation:assistant-spin 1s linear infinite}.assistant-progress-content{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.assistant-progress-content strong{color:var(--text);font-size:10px}.assistant-progress-content>span{overflow-wrap:anywhere}.assistant-progress-tools{display:flex;flex-direction:column;gap:3px;margin:4px 0 1px;padding:0;list-style:none}.assistant-progress-tool{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:5px;align-items:center;min-width:0}.assistant-progress-tool span{overflow-wrap:anywhere;color:var(--text);font-size:9px}.assistant-progress-tool small,.assistant-progress-privacy{color:var(--text-secondary);font-size:9px}.assistant-progress-tool.status-completed{color:var(--gain)}.assistant-progress-tool.status-failed{color:var(--warning)}@keyframes assistant-spin{to{transform:rotate(360deg)}}.tool-strip{display:block;margin-top:6px;padding:8px 10px;border:1px solid var(--border);border-radius:7px;background:var(--surface-raised);color:var(--text-secondary);font-size:10px}.tool-strip-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.tool-strip-heading strong{color:var(--text);font-size:10px}.tool-strip-heading span{font-size:9px}.tool-activity-list{display:flex;flex-direction:column;gap:4px;margin-top:7px;padding:0;list-style:none}.tool-activity-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 8px;align-items:baseline;min-width:0}.tool-activity-item strong{overflow-wrap:anywhere;color:var(--text);font-size:10px}.tool-activity-status{display:inline-flex;align-items:center;gap:3px;white-space:nowrap;font-size:9px;font-weight:700}.tool-activity-item.status-completed .tool-activity-status{color:var(--gain)}.tool-activity-item.status-rejected .tool-activity-status,.tool-activity-item.status-missing .tool-activity-status,.tool-activity-item.status-unavailable .tool-activity-status{color:var(--warning)}.tool-activity-item small{grid-column:2;overflow-wrap:anywhere;color:var(--text-secondary);font-size:9px}.tool-safety-note{margin:7px 0 0;color:var(--warning);font-size:9px;line-height:1.4}.tool-strip.is-unverified{border-color:var(--warning-soft, var(--border))}.chat-provider-note{margin-top:6px;color:var(--text-secondary);font-size:9px}.provider-selected-label{color:var(--accent)!important;font-size:9px!important;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.chat-evidence summary{cursor:pointer;font-weight:700}.chat-evidence-list li{display:grid;grid-template-columns:auto 1fr;gap:2px 7px;padding:5px 0}.chat-evidence-list small{grid-column:1 / -1}.chat-launcher{width:auto;min-width:150px;height:46px;padding:0 14px;gap:8px;border-radius:999px;color:#fff;font-size:12px;font-weight:700}.assistant-state-dot{width:7px;height:7px;border-radius:50%;background:var(--warning);box-shadow:0 0 0 3px #ffffff29}.chat-launcher.is-connected .assistant-state-dot{background:#d7ffe9}.chat-input{min-width:0}@media(max-width:760px){.app-layout{padding:14px}.app-header,.portfolio-hero-main,.asset-toolbar,.page-error{align-items:stretch;flex-direction:column}.app-header-right,.control-help{align-items:stretch;text-align:left}.app-header-controls,.hero-actions{justify-content:flex-start}.import-btn{flex:1 1 auto}.portfolio-hero-main{padding:22px 18px}.hero-actions .btn{flex:1 1 160px;justify-content:center}.asset-card-grid{grid-template-columns:1fr}.portfolio-group-header{align-items:flex-start;flex-direction:column}.portfolio-group-toggle{grid-template-columns:auto minmax(0,1fr)}.portfolio-group-summary{grid-column:2;align-items:flex-start}.portfolio-group-edit{margin:0 8px 8px}.asset-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.right-col{position:static}.modal{width:calc(100vw - 24px);max-width:calc(100vw - 24px);padding:20px}}@media(max-width:480px){.app-layout{padding:10px 10px 72px}.panel{padding:16px}.app-header-controls{display:grid;grid-template-columns:1fr;width:100%}.segmented-control{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);width:100%;overflow-x:auto}.segmented-control button{min-width:0;padding:7px 8px}.portfolio-net-worth{font-size:clamp(32px,12vw,44px);overflow-wrap:anywhere}.summary-metrics{grid-template-columns:1fr}.summary-metrics>div+div{border-top:1px solid var(--border);border-left:0}.provenance-summary{align-items:flex-start}.source-list{flex-direction:column}.section-heading-row,.asset-detail-header,.asset-trend-heading{flex-wrap:wrap}.section-heading-row>.btn{width:100%;justify-content:center}.asset-toolbar{align-items:stretch}.search-field{min-width:0}.asset-card-actions .btn{flex-basis:calc(50% - 4px)}.asset-detail{padding:14px}.asset-facts,.form-grid,.suggestion-list{grid-template-columns:1fr}.field.span-2{grid-column:auto}.holding-choice-grid{grid-template-columns:1fr}.valuation-ledger>div{grid-template-columns:1fr auto}.valuation-ledger>div>:last-child{grid-column:1 / -1;text-align:left}.panel-heading-row{align-items:stretch!important;flex-direction:column}.accounts-table .data-table-header{display:none!important}.accounts-table .data-table-row{grid-template-columns:1fr!important;gap:7px!important;padding:12px 0}.accounts-table [role=cell]{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:right!important}.accounts-table [role=cell]:before{content:attr(data-label);color:var(--text-secondary);font-size:10px;font-weight:600;text-transform:uppercase}.accounts-table [role=cell]:first-child{align-items:flex-start;flex-direction:column;text-align:left!important}.accounts-table [role=cell]:first-child:before{content:none}.chat-launcher{right:10px;bottom:10px;width:44px;min-width:44px;height:44px;padding:0;gap:0}.chat-launcher-label{display:none}.chat-launcher .assistant-state-dot{position:absolute;top:5px;right:5px;width:6px;height:6px}.assistant-dialog{max-height:calc(100vh - 24px)}.chat-messages{max-height:42vh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html,body,#root{min-height:100%}.app-shell,.portfolio-scroll,.context-rail,.rail-pane,.portfolio-content,.assistant-panel,.assistant-connected,.market-updates-panel,.market-article-scroll{min-width:0;min-height:0}.app-shell{min-height:100vh;background:var(--app-bg)}.portfolio-scroll{background:var(--app-bg)}.app-layout{width:100%;max-width:none}.portfolio-content{display:flex;flex-direction:column;margin-top:24px}.context-rail{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);background:var(--app-bg-soft);border-left:1px solid var(--border)}.rail-pane{overflow:hidden}.market-rail-pane{border-bottom:1px solid var(--border)}.market-rail-pane>.panel,.market-rail-pane>.state-card{height:100%;margin:0;border-radius:0;box-shadow:none}.market-updates-panel{display:flex;flex-direction:column;overflow:hidden;padding:18px}.market-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex:0 0 auto}.market-panel-header .panel-heading{margin-bottom:12px;font-size:18px}.market-feed-kicker{display:flex;align-items:center;gap:6px}.market-not-live{padding:1px 5px;border-radius:999px;background:var(--warning-soft);color:var(--warning);font-size:8px;font-weight:800;letter-spacing:.05em}.market-freshness{display:flex;max-width:150px;flex-direction:column;align-items:flex-end;gap:2px;color:var(--text-secondary);font-size:9px;line-height:1.3;text-align:right}.market-freshness strong{color:var(--text);font-size:10px;font-weight:650}.market-updates-panel .tab-list{flex:0 0 auto;margin-bottom:10px}.market-updates-panel .tab{display:inline-flex;align-items:center;gap:5px;padding:7px 9px;font-size:11px}.tab-count{min-width:18px;padding:1px 5px;border-radius:999px;background:var(--surface-raised);color:var(--text-secondary);font-size:9px;line-height:1.4;text-align:center}.market-article-scroll{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding-right:5px;scrollbar-gutter:stable}.market-article-list{display:flex;flex-direction:column;gap:8px}.market-empty-state{padding:16px 0;color:var(--text-secondary);font-size:12px}.market-updates-panel .news-card{width:100%;padding:11px;text-align:left}.market-updates-panel .news-card+.news-card{margin-top:0}.market-updates-panel .news-card-title{margin-bottom:4px;font-size:12px}.market-updates-panel .news-card-meta{flex-wrap:wrap;gap:4px 6px;margin-top:5px!important;font-size:9px}.ticker-chip{padding:1px 5px;border-radius:4px;background:var(--accent-soft);color:var(--accent);font-size:9px;font-weight:700}.assistant-rail-pane{background:var(--surface)}.assistant-panel{display:flex;height:100%;flex-direction:column;overflow:hidden;background:var(--surface)}.auth-loading,.auth-page{min-height:100vh}.auth-loading{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--text-secondary);font-size:13px}.auth-page{display:grid;grid-template-columns:minmax(300px,.95fr) minmax(420px,1.05fr);background:radial-gradient(circle at 18% 22%,rgba(77,184,160,.14),transparent 34%),var(--app-bg)}.auth-story{display:flex;min-height:100vh;flex-direction:column;justify-content:space-between;padding:clamp(28px,6vw,78px);background:linear-gradient(145deg,#1a2426f0,#0d1415d9);border-right:1px solid var(--border)}[data-theme=day] .auth-story{background:linear-gradient(145deg,#edf2e7,#f7f6f1)}.auth-brand{display:flex;align-items:center;gap:10px;color:var(--text);font-size:21px;font-weight:800;letter-spacing:-.04em}.auth-brand-mark{display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(77,184,160,.4);border-radius:11px;color:var(--accent);background:var(--accent-soft)}.auth-story-copy{max-width:500px;margin:auto 0}.auth-story-copy .page-kicker{margin-bottom:16px}.auth-story-copy h1{max-width:490px;margin-bottom:18px;color:var(--text);font-size:clamp(38px,5vw,68px);line-height:.98;letter-spacing:-.065em}.auth-story-copy>p:last-child{max-width:370px;color:var(--text-secondary);font-size:15px}.auth-trust-row{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:11px}.auth-trust-row svg{color:var(--accent)}.auth-panel{display:grid;min-height:100vh;place-items:center;padding:32px 24px}.auth-card{width:min(100%,480px);padding:clamp(24px,4vw,42px);border:1px solid var(--border);border-radius:22px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 24px 80px var(--shadow)}.auth-card-header{margin-bottom:24px}.auth-eyebrow{margin-bottom:8px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.auth-card-header h2{margin-bottom:8px;color:var(--text);font-size:clamp(25px,3vw,32px);line-height:1.1;letter-spacing:-.04em}.auth-card-header>p:last-child{color:var(--text-secondary);font-size:13px}.auth-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-bottom:20px;padding:4px;border-radius:10px;background:var(--surface-muted)}.auth-mode-switch button{padding:9px 10px;border:0;border-radius:7px;color:var(--text-secondary);background:transparent;font-size:12px;font-weight:700;cursor:pointer}.auth-mode-switch button.is-active{color:var(--text);background:var(--surface-raised);box-shadow:0 2px 8px var(--shadow)}.auth-error{margin-bottom:16px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--loss) 35%,transparent);border-radius:9px;color:var(--loss);background:var(--loss-soft);font-size:12px}.google-button,.auth-submit{display:flex;width:100%;align-items:center;justify-content:center;gap:10px;min-height:44px;border-radius:9px;font-size:13px;font-weight:750;cursor:pointer}.google-button{border:1px solid var(--border);color:var(--text);background:var(--surface-raised)}.google-button:hover{border-color:var(--accent)}.google-g{display:grid;width:21px;height:21px;place-items:center;border-radius:50%;color:#4285f4;background:#fff;font-family:Arial,sans-serif;font-size:14px;font-weight:800}.auth-divider{display:flex;align-items:center;gap:10px;margin:19px 0;color:var(--text-secondary);font-size:10px;text-transform:uppercase;letter-spacing:.07em}.auth-divider:before,.auth-divider:after{height:1px;flex:1;background:var(--border);content:""}.auth-form{display:grid;gap:15px}.auth-field{display:grid;gap:6px;min-width:0;color:var(--text-secondary);font-size:11px;font-weight:700}.auth-field input{width:100%;min-height:42px;padding:0 12px;border:1px solid var(--border);border-radius:8px;outline:0;color:var(--text);background:var(--surface-muted);font:inherit;font-size:13px;font-weight:500}.auth-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.auth-field input::placeholder{color:color-mix(in srgb,var(--text-secondary) 75%,transparent)}.auth-input-wrap{position:relative;display:flex;align-items:center}.auth-input-wrap>svg{position:absolute;left:12px;color:var(--text-secondary);pointer-events:none}.auth-input-wrap input{padding-left:36px;padding-right:42px}.password-toggle{position:absolute;right:8px;display:grid;width:28px;height:28px;place-items:center;border:0;color:var(--text-secondary);background:transparent;cursor:pointer}.auth-field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-submit{margin-top:5px;border:0;color:#f4fff9;background:var(--accent)}.auth-submit:hover:not(:disabled){filter:brightness(1.08)}.auth-submit:disabled{cursor:wait;opacity:.65}.auth-legal{margin-top:20px;color:var(--text-secondary);font-size:10px;line-height:1.5;text-align:center}.auth-legal a,.privacy-back-link{color:var(--link, var(--accent));font-weight:700;text-decoration:none}.auth-legal a:hover,.privacy-back-link:hover{text-decoration:underline}.privacy-page{min-height:100vh;padding:28px clamp(18px,5vw,72px) 72px;background:var(--app-bg)}.privacy-header{display:flex;max-width:920px;margin:0 auto;align-items:center;justify-content:space-between;gap:18px}.privacy-brand{display:inline-flex;align-items:center;gap:10px;color:var(--text);font-size:21px;font-weight:800;letter-spacing:-.04em;text-decoration:none}.privacy-back-link{display:inline-flex;align-items:center;gap:6px;font-size:12px}.privacy-content{width:min(100%,760px);margin:72px auto 0}.privacy-content .page-kicker{display:inline-flex;align-items:center;gap:6px;margin-bottom:14px}.privacy-content h1{max-width:700px;color:var(--text);font-size:clamp(38px,6vw,68px);line-height:1;letter-spacing:-.06em}.privacy-lede{margin-top:14px;color:var(--text-secondary);font-size:13px}.privacy-content section{margin-top:42px;padding-top:24px;border-top:1px solid var(--border)}.privacy-content h2{margin-bottom:10px;color:var(--text);font-size:18px;letter-spacing:-.02em}.privacy-content p,.privacy-content li{max-width:700px;color:var(--text-secondary);font-size:14px;line-height:1.75}.privacy-content ul{display:grid;gap:10px;padding-left:20px}.privacy-content strong{color:var(--text)}.user-menu{display:flex;align-items:center;gap:8px;margin-left:4px;padding-left:10px;border-left:1px solid var(--border)}.user-avatar{display:grid;width:27px;height:27px;place-items:center;border-radius:50%;color:var(--accent);background:var(--accent-soft);font-size:11px;font-weight:800}.user-menu-name{display:grid;color:var(--text);font-size:11px;font-weight:700;line-height:1.1}.user-menu-name small{margin-top:3px;color:var(--text-secondary);font-size:9px;font-weight:600;text-transform:capitalize}.assistant-panel-content{display:flex;min-width:0;min-height:0;flex:1 1 auto;flex-direction:column;overflow:hidden}.assistant-panel-content.is-collapsed{display:none}.assistant-panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px 10px;flex:0 0 auto}.assistant-panel-heading{min-width:0}.assistant-collapse-btn{flex:0 0 auto}.assistant-panel-header h2{font-size:18px;line-height:1.2}.rail-eyebrow{display:block;margin-bottom:2px;color:var(--text-secondary);font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.connection-badge{display:inline-flex;align-items:center;gap:6px;max-width:48%;padding:4px 7px;border:1px solid var(--border);border-radius:999px;color:var(--text-secondary);font-size:9px;line-height:1.2}.connection-badge>span{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:var(--warning)}.connection-badge.is-connected>span{background:var(--gain)}.assistant-panel .provider-card{margin:0 16px 8px;padding:8px 9px;flex:0 0 auto}.assistant-panel .provider-copy strong{font-size:11px}.assistant-panel .provider-copy span{font-size:9px}.provider-actions{display:flex;align-items:center;gap:2px}.provider-action{min-height:32px;padding:0 6px;font-size:9px}.tool-call-list{display:flex;flex-direction:column;gap:5px;margin:7px 0 0;padding:0;list-style:none}.tool-call-disclosure{min-width:0;border:1px solid var(--border);border-radius:6px;background:var(--surface-muted)}.tool-call-disclosure.status-failed{border-color:var(--warning-soft, var(--warning))}.tool-call-disclosure summary{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:6px 8px;cursor:pointer;list-style-position:inside}.tool-call-disclosure summary::marker{color:var(--accent)}.tool-call-summary-name{min-width:0;overflow-wrap:anywhere;color:var(--text);font-size:10px}.tool-call-summary-status{display:inline-flex;align-items:center;flex:0 0 auto;gap:3px;color:var(--text-secondary);font-size:9px;white-space:nowrap}.tool-call-disclosure.status-completed .tool-call-summary-status{color:var(--gain)}.tool-call-disclosure.status-failed .tool-call-summary-status{color:var(--warning)}.tool-call-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 8px 8px}.tool-call-details>div{min-width:0}.tool-call-details strong{display:block;margin-bottom:3px;color:var(--text-secondary);font-size:9px;text-transform:uppercase;letter-spacing:.04em}.tool-call-details pre{max-height:220px;margin:0;padding:6px;overflow:auto;border:1px solid var(--border);border-radius:4px;background:var(--surface-raised);color:var(--text);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px;line-height:1.35;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:640px){.tool-call-details{grid-template-columns:1fr}}.assistant-chatgpt-action:disabled{cursor:not-allowed;opacity:.6}.sign-out-action{display:inline-flex;align-items:center;gap:3px;color:var(--text-secondary)}.assistant-status-message{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin:0 16px 8px;padding:7px 9px;flex:0 0 auto;font-size:10px}.assistant-status-message a{display:inline-flex;align-items:center;gap:3px;flex:0 0 auto;color:inherit;font-weight:700}.assistant-panel-body{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain}.assistant-panel .assistant-connect-state{justify-content:center;padding:16px 20px 20px}.assistant-panel .assistant-connect-state h3{font-size:14px}.assistant-panel .assistant-connect-state p{font-size:11px}.assistant-scope-note{display:flex;align-items:center;gap:5px}.assistant-connected{display:flex;flex:1 1 auto;flex-direction:column;overflow:hidden}.assistant-panel .assistant-privacy{margin:0;padding:4px 16px 8px;flex:0 0 auto;font-size:9px}.assistant-panel .chat-messages{max-height:none;margin:0;padding:4px 16px 10px;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.assistant-panel .assistant-empty>p{margin-bottom:8px;font-size:10px}.assistant-panel .suggestion-list{grid-template-columns:1fr;gap:5px}.assistant-panel .suggestion-list button{padding:7px 8px;font-size:10px}.assistant-panel .chat-bubble{max-width:92%;padding:8px 10px;font-size:11px}.assistant-panel .tool-strip,.assistant-panel .chat-evidence,.assistant-panel .chat-privacy-notice{font-size:9px}.assistant-panel .chat-input-row{padding:10px 16px 14px;flex:0 0 auto;border-top:1px solid var(--border);background:var(--surface)}.assistant-panel .chat-input{height:38px;min-height:38px;padding:8px 10px;font-size:11px}.assistant-panel .chat-input-row .icon-btn{width:38px;height:38px}.chat-error{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;font-size:10px}.chat-error button{border:0;background:transparent;color:inherit;cursor:pointer;font-weight:700}.chat-attachment-list{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.chat-attachment-list small,.chat-selected-file{display:inline-flex;align-items:center;gap:4px}.chat-selected-files{display:flex;flex-wrap:wrap;gap:6px;padding:8px 16px 0;border-top:1px solid var(--border);background:var(--surface)}.chat-selected-file{max-width:100%;padding:5px 7px;border:1px solid var(--border);border-radius:7px;color:var(--text-secondary);font-size:10px}.chat-selected-file span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-selected-file button{border:0;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:15px;line-height:1}.assistant-import-draft{margin-top:8px;padding:10px;border:1px solid var(--accent);border-radius:8px;background:var(--surface-muted)}.assistant-import-draft.is-applied{border-color:var(--gain)}.assistant-import-draft-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.assistant-import-draft-heading>div{display:flex;flex-direction:column;gap:3px}.assistant-import-draft-heading strong{color:var(--text);font-size:11px}.assistant-import-draft-heading small,.assistant-import-more,.assistant-import-warning{color:var(--text-secondary);font-size:9px;line-height:1.4}.assistant-import-draft-heading .btn{flex:0 0 auto;padding:6px 8px;font-size:9px}.assistant-import-draft-list{display:flex;flex-direction:column;gap:4px;margin:8px 0 0;padding:0;list-style:none}.assistant-import-draft-list li{display:flex;justify-content:space-between;gap:8px;font-size:9px}.assistant-import-draft-list span{color:var(--text-secondary)}.assistant-import-draft-list strong{overflow:hidden;color:var(--text);text-overflow:ellipsis;white-space:nowrap}.assistant-import-warning{margin:8px 0 0;color:var(--warning)}@media(min-width:900px){html,body,#root{height:100%;overflow:hidden}.app-shell{display:grid;grid-template-columns:minmax(0,2fr) minmax(340px,1fr);height:100vh;overflow:hidden}.portfolio-scroll{height:100vh;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.context-rail{height:100vh}}@media(max-width:899px){html,body,#root{height:auto;overflow:visible}.app-shell{display:block}.portfolio-scroll{overflow:visible}.context-rail{display:flex;flex-direction:column;border-top:1px solid var(--border);border-left:0}.rail-pane{overflow:hidden}.market-rail-pane{height:min(560px,72vh);min-height:420px}.assistant-rail-pane{height:min(680px,82vh);min-height:540px}.context-rail.is-collapsed .assistant-panel-header{min-height:64px}.context-rail.is-collapsed .connection-badge{display:none}}@media(max-width:480px){.app-layout{padding-bottom:24px}.market-updates-panel{padding:14px 10px}.market-panel-header{align-items:flex-start}.market-freshness{max-width:128px}.assistant-panel-header,.assistant-panel .chat-input-row{padding-right:10px;padding-left:10px}.assistant-panel .provider-card,.assistant-status-message{margin-right:10px;margin-left:10px}.assistant-panel .chat-messages,.assistant-panel .assistant-privacy{padding-right:10px;padding-left:10px}}.workspace-taskbar{z-index:2;display:flex;flex-direction:column;gap:22px;padding:18px 12px;background:var(--app-bg-soft);border-right:1px solid var(--border)}.workspace-taskbar-brand{display:grid;width:34px;height:34px;place-items:center;margin-left:8px;border-radius:9px;background:var(--accent);color:#fff;font-size:16px;font-weight:850}.workspace-taskbar-items{display:flex;flex-direction:column;gap:5px}.workspace-taskbar-item{display:flex;width:100%;align-items:flex-start;gap:10px;padding:11px 10px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--text-secondary);cursor:pointer;text-align:left}.workspace-taskbar-item:hover{background:var(--surface-raised);color:var(--text)}.workspace-taskbar-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.workspace-taskbar-item.is-selected{border-color:var(--accent-soft);background:var(--accent-soft);color:var(--accent)}.workspace-taskbar-copy{display:flex;min-width:0;flex-direction:column;gap:1px}.workspace-taskbar-copy strong{color:currentColor;font-size:12px}.workspace-taskbar-label-compact{display:none}.workspace-taskbar-copy small{color:var(--text-secondary);font-size:9px;line-height:1.3}.workspace-taskbar-note{margin-top:auto;padding:0 8px;color:var(--text-secondary);font-size:9px;letter-spacing:.07em;text-transform:uppercase}.market-workspace{margin-top:24px}.market-workspace .market-updates-panel{min-height:calc(100vh - 140px);padding:clamp(20px,3vw,34px);overflow:visible}.market-analysis-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.market-analysis-header .panel-heading{margin-bottom:7px;font-size:clamp(22px,2.2vw,28px);letter-spacing:-.03em}.assistant-collapsed-jump{background:var(--accent-soft, var(--surface-raised))}.market-heading-flourish{display:flex;align-items:center;gap:9px}.market-feed-kicker{display:flex;align-items:center;gap:7px;font-weight:750}.market-feed-kicker span{padding:2px 6px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:9px;letter-spacing:.03em;text-transform:none}.market-analysis-subtitle{max-width:660px;color:var(--text-secondary);font-size:13px}.market-refresh-actions{display:flex;width:min(180px,100%);flex:0 0 auto;flex-direction:column;align-items:flex-end;gap:6px}.market-refresh-actions .btn{min-width:132px;justify-content:center}.market-refresh-help{color:var(--text-secondary);font-size:10px;line-height:1.35;text-align:right}.market-freshness-row,.market-refresh-notice,.market-source-status{display:flex;align-items:center;gap:8px;margin-top:18px;padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);color:var(--text-secondary);font-size:11px}.market-freshness-row svg{color:var(--accent)}.market-stored-at{margin-left:auto;color:var(--text-secondary);white-space:nowrap}.market-refresh-notice{justify-content:space-between;color:var(--gain)}.market-refresh-notice.is-error{border-color:var(--loss-soft);background:var(--loss-soft);color:var(--loss)}.market-refresh-notice .btn{flex:0 0 auto}.market-source-status{align-items:flex-start;justify-content:space-between}.market-source-status>span{flex:0 0 auto;padding-top:3px;color:var(--text-secondary);font-size:10px;font-weight:750;text-transform:uppercase}.market-source-status>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.market-source-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border-radius:999px;background:var(--gain-soft);color:var(--gain);font-size:10px;font-weight:700;text-decoration:none}.market-source-chip small{color:inherit;font-size:9px;font-weight:500}.market-source-chip.is-error{background:var(--loss-soft);color:var(--loss)}.market-category-bar{margin-top:22px;border-bottom:1px solid var(--border)}.market-workspace .tab-list{margin-bottom:-1px}.market-workspace .tab{display:inline-flex;align-items:center;gap:6px;padding:9px 11px;font-size:12px}.market-workspace .tab-count{min-width:18px}.market-workspace .market-article-scroll{overflow:visible;margin-top:18px;padding:0}.market-workspace .market-article-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.market-workspace .news-card{display:flex;min-height:196px;flex-direction:column;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted)}.market-workspace .news-card:hover{border-color:var(--accent)}.news-card-topline,.news-card-footer,.news-card-actions,.dialog-tickers{display:flex;align-items:center;gap:7px}.news-card-topline{justify-content:space-between;color:var(--text-secondary);font-size:10px}.news-source{max-width:65%;overflow:hidden;color:var(--accent);font-weight:750;text-overflow:ellipsis;white-space:nowrap}.market-workspace .news-card-title{margin:10px 0 6px;font-size:15px;line-height:1.35}.market-workspace .news-card-body{display:-webkit-box;overflow:hidden;margin:0;color:var(--text-secondary);font-size:12px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3}.news-card-footer{justify-content:space-between;min-height:27px;margin-top:auto;padding-top:12px}.ticker-list{display:inline-flex;flex-wrap:wrap;gap:4px}.market-workspace .ticker-chip,.dialog-tickers .ticker-chip{padding:2px 6px;border-radius:4px;background:var(--accent-soft);color:var(--accent);font-size:9px;font-weight:750}.news-card-actions{margin-left:auto}.news-card-action{display:inline-flex;align-items:center;gap:3px;padding:4px 0;border:0;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:10px;font-weight:700;text-decoration:none}.news-card-action:hover,.news-card-action:focus-visible{color:var(--accent)}.market-state{display:flex;align-items:center;justify-content:center;gap:8px;min-height:260px;color:var(--text-secondary);font-size:12px;text-align:center}.market-empty-state{flex-direction:column}.market-empty-state strong{display:block;color:var(--text)}.market-empty-state p{margin-top:4px}.dialog-tickers{flex-wrap:wrap;margin-bottom:14px}.market-dialog-summary{color:var(--text);font-size:14px;line-height:1.7}.market-publisher-link{display:inline-flex;align-items:center;gap:6px;margin-top:20px;text-decoration:none}@media(min-width:900px){.app-shell{grid-template-columns:160px minmax(0,1fr) minmax(340px,.58fr)}.app-shell.assistant-collapsed{grid-template-columns:minmax(0,1fr) 56px}.workspace-taskbar{height:100vh;overflow-y:auto}.context-rail{display:block}.context-rail .assistant-panel{height:100%}.context-rail.is-collapsed .assistant-panel-header{height:100%;min-height:100%;flex-direction:column;justify-content:center;gap:12px;padding:16px 8px}.context-rail.is-collapsed .assistant-panel-heading,.context-rail.is-collapsed .connection-badge{display:none}}@media(max-width:899px){.workspace-taskbar{position:sticky;top:0;flex-direction:row;align-items:center;gap:10px;padding:8px 12px;border-right:0;border-bottom:1px solid var(--border)}.workspace-taskbar-brand{width:30px;height:30px;margin-left:0;font-size:14px}.workspace-taskbar-items{flex:1;flex-direction:row;overflow-x:auto}.workspace-taskbar-item{width:auto;flex:0 0 auto;align-items:center;padding:7px 9px}.workspace-taskbar-copy small,.workspace-taskbar-note{display:none}.workspace-taskbar-copy strong{font-size:11px}.market-workspace .market-updates-panel{min-height:0}}@media(max-width:640px){.market-analysis-header,.market-source-status{align-items:stretch;flex-direction:column}.market-refresh-actions{width:100%;align-items:flex-start}.market-refresh-help{text-align:left}.market-freshness-row{align-items:flex-start;flex-wrap:wrap}.market-stored-at{width:100%;margin-left:22px}.market-source-status>div{justify-content:flex-start}.market-workspace .market-article-list{grid-template-columns:1fr}}.app-shell{background:var(--app-bg)}.app-layout{padding:34px clamp(24px,3vw,44px) 64px}.orchard-page-header{align-items:flex-start;min-height:86px;padding:3px 2px 26px;border:0}.page-kicker{display:inline-flex;align-items:center;gap:6px;margin-bottom:3px;color:var(--accent);font-size:11px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.app-header-title{font-size:clamp(27px,3vw,34px);font-weight:780;letter-spacing:-.045em;line-height:1.06}.app-header-subtitle{margin-top:7px;font-size:13px}.app-header-controls{justify-content:flex-end;gap:8px}.orchard-page-header .segmented-control,.orchard-page-header .btn-secondary{border:1px solid var(--border);background:var(--surface);box-shadow:none}.orchard-page-header .segmented-control button.active{background:#efede8;color:var(--accent);box-shadow:none}.workspace-taskbar{gap:28px;padding:26px 20px 18px;background:#fff;border-right:1px solid var(--border)}.workspace-taskbar-brand{display:flex;width:auto;height:auto;align-items:center;gap:9px;margin:0;border-radius:0;background:transparent;color:#14181a}.barn-mark{display:grid;width:36px;height:36px;place-items:center;border:none;border-radius:var(--radius-sm);background:#efede8;color:var(--accent)}.barn-wordmark{font-family:var(--font-sans);font-size:21px;font-weight:700;letter-spacing:-.03em}.workspace-taskbar-nav{display:flex;flex-direction:column;gap:24px}.workspace-nav-group{display:grid;gap:7px}.workspace-nav-group-label{padding:0 10px;color:var(--text-secondary);font-size:9px;font-weight:800;letter-spacing:.075em;text-transform:uppercase}.workspace-taskbar-items{gap:3px}.workspace-taskbar-item{align-items:center;gap:10px;min-height:42px;padding:9px 14px;border-radius:var(--pill-radius);color:#14181ab8}.workspace-taskbar-item:hover{background:#efede8;color:#14181a}.workspace-taskbar-item.is-selected{border-color:transparent;background:var(--link-soft, #e7f0fb);color:#14181a}.workspace-taskbar-item[data-tone=tan].is-selected{background:var(--warning-soft, #fbf1dc)}.workspace-taskbar-copy{gap:0}.workspace-taskbar-copy strong{font-size:12.5px;font-weight:700}.workspace-taskbar-copy small{margin-top:1px;font-size:9px;line-height:1.25}.workspace-taskbar-profile{width:100%;font:inherit;text-align:left;cursor:pointer;display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:8px;margin-top:auto;padding:9px 10px;border:1px solid var(--border);border-radius:var(--pill-radius);background:#f4f3ef;color:var(--text-secondary)}.workspace-profile-avatar{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;background:#3fae72;color:#fff}.workspace-taskbar-profile>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.workspace-taskbar-profile strong{color:var(--text);font-size:11px}.workspace-taskbar-profile small{font-size:9px}.workspace-taskbar-settings{position:relative;margin-top:auto}.workspace-taskbar-profile:hover,.workspace-taskbar-profile:focus-visible{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:#eef3e9}.workspace-settings-popover{position:absolute;right:0;bottom:calc(100% + 10px);left:0;z-index:20;display:grid;gap:12px;padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--surface);box-shadow:0 16px 34px #23301f29}.workspace-settings-account{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px}.workspace-settings-account>span:last-child{display:flex;min-width:0;flex-direction:column}.workspace-settings-account strong,.workspace-settings-action strong{color:var(--text);font-size:11px}.workspace-settings-account small,.workspace-settings-action small{overflow:hidden;color:var(--text-secondary);font-size:9px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.workspace-settings-role{width:max-content;padding:4px 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:9px;font-weight:750}.workspace-settings-section{display:grid;gap:6px}.workspace-settings-label{color:var(--text-secondary);font-size:10px;font-weight:750}.workspace-settings-section .segmented-control{width:100%}.workspace-settings-section .segmented-control button{flex:1 1 0;min-width:0;padding:6px 7px;font-size:10px}.workspace-settings-action{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;padding:9px;border:1px solid var(--border);border-radius:9px;background:var(--surface-muted);color:var(--accent);font:inherit;text-align:left;cursor:pointer}.workspace-settings-action:hover,.workspace-settings-action:focus-visible{border-color:var(--accent);background:var(--accent-soft)}.workspace-settings-action>span{display:grid;gap:2px}.workspace-settings-signout{display:block;color:var(--text-secondary)}.workspace-settings-footnote{color:var(--text-secondary);font-size:9px;line-height:1.35}.billing-dialog{width:min(520px,calc(100vw - 32px))}.billing-loading,.billing-summary{display:flex;align-items:center;gap:10px}.billing-loading{color:var(--text-secondary);font-size:13px}.billing-summary{padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-muted)}.billing-summary-icon{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:10px;background:var(--accent-soft);color:var(--accent)}.billing-summary>div:nth-child(2){display:grid;min-width:0;gap:3px}.billing-summary strong{color:var(--text);font-size:14px}.billing-summary span:not(.billing-status-pill){color:var(--text-secondary);font-size:11px;text-transform:capitalize}.billing-status-pill{display:inline-flex;align-items:center;gap:4px;margin-left:auto;padding:4px 7px;border-radius:999px;background:color-mix(in srgb,var(--gain) 15%,transparent);color:var(--gain);font-size:10px;font-weight:750}.billing-setup-notice{display:grid;gap:7px;margin-top:14px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted)}.billing-setup-notice strong{color:var(--text);font-size:12px}.billing-setup-notice p,.billing-footnote{color:var(--text-secondary);font-size:11px;line-height:1.45}.billing-setup-notice code{display:block;padding:8px;overflow-x:auto;white-space:pre;border-radius:6px;background:var(--surface);color:var(--accent);font-size:10px}.billing-error{margin-top:14px}.billing-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.billing-footnote{margin-top:12px}.spin{animation:spin .8s linear infinite}.portfolio-hero{margin-top:0;border-color:var(--border);border-radius:14px;background:linear-gradient(140deg,#fff,#f4f3ef 60%,#efede8);box-shadow:0 8px 26px #3942320b}.portfolio-hero-main{position:relative;min-height:218px;padding:26px;overflow:hidden}.portfolio-hero-copy{position:relative;z-index:1}.portfolio-label{margin-top:3px;color:#14181ab8;font-size:13px;font-weight:650}.portfolio-net-worth{margin-top:8px;font-size:clamp(34px,3.1vw,48px);letter-spacing:-.055em}.portfolio-gain{position:relative;z-index:1;max-width:240px;font-size:12px}.hero-actions{position:relative;z-index:2;max-width:215px}.hero-actions .btn{min-height:36px;padding:8px 10px;border-radius:8px;font-size:11px}.portfolio-hero-visual{position:absolute;right:-10px;bottom:-15px;display:grid;width:150px;height:150px;place-items:center;border-radius:50%;background:radial-gradient(circle at 45% 40%,rgba(104,151,79,.24),rgba(104,151,79,.08) 46%,transparent 47%);color:#3fae72;opacity:.95}.hero-leaf{position:absolute;color:#3fae72}.hero-leaf-one{top:23px;left:28px;transform:rotate(-38deg)}.hero-leaf-two{right:28px;top:40px;transform:rotate(42deg)}.summary-metrics>div{padding:13px 22px}.summary-metrics dt{font-size:9px}.summary-metrics dd{font-size:16px}.provenance-banner{padding:13px 22px;background:#f4f3ef}.overview-anchor{scroll-margin-top:22px}.portfolio-content{gap:16px;margin-top:16px}.analytics-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.analytics-card{min-width:0;margin:0;padding:22px;border:1px solid var(--border);border-radius:14px;box-shadow:0 7px 20px #39423209}.analytics-card .panel-heading{font-size:18px}.analytics-card .panel-eyebrow{color:#3fae72;font-size:9px;font-weight:800}.analytics-performance .trend-explainer{font-size:10px}.analytics-allocation .segmented-control{max-width:175px;overflow-x:auto}.analytics-allocation .segmented-control button{padding-right:8px;padding-left:8px;font-size:10px}.analytics-allocation [role=list]>div{padding:6px 0!important}.allocation-coverage{display:grid;gap:4px;margin:12px 0 4px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted);color:var(--text-secondary);font-size:12px}.allocation-coverage strong{color:var(--text)}.allocation-coverage small{color:var(--text-secondary);line-height:1.45}.overview-support-grid,.overview-lower-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(310px,.9fr);gap:16px}.overview-support-grid>.panel,.overview-lower-grid>.panel{margin:0;border:1px solid var(--border);border-radius:14px;box-shadow:0 7px 20px #39423209}.overview-pulse{display:grid;gap:10px}.overview-pulse-card,.overview-news-card{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:11px;min-height:126px;padding:18px;overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 7px 20px #39423209}.overview-pulse-card.is-ready{background:linear-gradient(135deg,#f4f3ef,#fff)}.overview-pulse-card.is-caution{background:linear-gradient(135deg,#fff9eb,#fff)}.overview-pulse-icon,.overview-news-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#efede8;color:var(--accent)}.is-caution .overview-pulse-icon{background:#fbf1dc;color:var(--warning)}.overview-pulse-card h2,.overview-news-card h2{margin:0;color:var(--text);font-size:14px;line-height:1.3}.overview-pulse-card p:not(.panel-eyebrow),.overview-news-card p:not(.panel-eyebrow){margin-top:4px;color:var(--text-secondary);font-size:11px;line-height:1.45}.overview-pulse-meta{grid-column:2 / -1;display:inline-flex;align-items:center;gap:5px;color:var(--text-secondary);font-size:9px}.overview-news-card{min-height:145px;background:linear-gradient(135deg,#fff,#f4f3ef)}.overview-news-copy{min-width:0}.overview-news-copy h2{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.overview-news-copy span{color:var(--accent);font-weight:700}.overview-news-link{z-index:1;display:inline-flex;align-items:center;gap:3px;padding:0;border:0;background:transparent;color:var(--accent);cursor:pointer;font-size:10px;font-weight:750;white-space:nowrap}.overview-news-link:hover{text-decoration:underline}.overview-news-leaf{position:absolute;right:-8px;bottom:-13px;opacity:.35}.overview-pulse-disclosure{padding:0 4px;color:var(--text-secondary);font-size:9px;line-height:1.35}.portfolio-page{display:grid;gap:16px;min-width:0}.portfolio-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:3px 2px 1px}.portfolio-page-header h1{margin:0;color:var(--text);font-size:clamp(25px,2.8vw,32px);letter-spacing:-.04em;line-height:1.1}.portfolio-page-header>div>p:last-child{max-width:630px;margin:7px 0 0;color:var(--text-secondary);font-size:13px;line-height:1.5}.portfolio-page-header .btn{flex:0 0 auto}.portfolio-page-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.portfolio-summary-card,.portfolio-page-next-steps,.portfolio-page-categories,.portfolio-page-health,.portfolio-page-methodology{min-width:0;margin:0;padding:20px;border:1px solid var(--border);border-radius:14px;box-shadow:0 7px 20px #39423209}.portfolio-summary-card{display:flex;min-height:174px;flex-direction:column;align-items:flex-start}.portfolio-summary-card>svg{margin-bottom:10px;color:var(--accent)}.portfolio-summary-card .panel-eyebrow{margin-bottom:4px}.portfolio-summary-card .panel-heading{margin:0;font-size:clamp(17px,1.65vw,21px);line-height:1.24}.portfolio-summary-card>p:not(.panel-eyebrow):not(.portfolio-page-note){margin:7px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.5}.portfolio-page-note{display:inline-flex;align-items:center;gap:5px;margin:9px 0 0;color:var(--warning);font-size:11px;font-weight:700}.portfolio-page-action{display:inline-flex;align-items:center;gap:5px;margin-top:auto;padding:10px 0 0;border:0;background:transparent;color:var(--accent);cursor:pointer;font-size:11px;font-weight:750;text-align:left}.portfolio-page-action:hover,.portfolio-page-action:focus-visible{text-decoration:underline}.portfolio-page-stack{min-width:0}.asset-tag-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.asset-tag{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;padding:3px 8px;color:var(--text-secondary);background:var(--surface-muted);font-size:11px}.asset-tag-industry{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.asset-tag-custom{color:var(--text-primary);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.asset-tag-removable{cursor:pointer}.asset-metadata-block{margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}.asset-metadata-line{display:flex;gap:12px;margin:10px 0 0;color:var(--text-secondary)}.asset-metadata-line strong{color:var(--text-primary);min-width:90px}.asset-custom-tag-form{display:flex;gap:8px;margin-top:14px}.asset-custom-tag-form .search-field{flex:1}.admin-assets-layout{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.4fr);gap:16px}.admin-asset-directory,.admin-asset-editor{min-width:0}.admin-asset-directory>.search-field{margin:16px 0}.admin-asset-list{display:grid;gap:6px;max-height:620px;overflow:auto}.admin-asset-list-item{display:flex;justify-content:space-between;gap:12px;width:100%;border:1px solid transparent;border-radius:10px;padding:10px;text-align:left;color:var(--text-secondary);background:transparent;cursor:pointer}.admin-asset-list-item:hover,.admin-asset-list-item.is-selected{border-color:var(--accent);background:var(--surface-muted)}.admin-asset-list-item span:first-child{display:grid;gap:3px;min-width:0}.admin-asset-list-item strong{color:var(--text-primary)}.admin-asset-list-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-asset-list-item>span:last-child{flex:0 0 auto;max-width:42%;font-size:11px;text-align:right}.admin-form-grid{margin-top:20px}.admin-canonical-facts{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:20px;color:var(--text-secondary);font-size:12px}@media(max-width:800px){.admin-assets-layout{grid-template-columns:1fr}.admin-asset-list{max-height:300px}}.portfolio-page-stack>.panel,.portfolio-page-grid>.panel{margin:0;border:1px solid var(--border);border-radius:14px;box-shadow:0 7px 20px #39423209}.portfolio-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.portfolio-page-inline-list,.portfolio-page-source-list{display:flex;flex-wrap:wrap;gap:7px;padding:0;margin:11px 0 0;list-style:none}.portfolio-page-inline-list li{padding:5px 8px;border-radius:7px;background:var(--surface-muted);color:var(--text-secondary);font-size:11px;line-height:1.35}.portfolio-page-inline-list strong{color:var(--text)}.portfolio-page-categories .panel-heading{margin-bottom:0}.portfolio-page-next-steps .panel-heading,.portfolio-page-methodology .panel-heading{max-width:620px}.portfolio-page-action-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}.portfolio-page-action-list button{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 8px;min-width:0;padding:13px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted);color:var(--text);cursor:pointer;text-align:left}.portfolio-page-action-list button:hover,.portfolio-page-action-list button:focus-visible{border-color:var(--accent);background:var(--accent-soft)}.portfolio-page-action-list svg{grid-row:span 2;color:var(--accent)}.portfolio-page-action-list span{font-size:12px;font-weight:750}.portfolio-page-action-list small{color:var(--text-secondary);font-size:10px;line-height:1.35}.portfolio-page-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.portfolio-page-heading-row>svg{color:var(--warning)}.portfolio-page-source-list{display:grid;gap:8px}.portfolio-page-source-list li{display:flex;align-items:flex-start;gap:8px;padding:10px;border-radius:8px;background:var(--warning-soft);color:var(--text-secondary);font-size:12px;line-height:1.4}.portfolio-page-source-list svg{flex:0 0 auto;margin-top:1px;color:var(--warning)}.portfolio-page-source-list strong{color:var(--text)}.portfolio-page-methodology p{max-width:760px;margin:10px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.55}.portfolio-content>.overview-anchor>.panel,.portfolio-content>.overview-anchor>.asset-workspace,.portfolio-content>.overview-anchor>.asset-panel{border:1px solid var(--border);border-radius:14px;box-shadow:0 7px 20px #39423209}.market-workspace{margin-top:0}.market-workspace .market-updates-panel{min-height:calc(100vh - 160px);border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 7px 20px #39423209}.market-analysis-header .panel-heading{font-size:clamp(23px,2.2vw,29px)}.market-workspace .news-card{border-radius:12px;background:#fff}.market-workspace .news-card:hover{border-color:#3e6f3c73;background:#f4f3ef}.context-rail{background:#fff;border-left-color:var(--border)}.assistant-panel{background:#fff}.assistant-panel-header{min-height:83px;padding:25px 22px 15px;border-bottom:1px solid var(--border)}.assistant-panel-header h2{font-size:20px;letter-spacing:-.025em}.rail-eyebrow{color:var(--accent);font-size:9px}.assistant-panel .provider-card{margin:16px 18px 10px;border-radius:12px;background:#f4f3ef;box-shadow:none}.assistant-panel .assistant-connect-state{padding:24px 26px}.assistant-panel .assistant-connect-state h3{font-size:16px}.assistant-panel .assistant-connect-state p{max-width:270px;font-size:12px;line-height:1.55}.assistant-panel .suggestion-list button{border-color:var(--border);border-radius:9px;background:#fff}.assistant-panel .chat-input-row{background:#fff}@media(min-width:1200px){.app-shell{grid-template-columns:262px minmax(0,1fr) minmax(350px,386px)}.app-shell.assistant-collapsed{grid-template-columns:262px minmax(0,1fr) 56px}}@media(min-width:900px)and (max-width:1199px){.app-shell{grid-template-columns:210px minmax(0,1fr) 340px}.app-shell.assistant-collapsed{grid-template-columns:210px minmax(0,1fr) 56px}.workspace-taskbar{padding-right:12px;padding-left:12px}.workspace-taskbar-copy small{display:none}.workspace-taskbar-profile{grid-template-columns:32px minmax(0,1fr)}.workspace-taskbar-profile>svg{display:none}.analytics-panel{grid-template-columns:1fr}}@media(min-width:1200px)and (max-width:1439px){.analytics-panel{grid-template-columns:1fr}}@media(max-width:899px){.app-layout{padding:22px 16px 40px}.orchard-page-header{gap:16px;padding-bottom:20px}.workspace-taskbar{flex-direction:row;align-items:center;gap:10px;padding:9px 12px}.workspace-taskbar-brand{flex:0 0 auto}.barn-mark{width:30px;height:30px;border-radius:9px}.barn-wordmark{font-size:23px}.workspace-taskbar-nav{flex:1 1 0;min-width:0;flex-direction:row;overflow-x:auto;overscroll-behavior-x:contain}.workspace-nav-group{display:contents}.workspace-nav-group-label,.workspace-taskbar-copy small{display:none}.workspace-taskbar-settings{display:block;flex:0 0 auto;margin-top:0}.workspace-taskbar-profile{display:grid;width:38px;grid-template-columns:30px auto;padding:4px}.workspace-taskbar-profile>span:nth-child(2),.workspace-taskbar-profile>svg{display:none}.workspace-settings-popover{position:fixed;right:12px;bottom:60px;left:auto;width:min(310px,calc(100vw - 24px))}.workspace-taskbar-nav .workspace-taskbar-items{flex:0 0 auto;flex-direction:row;gap:4px;overflow:visible}.workspace-taskbar-item{width:auto;min-height:34px;padding:7px 8px;white-space:nowrap}.workspace-taskbar-copy strong{font-size:11px}.analytics-panel,.overview-support-grid,.overview-lower-grid,.usage-summary-grid,.portfolio-page-summary-grid,.portfolio-page-action-list,.portfolio-page-grid{grid-template-columns:1fr}.portfolio-hero-main{min-height:0}}@media(max-width:640px){.app-header-right{width:100%;align-items:flex-start}.app-header-controls{width:100%;justify-content:flex-start}.control-help{text-align:left}.portfolio-hero-main{padding:21px 18px}.portfolio-hero-visual{right:-29px;bottom:-48px;transform:scale(.82)}.hero-actions{max-width:none;padding-right:40px}.analytics-card{padding:18px 14px}.analytics-chart-controls{justify-content:flex-start}.overview-pulse-card,.overview-news-card{padding:16px}.portfolio-page-header{flex-direction:column}.portfolio-page-header .btn{width:100%;justify-content:center}.portfolio-summary-card,.portfolio-page-next-steps,.portfolio-page-categories,.portfolio-page-health,.portfolio-page-methodology{padding:16px}.portfolio-assets-page{gap:12px}.portfolio-assets-page>.portfolio-page-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.portfolio-assets-page>.portfolio-page-summary-grid>.portfolio-summary-card{min-height:0;padding:12px}.portfolio-assets-page>.portfolio-page-summary-grid>.portfolio-summary-card:last-child{grid-column:1 / -1}.portfolio-assets-page>.portfolio-page-summary-grid .panel-heading{font-size:16px}.portfolio-assets-page>.portfolio-page-summary-grid .portfolio-page-inline-list{gap:5px;margin-top:8px}.portfolio-assets-page>.portfolio-page-categories{padding:12px}.portfolio-assets-page>.portfolio-page-categories .portfolio-page-inline-list{gap:5px;margin-top:8px}}@media(max-width:420px){.app-layout{padding-right:10px;padding-left:10px}.workspace-taskbar{gap:8px;padding-right:8px;padding-left:8px}.barn-wordmark{display:none}.workspace-taskbar-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;overflow:visible}.workspace-taskbar-nav .workspace-taskbar-items{display:contents}.workspace-taskbar-item svg{display:none}.workspace-taskbar-item{width:100%;min-width:0;min-height:42px;justify-content:center;padding:7px 3px;text-align:center}.workspace-taskbar-label-full{display:none}.workspace-taskbar-label-compact{display:inline}.portfolio-net-worth{font-size:34px}.summary-metrics>div{padding:11px 10px}.summary-metrics dd{font-size:14px}.overview-news-link span{display:none}}:root,[data-theme=night]{--action-marker: #e8a44a;--action-buy: #4db880;--action-sell: #e87070;--action-valuation: #7b6cf6}[data-theme=day]{--action-marker: #7c5a18;--action-buy: #2e8a5b;--action-sell: #b5502c;--action-valuation: #e9b44c}[data-theme=day]{--action-marker: #E9B44C}.asset-heading-actions,.portfolio-action-center,.portfolio-action-notice,.chart-state,.history-health,.resolved-instrument,.component-footnote{display:flex;align-items:center;gap:8px}.asset-heading-actions{flex-wrap:wrap;justify-content:flex-end}.portfolio-action-center{flex-wrap:wrap}.portfolio-action-notice{margin-top:14px}.portfolio-action-dialog{width:min(880px,calc(100vw - 32px));max-width:880px;max-height:min(90vh,920px)}.cash-event-dialog{width:min(640px,calc(100vw - 32px));max-width:640px}.transaction-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px;border:1px solid var(--border);border-radius:10px;overflow:hidden}.transaction-steps span{padding:9px 10px;color:var(--text-secondary);font-size:11px;text-align:center}.transaction-steps span+span{border-left:1px solid var(--border)}.transaction-steps .is-current{background:var(--accent-soft);color:var(--accent);font-weight:700}.transaction-steps .is-complete{color:var(--gain)}.transaction-section+.transaction-section,.transaction-preview{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.transaction-section h3,.transaction-preview h3{margin-bottom:10px;font-size:14px}.transaction-search{width:100%}.form-help,.instrument-empty,.cash-flow-explainer,.component-footnote{color:var(--text-secondary);font-size:11px}.instrument-empty{display:flex;flex-direction:column;gap:3px;margin-top:10px;padding:12px;border:1px dashed var(--border);border-radius:9px}.instrument-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:280px;margin-top:10px;overflow:auto}.instrument-candidate{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px;border:1px solid var(--border);border-radius:9px;background:var(--surface-muted);color:var(--text-secondary);font:inherit;font-size:10px;text-align:left;cursor:pointer}.instrument-candidate:hover,.instrument-candidate.is-selected{border-color:var(--accent);background:var(--accent-soft)}.instrument-candidate:focus-visible,.action-rail button:focus-visible,.asset-action-rail button:focus-visible,.cash-event-kind button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.instrument-candidate-title{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;color:var(--text);font-size:12px}.instrument-candidate-title span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.instrument-candidate-title em{padding:2px 5px;border-radius:999px;background:var(--surface-raised);color:var(--text-secondary);font-size:8px;font-style:normal;text-transform:uppercase}.verify-instrument{margin-top:10px}.resolved-instrument{margin-top:10px;padding:10px 12px;border:1px solid var(--gain-soft);border-radius:9px;background:var(--gain-soft);color:var(--gain);font-size:11px}.transaction-confirmation{padding:12px;border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--text);font-size:13px;font-weight:650}.transaction-effect-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.transaction-effect-grid div{min-width:0;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.transaction-effect-grid dt{color:var(--text-secondary);font-size:9px;text-transform:uppercase}.transaction-effect-grid dd{margin-top:3px;color:var(--text);font-size:12px;font-weight:700;overflow-wrap:anywhere}.transaction-warnings{display:grid;gap:6px;margin:10px 0}.transaction-warnings p{padding:8px 10px;border-radius:7px;background:var(--warning-soft);color:var(--warning);font-size:11px}.cash-event-kind{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.cash-event-kind button{display:flex;align-items:center;justify-content:center;gap:7px;padding:11px;border:1px solid var(--border);border-radius:9px;background:var(--surface-muted);color:var(--text-secondary);font:inherit;font-size:12px;cursor:pointer}.cash-event-kind button.is-selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:700}.cash-flow-explainer{margin:10px 0 16px;padding:9px 11px;border-radius:8px;background:var(--surface-muted)}.evidence-history{min-width:0}.evidence-history-heading,.analytics-allocation-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}.evidence-history .trend-explainer{margin-bottom:14px}.chart-state{justify-content:center;min-height:220px;color:var(--text-secondary);font-size:12px}.compact-state{padding:12px}.history-health{margin-bottom:8px;padding:8px 10px;border:1px solid var(--warning-soft);border-radius:8px;background:var(--warning-soft);color:var(--warning);font-size:11px}.evidence-tooltip{max-width:280px}.portfolio-progress{display:grid;gap:12px;margin:14px 0;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted)}.portfolio-progress-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.portfolio-progress-heading h3,.portfolio-progress.is-insufficient h3{margin-top:2px;font-size:15px}.portfolio-progress-badge{padding:4px 7px;border-radius:999px;background:var(--warning-soft);color:var(--warning);font-size:9px;font-weight:700}.portfolio-progress-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.portfolio-progress-metrics>div{display:grid;align-content:start;gap:3px;min-width:0;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.portfolio-progress-metrics span,.portfolio-progress-metrics small,.portfolio-progress-note,.portfolio-progress.is-insufficient>p{color:var(--text-secondary);font-size:10px}.portfolio-progress-metrics strong{overflow-wrap:anywhere;font-size:14px}.portfolio-progress-metrics .is-positive{color:var(--gain)}.portfolio-progress-metrics .is-negative{color:var(--loss)}.portfolio-progress-note{display:flex;align-items:flex-start;gap:6px}.portfolio-progress-note svg{flex:0 0 auto}.evidence-tooltip p,.evidence-tooltip>span{margin-top:5px;color:var(--text-secondary);font-size:10px}.evidence-legend,.asset-action-legend{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:8px;color:var(--text-secondary);font-size:10px}.evidence-legend span,.asset-action-legend span{display:inline-flex;align-items:center;gap:5px}.evidence-legend i,.asset-action-legend i{display:inline-block;width:18px;height:3px;background:var(--accent)}.evidence-legend i.provisional,.asset-action-legend i.carried{background:repeating-linear-gradient(90deg,var(--accent) 0 4px,transparent 4px 7px)}.evidence-legend i.gap{background:repeating-linear-gradient(90deg,var(--loss) 0 3px,transparent 3px 7px)}.evidence-legend i.action,.asset-action-legend i.buy,.asset-action-legend i.sell,.asset-action-legend i.valuation{width:8px;height:8px;border-radius:50%;background:var(--action-marker)}.asset-action-legend i.buy{background:var(--action-buy)}.asset-action-legend i.sell{background:var(--action-sell)}.asset-action-legend i.valuation{background:var(--action-valuation)}.action-rail,.asset-action-rail{display:flex;gap:7px;margin-top:12px;padding:2px;overflow-x:auto;overscroll-behavior-x:contain}.action-rail button,.asset-action-rail button{flex:0 0 auto;display:flex;flex-direction:column;gap:1px;padding:7px 9px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted);color:var(--text-secondary);font:inherit;font-size:9px;text-align:left;cursor:pointer}.action-rail button strong,.asset-action-rail button strong{color:var(--text);font-size:10px}.action-rail button.is-selected,.asset-action-rail button.is-selected{border-color:var(--accent);background:var(--accent-soft)}.snapshot-evidence-panel{margin-top:14px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-muted)}.snapshot-evidence-heading{display:flex;justify-content:space-between;gap:12px}.snapshot-evidence-heading h3{font-size:15px}.snapshot-components{display:grid;gap:5px;margin-top:10px}.snapshot-components>div{display:grid;grid-template-columns:minmax(120px,1.3fr) minmax(120px,1fr) auto;gap:6px 12px;align-items:center;padding:8px 0;border-top:1px solid var(--border);font-size:11px}.snapshot-components>div>span:first-child{display:flex;flex-direction:column}.snapshot-components small,.component-source{color:var(--text-secondary)}.component-source{grid-column:1 / -1;font-size:9px}.selected-actions,.asset-action-details{display:grid;gap:6px;margin-top:14px}.selected-actions h4{font-size:12px}.selected-actions article{display:grid;grid-template-columns:auto minmax(100px,1fr) auto;gap:5px 10px;padding:8px 0;border-top:1px solid var(--border);font-size:10px}.selected-actions article small{grid-column:1 / -1;color:var(--text-secondary)}.component-footnote{margin-top:12px}.allocation-layout{display:flex;gap:24px;align-items:flex-start;flex-wrap:wrap}.allocation-list{flex:1;min-width:200px}.allocation-list>div{display:grid;grid-template-columns:auto minmax(80px,1fr) auto minmax(80px,auto);align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border);font-size:13px}.allocation-list>div>:nth-child(3){color:var(--text-secondary)}.allocation-list>div>strong{text-align:right}.usage-page{gap:18px}.usage-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.usage-summary-card{display:grid;gap:5px;min-width:0;padding:18px}.usage-summary-card span,.usage-summary-card small,.usage-section-heading>span{color:var(--text-secondary);font-size:11px}.usage-summary-card strong{overflow:hidden;color:var(--text);font-size:clamp(22px,3vw,30px);line-height:1.1;text-overflow:ellipsis}.usage-section{min-width:0;padding:18px}.usage-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.usage-section-heading h2{margin:0;color:var(--text);font-size:18px}.usage-table-wrap{overflow-x:auto}.usage-table{width:100%;min-width:780px;border-collapse:collapse;color:var(--text-secondary);font-size:11px}.usage-table th,.usage-table td{padding:10px 8px;border-bottom:1px solid var(--border);text-align:right;white-space:nowrap}.usage-table th:first-child,.usage-table td:first-child,.usage-table th:nth-child(2),.usage-table td:nth-child(2){text-align:left}.usage-table th{color:var(--text-secondary);font-size:10px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}.usage-table tbody tr:last-child td{border-bottom:0}.usage-model-cell{max-width:330px;overflow:hidden;color:var(--text);text-overflow:ellipsis}.usage-status{display:inline-flex;padding:3px 7px;border-radius:999px;background:var(--surface-muted);color:var(--text-secondary);font-size:10px}.usage-status-calculated{background:var(--accent-soft);color:var(--accent-strong, var(--accent))}.usage-status-partial{background:var(--warning-soft);color:var(--warning)}.usage-status-unavailable,.usage-status-pricing_unavailable,.usage-status-cached_usage_unavailable,.usage-status-invalid_usage,.usage-status-usage_incomplete{background:var(--danger-soft, var(--surface-muted));color:var(--loss)}.usage-empty,.usage-note{color:var(--text-secondary);font-size:12px;line-height:1.5}.usage-note{margin:0 2px}.portfolio-allocation-card .trend-explainer{max-width:720px;margin-bottom:14px}.portfolio-allocation-card .segmented-control{max-width:none}.portfolio-allocation-layout{align-items:center}.allocation-chart-visual{width:440px;flex:0 0 440px}@media(max-width:640px){.allocation-chart-visual{width:100%;flex:1 1 100%}.portfolio-allocation-card .allocation-list{width:100%;min-width:0}}.allocation-total{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid var(--border);color:var(--text-secondary);font-size:12px}.allocation-total strong{color:var(--text);font-size:18px}.allocation-color{width:10px;height:10px;border-radius:50%}.asset-evidence-history{min-width:0}.asset-trend-heading p{margin-top:2px;color:var(--text-secondary);font-size:10px}.legacy-valuation-heading{margin-top:20px;padding-top:14px;border-top:1px solid var(--border)}.asset-action-details article{display:flex;align-items:flex-start;gap:9px;padding:9px;border:1px solid var(--border);border-radius:8px;background:var(--surface-muted)}.asset-action-details article div{min-width:0}.asset-action-detail-content{flex:1 1 auto}.asset-action-details article strong{font-size:11px;text-transform:capitalize}.asset-action-details article p,.asset-action-details article small{color:var(--text-secondary);font-size:10px}.asset-action-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 16px;margin-top:9px}.asset-action-facts>div{display:grid;gap:1px}.asset-action-facts dt{color:var(--text-secondary);font-size:9px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.asset-action-facts dd{color:var(--text);font-size:10px;overflow-wrap:anywhere}@media(max-width:480px){.asset-action-facts{grid-template-columns:1fr}}@media(max-width:760px){.auth-page{display:block}.auth-story{min-height:auto;padding:24px 22px 30px;border-right:0;border-bottom:1px solid var(--border)}.auth-story-copy{margin:46px 0 0}.auth-story-copy h1{max-width:560px;font-size:clamp(36px,10vw,54px)}.auth-trust-row{margin-top:34px}.auth-panel{min-height:auto;padding:28px 16px 42px}}@media(max-width:480px){.auth-card{padding:22px 18px;border-radius:16px}.auth-field-row{grid-template-columns:1fr;gap:15px}.user-menu-name{display:none}.user-menu{padding-left:4px}}.metric-status{color:var(--text-secondary);font-size:11px;line-height:1.3}.metric-status.partial{color:var(--warning, #7c5a18)}.metric-status.unavailable{color:var(--text-secondary)}.cost-analysis-note,.subsection-note{color:var(--text-secondary);font-size:13px;line-height:1.45;margin:8px 0 0}.fee-side-summary{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.subsection-heading{font-size:15px;margin:0}.fee-side-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.fee-side-card{background:var(--surface-raised);border:1px solid var(--border);border-radius:10px;display:flex;flex-direction:column;gap:4px;padding:12px}.fee-side-card strong{font-size:20px}.fee-side-card small,.fee-evidence-cell{color:var(--text-secondary);font-size:12px}.fee-breakdown-heading{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.fee-breakdown-table .data-table-header,.fee-breakdown-table .data-table-row{gap:12px;grid-template-columns:minmax(0,1fr) auto minmax(125px,auto)}.fee-breakdown-table .data-table-header{padding:8px 12px}.fee-amount{font-weight:600;text-align:right}.fee-breakdown-empty{color:var(--text-secondary);font-size:13px;padding:16px 12px}@media(max-width:640px){.fee-side-grid{grid-template-columns:1fr}.fee-breakdown-table .data-table-header{display:none}.fee-breakdown-table .data-table-row{grid-template-columns:minmax(0,1fr) auto}.fee-evidence-cell{grid-column:1 / -1}}.asset-action-badge{display:grid;flex:0 0 23px;width:23px;height:23px;place-items:center;border-radius:50%;background:var(--action-valuation);color:#fff;font-size:10px;font-weight:800}.asset-action-badge.buy{background:var(--action-buy)}.asset-action-badge.sell{background:var(--action-sell)}.transaction-history{min-width:0;margin:16px 0 0;padding:22px;border:1px solid var(--border);border-radius:14px;box-shadow:0 7px 20px #39423209}.transaction-history-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:16px}.transaction-history-heading>div{min-width:0}.transaction-history-heading .panel-heading{margin:0}.transaction-history-heading p:last-child{max-width:680px;margin:6px 0 0;color:var(--text-secondary);font-size:11px;line-height:1.5}.transaction-history-count{flex:0 0 auto;padding:5px 9px;border:1px solid var(--border);border-radius:999px;background:var(--surface-muted);color:var(--text-secondary);font-size:10px;font-weight:750}.transaction-history-state,.transaction-history-empty{display:grid;min-height:130px;place-items:center;align-content:center;gap:7px;padding:22px;border:1px dashed var(--border);border-radius:11px;color:var(--text-secondary);text-align:center}.transaction-history-empty h3,.transaction-history-empty p{margin:0}.transaction-history-empty h3{color:var(--text);font-size:14px}.transaction-history-empty p{max-width:540px;font-size:11px;line-height:1.5}.transaction-history-list{display:grid;gap:0;margin:0;padding:0;border:1px solid var(--border);border-radius:11px;overflow:hidden;list-style:none}.transaction-history-row{position:relative;display:grid;grid-template-columns:84px minmax(170px,.85fr) minmax(360px,1.65fr);align-items:center;gap:14px;padding:14px 16px;background:var(--surface)}.transaction-history-menu-wrap{position:absolute;top:10px;right:10px;z-index:2}.transaction-history-menu-button{width:30px;height:30px;padding:0;border-radius:50%}.transaction-history-menu{position:absolute;top:calc(100% + 4px);right:0;display:grid;min-width:178px;padding:5px;border:1px solid var(--border);border-radius:8px;background:var(--surface);box-shadow:0 10px 24px #0000002e}.transaction-history-menu button{display:flex;align-items:center;gap:7px;width:100%;padding:8px 9px;border:0;border-radius:6px;background:transparent;color:var(--text);font:inherit;font-size:11px;text-align:left;cursor:pointer}.transaction-history-menu button:hover,.transaction-history-menu button:focus-visible{background:var(--surface-muted)}.transaction-history-menu button.danger{color:var(--loss)}.transaction-history-menu-note{display:block;padding:8px 9px;color:var(--text-secondary);font-size:10px}.transaction-history-row+.transaction-history-row{border-top:1px solid var(--border)}.transaction-history-side{display:inline-flex;align-items:center;justify-content:center;gap:5px;width:fit-content;min-width:67px;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;text-transform:capitalize}.transaction-history-side.is-buy{background:#47824e1f;color:var(--action-buy)}.transaction-history-side.is-sell{background:#ae4a411f;color:var(--action-sell)}.transaction-history-identity{display:grid;min-width:0;gap:2px;padding-right:30px}.transaction-history-identity strong,.transaction-history-identity span,.transaction-history-identity time{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-history-identity strong{color:var(--text);font-size:12px}.transaction-history-identity span,.transaction-history-identity time{color:var(--text-secondary);font-size:9px}.transaction-history-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.transaction-history-facts div{min-width:0}.transaction-history-facts dt{color:var(--text-secondary);font-size:8px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.transaction-history-facts dd{margin:3px 0 0;overflow:hidden;color:var(--text);font-size:10px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.transaction-history-provenance{display:flex;grid-column:2 / -1;flex-wrap:wrap;gap:5px 12px;color:var(--text-secondary);font-size:9px}.transaction-history-provenance span:first-child{text-transform:capitalize}.transaction-history-edit{display:inline-flex;align-items:center;gap:4px;padding:1px 4px;font-size:9px}.transaction-edit-form{display:grid;gap:16px}.transaction-edit-identity{margin:0;color:var(--text-secondary);font-size:12px}.transaction-history-more{display:flex;justify-content:center;padding-top:14px}@media(max-width:720px){.portfolio-progress-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-heading-actions,.portfolio-action-center{width:100%}.asset-heading-actions .btn,.portfolio-action-center .btn{flex:1 1 150px;justify-content:center}.instrument-results,.transaction-effect-grid{grid-template-columns:1fr}.evidence-history-heading,.analytics-allocation-heading{flex-direction:column}.evidence-history-heading .segmented-control,.analytics-allocation-heading .segmented-control{width:100%;overflow-x:auto}.snapshot-components>div,.selected-actions article{grid-template-columns:1fr}.component-source,.selected-actions article small{grid-column:auto}.transaction-history-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.transaction-history-facts,.transaction-history-provenance{grid-column:1 / -1}.transaction-history-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.transaction-history{padding:16px}.transaction-history-heading{flex-direction:column;gap:10px}.transaction-history-row{padding:13px}.portfolio-progress-heading{flex-direction:column}.portfolio-progress-metrics{grid-template-columns:1fr}.portfolio-action-dialog,.cash-event-dialog{width:calc(100vw - 20px);max-width:calc(100vw - 20px);padding:16px}.transaction-steps{grid-template-columns:1fr}.transaction-steps span+span{border-top:1px solid var(--border);border-left:0}.cash-event-kind,.allocation-list>div{grid-template-columns:1fr}.cash-event-kind button{justify-content:flex-start}.dialog-actions{flex-wrap:wrap}.dialog-actions .btn{flex:1 1 130px;justify-content:center}}.overview-highlights{display:flex;gap:16px;align-items:stretch;margin-top:16px}.overview-holdings-card{flex:1;min-width:0;display:flex;flex-direction:column;gap:14px}.overview-holdings-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.overview-see-all{border:none;background:transparent;color:var(--gain, var(--accent));font-size:12px;font-weight:600;cursor:pointer;padding:0}.overview-see-all:hover{text-decoration:underline}.overview-holdings-empty{color:var(--text-secondary);font-size:13px}.overview-holdings-list{display:flex;flex-direction:column;gap:12px;list-style:none;padding:0;margin:0}.overview-holdings-row{display:flex;align-items:center;gap:12px}.overview-holdings-avatar{width:34px;height:34px;flex:none;border-radius:var(--pill-radius, 50%);background:var(--surface-raised);display:flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:600;color:var(--text-secondary)}.overview-holdings-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.overview-holdings-copy strong{font-size:13.5px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-holdings-copy small{font-size:11px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-holdings-value{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.overview-holdings-value strong{font-size:13.5px;font-variant-numeric:tabular-nums;color:var(--text)}.overview-holdings-value small{font-size:11px;font-weight:500}.overview-holdings-value small.is-gain{color:var(--gain)}.overview-holdings-value small.is-loss{color:var(--loss)}.overview-holdings-value small.is-muted{color:var(--text-secondary)}.overview-highlights-side{width:300px;flex:none;display:flex;flex-direction:column;gap:14px}.overview-promo-card{position:relative;overflow:hidden;flex:1;border-radius:var(--radius-lg, 24px);background:linear-gradient(135deg,var(--link, #3C7DD9) 0%,#79B0EE 100%);padding:20px;display:flex;flex-direction:column;gap:10px;color:#fff}.overview-promo-kicker{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#ffffffb8}.overview-promo-card h3{font-size:19px;line-height:1.25;letter-spacing:-.02em;max-width:230px;margin:0}.overview-promo-card p{font-size:12px;line-height:1.45;color:#ffffffc7;margin:0}.overview-promo-action{margin-top:auto;align-self:flex-start;height:36px;padding:0 18px;border-radius:var(--pill-radius);border:none;background:var(--accent-ink, #0B2018);color:#fff;font-size:12.5px;font-weight:600;cursor:pointer}.overview-promo-flourish{position:absolute;right:-4px;bottom:-4px;display:flex;gap:2px;align-items:flex-end;opacity:.9}.overview-streak-card{flex:none;display:flex;flex-direction:column;gap:8px}.overview-streak-value{font-size:24px;font-weight:600;letter-spacing:-.02em;color:var(--text)}.overview-streak-note{font-size:11px;line-height:1.4;color:var(--text-secondary);margin:0}@media(max-width:1080px){.overview-highlights{flex-direction:column}.overview-highlights-side{width:auto;flex-direction:row}.overview-highlights-side>*{flex:1}}.market-hero-card{position:relative;overflow:hidden;border-radius:var(--radius-lg, 26px);background:linear-gradient(135deg,var(--link, #3C7DD9) 0%,#79B0EE 100%);padding:26px 28px;display:flex;gap:24px;align-items:flex-end;margin-top:14px}.market-hero-copy{flex:1;min-width:0;max-width:620px;display:flex;flex-direction:column;gap:12px}.market-hero-kicker{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#ffffffb8}.market-hero-copy h3{font-size:28px;line-height:1.2;letter-spacing:-.03em;color:#fff;margin:0}.market-hero-copy p{font-size:13.5px;line-height:1.55;color:#ffffffd9;margin:0}.market-hero-tickers{display:flex;gap:8px;flex-wrap:wrap}.market-hero-tickers span{padding:6px 12px;border-radius:var(--pill-radius);background:#ffffffe6;color:#1b4f8c;font-size:11.5px;font-weight:600;white-space:nowrap}.market-hero-actions{display:flex;gap:9px;margin-top:4px}.market-hero-primary,.market-hero-secondary{height:40px;padding:0 18px;border-radius:var(--pill-radius);border:none;font-size:13px;font-weight:600;display:inline-flex;align-items:center;cursor:pointer;text-decoration:none}.market-hero-primary{background:var(--accent-ink, #0B2018);color:#fff}.market-hero-secondary{background:#ffffffe6;color:#1b4f8c}.market-hero-flourish{display:flex;gap:2px;align-items:flex-end;flex:none;opacity:.9}@media(max-width:760px){.market-hero-card{flex-direction:column;align-items:flex-start}.market-hero-flourish{display:none}}
