:root{color-scheme:dark;--bg:#151016;--surface:#221820;--card:#451e30;--wine:#982f56;--pink:#f2adc4;--cream:#fff0ea;--muted:#baa9b2;--line:#4a3541;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{margin:0;min-height:100svh;color:var(--cream);background:radial-gradient(ellipse at 52% 25%,#321d2c 0%,var(--bg) 64%)}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--pink);outline-offset:4px}button:disabled{opacity:.5;cursor:default}.hidden{display:none!important}.app-shell{width:min(100%,510px);padding:0 21px;min-height:100svh;margin:auto;display:flex;flex-direction:column}.header{min-height:75px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff12}.brand{font-weight:950;letter-spacing:-.055em;color:var(--cream);text-decoration:none;font-size:20px}.brand span{color:#ee668d}.icon-button{background:transparent;border:1px solid var(--line);border-radius:11px;color:var(--cream);font-size:22px;width:42px;height:42px}main{flex:1;display:flex;flex-direction:column}.screen{flex:1}.home-screen,.end-screen{display:flex;align-items:stretch;justify-content:center;flex-direction:column;text-align:center;padding:25px 0 35px}.emblem{font-family:Georgia,serif;font-size:92px;color:#ef93ad;line-height:1;margin:12px auto 17px}.eyebrow,.act-label,.type-label,.card-bottom,.card-top,.fine-print,.game-topline,.twist-eyebrow{font-size:11px;font-weight:800;letter-spacing:.15em}.eyebrow{color:var(--pink);margin:0 0 17px}h1{font-size:clamp(35px,9.7vw,55px);line-height:.99;letter-spacing:-.075em;margin:0;font-weight:950}h1 em{font-style:normal;color:var(--pink)}.intro{font-size:15px;color:#ddcbd5;line-height:1.65;max-width:355px;margin:20px auto 28px}.button{min-height:52px;border-radius:11px;border:1px solid transparent;padding:15px 17px;color:var(--cream);font-weight:850;letter-spacing:.06em;font-size:12px;text-align:center;transition:transform .12s,filter .12s}.button:active{transform:scale(.985)}.button span{float:right;font-size:17px;line-height:14px}.primary{background:linear-gradient(110deg,#b23863,#842b4d);border-color:#c45479}.secondary{background:#271c27;border-color:#654355}.ghost{background:transparent;border-color:#624555;color:#e0bdc8}.button.large{min-height:75px;font-size:16px;text-align:left;padding:16px 20px}.button.large small{display:block;font-size:10px;color:#f8d7e2;letter-spacing:.035em;font-weight:500;margin-top:6px}.mode-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.fine-print{color:#a998a4;font-size:10px;letter-spacing:.045em;font-weight:550;line-height:1.5;margin-top:23px}.footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #ffffff12;color:#877783;padding:18px 0 25px;font-size:8px;letter-spacing:.045em;font-weight:700}.game-screen{padding:24px 0 22px}.game-topline{display:flex;justify-content:space-between;color:#d3bec9}.progress-track{height:4px;background:#493240;border-radius:4px;margin:11px 0 22px;overflow:hidden}.progress-track>div{height:100%;width:5%;background:#ee8daf;transition:width .2s}.act-label{text-align:center;color:#edabc0;margin-bottom:12px}.question-card{min-height:335px;border-radius:16px;border:1px solid #80435b;background:radial-gradient(ellipse at top right,#70304b 0%,#401b2c 68%);padding:23px 23px 17px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 15px 30px #0003}.card-top{display:flex;justify-content:space-between;align-items:center;color:#f7a9c1}.card-symbol{font-family:Georgia,serif;font-size:32px;line-height:20px}.question-center{flex:1;min-height:180px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:18px 0;gap:16px}.type-label{color:#e8abbf;border:1px solid #a36a81;padding:6px 9px;border-radius:100px}.question-center h2{font-size:clamp(24px,6.4vw,35px);line-height:1.14;letter-spacing:-.045em;text-align:center;margin:0;font-weight:850;overflow-wrap:anywhere}.twist{background:#763650;border-radius:11px;padding:13px 15px;margin-bottom:20px;text-align:center}.twist-eyebrow{color:#ffbfd3}.twist p{margin:8px 0 0;font-size:15px;line-height:1.45}.card-bottom{text-align:center;color:#bd8c9e;font-size:9px}.action-stack{margin-top:15px;display:flex;flex-direction:column;gap:12px}.timer-row{display:flex;justify-content:space-between;align-items:center;min-height:35px;gap:10px}.timer-toggle{display:flex;align-items:center;gap:8px;font-size:10px;color:#d7c5cd;font-weight:800;letter-spacing:.03em;cursor:pointer}.timer-toggle input{position:absolute;opacity:0;width:1px;height:1px}.timer-toggle input:focus-visible+.toggle-track{outline:3px solid var(--pink);outline-offset:3px}.toggle-track{width:32px;height:19px;border-radius:20px;background:#54414d;position:relative;flex:none}.toggle-track:after{content:"";position:absolute;top:3px;left:3px;width:13px;height:13px;background:#f1dae3;border-radius:50%;transition:transform .2s}.timer-toggle input:checked+.toggle-track{background:#a5365c}.timer-toggle input:checked+.toggle-track:after{transform:translateX(13px)}.timer-tools{display:flex;align-items:center;gap:6px}#timer-display{font-variant-numeric:tabular-nums;font-size:15px;color:var(--pink);font-weight:800}.small-button{border:1px solid #604353;background:#291f2a;color:#e6cfd9;padding:7px 8px;border-radius:7px;font-size:9px;font-weight:750}.game-actions{display:grid;grid-template-columns:1fr 1.45fr;gap:9px}.game-footnote{text-align:center;margin:2px 0}.end-screen .button+.button{margin-top:10px}@media(max-width:365px){.app-shell{padding:0 14px}.question-card{padding:19px 16px;min-height:310px}.question-center h2{font-size:24px}.timer-row{flex-wrap:wrap}.game-actions .button{font-size:10px;padding:12px 8px}.footer span:last-child{display:none}}@media(min-width:800px){.app-shell{width:510px;min-height:min(100svh,940px);border-left:1px solid #ffffff0c;border-right:1px solid #ffffff0c}body{background:radial-gradient(ellipse at center,#301e2a,#100c12)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
