:root{
  --bg:#0a0a0c; --fg:#f5f5f5; --muted:rgba(245,245,245,.66);
  --crimson:#ed3140; --gold:#ffc400; --cyan:#6fe3ff; --card:rgba(14,14,18,.86); --border:rgba(255,255,255,.1);
}
@font-face{font-family:'afolkalips';src:url('../assets/afolkalips.woff2') format('woff2');font-display:swap;}
*{box-sizing:border-box;margin:0;padding:0;}
html,body{height:100%;background:var(--bg);color:var(--fg);font-family:Inter,system-ui,sans-serif;overflow:hidden;}
#c{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab;}
[hidden]{display:none !important;}
button{font:inherit;color:inherit;cursor:pointer;}

/* ── Start ── */
#start,#credits{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;
  background:radial-gradient(120% 90% at 50% 0%,rgba(237,49,64,.16),rgba(10,10,12,.82) 55%),rgba(10,10,12,.55);}
.panel{width:min(560px,100%);background:var(--card);border:1px solid var(--border);border-radius:18px;padding:28px 26px 22px;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}
.lockup{display:flex;align-items:center;gap:12px;}
.lockup img{height:44px;width:auto;}
.lockup .wm{font-family:afolkalips,'Space Grotesk',monospace;font-size:19px;letter-spacing:.07em;line-height:1;}
.lockup .wm span{display:block;font-family:Inter,sans-serif;font-size:8px;font-weight:500;letter-spacing:.28em;color:var(--muted);margin-top:5px;}
.eyebrow{display:flex;align-items:center;gap:10px;margin-top:22px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);}
.tick{display:inline-block;width:22px;height:2px;background:var(--crimson);border-radius:2px;}
h1{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(26px,6vw,36px);line-height:1.1;letter-spacing:-.01em;margin-top:10px;}
.lead{margin-top:10px;font-size:15px;line-height:1.6;color:rgba(245,245,245,.84);}
.ar{margin-top:8px;font-family:Cairo,sans-serif;font-weight:700;font-size:17px;color:rgba(245,245,245,.8);}
.loading{margin-top:22px;display:flex;align-items:center;gap:12px;font-size:13px;color:var(--muted);}
.track{flex:1;height:6px;border-radius:6px;background:rgba(255,255,255,.08);overflow:hidden;}
#bar{height:100%;width:0;background:linear-gradient(90deg,var(--crimson),var(--gold));transition:width .2s;}
.buttons{margin-top:22px;display:flex;gap:10px;flex-wrap:wrap;}
.buttons button{flex:1 1 200px;padding:14px 18px;border-radius:12px;border:1px solid var(--border);background:rgba(255,255,255,.06);font-weight:600;font-size:15px;}
.buttons button.primary{background:var(--crimson);border-color:var(--crimson);color:#131316;}
.buttons button:hover{filter:brightness(1.1);}
.note{margin-top:10px;font-size:12.5px;line-height:1.5;color:var(--muted);}
.foot{margin-top:20px;padding-top:14px;border-top:1px solid var(--border);font-size:11.5px;color:var(--muted);}
button.link{background:none;border:0;padding:0;color:var(--gold);text-decoration:underline;font-size:inherit;}

/* ── While exploring ── */
#hint{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);max-width:calc(100% - 32px);
  padding:11px 16px;border-radius:12px;background:var(--card);border:1px solid var(--border);font-size:13px;line-height:1.45;text-align:center;pointer-events:none;}
#hint b{color:var(--cyan);font-weight:600;}
@media (hover:none){#hint .keys{display:none;}}

/* ── Credits ── */
#credits h2{font-family:'Space Grotesk',sans-serif;font-size:22px;}
#credits-list{margin:12px 0 18px 18px;font-size:12.5px;line-height:1.6;color:rgba(245,245,245,.84);max-height:48vh;overflow:auto;}
#credits-list a{color:var(--gold);}
#close-credits{padding:10px 18px;border-radius:10px;border:1px solid var(--border);background:rgba(255,255,255,.06);font-weight:600;}
