:root{--black:#021128;--panel:#021128;--panel2:#021f51;--border:#032f78;--border-subtle:#56606f;--green:#84fb6f;--green2:#b5fca9;--blue:#0050ca;--blue-hover:#3873d5;--link:#6a97e0;--red:#ee220d;--success-bg:#34652c;--success-border:#9bfc8c;--success-text:#b5fca9;--warn-border:#facc33;--warn-text:#f8e71c;--error-bg:#300606;--error-text:#f57c76;--white:#fff;--body:#f0f0f0;--meta:#fff}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--black);font-family:Open Sans,Arial,sans-serif;line-height:1.5}.wrap{max-width:1800px;margin:0 auto;padding:32px 28px 64px}header{justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:24px}.brand,header{display:flex;align-items:center}.brand{gap:14px}.logo-img{height:36px;display:block}.subtitle{font-weight:600;font-size:14px;letter-spacing:3px;text-transform:uppercase;color:var(--meta)}.admin-chip{font-weight:700;font-size:12px;letter-spacing:2px;color:#021128;background:var(--green,#84fb6f);border-radius:4px;padding:4px 9px;line-height:1}.controls{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.toggle{display:flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}.toggle button{background:transparent;border:none;color:var(--meta);font-family:inherit;font-weight:700;font-size:13px;letter-spacing:1px;padding:8px 20px;cursor:pointer}.toggle button.active{background:var(--green);color:var(--black)}.refresh{background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--body);font-family:inherit;font-weight:600;font-size:12px;padding:8px 16px;cursor:pointer}.refresh:hover{border-color:var(--green);color:var(--green)}.stamp{font-weight:300;font-size:11px;color:var(--meta)}.rule{height:3px;border-radius:2px;margin-bottom:22px}.hero-brand{flex:1 1}.hero-mid{flex:1 1;text-align:center}.hero-mid .hero-label{margin-bottom:8px}.hero-right{flex:1 1;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.hero-right .controls{flex-wrap:wrap}.hero-right .controls,.hero-right .kpis{justify-content:flex-end}.hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:26px}.hero-label{font-weight:600;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--meta);margin-bottom:8px}.hero-total{font-size:56px;line-height:1.1}.hero-sub{margin-top:8px;font-size:13px;color:var(--meta);font-weight:300;display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}.delta-neg{color:var(--red);font-weight:700}.delta-pos{color:var(--green);font-weight:700}.kpis{display:flex;gap:14px;flex-wrap:wrap}.kpi{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:14px 20px;min-width:150px}.kpi .k{font-weight:600;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--meta)}.kpi .v{font-weight:800;font-size:20px;color:var(--white);margin-top:4px}section{margin-bottom:48px}h2{font-weight:700;font-size:16px;letter-spacing:.5px;margin-bottom:4px}.sec-note{font-size:12px;color:var(--white);margin-bottom:18px}.grid2{display:grid;grid-template-columns:340px 1fr;grid-gap:24px;gap:24px}@media(max-width:900px){.grid2{grid-template-columns:1fr}}.panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:22px}.alloc-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--border);font-size:13px}.alloc-row:last-child{border-bottom:none}.dot{width:9px;height:9px;border-radius:2px;flex:none}.alloc-name{flex:1 1;color:var(--body)}.alloc-val{font-weight:700;color:var(--white)}.alloc-pct{width:52px;text-align:right;color:var(--meta);font-weight:300}table{width:100%;border-collapse:collapse;font-size:13px}th{font-weight:600;font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--meta);text-align:left}td,th{padding:13px 14px;border-bottom:1px solid var(--border)}td{color:var(--body);font-size:13.5px}tr:last-child td{border-bottom:none}td.num,th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.entity-row td{background:var(--panel2);font-weight:700;color:var(--white);font-size:13px;letter-spacing:.5px}.entity-row .etot{color:var(--green)}.ccy{font-weight:700;color:var(--white)}.label-chip{display:inline-block;color:var(--meta);border:1px solid var(--border);border-radius:4px;padding:1px 7px}.badge,.label-chip{font-size:10px;font-weight:600}.badge{display:inline-flex;align-items:center;gap:6px;letter-spacing:1px;text-transform:uppercase}.badge .b-dot{width:7px;height:7px;border-radius:50%}.b-live .b-dot{background:var(--green)}.b-live{color:var(--green)}.b-manual .b-dot{background:var(--meta)}.b-manual{color:var(--meta)}.neg{color:var(--red)}.pos{color:var(--green)}.zero{opacity:.35}.chk{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--meta);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chk input{accent-color:var(--green)}.table-head{align-items:center;margin-bottom:12px}.table-head,footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}footer{border-top:1px solid var(--border);padding-top:20px;font-weight:300;font-size:11px;color:var(--meta)}.admin-link{color:var(--meta);text-decoration:none;font-weight:600}.admin-link:hover{color:var(--green)}.mock-banner{background:var(--panel);border:1px solid var(--border);border-left:3px solid var(--green);border-radius:6px;padding:10px 16px;font-size:12px;color:var(--meta);margin-bottom:32px}canvas{max-width:100%}th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}th .arr,th.sortable:hover{color:var(--green)}th .arr{display:inline-block;width:12px;font-size:9px}.ent-cell{color:var(--meta);font-size:12px;white-space:nowrap}.search-wrap{flex:1 1;max-width:420px;min-width:220px;display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:7px 12px;margin:0 16px}.search-wrap:focus-within{border-color:var(--green)}.search-ico{color:var(--meta);font-size:14px;transform:rotate(-45deg)}.search-wrap input{flex:1 1;background:transparent;border:none;outline:none;color:var(--body);font-family:inherit;font-size:13px}.search-wrap input::placeholder{color:hsla(0,0%,100%,.65)}.search-wrap button{background:transparent;border:none;color:var(--meta);font-size:16px;cursor:pointer;line-height:1;padding:0;display:none}.search-wrap.has-q button{display:block}.search-wrap button:hover{color:var(--red)}.search-total{display:flex;align-items:baseline;gap:8px;white-space:nowrap;margin-right:16px}.st-label{font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--meta)}.st-val{font-weight:800;font-size:16px;color:var(--green);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.st-count{font-size:11px;font-weight:300;color:var(--meta)}.alloc-row{cursor:default;border-radius:6px;padding-left:6px;padding-right:6px;margin:0 -6px}.alloc-row.hl{background:#021f51}.alloc-row.hl .alloc-name{color:var(--white)}.login-box{max-width:360px;margin:18vh auto;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:36px}.login-box input{background:var(--black);border:1px solid var(--border);border-radius:6px;color:var(--body);padding:11px 14px;margin:16px 0;box-sizing:border-box}.login-box button,.login-box input{width:100%;font-family:inherit;font-size:14px}.login-box button{background:var(--green);border:none;border-radius:6px;color:var(--black);font-weight:700;padding:11px;cursor:pointer}.login-err{color:var(--red);font-size:12px;margin-top:10px}.chip-row{display:flex;align-items:center;justify-content:flex-start;gap:12px}.chip-row-label{min-width:170px}.chip-row+.chip-row{margin-top:10px}.chip-row-label{font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--meta);white-space:nowrap}.admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:18px;gap:18px;align-items:start}.admin-field{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--border);font-size:13px}.admin-field label{flex:1 1;color:var(--body)}.admin-field input{width:150px;background:var(--black);border:1px solid var(--border);border-radius:5px;color:var(--body);font-family:inherit;font-size:13px;padding:6px 9px;text-align:right}.btn{background:var(--green);border:none;border-radius:6px;color:var(--black);font-family:inherit;font-weight:700;font-size:12px;padding:8px 18px;cursor:pointer}.btn.ghost{border:1px solid var(--border);color:var(--body)}.export-wrap{position:relative}.export-pop{position:absolute;top:calc(100% + 8px);right:0;z-index:70;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:14px;width:288px;box-shadow:0 16px 44px rgba(0,0,0,.65)}.export-pop .cal-pop{position:static;transform:none;box-shadow:none;border:none;padding:8px 0;margin:0;width:auto}.ep-title{font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--meta)}.ep-range{font-size:12.5px;color:#fff;margin:6px 0 2px;font-weight:600}.ep-mode{display:flex;flex-direction:column;gap:2px;margin:6px 0}.ep-note{font-size:10.5px;color:var(--meta);line-height:1.45;margin:6px 0}.ep-actions{display:flex;justify-content:space-between;gap:8px;margin-top:8px}.b-computed .b-dot{background:#facc33}.b-computed{color:#facc33}.stale{color:var(--red);font-size:10px;font-weight:600;margin-left:6px}.saved{color:var(--green);font-size:11px;margin-left:8px}.row-ts{font-size:9px;color:#fff;opacity:.75;display:block}tbody tr:hover td{background:#021f51}.grid4{display:grid;grid-template-columns:1.62fr 1.38fr;grid-gap:20px;gap:20px;margin-bottom:20px}.stack{gap:20px}.stack,.stack section{display:flex;flex-direction:column}.stack .panel,.stack section{flex:1 1}@media(max-width:1500px){.grid4{grid-template-columns:1fr 1fr}}@media(max-width:900px){.grid4{grid-template-columns:1fr}}.hero{align-items:center}.hero-center{display:flex;flex-direction:column;align-items:center;gap:10px;flex:1 1}.grid2 section{display:flex;flex-direction:column}.grid2 .panel{flex:1 1}.trend-panel{display:flex}.chart-fill{position:relative;flex:1 1;min-height:320px;width:100%}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{background:transparent;border:1px solid var(--border);border-radius:999px;color:var(--meta);font-family:inherit;font-weight:700;font-size:11.5px;letter-spacing:1px;padding:7px 16px;cursor:pointer}.chip:hover{color:var(--green)}.chip.active,.chip:hover{border-color:var(--green)}.chip.active{background:var(--green);color:var(--black)}.custom-range{display:flex;align-items:center;gap:8px;color:var(--meta);font-size:12px}.custom-range input{background:var(--panel);border:1px solid var(--border);border-radius:6px;color:var(--body);font-family:inherit;font-size:12px;padding:6px 10px;color-scheme:dark}@media(max-width:1250px){.grid4{grid-template-columns:1fr}.hero{flex-wrap:wrap;align-items:center;row-gap:14px}.hero-brand{order:1;flex:0 1 auto}.hero-right{order:2;flex:1 1 auto;margin-left:auto}.hero-mid{order:3;flex:1 1 100%}.chip-row{flex-wrap:wrap}.chip-row-label{min-width:0}}@media(max-width:768px){.wrap{padding:20px 14px 48px}.hero{flex-direction:column;align-items:flex-start;gap:16px}.hero-brand,.hero-mid,.hero-right{order:0;flex:1 1 auto;width:100%;margin-left:0}.hero-mid{text-align:left}.hero-sub{justify-content:flex-start}.hero-right{align-items:stretch}.hero-right .controls{width:100%;justify-content:space-between;flex-wrap:wrap;gap:10px}.stamp{width:100%;order:9}.hero-total{font-size:38px}.hero-center{align-items:flex-start;width:100%}.kpis{width:100%;display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.kpi{min-width:0;padding:12px 14px}.kpi .v{font-size:16px}.table-head{flex-direction:column;align-items:stretch;gap:10px}.search-wrap{max-width:none;margin:0}.search-total{margin:0;justify-content:space-between;display:flex}td{font-size:12.5px}td,th{padding:11px 10px}th{font-size:9.5px;letter-spacing:1px}.row-ts{display:none}footer{flex-direction:column;gap:8px}}.hero-center{position:relative}.cal-pop{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);z-index:50;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px;box-shadow:0 12px 40px rgba(0,0,0,.6);width:300px}.cal-head{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:12px;color:var(--white);font-weight:700;font-size:13px}.cal-head button{background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--body);cursor:pointer;font-size:14px;width:28px;height:28px;line-height:1}.cal-head button:hover{border-color:var(--green);color:var(--green)}.cal-head span{flex:1 1;text-align:center}.cal-close{margin-left:4px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:2px;gap:2px}.cal-dow{text-align:center;font-size:9.5px;font-weight:600;letter-spacing:1px;color:var(--meta);padding:4px 0;text-transform:uppercase}.cal-day{background:transparent;border:none;border-radius:6px;color:var(--body);font-family:inherit;font-size:12.5px;padding:7px 0;cursor:pointer;text-align:center}.cal-day:hover{color:var(--green)}.cal-day.range{background:rgba(132,251,111,.14);border-radius:0}.cal-day.sel{background:var(--green);color:var(--black);font-weight:700}.cal-day.today{outline:1px solid var(--green);outline-offset:-1px}.cal-day.future{opacity:.25;cursor:default}.cal-hint{margin-top:10px;text-align:center;font-size:11px;color:var(--meta)}.tm-stats{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--border);padding-bottom:12px;margin-bottom:10px}.tm-stats .k{display:block;font-size:9px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--meta)}.tm-stats .v{font-weight:800;font-size:14px;color:var(--white)}.tm-action{display:inline-block;width:44px;text-align:center;font-size:10px;font-weight:800;letter-spacing:1px;border-radius:4px;padding:3px 0;flex:none}.tm-action.buy{background:rgba(132,251,111,.15);color:var(--green)}.tm-action.sell{background:rgba(238,34,13,.15);color:var(--red)}.tm-action.hold{background:#032f78;color:var(--meta)}.tm-matrix{width:100%;margin:14px 0;border-collapse:collapse}.tm-matrix th{font-size:9px;padding:6px 4px}.tm-matrix td{padding:4px;font-size:12px;border-bottom:1px solid var(--border)}.tm-matrix input{width:64px;background:var(--black);border:1px solid var(--border);border-radius:5px;color:var(--body);font-family:inherit;font-size:12px;padding:5px 6px;text-align:right}.tm-sums td{font-weight:700}.tm-sums td.good{color:var(--green)}.tm-sums td.bad{color:var(--red)}.tm-admin{grid-column:1/-1}.donut-wrap{position:relative}.donut-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.dc-label{font-size:9px;font-weight:600;letter-spacing:2px;color:#fff;opacity:.8}.dc-val{font-size:15px;color:var(--white)}.alloc-row.clickable{cursor:pointer}.alloc-row.clickable:hover{background:#021f51}.alloc-row.clickable:hover .alloc-name{color:var(--green)}.param-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid var(--border);font-size:13px}.param-row:last-child{border-bottom:none}.param-row span{color:#fff}.param-row b{font-weight:800;color:var(--green);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chart-fill{min-height:260px}.grid4>section{display:flex;flex-direction:column}.grid4>section>.panel{flex:1 1}.stack,.stack .panel,.stack section{min-height:0}.merge-row{display:grid;grid-template-columns:14px 1.1fr 1.15fr 1.15fr 56px 1.05fr;grid-gap:10px;gap:10px;align-items:center;padding:9px 6px;border-bottom:1px solid var(--border);font-size:13px;border-radius:6px}.merge-row:last-child{border-bottom:none}.merge-row .num{text-align:right}.merge-row .num b{display:block;font-weight:700;color:var(--white);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.merge-row .num i{display:block;font-style:normal;font-size:10.5px;color:#fff;opacity:.6}.merge-row .num.pos b{color:var(--green)}.merge-row .num.neg b{color:var(--red)}.merge-head{font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:#fff;border-bottom:1px solid var(--border)}.merge-head span{opacity:.8}.merge-row.clickable{cursor:pointer}.merge-row.clickable:hover{background:#021f51}.merge-row.clickable:hover .alloc-name{color:var(--green)}.trend-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.chips-wrap{position:relative}.chips-wrap .chip{padding:6px 12px;font-size:10.5px}.chips-wrap .cal-pop{left:auto;right:0;transform:none}.info{display:inline-block;position:relative;margin-left:7px;color:var(--green);cursor:help;font-size:11px}.info .tip{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:260px;background:#021f51;border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:11.5px;line-height:1.5;color:var(--body);z-index:60;box-shadow:0 8px 30px rgba(0,0,0,.6);font-weight:400}.info:hover .tip{display:block}@media(max-width:900px){.info .tip{left:auto;right:-10px;transform:none}}.ring-legend{display:flex;justify-content:center;gap:10px;margin-top:12px}.ring-legend button{display:flex;align-items:center;gap:7px;background:transparent;border:1px solid var(--border);border-radius:999px;color:#fff;opacity:.45;font-family:inherit;font-size:11px;font-weight:600;padding:5px 12px;cursor:pointer}.ring-legend button.on{opacity:1;border-color:var(--green)}.rl-swatch{width:10px;height:10px;border-radius:3px}.rl-swatch.solid{background:var(--green)}.rl-swatch.faded{background:rgba(132,251,111,.45)}.alloc-flex{display:flex;gap:22px;align-items:flex-start;height:100%}.rings-side{width:230px;flex:none}.merge-table{flex:1 1;min-width:0}@media(max-width:1500px){.alloc-flex{flex-direction:column;align-items:center}.merge-table{width:100%}}.rings-side{width:250px}.params-inline{margin-top:16px;border-top:1px solid var(--border);padding-top:8px}.pi-title{font-weight:600;text-transform:uppercase;color:#fff;opacity:.8;padding:6px 0;display:flex;align-items:center;justify-content:space-between;gap:10px}.pi-admin,.pi-title{font-size:10px;letter-spacing:1.5px}.params-inline .param-row{padding:6.5px 0;font-size:12px}.params-inline .param-row b{font-size:12px}.grid4.slim{grid-template-columns:1.1fr 1.9fr}.merge-head .act,.merge-row .act{display:flex;justify-content:center}.merge-row{grid-template-columns:14px 1.05fr 1.15fr 1.15fr .75fr 1.05fr}.merge-row.slim{grid-template-columns:14px 1fr auto}.alloc-flex{gap:30px}.merge-table{border-left:1px solid var(--border);padding-left:24px}@media(max-width:1500px){.merge-table{border-left:none;padding-left:0}}.merge-head .act,.merge-row .act{justify-content:flex-end}.view-btn{background:transparent;border:1px solid var(--green);border-radius:5px;color:var(--green);font-family:inherit;font-weight:700;font-size:10px;letter-spacing:1px;padding:4px 12px;cursor:pointer}.view-btn:hover{background:var(--green);color:var(--black)}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:26px;max-width:640px;width:100%;box-shadow:0 20px 60px rgba(0,0,0,.7)}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal-head h2{margin:0}.modal-close{background:transparent;border:1px solid var(--border);border-radius:6px;color:#fff;font-size:16px;width:30px;height:30px;cursor:pointer;line-height:1}.modal-close:hover{border-color:var(--red);color:var(--red)}.matrix-view{width:100%;border-collapse:collapse}.matrix-view th{background:var(--blue);color:#fff;font-size:11px;padding:8px 10px;text-align:right}.matrix-view th:first-child{text-align:left}.matrix-view .mv-sub td{font-style:italic;font-size:10.5px;color:#fff;opacity:.75;padding:5px 10px;text-align:right;border-bottom:1px solid var(--border)}.matrix-view .mv-sub td:first-child{text-align:left}.matrix-view tbody td{padding:8px 10px;font-size:13px;border-bottom:1px solid var(--border);color:var(--body)}.matrix-view tbody td.num{text-align:right;font-weight:700;color:var(--green);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.matrix-view tbody tr:last-child td{border-bottom:none}.modal-note{margin-top:14px;font-size:11.5px;color:#fff;opacity:.8;line-height:1.5}.modal.guide{max-width:640px;max-height:82vh;overflow-y:auto}.pos-head{display:flex;align-items:center;gap:14px}.guide-btn{background:transparent;border:1px solid var(--border);border-radius:14px;color:var(--meta);font-family:inherit;font-size:10.5px;font-weight:600;letter-spacing:1px;padding:5px 12px;cursor:pointer;text-transform:uppercase}.guide-btn:hover{border-color:var(--green);color:var(--green)}.src-table{width:100%;border-collapse:collapse;font-size:11.5px;margin:4px 0 10px}.src-table th{text-align:left;font-size:9.5px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--meta);padding:4px 8px 4px 0}.src-table td,.src-table th{border-bottom:1px solid var(--border)}.src-table td{padding:6px 8px 6px 0;color:var(--body);line-height:1.45;vertical-align:top}.guide-body h3{font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--green);margin:16px 0 6px}.guide-body h3:first-child{margin-top:0}.guide-body p{font-size:12.5px;line-height:1.6;color:var(--body);margin:0 0 8px}.sd-info{background:transparent;border:none;color:inherit;font-size:13px;cursor:pointer;padding:0 2px;opacity:.8}.sd-info:hover{opacity:1}.modal-note a{color:var(--green)}.merge-head .sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.merge-head .sortable:hover{color:var(--green);opacity:1}.sim-btn{margin-left:14px;background:transparent;border:1px solid var(--border);border-radius:999px;color:#fff;font-family:inherit;font-weight:700;font-size:10.5px;letter-spacing:1px;padding:5px 14px;cursor:pointer;vertical-align:middle}.sim-btn:hover{border-color:#facc33;color:#facc33}.sim-btn.on{background:#facc33;border-color:#facc33;color:var(--black)}.panel.simming{border:1px dashed #facc33}.sim-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:rgba(242,201,76,.08);border:1px solid rgba(242,201,76,.4);border-radius:8px;padding:9px 14px;margin-bottom:16px;font-size:12px;font-weight:700;color:#facc33}.sim-actions{display:flex;gap:8px}.sim-actions button{background:transparent;border:1px solid #facc33;border-radius:5px;color:#facc33;font-family:inherit;font-weight:700;font-size:10.5px;padding:4px 12px;cursor:pointer}.sim-actions button:hover{background:#facc33;color:var(--black)}.sim-actions button.save{background:var(--green);border-color:var(--green);color:var(--black)}.sim-err{width:100%;color:var(--red);font-size:11px;font-weight:600}.param-row input{width:118px;padding:5px 8px}.mv-input,.param-row input{background:var(--black);border:1px solid #facc33;border-radius:5px;color:#facc33;font-family:inherit;font-size:12px;font-weight:700;text-align:right}.mv-input{width:60px;padding:4px 6px}.mv-sums td{font-weight:800;font-size:12px;padding:8px 10px}.mv-sums td.good{color:var(--green)}.mv-sums td.bad{color:var(--red)}.split-pair{border-left:2px solid rgba(242,201,76,.5);padding-left:10px;margin:8px 0}.sp-cat{font-size:9.5px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#facc33;padding:2px 0}.split-pair .param-row{padding:4.5px 0;border-bottom:none}.sp-in{display:flex;align-items:center;gap:5px}.sp-in em{font-style:normal;color:#facc33;font-size:11px;font-weight:700}.sp-in input{width:82px}.sim-drawer{position:fixed;top:0;right:0;height:100vh;width:400px;max-width:92vw;background:#021128;border-left:2px solid #facc33;z-index:90;display:flex;flex-direction:column;box-shadow:-16px 0 50px rgba(0,0,0,.6);animation:sd-in .22s ease-out}@keyframes sd-in{0%{transform:translateX(100%)}to{transform:translateX(0)}}.sd-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border);font-weight:800;font-size:14px;color:#facc33;flex:none}.sd-hide{background:transparent;border:1px solid var(--border);border-radius:6px;color:#facc33;font-size:15px;width:30px;height:30px;cursor:pointer;line-height:1}.sd-hide:hover{border-color:#facc33}.sd-body{flex:1 1;overflow-y:auto;padding:14px 18px}.sd-sec{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:#facc33;margin:16px 0 6px;border-bottom:1px solid rgba(242,201,76,.3);padding-bottom:4px}.sd-sec:first-child{margin-top:0}.sd-hint{font-size:10.5px;color:#fff;opacity:.55;margin-top:2px}.sd-body .param-row{border-bottom:none;padding:5px 0}.sd-matrix{width:100%;border-collapse:collapse;margin:6px 0}.sd-matrix th{font-size:9.5px;color:#fff;opacity:.7;padding:4px 2px;text-align:center}.sd-matrix td{padding:3px 2px;font-size:11.5px;color:var(--body)}.sd-matrix td:first-child{font-size:10.5px;white-space:nowrap;padding-right:6px}.sd-matrix input{width:100%;max-width:58px;background:var(--black);border:1px solid #facc33;border-radius:5px;color:#facc33;font-family:inherit;font-size:11.5px;font-weight:700;padding:4px 5px;text-align:right}.sd-matrix .mv-sums td{font-weight:800;text-align:right;padding-right:12px}.sd-foot{flex:none;display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:14px 18px;border-top:1px solid var(--border);background:#021128}.sd-foot button{background:transparent;border:1px solid #facc33;border-radius:6px;color:#facc33;font-family:inherit;font-weight:700;font-size:11px;padding:7px 14px;cursor:pointer}.sd-foot button:hover{background:#facc33;color:var(--black)}.sd-foot button.save{background:var(--green);border-color:var(--green);color:var(--black)}b.simval{color:#facc33!important}@media(max-width:768px){.sim-drawer{width:100vw;max-width:100vw}}.login-box button{background:var(--blue);color:#fff}.login-box button:hover{background:var(--blue-hover)}.btn{background:var(--blue);color:#fff}.btn:hover{background:var(--blue-hover)}.btn.ghost{background:transparent;border:1px solid var(--link);color:var(--link)}.btn.ghost:hover{background:transparent;border-color:var(--blue-hover);color:var(--blue-hover)}.chip.active,.toggle button.active{background:var(--blue);color:#fff}.chip.active{border-color:var(--blue)}.chip:hover,.refresh:hover,.view-btn{border-color:var(--link);color:var(--link)}.view-btn:hover{background:var(--blue);border-color:var(--blue);color:#fff}.chk input{accent-color:var(--blue)}.search-wrap:focus-within{border-color:var(--link)}.sd-foot button.save{background:var(--blue);border-color:var(--blue);color:#fff}.ring-legend button.on{border-color:var(--link)}.merge-head .sortable:hover,th.sortable:hover{color:var(--link)}.cal-head button:hover{border-color:var(--link);color:var(--link)}.cal-day:hover{background:#021f51;color:var(--link)}.cal-day.range{background:rgba(0,80,202,.25)}.cal-day.sel{background:var(--blue);color:#fff}.cal-day.today{outline:1px solid var(--link)}.admin-link:hover,.modal-note a{color:var(--link)}.tm-action.buy{background:var(--success-bg);color:var(--success-text)}.tm-action.sell{background:var(--error-bg);color:var(--error-text)}.tm-action.hold{background:#021f51;color:var(--body)}.merge-row .num.pos b{color:var(--success-text)}.merge-row .num.neg b{color:var(--error-text)}.pos{color:var(--success-text)}.neg{color:var(--error-text)}.delta-pos{color:var(--success-text)}.delta-neg{color:var(--error-text)}.b-live{color:var(--success-text)}.b-live .b-dot{background:var(--success-border)}.b-chain{color:var(--green2)}.b-chain .b-dot{background:var(--green2)}.login-err,.sim-err,.stale{color:var(--error-text)}b.simval{color:var(--warn-text)!important}.sim-banner,.sim-btn:hover{color:var(--warn-text)}.sim-btn:hover{border-color:var(--warn-border)}.sim-btn.on{background:var(--warn-border);color:#021128}.sd-head,.sd-sec,.sp-in em{color:var(--warn-text)}.param-row input,.sd-matrix input{color:var(--warn-text);border-color:var(--warn-border)}.modal-close:hover{border-color:var(--error-text)}.modal-close:hover,.mv-sums td.bad,.sd-matrix .bad,.tm-sums td.bad{color:var(--error-text)}.mv-sums td.good,.sd-matrix .good,.tm-sums td.good{color:var(--success-text)}.hero-total{color:var(--green)}.rule{background:linear-gradient(90deg,var(--green),var(--green2))}body{font-size:14px;font-weight:300;letter-spacing:.2px;color:var(--body)}h2{font-size:22px;letter-spacing:.8px;text-transform:uppercase;line-height:28px;color:var(--white)}.hero-total,h2{font-weight:800}.hero-total{font-size:48px;line-height:55px;letter-spacing:1.8px}.dc-label,.hero-label,.kpi .k,.merge-head,.merge-head span,.pi-title,.sd-sec,.st-label,th{font-size:11px;font-weight:400;letter-spacing:2px;text-transform:uppercase}td{font-weight:300}.alloc-val,.ccy,.kpi .v,.merge-row .num b,.param-row b{font-weight:600}.dc-val{font-weight:800}.row-ts,.stamp,footer{font-size:9px;font-weight:400;letter-spacing:.4px;line-height:16px}.info .tip,.sec-note{font-size:11px;font-weight:300;letter-spacing:.4px}.info .tip{line-height:16px}.label-chip{font-weight:400;letter-spacing:.6px;color:var(--body);border-color:var(--border-subtle)}.btn,.chip,.sd-foot button,.sim-actions button,.sim-btn,.view-btn{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.badge{font-weight:400;letter-spacing:1.2px}.search-wrap input{font-size:12px;letter-spacing:.6px}.cal-hint,.sd-hint{font-size:9px;letter-spacing:.4px}.alloc-row,.merge-row,.param-row,td{border-bottom-color:var(--border-subtle)}.alloc-row.clickable:hover,.merge-row.clickable:hover,tbody tr:hover td{background:#021f51}.cap-warn{margin-top:8px;padding:7px 10px;border:1px solid var(--warn-border);border-radius:6px;background:rgba(250,204,51,.08);color:var(--warn-text);font-size:10.5px;font-weight:600;letter-spacing:.4px}.split-pair.derived{border-left-color:var(--border-subtle)}.split-pair.derived .sp-cat{color:var(--body);opacity:.8}.split-pair.derived .param-row b{color:var(--body);font-weight:600}.merge-total{background:#021f51;border-radius:8px;border-bottom:none;margin-top:10px}.merge-total span:nth-child(2){font-size:11px;font-weight:800;letter-spacing:2px;color:var(--white)}.merge-total .num b{color:var(--green);font-weight:800}.rebalance-digest{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;padding:11px 14px;border:1px solid var(--border);border-radius:8px;font-size:11.5px;color:var(--body)}.rebalance-digest i{font-style:normal;font-weight:800;letter-spacing:1px;margin-right:6px}.rebalance-digest .rd-buy{color:var(--success-text)}.rebalance-digest .rd-sell{color:var(--error-text)}.rebalance-digest b{color:var(--white);font-weight:700}