:root{--bg:#07111f;--card:#101d30;--card2:#14243a;--line:#213852;--text:#eef7ff;--muted:#8ea3b8;--cyan:#36d4ff;--cyan2:#18aee8;--green:#35e69a;--red:#ff6475;--yellow:#ffd166;--shadow:0 18px 60px rgba(0,0,0,.28)}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"PingFang SC","Microsoft YaHei",sans-serif;background:radial-gradient(circle at top left,#122943 0,#07111f 38%,#050912 100%);color:var(--text)}button,input,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;display:flex}.sidebar{width:280px;padding:26px 18px;border-right:1px solid rgba(255,255,255,.08);background:rgba(7,17,31,.72);backdrop-filter:blur(18px);position:sticky;top:0;height:100vh}.brand{display:flex;gap:12px;align-items:center;margin-bottom:28px}.brand-icon{width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,var(--cyan),#6c5cff);display:grid;place-items:center;font-weight:900;color:#00111d}.brand strong{display:block;font-size:20px}.brand span,.muted{color:var(--muted);font-size:13px}.nav{display:grid;gap:8px}.nav button{border:0;color:var(--muted);background:transparent;text-align:left;padding:13px 15px;border-radius:14px}.nav button:hover,.nav button.active{background:linear-gradient(90deg,rgba(54,212,255,.18),rgba(54,212,255,.04));color:var(--text)}.side-card{position:absolute;left:18px;right:18px;bottom:22px;padding:16px;border:1px solid var(--line);border-radius:18px;background:rgba(20,36,58,.8)}.side-card small{color:var(--cyan)}.side-card b{display:block;margin:5px 0}.side-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.main{flex:1;padding:28px;max-width:1440px;margin:0 auto}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.topbar h1{margin:2px 0 0;font-size:30px}.top-actions{display:flex;gap:10px;align-items:center}.page{display:none;animation:fade .25s ease}.page.active{display:block}@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}.stat-card,.panel{background:linear-gradient(180deg,rgba(20,36,58,.92),rgba(12,24,41,.92));border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.stat-card{padding:20px}.stat-card span{display:block;color:var(--muted);font-size:13px}.stat-card strong{display:block;font-size:28px;margin:8px 0}.stat-card em{font-style:normal;color:var(--green);font-size:13px}.highlight{background:linear-gradient(135deg,rgba(54,212,255,.24),rgba(108,92,255,.14))}.danger-soft em{color:var(--yellow)}.content-grid{display:grid;gap:16px;margin-bottom:16px}.content-grid.two{grid-template-columns:1.25fr .9fr}.panel{padding:22px;margin-bottom:16px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.panel h2{margin:0;font-size:20px}.panel p{color:var(--muted);line-height:1.7}.pill{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:7px 11px;color:var(--muted);font-size:12px}.pill.success{color:var(--green);border-color:rgba(53,230,154,.35);background:rgba(53,230,154,.08)}.pill.warn{color:var(--yellow);border-color:rgba(255,209,102,.35)}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.live{background:var(--green);box-shadow:0 0 0 6px rgba(53,230,154,.12)}.mock-chart{height:260px;display:flex;align-items:end;gap:13px;padding:24px 6px 0}.mock-chart i{flex:1;border-radius:12px 12px 4px 4px;background:linear-gradient(180deg,var(--cyan),rgba(54,212,255,.15));box-shadow:0 0 20px rgba(54,212,255,.12)}.timeline{list-style:none;margin:0;padding:0;display:grid;gap:14px}.timeline li{padding-left:18px;border-left:2px solid var(--line)}.timeline b{display:block}.timeline span{display:block;color:var(--muted);font-size:13px;margin-top:4px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:680px}th,td{text-align:left;padding:14px;border-bottom:1px solid rgba(255,255,255,.07)}th{color:var(--muted);font-size:13px;font-weight:500}td{color:#dcecff}.primary,.ghost,.danger-fill{border:0;border-radius:14px;padding:12px 16px;color:var(--text);background:linear-gradient(135deg,var(--cyan),var(--cyan2));font-weight:700}.primary.small{padding:9px 12px;font-size:13px}.ghost{background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--text)}.danger,.danger-fill{color:#fff}.danger-fill{background:linear-gradient(135deg,#ff6475,#d63255);width:100%;margin:8px 0}.stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.stepper div{padding:16px;border:1px solid var(--line);border-radius:18px;color:var(--muted);background:rgba(20,36,58,.55)}.stepper span{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#223a56;margin-right:8px}.stepper .active,.stepper .done{color:var(--text);border-color:rgba(54,212,255,.45)}.stepper .done span{background:var(--green);color:#032014}.exchange-grid,.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.exchange{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.03);color:var(--text);text-align:left;padding:18px;font-weight:800}.exchange span{display:block;color:var(--muted);font-weight:500;margin-top:6px}.exchange.active{border-color:rgba(54,212,255,.65);background:rgba(54,212,255,.1);color:#7be7ff}.form{display:grid;gap:14px}.form label{display:grid;gap:7px;color:var(--muted);font-size:13px}.form input,.form select{width:100%;border:1px solid var(--line);background:#081525;color:var(--text);border-radius:14px;padding:13px}.form .check{display:flex;grid-template-columns:auto 1fr;align-items:center}.form .check input{width:auto}.split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.checks div{padding:15px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid var(--line)}.ok,.warn-dot{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;margin-right:8px;font-weight:900}.ok{background:rgba(53,230,154,.14);color:var(--green)}.warn-dot{background:rgba(255,209,102,.14);color:var(--yellow)}.detail-list p{display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.07);padding:12px 0;margin:0}.detail-list span{color:var(--muted)}.green{color:var(--green)}.actions{display:flex;gap:10px;margin-top:18px}.card{padding:20px;border-radius:22px;background:linear-gradient(180deg,rgba(20,36,58,.92),rgba(12,24,41,.92));border:1px solid var(--line);box-shadow:var(--shadow)}.card h3{margin:0 0 10px}.card p{color:var(--muted);line-height:1.6}.card .metrics{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.card .metrics span{font-size:12px;color:var(--cyan);background:rgba(54,212,255,.08);border:1px solid rgba(54,212,255,.24);border-radius:999px;padding:6px 9px}.risk-list{display:grid;gap:18px}.risk-list label{display:grid;grid-template-columns:130px 1fr 50px;gap:12px;align-items:center;color:var(--muted)}input[type=range]{accent-color:var(--cyan)}.toast{position:fixed;right:22px;bottom:22px;transform:translateY(18px);opacity:0;pointer-events:none;background:#091728;border:1px solid var(--line);border-radius:16px;padding:14px 18px;box-shadow:var(--shadow);transition:.25s}.toast.show{opacity:1;transform:none}@media(max-width:900px){.app-shell{display:block}.sidebar{position:static;width:auto;height:auto;padding:18px}.side-card{position:static;margin-top:14px}.nav{display:flex;overflow:auto}.nav button{white-space:nowrap}.main{padding:18px}.topbar{align-items:flex-start;gap:14px}.stats-grid,.content-grid.two,.stepper{grid-template-columns:1fr}.top-actions{display:none}.split{grid-template-columns:1fr}.risk-list label{grid-template-columns:1fr}.chart-panel{min-height:auto}}
.login-mask{position:fixed;inset:0;background:rgba(2,8,16,.82);display:grid;place-items:center;z-index:99;backdrop-filter:blur(10px)}.login-card{width:min(420px,92vw);padding:28px;border-radius:24px;background:linear-gradient(180deg,#14243a,#0b1728);border:1px solid var(--line);box-shadow:var(--shadow);display:grid;gap:14px}.login-card h2{margin:0}.login-card p{margin:0;color:var(--muted);line-height:1.6}.login-card input{border:1px solid var(--line);background:#081525;color:var(--text);border-radius:14px;padding:13px}.small{font-size:12px;padding:7px 10px}
.spark{height:54px;display:flex;gap:3px;align-items:end}.spark i{flex:1;background:linear-gradient(180deg,var(--green),rgba(53,230,154,.12));border-radius:4px 4px 1px 1px;min-height:4px}
.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 14px}.toolbar input,.toolbar select{border:1px solid var(--line);background:#081525;color:var(--text);border-radius:14px;padding:10px 12px}.modal-mask{position:fixed;inset:0;background:rgba(2,8,16,.78);display:grid;place-items:center;z-index:120;backdrop-filter:blur(10px)}.modal{width:min(560px,94vw);max-height:88vh;overflow:auto;background:linear-gradient(180deg,#14243a,#0b1728);border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow)}.modal h2{margin:0 0 14px}.modal .modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.badge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.empty{color:var(--muted);padding:18px;border:1px dashed var(--line);border-radius:16px;text-align:center}.danger-text{color:var(--red)}

.module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.module-card{border:1px solid var(--line);background:rgba(255,255,255,.035);border-radius:18px;padding:14px}.module-card b{display:block;color:var(--muted);font-size:13px}.module-card strong{display:block;font-size:24px;margin:8px 0}.module-card span{color:var(--text);font-size:13px}.pager{display:flex;justify-content:center;gap:12px;align-items:center;padding:8px}.pager button:disabled{opacity:.35;cursor:not-allowed}.toolbar .pill{margin-left:auto}
.disabled-card{opacity:.55;filter:grayscale(.4)}
.disabled-card button,.disabled-card input,.disabled-card select{pointer-events:none;opacity:.55}
.real-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;background:rgba(22,163,74,.12);color:#16a34a;font-size:12px;font-weight:700}

/* 2026-05 personal cockpit refresh: owner-first, backend-only presentation */
:root{
  --bg:#05080f;
  --card:#0d1724;
  --card2:#101f31;
  --line:#24344a;
  --text:#f2f7ff;
  --muted:#8b9bb1;
  --cyan:#4de3ff;
  --cyan2:#229fff;
  --green:#41f0a4;
  --red:#ff5570;
  --yellow:#ffd36a;
  --violet:#8d7cff;
  --shadow:0 22px 70px rgba(0,0,0,.38);
}
body{
  background:
    radial-gradient(circle at 18% 8%,rgba(77,227,255,.18),transparent 28%),
    radial-gradient(circle at 82% 0%,rgba(141,124,255,.15),transparent 26%),
    linear-gradient(135deg,#04070d 0%,#07111f 45%,#03050a 100%);
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;z-index:-1;
  background-image:linear-gradient(rgba(77,227,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(77,227,255,.08) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:radial-gradient(circle at top,black,transparent 74%);
}
.sidebar{background:linear-gradient(180deg,rgba(5,8,15,.94),rgba(8,18,32,.82));border-right:1px solid rgba(77,227,255,.16)}
.brand-icon{border-radius:18px;background:linear-gradient(135deg,var(--cyan),var(--violet));box-shadow:0 0 28px rgba(77,227,255,.28)}
.brand-icon::after{content:"🦐";font-size:18px}.brand-icon{font-size:0}
.brand strong{letter-spacing:.5px}.brand span{color:#9fb7d4}.nav button{position:relative;letter-spacing:.2px}.nav button:hover,.nav button.active{background:linear-gradient(90deg,rgba(77,227,255,.18),rgba(141,124,255,.08),transparent);box-shadow:inset 3px 0 0 var(--cyan)}
.nav button.ops-hidden{display:none}
.side-card{background:linear-gradient(180deg,rgba(16,31,49,.92),rgba(8,18,32,.92));border-color:rgba(77,227,255,.24)}
.topbar{padding:18px 20px;border:1px solid rgba(77,227,255,.14);border-radius:26px;background:linear-gradient(135deg,rgba(13,23,36,.76),rgba(16,31,49,.46));box-shadow:var(--shadow)}
.topbar h1{font-size:32px;letter-spacing:.3px}.topbar .muted{color:#a9bad0}
.stat-card,.panel,.card{background:linear-gradient(180deg,rgba(16,31,49,.88),rgba(8,18,32,.9));border-color:rgba(77,227,255,.16)}
.stat-card{position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;right:-32px;top:-32px;width:96px;height:96px;border-radius:50%;background:rgba(77,227,255,.08)}
.stat-card strong{letter-spacing:.4px}.highlight{background:linear-gradient(135deg,rgba(77,227,255,.24),rgba(141,124,255,.16))}
.panel-head h2:before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 18px var(--cyan);margin-right:9px;vertical-align:1px}
.primary{background:linear-gradient(135deg,var(--cyan),var(--cyan2));color:#00121d;box-shadow:0 10px 28px rgba(34,159,255,.18)}
.ghost{background:rgba(255,255,255,.045);border-color:rgba(77,227,255,.2)}
.danger-fill{background:linear-gradient(135deg,#ff5570,#b91c3b)}
.pill{border-color:rgba(77,227,255,.2);background:rgba(77,227,255,.045)}
.table-wrap{border-radius:18px;border:1px solid rgba(77,227,255,.08)}
th{background:rgba(77,227,255,.035)}
tr:hover td{background:rgba(77,227,255,.025)}
input,select,.form input,.form select,.toolbar input,.toolbar select{background:#060d18;border-color:rgba(77,227,255,.2)}
.mock-chart{background:linear-gradient(180deg,rgba(77,227,255,.03),transparent);border-radius:18px}
.module-card{background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));border-color:rgba(77,227,255,.15)}
.module-card strong{color:#eaf8ff}.module-card b{color:#9db0c7}.module-card span{color:#c8d7e8}
#billing{display:none!important}
@media(max-width:900px){.topbar{padding:16px}.topbar h1{font-size:25px}}

/* 2026-05 light cockpit refresh: bright, calm, low-eye-strain admin UI */
:root{
  --bg:#f5f7fb;
  --card:#ffffff;
  --card2:#f8fbff;
  --line:#e2e8f0;
  --text:#172033;
  --muted:#64748b;
  --cyan:#2563eb;
  --cyan2:#3b82f6;
  --green:#16a34a;
  --red:#dc2626;
  --yellow:#d97706;
  --violet:#6366f1;
  --shadow:0 14px 38px rgba(15,23,42,.08);
}
body{
  background:
    radial-gradient(circle at 10% 0%,rgba(59,130,246,.10),transparent 28%),
    radial-gradient(circle at 88% 4%,rgba(99,102,241,.08),transparent 24%),
    linear-gradient(180deg,#f8fafc 0%,#eef4fb 100%);
  color:var(--text);
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.45;
  z-index:-1;
  background-image:linear-gradient(rgba(37,99,235,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.045) 1px,transparent 1px);
  background-size:36px 36px;
  mask-image:linear-gradient(180deg,black,transparent 72%);
}
.sidebar{
  background:rgba(255,255,255,.86);
  border-right:1px solid var(--line);
  box-shadow:8px 0 26px rgba(15,23,42,.04);
}
.brand-icon{
  background:linear-gradient(135deg,#2563eb,#60a5fa);
  box-shadow:0 12px 28px rgba(37,99,235,.20);
}
.brand strong{color:#0f172a}.brand span,.muted{color:var(--muted)}
.nav button{color:#64748b;background:transparent}
.nav button:hover,.nav button.active{
  background:#eff6ff;
  color:#1d4ed8;
  box-shadow:inset 3px 0 0 #2563eb;
}
.side-card{
  background:#f8fafc;
  border-color:#dbeafe;
  box-shadow:var(--shadow);
}
.side-card small{color:#2563eb}.side-card b{color:#172033}.side-card p{color:#64748b}
.topbar{
  background:rgba(255,255,255,.86);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.topbar h1{color:#0f172a}
.stat-card,.panel,.card{
  background:rgba(255,255,255,.92);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.stat-card:after{background:rgba(37,99,235,.06)}
.stat-card span{color:#64748b}.stat-card strong{color:#0f172a}.stat-card em{color:#16a34a}
.highlight{background:linear-gradient(135deg,#ffffff,#eff6ff)}
.danger-soft{background:linear-gradient(135deg,#ffffff,#fff7ed)}.danger-soft em{color:#d97706}
.panel-head h2{color:#0f172a}.panel-head h2:before{background:#2563eb;box-shadow:0 0 0 5px rgba(37,99,235,.10)}
.panel p,.timeline span,.exchange span,.card p{color:#64748b}
.pill{
  background:#f8fafc;
  border-color:#e2e8f0;
  color:#64748b;
}
.pill.success{background:#ecfdf5;border-color:#bbf7d0;color:#15803d}
.pill.warn{background:#fffbeb;border-color:#fde68a;color:#b45309}
.primary{
  background:linear-gradient(135deg,#2563eb,#3b82f6);
  color:#fff;
  box-shadow:0 10px 24px rgba(37,99,235,.20);
}
.ghost{
  background:#ffffff;
  border:1px solid #dbe4ef;
  color:#334155;
}
.ghost:hover{background:#f8fafc;border-color:#bfdbfe;color:#1d4ed8}
.danger,.danger-text{color:#dc2626!important}.danger-fill{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}
.table-wrap{border:1px solid #e2e8f0;background:#fff}
table{background:#fff}th{background:#f8fafc;color:#64748b}td{color:#334155;border-bottom-color:#eef2f7}tr:hover td{background:#f8fbff}
.form input,.form select,.toolbar input,.toolbar select,input,select{
  background:#ffffff;
  color:#172033;
  border-color:#dbe4ef;
}
.form input:focus,.form select:focus,.toolbar input:focus,.toolbar select:focus{outline:2px solid rgba(37,99,235,.16);border-color:#60a5fa}
.exchange{background:#ffffff;border-color:#e2e8f0;color:#172033}.exchange.active{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}
.checks div,.module-card{background:#ffffff;border-color:#e2e8f0;color:#334155}
.ok{background:#dcfce7;color:#15803d}.warn-dot{background:#fef3c7;color:#b45309}
.detail-list p{border-bottom-color:#eef2f7}.detail-list span{color:#64748b}.green{color:#16a34a}
.timeline li{border-left-color:#dbeafe}.timeline b{color:#172033}
.mock-chart{background:#f8fafc}.mock-chart i{background:linear-gradient(180deg,#3b82f6,#bfdbfe);box-shadow:none}
.login-mask,.modal-mask{background:rgba(241,245,249,.72)}
.login-card,.modal{background:#ffffff;border-color:#e2e8f0;box-shadow:0 24px 70px rgba(15,23,42,.16);color:#172033}
.login-card p{color:#64748b}.toast{background:#ffffff;border-color:#dbe4ef;color:#172033;box-shadow:0 18px 40px rgba(15,23,42,.14)}
.spark i{background:linear-gradient(180deg,#22c55e,#bbf7d0)}
.empty{color:#64748b;border-color:#dbe4ef;background:#f8fafc}
.real-badge{background:#dcfce7;color:#15803d}

/* theme switch support */
body.theme-light #themeToggle::before{content:"☀️ ";}
body.theme-dark #themeToggle::before{content:"🌙 ";}

/* optional dark mode, enabled only when body.theme-dark is present */
body.theme-dark{
  --bg:#07111f;--card:#101d30;--card2:#14243a;--line:#213852;--text:#eef7ff;--muted:#8ea3b8;--cyan:#36d4ff;--cyan2:#18aee8;--green:#35e69a;--red:#ff6475;--yellow:#ffd166;--violet:#6c5cff;--shadow:0 18px 60px rgba(0,0,0,.28);
  background:radial-gradient(circle at top left,#122943 0,#07111f 38%,#050912 100%);color:var(--text)
}
body.theme-dark:before{opacity:.16;background-image:linear-gradient(rgba(54,212,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(54,212,255,.08) 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(circle at top,black,transparent 74%)}
body.theme-dark .sidebar{background:rgba(7,17,31,.72);border-right:1px solid rgba(255,255,255,.08);box-shadow:none}
body.theme-dark .brand-icon{background:linear-gradient(135deg,var(--cyan),#6c5cff);box-shadow:0 0 28px rgba(54,212,255,.22)}
body.theme-dark .brand strong,body.theme-dark .topbar h1,body.theme-dark .panel-head h2,body.theme-dark .stat-card strong,body.theme-dark .timeline b{color:var(--text)}
body.theme-dark .brand span,body.theme-dark .muted,body.theme-dark .stat-card span,body.theme-dark .panel p,body.theme-dark .timeline span,body.theme-dark .exchange span,body.theme-dark .card p,body.theme-dark .detail-list span{color:var(--muted)}
body.theme-dark .nav button{color:var(--muted)}
body.theme-dark .nav button:hover,body.theme-dark .nav button.active{background:linear-gradient(90deg,rgba(54,212,255,.18),rgba(54,212,255,.04));color:var(--text);box-shadow:inset 3px 0 0 var(--cyan)}
body.theme-dark .side-card{background:rgba(20,36,58,.8);border-color:var(--line);box-shadow:var(--shadow)}
body.theme-dark .side-card small{color:var(--cyan)}body.theme-dark .side-card b{color:var(--text)}
body.theme-dark .topbar{background:linear-gradient(135deg,rgba(13,23,36,.76),rgba(16,31,49,.46));border:1px solid rgba(77,227,255,.14);box-shadow:var(--shadow)}
body.theme-dark .stat-card,body.theme-dark .panel,body.theme-dark .card{background:linear-gradient(180deg,rgba(20,36,58,.92),rgba(12,24,41,.92));border-color:var(--line);box-shadow:var(--shadow)}
body.theme-dark .highlight{background:linear-gradient(135deg,rgba(54,212,255,.24),rgba(108,92,255,.14))}
body.theme-dark .danger-soft{background:linear-gradient(180deg,rgba(20,36,58,.92),rgba(12,24,41,.92))}body.theme-dark .danger-soft em{color:var(--yellow)}
body.theme-dark .panel-head h2:before{background:var(--cyan);box-shadow:0 0 18px var(--cyan)}
body.theme-dark .pill{background:rgba(77,227,255,.045);border-color:rgba(77,227,255,.2);color:var(--muted)}
body.theme-dark .pill.success{color:var(--green);border-color:rgba(53,230,154,.35);background:rgba(53,230,154,.08)}
body.theme-dark .pill.warn{color:var(--yellow);border-color:rgba(255,209,102,.35);background:rgba(255,209,102,.08)}
body.theme-dark .primary{background:linear-gradient(135deg,var(--cyan),var(--cyan2));color:var(--text);box-shadow:0 10px 28px rgba(34,159,255,.18)}
body.theme-dark .ghost{background:rgba(255,255,255,.05);border:1px solid var(--line);color:var(--text)}
body.theme-dark .ghost:hover{background:rgba(54,212,255,.08);border-color:rgba(54,212,255,.35);color:var(--text)}
body.theme-dark .danger,body.theme-dark .danger-text{color:var(--red)!important}body.theme-dark .danger-fill{background:linear-gradient(135deg,#ff6475,#d63255);color:#fff}
body.theme-dark .table-wrap{background:transparent;border-color:rgba(77,227,255,.08)}body.theme-dark table{background:transparent}body.theme-dark th{background:rgba(77,227,255,.035);color:var(--muted)}body.theme-dark td{color:#dcecff;border-bottom-color:rgba(255,255,255,.07)}body.theme-dark tr:hover td{background:rgba(77,227,255,.025)}
body.theme-dark .form input,body.theme-dark .form select,body.theme-dark .toolbar input,body.theme-dark .toolbar select,body.theme-dark input,body.theme-dark select{background:#081525;color:var(--text);border-color:var(--line)}
body.theme-dark .exchange{background:rgba(255,255,255,.03);border-color:var(--line);color:var(--text)}body.theme-dark .exchange.active{border-color:rgba(54,212,255,.65);background:rgba(54,212,255,.1);color:#7be7ff}
body.theme-dark .checks div,body.theme-dark .module-card{background:rgba(255,255,255,.04);border-color:var(--line);color:var(--text)}
body.theme-dark .ok{background:rgba(53,230,154,.14);color:var(--green)}body.theme-dark .warn-dot{background:rgba(255,209,102,.14);color:var(--yellow)}body.theme-dark .green{color:var(--green)}
body.theme-dark .timeline li{border-left-color:var(--line)}body.theme-dark .mock-chart{background:linear-gradient(180deg,rgba(77,227,255,.03),transparent)}body.theme-dark .mock-chart i{background:linear-gradient(180deg,var(--cyan),rgba(54,212,255,.15));box-shadow:0 0 20px rgba(54,212,255,.12)}
body.theme-dark .login-mask,body.theme-dark .modal-mask{background:rgba(2,8,16,.82)}body.theme-dark .login-card,body.theme-dark .modal{background:linear-gradient(180deg,#14243a,#0b1728);border-color:var(--line);color:var(--text)}body.theme-dark .login-card p{color:var(--muted)}body.theme-dark .toast{background:#091728;border-color:var(--line);color:var(--text)}

/* portal-style refresh inspired by a clean navigation homepage */
body:not(.theme-dark){
  background:linear-gradient(180deg,#f8fbff 0%,#f3f7fc 100%);
}
body:not(.theme-dark)::before{
  opacity:.28;
  background-image:linear-gradient(rgba(37,99,235,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.04) 1px,transparent 1px);
  background-size:34px 34px;
}
body:not(.theme-dark) .app-shell{gap:0}
body:not(.theme-dark) .sidebar{
  width:260px;
  background:rgba(255,255,255,.9);
  border-right:1px solid #e6edf5;
  box-shadow:10px 0 30px rgba(15,23,42,.03);
}
body:not(.theme-dark) .main{
  max-width:1500px;
  padding:26px 30px 34px;
}
body:not(.theme-dark) .topbar{
  min-height:96px;
  padding:22px 24px;
  border-radius:28px;
  background:linear-gradient(135deg,#ffffff 0%,#f8fbff 100%);
  border:1px solid #e5edf7;
  box-shadow:0 10px 30px rgba(15,23,42,.05);
}
body:not(.theme-dark) .topbar h1{font-size:31px;line-height:1.1}
body:not(.theme-dark) .topbar .muted{font-size:13px;letter-spacing:.2px}
body:not(.theme-dark) .top-actions .pill{background:#f8fbff;color:#2563eb;border-color:#dbeafe}
body:not(.theme-dark) .top-actions .ghost{border-radius:999px;padding:10px 15px}
body:not(.theme-dark) .stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}
body:not(.theme-dark) .stat-card{
  border-radius:22px;
  padding:18px 18px 16px;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
}
body:not(.theme-dark) .stat-card span{font-size:12px;text-transform:none;letter-spacing:.2px}
body:not(.theme-dark) .stat-card strong{font-size:28px;margin:10px 0 6px}
body:not(.theme-dark) .content-grid.two{grid-template-columns:1.18fr .92fr}
body:not(.theme-dark) .panel,
body:not(.theme-dark) .card{
  border-radius:24px;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
}
body:not(.theme-dark) .panel{padding:20px 22px}
body:not(.theme-dark) .panel-head{margin-bottom:16px}
body:not(.theme-dark) .panel-head h2{font-size:18px;font-weight:800}
body:not(.theme-dark) .module-card{border-radius:18px;padding:16px 14px}
body:not(.theme-dark) .module-card strong{font-size:26px}
body:not(.theme-dark) .cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
body:not(.theme-dark) .exchange-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
body:not(.theme-dark) .card h3{font-size:18px}
body:not(.theme-dark) .timeline li{padding-left:16px}
body:not(.theme-dark) .table-wrap{border-radius:18px}
body:not(.theme-dark) .toolbar{margin-bottom:14px}
body:not(.theme-dark) .nav{gap:10px}
body:not(.theme-dark) .nav button{
  border-radius:16px;
  padding:12px 14px;
  font-weight:700;
}
body:not(.theme-dark) .side-card{
  border-radius:20px;
  padding:16px 16px 15px;
}
body:not(.theme-dark) .side-card b{font-size:15px}
body:not(.theme-dark) .mock-chart{height:240px;padding:18px 10px 0}
body:not(.theme-dark) .mock-chart i{border-radius:12px 12px 4px 4px}
body:not(.theme-dark) .login-card,
body:not(.theme-dark) .modal{
  border-radius:26px;
}
body:not(.theme-dark) .toast{border-radius:16px}
body:not(.theme-dark) .primary,
body:not(.theme-dark) .ghost,
body:not(.theme-dark) .danger-fill{
  border-radius:14px;
}
body:not(.theme-dark) .pill{border-radius:999px}
body:not(.theme-dark) .checks{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
body:not(.theme-dark) .checks div{border-radius:16px}
body:not(.theme-dark) .risk-list label{grid-template-columns:150px 1fr 52px}
body:not(.theme-dark) .toolbar input,
body:not(.theme-dark) .toolbar select,
body:not(.theme-dark) .form input,
body:not(.theme-dark) .form select,
body:not(.theme-dark) input,
body:not(.theme-dark) select{
  border-radius:14px;
}
@media(max-width:900px){
  body:not(.theme-dark) .main{padding:16px}
  body:not(.theme-dark) .topbar{border-radius:22px}
  body:not(.theme-dark) .nav button{border-radius:14px}
}

/* 2026-05-20 ChainNav one-to-one direction: black/gold Web3 navigation dashboard */
:root{
  --bg:#0B0E11;
  --card:#1E2026;
  --card2:#181A20;
  --line:#2B3139;
  --text:#EAECEF;
  --muted:#848E9C;
  --cyan:#F0B90B;
  --cyan2:#FCD535;
  --green:#0ECB81;
  --red:#F6465D;
  --yellow:#F0B90B;
  --violet:#7C3AED;
  --shadow:none;
}
html,body{height:100%}
body,body.theme-light,body.theme-dark{
  margin:0!important;
  background:#0B0E11!important;
  color:#EAECEF!important;
  overflow:hidden!important;
}
body:before,body.theme-light:before,body.theme-dark:before{display:none!important}
.app-shell{height:100vh!important;display:flex!important;overflow:hidden!important;background:#0B0E11!important}
.sidebar{
  width:256px!important;min-width:256px!important;height:100vh!important;position:relative!important;top:auto!important;
  padding:0!important;background:#0B0E11!important;border-right:1px solid #1F2937!important;box-shadow:none!important;backdrop-filter:none!important;
  display:flex!important;flex-direction:column!important;
}
.brand{height:76px!important;margin:0!important;padding:0 24px!important;display:flex!important;align-items:center!important;gap:10px!important;color:#F0B90B!important}
.brand-icon{width:34px!important;height:34px!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important;color:#F0B90B!important;font-size:0!important}
.brand-icon:after{content:"▦"!important;font-size:28px!important;line-height:1;color:#F0B90B!important}
.brand strong{font-size:24px!important;color:#F0B90B!important;font-weight:800!important;letter-spacing:.2px!important}
.brand span{display:none!important}
.nav{display:flex!important;flex-direction:column!important;gap:8px!important;padding:16px!important;overflow:auto!important;flex:1!important}
.nav:before{content:"核心后台";display:block;color:#5E6673;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:0 16px 6px}
.nav button{
  width:100%!important;border:0!important;background:transparent!important;color:#B7BDC6!important;text-align:left!important;
  padding:12px 16px!important;border-radius:12px!important;font-size:14px!important;font-weight:500!important;box-shadow:none!important;
}
.nav button:nth-child(5):before{content:"应用管理";display:block;color:#5E6673;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:16px 0 10px -1px}
.nav button:hover,.nav button.active{background:#1E2329!important;color:#F0B90B!important;box-shadow:none!important}
.nav button.ops-hidden{display:none!important}
.side-card{position:static!important;margin:12px 16px 18px!important;padding:16px!important;border-radius:16px!important;background:rgba(30,32,38,.7)!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:none!important}
.side-card small{color:#F0B90B!important}.side-card b{color:#EAECEF!important}.side-card p{color:#848E9C!important;font-size:13px!important}
.main{height:100vh!important;max-width:none!important;margin:0!important;padding:0!important;flex:1!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:#0B0E11!important}
.topbar{
  height:64px!important;min-height:64px!important;margin:0!important;padding:0 32px!important;border-radius:0!important;
  border:0!important;border-bottom:1px solid #1F2937!important;background:#0B0E11!important;box-shadow:none!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;
}
.topbar>div:first-child{display:none!important}
.top-actions{display:flex!important;align-items:center!important;gap:24px!important;width:100%!important;justify-content:space-between!important}
.top-search{width:384px!important;max-width:42vw!important;height:38px!important;border-radius:999px!important;background:#181A20!important;border:1px solid #374151!important;display:flex!important;align-items:center!important;padding:0 16px!important;color:#5E6673!important}
.top-search input{border:0!important;background:transparent!important;outline:none!important;color:#EAECEF!important;width:100%!important;margin-left:10px!important;font-size:14px!important;padding:0!important}
.top-search input::placeholder{color:#5E6673!important}
.market-mini{margin-left:auto;color:#848E9C!important;font-size:12px!important}.market-mini b{color:#F0B90B!important;font-weight:600!important}
.top-actions .pill{background:transparent!important;border:0!important;color:#848E9C!important;padding:0!important}
.top-actions .pill.success{color:#0ECB81!important}
.top-actions .ghost,#themeToggle,#panicBtn{border:0!important;border-radius:999px!important;background:#F0B90B!important;color:#181A20!important;font-weight:800!important;padding:9px 20px!important;box-shadow:none!important}
#panicBtn{background:#F6465D!important;color:#fff!important}
.page{flex:1!important;overflow:auto!important;padding:32px!important;background:#0B0E11!important}
#dashboard.page.active:before{content:"探索个人量化生态";display:block;font-size:30px;font-weight:800;color:#EAECEF;margin:0 0 8px}
#dashboard.page.active:after{content:"聚合账户、机器人、策略、风控与交易记录，一站式个人量化导航。";display:block;color:#93A0AE;margin:-4px 0 24px;font-size:15px}
.stats-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important;margin:0 0 34px!important}
.stat-card,.panel,.card,.exchange,.checks div,.module-card{
  background:rgba(30,32,38,.7)!important;backdrop-filter:blur(10px)!important;border:1px solid rgba(255,255,255,.10)!important;
  border-radius:16px!important;box-shadow:none!important;transition:all .25s ease!important;color:#EAECEF!important;
}
.stat-card:hover,.panel:hover,.card:hover,.exchange:hover,.module-card:hover{border-color:#F0B90B!important;transform:translateY(-2px)!important;box-shadow:0 4px 20px rgba(240,185,11,.10)!important}
.stat-card{padding:20px!important}.stat-card:after{display:none!important}.stat-card span{color:#848E9C!important}.stat-card strong{color:#EAECEF!important;font-size:28px!important}.stat-card em{color:#0ECB81!important}
.highlight{background:linear-gradient(135deg,#1E3A8A,#581C87)!important;border-color:transparent!important}.danger-soft em{color:#F0B90B!important}
.content-grid{gap:24px!important;margin-bottom:24px!important}.content-grid.two{grid-template-columns:2fr 1fr!important}
.panel{padding:24px!important;margin-bottom:24px!important}.panel-head h2{color:#EAECEF!important;font-size:20px!important;text-transform:none!important}.panel-head h2:before{display:none!important}.panel p{color:#848E9C!important}
.pill{background:#2B3139!important;border:0!important;color:#848E9C!important;border-radius:6px!important;padding:5px 9px!important}.pill.success{background:#102821!important;color:#0ECB81!important}.pill.warn{background:#332A12!important;color:#F0B90B!important}
.timeline li{border-left:0!important;background:transparent!important;padding-left:0!important}.timeline b{color:#EAECEF!important}.timeline span{color:#848E9C!important}
.mock-chart{background:transparent!important;height:250px!important}.mock-chart i{background:linear-gradient(180deg,#F0B90B,rgba(240,185,11,.18))!important;box-shadow:none!important;border-radius:8px 8px 2px 2px!important}
table{background:transparent!important}th{background:#181A20!important;color:#848E9C!important;border-bottom:1px solid #2B3139!important}td{color:#EAECEF!important;border-bottom:1px solid #2B3139!important}tr:hover td{background:#181A20!important}.table-wrap{border:1px solid #2B3139!important;border-radius:16px!important;background:transparent!important}
.primary{background:#F0B90B!important;color:#181A20!important;border-radius:999px!important;border:0!important;box-shadow:none!important;font-weight:800!important}.ghost{background:#181A20!important;color:#EAECEF!important;border:1px solid #2B3139!important;border-radius:999px!important}.ghost:hover{border-color:#F0B90B!important;color:#F0B90B!important;background:#181A20!important}.danger-fill{background:#F6465D!important;color:#fff!important;border-radius:999px!important}
.form input,.form select,.toolbar input,.toolbar select,input,select{background:#181A20!important;border:1px solid #374151!important;color:#EAECEF!important;border-radius:12px!important}.form label{color:#848E9C!important}.exchange.active{background:#1E2329!important;border-color:#F0B90B!important;color:#F0B90B!important}.exchange span,.card p{color:#848E9C!important}.card .metrics span{background:#2B3139!important;color:#848E9C!important;border:0!important;border-radius:6px!important}.ok{background:#102821!important;color:#0ECB81!important}.warn-dot{background:#332A12!important;color:#F0B90B!important}.green{color:#0ECB81!important}.danger,.danger-text{color:#F6465D!important}
.login-mask,.modal-mask{background:rgba(11,14,17,.86)!important}.login-card,.modal{background:#1E2026!important;border:1px solid #2B3139!important;border-radius:16px!important;color:#EAECEF!important}.toast{background:#1E2026!important;border:1px solid #2B3139!important;color:#EAECEF!important}
@media(max-width:900px){body{overflow:auto!important}.app-shell{display:block!important;height:auto!important;overflow:auto!important}.sidebar{width:auto!important;min-width:0!important;height:auto!important}.main{height:auto!important;overflow:visible!important}.topbar{height:auto!important;padding:16px!important}.top-actions{gap:10px!important;flex-wrap:wrap!important}.top-search{max-width:none!important;width:100%!important}.page{padding:18px!important}.stats-grid,.content-grid.two{grid-template-columns:1fr!important}}

/* left nav icon + larger text polish */
.nav button{
  font-size:15.5px!important;
  line-height:1.35!important;
  padding:13px 16px!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
.nav button::before{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:22px!important;
  min-width:22px!important;
  color:#848E9C!important;
  font-size:16px!important;
}
.nav button:hover::before,
.nav button.active::before{color:#F0B90B!important}
.nav button[data-page="dashboard"]::before{content:"▦"}
.nav button[data-page="connect"]::before{content:"⛓"}
.nav button[data-page="bots"]::before{content:"🤖"}
.nav button[data-page="strategy"]::before{content:"📈"}
.nav button[data-page="copy"]::before{content:"⇄"}
.nav button[data-page="risk"]::before{content:"🛡"}
.nav button[data-page="records"]::before{content:"📋"}
.nav button[data-page="users"]::before{content:"🔐"}
.nav button[data-page="billing"]::before{content:"💳"}
.nav button[data-page="analytics"]::before{content:"📊"}
.nav button[data-page="notify"]::before{content:"🔔"}
.nav button[data-page="settings"]::before{content:"⚙"}
.nav button[data-page="admin"]::before{content:"🖥"}
.brand strong{font-size:25px!important}

/* remove bottom-left safety card + real light/dark switch for ChainNav skin */
.side-card{display:none!important}

body.theme-light{
  --bg:#F6F8FB;--card:#FFFFFF;--card2:#F8FAFC;--line:#E5EAF2;--text:#111827;--muted:#64748B;--cyan:#F0B90B;--cyan2:#D99A00;--green:#16A34A;--red:#DC2626;--yellow:#B7791F;
  background:#F6F8FB!important;color:#111827!important;
}
body.theme-light .app-shell{background:#F6F8FB!important}
body.theme-light .sidebar{background:#FFFFFF!important;border-right:1px solid #E5EAF2!important;box-shadow:8px 0 28px rgba(15,23,42,.04)!important}
body.theme-light .brand{color:#C99400!important}
body.theme-light .brand-icon:after,body.theme-light .brand strong{color:#C99400!important}
body.theme-light .nav:before{color:#94A3B8!important}
body.theme-light .nav button{color:#475569!important;background:transparent!important}
body.theme-light .nav button::before{color:#94A3B8!important}
body.theme-light .nav button:hover,body.theme-light .nav button.active{background:#FFF7D6!important;color:#A16207!important}
body.theme-light .nav button:hover::before,body.theme-light .nav button.active::before{color:#A16207!important}
body.theme-light .main{background:#F6F8FB!important}
body.theme-light .topbar{background:#FFFFFF!important;border-bottom:1px solid #E5EAF2!important}
body.theme-light .top-search{background:#F8FAFC!important;border:1px solid #E2E8F0!important;color:#94A3B8!important}
body.theme-light .top-search input{color:#111827!important;background:transparent!important}
body.theme-light .top-search input::placeholder{color:#94A3B8!important}
body.theme-light .market-mini{color:#64748B!important}
body.theme-light .market-mini b{color:#B7791F!important}
body.theme-light .top-actions .pill{color:#64748B!important}
body.theme-light .top-actions .pill.success{color:#16A34A!important}
body.theme-light .top-actions .ghost,
body.theme-light #themeToggle{background:#F0B90B!important;color:#111827!important}
body.theme-light #panicBtn{background:#DC2626!important;color:#FFFFFF!important}
body.theme-light .page{background:#F6F8FB!important;color:#111827!important}
body.theme-light #dashboard.page.active:before{color:#111827!important}
body.theme-light #dashboard.page.active:after{color:#64748B!important}
body.theme-light .stat-card,
body.theme-light .panel,
body.theme-light .card,
body.theme-light .exchange,
body.theme-light .checks div,
body.theme-light .module-card{
  background:#FFFFFF!important;backdrop-filter:none!important;border:1px solid #E5EAF2!important;color:#111827!important;box-shadow:0 10px 28px rgba(15,23,42,.05)!important;
}
body.theme-light .stat-card:hover,
body.theme-light .panel:hover,
body.theme-light .card:hover,
body.theme-light .exchange:hover,
body.theme-light .module-card:hover{border-color:#F0B90B!important;box-shadow:0 10px 30px rgba(240,185,11,.12)!important}
body.theme-light .highlight{background:linear-gradient(135deg,#FFF9DB,#FFFFFF)!important;border-color:#F8E7A2!important}
body.theme-light .stat-card span,
body.theme-light .panel p,
body.theme-light .timeline span,
body.theme-light .exchange span,
body.theme-light .card p,
body.theme-light .form label{color:#64748B!important}
body.theme-light .stat-card strong,
body.theme-light .panel-head h2,
body.theme-light .timeline b,
body.theme-light .card h3{color:#111827!important}
body.theme-light .pill{background:#F8FAFC!important;color:#64748B!important;border:1px solid #E5EAF2!important}
body.theme-light .pill.success{background:#ECFDF5!important;color:#16A34A!important;border-color:#BBF7D0!important}
body.theme-light .pill.warn{background:#FFFBEB!important;color:#B7791F!important;border-color:#FDE68A!important}
body.theme-light .table-wrap{background:#FFFFFF!important;border:1px solid #E5EAF2!important}
body.theme-light table{background:#FFFFFF!important}
body.theme-light th{background:#F8FAFC!important;color:#64748B!important;border-bottom:1px solid #E5EAF2!important}
body.theme-light td{color:#334155!important;border-bottom:1px solid #EEF2F7!important}
body.theme-light tr:hover td{background:#FFFDF3!important}
body.theme-light .form input,
body.theme-light .form select,
body.theme-light .toolbar input,
body.theme-light .toolbar select,
body.theme-light input,
body.theme-light select{background:#FFFFFF!important;border:1px solid #E2E8F0!important;color:#111827!important}
body.theme-light .primary{background:#F0B90B!important;color:#111827!important}
body.theme-light .ghost{background:#FFFFFF!important;color:#334155!important;border:1px solid #E2E8F0!important}
body.theme-light .ghost:hover{border-color:#F0B90B!important;color:#A16207!important;background:#FFFBEB!important}
body.theme-light .danger-fill{background:#DC2626!important;color:#FFFFFF!important}
body.theme-light .mock-chart i{background:linear-gradient(180deg,#F0B90B,#FDE68A)!important}
body.theme-light .ok{background:#DCFCE7!important;color:#16A34A!important}
body.theme-light .warn-dot{background:#FEF3C7!important;color:#B7791F!important}
body.theme-light .green{color:#16A34A!important}
body.theme-light .danger,body.theme-light .danger-text{color:#DC2626!important}
body.theme-light .login-mask,body.theme-light .modal-mask{background:rgba(248,250,252,.78)!important}
body.theme-light .login-card,body.theme-light .modal{background:#FFFFFF!important;border:1px solid #E5EAF2!important;color:#111827!important}
body.theme-light .toast{background:#FFFFFF!important;border:1px solid #E5EAF2!important;color:#111827!important}

/* improve light-mode text contrast */
body.theme-light{--text:#0F172A;--muted:#334155;color:#0F172A!important}
body.theme-light .brand strong{color:#92400E!important}
body.theme-light .nav button{color:#1F2937!important;font-weight:700!important}
body.theme-light .nav:before{color:#475569!important}
body.theme-light .nav button::before{color:#475569!important}
body.theme-light .top-search{color:#475569!important}
body.theme-light .top-search input{color:#0F172A!important;font-weight:600!important}
body.theme-light .top-search input::placeholder{color:#475569!important}
body.theme-light .market-mini{color:#1F2937!important}
body.theme-light #dashboard.page.active:after{color:#334155!important}
body.theme-light .stat-card span,
body.theme-light .panel p,
body.theme-light .timeline span,
body.theme-light .exchange span,
body.theme-light .card p,
body.theme-light .form label,
body.theme-light .detail-list span,
body.theme-light .muted{color:#334155!important}
body.theme-light .stat-card strong,
body.theme-light .panel-head h2,
body.theme-light .timeline b,
body.theme-light .card h3,
body.theme-light .detail-list b,
body.theme-light td,
body.theme-light .checks div,
body.theme-light .module-card,
body.theme-light .module-card span,
body.theme-light .module-card strong{color:#0F172A!important}
body.theme-light th{color:#334155!important;font-weight:800!important}
body.theme-light .pill{color:#1F2937!important;font-weight:700!important}
body.theme-light .toolbar input,
body.theme-light .toolbar select,
body.theme-light .form input,
body.theme-light .form select,
body.theme-light input,
body.theme-light select{color:#0F172A!important;font-weight:600!important}
body.theme-light .ghost{color:#1F2937!important;font-weight:700!important}
body.theme-light .empty{color:#334155!important}

/* screenshot fix: module overview cards were too pale in light mode */
body.theme-light .module-card{opacity:1!important;background:#FFFFFF!important;border-color:#D6DEE9!important}
body.theme-light .module-card b,
body.theme-light .module-card strong,
body.theme-light .module-card span,
body.theme-light .module-card em,
body.theme-light .module-card small{opacity:1!important}
body.theme-light .module-card b{color:#1E293B!important;font-weight:800!important}
body.theme-light .module-card strong{color:#0F172A!important;font-weight:900!important}
body.theme-light .module-card span{color:#334155!important;font-weight:700!important}
body.theme-light .module-card:hover b,
body.theme-light .module-card:hover strong,
body.theme-light .module-card:hover span{color:#111827!important}
body.theme-light .stat-card em{color:#047857!important;font-weight:800!important}
body.theme-light .panel-head .pill{color:#334155!important}

/* TradingView-style personal market cockpit */
.market-cockpit{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(360px,.9fr);gap:24px;margin-bottom:24px}.market-cockpit .panel{margin-bottom:0}.analysis-stack{display:grid;gap:16px}.kline-panel{min-height:620px}.kline-board{position:relative;height:520px;border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#071018,#05080d);border:1px solid rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(240,185,11,.05)}.kline-board:before{content:"";position:absolute;inset:0;background:linear-gradient(to right,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;opacity:.45}.candle-wrap{position:absolute;inset:42px 28px 34px;display:flex;align-items:center;gap:12px}.candle{position:relative;flex:1;height:var(--h);transform:translateY(var(--y));border-radius:4px;background:#10B981;box-shadow:0 0 18px rgba(16,185,129,.18)}.candle:before{content:"";position:absolute;left:50%;top:-28%;bottom:-28%;width:2px;transform:translateX(-50%);background:currentColor;opacity:.7}.candle.up{background:#10B981;color:#10B981}.candle.down{background:#EF4444;color:#EF4444}.price-line{position:absolute;left:0;right:0;border-top:1px dashed rgba(255,255,255,.18);z-index:2}.price-line span{position:absolute;right:12px;top:-12px;padding:3px 8px;border-radius:999px;font-size:12px;background:#0B1118;color:#EAECEF;border:1px solid rgba(255,255,255,.08)}.price-line.now{top:47%;border-color:rgba(240,185,11,.65)}.price-line.now span{color:#F0B90B}.price-line.r1{top:33%}.price-line.r2{top:22%}.price-line.s1{top:62%}.price-line.s2{top:73%}.price-line.r span{color:#F87171}.price-line.s span{color:#34D399}.analysis-card{background:linear-gradient(180deg,rgba(15,23,42,.96),rgba(8,13,23,.96))!important}.prob-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.prob{border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:18px;text-align:center;background:rgba(255,255,255,.035)}.prob span{display:block;color:#848E9C;font-size:13px}.prob b{display:block;font-size:32px;margin-top:8px}.prob.long b{color:#22C55E}.prob.short b{color:#F43F5E}.levels{display:grid;gap:8px;margin-top:16px}.levels p{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;margin:0;padding:9px 10px;border-radius:12px;background:rgba(255,255,255,.035);font-size:13px}.levels span{color:#CBD5E1}.levels b{color:#EAECEF}.levels em{font-style:normal;color:#848E9C}.levels .green{border-left:3px solid #22C55E}.levels .red{border-left:3px solid #F43F5E}.levels .yellow{border-left:3px solid #F0B90B}.indicator-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.indicator-grid div{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;background:rgba(255,255,255,.035)}.indicator-grid span{display:block;color:#848E9C;font-size:12px;margin-bottom:6px}.indicator-grid b{display:block;font-size:14px}.red{color:#F43F5E!important}.yellow{color:#F0B90B!important}.timeline.compact{gap:10px}.timeline.compact li{background:rgba(255,255,255,.035)!important;border-radius:12px!important;padding:10px 12px!important}
body.theme-light .kline-board{background:#FFFFFF!important;border-color:#E5EAF2!important}.theme-light .kline-board:before{background:linear-gradient(to right,#EEF2F7 1px,transparent 1px),linear-gradient(to bottom,#EEF2F7 1px,transparent 1px);opacity:1}.theme-light .price-line span{background:#FFFFFF;color:#111827;border-color:#E5EAF2}.theme-light .analysis-card,.theme-light .prob,.theme-light .levels p,.theme-light .indicator-grid div,.theme-light .timeline.compact li{background:#FFFFFF!important;border-color:#E5EAF2!important}.theme-light .prob span,.theme-light .indicator-grid span,.theme-light .levels em{color:#334155!important}.theme-light .levels span,.theme-light .levels b{color:#0F172A!important}
@media(max-width:1100px){.market-cockpit{grid-template-columns:1fr}.kline-panel{min-height:auto}.kline-board{height:420px}.analysis-stack{grid-template-columns:1fr}}@media(max-width:700px){.market-cockpit{gap:16px}.kline-board{height:360px}.candle-wrap{gap:6px;inset:34px 18px 28px}.indicator-grid,.prob-grid{grid-template-columns:1fr}}
.real-candle-wrap{position:absolute;inset:38px 26px 36px;display:flex;align-items:stretch;gap:7px}.real-candle{position:relative;flex:1}.real-candle:before{content:"";position:absolute;left:50%;top:var(--top);height:var(--h);width:2px;transform:translateX(-50%);background:currentColor;opacity:.8}.real-candle:after{content:"";position:absolute;left:18%;right:18%;top:var(--bt);height:var(--bh);border-radius:3px;background:currentColor;box-shadow:0 0 14px currentColor}.real-candle.up{color:#10B981}.real-candle.down{color:#EF4444}.price-line[style] span{right:10px}.theme-light .real-candle.up{color:#059669}.theme-light .real-candle.down{color:#DC2626}
.prediction-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.prediction-grid div{border:1px solid rgba(240,185,11,.18);border-radius:14px;padding:12px;background:linear-gradient(180deg,rgba(240,185,11,.08),rgba(255,255,255,.025))}.prediction-grid span{display:block;color:#848E9C;font-size:12px;margin-bottom:6px}.prediction-grid b{display:block;font-size:14px}.theme-light .prediction-grid div{background:#FFF8E1!important;border-color:#F5D66B!important}.theme-light .prediction-grid span{color:#334155!important}
/* 2026-05 market detail page */
.market-list-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.market-card{display:grid;gap:9px;text-align:left;border:1px solid rgba(77,227,255,.16);background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));border-radius:20px;padding:18px;color:var(--text)}.market-card:hover{transform:translateY(-2px);border-color:rgba(77,227,255,.42)}.market-card b{font-size:17px}.market-card strong{font-size:28px}.market-card span,.market-card em{font-style:normal;color:var(--muted);font-size:13px;line-height:1.45}.market-card .pill{justify-self:start}.market-detail-head{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-bottom:16px}.market-detail-head>div{border:1px solid rgba(77,227,255,.14);border-radius:20px;padding:18px;background:linear-gradient(180deg,rgba(77,227,255,.055),rgba(255,255,255,.02))}.market-detail-head span{display:block;color:var(--muted);font-size:13px;margin-bottom:8px}.market-detail-head strong{display:block;font-size:22px}.market-detail-head p{margin:8px 0 0}.market-detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:16px}.market-detail-grid.lower{grid-template-columns:1fr 1fr}.panel.nested{margin-bottom:0;box-shadow:none}.panel.nested h3{margin:0}.kline-board.detail{height:360px}.indicator-grid.detail{grid-template-columns:1fr}.prediction-grid.detail{grid-template-columns:1fr 1fr}.theme-light .market-card,.theme-light .market-detail-head>div{background:#fff!important;border-color:#e2e8f0!important}.theme-light .market-card strong,.theme-light .market-detail-head strong{color:#0f172a}@media(max-width:1000px){.market-detail-head,.market-detail-grid,.market-detail-grid.lower{grid-template-columns:1fr}.kline-board.detail{height:300px}}


.timeframe-switch{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 16px}.timeframe-switch button{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:var(--text);padding:10px 14px;border-radius:999px}.timeframe-switch button.active{background:linear-gradient(135deg,var(--accent),#f6cc4e);color:#0b0f14;border-color:transparent;font-weight:700}.timeframe-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.tf-card{display:grid;gap:6px;text-align:left;border:1px solid rgba(77,227,255,.16);background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));border-radius:18px;padding:14px;color:var(--text)}.tf-card b{font-size:16px}.tf-card span,.tf-card em,.tf-card small{font-style:normal;color:var(--muted);font-size:12px;line-height:1.4}.tf-card .green{color:#22c55e!important}.tf-card .red{color:#f43f5e!important}.theme-light .timeframe-switch button,.theme-light .tf-card{background:#fff!important;border-color:#e2e8f0!important}.theme-light .tf-card b{color:#0f172a}@media(max-width:1000px){.timeframe-summary{grid-template-columns:1fr}.timeframe-switch{justify-content:stretch}.timeframe-switch button{flex:1}}/* 2026-05 mobile adaptation: keep desktop unchanged, optimize phone access */
@media(max-width:768px){
  html,body{height:auto!important;min-height:100%!important;overflow:auto!important;-webkit-text-size-adjust:100%;}
  body{background:#0B0E11!important;}
  .app-shell{display:block!important;height:auto!important;min-height:100vh!important;overflow:visible!important;background:#0B0E11!important;}
  .sidebar{position:sticky!important;top:0!important;z-index:80!important;width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;border-right:0!important;border-bottom:1px solid #1F2937!important;background:rgba(11,14,17,.96)!important;backdrop-filter:blur(16px)!important;}
  .brand{height:54px!important;padding:0 14px!important;gap:8px!important;}
  .brand-icon{width:28px!important;height:28px!important;min-width:28px!important;}
  .brand-icon:after{font-size:22px!important;}
  .brand strong{font-size:17px!important;white-space:nowrap!important;}
  .nav{display:flex!important;flex-direction:row!important;gap:8px!important;padding:0 12px 12px!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x proximity!important;-webkit-overflow-scrolling:touch!important;}
  .nav::-webkit-scrollbar{display:none!important;}
  .nav:before,.nav button:nth-child(5):before{display:none!important;content:none!important;}
  .nav button{width:auto!important;min-width:max-content!important;flex:0 0 auto!important;padding:9px 12px!important;border-radius:999px!important;font-size:13px!important;gap:6px!important;scroll-snap-align:start!important;background:#181A20!important;border:1px solid #2B3139!important;}
  .nav button::before{width:16px!important;min-width:16px!important;font-size:13px!important;}
  .nav button.active{background:#2B2717!important;border-color:#F0B90B!important;color:#F0B90B!important;}
  .main{display:block!important;height:auto!important;min-height:calc(100vh - 108px)!important;overflow:visible!important;padding:0!important;background:#0B0E11!important;}
  .topbar{position:sticky!important;top:107px!important;z-index:70!important;height:auto!important;min-height:0!important;padding:10px 12px!important;border-bottom:1px solid #1F2937!important;background:rgba(11,14,17,.94)!important;backdrop-filter:blur(14px)!important;}
  .topbar>div:first-child{display:block!important;min-width:0!important;}
  .topbar .muted{display:none!important;}
  .topbar h1{display:block!important;margin:0!important;font-size:18px!important;line-height:1.2!important;color:#EAECEF!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  .top-actions{width:auto!important;margin-left:auto!important;display:flex!important;justify-content:flex-end!important;gap:8px!important;flex-wrap:nowrap!important;}
  .top-search,.market-mini,.top-actions .pill.success{display:none!important;}
  .top-actions .ghost,#themeToggle,#panicBtn{padding:8px 10px!important;font-size:12px!important;min-height:34px!important;white-space:nowrap!important;}
  #themeToggle{max-width:86px!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  #panicBtn{max-width:76px!important;}
  .page{padding:14px 12px 22px!important;overflow:visible!important;background:#0B0E11!important;}
  #dashboard.page.active:before{font-size:22px!important;margin-bottom:6px!important;}
  #dashboard.page.active:after{font-size:13px!important;margin:0 0 16px!important;line-height:1.55!important;}
  .stats-grid{grid-template-columns:1fr 1fr!important;gap:10px!important;margin-bottom:14px!important;}
  .stat-card{padding:14px!important;border-radius:14px!important;}
  .stat-card strong{font-size:21px!important;line-height:1.2!important;word-break:break-word!important;}
  .stat-card span,.stat-card em{font-size:12px!important;}
  .content-grid,.content-grid.two,.market-cockpit,.market-detail-grid,.market-detail-grid.lower{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin-bottom:12px!important;}
  .panel,.card{padding:14px!important;margin-bottom:12px!important;border-radius:14px!important;}
  .panel-head{align-items:flex-start!important;gap:10px!important;margin-bottom:12px!important;}
  .panel-head h2,.panel.nested h3{font-size:17px!important;line-height:1.25!important;}
  .panel-head p,.panel p{font-size:13px!important;line-height:1.55!important;}
  .actions{flex-wrap:wrap!important;gap:8px!important;margin-top:12px!important;}
  .primary,.ghost,.danger-fill{padding:10px 12px!important;font-size:13px!important;min-height:38px!important;}
  .table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;border-radius:14px!important;}
  table{min-width:620px!important;font-size:13px!important;}
  th,td{padding:10px 12px!important;white-space:nowrap!important;}
  .split,.stepper,.market-detail-head,.prediction-grid,.prediction-grid.detail,.indicator-grid,.indicator-grid.detail,.prob-grid,.timeframe-summary{grid-template-columns:1fr!important;gap:10px!important;}
  .form{gap:10px!important;}
  .form input,.form select,input,select{min-height:42px!important;font-size:15px!important;}
  .exchange-grid,.cards,.market-list-grid{grid-template-columns:1fr!important;gap:10px!important;}
  .market-card{padding:14px!important;border-radius:16px!important;}
  .market-card strong{font-size:24px!important;}
  .market-detail-head{margin-bottom:12px!important;}
  .market-detail-head>div{padding:14px!important;border-radius:16px!important;}
  .market-detail-head strong{font-size:20px!important;line-height:1.25!important;}
  .timeframe-switch{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin:8px 0 12px!important;}
  .timeframe-switch button{width:100%!important;padding:10px 12px!important;font-size:13px!important;text-align:center!important;}
  .tf-card{padding:12px!important;border-radius:14px!important;}
  .kline-panel{min-height:0!important;}
  .kline-board{height:300px!important;border-radius:16px!important;}
  .kline-board.detail{height:270px!important;}
  .real-candle-wrap,.candle-wrap{inset:34px 14px 28px!important;gap:4px!important;}
  .price-line span{right:6px!important;font-size:10px!important;padding:2px 6px!important;}
  .levels p{grid-template-columns:1fr auto!important;font-size:12px!important;gap:6px!important;}
  .levels p em{grid-column:1 / -1!important;}
  .indicator-grid div,.prediction-grid div{padding:10px!important;border-radius:12px!important;}
  .indicator-grid b,.prediction-grid b{font-size:13px!important;line-height:1.35!important;word-break:break-word!important;}
  .mock-chart{height:190px!important;gap:7px!important;padding-top:12px!important;}
  .toast{left:12px!important;right:12px!important;bottom:12px!important;text-align:center!important;}
  body.theme-light .sidebar,body.theme-light .topbar{background:rgba(255,255,255,.96)!important;}
  body.theme-light .topbar h1{color:#0F172A!important;}
  body.theme-light .nav button{background:#FFFFFF!important;border-color:#E5EAF2!important;color:#1F2937!important;}
  body.theme-light .nav button.active{background:#FFF7D6!important;border-color:#F0B90B!important;color:#92400E!important;}
  body.theme-light .page,body.theme-light .main,body.theme-light .app-shell{background:#F6F8FB!important;}
}
@media(max-width:420px){
  .stats-grid{grid-template-columns:1fr!important;}
  .brand strong{font-size:16px!important;}
  .top-actions .ghost,#themeToggle,#panicBtn{padding:7px 9px!important;font-size:11.5px!important;}
  .kline-board{height:260px!important;}
  .kline-board.detail{height:240px!important;}
  table{min-width:560px!important;}
}

/* 2026-05 trading ledger page */
.nav button[data-page="markets"]::before{content:"◎"}
.nav button[data-page="marketDetail"]::before{content:"⌁"}
.nav button[data-page="ledger"]::before{content:"🧾"}
.ledger-stats .stat-card strong{font-size:24px}
.ledger-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ledger-summary div{padding:15px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.04)}
.ledger-summary span{display:block;color:var(--muted);font-size:13px;margin-bottom:7px}
.ledger-summary b{font-size:20px}
.ledger-table td,.ledger-table th{vertical-align:top}
.red{color:var(--red)!important}
body.theme-light .ledger-summary div{background:#FFFFFF;border-color:#E5EAF2}
@media(max-width:768px){.ledger-summary{grid-template-columns:1fr}.ledger-table{min-width:980px!important}.ledger-stats{grid-template-columns:1fr!important}}

/* 2026-06-04 grouped navigation and split cockpit pages */
.nav{gap:14px!important;padding:14px 14px 18px!important}
.nav:before{display:none!important;content:none!important}
.nav-group{display:flex!important;flex-direction:column!important;gap:6px!important}
.nav-group-title{
  display:block!important;color:#5E6673!important;font-size:12px!important;font-weight:800!important;
  letter-spacing:.08em!important;padding:10px 12px 4px!important;
}
.nav-secondary{margin-top:auto!important;padding-top:14px!important;border-top:1px solid rgba(255,255,255,.08)!important}
.nav-secondary .nav-group-title{color:#717A88!important}
.nav-secondary button{color:#8F98A6!important;font-size:14px!important;padding-top:10px!important;padding-bottom:10px!important}
.nav button:nth-child(5):before{content:""!important;display:inline-flex!important;margin:0!important}
.nav button[data-page="dashboard"]::before{content:"▦"!important}
.nav button[data-page="bots"]::before{content:"🤖"!important}
.nav button[data-page="records"]::before{content:"📋"!important}
.nav button[data-page="ledger"]::before{content:"🧾"!important}
.nav button[data-page="strategy"]::before{content:"↗"!important}
.nav button[data-page="risk"]::before{content:"🛡"!important}
.nav button[data-page="copy"]::before{content:"⇄"!important}
.nav button[data-page="analytics"]::before{content:"📊"!important}
.nav button[data-page="overview"]::before{content:"▣"!important}
.nav button[data-page="assets"]::before{content:"◫"!important}
.nav button[data-page="notify"]::before{content:"🔔"!important}
.nav button[data-page="settings"]::before{content:"⚙"!important}
.nav button[data-page="users"]::before{content:"🔐"!important}
.nav button[data-page="billing"]::before{content:"💳"!important}
.nav button[data-page="admin"]::before{content:"🖥"!important}
.nav button[data-page="cockpit"]::before{content:"⌁"!important}
.nav button[data-page="markets"]::before{content:"◎"!important}
.nav button[data-page="marketDetail"]::before{content:"⌕"!important}
.nav button[data-page="connect"]::before{content:"↔"!important}
.quick-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;align-items:stretch!important}
.quick-actions{grid-column:1 / -1!important;margin-top:0!important}
#dashboard>.panel:first-of-type{margin-top:0!important}
#cockpit .market-cockpit{margin-bottom:0!important}
#overview .module-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important}
body.theme-light .nav-group-title{color:#94A3B8!important}
body.theme-light .nav-secondary{border-top-color:#E5EAF2!important}
@media(max-width:1100px){.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:768px){
  .nav{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;padding:0 12px 12px!important}
  .nav-group{display:flex!important;flex-direction:row!important;gap:8px!important;flex:0 0 auto!important}
  .nav-group-title{display:none!important}
  .nav-secondary{margin-top:0!important;padding-top:0!important;border-top:0!important}
  .quick-grid{grid-template-columns:1fr!important}
}

/* 2026-06-04 market detail landscape layout */
.market-detail-main{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:16px!important;
  margin-bottom:16px!important;
}
.market-kline-wide .kline-board.detail{
  width:100%!important;
  height:clamp(460px,52vh,640px)!important;
  min-height:460px!important;
}
.market-indicators-wide .indicator-grid.detail{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:12px!important;
}
.market-indicators-wide .indicator-grid.detail div{
  min-height:74px!important;
}
.market-detail-grid.lower{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:start!important;
}
@media(max-width:1000px){
  .market-kline-wide .kline-board.detail{height:380px!important;min-height:380px!important}
  .market-indicators-wide .indicator-grid.detail{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:768px){
  .market-detail-main{gap:12px!important;margin-bottom:12px!important}
  .market-kline-wide .kline-board.detail{height:270px!important;min-height:270px!important}
  .market-indicators-wide .indicator-grid.detail{grid-template-columns:1fr!important}
  .market-detail-grid.lower{grid-template-columns:1fr!important}
}
