:root{--ink:#f7f0df;--muted:#b7aec1;--paper:#211829;--panel:#2c2036;--line:#4a3b56;--gold:#f2bd63;--red:#df6c69;--green:#82c8a0}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 70% -10%,#49335c 0,transparent 45%),#130f1d;color:var(--ink);font:16px/1.5 ui-rounded,"PingFang SC","Microsoft YaHei",sans-serif;min-height:100vh}.shell{width:min(740px,100%);margin:auto;padding:24px 18px 44px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:42px}.brand{color:var(--ink);text-decoration:none;font-size:20px;font-weight:800;letter-spacing:1px}.brand span{color:var(--gold);font-size:30px;vertical-align:-2px}.tag,.eyebrow{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--gold);font-weight:700}.screen{animation:in .25s ease}.hidden{display:none!important}.hero{padding-top:5vh}h1{font-size:clamp(38px,9vw,64px);line-height:1.08;letter-spacing:-2px;margin:8px 0 16px}h2{font-size:clamp(27px,6vw,38px);line-height:1.18;margin:6px 0 10px}.intro{color:var(--muted);font-size:17px;max-width:570px;margin:0 0 31px}.mode-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.mode-card{appearance:none;text-align:left;color:var(--ink);background:linear-gradient(145deg,#30233b,#221a2d);border:1px solid var(--line);border-radius:18px;padding:23px;cursor:pointer;transition:.18s}.mode-card:hover{border-color:var(--gold);transform:translateY(-3px)}.moon{font-size:32px;color:var(--gold);display:block;margin-bottom:18px}.mode-card strong{font-size:21px;display:block}.mode-card small{color:var(--muted);display:block;min-height:48px;margin:6px 0 14px}.mode-card i{color:var(--gold);font-style:normal;font-size:14px}.hint{font-size:13px;color:#867d91;margin:22px 0}.back,.ghost{border:0;background:none;color:var(--muted);font:inherit;padding:0;cursor:pointer}.back{margin-bottom:18px}.names{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:26px 0}.names input{width:100%;padding:14px;border-radius:11px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font:inherit;outline:none}.names input:focus{border-color:var(--gold)}.setup-foot{display:flex;justify-content:space-between;align-items:center;gap:20px}.role-summary{color:var(--muted);font-size:13px}.primary{border:0;background:var(--gold);color:#24150c;font-weight:800;font:inherit;padding:14px 21px;border-radius:12px;cursor:pointer;box-shadow:0 7px 22px #0003}.primary:hover{filter:brightness(1.08)}.centered{text-align:center;max-width:520px;margin:5vh auto}.progress{height:4px;background:#362942;border-radius:5px;margin:20px 0}.progress:before{content:"";display:block;height:100%;width:var(--p,0%);background:var(--gold);border-radius:5px;transition:.3s}.pass{color:var(--muted)}.role-card{width:min(100%,360px);height:160px;margin:24px auto;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;border:1px solid var(--gold);border-radius:18px;background:linear-gradient(135deg,#3b2944,#241a2d);color:var(--ink);touch-action:none;user-select:none}.role-card span{font-size:34px}.role-card small{color:var(--muted)}.role-face{padding:20px;background:var(--panel);border:1px solid var(--line);border-radius:16px;margin:20px auto}.role-face .icon{font-size:38px}.role-face h3{font-size:28px;margin:5px}.role-face p{color:var(--muted);margin:0}.game-top{display:flex;justify-content:space-between;align-items:start}.guide{background:linear-gradient(110deg,#34253e,#241b30);border-left:3px solid var(--gold);padding:17px 18px;border-radius:0 13px 13px 0;margin:20px 0;color:#e5dce9}.guide b{color:var(--gold)}.action-area{min-height:85px;margin:16px 0}.choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px}.choice{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:12px;cursor:pointer;font:inherit}.choice:hover,.choice.selected{border-color:var(--gold);color:var(--gold)}.action-note{color:var(--muted);font-size:14px}.table{margin-top:30px}.table h3{font-size:14px;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted)}.players{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px}.player{padding:12px;border:1px solid var(--line);background:var(--paper);border-radius:10px;position:relative}.player.dead{opacity:.45;text-decoration:line-through}.player .status{display:block;font-size:12px;color:var(--muted);margin-top:2px}.player .badge{color:var(--red);font-size:12px}.rules{margin-top:27px;color:var(--muted);font-size:13px}.rules summary{cursor:pointer;color:var(--muted)}.winner-icon{font-size:76px;color:var(--gold)}footer{text-align:center;color:#70677c;font-size:12px;padding:0 15px 25px}@keyframes in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:480px){.mode-grid,.names{grid-template-columns:1fr}.mode-card small{min-height:0}.setup-foot{align-items:stretch;flex-direction:column}.primary{width:100%}}
