:root{--bg:#121114;--surface:#1b191e;--surface-2:#27232b;--text:#fbf8fa;--muted:#aaa2aa;--line:#3a3540;--accent:#ed5878;--accent-2:#f28b9e;--gold:#e5b65a;--danger:#c14d69;--radius:22px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 70% -20%,#32212d 0,transparent 38%),var(--bg);color:var(--text);font:16px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100dvh}button,input,select{font:inherit}button{min-height:50px;border:0;border-radius:14px;padding:12px 16px;background:var(--surface-2);color:var(--text);font-weight:750;cursor:pointer;transition:transform .16s ease,background .16s ease,opacity .16s ease}button:active{transform:scale(.98)}button:disabled{cursor:not-allowed;opacity:.38}button.primary{background:var(--accent);color:#210c13}button.gold{background:var(--gold);color:#261a03}button.danger{background:var(--danger)}button.ghost{background:transparent;color:var(--muted);min-height:36px;padding:6px 9px;font-size:.82rem}.shell{max-width:680px;margin:auto;padding:max(18px,env(safe-area-inset-top)) 18px max(28px,env(safe-area-inset-bottom));min-height:100dvh}.brand{font-size:.76rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);margin:12px 0}.library-bar{margin-bottom:0}.hero{padding:8vh 0 20px}.library-hero{padding:4vh 0 18px}.hero h1{font-size:clamp(3.4rem,14vw,5.5rem);line-height:.88;letter-spacing:-.07em;margin:0}.hero p{color:var(--muted);font-size:1.1rem;max-width:32rem}.privacy{font-size:.85rem;color:var(--muted);margin-top:28px}.panel,.card{background:color-mix(in srgb,var(--surface) 94%,black);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 18px 60px rgba(0,0,0,.18)}.library-grid{display:grid;gap:12px}.library-card{min-height:220px;padding:22px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;align-items:flex-start}.library-card h2{font-size:2rem;letter-spacing:-.05em;margin:4px 0}.library-card p{color:var(--muted);margin:0 0 16px}.library-card button{margin-top:auto}.library-card.wildcard{background:linear-gradient(145deg,#2e1e31,#1b191e 65%);border-color:#70405e}.library-card.heatwave{background:linear-gradient(145deg,#38251d,#1b191e 65%);border-color:#72513d}.library-card.locked{opacity:.62;background:#17161a}.library-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}.library-meta span{border:1px solid var(--line);border-radius:99px;padding:5px 8px;font-size:.78rem;color:var(--muted)}.step-title{font-size:clamp(1.85rem,7vw,2.7rem);letter-spacing:-.045em;margin:0 0 5px}.subtle{color:var(--muted);margin:0 0 20px}.wizard-progress{display:flex;gap:5px;margin:16px 0 26px}.wizard-progress span{height:4px;flex:1;border-radius:8px;background:#353039}.wizard-progress span.active{background:var(--accent)}.stack{display:grid;gap:10px}.row{display:flex;gap:10px;align-items:center}.row>*{min-width:0}.grow{flex:1}.player-row input,.field input,.field select{width:100%;border:1px solid var(--line);border-radius:13px;background:#121014;color:var(--text);padding:14px;min-height:50px}.icon-button{width:50px;padding:0;font-size:1.25rem}.actions{display:grid;gap:10px;margin-top:20px}.actions.two{grid-template-columns:1fr 1fr}.help{font-size:.84rem;color:var(--muted)}.compat-person{padding:16px 0;border-bottom:1px solid var(--line)}.compat-person:last-child{border:0}.compat-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.choice{position:relative}.choice input{position:absolute;opacity:0}.choice span{display:block;padding:9px 12px;border-radius:99px;background:#28242c;color:var(--muted);border:1px solid transparent}.choice input:checked+span{background:#402835;border-color:#9e4d68;color:#fff}.clothing-grid{display:flex;flex-wrap:wrap;gap:8px}.clothing-grid .choice span{font-size:.9rem}.custom-add{display:flex;gap:8px;margin-top:10px}.custom-add input{min-width:0;flex:1}.field{display:grid;gap:6px;margin-bottom:14px}.field label{font-size:.85rem;color:var(--muted)}.preview-grid{display:grid;gap:10px}.preview-card{padding:14px;border-radius:16px;background:var(--surface-2);font-size:.94rem}.preview-card b{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent-2);margin-bottom:6px}.modal{position:fixed;inset:0;z-index:5;overflow:auto;background:rgba(7,6,8,.82);padding:18px;backdrop-filter:blur(10px)}.modal .panel{max-width:680px;margin:6vh auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:4px 0 16px}.round{color:var(--accent-2);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.13em}.progress{color:var(--muted);font-size:.86rem}.game-card{min-height:min(58dvh,520px);display:flex;flex-direction:column;justify-content:center;text-align:center;animation:enter .28s ease}.event{color:var(--gold);font-size:.77rem;font-weight:850;text-transform:uppercase;letter-spacing:.14em}.card-title{font-size:clamp(1.35rem,5vw,1.9rem);margin:8px 0}.prompt{font-size:clamp(1.38rem,6vw,2.05rem);line-height:1.22;letter-spacing:-.035em;margin:8px 0}.card-foot{color:var(--muted);font-size:.88rem;margin-top:20px}.pills{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin:18px 0}.pill{border:1px solid var(--line);color:var(--muted);font-size:.82rem;border-radius:99px;padding:6px 9px}.game-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.round-end{text-align:center;padding-top:10vh}.round-end h1{font-size:clamp(2.3rem,9vw,4rem);letter-spacing:-.06em;margin:.2em 0}.chain-scores{display:grid;gap:8px;margin:18px 0}.score{padding:11px;border:1px solid var(--line);border-radius:13px;color:var(--muted)}.install{font-size:.86rem}.notice{background:#2a2026;color:#e8c9d1;border-radius:14px;padding:12px;font-size:.9rem;margin:14px 0}@keyframes enter{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}@media(min-width:650px){.library-grid{grid-template-columns:1fr 1fr}.library-card.locked{grid-column:1/-1;min-height:130px}.actions{grid-template-columns:1fr 1fr}.actions .primary{grid-column:2}.actions .full{grid-column:1/-1}.game-actions{grid-template-columns:repeat(4,1fr)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
