:root{--bg:#071e22;--panel:#0c292b;--panel-2:#103436;--line:#1d4647;--text:#e6f1ed;--muted:#86a7a3;--accent:#2ec4b6;--accent-2:#1b8c87;--amber:#f4b860;--red:#ef6f6c;--blue:#6ca8ff;--purple:#9a7bdb;--shadow:0 18px 60px rgba(0,0,0,.16);--radius:12px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'Space Grotesk',sans-serif;font-size:14px}button,input,select{font:inherit}button{cursor:pointer;border:0;color:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-shell{display:flex;min-height:100vh}.sidebar{width:232px;min-width:232px;border-right:1px solid var(--line);padding:28px 18px 20px;display:flex;flex-direction:column;background:rgba(5,24,27,.5)}.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:2px;font-size:16px;margin:0 10px 57px}.brand-mark{width:22px;height:22px;display:inline-flex;position:relative;align-items:center;justify-content:center;overflow:hidden}.brand-mark:before{content:'';position:absolute;width:16px;height:16px;border:3px solid var(--accent);transform:rotate(45deg);bottom:-5px}.brand-mark i,.brand-mark b{position:absolute;background:var(--accent);width:4px;transform:skew(-32deg);height:14px;top:2px}.brand-mark i{left:6px}.brand-mark b{left:12px;background:var(--amber);height:8px;top:8px}.eyebrow{font:600 10px/1.2 'IBM Plex Mono',monospace;letter-spacing:1.3px;color:var(--muted)}.side-label{margin:0 12px 12px}.section-gap{margin-top:40px}.nav-list{display:grid;gap:4px}.nav-item{display:flex;align-items:center;gap:13px;background:transparent;color:var(--muted);padding:11px 12px;border-radius:8px;text-align:left;transition:.2s}.nav-item:hover,.nav-item.active{color:var(--text);background:var(--panel-2)}.nav-item.active{box-shadow:inset 2px 0 var(--accent)}.nav-icon{width:16px;text-align:center;font-size:18px;color:currentColor}.sidebar-bottom{margin-top:auto}.sync-dot{color:var(--muted);font:11px 'IBM Plex Mono',monospace;margin:0 10px 21px}.sync-dot span{display:inline-block;width:7px;height:7px;background:var(--accent);border-radius:50%;margin-right:8px;box-shadow:0 0 0 3px rgba(46,196,182,.12)}.profile-mini{border-top:1px solid var(--line);padding:18px 8px 0;display:flex;align-items:center;gap:10px}.profile-mini strong{display:block;font-size:12px}.profile-mini small{color:var(--muted);font-size:10px}.avatar{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#b9dfd8;color:#083436;font-weight:700;font-size:11px}.avatar.small{width:25px;height:25px;font-size:9px}.main-content{width:calc(100% - 232px);max-width:1500px;margin:auto;padding:0 42px 55px}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.breadcrumbs{display:flex;gap:11px;color:var(--muted);font-size:12px}.breadcrumbs b{font-weight:400;color:#437071}.breadcrumbs strong{color:var(--text)}.top-actions{display:flex;align-items:center;gap:21px}.icon-button,.ghost-icon{background:transparent;color:var(--muted);position:relative}.notification-dot{position:absolute;right:-2px;top:1px;width:5px;height:5px;background:var(--amber);border-radius:50%}.user-button{background:transparent;display:flex;align-items:center;gap:9px;font-size:12px}.chevron{color:var(--muted);font-size:16px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;padding:42px 0 28px}.page-head h1{font-size:36px;margin:12px 0 5px;letter-spacing:-1.5px}.accent{color:var(--accent)}.muted{color:var(--muted);margin:0}.live-pill{font-size:9px;color:var(--accent);border:1px solid rgba(46,196,182,.4);padding:4px 7px;border-radius:20px;margin-left:12px;vertical-align:2px}.live-pill span{display:inline-block;width:5px;height:5px;background:var(--accent);border-radius:50%;margin-right:4px}.primary-button{background:var(--accent);color:#052426;border-radius:7px;padding:11px 15px;font-weight:700;transition:.2s}.primary-button:hover{filter:brightness(1.1);transform:translateY(-1px)}.mode-switch{display:flex;gap:26px;border-bottom:1px solid var(--line);margin-bottom:22px}.mode-tab{background:transparent;padding:0 0 13px;color:var(--muted);position:relative}.mode-tab.active{color:var(--text);font-weight:600}.mode-tab.active:after{content:'';height:2px;background:var(--accent);position:absolute;bottom:-1px;left:0;right:0}.mode-tab span,.count-badge{font:10px 'IBM Plex Mono',monospace;background:var(--panel-2);color:var(--muted);border-radius:10px;padding:3px 6px;margin-left:5px}.mode-tab.active span{background:rgba(46,196,182,.15);color:var(--accent)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.kpi-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:16px}.panel-heading,.section-header{display:flex;align-items:flex-start;justify-content:space-between}.hero-kpi{min-height:256px}.hero-value{font:600 34px 'IBM Plex Mono',monospace;margin:15px 0 8px;letter-spacing:-2px}.value-change{display:flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:11px}.positive{color:var(--accent)}.value-change small{color:var(--muted);font-size:10px}.value-change em{color:#3f6563;font-style:normal}.hero-sparkline{margin-top:29px}.hero-sparkline svg{width:100%;height:63px}.spark-fill{fill:url(#fill)}.spark-line{fill:none;stroke:var(--accent);stroke-width:2}.spark-labels,.x-axis{display:flex;justify-content:space-between;color:#537976;font:9px 'IBM Plex Mono',monospace}.metric-icon{width:25px;height:25px;display:grid;place-items:center;border-radius:6px;background:rgba(46,196,182,.12);color:var(--accent)}.metric-icon.amber{color:var(--amber);background:rgba(244,184,96,.1)}.stat-value{display:block;font:600 23px 'IBM Plex Mono',monospace;margin:22px 0 10px;letter-spacing:-1px}.stat-meta{display:flex;gap:8px;color:var(--muted);font:10px 'IBM Plex Mono',monospace}.mini-bars{height:38px;margin-top:27px;display:flex;align-items:flex-end;gap:7px}.mini-bars i{display:block;flex:1;border-radius:2px 2px 0 0;background:var(--accent-2)}.mini-bars i:last-child{background:var(--accent)}.cash-progress{height:5px;border-radius:4px;background:#183d3e;margin-top:31px;overflow:hidden}.cash-progress span{display:block;height:100%;background:var(--amber);border-radius:4px}.cash-caption{display:flex;justify-content:space-between;color:var(--muted);font:9px 'IBM Plex Mono',monospace;margin-top:10px}.content-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:16px;margin-top:16px}.section-header h2{font-size:17px;margin:7px 0 0;letter-spacing:-.4px}.period-tabs{display:flex;gap:4px}.period-tabs button,.ghost-button{background:transparent;color:var(--muted);font:10px 'IBM Plex Mono',monospace;padding:7px 8px;border-radius:5px}.period-tabs button.active,.period-tabs button:hover{background:var(--panel-2);color:var(--accent)}.ghost-button{border:1px solid var(--line)}.chart-wrap{position:relative;height:243px;margin-top:26px;padding-left:42px}.y-axis{position:absolute;left:0;top:-2px;bottom:18px;display:flex;flex-direction:column;justify-content:space-between;color:#537976;font:9px 'IBM Plex Mono',monospace}.performance-chart{width:100%;height:215px}.grid-lines line{stroke:#1d4243;stroke-width:1}.chart-area{fill:url(#chartFill)}.chart-line{fill:none;stroke:var(--accent);stroke-width:2.2;vector-effect:non-scaling-stroke}.chart-point{fill:var(--bg);stroke:var(--accent);stroke-width:3}.x-axis{margin-top:2px}.allocation-body{display:flex;align-items:center;gap:24px;margin-top:26px}.donut{width:142px;height:142px;min-width:142px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--accent) 0 45.1%,var(--blue) 45.1% 69.9%,var(--amber) 69.9% 87.9%,var(--purple) 87.9% 95.3%,#264b4a 95.3% 100%);position:relative}.donut:after{content:'';position:absolute;inset:17px;background:var(--panel);border-radius:50%}.donut-center{position:relative;z-index:1;text-align:center}.donut-center strong{display:block;font:600 18px 'IBM Plex Mono',monospace}.donut-center small{color:var(--muted);font-size:10px}.legend{list-style:none;padding:0;margin:0;width:100%;display:grid;gap:13px}.legend li{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px}.legend-color{width:7px;height:7px;border-radius:2px}.legend-color.teal{background:var(--accent)}.legend-color.blue{background:var(--blue)}.legend-color.amber{background:var(--amber)}.legend-color.purple{background:var(--purple)}.legend strong,.legend b{display:block;font-size:11px}.legend small{font:9px 'IBM Plex Mono',monospace;color:var(--muted)}.legend b{font:10px 'IBM Plex Mono',monospace;font-weight:500}.lower-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:16px;margin-top:16px}.text-button{background:transparent;color:var(--accent);font-size:11px}.text-button span{font-size:16px;margin-left:4px}.table-scroll{overflow:auto;margin-top:20px}table{width:100%;border-collapse:collapse;min-width:570px}th{font:9px 'IBM Plex Mono',monospace;color:#537976;text-align:left;padding:0 10px 11px}td{padding:13px 10px;border-top:1px solid #173b3d;font:11px 'IBM Plex Mono',monospace}td:first-child{font-family:'Space Grotesk',sans-serif} .asset-cell{display:flex;align-items:center;gap:9px}.asset-icon{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;font-size:10px;font-weight:700;background:#304e83;color:#b8d2ff}.asset-icon.crypto{background:#514421;color:#f4ce70}.asset-icon.gold{background:#5c401e;color:#ffd98b}.asset-sub{display:block;color:var(--muted);font:9px 'IBM Plex Mono',monospace;margin-top:2px}.return-up{color:var(--accent)}.return-down{color:var(--red)}.row-actions{opacity:0;color:var(--muted);font-size:16px}.asset-row:hover .row-actions{opacity:1}.side-stack{display:grid;gap:16px}.small-plus{font-size:20px;color:var(--accent)}.watch-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid #173b3d}.watch-row:last-child{border-bottom:0}.watch-symbol{display:flex;align-items:center;gap:10px}.watch-logo{width:28px;height:28px;display:grid;place-items:center;border-radius:7px;background:#243f74;color:#b6c9f6;font-size:10px;font-weight:700}.watch-logo.btc{background:#514421;color:#f7c762}.watch-logo.gold{background:#5e3d1f;color:#f3c17d}.watch-name strong{display:block;font-size:11px}.watch-name small{color:var(--muted);font:9px 'IBM Plex Mono',monospace}.watch-price{text-align:right;font:10px 'IBM Plex Mono',monospace}.watch-price span{display:block;font-size:9px;margin-top:3px}.outline-button{width:100%;background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:6px;padding:9px;margin-top:14px;font-size:11px}.outline-button span{float:right;color:var(--accent);font-size:15px}.activity-list{margin-top:16px}.activity-item{display:flex;gap:10px;padding:11px 0;border-bottom:1px solid #173b3d}.activity-item:last-child{border:0}.activity-dot{width:7px;height:7px;border-radius:50%;margin-top:4px;background:var(--accent);box-shadow:0 0 0 3px rgba(46,196,182,.1)}.activity-dot.amber{background:var(--amber);box-shadow:0 0 0 3px rgba(244,184,96,.1)}.activity-item strong{font-size:10px}.activity-item p{margin:3px 0 0;color:var(--muted);font-size:10px;line-height:1.4}.activity-item time{display:block;color:#537976;font:9px 'IBM Plex Mono',monospace;margin-top:4px}.mobile-menu{display:none;background:transparent;color:var(--muted);font-size:18px}.modal-backdrop{position:fixed;inset:0;background:rgba(2,15,16,.7);display:grid;place-items:center;z-index:10;padding:20px}.modal-backdrop[hidden]{display:none}.modal{width:min(480px,100%);background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:24px;box-shadow:0 24px 80px #020e0f}.modal-header{display:flex;justify-content:space-between}.modal-header h2{margin:8px 0 23px}.close-modal{background:transparent;color:var(--muted);font-size:24px}.modal form{display:grid;gap:14px}label{display:grid;gap:7px;color:var(--muted);font-size:11px}input,select{width:100%;background:#081f21;border:1px solid var(--line);color:var(--text);padding:11px 12px;border-radius:6px} .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.toast{position:fixed;bottom:22px;right:22px;background:var(--accent);color:#052426;padding:10px 14px;border-radius:6px;font-size:12px;font-weight:700;transform:translateY(80px);opacity:0;transition:.25s;z-index:20}.toast.show{transform:none;opacity:1}@media(max-width:1050px){.main-content{padding:0 24px 42px}.sidebar{width:210px;min-width:210px}.main-content{width:calc(100% - 210px)}.kpi-grid,.content-grid,.lower-grid{grid-template-columns:1fr 1fr}.hero-kpi{grid-column:span 2}.performance-card,.portfolio-card{grid-column:span 2}.allocation-card{grid-column:span 2}.allocation-body{justify-content:center}.side-stack{grid-template-columns:1fr 1fr;grid-column:span 2}}@media(max-width:720px){.sidebar{position:fixed;left:-250px;top:0;bottom:0;z-index:5;transition:.25s;box-shadow:20px 0 50px rgba(0,0,0,.3)}.sidebar.open{left:0}.main-content{width:100%;padding:0 16px 35px}.topbar{height:62px}.mobile-menu{display:block}.breadcrumbs{display:none}.top-actions{gap:12px}.user-button>span:not(.avatar):not(.chevron){display:none}.page-head{padding:28px 0 22px;align-items:flex-start;gap:20px;flex-direction:column}.page-head h1{font-size:30px}.primary-button{align-self:stretch}.kpi-grid,.content-grid,.lower-grid{display:grid;grid-template-columns:1fr}.hero-kpi,.performance-card,.allocation-card,.portfolio-card,.side-stack{grid-column:span 1}.stat-card{min-height:170px}.side-stack{display:grid;grid-template-columns:1fr}.allocation-body{justify-content:flex-start;gap:18px}.donut{width:122px;height:122px;min-width:122px}.donut:after{inset:15px}.legend{gap:10px}.mode-switch{gap:20px}.period-tabs{gap:0}.period-tabs button{padding:6px}.hero-value{font-size:27px}.section-header{gap:12px}.ghost-button{white-space:nowrap}}

.calculator-section{margin-top:16px}.calculator-heading{align-items:flex-start}.calculator-heading h2{margin-bottom:5px}.calculator-heading p{font-size:11px;margin-top:8px}.calculator-layout{display:grid;grid-template-columns:1.05fr 1.4fr;gap:28px;margin-top:22px}.calculator-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.calculator-form label{font:10px 'IBM Plex Mono',monospace}.calculator-form .primary-button{grid-column:span 2;margin-top:2px}.calculator-form input,.calculator-form select{padding:10px;font-size:12px}.calculator-result{border:1px solid var(--line);background:rgba(7,30,34,.4);border-radius:9px;padding:18px 20px}.result-label{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:16px}.result-label span,.result-breakdown small{font:9px 'IBM Plex Mono',monospace;color:var(--muted);letter-spacing:1px}.result-label b{font:600 26px 'IBM Plex Mono',monospace;color:var(--accent);letter-spacing:-1px}.result-breakdown{display:flex;gap:35px;padding:15px 0 16px}.result-breakdown div{display:grid;gap:5px}.result-breakdown strong{font:500 14px 'IBM Plex Mono',monospace}.calc-chart{height:19px;display:flex;border-radius:4px;overflow:hidden;background:#183d3e}.calc-bar{display:flex;align-items:center;padding-left:8px;color:#062326;font:600 9px 'IBM Plex Mono',monospace;transition:width .35s ease;min-width:44px}.calc-bar.contributed{background:#6ca8ff;width:65%}.calc-bar.profit{background:var(--accent);width:35%}.calc-note{font-size:10px;color:#537976;margin:14px 0 0}@media(max-width:720px){.calculator-layout{grid-template-columns:1fr;gap:18px}.result-label{align-items:flex-start;flex-direction:column;gap:7px}.result-label b{font-size:24px}}

/* Galaxy Night visual layer inspired by the supplied reference */
:root{--bg:#0c0f1d;--panel:#121326;--panel-2:#1d1a39;--line:#2a2948;--text:#f5f2ff;--muted:#9b9ab7;--accent:#b7a0ff;--accent-2:#7c65d4;--amber:#e6b7ff;--red:#ff829e;--blue:#8ca7ff;--purple:#c4a7ff;--shadow:0 22px 70px rgba(3,3,14,.32)}body{background:radial-gradient(900px 500px at 85% -10%,rgba(146,113,255,.2),transparent 60%),radial-gradient(700px 440px at 5% 45%,rgba(93,69,147,.14),transparent 65%),var(--bg)}.app-shell{background:radial-gradient(520px 420px at 92% 5%,rgba(173,143,255,.08),transparent 72%)}.sidebar{background:rgba(7,9,19,.62);border-right-color:rgba(165,145,255,.18);backdrop-filter:blur(18px)}.topbar{border-bottom-color:rgba(165,145,255,.18)}.brand-mark:before{border-color:var(--accent)}.brand-mark i{background:var(--accent)}.brand-mark b{background:var(--amber)}.nav-item{border:1px solid transparent}.nav-item:hover,.nav-item.active{background:linear-gradient(135deg,rgba(183,160,255,.22),rgba(66,53,113,.16));border-color:rgba(183,160,255,.24);box-shadow:inset 2px 0 var(--accent),0 8px 25px rgba(130,100,230,.1)}.panel{background:linear-gradient(145deg,rgba(20,20,38,.92),rgba(12,14,28,.9));border-color:rgba(165,145,255,.18);box-shadow:0 20px 55px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.035)}.hero-kpi{background:radial-gradient(600px 220px at 95% 0%,rgba(183,160,255,.17),transparent 60%),linear-gradient(145deg,rgba(26,23,51,.96),rgba(12,14,28,.92))}.primary-button{background:linear-gradient(135deg,#c1adff,#8e73e5);color:#110d22;box-shadow:0 8px 22px rgba(144,110,230,.2)}.live-pill{color:var(--accent);border-color:rgba(183,160,255,.4)}.live-pill span{background:var(--accent)}.metric-icon{background:rgba(183,160,255,.14);color:var(--accent)}.metric-icon.amber{color:var(--amber);background:rgba(230,183,255,.1)}.mode-tab.active:after,.spark-line,.chart-line{background:var(--accent);stroke:var(--accent)}.period-tabs button.active,.period-tabs button:hover{background:rgba(183,160,255,.14);color:var(--accent)}.donut{background:conic-gradient(var(--accent) 0 45.1%,var(--blue) 45.1% 69.9%,var(--amber) 69.9% 87.9%,var(--purple) 87.9% 95.3%,#373450 95.3% 100%)}input,select{background:#0d0f20;border-color:rgba(165,145,255,.22)}.modal{background:linear-gradient(145deg,#17162e,#0d0f20);border-color:rgba(183,160,255,.25)}.calculator-result{background:rgba(8,10,22,.48);border-color:rgba(183,160,255,.2)}.calc-bar.profit{background:var(--accent)}.watch-logo{background:#342d63;color:#d9ceff}.watch-logo.btc{background:#493c58;color:#f6d2ff}.watch-logo.gold{background:#554257;color:#f1c7e9}.avatar{background:#d1c5ff;color:#241b45}.sync-dot span{background:var(--accent);box-shadow:0 0 0 3px rgba(183,160,255,.14)}

.insight-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:16px;margin-top:16px}.asset-summary-list{display:grid;gap:0;margin-top:17px}.asset-summary-row{display:grid;grid-template-columns:9px 1fr auto;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid #24233d}.asset-summary-row:last-child{border-bottom:0}.summary-dot{width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 3px rgba(183,160,255,.08)}.summary-dot.teal{background:var(--accent)}.summary-dot.blue{background:var(--blue)}.summary-dot.amber{background:var(--amber)}.summary-dot.purple{background:var(--purple)}.asset-summary-row strong{display:block;font-size:11px}.asset-summary-row small{display:block;color:var(--muted);font:9px 'IBM Plex Mono',monospace;margin-top:2px}.asset-summary-row b{font:10px 'IBM Plex Mono',monospace;text-align:right}.asset-summary-row em{display:block;color:var(--muted);font-style:normal;font-size:9px;margin-top:3px}.monthly-widget{position:relative;overflow:hidden}.monthly-metric{display:flex;align-items:baseline;gap:12px;margin-top:19px}.monthly-metric strong{font:600 28px 'IBM Plex Mono',monospace;color:var(--accent);letter-spacing:-1px}.monthly-metric span{font:10px 'IBM Plex Mono',monospace}.monthly-metric small{color:var(--muted);font-size:10px}.monthly-chart{width:100%;height:86px;margin-top:10px;overflow:visible}.monthly-area{fill:url(#monthlyFill)}.monthly-line{fill:none;stroke:var(--accent);stroke-width:2.4;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-dasharray:900;stroke-dashoffset:900;animation:drawChart 1.8s cubic-bezier(.4,0,.2,1) forwards}.monthly-labels{display:flex;justify-content:space-between;color:#696782;font:9px 'IBM Plex Mono',monospace}@keyframes drawChart{to{stroke-dashoffset:0}}.chart-line{stroke-dasharray:1100;stroke-dashoffset:1100;animation:drawChart 2s cubic-bezier(.4,0,.2,1) .15s forwards}.spark-line{stroke-dasharray:850;stroke-dashoffset:850;animation:drawChart 1.6s cubic-bezier(.4,0,.2,1) .25s forwards}.mini-bars i{transform-origin:bottom;animation:barRise .7s cubic-bezier(.2,.8,.2,1) both}.mini-bars i:nth-child(2){animation-delay:.05s}.mini-bars i:nth-child(3){animation-delay:.1s}.mini-bars i:nth-child(4){animation-delay:.15s}.mini-bars i:nth-child(5){animation-delay:.2s}.mini-bars i:nth-child(6){animation-delay:.25s}.mini-bars i:nth-child(7){animation-delay:.3s}.mini-bars i:nth-child(8){animation-delay:.35s}@keyframes barRise{from{transform:scaleY(0)}to{transform:scaleY(1)}}@media(max-width:720px){.insight-grid{grid-template-columns:1fr}.monthly-metric{flex-wrap:wrap;gap:8px}.monthly-metric small{width:100%}}

.export-actions{display:flex;align-items:center;gap:8px}.export-actions .ghost-button{font-size:9px;padding:6px 8px}.rebalancing-section{margin-top:16px}.rebalancing-section h2{margin-bottom:4px}.rebalancing-section p{font-size:11px;margin-top:8px}.rebalance-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:25px;margin-top:20px}.rebalance-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.rebalance-form label{font:10px 'IBM Plex Mono',monospace}.rebalance-form input{font-size:12px;padding:10px}.rebalance-form .primary-button{grid-column:span 2}.rebalance-total{grid-column:span 2;display:flex;justify-content:space-between;align-items:center;padding:4px 2px 0;color:var(--muted);font:10px 'IBM Plex Mono',monospace}.rebalance-total strong{color:var(--accent)}.rebalance-total strong.invalid{color:var(--red)}.rebalance-result{border:1px solid rgba(183,160,255,.2);background:rgba(8,10,22,.48);border-radius:9px;padding:16px 18px}.rebalance-result-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--line)}.rebalance-result-head>.muted{font:9px 'IBM Plex Mono',monospace}.rebalance-row{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;padding:10px 0;border-bottom:1px solid #24233d}.rebalance-row:last-of-type{border-bottom:0}.rebalance-row strong{display:block;font-size:11px}.rebalance-row small{display:block;color:var(--muted);font:9px 'IBM Plex Mono',monospace;margin-top:3px}.rebalance-row b{font:11px 'IBM Plex Mono',monospace}.rebalance-warning{color:var(--amber);font-size:11px;padding:20px 0}.live-pill.offline{color:var(--amber);border-color:rgba(230,183,255,.35)}.live-pill.offline span{background:var(--amber)}@media(max-width:720px){.export-actions{flex-wrap:wrap;justify-content:flex-end}.rebalance-layout{grid-template-columns:1fr}.rebalance-result-head{gap:10px;flex-wrap:wrap}}

.crypto-history-section{margin-top:16px}.crypto-history-section h2{margin-bottom:4px}.crypto-history-section p{font-size:11px;margin-top:8px}.crypto-history-actions{display:flex;align-items:center;gap:12px}.history-status{font:9px 'IBM Plex Mono',monospace;color:var(--accent)}.history-headline{display:flex;align-items:baseline;gap:12px;margin-top:19px}.history-headline strong{font:600 25px 'IBM Plex Mono',monospace;letter-spacing:-1px}.history-headline span{font:10px 'IBM Plex Mono',monospace}.history-headline small{color:var(--muted);font-size:10px}.history-chart-wrap{height:233px;position:relative;padding-left:55px;margin-top:10px}.history-y-axis{position:absolute;left:0;top:14px;bottom:26px;display:flex;flex-direction:column;justify-content:space-between;color:#696782;font:9px 'IBM Plex Mono',monospace}.crypto-history-chart{width:100%;height:195px}.history-grid line{stroke:#292642;stroke-width:1}.history-area{fill:url(#historyFill)}.history-line{fill:none;stroke:var(--accent);stroke-width:2.2;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1400;stroke-dashoffset:1400;animation:drawChart 1.8s cubic-bezier(.4,0,.2,1) forwards}.history-x-axis{display:flex;justify-content:space-between;color:#696782;font:9px 'IBM Plex Mono',monospace}.passive-income-section{margin-top:16px}.passive-income-section h2{margin-bottom:4px}.passive-income-section p{font-size:11px;margin-top:8px}.income-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;margin-top:20px}.income-summary{border:1px solid rgba(183,160,255,.16);border-radius:9px;background:rgba(8,10,22,.45);padding:16px 18px}.income-summary>strong{display:block;font:600 24px 'IBM Plex Mono',monospace;color:var(--accent);margin-top:10px}.income-bars{height:70px;display:flex;align-items:flex-end;gap:10px;margin-top:14px}.income-bars i{display:block;flex:1;min-height:12px;border-radius:4px 4px 1px 1px;background:linear-gradient(180deg,var(--amber),rgba(230,183,255,.2));transform-origin:bottom;animation:barRise .7s cubic-bezier(.2,.8,.2,1) both}.income-months{display:flex;justify-content:space-between;color:#696782;font:9px 'IBM Plex Mono',monospace;margin-top:8px}.income-form{display:grid;gap:12px}.income-form label{font:10px 'IBM Plex Mono',monospace}.income-form input{font-size:12px;padding:10px}.income-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.income-list{margin-top:17px}.income-row{display:grid;grid-template-columns:1fr auto 24px;align-items:center;gap:12px;border-top:1px solid #24233d;padding:11px 0}.income-row strong{display:block;font-size:11px}.income-row small{display:block;color:var(--muted);font:9px 'IBM Plex Mono',monospace;margin-top:3px}.income-row b{font:11px 'IBM Plex Mono',monospace;color:var(--accent)}.income-delete{background:transparent;color:var(--muted);font-size:17px}.income-empty{color:var(--muted);font-size:11px;padding:12px 0}@media(max-width:720px){.crypto-history-actions{align-items:flex-end;flex-direction:column;gap:6px}.history-headline{flex-wrap:wrap}.history-headline small{width:100%}.income-layout{grid-template-columns:1fr}.income-form-row{grid-template-columns:1fr 1fr}}
.account-controls{display:flex;align-items:center;gap:8px}.mode-chip{border:1px solid rgba(183,160,255,.3);border-radius:999px;color:var(--accent);font:9px 'IBM Plex Mono',monospace;padding:6px 8px;white-space:nowrap}.mode-chip.private{color:var(--green);border-color:rgba(116,234,184,.3)}#currency-select{appearance:none;background:var(--panel-2);border:1px solid var(--line);border-radius:6px;color:var(--text);font:10px 'IBM Plex Mono',monospace;padding:7px 20px 7px 8px}.logout-button{font-size:9px;padding:7px 9px}.health-section{margin-top:16px}.health-section h2{margin-bottom:4px}.health-section p{font-size:11px;margin-top:8px}.health-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:25px;align-items:center;margin-top:20px}.health-score{display:flex;align-items:center;gap:18px}.score-ring{width:92px;height:92px;border:7px solid var(--accent);border-right-color:rgba(183,160,255,.2);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 26px rgba(183,160,255,.12)}.score-ring strong{font:600 27px 'IBM Plex Mono',monospace;color:var(--accent);line-height:1}.score-ring small{color:var(--muted);font:9px 'IBM Plex Mono',monospace;margin-top:5px}.health-score>div:last-child>strong{display:block;font-size:13px}.health-score>div:last-child p{max-width:180px}.health-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.health-metrics>div{border-left:1px solid var(--line);padding-left:14px}.health-metrics span{display:block;color:var(--muted);font:9px 'IBM Plex Mono',monospace}.health-metrics strong{display:block;font:600 18px 'IBM Plex Mono',monospace;margin-top:10px}.health-metrics small{display:block;color:var(--muted);font:9px 'IBM Plex Mono',monospace;margin-top:5px}.auth-modal{max-width:420px}.auth-tabs{display:flex;border-bottom:1px solid var(--line);gap:18px;margin:18px 0 14px}.auth-tabs button{background:transparent;color:var(--muted);border-bottom:2px solid transparent;padding:0 0 10px;font-size:11px}.auth-tabs button.active{color:var(--accent);border-color:var(--accent)}.auth-copy{color:var(--muted);font-size:11px;line-height:1.6;margin-bottom:18px}.auth-message{color:var(--amber);font-size:10px;min-height:16px}.demo-link{display:block;margin:17px auto 0}.modal-backdrop[hidden]{display:none}@media(max-width:980px){.mode-chip{display:none}.health-layout{grid-template-columns:1fr}.health-metrics{margin-top:4px}}@media(max-width:720px){.account-controls{gap:5px}.account-controls .user-button>span:not(.avatar):not(.chevron){display:none}#currency-select{font-size:9px;padding-left:5px}.health-metrics{grid-template-columns:1fr 1fr 1fr;gap:5px}.health-metrics>div{padding-left:8px}.health-metrics strong{font-size:13px}.health-metrics small{font-size:8px}.score-ring{width:78px;height:78px}.auth-modal{max-width:calc(100vw - 28px)}}
.legal-shortcuts{display:flex;gap:10px;margin-bottom:12px}.legal-shortcuts a{color:var(--muted);font:9px 'IBM Plex Mono',monospace;text-decoration:none}.legal-shortcuts a:hover{color:var(--accent)}
#invite-code-field{margin-top:10px}#invite-code-field input{border-color:rgba(183,160,255,.45)}
