:root{font-family:Inter,SF Pro Display,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:#14213b;background:#f2f5fa;font-synthesis:none;text-rendering:optimizeLegibility;--blue: #0b63e8;--blue-deep: #0846b8;--blue-soft: #edf5ff;--text: #14213b;--muted: #71809b;--line: #dfe5ee;--line-soft: #eef1f5;--positive: #e22935;--negative: #00875a;--sidebar: 306px;--topbar: 68px;--surface-soft: #f2f5fa;--radius: 14px;--shadow-soft: 0 1px 2px rgba(16, 42, 83, .05), 0 12px 32px -14px rgba(16, 42, 83, .14);--shadow-lift: 0 2px 6px rgba(16, 42, 83, .06), 0 20px 46px -16px rgba(16, 42, 83, .22);--ease: cubic-bezier(.33, .8, .35, 1)}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background:radial-gradient(1100px 460px at 88% -120px,rgba(11,99,232,.07),transparent 62%),radial-gradient(900px 420px at -8% 108%,rgba(0,135,90,.05),transparent 58%),#f2f5fa}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(9,105,232,.22);outline-offset:1px}.positive{color:var(--positive)!important}.negative{color:var(--negative)!important}.neutral{color:var(--text)!important}@keyframes fade-slide-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes pop-in{0%{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes flash-up{0%{background-color:#e2293521}to{background-color:#fff}}@keyframes flash-down{0%{background-color:#00875a21}to{background-color:#fff}}@keyframes pulse-dot{0%{box-shadow:0 0 #00aa6073}70%{box-shadow:0 0 0 7px #00aa6000}to{box-shadow:0 0 #00aa6000}}@keyframes halo{0%{transform:scale(.5);opacity:.65}80%{transform:scale(2.6);opacity:0}to{transform:scale(2.6);opacity:0}}@keyframes chart-draw{0%{stroke-dashoffset:2400}to{stroke-dashoffset:0}}@keyframes spin{to{transform:rotate(360deg)}}.app-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:12px;color:var(--muted);font-size:15px}.brand-mark{color:var(--blue);font-size:34px;font-weight:800;display:inline-block;animation:pulse-dot 1.6s infinite}.auth-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}.auth-intro{position:relative;overflow:hidden;padding:64px 8vw;color:#fff;background:linear-gradient(152deg,#0a2a63,#0c3f8f 52%,#0b63e8 130%);display:flex;flex-direction:column;justify-content:center}.auth-intro:before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;right:-180px;top:-180px;background:radial-gradient(circle at 32% 32%,rgba(96,176,255,.35),transparent 66%);animation:intro-float 9s ease-in-out infinite alternate}.auth-intro:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;left:-140px;bottom:-160px;background:radial-gradient(circle at 60% 40%,rgba(0,210,160,.22),transparent 65%);animation:intro-float 11s ease-in-out infinite alternate-reverse}@keyframes intro-float{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-46px,34px,0) scale(1.12)}}.auth-brand{position:absolute;top:48px;left:8vw;display:flex;align-items:center;gap:11px;font-weight:700;font-size:19px;letter-spacing:-.01em;z-index:1}.auth-intro h1{position:relative;z-index:1;max-width:640px;margin:0 0 24px;font-size:clamp(46px,5vw,76px);line-height:1.08;letter-spacing:-.045em;animation:fade-slide-up .7s var(--ease) both}.auth-intro p{position:relative;z-index:1;max-width:540px;margin:0;color:#bdcee6;font-size:18px;line-height:1.8;animation:fade-slide-up .7s var(--ease) .12s both}.auth-lines{position:absolute;inset:auto -10% -10% 15%;height:45%;transform:rotate(-5deg);opacity:.32}.auth-lines i{position:absolute;inset:auto 0;height:2px;background:linear-gradient(90deg,transparent,#6fb1ff 30%,#9ad9ff 70%,transparent);transform-origin:left;background-size:220px 100%;animation:line-flow 5.5s linear infinite}.auth-lines i:nth-child(1){bottom:30%;transform:rotate(-10deg)}.auth-lines i:nth-child(2){bottom:48%;transform:rotate(5deg);opacity:.7;animation-delay:-1.8s}.auth-lines i:nth-child(3){bottom:68%;transform:rotate(-2deg);opacity:.45;animation-delay:-3.6s}@keyframes line-flow{0%{background-position:-220px 0}to{background-position:calc(100% + 220px) 0}}.auth-panel{display:grid;place-items:center;padding:48px}.auth-form-wrap{width:min(400px,100%);background:#fff;border:1px solid #e3e9f2;border-radius:18px;padding:38px 36px 34px;box-shadow:var(--shadow-soft);animation:fade-slide-up .6s var(--ease) both}.auth-form-wrap h2{margin:0 0 10px;font-size:30px;letter-spacing:-.03em}.auth-form-wrap>p{color:var(--muted);margin:0 0 26px}.auth-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:26px}.auth-tabs button{flex:1;border:0;background:none;padding:13px;cursor:pointer;color:var(--muted);border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.auth-tabs button:hover{color:var(--text)}.auth-tabs button.active{color:var(--blue);border-color:var(--blue);font-weight:650}form label,.workspace-controls label{display:grid;gap:8px;color:#526079;font-size:13px;font-weight:600}input,select{border:1px solid #ccd5e2;background:#fff;border-radius:7px;color:var(--text);transition:border-color .2s,box-shadow .2s}input:hover,select:hover{border-color:#a9bad2}input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0b63e824;outline:0}.auth-form-wrap input,.account-modal input{width:100%;height:46px;padding:0 13px;margin-bottom:18px}.primary,.outline,.danger-text,.icon-action,.logout-button{min-height:38px;border-radius:8px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-size:13px;font-weight:650}.primary{border:1px solid transparent;color:#fff;background:linear-gradient(135deg,#1a78f2,var(--blue) 55%,var(--blue-deep));box-shadow:0 6px 16px -6px #0b63e88c;transition:transform .18s var(--ease),box-shadow .18s,filter .18s}.primary:hover{transform:translateY(-1px);box-shadow:0 10px 22px -8px #0b63e8a6;filter:saturate(1.08)}.primary:active{transform:translateY(0) scale(.98);box-shadow:0 4px 12px -6px #0b63e880}.primary:disabled{opacity:.65;cursor:default;transform:none}.primary.wide{width:100%;height:46px;margin-top:6px}.outline{border:1px solid #cbd5e2;background:#fff;transition:border-color .2s,background .2s,transform .18s var(--ease),box-shadow .18s}.outline:hover{border-color:#9eb0c7;background:#f8fafc;transform:translateY(-1px);box-shadow:0 6px 14px -8px #102a5340}.outline:active{transform:translateY(0) scale(.98)}.danger-text{color:#bd2330;border:1px solid transparent;background:transparent;transition:background .2s,border-color .2s}.danger-text:hover{background:#fff2f3;border-color:#f5d4d8}.form-error,.page-error{color:#bd2330;background:#fff2f3;border:1px solid #ffd4d8;padding:10px 12px;border-radius:8px;font-size:13px;margin-bottom:14px;animation:pop-in .3s var(--ease) both}.dashboard{min-height:100vh;display:grid;grid-template:var(--topbar) 1fr / var(--sidebar) 1fr}.topbar{grid-column:1 / -1;height:var(--topbar);border-bottom:1px solid rgba(223,229,238,.8);display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:#ffffffd1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:760;letter-spacing:-.02em}.brand svg{color:var(--blue);animation:brand-bob 5s ease-in-out infinite}@keyframes brand-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2.5px)}}.topbar-actions{display:flex;align-items:center;gap:18px}.topbar-actions select{height:34px;padding:0 28px 0 10px;font-size:13px;cursor:pointer}.switch-label{display:flex;align-items:center;gap:9px;color:#42516b;font-size:13px;font-weight:550}.switch{position:relative;width:38px;height:21px;padding:0;border:0;border-radius:12px;background:#cbd3de;cursor:pointer;transition:background .25s,box-shadow .25s}.switch i{position:absolute;width:17px;height:17px;border-radius:50%;background:#fff;top:2px;left:2px;box-shadow:0 1px 4px #8290a3;transition:transform .25s var(--ease)}.switch:hover{background:#b4bfd0}.switch.on{background:var(--blue);box-shadow:0 0 10px #0b63e859}.switch.on:hover{background:#1a70f0}.switch.on i{transform:translate(17px)}.account-button{height:38px;border:0;border-left:1px solid var(--line);background:#fff;display:flex;align-items:center;gap:8px;padding-left:18px;cursor:pointer;font-size:14px;border-radius:0 8px 8px 0;transition:background .2s}.account-button:hover{background:#f6f9fd}.account-button span{width:30px;height:30px;display:grid;place-items:center;background:linear-gradient(135deg,#d9e9ff,#eaf2fc);color:#4a6ea8;border-radius:50%;transition:transform .2s var(--ease)}.account-button:hover span{transform:scale(1.08)}.sidebar{grid-row:2;position:sticky;top:var(--topbar);height:calc(100vh - var(--topbar));border-right:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden;background:#fff}.sidebar-title{height:58px;padding:0 20px;display:flex;align-items:center;justify-content:space-between}.sidebar-title h2{font-size:17px;margin:0}.sidebar-title button{border:0;background:none;color:#5b6b84;cursor:pointer;width:30px;height:30px;display:grid;place-items:center;border-radius:8px;transition:background .2s,color .2s,transform .2s var(--ease)}.sidebar-title button:hover{background:var(--blue-soft);color:var(--blue);transform:scale(1.1) rotate(90deg)}.fund-search{margin:0 20px 15px;height:40px;border:1px solid #ccd5e2;border-radius:8px;display:flex;align-items:center;gap:8px;padding:0 11px;color:#8a98ad;background:#fbfcfe;transition:border-color .2s,box-shadow .2s,background .2s}.fund-search:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #0b63e821;background:#fff}.fund-search button{width:20px;height:30px;padding:0;border:0;background:transparent;color:#8a98ad;display:grid;place-items:center;cursor:pointer;transition:color .2s,transform .2s var(--ease)}.fund-search button:hover{color:var(--blue);transform:scale(1.12)}.fund-search input{min-width:0;flex:1;border:0;outline:0;height:100%;font-size:13px;background:transparent}.fund-search input:focus{box-shadow:none}.favorite-list{flex:1;min-height:120px;overflow-y:auto;border-top:1px solid var(--line-soft);scrollbar-width:thin;scrollbar-color:#c6d2e4 transparent}.favorite-list::-webkit-scrollbar{width:6px}.favorite-list::-webkit-scrollbar-thumb{background:#c6d2e4;border-radius:3px}.favorite-list::-webkit-scrollbar-thumb:hover{background:#a9bad2}.favorite-row{position:relative;width:100%;min-height:78px;padding:14px 16px 14px 21px;border:0;border-bottom:1px solid var(--line-soft);background:#fff;display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer;transition:background .2s,padding-left .22s var(--ease)}.favorite-row:hover{background:#f6f9fd;padding-left:26px}.favorite-row.selected{background:linear-gradient(90deg,var(--blue-soft),rgba(237,245,255,.35))}.favorite-row.selected:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#3c8dff,var(--blue));border-radius:0 3px 3px 0}.favorite-row.dragging{opacity:.45}.favorite-row.drag-over{background:#f2f7ff}.favorite-row.drag-over:after{content:"";position:absolute;left:10px;right:10px;top:-2px;height:3px;background:var(--blue);border-radius:3px;box-shadow:0 0 8px #0b63e88c;z-index:1}.favorite-row strong{display:block;max-width:175px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13.5px}.favorite-row small{display:block;margin-top:8px;color:var(--muted);font-size:12px;letter-spacing:.02em;font-variant-numeric:tabular-nums}.favorite-meta{display:flex;flex-direction:column;align-items:flex-end;gap:8px;color:#6a7890;font-size:11px}.favorite-meta svg{transition:transform .2s var(--ease)}.favorite-row:hover .favorite-meta svg{transform:translate(3px)}.portfolio-rail{flex:0 0 auto;border-top:1px solid var(--line);padding:18px 21px 21px;background:linear-gradient(180deg,#fbfdff,#f4f8fd)}.rail-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px;font-weight:700;font-size:14px}.portfolio-rail label,.portfolio-rail small{display:block;color:var(--muted);font-size:11px;margin-top:13px}.portfolio-rail strong{display:block;margin-top:5px;font-size:18px;font-variant-numeric:tabular-nums}.portfolio-rail .portfolio-amount{font-size:25px;letter-spacing:-.02em;background:linear-gradient(120deg,#14213b,#2c4a7c);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.main-panel{grid-row:2;grid-column:2;min-width:0;background:transparent}.workspace-head{min-height:104px;border-bottom:1px solid var(--line);padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#ffffffe6;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.fund-identity>div{display:flex;align-items:center;gap:9px}.fund-identity h1{margin:0;font-size:21px;letter-spacing:-.02em}.fund-identity span{color:#7686a0;font-size:13px;font-variant-numeric:tabular-nums}.fund-identity svg{color:#f0a910;filter:drop-shadow(0 1px 3px rgba(240,169,16,.35))}.fund-identity>small{display:block;color:var(--muted);margin-top:11px;font-size:12px}.workspace-controls{display:flex;align-items:end;gap:10px}.workspace-controls input{width:150px;height:38px;padding:0 11px;font-size:13px;font-variant-numeric:tabular-nums}.workspace-controls .outline{height:38px}.icon-action{width:38px;padding:0;border:1px solid #cbd5e2;background:#fff;transition:transform .3s var(--ease),border-color .2s,color .2s,box-shadow .2s}.icon-action:hover{color:var(--blue);border-color:var(--blue);transform:rotate(180deg);box-shadow:0 6px 14px -8px #0b63e880}.page-error{margin:18px 24px 0}.market-pill{display:inline-flex;align-items:center;gap:7px;margin-top:11px;padding:4px 11px 4px 9px;border-radius:999px;font-size:12px;font-weight:600;color:#687791;background:#eef2f8;border:1px solid #e2e8f1}.market-pill i{width:7px;height:7px;border-radius:50%;background:#97a3b6}.market-pill.trading{color:#046d49;background:#e7f7f0;border-color:#c9ecdd}.market-pill.trading i{background:#00a862;animation:pulse-dot 1.8s infinite}.analytics{display:grid;grid-template-columns:minmax(430px,.78fr) minmax(520px,1.22fr);gap:22px;padding:22px 24px;border-bottom:1px solid var(--line);align-items:stretch;position:relative}.analytics.is-loading{opacity:.72}.analytics.is-loading:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:var(--radius);background:linear-gradient(100deg,transparent 32%,rgba(255,255,255,.6) 50%,transparent 68%);animation:shimmer 1.5s infinite}.analytics>*{animation:fade-slide-up .55s var(--ease) both}.analytics>*:nth-child(2){animation-delay:.08s}.returns-panel{min-height:360px;display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #dbe3ee;border-radius:var(--radius);box-shadow:var(--shadow-soft);transition:box-shadow .3s var(--ease),transform .3s var(--ease)}.returns-panel:hover{box-shadow:var(--shadow-lift);transform:translateY(-2px)}.return-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;border-bottom:1px solid var(--line);padding:22px;position:relative;overflow:hidden;background:linear-gradient(180deg,#fcfdff,#f5f8fc)}.return-pair article{padding:16px 18px 14px;background:#fff;border:1px solid #e2e9f3;border-radius:12px;box-shadow:var(--shadow-soft);transition:transform .22s var(--ease),box-shadow .22s var(--ease),border-color .2s}.return-pair article:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift);border-color:#c7d6ee}.return-pair article.flash-up{animation:flash-up 1.1s ease-out}.return-pair article.flash-down{animation:flash-down 1.1s ease-out}.return-pair label,.metric-row label{display:block;color:#4f5e76;font-size:13px}.return-pair strong{display:block;margin:13px 0 7px;font-size:clamp(28px,2.4vw,38px);line-height:1;font-weight:620;letter-spacing:-.025em;font-variant-numeric:tabular-nums;transition:color .25s}.return-pair span{color:var(--muted);font-size:16px;font-variant-numeric:tabular-nums}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:18px 22px 20px;background:linear-gradient(180deg,#f5f8fc,#f3f7fb)}.metric-row article{text-align:center;padding:15px 10px 13px;background:#fff;border:1px solid #e2e9f3;border-radius:12px;box-shadow:var(--shadow-soft);transition:transform .22s var(--ease),box-shadow .22s var(--ease),border-color .2s}.metric-row article:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift);border-color:#c7d6ee}.metric-row strong{display:block;margin:12px 0 7px;font-size:22px;font-weight:620;letter-spacing:-.015em;font-variant-numeric:tabular-nums}.metric-row small{color:var(--muted);font-size:11px}.fund-actions{display:flex;gap:12px;margin-top:auto;padding:18px 22px;border-top:1px solid var(--line);background:linear-gradient(180deg,#f3f7fb,#f7fafd)}.fund-actions>button{flex:1;min-height:42px}.fund-actions .danger-text{border:1px solid #f0ccd1;background:#fff}.fund-actions .danger-text:hover{background:#fff5f6}.chart-panel{min-width:0;min-height:360px;padding:10px 2px 0 0;display:flex;flex-direction:column}.section-heading{display:flex;justify-content:space-between;align-items:flex-start}.section-heading h2{margin:0;font-size:18px;letter-spacing:-.015em}.section-heading small{color:var(--muted);display:block;margin-top:7px;font-size:11px}.live-status{color:#687791;font-size:11px;display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:#eef2f8;border:1px solid #e2e8f1}.live-status i{width:7px;height:7px;border-radius:50%;background:#97a3b6}.live-status.on{color:#046d49;background:#e7f7f0;border-color:#c9ecdd}.live-status.on i{background:#00a862;animation:pulse-dot 1.8s infinite}.trend-chart-shell{position:relative;width:100%;height:280px;margin-top:12px}.trend-chart{display:block;width:100%;height:100%;overflow:visible}.trend-chart line{stroke:#e8edf3;stroke-width:1}.trend-chart text{fill:#77869e;font-size:10px;text-anchor:end;font-variant-numeric:tabular-nums}.trend-chart .zero-line{stroke:#a7b3c4;stroke-dasharray:4 4}.trend-chart .trend-path{fill:none;stroke-width:2.4;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 6px 8px rgba(16,42,83,.18));stroke-dasharray:2400;animation:chart-draw 1.2s var(--ease) both}.trend-chart .trend-area{opacity:1;animation:area-in .9s ease-out both}@keyframes area-in{0%{opacity:0}to{opacity:1}}.trend-chart .last-dot{animation:pop-in .35s var(--ease) both;transform-box:fill-box;transform-origin:center}.trend-chart .pulse-ring{fill:none;stroke-width:1.6;transform-box:fill-box;transform-origin:center;animation:halo 1.9s ease-out infinite}.trend-chart .crosshair{stroke:#9fb1ca;stroke-width:1;stroke-dasharray:3 3}.trend-chart .hover-dot{transform-box:fill-box;transform-origin:center}.chart-tip{position:absolute;z-index:5;pointer-events:none;background:#111f35eb;color:#fff;border-radius:8px;padding:7px 11px;font-size:11.5px;line-height:1.55;white-space:nowrap;box-shadow:0 10px 26px -8px #111f3580;transform:translate(-50%,calc(-100% - 14px));animation:pop-in .18s var(--ease) both;font-variant-numeric:tabular-nums}.chart-tip b{display:block;font-size:13px}.chart-tip small{color:#aebdd6}.chart-empty{height:280px;margin-top:12px;display:grid;place-items:center;color:#8a98ad;font-size:13px;border-bottom:1px solid var(--line-soft)}.chart-foot{margin-top:auto;padding-top:8px;text-align:right;color:var(--muted);font-size:10px}.holdings-section{padding:24px 24px 40px}.holdings-section>.section-heading{padding:0 2px}.table-wrap{margin-top:17px;overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow-soft)}table{width:100%;border-collapse:collapse;font-size:12px}th{color:#526079;background:#f7f9fd;font-weight:650;text-align:left;height:43px;padding:0 15px;white-space:nowrap;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2;-webkit-user-select:none;user-select:none}.th-sort{display:inline-flex;align-items:center;gap:5px;border:0;background:none;padding:0;cursor:pointer;font:inherit;font-weight:650;color:inherit;transition:color .18s}.th-sort:hover,.th-sort.active{color:var(--blue)}.th-sort .sort-arrow{opacity:0;transition:opacity .18s,transform .22s var(--ease)}.th-sort:hover .sort-arrow{opacity:.4}.th-sort.active .sort-arrow{opacity:1;color:var(--blue)}.th-sort .sort-arrow.sort-asc{transform:rotate(180deg)}td{height:43px;padding:0 15px;border-bottom:1px solid var(--line-soft);white-space:nowrap;font-variant-numeric:tabular-nums;transition:background .15s}tbody tr{transition:background .18s}tbody tr:hover{background:#f4f8ff;box-shadow:inset 3px 0 0 var(--blue)}tbody tr:last-child td{border-bottom:0}td strong{font-weight:560}.code-cell{color:#61718b}.empty-row{text-align:center;color:var(--muted);height:110px}.empty-row:hover{background:transparent;box-shadow:none}.modal-backdrop{position:fixed;inset:0;z-index:50;background:#0b182e52;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:grid;place-items:center;padding:24px;animation:fade-in .22s ease-out both}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.account-modal{width:min(420px,100%);background:#fff;border-radius:14px;box-shadow:0 24px 70px #111f3547;padding:24px;animation:pop-in .28s var(--ease) both}.account-modal header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:20px}.account-modal header strong,.account-modal header small{display:block}.account-modal header small{color:var(--muted);margin-top:5px}.account-modal header button{border:0;background:#fff;cursor:pointer;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;transition:background .2s,transform .2s var(--ease)}.account-modal header button:hover{background:#f2f5fa;transform:rotate(90deg)}.account-message{font-size:12px;color:var(--negative)}.logout-button{margin-top:17px;width:100%;border:1px solid #f1cdd1;background:#fff8f8;color:#ad2430;transition:background .2s,box-shadow .2s,transform .18s var(--ease)}.logout-button:hover{background:#fff0f2;transform:translateY(-1px);box-shadow:0 8px 18px -10px #bd233066}@media(max-width:1180px){:root{--sidebar: 260px}.workspace-head{align-items:flex-start}.workspace-controls{flex-wrap:wrap;justify-content:flex-end}.analytics{grid-template-columns:1fr}.returns-panel{min-height:0}.chart-panel{min-height:350px;padding:4px 4px 0}}@media(max-width:760px){:root{--topbar: 60px}.auth-page{grid-template-columns:1fr}.auth-intro{display:none}.auth-panel{min-height:100vh;padding:20px 16px;align-items:start}.auth-form-wrap{padding:28px 22px 26px}.dashboard{display:block;padding-top:var(--topbar)}.topbar{height:var(--topbar);position:fixed;inset:0 0 auto;padding:0 14px}.brand{font-size:16px}.switch-label,.topbar-actions select{display:none}.account-button{border:0;padding-left:0;font-size:0}.sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.sidebar-title,.fund-search,.portfolio-rail{display:none}.favorite-list{display:flex;overflow-x:auto;border-top:0}.favorite-row{flex:0 0 185px;min-height:70px;border-right:1px solid var(--line-soft)}.favorite-row:hover{padding-left:21px}.main-panel{display:block}.workspace-head{padding:17px;display:block}.workspace-controls{margin-top:17px;justify-content:flex-start}.workspace-controls label{flex:1}.workspace-controls input{width:100%}.analytics{display:block;padding:14px 12px}.returns-panel{border-radius:12px}.chart-panel{margin-top:22px;padding:4px}.return-pair{gap:10px;padding:16px 14px}.return-pair article{padding:13px 12px 11px}.return-pair strong{font-size:26px}.metric-row{padding:14px 14px 16px;gap:10px}.metric-row{overflow-x:auto}.metric-row article{min-width:112px}.fund-actions{padding:14px}.trend-chart-shell,.chart-empty{height:245px}.holdings-section{padding:20px 12px 30px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
