/* ═══════════════════════════════════════════════════════════════
   mac.css - the "mac" look: soft panels, the welcome gradient, and the
   dark mode. source: Security Van, public/mac.css + shell.css (the colour
   tokens and the welcome card), trimmed and renamed, 28 Sep 2026.
   Everything here applies only when body[data-theme="mac"].
   ═══════════════════════════════════════════════════════════════ */
body[data-theme="mac"]{
  --bg:#f4f5f7; --panel:#ffffff; --panel2:#fafbfc; --line:#e1e5eb; --raise:#ffffff;
  --ink:#16181d; --dim:#4f5766; --dimmer:#7d8594;
  --accent:#1f5fbf; --accent2:#174a96; --accent-ink:#ffffff;
  --good:#0f7b3e; --warn:#8a6100; --bad:#c42b1c;
  --shadow:0 10px 30px rgba(20,28,45,.10); --bevel:0 1px 0 rgba(255,255,255,.6) inset;
  --r:12px; --r-sm:8px; --r-lg:18px;
}
body[data-theme="mac"][data-mode="dark"]{
  --bg:#0d1117; --panel:#141b24; --panel2:#1a2330; --line:#243040; --raise:#1d2836;
  --ink:#e6edf5; --dim:#8ba0b8; --dimmer:#5d7288;
  --accent:#39d0d8; --accent2:#5fdce2; --accent-ink:#06222a;
  --good:#3fb950; --warn:#e3b341; --bad:#f0666b;
  --shadow:0 14px 40px rgba(0,0,0,.45); --bevel:none;
  color-scheme:dark;
}

/* ── welcome ── */
.welcome{position:fixed;inset:0;z-index:200;display:grid;place-items:center}
.welcome[hidden]{display:none}
.welcome-bg{position:absolute;inset:0;
  background:
    radial-gradient(1200px 700px at 22% 18%,#5b7cff55,transparent 60%),
    radial-gradient(1000px 800px at 82% 78%,#ff7a7a55,transparent 60%),
    radial-gradient(900px 600px at 60% 40%,#39d0d844,transparent 60%),
    linear-gradient(150deg,#1d2340,#101528 55%,#0b0f1c);
  filter:saturate(1.15)}
.welcome-card{position:relative;width:min(420px,92vw);padding:34px 30px 26px;text-align:center;
  background:rgba(255,255,255,.10);backdrop-filter:blur(34px) saturate(180%);
  border:1px solid rgba(255,255,255,.22);border-radius:22px;
  box-shadow:0 30px 70px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.35);color:#fff}
.w-mark{width:74px;height:74px;border-radius:20px;margin:0 auto 14px;display:grid;place-items:center;
  font:800 36px/1 var(--sans);background:linear-gradient(160deg,#ff5a5a,#e02020 55%,#a30000);
  box-shadow:0 10px 26px rgba(160,20,20,.5),inset 0 2px 0 rgba(255,255,255,.4)}
.w-title{font-size:22px;font-weight:700;letter-spacing:2px;margin:0 0 4px}
.w-sub{margin:0 0 18px;font-size:14px;color:rgba(255,255,255,.72)}
.w-in{display:block;width:100%;box-sizing:border-box;margin:8px 0;text-align:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.26);
  border-radius:999px;padding:11px 14px;color:#fff;font-size:17px}
.w-in::placeholder{color:rgba(255,255,255,.55)}
.w-in:focus{outline:none;border-color:#fff;background:rgba(255,255,255,.22)}
.w-btn{margin-top:10px;width:100%;padding:12px;border:0;border-radius:999px;background:#fff;color:#1a1f33;font:600 15px var(--sans);cursor:pointer}
.w-btn:hover{background:#eef2ff}
.w-err{min-height:20px;margin:10px 0 0;font-size:13px;color:#ffb4b4}
.w-hint{margin:14px 0 0;font-size:12px;color:rgba(255,255,255,.55);line-height:1.5}
.w-hint code{color:#fff}
