:root{--coral:#FF6B4A;--amber:#F5A623;--green:#2ECC71;--red:#E74C3C;--tr:.22s cubic-bezier(.4,0,.2,1)}
[data-theme="dark"]{--bg:#0D1117;--bg2:#161B22;--bg3:#1C2330;--border:rgba(255,255,255,.07);--border2:rgba(255,255,255,.13);--text:#E6EDF3;--text2:#8B949E;--text3:#3D444D;--card:rgba(22,27,34,.97);--shadow:0 4px 28px rgba(0,0,0,.45);--shadow-lg:0 8px 48px rgba(0,0,0,.6);--glass:rgba(22,27,34,.8)}
[data-theme="light"]{--bg:#FAF7F4;--bg2:#FFF;--bg3:#F0EBE5;--border:rgba(0,0,0,.06);--border2:rgba(0,0,0,.13);--text:#1A1410;--text2:#6B6056;--text3:#C4B8B0;--card:rgba(255,255,255,.97);--shadow:0 4px 20px rgba(0,0,0,.08);--shadow-lg:0 8px 40px rgba(0,0,0,.13);--glass:rgba(255,255,255,.85)}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Geist',sans-serif;background:var(--bg);color:var(--text);min-height:100vh;transition:background var(--tr),color var(--tr);overflow-x:hidden}
body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:0;background-image:radial-gradient(ellipse 80vw 55vh at 8% 0%,rgba(255,107,74,.055) 0%,transparent 60%),radial-gradient(ellipse 60vw 45vh at 92% 100%,rgba(245,166,35,.04) 0%,transparent 60%)}
.wrap{max-width:1300px;margin:0 auto;padding:20px;position:relative;z-index:1}
nav{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;margin-bottom:20px;background:var(--glass);border:1px solid var(--border);border-radius:16px;backdrop-filter:blur(16px);box-shadow:var(--shadow)}
.nav-l{display:flex;align-items:center;gap:10px}
.logo{font-family:'DM Serif Display',serif;font-size:1.15rem;color:var(--coral);letter-spacing:-.02em}
.nav-sep{width:1px;height:18px;background:var(--border2)}
.nav-sub{font-size:.72rem;font-weight:600;color:var(--text2);letter-spacing:.07em;text-transform:uppercase}
.nav-r{display:flex;align-items:center;gap:8px}
.ts{font-size:.7rem;color:var(--text3);font-family:'Geist Mono',monospace}
.pill{display:flex;align-items:center;gap:5px;padding:4px 11px;border-radius:9999px;font-size:.7rem;font-weight:600;border:1px solid var(--border2);color:var(--text2);background:var(--bg3);transition:all var(--tr)}
.pill.open{color:var(--green);border-color:rgba(46,204,113,.3);background:rgba(46,204,113,.12)}
.dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.pill.open .dot,.ldot{animation:blink 2s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.4}}
.ibtn{width:34px;height:34px;border-radius:9px;border:1px solid var(--border2);background:var(--bg3);color:var(--text2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--tr);font-size:15px}
.ibtn:hover{background:var(--bg2);color:var(--text);border-color:var(--coral);transform:translateY(-1px)}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}
.g6{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:16px}
.card{background:var(--card);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);transition:transform var(--tr),box-shadow var(--tr);overflow:hidden}
.card:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}
.card-head{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border)}
.card-title{font-size:.78rem;font-weight:600;letter-spacing:.03em}
.pcard{padding:22px 22px 18px;position:relative;overflow:hidden}
.pcard::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--ca),var(--cb));border-radius:18px 18px 0 0}
.pcard::after{content:'';position:absolute;top:-30px;right:-30px;width:100px;height:100px;border-radius:50%;background:var(--ca);opacity:.07;filter:blur(25px);pointer-events:none}
.pcard.pu{--ca:#2ECC71;--cb:#1abc9c}.pcard.pr{--ca:#3498DB;--cb:#2980b9}.pcard.pt{--ca:#FF6B4A;--cb:#F5A623}
.plbl{font-size:.67rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--text2);margin-bottom:8px}
.pval{font-family:'DM Serif Display',serif;font-size:2.2rem;line-height:1;letter-spacing:-.02em;margin-bottom:6px}
.pcard.pt .pval{font-size:2.7rem}
.psub{font-size:.68rem;color:var(--text3)}
.up{color:var(--green)}.dn{color:var(--red)}.fl{color:var(--text2)}
.mcard{padding:14px 16px}
.mlbl{font-size:.63rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text2);margin-bottom:6px}
.mprice{font-family:'DM Serif Display',serif;font-size:1.35rem;letter-spacing:-.01em;color:var(--text);line-height:1.1}
.mchg{font-size:.68rem;font-family:'Geist Mono',monospace;margin-top:3px}
.mstale{font-size:.6rem;color:var(--text3);margin-top:2px}
.scard{padding:14px 16px}
.slbl{font-size:.67rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text2);margin-bottom:5px}
.sval{font-family:'DM Serif Display',serif;font-size:1.5rem;color:var(--text)}
.sval.amber{color:var(--amber)}
.range-btns{display:flex;gap:3px}
.rbtn{padding:3px 10px;border-radius:7px;font-size:.7rem;font-weight:600;border:1px solid var(--border2);cursor:pointer;background:transparent;color:var(--text2);transition:all .12s}
.rbtn:hover{color:var(--text);border-color:var(--coral)}.rbtn.on{background:var(--coral);border-color:var(--coral);color:#fff}
.chart-wrap{height:190px;position:relative;padding:12px 16px 16px}
.chart-empty{display:none;position:absolute;inset:0;align-items:center;justify-content:center;color:var(--text3);font-size:.78rem}
.chart-empty.show{display:flex}
.live-badge{display:flex;align-items:center;gap:5px;font-size:.67rem;font-weight:600;letter-spacing:.06em;color:var(--green);text-transform:uppercase}
.ldot{width:5px;height:5px;border-radius:50%;background:var(--green)}
table{width:100%;border-collapse:collapse}
thead th{padding:9px 18px;text-align:right;font-size:.63rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text3);border-bottom:1px solid var(--border)}
thead th:first-child{text-align:left}
tbody tr{transition:background .1s}tbody tr:hover{background:rgba(255,107,74,.025)}
tbody tr+tr{border-top:1px solid var(--border)}
td{padding:11px 18px;font-size:.8rem;text-align:right;color:var(--text)}td:first-child{text-align:left}
.sym{font-weight:600;font-size:.78rem}.sym-meta{font-size:.65rem;color:var(--text3);margin-top:1px;font-family:'Geist Mono',monospace}
.tte{font-size:.62rem;color:var(--amber);margin-top:2px;font-family:'Geist Mono',monospace}
.mono{font-family:'Geist Mono',monospace;font-size:.78rem}
.ql{color:var(--green);font-weight:600;font-family:'Geist Mono',monospace}.qs{color:var(--red);font-weight:600;font-family:'Geist Mono',monospace}
tfoot tr{border-top:2px solid var(--border2);background:var(--bg3)}
tfoot td{padding:10px 18px;font-weight:600;font-size:.78rem}
tfoot td:first-child{font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text2)}
.alert-up td:first-child{border-left:3px solid var(--green)}.alert-dn td:first-child{border-left:3px solid var(--red)}
.sg{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:14px}
.field{display:flex;flex-direction:column;gap:5px}
.field label{font-size:.67rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text2)}
.field input{padding:8px 12px;border-radius:9px;border:1px solid var(--border2);background:var(--bg3);color:var(--text);font-size:.82rem;font-family:'Geist Mono',monospace;transition:border-color var(--tr);outline:none}
.field input:focus{border-color:var(--coral)}
.hint{font-size:.62rem;color:var(--text3)}
.btn-save{padding:8px 22px;border-radius:9px;background:var(--coral);border:none;color:#fff;font-size:.78rem;font-weight:600;cursor:pointer;transition:all var(--tr)}
.btn-save:hover{background:#e55a3a;transform:translateY(-1px)}
.save-msg{font-size:.72rem;color:var(--green);display:none;margin-left:10px}

/* ── Collapsible ── */
.collapsible > .card-head { cursor:pointer; user-select:none; }
.collapse-arrow { margin-left:auto; font-size:.75rem; color:var(--text3); transition:transform .25s ease; display:inline-block; }
.collapsible.collapsed .collapse-arrow { transform:rotate(-90deg); }
.collapse-body { overflow:hidden; transition:max-height .35s cubic-bezier(.4,0,.2,1); max-height:5000px; }
.collapsible.collapsed .collapse-body { max-height:0 !important; }

/* ── Mobile responsive ── */
@media (max-width: 768px) {
  .wrap { padding: 12px; }
  nav { padding: 10px 14px; flex-wrap: wrap; gap: 8px; }
  .nav-sub { display: none; }
  .ts { display: none; }
  .g3, .g6 { grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 10px; }
  .g6 { grid-template-columns: repeat(3, 1fr); }
  .pcard { padding: 16px 14px 12px; }
  .pval { font-size: 1.6rem; }
  .pcard.pt .pval { font-size: 2rem; }
  .mcard { padding: 10px 12px; }
  .mprice { font-size: 1.1rem; }
  .scard { padding: 10px 12px; }
  .card-head { padding: 12px 14px; flex-wrap: wrap; gap: 6px; }
  .chart-wrap { height: 160px; padding: 8px 10px 12px; }
  .range-btns { gap: 2px; }
  .rbtn { padding: 2px 7px; font-size: .65rem; }
  /* Tables: horizontal scroll */
  .card > .collapse-body { overflow-x: auto; }
  table { min-width: 520px; }
  td, thead th { padding: 9px 10px; font-size: .75rem; }
  .sym { font-size: .72rem; }
  .sym-meta, .tte { font-size: .6rem; }
  .mono { font-size: .72rem; }
  /* Settings */
  .sg { grid-template-columns: 1fr; gap: 10px; }
  tfoot td { padding: 8px 10px; font-size: .72rem; }
}
@media (max-width: 480px) {
  .g3 { grid-template-columns: 1fr; }
  .g6 { grid-template-columns: repeat(2, 1fr); }
  .pval { font-size: 1.4rem; }
  .pcard.pt .pval { font-size: 1.7rem; }
}

.pf-stat{padding:10px 14px;border-right:1px solid var(--border);text-align:center}.pf-stat:last-child{border-right:none}.sb-stat-grid .pf-stat:nth-child(4n){border-right:none}.pfs-l{font-size:.6rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text3);margin-bottom:4px}.pfs-v{font-family:'DM Serif Display',serif;font-size:1.05rem;color:var(--text)}
.exp-tab{padding:2px 9px;border-radius:7px;font-size:.65rem;font-weight:600;border:1px solid var(--border2);cursor:pointer;background:transparent;color:var(--text2);transition:all .12s;font-family:'Geist Mono',monospace;}
.exp-tab:hover{border-color:var(--coral);color:var(--text)}
.exp-tab.active{background:var(--coral);border-color:var(--coral);color:#fff}
.nav-tabs{display:flex;gap:3px}
.nav-tab{padding:5px 14px;border-radius:9px;font-size:.72rem;font-weight:600;border:1px solid var(--border2);cursor:pointer;background:transparent;color:var(--text2);transition:all .12s;font-family:'Geist',sans-serif}
.nav-tab:hover{color:var(--text);border-color:var(--coral)}
.nav-tab.active{background:var(--coral);border-color:var(--coral);color:#fff}
@media(max-width:768px){.a-sum-grid{grid-template-columns:1fr 1fr!important}}
