:root{--bg:#0b0e14;--surface:#151a23;--surface-2:#1d2430;--border:#2a3242;--text:#e6e9ef;--muted:#8a93a6;--accent:#ffa14f;--green:#28c76f;--red:#ff5c5c;--amber:#ffb020;--radius:14px;}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.4;}
body{padding-bottom:80px;max-width:760px;margin:0 auto;}
.topbar{position:sticky;top:0;z-index:20;background:rgba(11,14,20,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:calc(12px + env(safe-area-inset-top)) 16px 12px;}
.topbar h1{font-size:17px;margin:0;font-weight:650;} .topbar .mode{font-size:11px;color:var(--amber);border:1px solid var(--amber);padding:1px 7px;border-radius:999px;} .topbar .mode.live{color:var(--green);border-color:var(--green);}
.icon-btn{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:10px;padding:7px 11px;font-size:13px;cursor:pointer;}
.view{padding:14px 16px;display:none;} .view.active{display:block;}
.section-title{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;margin:18px 0 8px;}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-bottom:12px;}
.kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;} .kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:13px;} .kpi .label{font-size:12px;color:var(--muted);} .kpi .value{font-size:21px;font-weight:680;margin-top:3px;}
.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:6px;} .chip{white-space:nowrap;background:var(--surface-2);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:7px 13px;font-size:13px;cursor:pointer;} .chip.active{background:var(--accent);border-color:var(--accent);color:#fff;} .chip .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-right:6px;vertical-align:middle;} .chip.online .dot{background:var(--green);}
.row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid var(--border);} .row:last-child{border-bottom:none;} .row .sym{font-weight:620;} .row .sub{font-size:12px;color:var(--muted);margin-top:2px;} .row .right{text-align:right;}
.pos{color:var(--green);} .neg{color:var(--red);} .mut{color:var(--muted);} .mono{font-variant-numeric:tabular-nums;}
.badge{font-size:11px;padding:1px 7px;border-radius:6px;border:1px solid var(--border);color:var(--muted);} .badge.buy{color:var(--green);border-color:var(--green);} .badge.sell{color:var(--red);border-color:var(--red);} .badge.pending{color:var(--amber);border-color:var(--amber);} .badge.executed{color:var(--green);border-color:var(--green);}
label.fld{display:block;font-size:12px;color:var(--muted);margin:12px 0 5px;}
input,select{width:100%;background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:10px;padding:12px;font-size:15px;}
.seg{display:flex;gap:8px;} .seg button{flex:1;padding:12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-weight:600;cursor:pointer;} .seg button.buy.active{background:var(--green);border-color:var(--green);color:#04210f;} .seg button.sell.active{background:var(--red);border-color:var(--red);color:#2a0606;}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;} .account-pick{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px;} .account-pick .chip.active{background:var(--accent);border-color:var(--accent);color:#fff;}
.btn{width:100%;padding:14px;border:none;border-radius:12px;font-size:16px;font-weight:680;cursor:pointer;margin-top:16px;} .btn.primary{background:var(--accent);color:#fff;} .btn.green{background:var(--green);color:#04210f;} .btn.red{background:var(--red);color:#2a0606;} .btn.ghost{background:var(--surface-2);color:var(--text);border:1px solid var(--border);} .btn:disabled{opacity:.5;}
.srow{padding:10px 0;border-bottom:1px solid var(--border);cursor:pointer;} .srow:last-child{border-bottom:none;}
.picked{background:var(--surface-2);border:1px solid var(--accent);border-radius:10px;padding:10px 12px;margin-top:8px;}
.mini{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:600;cursor:pointer;} .mini.ghost{background:var(--surface-2);color:var(--muted);border:1px solid var(--border);}
.tabbar{position:fixed;bottom:0;left:0;right:0;max-width:760px;margin:0 auto;display:flex;background:rgba(15,18,26,.96);backdrop-filter:blur(10px);border-top:1px solid var(--border);}
.tabbar button{flex:1;background:none;border:none;color:var(--muted);padding:8px 0 calc(8px + env(safe-area-inset-bottom));font-size:10px;cursor:pointer;} .tabbar button .ic{font-size:18px;display:block;line-height:1.3;} .tabbar button.active{color:var(--accent);}
.muted-note{color:var(--muted);font-size:13px;} .empty{text-align:center;color:var(--muted);padding:28px 0;}
.toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);background:var(--surface-2);border:1px solid var(--border);color:var(--text);padding:11px 16px;border-radius:12px;font-size:14px;z-index:50;max-width:90%;opacity:0;transition:opacity .2s;pointer-events:none;} .toast.show{opacity:1;} .toast.ok{border-color:var(--green);} .toast.err{border-color:var(--red);}
.overlay{position:fixed;inset:0;background:var(--bg);z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;} .overlay.hidden{display:none;} .overlay h2{margin:0 0 4px;} .overlay p{color:var(--muted);margin:0 0 20px;text-align:center;} .overlay .box{width:100%;max-width:340px;}
.spin{width:22px;height:22px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:sp .8s linear infinite;} @keyframes sp{to{transform:rotate(360deg);}}
.modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:90;display:none;align-items:flex-end;} .modal-bg.show{display:flex;}
.modal{background:var(--surface);width:100%;max-width:760px;margin:0 auto;border-radius:18px 18px 0 0;padding:20px 18px calc(20px + env(safe-area-inset-bottom));max-height:85vh;overflow-y:auto;-webkit-overflow-scrolling:touch;} .modal h3{margin:0 0 12px;}
/* holdings color */
#holdingsList .sub{color:#9aa4b8;} #holdingsList .px{color:#cdd6e6;} #holdingsList .right .pos{color:var(--green);font-weight:600;} #holdingsList .right .neg{color:var(--red);font-weight:600;} #holdingsList .val{font-weight:650;color:#f0f3f8;}
#positionsList .pos{color:var(--green);} #positionsList .neg{color:var(--red);}
.pill{font-size:11px;padding:1px 6px;border-radius:6px;font-weight:600;margin-left:5px;} .pill.up{color:var(--green);background:rgba(40,199,111,.15);} .pill.down{color:var(--red);background:rgba(255,92,92,.15);}
/* live terminal watchlist */
.wrow{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:12px 13px;margin-bottom:10px;}
.wtop,.wmid{display:flex;justify-content:space-between;align-items:baseline;gap:8px;}
.wmid{margin-top:5px;}
.wrow .sym{font-weight:650;}
.wltp{white-space:nowrap;border-radius:7px;padding:2px 4px;} .wltp .lbl{color:var(--muted);font-size:11px;} .wltp .v{font-size:21px;font-weight:700;font-variant-numeric:tabular-nums;}
.wstats{color:#9aa4b8;font-size:12px;font-variant-numeric:tabular-nums;} .wchg{font-weight:600;font-size:13px;font-variant-numeric:tabular-nums;}
.wbtns{display:flex;gap:8px;justify-content:flex-end;margin-top:10px;}
@keyframes flashUp{0%{background:rgba(40,199,111,.5);}100%{background:transparent;}}
@keyframes flashDown{0%{background:rgba(255,92,92,.5);}100%{background:transparent;}}
.flash-up{animation:flashUp .7s ease-out;} .flash-down{animation:flashDown .7s ease-out;}
.srow{display:flex;justify-content:space-between;align-items:center;gap:10px;}
.srLtp{font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap;color:#f0f3f8;}
.srRight{text-align:right;white-space:nowrap;} .srLbl{font-size:10px;color:var(--muted);line-height:1.1;}
.oseg{display:flex;gap:8px;margin-bottom:12px;} .oseg button{flex:1;padding:11px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--muted);font-weight:600;font-size:13px;cursor:pointer;} .oseg button.active{background:var(--accent);border-color:var(--accent);color:#fff;}
.mini.red{background:var(--red);color:#2a0606;}
.wtop{align-items:flex-start;} .wtop .sym{flex:1;min-width:0;}
.wact{display:flex;align-items:center;gap:7px;white-space:nowrap;}
.wltp .v{font-size:18px;}

.wcat{display:flex;gap:6px;margin-bottom:12px;}
.wcat button{flex:1;padding:10px 4px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--muted);font-weight:600;font-size:12.5px;cursor:pointer;}
.wcat button.active{color:#fff;font-weight:700;}
.wcat button[data-c="gold"].active{background:linear-gradient(135deg,#f6d365,#caa12e);border-color:#caa12e;color:#2a2008;}
.wcat button[data-c="silver"].active{background:linear-gradient(135deg,#eef1f6,#aeb4c0);border-color:#aeb4c0;color:#20242c;}
.wcat button[data-c="crude"].active{background:linear-gradient(135deg,#0e8a90,#0a5e63);border-color:#0a5e63;color:#eafdff;}
.wcat button[data-c="fno"].active{background:linear-gradient(135deg,#f6a45c,#d1833f);border-color:#d1833f;color:#fff;}

.oq{margin-top:10px;border-top:1px solid var(--border);padding-top:8px;}
.oqr{display:flex;justify-content:space-between;gap:6px;}
.oqr span{display:flex;flex-direction:column;align-items:center;flex:1;min-width:0;}
.oqr i{font-style:normal;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.3px;}
.oqr b{font-size:14px;font-weight:600;margin-top:2px;}
.oqr b.pos{color:var(--green);} .oqr b.neg{color:var(--red);}
.oqhl{margin-top:6px;font-size:11px;color:var(--muted);text-align:center;}

.wcat button{padding:9px 2px;font-size:11.5px;}
.wcat button[data-c="cash"].active{background:linear-gradient(135deg,#34d399,#0f9d58);border-color:#0f9d58;color:#06281b;}

/*SLIM*/
.view{padding:10px 16px;}
.oseg{margin-bottom:8px;} .oseg button{padding:8px 6px;font-size:12px;}
.chips{margin-bottom:4px;} .chip{padding:6px 12px;font-size:12px;}
.section-title{margin:10px 0 6px;}
#posFilter{margin-bottom:8px!important;} #posFilter button{padding:6px 3px!important;font-size:11px!important;}

/* AT: hide positions Net/Intraday selector */
#posModeSel{display:none !important}
