/* NODECAKE EXCHANGE v2.0 — Mobile-first Professional Trading UI */

/* ── Themes ────────────────────────────────────────────────── */
[data-theme="dark"]{--bg:#0a0704;--bg2:#110c07;--panel:#14100a;--panel2:#1c150e;--input:#1a130d;--hover:#221a12;--bd:#2a1f16;--bd2:#3d2e20;--bd-focus:rgba(232,115,72,.4);--text:#f0e8de;--t2:#b09a84;--t3:#6b5a48;--t4:#3d3028;--accent:#e87348;--accent-dim:rgba(232,115,72,.1);--green:#2ecc71;--green-bg:rgba(46,204,113,.08);--green-bd:rgba(46,204,113,.25);--red:#e74c3c;--red-bg:rgba(231,76,60,.08);--red-bd:rgba(231,76,60,.25);--gold:#d4a23a;--shadow:0 4px 20px rgba(0,0,0,.5);--scroll-t:#110c07;--scroll-b:#2a1f16}
[data-theme="light"]{--bg:#f3eee5;--bg2:#faf7f2;--panel:#ffffff;--panel2:#f8f4ed;--input:#f0ebe2;--hover:#ece5da;--bd:#ddd2c2;--bd2:#ccc0ad;--bd-focus:rgba(232,115,72,.45);--text:#2d2418;--t2:#7a6e5e;--t3:#b3a897;--t4:#d5cdc0;--accent:#e87348;--accent-dim:rgba(232,115,72,.08);--green:#27ae60;--green-bg:rgba(39,174,96,.06);--green-bd:rgba(39,174,96,.22);--red:#c0392b;--red-bg:rgba(192,57,43,.06);--red-bd:rgba(192,57,43,.22);--gold:#d4a23a;--shadow:0 2px 12px rgba(45,36,24,.08);--scroll-t:#f0ebe2;--scroll-b:#d5cdc0}
:root{--f:'Outfit',system-ui,sans-serif;--m:'JetBrains Mono',monospace;--r:8px;--rs:5px;--tr:all .2s cubic-bezier(.4,0,.2,1)}

/* ── Reset ─────────────────────────────────────────────────── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
::selection{background:rgba(232,115,72,.25)}
html{height:100%}
body{font-family:var(--f);background:var(--bg);color:var(--text);min-height:100vh;font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background .3s,color .3s}
a{color:var(--accent);text-decoration:none}
::-webkit-scrollbar{width:4px;height:4px}
::-webkit-scrollbar-track{background:var(--scroll-t)}
::-webkit-scrollbar-thumb{background:var(--scroll-b);border-radius:2px}

/* ── Header ────────────────────────────────────────────────── */
.ex-header{display:flex;align-items:center;height:44px;padding:0 10px;gap:10px;background:var(--panel);border-bottom:1px solid var(--bd);position:sticky;top:0;z-index:100}
.hamburger{width:30px;height:30px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;background:none;border:none;cursor:pointer;flex-shrink:0;padding:6px}
.hamburger span{display:block;width:16px;height:1.5px;background:var(--t2);border-radius:1px;transition:all .25s}
.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(3.5px,3.5px)}
.hamburger.open span:nth-child(2){opacity:0}
.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(3.5px,-3.5px)}
.hdr-pair{display:flex;align-items:center;gap:5px;cursor:pointer;flex-shrink:0;position:relative;padding:2px 0}
.hdr-pair-name{font-weight:800;font-size:14px;color:var(--text)}
.hdr-pair-arrow{font-size:8px;color:var(--t3);transition:transform .2s}
.hdr-pair.open .hdr-pair-arrow{transform:rotate(180deg)}
.hdr-price{font-family:var(--m);font-size:14px;font-weight:700;color:var(--accent);flex-shrink:0;transition:color .3s}
.hdr-price.flash-up{color:var(--green)}.hdr-price.flash-dn{color:var(--red)}
.hdr-change{font-family:var(--m);font-size:11px;font-weight:700;flex-shrink:0;padding:2px 6px;border-radius:3px}
.hdr-change.pos{color:var(--green);background:var(--green-bg)}
.hdr-change.neg{color:var(--red);background:var(--red-bg)}
.hdr-stats{display:flex;gap:14px;margin-left:auto;flex-shrink:0}
.hdr-stat{display:flex;flex-direction:column;gap:0}
.hdr-stat-l{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--t3);font-weight:700}
.hdr-stat-v{font-family:var(--m);font-size:11px;font-weight:600;color:var(--t2)}
.hdr-right{display:flex;align-items:center;gap:6px;margin-left:8px;flex-shrink:0}
.ai-fab{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--gold));border:none;color:#fff;font-size:13px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.ai-fab:hover{transform:scale(1.08)}.ai-fab.active{background:var(--red)}
.btn-sm{padding:5px 10px;border-radius:var(--rs);font-size:11px;font-weight:700;font-family:var(--f);cursor:pointer;border:1px solid var(--bd);background:none;color:var(--t2);transition:var(--tr);white-space:nowrap}
.btn-sm:hover{border-color:var(--accent);color:var(--accent)}
.btn-sm.primary{background:var(--accent);color:#fff;border-color:var(--accent)}

/* Mobile header: only hamburger, pair, price, AI */
@media(max-width:960px){
  .ex-header{height:40px;padding:0 8px;gap:8px}
  .hdr-pair-name{font-size:13px}
  .hdr-price{font-size:13px}
  .hdr-change,.hdr-stats{display:none}
  .hdr-right #auth-area{display:none}
  .ai-fab{width:28px;height:28px;font-size:12px}
}

/* ── Pair Dropdown ─────────────────────────────────────────── */
.pair-dropdown{position:absolute;top:calc(100% + 6px);left:0;z-index:200;background:var(--panel);border:1px solid var(--bd);border-radius:var(--r);box-shadow:var(--shadow);min-width:200px;display:none}
.pair-dropdown.open{display:block}
.pd-opt{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;cursor:pointer;transition:background .12s;border-bottom:1px solid var(--bd);font-size:13px}
.pd-opt:last-child{border-bottom:none}
.pd-opt:hover{background:var(--hover)}
.pd-opt.active{background:var(--accent-dim)}
.pd-opt-name{font-weight:700}
.pd-opt-price{font-family:var(--m);font-size:11px;color:var(--t2)}

/* ── Exchange Grid ─────────────────────────────────────────── */
.ex-grid{display:grid;height:calc(100vh - 44px);grid-template-columns:1fr 250px 280px;grid-template-rows:1fr 220px;gap:1px;background:var(--bd)}
.ex-grid>div{background:var(--panel);overflow:hidden}
.panel-head{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-bottom:1px solid var(--bd);flex-shrink:0}
.panel-title{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--t3)}

/* ── Chart ─────────────────────────────────────────────────── */
.chart-area{grid-column:1;grid-row:1;display:flex;flex-direction:column}
.chart-toolbar{display:flex;align-items:center;gap:3px;padding:4px 8px;border-bottom:1px solid var(--bd);flex-shrink:0}
.chart-toolbar .sep{width:1px;height:14px;background:var(--bd);margin:0 3px}
.tf-btn{padding:2px 6px;border-radius:3px;border:1px solid transparent;background:none;color:var(--t3);font-family:var(--m);font-size:10px;font-weight:600;cursor:pointer;transition:var(--tr)}
.tf-btn:hover{color:var(--t2);background:var(--hover)}
.tf-btn.active{color:var(--accent);background:var(--accent-dim);border-color:rgba(232,115,72,.2)}
.ind-btn{padding:2px 6px;border-radius:3px;border:1px solid var(--bd);background:none;color:var(--t3);font-family:var(--m);font-size:9.5px;font-weight:600;cursor:pointer;transition:var(--tr)}
.ind-btn:hover{border-color:var(--t3);color:var(--t2)}
.ind-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.chart-container{flex:1;position:relative;min-height:0}

/* ── Order Book ────────────────────────────────────────────── */
.orderbook-area{grid-column:2;grid-row:1;display:flex;flex-direction:column}
.ob-cols{display:flex;padding:3px 8px;font-size:8.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--t3);border-bottom:1px solid var(--bd);flex-shrink:0}
.ob-cols span{flex:1;text-align:right}.ob-cols span:first-child{text-align:left}
.ob-scroll{flex:1;overflow-y:auto;display:flex;flex-direction:column}
.ob-asks{flex:1;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.ob-bids{flex:1;overflow:hidden}
.ob-spread{display:flex;align-items:center;justify-content:center;gap:8px;padding:4px 8px;border-top:1px solid var(--bd);border-bottom:1px solid var(--bd);background:var(--bg2);flex-shrink:0}
.ob-spread-price{font-family:var(--m);font-size:14px;font-weight:800;color:var(--accent)}
.ob-spread-pct{font-family:var(--m);font-size:9.5px;color:var(--t3)}
.ob-row{display:flex;padding:0 8px;font-family:var(--m);font-size:10.5px;position:relative;cursor:pointer;line-height:1.8;transition:background .08s}
.ob-row:hover{background:var(--hover)}
.ob-row span{flex:1;text-align:right;position:relative;z-index:1}.ob-row span:first-child{text-align:left}
.ob-row .bar{position:absolute;top:0;right:0;bottom:0;opacity:.1;transition:width .3s}
.ob-row.ask span:first-child{color:var(--red)}.ob-row.ask .bar{background:var(--red)}
.ob-row.bid span:first-child{color:var(--green)}.ob-row.bid .bar{background:var(--green)}
.ob-row .ob-amt{color:var(--t2)}.ob-row .ob-tot{color:var(--t3);font-size:9.5px}

/* ── Trade Panel ───────────────────────────────────────────── */
.trade-area{grid-column:3;grid-row:1;display:flex;flex-direction:column}
.side-tabs{display:flex;flex-shrink:0}
.side-tab{flex:1;padding:9px;text-align:center;font-size:13px;font-weight:700;cursor:pointer;border:none;background:none;color:var(--t3);transition:var(--tr);border-bottom:2px solid transparent}
.side-tab.active.buy{color:var(--green);border-bottom-color:var(--green);background:var(--green-bg)}
.side-tab.active.sell{color:var(--red);border-bottom-color:var(--red);background:var(--red-bg)}
.trade-form{padding:12px 10px;display:flex;flex-direction:column;gap:8px;flex:1;overflow-y:auto}
.type-row{display:flex;gap:3px;padding:2px;background:var(--bg2);border-radius:var(--rs)}
.type-btn{flex:1;padding:4px;text-align:center;border-radius:3px;font-size:10.5px;font-weight:700;cursor:pointer;background:none;border:none;color:var(--t3);transition:var(--tr)}
.type-btn.active{background:var(--panel);color:var(--text);box-shadow:var(--shadow)}
.field-group{display:flex;flex-direction:column;gap:3px}
.field-label{display:flex;justify-content:space-between;font-size:10.5px;color:var(--t3)}
.field-label .bal{font-family:var(--m);font-size:10px;color:var(--t2);cursor:pointer}
.field-label .bal:hover{color:var(--accent)}
.field-input{display:flex;background:var(--input);border:1px solid var(--bd);border-radius:var(--rs);transition:border-color .15s}
.field-input:focus-within{border-color:var(--bd-focus)}
.field-input input{flex:1;background:none;border:none;color:var(--text);font-family:var(--m);font-size:12px;padding:7px 8px;outline:none;width:100%}
.field-input input::placeholder{color:var(--t4)}
.field-suffix{padding:0 8px;font-size:9.5px;font-weight:700;color:var(--t3);border-left:1px solid var(--bd);display:flex;align-items:center;flex-shrink:0}
.pct-row{display:flex;gap:3px}
.pct-btn{flex:1;padding:4px;text-align:center;border-radius:3px;font-size:9.5px;font-weight:700;font-family:var(--m);background:none;border:1px solid var(--bd);color:var(--t3);cursor:pointer;transition:var(--tr)}
.pct-btn:hover{border-color:var(--accent);color:var(--accent)}
.trade-total{display:flex;justify-content:space-between;padding:6px 0;border-top:1px solid var(--bd);font-size:10.5px;color:var(--t3)}
.trade-total-val{font-family:var(--m);font-weight:700;color:var(--text)}
.btn-trade{width:100%;padding:10px;border:none;border-radius:var(--rs);font-size:13px;font-weight:800;font-family:var(--f);cursor:pointer;transition:var(--tr)}
.btn-trade:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-trade:active{transform:translateY(0)}
.btn-trade.buy{background:var(--green);color:#fff}.btn-trade.sell{background:var(--red);color:#fff}
.btn-trade:disabled{opacity:.4;cursor:not-allowed;transform:none;filter:none}

/* ── Recent Trades ─────────────────────────────────────────── */
.trades-area{grid-column:1;grid-row:2;display:flex;flex-direction:column}
.rt-row{display:flex;padding:0 10px;font-family:var(--m);font-size:10.5px;line-height:1.8}
.rt-row span{flex:1}.rt-row span:nth-child(2){text-align:right;color:var(--t2)}.rt-row span:nth-child(3){text-align:right;color:var(--t3);font-size:9.5px}
.rt-row.buy span:first-child{color:var(--green)}.rt-row.sell span:first-child{color:var(--red)}

/* ── User Orders ───────────────────────────────────────────── */
.orders-area{grid-column:2/4;grid-row:2;display:flex;flex-direction:column}
.order-tabs{display:flex}
.order-tab{padding:6px 12px;font-size:10.5px;font-weight:700;cursor:pointer;background:none;border:none;border-bottom:2px solid transparent;color:var(--t3);transition:var(--tr)}
.order-tab.active{color:var(--accent);border-bottom-color:var(--accent)}
.order-tab .cnt{display:inline-flex;align-items:center;justify-content:center;min-width:14px;height:14px;padding:0 4px;border-radius:7px;font-size:9px;font-weight:700;background:var(--accent-dim);color:var(--accent);margin-left:3px}
.orders-scroll{flex:1;overflow:auto}
.orders-table{width:100%;border-collapse:collapse}
.orders-table th{text-align:left;padding:4px 8px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--t3);border-bottom:1px solid var(--bd);position:sticky;top:0;background:var(--panel)}
.orders-table td{padding:3px 8px;border-bottom:1px solid var(--bd);font-family:var(--m);font-size:10px;color:var(--t2)}
.orders-table tr:hover td{background:var(--hover)}
.orders-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;color:var(--t3);font-size:12px;gap:4px}
.orders-empty-icon{font-size:20px;opacity:.4}
.side-buy{color:var(--green);font-weight:700}.side-sell{color:var(--red);font-weight:700}
.btn-cancel{padding:2px 7px;border-radius:3px;font-size:9.5px;font-weight:700;background:var(--red-bg);border:1px solid var(--red-bd);color:var(--red);cursor:pointer;transition:var(--tr);font-family:var(--f)}
.btn-cancel:hover{background:var(--red);color:#fff}
.btn-cancel-all{padding:3px 8px;border-radius:var(--rs);font-size:9.5px;font-weight:700;background:none;border:1px solid var(--red-bd);color:var(--red);cursor:pointer;transition:var(--tr);font-family:var(--f)}
.btn-cancel-all:hover{background:var(--red);color:#fff}

/* ── Auth Wall ─────────────────────────────────────────────── */
.auth-wall{position:absolute;inset:0;z-index:50;background:rgba(10,7,4,.88);backdrop-filter:blur(6px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
[data-theme="light"] .auth-wall{background:rgba(243,238,229,.92)}
.auth-wall h3{font-size:14px;font-weight:800}.auth-wall p{font-size:11px;color:var(--t3)}

/* ── Slideout Menu ─────────────────────────────────────────── */
.menu-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:900;opacity:0;pointer-events:none;transition:opacity .3s}
.menu-overlay.open{opacity:1;pointer-events:auto}
.slideout{position:fixed;top:0;left:0;width:270px;height:100%;background:var(--panel);z-index:950;transform:translateX(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;border-right:1px solid var(--bd);overflow-y:auto}
.slideout.open{transform:translateX(0)}
.sl-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--bd)}
.sl-logo{display:flex;align-items:center;gap:7px;font-weight:800;font-size:14px;color:var(--text);text-decoration:none}
.sl-logo img{width:24px;height:24px;border-radius:5px}
.sl-close{width:28px;height:28px;border-radius:var(--rs);background:none;border:1px solid var(--bd);color:var(--t3);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:var(--tr)}
.sl-close:hover{border-color:var(--red);color:var(--red)}
.sl-user{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--bd);background:var(--bg2)}
.sl-avatar{width:32px;height:32px;border-radius:50%;background:var(--accent-dim);display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}
.sl-user-info{display:flex;flex-direction:column}
.sl-uname{font-weight:700;font-size:12.5px}.sl-urole{font-size:10.5px;color:var(--t3)}
.sl-group{padding:8px 0;border-bottom:1px solid var(--bd)}
.sl-label{padding:3px 14px 5px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--t3)}
.sl-link{display:flex;align-items:center;gap:9px;width:100%;padding:8px 14px;background:none;border:none;color:var(--t2);font-family:var(--f);font-size:12.5px;font-weight:600;cursor:pointer;transition:var(--tr);text-decoration:none}
.sl-link:hover{background:var(--hover);color:var(--text)}
.sl-link.active{color:var(--accent);background:var(--accent-dim)}
.sl-i{width:18px;text-align:center;font-size:14px;flex-shrink:0}
.sl-foot{margin-top:auto;padding:12px 14px;border-top:1px solid var(--bd)}
.sl-foot .btn-sm{width:100%;text-align:center;display:block;margin-bottom:5px}
.sl-ver{font-size:9.5px;color:var(--t4);text-align:center;margin-top:6px}

/* ── AI Panel ──────────────────────────────────────────────── */
.ai-panel{position:fixed;top:0;right:0;width:360px;height:100%;background:var(--panel);z-index:850;transform:translateX(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;border-left:1px solid var(--bd);box-shadow:-4px 0 20px rgba(0,0,0,.25)}
.ai-panel.open{transform:translateX(0)}
.ai-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--bd);flex-shrink:0}
.ai-head-l{display:flex;align-items:center;gap:7px}
.ai-spark{font-size:16px}
.ai-title{font-weight:800;font-size:13px;background:linear-gradient(135deg,var(--accent),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.ai-x{width:26px;height:26px;border-radius:var(--rs);background:none;border:1px solid var(--bd);color:var(--t3);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;transition:var(--tr)}
.ai-x:hover{border-color:var(--red);color:var(--red)}
.ai-msgs{flex:1;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:8px}
.ai-msg{display:flex;max-width:90%}.ai-msg.bot{align-self:flex-start}.ai-msg.user{align-self:flex-end}
.ai-bubble{padding:9px 12px;border-radius:10px;font-size:12px;line-height:1.55}
.ai-msg.bot .ai-bubble{background:var(--bg2);border:1px solid var(--bd);color:var(--text)}
.ai-msg.user .ai-bubble{background:var(--accent);color:#fff}
.ai-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.ai-chip{padding:4px 10px;border-radius:14px;font-size:10.5px;font-weight:600;font-family:var(--f);background:var(--accent-dim);border:1px solid rgba(232,115,72,.2);color:var(--accent);cursor:pointer;transition:var(--tr)}
.ai-chip:hover{background:var(--accent);color:#fff;border-color:var(--accent)}
.ai-bar{display:flex;gap:5px;padding:8px 10px;border-top:1px solid var(--bd);flex-shrink:0;background:var(--bg2)}
.ai-in{flex:1;padding:8px 12px;border-radius:16px;border:1px solid var(--bd);background:var(--panel);color:var(--text);font-family:var(--f);font-size:12px;outline:none}
.ai-in:focus{border-color:var(--accent)}.ai-in::placeholder{color:var(--t4)}
.ai-send{width:34px;height:34px;border-radius:50%;background:var(--accent);border:none;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--tr)}
.ai-send:hover{filter:brightness(1.12)}
.ai-typing{display:flex;gap:4px;padding:8px 12px}
.ai-typing span{width:5px;height:5px;border-radius:50%;background:var(--t3);animation:adot 1.4s infinite}
.ai-typing span:nth-child(2){animation-delay:.2s}.ai-typing span:nth-child(3){animation-delay:.4s}
@keyframes adot{0%,80%,100%{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}
@media(max-width:480px){.ai-panel{width:100%}}

/* ── Mobile Bottom Tabs ────────────────────────────────────── */
.mob-tabs{display:none;background:var(--panel);border-top:1px solid var(--bd);position:fixed;bottom:0;left:0;right:0;z-index:90}
.mob-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 2px 5px;background:none;border:none;color:var(--t3);cursor:pointer;font-family:var(--f);transition:color .15s}
.mob-tab span{font-size:9px;font-weight:600}
.mob-tab svg{opacity:.5;transition:opacity .15s}
.mob-tab.active{color:var(--accent)}.mob-tab.active svg{opacity:1;stroke:var(--accent)}

/* ── Toast ─────────────────────────────────────────────────── */
.toast-wrap{position:fixed;top:52px;right:10px;z-index:9999;display:flex;flex-direction:column;gap:5px}
.toast{padding:8px 14px;border-radius:var(--rs);font-size:11.5px;font-weight:600;box-shadow:var(--shadow);animation:tin .25s;max-width:280px}
.toast.success{background:var(--green);color:#fff}.toast.error{background:var(--red);color:#fff}
.toast.info{background:var(--panel);color:var(--text);border:1px solid var(--bd)}
@keyframes tin{from{opacity:0;transform:translateX(16px)}}

/* ── Loading ───────────────────────────────────────────────── */
.spinner{width:18px;height:18px;border:2px solid var(--bd);border-top-color:var(--accent);border-radius:50%;animation:sp .7s linear infinite}
@keyframes sp{to{transform:rotate(360deg)}}
.loading-center{display:flex;align-items:center;justify-content:center;height:100%;width:100%}

/* Stats grid for orders */
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px;padding:10px}
.stat-card{background:var(--bg2);border:1px solid var(--bd);border-radius:var(--rs);padding:8px 10px}
.stat-card-label{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--t3);font-weight:700}
.stat-card-value{font-family:var(--m);font-size:15px;font-weight:800;margin-top:2px}

/* ── MOBILE LAYOUT ─────────────────────────────────────────── */
@media(max-width:960px){
  .mob-tabs{display:flex!important}
  .ex-grid{grid-template-columns:1fr;grid-template-rows:1fr;height:calc(100vh - 40px - 46px);gap:0}
  .chart-area{grid-column:1;grid-row:1}
  .orderbook-area,.trade-area,.trades-area,.orders-area{display:none}
  .ex-grid.m-book .chart-area{display:none}.ex-grid.m-book .orderbook-area{display:flex;grid-column:1;grid-row:1}
  .ex-grid.m-trade .chart-area{display:none}.ex-grid.m-trade .trade-area{display:flex;grid-column:1;grid-row:1}
  .ex-grid.m-trades .chart-area{display:none}.ex-grid.m-trades .trades-area{display:flex;grid-column:1;grid-row:1}
  .ex-grid.m-orders .chart-area{display:none}.ex-grid.m-orders .orders-area{display:flex;grid-column:1;grid-row:1}
}
@media(min-width:961px){.mob-tabs{display:none!important}}

/* ── Ambience ──────────────────────────────────────────────── */
[data-theme="dark"] body::after{content:'';position:fixed;inset:0;background:radial-gradient(ellipse at 15% 5%,rgba(232,115,72,.015) 0%,transparent 50%);pointer-events:none;z-index:-1}
