/* cartercarder.com — navy-and-gold product system */
:root, :root[data-theme="dark"] {
  --page:#06101f; --rail:#071220; --surface-1:#0a1728; --surface-2:#0d1b2e;
  --surface-3:#122238; --ink-1:#f7f8fb; --ink-2:#b8c1d0; --ink-muted:#748198;
  --line:rgba(144,164,194,.20); --line-soft:rgba(144,164,194,.10);
  --brand:#f5b800; --brand-strong:#ffd34d; --brand-ink:#171005;
  --brand-tint:rgba(245,184,0,.15); --brand-tint-2:rgba(245,184,0,.07);
  --good:#9bd63b; --good-tint:rgba(155,214,59,.14);
  --warn:#f3a83b; --warn-tint:rgba(243,168,59,.14);
  --danger:#ff6b73; --danger-tint:rgba(255,107,115,.13);
  --info:#7fb5ff; --info-tint:rgba(127,181,255,.14);
  --bar-track:#16243a; --neutral-bar:#29384e;
  --shadow-1:0 1px 1px rgba(0,0,0,.22),0 14px 35px rgba(0,0,0,.08);
  --shadow-2:0 24px 70px rgba(0,0,0,.35); --focus:0 0 0 3px rgba(245,184,0,.30);
}
:root[data-theme="light"] {
  --page:#f5f2e9; --rail:#071220; --surface-1:#fffdf7; --surface-2:#f7f2e5;
  --surface-3:#eee6d3; --ink-1:#101b2c; --ink-2:#4c596d; --ink-muted:#7a8493;
  --line:rgba(16,27,44,.16); --line-soft:rgba(16,27,44,.08);
  --brand:#d89f00; --brand-strong:#b47e00; --brand-ink:#151005;
  --brand-tint:rgba(216,159,0,.13); --brand-tint-2:rgba(216,159,0,.06);
  --good:#588f16; --good-tint:rgba(88,143,22,.11);
  --focus:0 0 0 3px rgba(216,159,0,.22);
}
body {
  font-family:"Manrope","Kumbh Sans",system-ui,sans-serif;
  background:radial-gradient(circle at 72% -18%,rgba(40,85,143,.16),transparent 36rem),
             linear-gradient(145deg,color-mix(in srgb,var(--page) 94%,#0f2d52),var(--page) 48%);
}
.shell { position:relative; isolation:isolate; }
.shell::before {
  content:""; position:fixed; inset:7px; z-index:-1; pointer-events:none;
  border:1px solid rgba(245,184,0,.14); border-radius:20px;
}
.rail {
  width:222px; padding:18px 16px; border-right:1px solid rgba(144,164,194,.18);
  background:radial-gradient(circle at 50% 8%,rgba(245,184,0,.07),transparent 18rem),
             linear-gradient(180deg,#06111f,#071525 72%,#081321);
}
.brand {
  flex-direction:column; gap:2px; padding:2px 4px 20px; margin-bottom:12px;
  border-bottom:1px solid rgba(144,164,194,.15); text-align:center;
}
.brand-logo { width:100px; height:82px; object-fit:contain; filter:drop-shadow(0 0 18px rgba(245,184,0,.18)); }
.brand-name { display:block; font-size:20px; line-height:1; letter-spacing:-.055em; }
.brand-name strong { color:#f5b800; }
.brand-name span { color:#8fa7ca; }
.brand-domain {
  display:block; margin-top:6px; color:rgba(216,226,240,.46); font-size:9px;
  font-weight:600; letter-spacing:.14em; text-transform:uppercase;
}
.nav-label {
  padding:15px 12px 7px; color:rgba(218,227,240,.42); font-size:9px;
  font-weight:700; letter-spacing:.14em; text-transform:uppercase;
}
.railnav { gap:2px; }
.railnav button {
  position:relative; min-height:40px; padding:9px 11px; color:rgba(231,236,244,.68);
  border:1px solid transparent; border-radius:9px; font-size:12.5px;
}
.railnav button:hover { color:#fff; background:rgba(255,255,255,.045); border-color:rgba(255,255,255,.06); }
.railnav button.active, :root[data-theme="dark"] .railnav button.active {
  color:#fff5d0; background:linear-gradient(90deg,rgba(245,184,0,.22),rgba(245,184,0,.10));
  border-color:rgba(245,184,0,.36); box-shadow:inset 3px 0 #f5b800,0 8px 24px rgba(0,0,0,.14);
}
.railnav button.active svg { color:#f5b800; }
.railfoot { padding-top:14px; border-top:1px solid rgba(144,164,194,.14); }
.themebtn,.rail-signout {
  color:rgba(237,241,247,.72); border-color:rgba(144,164,194,.22);
  background:rgba(255,255,255,.025);
}
.main { margin-left:222px; padding:30px 24px 46px 28px; }
.main > * { max-width:1480px; }
.topbar { min-height:64px; margin-bottom:18px; padding:0 2px; }
.topbar h1 { font-size:clamp(24px,2vw,31px); font-weight:750; letter-spacing:-.045em; }
.topbar .date { margin-top:5px; color:var(--ink-2); font-size:12px; }
.globalsearch input {
  width:310px; padding:11px 40px 11px 15px; border-color:rgba(144,164,194,.24);
  border-radius:9px; background:color-mix(in srgb,var(--surface-1) 78%,transparent);
  box-shadow:inset 0 1px rgba(255,255,255,.02);
}
.tiles { grid-template-columns:repeat(auto-fit,minmax(205px,1fr)); gap:11px; margin-bottom:20px; }
.tile {
  min-height:126px; padding:16px; border-color:rgba(144,164,194,.20); border-radius:13px;
  background:linear-gradient(145deg,rgba(255,255,255,.018),transparent 55%),var(--surface-1);
}
.tile:first-child {
  background:radial-gradient(circle at 90% 110%,rgba(245,184,0,.12),transparent 50%),var(--surface-1);
}
.tile .ico {
  width:36px; height:36px; color:var(--brand); background:rgba(245,184,0,.09);
  border:1px solid rgba(245,184,0,.08); border-radius:8px;
}
.tile .label { color:var(--ink-2); font-size:10px; font-weight:600; letter-spacing:.045em; }
.tile .value { margin-top:2px; font-size:26px; font-weight:720; }
.tile .hint { max-width:220px; color:var(--ink-2); font-size:11.5px; line-height:1.45; }
.viewtitle { margin:2px 0 11px; font-size:17px; font-weight:700; }
.viewtitle small { display:block; margin:4px 0 0; max-width:850px; line-height:1.55; }
.controls { padding:9px 0 13px; margin-bottom:0; }
.controls input,.controls select,button.chip {
  border-color:rgba(144,164,194,.23); border-radius:8px;
  background-color:color-mix(in srgb,var(--surface-1) 84%,transparent);
}
button.chip.on { color:var(--brand-ink); box-shadow:0 5px 18px rgba(245,184,0,.10); }
.card {
  border-color:rgba(144,164,194,.20); border-radius:13px;
  background:color-mix(in srgb,var(--surface-1) 94%,transparent);
  box-shadow:0 22px 60px rgba(0,0,0,.12);
}
thead th {
  padding:13px 14px; color:#8e9bb0;
  background:color-mix(in srgb,var(--surface-2) 94%,#050c16);
  border-color:rgba(144,164,194,.16); font-size:10.5px;
}
td { padding:14px; border-color:rgba(144,164,194,.08); }
tbody tr:hover td { background:rgba(245,184,0,.035); }
th.sorted,a.cardlink:hover,.lookups a.ebay { color:var(--brand); }
.scorebar .bar i { box-shadow:0 0 12px rgba(245,184,0,.2); }
.notice { padding:15px 17px; background:rgba(41,90,147,.10); border-color:rgba(127,181,255,.20); }
.stalebanner { border-radius:10px; box-shadow:inset 3px 0 var(--warn); }
footer { padding:6px 3px 0; color:color-mix(in srgb,var(--ink-muted) 86%,transparent); }
.auth-gate {
  overflow:hidden;
  background:radial-gradient(circle at 50% 18%,rgba(245,184,0,.16),transparent 25rem),
             radial-gradient(circle at 85% 85%,rgba(56,119,198,.16),transparent 30rem),#06101f;
}
.auth-card {
  position:relative; width:min(100%,440px); padding:38px; overflow:hidden;
  border-color:rgba(245,184,0,.22); border-radius:20px;
  background:linear-gradient(145deg,rgba(13,29,49,.97),rgba(7,19,34,.97));
  box-shadow:0 30px 100px rgba(0,0,0,.48);
}
.auth-card::before {
  content:""; position:absolute; width:210px; height:210px; top:-135px; right:-90px;
  border-radius:50%; background:rgba(245,184,0,.12); filter:blur(8px);
}
.auth-brand { position:relative; flex-direction:column; gap:0; margin-bottom:26px; text-align:center; }
.auth-logo { width:145px; height:108px; object-fit:contain; filter:drop-shadow(0 0 24px rgba(245,184,0,.16)); }
.auth-card h1 { text-align:center; color:#fff; }
.auth-card > p { text-align:center; color:#aeb9ca; }
.auth-form input { border-color:rgba(144,164,194,.24); }
.auth-form input:focus { border-color:var(--brand); box-shadow:var(--focus); }
.auth-form button { box-shadow:0 10px 28px rgba(245,184,0,.16); }
@media (max-width:900px) {
  .rail { width:auto; border-right:0; border-bottom:1px solid rgba(144,164,194,.18); }
  .brand {
    flex-direction:row; justify-content:flex-start; gap:8px; padding:0 2px 11px;
    margin:0; border:0; text-align:left;
  }
  .brand-logo { width:52px; height:42px; }
  .brand-domain,.nav-label { display:none; }
  .brand-name { font-size:18px; }
  .main { margin-left:0; }
}
@media (max-width:720px) {
  .shell::before { display:none; }
  .rail { padding:9px 11px 8px; }
  .main { padding:16px 12px 90px; }
  .topbar { min-height:0; }
  .topbar h1 { font-size:23px; }
  .tiles { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tile { min-height:116px; }
  .auth-card { padding:30px 23px; }
}
