body{margin:0;background:#050912;color:#eef4ff;font-family:Inter,system-ui,sans-serif}
.shell{width:min(980px,calc(100% - 2rem));margin:1rem auto;display:grid;gap:.8rem}
.panel{border:1px solid rgba(140,170,220,.35);background:#0f1629;border-radius:14px;padding:.9rem}
.kicker{margin:0;color:#66e2ff;font-size:12px;letter-spacing:.12em}
h1{margin:.35rem 0;font-size:clamp(24px,4.8vw,42px)}
.subtitle{margin:0;color:#9fb3d8;line-height:1.55}
.meters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;margin-top:.55rem}
.meter{border:1px solid rgba(140,170,220,.35);background:#121d34;border-radius:10px;padding:.58rem}
.meter .label{font-size:.74rem;color:#9fb3d8}
.meter .value{font-size:1.2rem;font-weight:700;margin-top:.22rem}
.scene-text{line-height:1.6;color:#dbe7ff}
.choices{display:grid;gap:.5rem;margin-top:.7rem}
.choice{border:1px solid rgba(140,170,220,.35);background:#121d34;color:#eaf3ff;border-radius:10px;padding:.58rem .7rem;text-align:left;cursor:pointer}
.choice:hover{border-color:#66e2ff}
.hint{margin:.45rem 0 0;color:#b9cae8;line-height:1.5;font-size:.9rem}
.ending-actions{margin-top:.55rem;display:flex;gap:.5rem;flex-wrap:wrap}
.twist{border:1px solid rgba(255,151,122,.45);background:#3a1d1d;color:#ffcfbf;border-radius:999px;padding:.38rem .72rem;cursor:pointer}
.replay{border:1px solid rgba(102,226,255,.45);background:#142636;color:#c9f4ff;border-radius:999px;padding:.38rem .72rem;cursor:pointer}
@media(max-width:840px){.meters{grid-template-columns:repeat(2,minmax(0,1fr))}}
