:root{--background:#fbf6f1;--surface:#fffdfb;--surface-soft:#fbf1ec;--ink:#2d2521;--muted:#81746d;--line:#efe2da;--primary:#d8896d;--primary-dark:#9f533f;--primary-soft:#f8e6df;--positive:#6f9272;--negative:#c96960;--shadow:0 24px 70px #7f53401a;--editorial-serif:"Noto Serif TC", "Iowan Old Style", "Cormorant Garamond", Georgia, serif;--editorial-sans:"Outfit", "Noto Sans TC", "PingFang TC", sans-serif}*{box-sizing:border-box}html{background:var(--background)}body{background:radial-gradient(circle at 12% 0%, #f5d6c985, transparent 28rem), radial-gradient(circle at 86% 10%, #f6e2d7a3, transparent 32rem), linear-gradient(180deg, #fffdfae0, #fbf6f1fa 40rem), var(--background);color:var(--ink);font-family:var(--editorial-sans);min-height:100vh;margin:0}button,input,select,textarea{color:inherit;font:inherit}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #d8896d42}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:20;background:#fffdfbd6;border-bottom:1px solid #efe2dab8;justify-content:space-between;align-items:center;height:74px;padding:0 max(24px,50vw - 720px);display:flex;position:sticky;top:0}.brand,.topbar-actions,.ticker-cell,.row-actions,.filters,.modal-header,.section-heading,.holding-card-header{align-items:center;display:flex}.brand{gap:12px}.brand-mark{background:var(--primary-soft);color:var(--primary-dark);border:1px solid #d8896d3d;border-radius:999px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.brand-mark svg{width:24px;height:24px}.brand strong,.brand span{display:block}.brand strong{color:var(--primary);font-family:var(--editorial-serif);letter-spacing:0;font-size:19px;line-height:1}.brand span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-top:2px;font-size:13px}.topbar-actions{gap:12px}.alert-summary{color:#a28f86;background:#fbf1ec;border-radius:10px;justify-content:center;align-items:center;gap:5px;min-width:52px;height:42px;padding:0 10px;display:flex}.alert-summary.active{background:var(--primary-soft);color:var(--primary-dark)}.alert-summary span{font-size:12px;font-weight:800}.button{border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 17px;font-size:14px;font-weight:750;transition:background .18s,box-shadow .18s,transform .18s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.65}.button.primary{background:var(--primary);color:#fff;box-shadow:0 12px 26px #d8896d3d}.button.primary:hover:not(:disabled){background:var(--primary-dark)}.button.secondary{border:1px solid var(--line);color:#6d5d55;background:#fbf1ec}.button.ghost{color:var(--muted);background:0 0;padding-inline:10px}.button.account-button,.button.help-button{color:var(--ink);background:0 0}.button.topbar-action-button{box-shadow:none}.button.allocation-button{box-shadow:none;color:var(--ink);background:0 0;border:0}.button.allocation-button:hover:not(:disabled){background:var(--primary-soft);color:var(--primary-dark)}.settings-menu-wrap{z-index:31;position:relative}.settings-menu-backdrop{z-index:30;background:0 0;border:0;position:fixed;inset:0}.settings-menu{background:var(--surface);border:1px solid var(--line);z-index:32;border-radius:10px;min-width:156px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 20px 52px #7f53401f}.settings-menu button{color:var(--ink);text-align:left;background:0 0;border:0;border-radius:6px;padding:10px 12px;font-size:14px;font-weight:750}.settings-menu button:hover{background:var(--primary-soft);color:var(--primary-dark)}.button.delete-button{background:var(--negative);color:#fff}.user-chip{border-right:1px solid var(--line);text-align:right;padding-right:14px}.user-chip span,.user-chip small{display:block}.user-chip span{font-size:14px;font-weight:800}.user-chip small{color:var(--muted);margin-top:2px;font-size:11px}.page-shell{max-width:1440px;margin:0 auto;padding:15px 24px 72px}.welcome-row{justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px;padding:8px 2px 2px;display:flex}.eyebrow{color:var(--primary);letter-spacing:.11em;text-transform:uppercase;margin:0 0 7px;font-size:12px;font-weight:800}h1,h2,h3,p{margin-top:0}h1{font-family:var(--editorial-serif);letter-spacing:0;margin-bottom:9px;font-size:clamp(28px,2.3vw,44px);font-weight:600;line-height:1.08}h2{font-family:var(--editorial-serif);letter-spacing:0;margin-bottom:0;font-size:22px;font-weight:600}.subtitle{color:var(--muted);margin-bottom:0;font-size:14px}.cash-form{background:var(--surface);border:1px solid var(--line);border-radius:13px;width:min(100%,340px);padding:11px 12px 11px 15px;box-shadow:0 14px 34px #7f53400f}.allocation-cta{color:var(--ink);text-align:left;background:linear-gradient(135deg,#fff9f6,#f9e8e1);border:1px solid #efdcd3;border-radius:12px;min-width:260px;padding:13px 16px;transition:box-shadow .18s,transform .18s;box-shadow:0 18px 44px #d8896d1f}.allocation-cta:hover{transform:translateY(-1px);box-shadow:0 22px 48px #d8896d29}.allocation-cta span,.allocation-cta strong,.allocation-cta small{display:block}.allocation-cta span,.allocation-cta small{color:var(--primary);font-size:13px}.allocation-cta strong{color:var(--ink);font-family:var(--editorial-serif);margin:4px 0;font-size:18px}.allocation-cta span{font-weight:800}.allocation-cta small{color:var(--muted);font-weight:700}.cash-form label{color:var(--muted);margin-bottom:5px;font-size:13px;font-weight:700;display:block}.cash-form>div{align-items:center;display:flex}.cash-form span{color:var(--muted);margin-right:6px;font-size:14px;font-weight:700}.cash-form input{border:0;outline:0;width:100%;min-width:0;font-size:16px;font-weight:750}.cash-form button{background:var(--primary-soft);color:var(--primary);white-space:nowrap;border:0;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:800}.dashboard-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:34px;display:grid}.asset-allocation-card{background:var(--surface);border:1px solid var(--line);border-radius:15px;margin-bottom:18px;padding:20px;box-shadow:0 18px 48px #7f534012}.asset-allocation-heading,.deposit-dashboard-heading{justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.asset-allocation-heading>small{color:var(--muted);font-size:11px}.asset-allocation-list{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.asset-allocation-item{background:var(--surface-soft);border:1px solid var(--line);border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px;display:grid}.asset-allocation-item span,.asset-allocation-item strong{display:block}.asset-allocation-item span{color:var(--muted);margin-bottom:3px;font-size:13px}.asset-allocation-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.asset-allocation-item small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.asset-allocation-difference{text-align:right}.asset-allocation-difference b,.asset-allocation-difference small{display:block}.asset-allocation-difference b{font-size:11px}.asset-allocation-difference small{white-space:nowrap;font-size:13px;font-weight:800}.asset-dot{border-radius:999px;width:10px;height:10px}.asset-dot.stock{background:#3974bc}.asset-dot.crypto{background:#8b6bc4}.asset-dot.cash{background:#25877b}.asset-dot.deposit{background:#d18b32}.asset-dot.other{background:#6e8894}.deposit-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.deposit-metrics>div{background:#fbfaf7;border:1px solid #eee9dc;border-radius:11px;padding:13px}.deposit-metrics span,.deposit-metrics strong{display:block}.deposit-metrics span{color:var(--muted);margin-bottom:6px;font-size:11px}.deposit-metrics strong{font-size:14px}.metric-card{background:var(--surface);border:1px solid var(--line);border-radius:15px;flex-wrap:nowrap;align-items:flex-start;gap:13px;min-height:132px;padding:19px 19px 19px 32px;display:flex;position:relative;box-shadow:0 18px 48px #7f534012}.metric-card-body,.metric-card>div:last-child{flex:1 1 0;min-width:0}.metric-drag-handle{position:absolute;top:26px;left:12px;margin:0!important}.metric-icon{border-radius:11px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.metric-icon.blue{color:#3974bc;background:#e9f2ff}.metric-icon.green{color:#19835e;background:#e4f5ed}.metric-icon.red{color:#cc4b54;background:#ffecee}.metric-icon.violet{color:#7459bd;background:#f0ecff}.metric-icon.orange{color:#b46d17;background:#fff0dd}.metric-icon.teal{color:#25877b;background:#e3f5f3}.metric-label,.metric-card strong,.metric-card small{display:block}.metric-label{color:var(--muted);margin:1px 0 8px;font-size:14px;font-weight:650}.metric-card strong{letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(18px,1.6vw,22px);line-height:1.2;overflow:hidden}.metric-card small{color:var(--muted);margin-top:7px;font-size:13px}.positive{color:var(--positive)!important}.negative{color:var(--negative)!important}.asset-tabs{border:1px solid var(--line);background:#fffdf8d1;border-radius:12px;gap:6px;margin-bottom:20px;padding:6px;display:flex;overflow-x:auto}.primary-asset-tabs{margin-bottom:28px}.asset-tabs button{color:var(--muted);background:0 0;border:0;border-radius:8px;flex:1 0 auto;min-height:42px;padding:0 18px;font-size:14px;font-weight:800}.asset-tabs button.active{color:#fff;background:#cd795b;box-shadow:0 8px 18px #2b211924}.asset-tabs button.future{cursor:default;opacity:.48}.asset-tabs button small{margin-top:1px;font-size:8px;font-weight:650;display:block}.holdings-section{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:17px;overflow:hidden}.section-actions{align-items:center;gap:10px;display:flex}.crypto-summary{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.crypto-summary>div{background:#fff;padding:18px 22px}.crypto-summary span,.crypto-summary strong{display:block}.crypto-summary span{color:var(--muted);margin-bottom:5px;font-size:11px;font-weight:750}.crypto-summary strong{font-size:17px}.crypto-table-wrap{overflow-x:auto}.crypto-table-wrap table{min-width:1080px}.crypto-avatar{color:#7154a5;background:#eee9f8}.crypto-mobile-list{display:none}.crypto-modal{width:min(100%,820px)}.crypto-card,.deposit-card{border:1px solid var(--line);background:#fff;border-radius:13px;padding:15px}.crypto-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.crypto-card-heading>div>span,.crypto-card-heading strong,.crypto-card-heading small{display:block}.crypto-card-heading>div>span{color:#7154a5;font-size:11px;font-weight:850}.crypto-card-heading strong{margin-top:2px;font-size:15px}.crypto-card-heading small{color:var(--muted);margin-top:3px;font-size:11px}.crypto-type{color:#7154a5;background:#eee9f8;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800}.crypto-card-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:15px 0;display:grid}.crypto-card-stats>div{background:var(--surface-soft);border-radius:9px;padding:10px}.crypto-card-stats span,.crypto-card-stats strong{display:block}.crypto-card-stats span{color:var(--muted);margin-bottom:4px;font-size:11px}.crypto-card-stats strong{font-size:12px}.cash-overview{border-bottom:1px solid var(--line);background:#f4faf8;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.cash-overview>div{background:#ffffffa8;padding:18px 25px}.cash-overview span,.cash-overview strong{display:block}.cash-overview span{color:var(--muted);margin-bottom:5px;font-size:11px;font-weight:750}.cash-overview strong{font-size:18px}.cash-table-wrap{overflow-x:auto}.cash-table-wrap table{min-width:850px}.cash-note{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:260px;display:block;overflow:hidden}.cash-mobile-list{display:none}.cash-modal{width:min(100%,650px)}.fund-movement-modal{width:min(100%,920px)}.fund-movement-modal-scroll{max-height:calc(100vh - 138px);overflow-y:auto}.fund-movement-create{padding:22px 24px 0}.fund-movement-section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:16px;display:flex}.fund-movement-section-heading h3{margin:2px 0 0;font-size:17px}.fund-movement-account-balance{text-align:right}.fund-movement-account-balance span,.fund-movement-account-balance strong{display:block}.fund-movement-account-balance span{color:var(--muted);font-size:11px}.fund-movement-account-balance strong{margin-top:3px;font-size:14px}.fund-movement-form-actions{margin:20px -24px 0}.deposit-tab-summary{border-bottom:1px solid var(--line);background:#fff;padding:20px 25px 24px}.deposit-tab-summary .deposit-dashboard-heading{margin-bottom:13px}.deposit-tab-summary h3{margin-bottom:0;font-size:15px}.deposit-table-wrap{overflow-x:auto}.deposit-table-wrap table{min-width:1180px}.deposit-status{white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800;display:inline-block}.deposit-status.active{background:var(--primary-soft);color:var(--primary)}.deposit-status.upcoming{color:#a86411;background:#fff0dd}.deposit-status.matured{color:#2563eb;background:#eef4ff}.deposit-status.cancelled{color:var(--muted);background:#eef1f4}.deposit-status.expired{color:#747f8d;background:#f0f2f5}.deposit-mobile-list{display:none}.deposit-modal{width:min(100%,850px)}.insurance-section{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:17px;overflow:hidden}.insurance-summary{border-bottom:1px solid var(--line);grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;display:grid}.insurance-summary>div{background:#fff;padding:17px 20px}.insurance-summary span,.insurance-summary strong{display:block}.insurance-summary span{color:var(--muted);margin-bottom:5px;font-size:11px}.insurance-summary strong{font-size:15px}.insurance-board{background:#f7f8fa;grid-template-columns:repeat(3,minmax(280px,1fr));gap:14px;padding:20px;display:grid}.insurance-column{background:#eef1f4;border:1px solid #e2e6eb;border-radius:14px;min-height:420px;padding:12px;transition:background .15s,border .15s}.insurance-column.drag-active{border-color:#b9ded4}.insurance-column.drag-active:hover{background:#e7f4f0}.insurance-column-heading{justify-content:space-between;align-items:center;padding:3px 4px 12px;display:flex}.insurance-column-heading>div{align-items:center;gap:8px;display:flex}.insurance-column-heading strong{font-size:14px}.insurance-column-heading b{color:var(--muted);background:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;font-size:11px;display:inline-flex}.insurance-status-dot{border-radius:999px;width:9px;height:9px}.insurance-status-dot.planned{background:#8190a2}.insurance-status-dot.in_progress{background:#d18b32}.insurance-status-dot.owned{background:var(--primary)}.insurance-column-cards{gap:10px;display:grid}.insurance-card{border:1px solid var(--line);cursor:grab;background:#fff;border-radius:12px;padding:15px;transition:box-shadow .15s,opacity .15s,transform .15s;box-shadow:0 14px 34px #7f534014}.insurance-card:hover{transform:translateY(-1px);box-shadow:0 18px 42px #7f53401f}.insurance-card.dragging{opacity:.45}.insurance-card-top,.insurance-card-actions{justify-content:space-between;align-items:center;display:flex}.insurance-card-top>span:first-child{color:var(--primary);font-size:11px;font-weight:800}.insurance-type{background:var(--primary-soft);color:var(--primary);border-radius:999px;padding:4px 7px;font-size:11px;font-weight:750}.insurance-card h3{margin:10px 0 12px;font-size:14px;line-height:1.45}.insurance-costs{background:var(--surface-soft);border-radius:9px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;display:grid}.insurance-costs span,.insurance-costs strong{display:block}.insurance-costs span{color:var(--muted);margin-bottom:4px;font-size:8px}.insurance-costs strong{font-size:13px}.insurance-note{color:var(--muted);white-space:pre-wrap;margin:12px 0 0;font-size:11px;line-height:1.65}.insurance-card-actions{border-top:1px solid #edf0f3;margin-top:12px;padding-top:8px}.insurance-card-actions small{color:#a0a9b5;font-size:8px}.insurance-column-empty{color:#9aa5b2;border:1px dashed #cdd4dc;border-radius:10px;justify-content:center;align-items:center;min-height:86px;font-size:11px;display:flex}.insurance-modal{width:min(100%,680px)}.insurance-cost-preview{background:#f2f9f7;border:1px solid #d9ebe6;border-radius:9px;padding:9px 12px}.insurance-cost-preview span,.insurance-cost-preview strong{display:block}.insurance-cost-preview span{color:var(--muted);margin-bottom:4px;font-size:11px}.insurance-cost-preview strong{color:var(--primary-dark);font-size:14px}.insurance-note-field{margin-top:18px}.deposit-preview{background:#f2f9f7;border:1px solid #d9ebe6;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-bottom:20px;display:grid;overflow:hidden}.deposit-preview>div{background:#ffffff73;padding:14px 16px}.deposit-preview span,.deposit-preview strong{display:block}.deposit-preview span{color:var(--muted);margin-bottom:5px;font-size:11px}.deposit-preview strong{color:var(--primary-dark);font-size:17px}.allocation-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:34px;display:grid}.allocation-panel{background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:19px;box-shadow:0 18px 48px #7f534012}.allocation-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:19px;display:flex}.allocation-heading h3{margin-bottom:4px;font-size:15px}.allocation-heading>span{background:var(--primary-soft);color:var(--primary);white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:800}.allocation-list{gap:16px;display:grid}.allocation-row-top,.allocation-amounts{justify-content:space-between;align-items:center;display:flex}.allocation-row-top strong{font-size:13px}.allocation-row-top span,.allocation-amounts{color:var(--muted);font-size:11px}.allocation-track{background:#edf1f4;border-radius:999px;height:6px;margin:7px 0;position:relative;overflow:visible}.allocation-track span{border-radius:inherit;background:linear-gradient(90deg,#2d8b78,#67b3a4);height:100%;display:block}.allocation-track i{background:#d18b32;border-radius:2px;width:2px;height:12px;position:absolute;top:-3px;transform:translate(-1px)}.allocation-amounts span:last-child{font-weight:750}.allocation-pie-body{grid-template-columns:1fr;gap:12px;display:grid}.allocation-pie-chart{background:var(--surface-soft);border:1px solid #edf0f4;border-radius:12px;justify-content:center;align-items:center;min-height:118px;padding:10px;display:flex}.allocation-pie-chart svg{width:108px;height:108px;display:block}.allocation-pie-empty{background:#edf1f4;border-radius:999px;width:94px;height:94px}.allocation-pie-list{gap:7px;display:grid}.allocation-pie-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.allocation-pie-row i{border-radius:999px;width:9px;height:9px}.allocation-pie-row strong,.allocation-pie-row span{display:block}.allocation-pie-row strong{font-size:13px}.allocation-pie-row span{color:var(--muted);font-size:11px}.allocation-pie-row small{color:var(--ink);white-space:nowrap;font-size:11px;font-weight:800}.section-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:end;gap:20px;padding:24px 25px 20px;display:flex}.section-top>div:first-child{position:relative}.section-top h2{display:inline-block}.count-label{background:var(--primary-soft);color:var(--primary);vertical-align:3px;border-radius:999px;margin-left:9px;padding:4px 8px;font-size:11px;font-weight:750}.filters{gap:10px}.search-box{background:var(--surface-soft);border:1px solid var(--line);color:var(--muted);border-radius:9px;align-items:center;gap:8px;width:245px;height:40px;padding:0 12px;display:flex}.search-box svg{flex:none;width:17px;height:17px}.search-box input{background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:14px}.filters select{background:var(--surface-soft);border:1px solid var(--line);border-radius:9px;height:40px;padding:0 30px 0 12px;font-size:14px}.table-wrap{overflow-x:auto}.stock-market-groups{background:#f5f7f9;gap:14px;padding:14px;display:grid}.stock-market-group{border:1px solid var(--line);background:#fff;border-radius:13px;overflow:hidden}.stock-market-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.stock-market-heading>div{align-items:center;gap:9px;display:flex}.stock-market-heading>div:last-child{text-align:right;display:block}.stock-market-heading strong,.stock-market-heading small{display:block}.stock-market-heading>div:first-child>strong{color:#697587;font-size:11px}.stock-market-heading small{color:var(--muted);margin-top:3px;font-size:11px}.market-badge{color:#516173;background:#f4f7fb;border:1px solid #d8e2ee;border-radius:999px;padding:6px 10px;font-size:13px;font-weight:850}.market-badge.tw{color:#285ea8;background:#eef6ff;border-color:#cfe1f8}.market-badge.us{color:#6f4cb3;background:#f4eeff;border-color:#dfd2fb}.market-badge.other{color:#7b6847;background:#f5f3ee;border-color:#e7dfd0}.draggable-stock-row{cursor:grab}.draggable-stock-row:active{cursor:grabbing}.draggable-stock-row.dragging{opacity:.55;background:#edf7f4}.drag-handle{cursor:grab;letter-spacing:0;flex:none;width:12px;line-height:1;color:#9ba6b2!important;margin:0 4px 0 -8px!important;font-size:14px!important;overflow:visible!important}.sortable-card-title{align-items:flex-start;gap:8px;min-width:0;display:flex}.sortable-card-title>div{min-width:0}.mobile-card-actions{display:none}.ticker-avatar.tw-market{color:#166b59;background:#e5f4ef;border-color:#cfe8e0}.ticker-avatar.us-market{color:#6350a0;background:#eceafa;border-color:#ddd8f3}.stock-mobile-list{display:none}table{border-collapse:collapse;width:100%;min-width:1060px}th{color:#8792a1;letter-spacing:.07em;text-align:left;text-transform:uppercase;background:#fafbfc;padding:12px 16px;font-size:11px;font-weight:800}th:first-child,td:first-child{padding-left:25px}th:last-child,td:last-child{text-align:right;padding-right:25px}td{vertical-align:middle;border-top:1px solid #edf0f4;padding:16px;font-size:14px}tbody tr{transition:background .15s}tbody tr:hover{background:#fbfcfd}.ticker-cell{gap:11px}.ticker-avatar{color:var(--primary);letter-spacing:0;text-transform:uppercase;background:#e9f3f0;border:1px solid #d9ebe6;border-radius:11px;flex:none;justify-content:center;align-items:center;width:39px;height:39px;font-size:13px;font-weight:850;display:flex}.ticker-cell strong,.ticker-cell span,.ticker-cell small,.cell-subtext{display:block}.ticker-cell strong{font-size:14px;line-height:1.2}.ticker-cell span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:150px;margin-top:2px;font-size:13px;overflow:hidden}.ticker-cell small{color:var(--muted);margin-top:3px;font-size:11px}.cell-subtext{color:var(--muted);margin-top:4px;font-size:11px}.muted{color:var(--muted);font-size:13px}.alert-list{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.alert-badge{color:#a36310;white-space:nowrap;background:#fff1dc;border:1px solid #f7dfb9;border-radius:999px;align-items:center;gap:4px;padding:4px 7px;font-size:11px;font-weight:750;display:inline-flex}.alert-badge svg{width:11px;height:11px}.row-actions{justify-content:flex-end;gap:5px}.icon-button{color:var(--muted);background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;transition:background .15s,color .15s;display:inline-flex}.icon-button:hover{background:var(--primary-soft);color:var(--primary)}.icon-button.danger:hover{color:var(--negative);background:#fff0f1}.icon-button svg{width:17px;height:17px}.empty-state{text-align:center;flex-direction:column;align-items:center;padding:70px 20px 78px;display:flex}.empty-icon{background:var(--primary-soft);color:var(--primary);border-radius:18px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:18px;display:flex}.empty-icon svg{width:31px;height:31px}.empty-state h3{margin-bottom:8px;font-size:18px}.empty-state p{color:var(--muted);max-width:430px;margin-bottom:20px;font-size:14px;line-height:1.7}.empty-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.mobile-holdings{display:none}.modal-backdrop{z-index:50;background:#2b21196b;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-panel{background:var(--surface);border-radius:18px;width:min(100%,760px);max-height:calc(100vh - 48px);overflow:hidden;box-shadow:0 28px 84px #7f534033}.modal-header{border-bottom:1px solid var(--line);justify-content:space-between;padding:21px 24px 18px}.modal-header h2{font-size:21px}.quick-start-modal{width:min(100%,620px)}.quick-start-content{padding:22px 24px 24px}.quick-start-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.quick-start-list li{background:var(--surface-soft);border:1px solid var(--line);border-radius:14px;align-items:flex-start;gap:12px;padding:14px;display:flex}.quick-start-step-number{background:var(--primary-soft);color:var(--primary);border-radius:999px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:850;line-height:1;display:inline-flex}.quick-start-list strong{font-size:15px;display:block}.quick-start-list p{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.7}.form-scroll{max-height:calc(100vh - 220px);padding:22px 24px;overflow-y:auto}.form-section{border-bottom:1px solid var(--line);margin-bottom:20px;padding-bottom:20px}.form-help{color:var(--muted);margin:12px 0 0;font-size:11px}.target-group{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.target-input-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.percent-input{background:var(--surface-soft);border:1px solid #dfe5ec;border-radius:9px;align-items:center;display:flex;overflow:hidden}.percent-input input{background:0 0;border:0}.percent-input b{color:var(--muted);padding-right:10px;font-size:13px}.settings-modal{width:min(100%,820px)}.tab-manager-modal{width:min(100%,720px)}.tab-manager-list{gap:10px;margin-bottom:24px;display:grid}.tab-manager-list.muted{margin-bottom:0}.tab-manager-row{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:58px 1fr auto;align-items:center;gap:12px;padding:12px;display:grid}.tab-manager-row[draggable=true]{cursor:grab}.tab-manager-row.dragging{opacity:.52}.tab-manager-handle{background:var(--primary-soft);color:var(--primary-dark);letter-spacing:0;border-radius:10px;justify-content:center;align-items:center;height:34px;font-size:13px;font-weight:850;display:inline-flex}.tab-manager-row strong{color:var(--ink);font-size:15px;display:block}.tab-manager-row small{color:var(--muted);margin-top:3px;font-size:13px;display:block}.asset-target-group{border-top:0;margin-top:0;padding-top:0}.managed-form-heading{background:var(--primary-soft);border:1px solid #d4e9e3;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:17px;padding:10px 12px;display:flex}.managed-form-heading span{color:var(--primary-dark);font-size:11px;font-weight:750}.text-button{color:var(--muted);background:0 0;border:0;padding:4px;font-size:11px;font-weight:850}.text-button:hover{color:var(--primary)}.managed-options-link{margin-top:10px}.master-options-modal{flex-direction:column;width:min(100%,920px);max-height:calc(100vh - 48px);display:flex}.master-options-layout{flex:auto;grid-template-columns:190px minmax(0,1fr);min-height:510px;max-height:calc(100vh - 134px);display:grid;overflow:hidden}.master-options-layout.tag-mode{min-height:430px;display:block}.master-options-layout.tag-mode .master-options-content{height:100%}.master-category-list{border-right:1px solid var(--line);background:#f7f9fa;min-height:0;padding:14px 10px;overflow-y:auto}.master-category-list button{color:var(--muted);text-align:left;background:0 0;border:0;border-radius:9px;width:100%;margin-bottom:4px;padding:11px 12px;font-size:13px;font-weight:800;display:block}.master-category-list button.active{background:var(--primary-soft);color:var(--primary-dark)}.master-options-content{flex-direction:column;min-height:0;padding:20px;display:flex;overflow:hidden}.master-option-create{background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;flex:none;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-bottom:18px;padding:14px;display:grid}.master-option-list{flex:auto;gap:8px;min-height:0;padding-right:4px;display:grid;overflow-y:auto}.master-option-empty{color:var(--muted);text-align:center;background:#fffdfbbd;border:1px dashed #e3c6bb;border-radius:12px;padding:24px}.master-option-empty strong{color:var(--ink);margin-bottom:6px;font-size:15px;display:block}.master-option-empty p{max-width:420px;margin:0 auto;font-size:13px;line-height:1.7}.master-option-row{border:1px solid var(--line);border-radius:11px;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.master-option-row.inactive{opacity:.68;background:#f6f7f8}.master-option-row strong,.master-option-row small{display:block}.master-option-row strong{font-size:12px}.master-option-row small{color:var(--muted);margin-top:3px;font-size:11px}.master-option-actions{align-items:center;gap:8px;display:flex}.status-toggle{color:var(--muted);background:#eef1f4;border:0;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:850}.status-toggle.active{background:var(--primary-soft);color:var(--primary)}.stock-group-manager{gap:14px;display:grid}.stock-group-block{border:1px solid var(--line);border-radius:12px;padding:14px}.stock-group-block-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;display:flex}.stock-group-block-heading span{color:var(--muted);font-size:11px;font-weight:800;display:block}.stock-group-block-heading h3{margin:2px 0 0;font-size:15px}.stock-group-list{gap:10px;display:grid}.stock-group-row{background:var(--surface-soft);border:1px solid #edf0f4;border-radius:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:10px;padding:12px;display:grid}.stock-group-row.inactive{opacity:.62}.stock-group-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.empty-inline{color:var(--muted);padding:8px 2px;font-size:13px;font-weight:750}.account-modal{width:min(100%,560px)}.account-settings{max-height:calc(100vh - 130px);padding:22px 24px 24px;overflow-y:auto}.account-section+.account-section{margin-top:25px}.account-section .button{margin-top:13px}.data-management-section{border:1px solid var(--line);background:#f7faf9;border-radius:12px;padding:17px}.data-management-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.account-section .data-management-actions .button{min-width:0;margin-top:0;padding-inline:10px}.data-management-section p{color:var(--muted);margin-top:13px;font-size:13px;line-height:1.7}.account-logout-section{background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;padding:17px}.account-logout-section p{color:var(--muted);font-size:13px;line-height:1.7}.danger-zone{background:#fff7f7;border:1px solid #f2d9dc;border-radius:12px;padding:17px}.danger-zone p{color:var(--muted);margin-bottom:14px;font-size:13px;line-height:1.7}.danger-zone .section-heading span,.danger-zone .section-heading small{color:var(--negative)}.section-heading{justify-content:space-between;margin-bottom:13px}.section-heading span{font-size:12px;font-weight:800}.section-heading small{color:#98a2af;font-size:11px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}.position-readonly-summary{background:#f4faf8;border:1px solid #cfe5df;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px;padding:16px;display:grid}.position-readonly-summary div{gap:4px;display:grid}.position-readonly-summary span,.position-readonly-summary small{color:var(--muted);font-size:11px}.position-readonly-summary strong{color:var(--primary);font-size:16px}.position-readonly-summary small{grid-column:1/-1;line-height:1.6}.field{display:block}.field>span{color:var(--muted);margin:0 0 6px 2px;font-size:13px;font-weight:750;display:block}.field>.field-label-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.field-label-row .text-button{flex:none;margin:-4px -4px -4px 0}.field input,.field select,.field textarea{background:var(--surface-soft);border:1px solid var(--line);border-radius:9px;outline:none;width:100%;font-size:14px;transition:border .15s,box-shadow .15s,background .15s}.field input,.field select{height:42px;padding:0 12px}.password-field-control{position:relative}.password-field-control input{padding-right:66px}.password-field-control button{color:var(--primary);background:0 0;border:0;height:42px;padding:0 12px;font-size:13px;font-weight:850;position:absolute;top:0;right:0}.field textarea{resize:vertical;padding:10px 12px;line-height:1.6}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px #d8896d24}.field input::placeholder,.field textarea::placeholder{color:#b2a498}.field input:disabled,.field select:disabled{cursor:not-allowed;opacity:.65}.field-help{color:var(--muted);margin:6px 2px 0;font-size:11px;line-height:1.5;display:block}.checkbox-field{background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;flex-direction:row;align-items:center;gap:10px;min-height:42px;padding:0 12px;display:flex}.checkbox-field input{accent-color:var(--primary);width:16px;height:16px;margin:0}.checkbox-field span{margin:0}.modal-actions{border-top:1px solid var(--line);background:#fbf7f1;justify-content:flex-end;align-items:center;gap:10px;padding:16px 24px;display:flex}.confirm-modal{width:min(100%,470px)}.confirm-copy{color:var(--muted);margin:0;padding:22px 24px;font-size:14px;line-height:1.7}.toast{color:#fff;z-index:70;background:#2b2119;border-radius:10px;padding:12px 18px;font-size:14px;font-weight:700;animation:.22s toast-in;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 12px 28px #7f534042}.auth-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;width:min(100%,450px);padding:36px;box-shadow:0 26px 76px #7f534021}.auth-brand{align-items:center;gap:12px;margin-bottom:35px;display:flex}.auth-brand strong,.auth-brand span{display:block}.auth-brand strong{font-family:var(--editorial-serif);font-size:18px;font-weight:600}.auth-brand span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-top:2px;font-size:11px}.auth-copy h1{font-family:var(--editorial-serif);font-size:34px;font-weight:500;line-height:1.1}.auth-copy>p:last-child{color:var(--muted);margin-bottom:25px;font-size:12px;line-height:1.7}.auth-form{gap:15px;display:grid}.auth-submit{width:100%;margin-top:4px}.auth-error{color:var(--negative);background:#fff2ef;border:1px solid #f0c8c1;border-radius:8px;margin:0;padding:10px 12px;font-size:13px}.auth-switch{color:var(--muted);text-align:center;margin:20px 0 0;font-size:13px}.auth-switch a{color:var(--primary);font-weight:800;text-decoration:none}.primary-asset-tabs button{cursor:pointer;justify-content:center;align-items:center;gap:7px;display:inline-flex}.primary-asset-tabs .tab-icon{width:17px;height:17px}.primary-asset-tabs button:active{cursor:pointer}.life-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.life-overview-card{background:#fffdfbdb;border:1px solid #efe2dad1;border-radius:12px;padding:22px;box-shadow:0 24px 64px #7f534014}.life-overview-card.wide{grid-column:1/-1}.life-overview-card h2{color:var(--ink);margin:6px 0 10px;font-size:24px;line-height:1.35}.life-overview-card p{color:var(--muted);margin:0;line-height:1.7}.life-area-bars{gap:13px;margin-top:18px;display:grid}.life-area-bar{grid-template-columns:52px 1fr 44px;align-items:center;gap:12px;display:grid}.life-area-bar span,.life-area-bar strong{color:var(--ink);font-size:14px;font-weight:800}.life-area-bar strong{text-align:right}.life-area-track{background:#f1e2db;border-radius:999px;height:10px;overflow:hidden}.life-area-track div{background:linear-gradient(90deg, #eeb8a5, var(--primary));border-radius:inherit;height:100%}.life-area-page{gap:0;display:grid}.life-area-hero{box-shadow:none;background:#fffdfbe0;border:1px solid #efe2dad1;border-bottom:0;border-radius:12px 12px 0 0;grid-template-columns:minmax(0,1fr) 310px;align-items:stretch;gap:18px;padding:40px 24px 50px;display:grid}.life-area-hero h2{color:var(--ink);margin:6px 0 10px;font-size:28px;line-height:1.3}.life-area-hero p{color:var(--muted);margin:0;line-height:1.7}.life-area-focus{background:linear-gradient(145deg,#fff9f6,#fae9e1);border:1px solid #efe2dacc;border-radius:10px;gap:8px;padding:18px;display:grid}.life-area-focus span,.life-area-focus small{color:var(--muted);font-size:13px;line-height:1.6}.life-area-focus strong{color:var(--ink);font-size:22px}.life-area-focus-list{gap:8px;display:grid}.life-area-focus-item{color:var(--ink);cursor:pointer;text-align:left;background:#fffdfbd1;border:1px solid #e6c6bac7;border-radius:10px;align-items:center;gap:8px;padding:10px 11px;transition:background .16s,border-color .16s,transform .16s;display:flex}.life-area-focus-item:hover{background:#fffdfb;border-color:#e6ad99;transform:translateY(-1px)}.life-area-focus-item svg{color:var(--primary);fill:currentColor;flex:none;width:15px;height:15px}.life-area-focus-item strong{font-family:var(--editorial-sans);font-size:14px;font-weight:850;line-height:1.45}.life-area-toolbar{border-top:0;border-bottom:0;border-radius:0;margin-bottom:0}.life-area-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.life-area-card{background:#fffdfbe6;border:1px solid #efe2dad1;border-radius:12px;gap:12px;padding:22px;display:grid;box-shadow:0 24px 64px #7f534014}.life-area-card-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.life-area-card-heading span{background:var(--primary-soft);color:var(--primary-dark);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:500}.life-area-card h3{color:var(--ink);font-family:var(--editorial-serif);margin:0;font-size:22px;font-weight:600;line-height:1.35}.life-area-card p{color:var(--muted);margin:0;line-height:1.7}.life-area-card .button{justify-self:start;margin-top:4px}.life-area-detail-card{box-shadow:none;border-top:0;border-radius:0 0 12px 12px;max-width:none;padding:50px 24px 60px}.life-area-empty-state{text-align:center;background:#fffdfbdb;border:1px solid #efe2dae0;border-radius:12px;place-items:center;gap:14px;width:100%;margin-top:8px;padding:65px 24px;display:grid;box-shadow:0 16px 42px #7f53400e}.life-area-empty-state h3{color:var(--ink);font-family:var(--editorial-serif);margin:0;font-size:30px;font-weight:600;line-height:1.45}.life-area-empty-state p{color:var(--muted);max-width:640px;margin:0;font-size:16px;line-height:1.75}.life-area-empty-state .button{justify-self:center;margin-top:14px}.vision-plan-list{gap:12px;display:grid}.vision-plan-card{background:#fffdfbe0;border:1px solid #efe2dae0;border-radius:12px;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex;box-shadow:0 16px 42px #7f534011}.vision-plan-main{gap:10px;min-width:0;display:grid}.vision-plan-title-row,.vision-plan-meta,.vision-plan-actions{align-items:center;gap:10px;display:flex}.vision-plan-title-row{flex-wrap:wrap;gap:8px}.vision-plan-title-row h4{color:var(--ink);margin:0;font-size:16px;line-height:1.4}.vision-plan-meta span{border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}.vision-focus-star{color:#b7a49a;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f6eee7c7;border:1px solid #e2cbbfe6;border-radius:999px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:background .16s,border-color .16s,color .16s,transform .16s;display:flex}.vision-focus-star:hover{color:var(--primary);transform:translateY(-1px)}.vision-focus-star.active{color:var(--primary);background:#f7e3da;border-color:#e6ad99}.vision-focus-star.active svg{fill:currentColor}.vision-focus-star svg{width:16px;height:16px}.vision-plan-meta{flex-wrap:wrap}.vision-plan-meta span{color:#7d6d65;background:#f6eee7db}.vision-plan-card p{color:var(--muted);white-space:pre-wrap;margin:0;font-size:13px;line-height:1.7}.vision-plan-card .vision-plan-secondary{color:#8f6758}.vision-plan-actions{flex-shrink:0}.life-action-list{gap:12px;display:grid}.life-action-card{background:#fffdfbe0;border:1px solid #efe2dae0;border-radius:12px;grid-template-columns:72px minmax(0,1fr) auto;align-items:flex-start;gap:14px;padding:16px;display:grid;box-shadow:0 16px 42px #7f53400e}.life-action-date{background:var(--primary-soft);color:var(--primary-dark);border-radius:10px;place-items:center;min-height:62px;padding:8px;display:grid}.life-action-date strong{font-size:18px;line-height:1.1}.life-action-date span{color:#9a786d;font-size:11px;font-weight:800}.life-action-main{gap:9px;min-width:0;display:grid}.life-action-main h4{color:var(--ink);margin:0;font-size:16px;line-height:1.45}.life-action-main p{color:var(--muted);white-space:pre-wrap;margin:0;font-size:13px;line-height:1.7}.life-action-modal{width:min(100%,760px)}.life-action-note-field{margin-top:18px}.life-scale-field{gap:9px}.life-dot-scale-value{color:var(--ink);font-family:var(--editorial-serif);min-height:27px;font-size:20px;font-weight:600;line-height:1.35}.life-dot-scale{align-items:center;gap:11px;min-height:34px;display:flex}.life-dot-scale button{cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:transform .16s;display:flex}.life-dot-scale button span{background:#e8d8d0;border:1px solid #dec6ba;border-radius:999px;width:13px;height:13px;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;display:block}.life-dot-scale button:hover{transform:translateY(-1px)}.life-dot-scale button:hover span,.life-dot-scale button.active span{background:var(--primary);border-color:var(--primary);transform:scale(1.18);box-shadow:0 0 0 5px #d8896d24}.life-dot-scale-labels{color:var(--muted);justify-content:space-between;max-width:164px;font-size:11px;font-weight:750;display:flex}.life-dot-scale-labels small{color:inherit;font-size:inherit}.life-vision-plan-modal{width:min(100%,760px)}.life-vision-plan-note-field,.life-vision-plan-result-fields{margin-top:18px}.life-focus-field{grid-column:1/-1;justify-self:start;min-width:min(100%,340px)}.life-area-exploration{box-shadow:none;background:#fffdfbe6;border:1px solid #efe2dad1;border-top:0;border-radius:0 0 12px 12px;gap:20px;padding:50px 24px 60px;display:grid}.exploration-heading h3{color:var(--ink);font-family:var(--editorial-serif);margin:4px 0 0;font-size:22px;font-weight:600;line-height:1.35}.life-area-exploration>p{color:var(--muted);margin:0;line-height:1.7}.exploration-board{grid-template-columns:repeat(4,minmax(220px,1fr));gap:14px;margin-top:6px;padding-bottom:2px;display:grid;overflow-x:auto}.exploration-column{background:#fbf4f0;border:1px solid #efe0d8;border-radius:12px;align-content:start;gap:10px;min-height:300px;padding:12px;transition:background .16s,border .16s;display:grid}.exploration-column.drag-active{border-color:#e1aa96}.exploration-column.drag-active:hover{background:#fff7f3}.exploration-column.convert{background:#fff2ea;border-color:#efcec0}.exploration-column-heading{justify-content:space-between;align-items:center;gap:10px;padding:3px 4px 0;display:flex}.exploration-column-heading>div{align-items:center;gap:8px;display:flex}.exploration-column-heading strong{color:var(--ink);font-size:14px}.exploration-column-heading b{color:var(--muted);background:#fffdfb;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;font-size:11px;display:inline-flex}.exploration-status-dot{border-radius:999px;width:9px;height:9px}.exploration-status-dot.try{background:#d5aea0}.exploration-status-dot.exploring{background:var(--primary)}.exploration-status-dot.paused{background:#b8ada7}.exploration-status-dot.convert{background:var(--primary)}.exploration-column>p{color:var(--muted);margin:0 4px;font-size:12px;line-height:1.6}.exploration-column-cards{gap:10px;display:grid}.exploration-card{cursor:grab;background:#fffdfbe6;border:1px solid #efe2dae6;border-radius:12px;gap:10px;padding:14px;transition:box-shadow .16s,opacity .16s,transform .16s;display:grid;box-shadow:0 14px 34px #7f534013}.exploration-card:hover{transform:translateY(-1px);box-shadow:0 18px 42px #7f53401c}.exploration-card.dragging{opacity:.46}.exploration-card-top,.exploration-card-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.exploration-card-top span{background:var(--primary-soft);color:var(--primary-dark);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:145px;padding:4px 8px;font-size:11px;font-weight:800;overflow:hidden}.exploration-card-top small{color:var(--muted);white-space:nowrap;font-size:10px}.exploration-card h4{color:var(--ink);margin:0;font-size:15px;line-height:1.45}.exploration-card p{color:var(--muted);white-space:pre-wrap;margin:0;font-size:12px;line-height:1.7}.exploration-card-actions{border-top:1px solid #efe2dac2;margin-top:2px;padding-top:8px}.exploration-card-action-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.exploration-column-empty{color:#9c8178;text-align:center;border:1px dashed #e3c6bb;border-radius:10px;justify-content:center;align-items:center;min-height:106px;padding:14px;font-size:12px;font-weight:750;display:flex}.exploration-column.convert .exploration-column-empty{color:var(--primary);background:#fffdfb8f;border-color:#e1aa96}.life-exploration-modal{width:min(100%,720px)}.life-exploration-note-field{margin-top:18px}.stock-workspace-toolbar{background:#fffdfbe6;border:1px solid #efe2dad1;border-radius:0;justify-content:space-between;align-items:center;gap:14px;margin-bottom:0;padding:8px 16px;display:flex}.life-area-toolbar.stock-workspace-toolbar{border-top:0;border-bottom:1px solid #efe2dae6;justify-content:flex-start;padding:0 24px}.life-area-toolbar .stock-sub-tabs{background:0 0;border:0;border-radius:0;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;width:min(100%,720px);max-width:720px;padding:0;display:grid}.life-area-toolbar .stock-sub-tabs button{color:#9a8980;white-space:nowrap;border-radius:0;justify-content:center;align-items:center;min-width:0;min-height:58px;padding:0 18px;font-size:14px;font-weight:850;transition:color .18s,opacity .18s;display:inline-flex;position:relative}.life-area-toolbar .stock-sub-tabs button:after{content:"";background:0 0;border-radius:999px 999px 0 0;height:3px;transition:background .18s;position:absolute;bottom:-1px;left:18px;right:18px}.life-area-toolbar .stock-sub-tabs button:hover{color:var(--ink)}.life-area-toolbar .stock-sub-tabs button.active{box-shadow:none;color:var(--primary-dark);background:0 0;transform:none}.life-area-toolbar .stock-sub-tabs button.active:after{background:linear-gradient(90deg,#efb49d,#dc5f73)}.stock-sub-tabs{gap:6px;display:flex}.stock-sub-tabs button{color:var(--muted);background:0 0;border:0;border-radius:9px;min-width:110px;padding:11px 18px;font-size:14px;font-weight:800}.stock-sub-tabs button.active{background:var(--primary-soft);color:var(--primary-dark)}.transaction-help{color:var(--primary-dark);background:#f0f8f5;border-bottom:1px solid #d9eee7;padding:12px 25px;font-size:13px}.transaction-table-wrap{overflow-x:auto}.transaction-table-wrap table{min-width:1100px}.transaction-type{border-radius:999px;padding:5px 9px;font-size:11px;font-weight:850;display:inline-block}.transaction-type.buy{color:#16705d;background:#e7f5f0}.transaction-type.sell{color:#b54b43;background:#fff0ef}.wealth-module-summary{border-bottom:1px solid var(--line);background:#f4faf8;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.wealth-module-summary>div{background:#ffffffb3;padding:18px 25px}.wealth-module-summary span,.wealth-module-summary strong,.wealth-module-summary small{display:block}.wealth-module-summary span{color:var(--muted);margin-bottom:5px;font-size:11px;font-weight:750}.wealth-module-summary strong{font-size:18px}.wealth-module-summary small{color:var(--muted);margin-top:5px;font-size:11px}.fixed-expense-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.reserve-setting-card{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:16px 24px;display:grid}.reserve-setting-card>div>span{font-weight:850;display:block}.reserve-setting-card>div>small{color:var(--muted);margin-top:4px;font-size:12px;display:block}.reserve-months-field{flex-direction:row;align-items:center;gap:8px;margin:0;display:flex}.reserve-months-field input{width:110px}.reserve-months-field span{color:var(--muted);margin:0;font-size:13px;font-weight:750}.fixed-expense-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fixed-expense-table-wrap table{min-width:860px}.fixed-expense-group{margin:14px}.fixed-expense-group+.fixed-expense-group{margin-top:0}.fixed-expense-category-badge{color:#285ea8;background:#eef6ff;border-color:#cfe1f8}.fixed-expense-name-cell .status-pill{box-sizing:border-box;text-align:center;white-space:nowrap;justify-content:center;align-items:center;width:52px;margin:5px 0 0;line-height:1}.fixed-expense-avatar.active{color:#16705d;background:#e7f5f0;border-color:#cce9df}.fixed-expense-avatar.muted{color:var(--muted);background:#edf1f5;border-color:#dfe5ec}.fixed-expense-note{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:360px;display:block;overflow:hidden}.fixed-expense-mobile-list{display:none}.fixed-expense-mobile-note{color:var(--muted);margin:0 0 12px;font-size:12px;line-height:1.6}.status-pill{border-radius:999px;margin-bottom:6px;padding:4px 8px;font-size:11px;font-weight:850;display:inline-flex}.status-pill.positive{color:#506d67;background:#eff6f5}.status-pill.muted{color:var(--muted);background:#edf1f5}.wealth-card-grid{background:#f5f7f9;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px;display:grid}.wealth-data-card{border:1px solid var(--line);background:#fff;border-radius:13px;padding:16px}.wealth-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.wealth-card-heading span{color:var(--primary);margin-bottom:4px;font-size:11px;font-weight:850;display:block}.wealth-card-heading h3{margin-bottom:0;font-size:16px}.wealth-card-value{background:var(--surface-soft);border-radius:10px;margin:16px 0 12px;padding:12px}.wealth-card-value span,.wealth-card-value strong,.wealth-card-value small{display:block}.wealth-card-value span{color:var(--muted);margin-bottom:4px;font-size:11px}.wealth-card-value strong{font-size:16px}.wealth-card-value small,.wealth-data-card>p{color:var(--muted);margin-top:4px;font-size:11px}.wealth-data-card>p{margin-bottom:0;line-height:1.55}.account-card-actions{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.account-card-actions .button{width:100%;min-height:36px}.account-movement-history{border-top:1px solid var(--line);padding:22px 24px 26px}.account-movement-history-heading{justify-content:space-between;align-items:flex-end;margin-bottom:14px;display:flex}.account-movement-history-heading h3{margin:2px 0 0;font-size:17px}.account-movement-history-heading>span{color:var(--muted);font-size:13px}.account-movement-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}.account-movement-list{gap:9px;display:grid}.account-movement-row{background:var(--surface-soft);border:1px solid var(--line);border-radius:11px;grid-template-columns:minmax(210px,1fr) auto minmax(180px,.8fr);align-items:center;gap:16px;padding:13px 15px;display:grid}.account-movement-main span,.account-movement-main strong,.account-movement-main small{display:block}.account-movement-main span{color:var(--muted);font-size:11px}.account-movement-main strong{margin-top:2px;font-size:12px}.account-movement-main small{color:var(--muted);margin-top:3px;font-size:11px}.account-movement-amount{text-align:right;white-space:nowrap;font-size:14px;font-weight:850}.account-movement-amount.positive{color:var(--positive)}.account-movement-amount.negative{color:var(--negative)}.account-movement-row>p{color:var(--muted);text-align:right;margin:0;font-size:11px;line-height:1.55}.account-movement-empty{background:var(--surface-soft);border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:11px;padding:24px;font-size:13px}.fund-movement-intro{color:var(--primary-dark);background:#f4faf8;border:1px solid #d6ebe5;border-radius:10px;margin:0 0 16px;padding:11px 13px;font-size:13px;line-height:1.6}.form-note-field{margin-top:16px}.form-warning{color:#8a5a17;background:#fff6e8;border:1px solid #f2dbb7;border-radius:9px;margin:14px 0 0;padding:10px 12px;font-size:13px;line-height:1.55}.category-account-list{gap:14px;display:grid}.fund-sync-panel{background:#f4faf8;border:1px solid #d6ebe5;border-radius:11px;margin-top:16px;padding:14px}.fund-sync-panel>span{color:var(--primary-dark);margin-bottom:10px;font-size:13px;font-weight:850;display:block}.fund-sync-option{cursor:pointer;background:#fff;border:1px solid #c9e4dc;border-radius:9px;align-items:flex-start;gap:10px;padding:12px;display:flex}.fund-sync-option input{accent-color:var(--primary);width:17px;height:17px;margin-top:1px}.fund-sync-option strong,.fund-sync-option small{display:block}.fund-sync-option strong{color:var(--primary-dark);font-size:12px}.fund-sync-option small,.fund-sync-panel>p{color:var(--muted);font-size:11px;line-height:1.55}.fund-sync-option small{margin-top:3px}.fund-sync-panel>p{margin:9px 2px 0}.fund-mode{white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:850;display:inline-block}.fund-mode.synced{color:#166b59;background:#e5f4ef}.fund-mode.record-only{color:#657181;background:#eef1f4}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@media (max-width:1120px){.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card:nth-child(4),.metric-card:nth-child(5){min-height:116px}.allocation-grid{grid-template-columns:1fr}.allocation-panel{grid-template-columns:180px 1fr;gap:20px;display:grid}.allocation-heading{margin-bottom:0;display:block}.allocation-heading>span{margin-top:10px;display:inline-block}.allocation-list,.asset-allocation-list,.deposit-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.insurance-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.wealth-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){.desktop-sort-help,.drag-handle,.desktop-card-actions{display:none!important}.draggable-stock-row{cursor:default;-webkit-user-drag:none}.mobile-card-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:13px;display:flex}.topbar{padding:0 18px}.page-shell{padding:30px 16px 56px}.welcome-row{flex-direction:column;align-items:stretch}.cash-form,.allocation-cta{width:100%}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{flex-wrap:wrap;min-height:118px;padding-left:19px}.section-top{flex-direction:column;align-items:stretch}.filters{width:100%}.search-box{flex:1;width:auto}.table-wrap{display:none}.stock-mobile-list{gap:10px;padding:12px;display:grid}.stock-mobile-card{border:1px solid var(--line);border-radius:12px;padding:13px}.stock-mobile-heading,.stock-mobile-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.stock-mobile-heading>strong{white-space:nowrap;font-size:14px}.stock-mobile-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:13px 0;display:grid}.stock-mobile-stats>div{background:var(--surface-soft);border-radius:8px;padding:9px}.stock-mobile-stats span,.stock-mobile-stats strong{display:block}.stock-mobile-stats span{color:var(--muted);margin-bottom:4px;font-size:11px}.stock-mobile-stats strong{font-size:13px}.mobile-order-actions{gap:6px;display:flex}.mobile-order-actions button{background:var(--primary-soft);color:var(--primary);border:0;border-radius:7px;padding:7px 9px;font-size:11px;font-weight:800}.mobile-order-actions button:disabled{cursor:default;opacity:.35}.asset-tabs button{padding-inline:15px}.life-overview-grid{grid-template-columns:1fr}.life-area-bar{grid-template-columns:46px 1fr 40px}.life-area-hero,.life-area-grid{grid-template-columns:1fr}.life-area-hero{padding:20px}.life-area-hero h2{font-size:23px}.cash-table-wrap,.crypto-table-wrap,.deposit-table-wrap,.fixed-expense-table-wrap{display:none}.crypto-mobile-list,.cash-mobile-list,.fixed-expense-mobile-list,.deposit-mobile-list{gap:10px;padding:14px;display:grid}.crypto-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.section-actions{flex-direction:column;align-items:stretch}.account-movement-row{grid-template-columns:minmax(0,1fr) auto}.account-movement-filters{grid-template-columns:1fr}.account-movement-row>p{text-align:left;grid-column:1/-1}.stock-workspace-toolbar{flex-direction:column;align-items:stretch}.life-area-toolbar.stock-workspace-toolbar{align-items:stretch;padding-inline:14px}.life-area-toolbar .stock-sub-tabs{width:100%;max-width:100%;padding:0;display:flex;overflow-x:auto}.stock-sub-tabs button{flex:1}.life-area-toolbar .stock-sub-tabs button{flex:none;min-width:88px;min-height:48px;padding-inline:12px;font-size:12px}.life-area-toolbar .stock-sub-tabs button:after{left:12px;right:12px}.deposit-card{border:1px solid var(--line);border-radius:13px;padding:15px}.deposit-card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.deposit-card-heading>div>span,.deposit-card-heading strong,.deposit-card-heading small{display:block}.deposit-card-heading>div>span{color:var(--primary);font-size:11px;font-weight:800}.deposit-card-heading strong{margin-top:3px;font-size:14px}.deposit-card-heading small{color:var(--muted);margin-top:4px;font-size:11px}.deposit-card-stats{background:var(--surface-soft);border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:13px 0 8px;padding:12px;display:grid}.deposit-card-stats span,.deposit-card-stats strong{display:block}.deposit-card-stats span{color:var(--muted);margin-bottom:4px;font-size:11px}.deposit-card-stats strong{font-size:13px}.insurance-board{grid-template-columns:repeat(3,minmax(280px,1fr));overflow-x:auto}.insurance-column{min-height:360px}.cash-card{border:1px solid var(--line);border-radius:13px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px;display:grid}.cash-card span,.cash-card strong,.cash-card small{display:block}.cash-card span{color:var(--primary);font-size:11px;font-weight:850}.cash-card strong{margin-top:3px;font-size:14px}.cash-card small{color:var(--muted);margin-top:4px;font-size:11px}.cash-card-value{text-align:right}.mobile-holdings{gap:12px;padding:14px;display:grid}.holding-card{border:1px solid var(--line);border-radius:13px;padding:15px}.holding-card-header{justify-content:space-between}.holding-stats{background:var(--surface-soft);border-radius:10px;grid-template-columns:repeat(2,1fr);gap:13px;margin-top:14px;padding:13px;display:grid}.holding-stats span,.holding-stats strong{display:block}.holding-stats span{color:var(--muted);margin-bottom:4px;font-size:11px}.holding-stats strong{font-size:14px}.card-alerts{flex-flow:wrap;align-items:center;margin-top:12px}.target-input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.brand span,.topbar .alert-summary,.user-chip{display:none}.topbar .button{padding:0 13px}.topbar .button.secondary,.topbar .button.ghost,.topbar .button.topbar-create-button{display:none}.topbar .button.allocation-button{width:auto;padding-inline:10px;display:inline-flex}.topbar .button.account-button,.topbar .button.help-button{padding-inline:10px}.desktop-only-label{display:none}.topbar .button.topbar-action-button svg{width:19px;height:19px}.quick-start-content{max-height:calc(100vh - var(--mobile-modal-top-gap,18px) - 73px);max-height:calc(100dvh - var(--mobile-modal-top-gap,18px) - 73px);padding:18px;overflow-y:auto}.data-management-actions{grid-template-columns:1fr}h1{font-size:28px}.dashboard-grid{gap:10px}.asset-tabs{border-radius:12px}.asset-allocation-card{padding:16px}.asset-allocation-heading,.deposit-dashboard-heading{align-items:flex-start;gap:12px}.asset-allocation-list,.deposit-metrics{grid-template-columns:1fr}.insurance-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.master-options-layout{min-height:0;display:block}.master-category-list{border-bottom:1px solid var(--line);border-right:0;gap:6px;display:flex;overflow-x:auto}.master-category-list button{flex:none;width:auto;margin-bottom:0}.master-option-create{grid-template-columns:1fr}.master-option-row{align-items:flex-start;gap:12px}.master-option-actions{flex-wrap:wrap;justify-content:flex-end}.insurance-summary>div{padding:14px 16px}.stock-market-heading{align-items:flex-start;padding:12px 14px}.stock-market-heading>div:first-child{flex-direction:column;align-items:flex-start;gap:3px}.cash-overview,.wealth-module-summary,.wealth-card-grid{grid-template-columns:1fr}.reserve-setting-card{grid-template-columns:1fr;align-items:stretch;padding:16px}.reserve-months-field input{width:100%}.account-movement-history{padding:18px 14px 20px}.account-movement-row{align-items:start;gap:10px;padding:12px}.crypto-summary{grid-template-columns:1fr}.cash-overview>div{padding:14px 16px}.deposit-tab-summary{padding:16px}.deposit-preview{grid-template-columns:1fr}.cash-card{grid-template-columns:minmax(0,1fr) auto;align-items:start}.cash-card .row-actions{grid-column:1/-1;justify-content:flex-start}.allocation-panel{display:block}.allocation-heading{margin-bottom:19px;display:flex}.allocation-list,.target-input-grid{grid-template-columns:1fr}.metric-card{min-height:150px;padding:14px;display:block}.metric-icon{margin-bottom:11px}.metric-card strong{font-size:18px}.metric-card small{line-height:1.4}.section-top{padding:20px 16px 16px}.filters{flex-direction:column;align-items:stretch}.filters select,.search-box{width:100%}.modal-backdrop{--mobile-modal-top-gap:max(18px, env(safe-area-inset-top));padding:var(--mobile-modal-top-gap) 0 0;align-items:flex-end}.modal-panel{max-height:calc(100vh - var(--mobile-modal-top-gap));max-height:calc(100dvh - var(--mobile-modal-top-gap));border-radius:18px 18px 0 0;flex-direction:column;width:100%;display:flex}.modal-header{background:var(--surface);z-index:2;flex:none;padding:18px 18px 15px;position:sticky;top:0}.modal-header .icon-button{flex:none}.modal-panel>form{flex-direction:column;flex:auto;min-height:0;display:flex}.account-settings{max-height:calc(100vh - var(--mobile-modal-top-gap) - 73px);max-height:calc(100dvh - var(--mobile-modal-top-gap) - 73px);overscroll-behavior:contain;padding:18px}.form-scroll{max-height:calc(100vh - var(--mobile-modal-top-gap) - 154px);max-height:calc(100dvh - var(--mobile-modal-top-gap) - 154px);flex:auto;padding:18px}.fund-movement-modal-scroll{max-height:calc(100vh - var(--mobile-modal-top-gap) - 76px);max-height:calc(100dvh - var(--mobile-modal-top-gap) - 76px)}.fund-movement-create{padding:18px 18px 0}.fund-movement-section-heading{align-items:flex-start}.fund-movement-form-actions{margin:20px -18px 0}.form-grid,.form-grid.three-columns{grid-template-columns:1fr}.modal-actions{padding:13px 18px max(13px, env(safe-area-inset-bottom));flex:none}.modal-actions .button{flex:1}.auth-card{padding:25px 20px}}@media (max-width:720px){.master-options-modal{max-height:94vh}.master-options-layout{flex-direction:column;flex:auto;min-height:0;max-height:calc(94vh - 72px);display:flex;overflow:hidden}.master-options-layout.tag-mode{max-height:calc(94vh - 72px);display:block}.master-category-list{border-bottom:1px solid var(--line);border-right:0;flex:none;gap:6px;padding:10px;display:flex;overflow:auto hidden}.master-category-list button{flex:none;width:auto;margin-bottom:0}.master-options-content{flex:auto;min-height:0;padding:14px}.master-option-create{grid-template-columns:1fr}.stock-group-block-heading,.stock-group-row{grid-template-columns:1fr;align-items:stretch}.stock-group-block-heading{gap:10px;display:grid}.stock-group-actions{justify-content:flex-start}.allocation-pie-body{align-items:stretch}.allocation-pie-chart{min-height:132px}}
