/* OTTO Play — ink, paper, and a little good company. */
:root{--paper:#faf7f0;--ink:#292724;--muted:#716c62;--line:#ddd7cc;--red:#b83c30;--blue:#315264;--olive:#56613a;--charcoal:#252b2a;--header-h:78px;color-scheme:light;font-family:ui-rounded,"Arial Rounded MT Bold",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px}
*{box-sizing:border-box}html{background:var(--paper);-webkit-text-size-adjust:100%;scrollbar-gutter:stable}body{margin:0;color:var(--ink);background:var(--paper)}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer;color:inherit;touch-action:manipulation}a{color:inherit;text-decoration:none}button,a,input,summary{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--red)}h1,h2,p{margin:0}button:disabled{cursor:default;opacity:.45}button svg,a svg{width:20px;height:20px;flex-shrink:0}svg{display:block}img{max-width:100%}button{border:0;background:none}bdi{overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loading{min-height:100svh;display:grid;align-content:center;justify-items:center;gap:22px}.loading img{width:70px;mix-blend-mode:multiply}.loading p{display:flex;gap:10px;font-size:14px}
.play-header{background:var(--paper);border-bottom:1px solid var(--line);padding:env(safe-area-inset-top) max(24px,env(safe-area-inset-right)) 0 max(24px,env(safe-area-inset-left));position:relative;z-index:5}.header-inner{height:var(--header-h);max-width:1160px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:16px}.play-brand{background:var(--paper);isolation:isolate;display:flex;align-items:center;gap:12px;direction:ltr}.play-brand img{width:43px;height:auto;mix-blend-mode:multiply}.play-brand>span{font-family:Georgia,serif;font-size:37px;font-style:italic;letter-spacing:-2px;line-height:1}.brand-dot{color:var(--red)}.header-right{display:flex;align-items:center;gap:28px}.menu-link{font-size:13px;display:flex;align-items:center;gap:9px;min-height:44px}.menu-link svg{width:15px}.language-toggle{display:flex;align-items:center;gap:7px;font-size:12px;min-height:44px;padding:6px 0;white-space:nowrap;color:var(--muted)}.language-toggle .selected{font-weight:750;color:var(--ink);border-bottom:1px solid currentColor;padding-block:4px}.lang-divider{opacity:.5}.icon-button{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;flex-shrink:0}.icon-button svg{width:19px;height:19px}.in-game .header-inner{max-width:560px;gap:12px}.header-game{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:600}.game-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--red)}.game-dot.explain{background:var(--blue)}.game-dot.three{background:var(--olive)}.game-dot.impostor{background:var(--charcoal)}.in-game .header-right{gap:0}
.hub{max-width:1208px;padding:45px 24px 30px;margin:auto}.hub-intro{display:flex;justify-content:space-between;align-items:center;margin-bottom:38px;gap:24px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:2px;text-transform:uppercase;color:var(--muted);display:block}.hub h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,5.9vw,76px);font-weight:400;letter-spacing:-3px;line-height:1.08;margin:13px 0 18px}.hub h1 em{color:var(--red);font-weight:400}.hub-intro p{font-size:15px;color:var(--muted);line-height:1.5}.hub-number{display:flex;align-items:center;gap:18px;margin-inline-end:35px;transform:rotate(-6deg);color:var(--red)}.hub-number>span{font:italic 100px/1 Georgia,serif}.hub-number small{font-size:10px;font-weight:700;letter-spacing:1.4px;line-height:1.7}.game-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.game-cover{text-align:start;padding:0;background:#fffdf8;border:1px solid #d8d0c4;border-radius:14px;overflow:hidden;transition:transform .2s,box-shadow .2s;box-shadow:0 3px 0 #ddd6c9}.game-cover:active{transform:translateY(2px);box-shadow:0 1px 0 #ddd6c9}.cover-art{position:relative;overflow:hidden}.cover-image{display:block;width:100%;aspect-ratio:400/260;object-fit:cover}.cover-number{position:absolute;top:12px;inset-inline-start:12px;width:27px;height:27px;display:grid;place-items:center;background:var(--paper);border-radius:50%;font-size:10px;border:1px solid #29272426;direction:ltr}.cover-copy{padding:20px 18px 16px}.cover-heading{display:flex;align-items:start;justify-content:space-between;gap:8px}.cover-heading h2{font-size:22px;font-weight:650;line-height:1.12;letter-spacing:-.7px;max-width:175px}.cover-arrow{margin-top:1px;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);flex-shrink:0}.cover-arrow svg{width:14px;height:14px}.cover-copy p{font-size:12px;color:var(--muted);line-height:1.6;margin:13px 0 15px;min-height:38px}.cover-meta{display:block;font-size:10px;font-weight:600;letter-spacing:.2px;border-top:1px solid var(--line);padding-top:12px;color:#5b564e}.hub-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;font-size:11px;line-height:1.6;margin-top:30px;padding-top:22px;border-top:1px solid var(--line);color:var(--muted)}.hub-footer>span{display:flex;align-items:center;gap:8px}.hub-footer svg{width:16px;height:16px}.hub-footer>a{display:flex;align-items:center;gap:8px;min-height:44px;color:var(--ink)}.notice,.resume-bar{border:1px solid var(--line);padding:14px 18px;margin-bottom:22px;border-radius:10px;font-size:14px;line-height:1.6}.resume-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.resume-bar .btn{width:auto;min-height:44px;padding-inline:18px}
.stage{--accent:var(--red);--tint:#f2e3d7;max-width:550px;margin:0 auto;min-height:calc(100svh - var(--header-h) - env(safe-area-inset-top));min-height:calc(100dvh - var(--header-h) - env(safe-area-inset-top));display:flex;flex-direction:column;align-items:stretch;gap:18px;padding:24px max(24px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));position:relative}.stage.explain{--accent:var(--blue);--tint:#e6edf0}.stage.three{--accent:var(--olive);--tint:#e5e7cc}.stage.impostor{--accent:var(--charcoal);--tint:#e0e5d9}.stage h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,5.8vw,46px);font-weight:400;line-height:1.12;letter-spacing:-1.4px;text-wrap:balance}.stage p{font-size:15px;line-height:1.6;color:var(--muted);text-wrap:pretty}.stage-top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:26px;font-size:10px;letter-spacing:.8px;color:var(--muted)}.stage-top>span:last-child{white-space:nowrap;direction:ltr}.stage-top .player-chip{font-size:14px;letter-spacing:0;color:var(--ink)}.actions{margin-top:auto;display:flex;flex-direction:column;gap:8px;padding-top:8px}.btn{min-height:54px;border-radius:11px;padding:13px 20px;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:650;font-size:15px;line-height:1.4;text-align:center;width:100%;text-wrap:balance;transition:transform .15s,background .15s;border:1px solid transparent}.btn:active:not(:disabled){transform:scale(.985)}.btn.primary{background:var(--accent,var(--red));color:var(--paper);box-shadow:0 3px 0 color-mix(in srgb,var(--accent,var(--red)),#000 25%)}.btn.secondary{border-color:var(--line);background:#f4f0e6}.btn.text{min-height:44px;padding:8px 14px;font-size:12px;color:var(--muted);font-weight:500}.btn.quiet{background:var(--ink);color:var(--paper)}.action-pair{display:grid;grid-template-columns:1fr 1.5fr;gap:12px}.action-hint{font-size:11px!important;text-align:center;line-height:1.5!important}.intro-art{display:block;width:100%;max-height:175px;object-fit:cover;border-radius:12px;aspect-ratio:2.8}.intro-heading h1{margin:12px 0 10px}.intro-heading p{font-size:14px}.setup-controls h2{font-size:14px;font-weight:650;margin-bottom:14px}.count-options{display:flex;gap:8px;flex-wrap:wrap}.count-options button{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);font-size:16px;background:#fffdf8}.count-options [aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--paper);box-shadow:0 0 0 3px var(--paper),0 0 0 4px var(--accent)}.names-details{margin-top:22px}.names-details summary{font-size:13px;cursor:pointer;min-height:44px;padding-top:10px}.names-details summary span{color:var(--muted);font-size:11px;margin-inline-start:6px}.names-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-block:12px}.names-grid label{display:flex;flex-direction:column;gap:6px;font-size:10px;color:var(--muted)}.names-grid input{width:100%;min-width:0;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:#fffdf8;font-size:16px;color:var(--ink)}
.question-card{background:#fffdf8;border:1px solid #d8cfc1;border-radius:16px;box-shadow:4px 5px 0 #eee4d7;position:relative;padding:32px 28px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:250px;flex:1;text-align:center}.question-mark{font:italic 60px/.85 Georgia,serif;color:var(--red);align-self:flex-start;position:absolute;top:21px;inset-inline-start:24px}.seat-orbit{display:flex;gap:6px;align-self:flex-end;margin-bottom:35px}.seat{width:26px;height:26px;border-radius:50%;display:inline-grid;place-items:center;box-shadow:0 2px 0 #29272425;border:1px solid #29272440;font-size:11px;line-height:1;flex-shrink:0;font-style:normal;color:var(--ink);font-variant-numeric:tabular-nums}.seat-0{background:#eac466}.seat-1{background:#b7cbd7}.seat-2{background:#d4d7a2}.seat-3{background:#e7bfa9}.seat-4{background:#d3c6dd}.seat-5{background:#f0e9da}.question-card .prompt{font-family:Georgia,serif;font-size:clamp(28px,6.5vw,39px);line-height:1.21;color:var(--ink);letter-spacing:-.8px;text-wrap:balance;margin:auto 0}.card-rule{width:32px;border-top:1px solid #b7a899;margin:24px 0 13px}.card-small{font-size:9px;font-weight:700;letter-spacing:1.7px;color:var(--muted);display:block}.progress-dots{display:flex;justify-content:center;gap:8px;direction:ltr}.progress-dots i{display:block;width:7px;height:7px;border:1px solid #bcafa0;border-radius:50%}.progress-dots .done{background:var(--accent);border-color:var(--accent)}.progress-dots .current{box-shadow:0 0 0 3px #b83c3020;border-color:var(--accent);background:var(--accent)}.who-prep{display:flex;flex-direction:column;gap:13px;align-items:center;padding:10px 0;font-size:12px;color:var(--muted)}.point-count{display:flex;justify-content:center;align-items:center;gap:20px;min-height:82px}.point-count>[data-timer]{font:italic 76px/.9 Georgia,serif;color:var(--red);width:70px;text-align:center;font-variant-numeric:tabular-nums}.point-count p{font-size:13px}.point-now strong{font:italic 44px/1 Georgia,serif;color:var(--red)}.point-now{animation:arrive .3s ease-out}
.ready-stage{text-align:center;align-items:center;gap:19px}.ready-stage>.stage-top,.ready-stage>.actions{width:100%}.ready-stage .eyebrow{margin-top:10px}.ready-stage p{max-width:340px}.ready-facts{display:flex;align-items:center;justify-content:center;gap:40px;padding:16px 0 8px}.ready-facts>span{font-family:Georgia,serif;font-size:42px;line-height:1;display:block;color:var(--accent)}.ready-facts small{display:block;font:9px/1.6 ui-rounded,Arial,sans-serif;letter-spacing:1px;margin-top:10px;color:var(--muted)}.ready-facts i{height:45px;border-left:1px solid var(--line)}.score-inline{font-size:12px;font-weight:600;color:var(--blue)}.explain-clock{display:flex;align-items:center;gap:20px}.time-inline{display:flex;gap:8px;align-items:baseline;white-space:nowrap}.time-inline strong{font-family:Georgia,serif;font-weight:400;font-size:31px;line-height:1;font-variant-numeric:tabular-nums}.time-inline span{font-size:10px;color:var(--muted)}.time-track{flex:1;background:#dddeda;height:4px;border-radius:4px;overflow:hidden}.time-track i{display:block;height:100%;background:var(--blue);transform-origin:left;border-radius:4px}.word-card{padding:26px 24px 20px;border:1px solid #b9c7cb;border-radius:14px;background:var(--tint);flex:1;min-height:280px;display:flex;align-items:center;flex-direction:column;justify-content:space-between;box-shadow:5px 5px 0 #c7d3d94d}.word-card .card-small{color:var(--blue)}.word-card .target-word{font:750 clamp(36px,8.5vw,58px)/1.1 ui-rounded,"Arial Rounded MT Bold",-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;text-align:center;letter-spacing:-1.5px;padding:24px 0;color:var(--blue);overflow-wrap:anywhere;max-width:100%;text-wrap:balance}.forbidden{width:100%;border-top:1px solid #b8c9cf;padding-top:17px;text-align:center}.forbidden>span{font-size:9px;font-weight:700;letter-spacing:1.7px;color:#865548}.forbidden ul{list-style:none;padding:0;margin:11px 0 0;display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.forbidden li{font-size:16px;border:1px solid #b4c5cb;border-radius:7px;background:#f6f7f0;padding:8px 12px;line-height:1.2;overflow-wrap:anywhere}
.player-chip{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:14px;line-height:1.3;font-weight:500;min-width:0}.player-chip bdi{min-width:0}.ready-token{margin:20px 0 3px;position:relative;border:1px solid #b8c0a1;border-radius:50%;padding:14px}.ready-token>.seat{width:78px;height:78px;font:italic 40px/1 Georgia,serif;box-shadow:0 6px 0 #d5d8c0}.three-markers{display:flex;justify-content:center;gap:12px;direction:ltr;padding:8px 0}.three-markers i{font:italic 24px/1 Georgia,serif;display:grid;place-items:center;width:40px;height:40px;border:1px solid #a8af88;background:var(--tint);border-radius:50%;color:var(--olive);box-shadow:0 3px 0 #c9ccae}.challenge{border-block:1px solid #cbd0b5;padding:25px 15px 20px;text-align:center;background:#eef0dc;border-radius:4px;margin-top:8px}.challenge .prompt{font-family:inherit;font-size:clamp(28px,6.5vw,38px);font-weight:600;line-height:1.25;letter-spacing:-.7px;margin:18px 0}.challenge .card-small{color:var(--olive)}.clock{width:152px;height:152px;position:relative;align-self:center;margin:auto 0;flex-shrink:0}.clock svg{width:100%;height:100%;transform:rotate(-90deg)}.clock circle{fill:none;stroke-width:5}.clock-track{stroke:#dce0c8}.clock-progress{stroke:var(--olive);stroke-linecap:round}.clock>div{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column}.clock strong{font:italic 72px/.85 Georgia,serif;color:var(--olive);font-variant-numeric:tabular-nums}.clock small{font-size:10px;color:var(--muted);margin-top:13px}.judge-title{display:flex;flex-direction:column;align-items:center;gap:10px;margin:auto 0;padding:20px 0}.judge-title strong{font:italic 31px/1.2 Georgia,serif;color:var(--olive)}.judge-title span{font-size:12px;color:var(--muted)}
.result-stage{text-align:center;align-items:center;gap:16px;justify-content:center}.result-stage>.actions{width:100%}.result-stage>p{max-width:370px}.result-art{max-height:200px;width:100%;object-fit:cover;border-radius:12px;aspect-ratio:2.3}.score-stamp{border:1px solid #99acb3;background:var(--tint);border-radius:12px;width:210px;height:220px;display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;box-shadow:7px 7px 0 #d6dfe1;transform:rotate(-3deg);margin:20px 0}.score-stamp:before,.score-stamp:after{content:'';position:absolute;width:25px;border-top:3px solid var(--blue);transform:rotate(20deg);top:18px;right:-44px}.score-stamp:after{width:16px;top:42px;right:-38px;transform:rotate(40deg)}.score-stamp>span{font:italic 112px/1 Georgia,serif;color:var(--blue);letter-spacing:-6px}.score-stamp small{font-size:9px;color:var(--blue);letter-spacing:2px;margin-top:12px}.winner-seal,.reveal-seal{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;border:1px solid #858e60;box-shadow:0 0 0 7px var(--paper),0 0 0 8px #c8cdb3;background:#d7dcac;color:var(--olive);margin:8px 0 10px}.winner-seal svg,.reveal-seal svg{width:38px;height:38px}.scoreboard{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.scoreboard>div{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);padding:9px 11px;border-radius:8px;min-height:44px}.scoreboard .leader{background:#ecefd8;border-color:#c2c9a0}.scoreboard .player-chip{font-size:12px}.scoreboard strong{font-size:20px;font-family:Georgia,serif;color:var(--olive)}.scoreboard .seat{width:22px;height:22px;font-size:10px}.winner-names{font-weight:600;color:var(--olive)!important;max-width:100%;overflow-wrap:anywhere}
.handoff-stage{text-align:center}.handoff-graphic{position:relative;margin:35px auto 20px;width:125px;flex-shrink:0}.phone-outline{height:178px;width:105px;border:2px solid var(--charcoal);border-radius:19px;transform:rotate(-9deg);background:#e7e9dd;display:grid;place-items:center;box-shadow:6px 6px 0 #c9d0bc}.phone-outline:before{content:'';width:28px;border-top:3px solid var(--charcoal);position:absolute;top:12px;left:37px}.phone-outline svg{width:32px;height:32px}.handoff-graphic>.seat{position:absolute;bottom:-12px;right:-5px;width:56px;height:56px;font:italic 28px/1 Georgia,serif;border-width:2px}.handoff-label{font-size:13px!important}.handoff-name{overflow-wrap:anywhere}.secret-card{background:var(--charcoal);border:1px solid #646f5d;border-radius:15px;padding:28px 22px;color:var(--paper);text-align:center;min-height:265px;flex:1;display:flex;align-items:center;justify-content:center;box-shadow:5px 5px 0 #d5d9ce;position:relative;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.secret-card:before{content:'';position:absolute;inset:8px;border:1px solid #65735f;border-radius:9px;pointer-events:none}.secret-card #secret-content{position:relative;display:flex;flex-direction:column;align-items:center;gap:20px;width:100%}.secret-card h1{font-size:38px}.secret-card p{color:#d2d8cb;font-size:12px;max-width:310px}.secret-eyes{display:flex;gap:16px;margin-bottom:4px}.secret-eyes i{width:30px;height:19px;border-radius:50%;background:var(--paper);position:relative}.secret-eyes i:after{content:'';position:absolute;background:var(--charcoal);height:17px;width:9px;top:1px;right:7px;border-radius:50%}.secret-category{color:#d0d7c5;font-size:11px;letter-spacing:1px}.secret-role{font-size:9px;letter-spacing:1.7px;color:#e3be8b;font-weight:650}.secret-card.revealed h1{color:#f1dfba;overflow-wrap:anywhere}.secret-card.revealed{animation:arrive .16s ease-out}.hold-button{min-height:58px;border:1px solid #738267;background:#ebeee2;border-radius:11px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:14px;font-weight:650;touch-action:none;-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}.hold-button.holding{background:#c5d0b6;box-shadow:inset 0 3px 5px #546b3c22}.secret-stage .actions{padding-top:0;flex:none}.category-badge{align-self:flex-start;border:1px solid #b4bfaa;padding:8px 16px;border-radius:20px;font-size:12px;background:#edf0e6}.clues-stage{gap:14px}.clues-stage h1{font-size:37px}.clues-stage>p{font-size:13px}.clue-order{list-style:none;padding:0;margin:0;display:grid;gap:4px}.clue-order li{display:flex;align-items:center;justify-content:space-between;border:1px solid transparent;border-radius:7px;padding:6px 10px;gap:10px;min-height:36px}.clue-order li.active{background:#e1e7d7;border-color:#aab89c}.clue-order li.finished{color:#807c72}.clue-order li>span:last-child{font-size:11px;color:var(--olive)}.clue-order li>span:last-child svg{width:16px;height:16px}.clue-order .seat{width:22px;height:22px}.clue-order .player-chip{font-size:13px}.vote-stage h1{font-size:38px}.vote-stage>p{font-size:13px}.vote-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.vote-options>button{padding:13px 12px;border:1px solid var(--line);border-radius:9px;text-align:start;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fffdf8}.vote-options [aria-pressed=true]{background:#e0e6d6;border-color:#687b58;box-shadow:inset 0 0 0 1px #687b58}.vote-options .player-chip{font-size:13px;gap:7px}.vote-check{width:17px;flex-shrink:0}.vote-check svg{width:17px;height:17px}.runoff-symbol{display:flex;align-items:center;justify-content:center;gap:15px;margin:25px 0 20px;direction:ltr}.runoff-symbol span{display:grid;place-items:center;border:1px solid #79866c;background:#e0e5d7;border-radius:8px;width:65px;height:80px;font:italic 40px/1 Georgia,serif;transform:rotate(-8deg)}.runoff-symbol span+span{transform:rotate(8deg)}.tied-players{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.reveal-seal{background:var(--charcoal);border-color:var(--charcoal);color:var(--paper);box-shadow:0 0 0 7px var(--paper),0 0 0 8px #c5cbbb;margin:25px 0 18px}.reveal-seal.group-wins{background:#d7dcac;color:var(--olive)}.secret-locked{display:flex;align-items:center;gap:10px;border:1px dashed #b9c1ad;border-radius:9px;padding:18px;font-size:12px;line-height:1.5;color:var(--muted);margin:15px 0}.secret-locked svg{width:23px;height:23px;flex-shrink:0}.final-secret{background:#e5e9db;border:1px solid #bcc6ad;display:flex;flex-direction:column;gap:13px;width:100%;border-radius:12px;padding:24px;position:relative}.final-secret>span{font-size:9px;letter-spacing:1.8px;color:#667359}.final-secret>strong{font-size:30px;line-height:1.3;font-weight:600;overflow-wrap:anywhere}.final-secret>small{font-size:12px;color:#65715a}
.modal-backdrop{position:fixed;inset:0;background:#29272490;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:50;padding:24px}.sheet{max-width:430px;width:100%;max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;border-radius:18px;background:var(--paper);padding:34px 26px 24px;position:relative;box-shadow:0 15px 70px #0003}.sheet-close{position:absolute;top:18px;inset-inline-end:18px;width:36px;height:36px}.sheet .eyebrow{padding-inline-end:35px}.sheet h2{font:400 34px/1.1 Georgia,serif;letter-spacing:-1px;margin:20px 0 18px;max-width:290px}.sheet>p{color:var(--muted);font-size:14px;line-height:1.65;margin-bottom:24px}.sheet>.btn{margin-top:10px}.rules-list{padding-inline-start:22px;display:grid;gap:18px;font-size:14px;line-height:1.65;margin:25px 0}.rules-list li::marker{color:var(--red);font-weight:700}.sheet-handle{display:none}
[dir=rtl] .hub h1,[dir=rtl] .stage h1,[dir=rtl] .question-card .prompt,[dir=rtl] .point-now strong,[dir=rtl] .judge-title strong,[dir=rtl] .sheet h2{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,Arial,sans-serif;font-weight:650;letter-spacing:0;line-height:1.4}[dir=rtl] .hub h1{font-size:clamp(38px,5.4vw,65px);line-height:1.4;margin-top:8px}[dir=rtl] .hub h1 em{font-style:normal}[dir=rtl] .eyebrow,[dir=rtl] .card-small,[dir=rtl] .stage-top,[dir=rtl] .cover-meta,[dir=rtl] .forbidden>span,[dir=rtl] .secret-role,[dir=rtl] .secret-category,[dir=rtl] .final-secret>span{letter-spacing:0}[dir=rtl] .cover-heading h2{letter-spacing:0;font-size:24px;line-height:1.35}[dir=rtl] .cover-copy p{font-size:14px;line-height:1.6}[dir=rtl] .cover-meta{font-size:12px}[dir=rtl] .cover-arrow svg,[dir=rtl] .menu-link svg,[dir=rtl] .hub-footer>a svg{transform:rotate(180deg)}[dir=rtl] .card-small{font-size:11px}[dir=rtl] .question-card .prompt{font-size:clamp(27px,6.1vw,36px)}[dir=rtl] .target-word{font-size:clamp(35px,8vw,52px);letter-spacing:0}[dir=rtl] .stage p{font-size:16px;line-height:1.7}[dir=rtl] .forbidden>span{font-size:11px}[dir=rtl] .forbidden li{font-size:19px}[dir=rtl] .point-count p{font-size:14px}[dir=rtl] .header-game{font-size:16px}[dir=rtl] .btn{font-size:16px}[dir=rtl] .btn.text{font-size:13px}[dir=rtl] .stage-top>span:last-child{direction:rtl}[dir=rtl] .stage-top{font-size:11px}[dir=rtl] .sheet h2{font-size:31px}[dir=rtl] .rules-list{font-size:16px}
html{scrollbar-gutter:auto}.stage{min-height:calc(100dvh - var(--header-h) - env(safe-area-inset-top) - 1px)}.game-cover{display:flex;flex-direction:column}.cover-art{width:100%;flex-shrink:0}.cover-copy{flex:1;width:100%;display:flex;flex-direction:column}.cover-meta{margin-top:auto}.cover-heading{min-height:49px}
@keyframes arrive{from{transform:translateY(4px);opacity:.7}to{transform:translateY(0);opacity:1}}
@media(hover:hover){.game-cover:hover{transform:translateY(-4px);box-shadow:0 7px 0 #ddd6c9}.btn.primary:hover{filter:brightness(1.05)}}
@media(min-width:700px){body[data-game]:not([data-game=hub]){background:#f0ece3}.in-game{background:var(--paper)}.stage{background:var(--paper);border-inline:1px solid var(--line);padding-inline:30px}.stage{min-height:calc(100dvh - var(--header-h) - 1px);max-width:550px}}
@media(max-width:1000px){.hub-number{margin-inline-end:0}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.cover-heading h2{font-size:25px}.cover-copy p{min-height:0}.cover-image{aspect-ratio:2.1;object-fit:cover}.hub{max-width:750px}.hub h1{font-size:58px}}
@media(max-width:550px){:root{--header-h:69px}.play-header{padding-inline:max(20px,env(safe-area-inset-left))}.header-inner{gap:10px}.header-right{gap:20px}.play-brand img{width:34px}.play-brand>span{font-size:31px}.play-brand{gap:10px}.hub{padding:29px 20px 22px}.hub-intro{margin-bottom:25px;gap:8px}.hub h1{font-size:43px;letter-spacing:-2px;margin:12px 0 14px}.hub-intro p{font-size:13px;max-width:230px}.hub-number{display:none}.game-grid{gap:16px 12px}.cover-copy{padding:14px 12px 12px}.cover-heading{gap:4px}.cover-heading h2{font-size:21px;letter-spacing:-.7px;max-width:135px}.cover-arrow{width:22px;height:22px}.cover-arrow svg{width:12px}.cover-copy p{font-size:11px;line-height:1.5;min-height:33px;margin:10px 0 12px}.cover-image{aspect-ratio:1.55}.cover-meta{font-size:9px;letter-spacing:0;padding-top:10px}.cover-number{width:22px;height:22px;font-size:9px;top:8px;inset-inline-start:8px}.hub-footer{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:24px;padding-top:17px;font-size:10px}.hub-footer>a{min-height:40px}.stage{padding:18px 20px max(18px,env(safe-area-inset-bottom));gap:15px}.stage h1{font-size:37px}.in-game .header-game{font-size:13px;gap:6px}.language-toggle{font-size:11px;gap:5px}.icon-button{width:40px;height:40px}.in-game .header-inner{gap:10px}.intro-art{max-height:145px;aspect-ratio:2.5}.ready-stage{gap:16px}.result-stage{gap:16px}.result-art{max-height:165px}.ready-token{margin-top:18px}.result-stage h1{font-size:35px}.secret-card h1{font-size:34px}.handoff-graphic{margin-top:28px}.clues-stage h1{font-size:32px}.clues-stage{gap:12px}.clues-stage>p{font-size:12px}.vote-stage h1{font-size:31px}.word-card{min-height:250px;padding:22px 18px 18px}.word-card .target-word{font-size:42px}.forbidden li{font-size:15px;padding:8px 10px}.question-card{padding:24px 22px 20px;min-height:240px}.question-card .prompt{font-size:31px}.point-count{min-height:77px}.scoreboard{gap:6px}.scoreboard>div{padding:8px}.scoreboard .player-chip{font-size:11px;gap:6px}.scoreboard .seat{width:20px;height:20px}.scoreboard strong{font-size:18px}.winner-seal{width:59px;height:59px;margin-block:6px}.winner-seal svg{width:28px;height:28px}.final-secret{padding:21px}.modal-backdrop{padding:0;align-items:flex-end}.sheet{max-width:100%;max-height:90dvh;border-radius:20px 20px 0 0;padding:31px 24px max(20px,env(safe-area-inset-bottom))}.sheet-handle{display:block;position:absolute;top:10px;left:calc(50% - 18px);width:36px;height:4px;border-radius:4px;background:#c7c0b5}.sheet-close{top:24px}[dir=rtl] .hub h1{font-size:41px;margin:7px 0 12px;line-height:1.4}[dir=rtl] .hub-intro p{font-size:14px;max-width:none}[dir=rtl] .cover-heading h2{font-size:21px}[dir=rtl] .cover-copy p{font-size:12px;min-height:38px}[dir=rtl] .cover-meta{font-size:10px}[dir=rtl] .stage h1{font-size:32px;line-height:1.4}[dir=rtl] .word-card .target-word{font-size:40px}[dir=rtl] .question-card .prompt{font-size:29px;line-height:1.55}[dir=rtl] .challenge .prompt{font-size:29px}[dir=rtl] .stage p{font-size:14px}[dir=rtl] .secret-card h1{font-size:32px}[dir=rtl] .clues-stage h1{font-size:29px}[dir=rtl] .clues-stage>p{font-size:12px}[dir=rtl] .header-game{font-size:14px}}
@media(max-width:360px){.play-header{padding-inline:14px}.hub{padding-inline:15px}.hub h1{font-size:39px}.stage{padding-inline:16px;gap:12px}.cover-heading h2{font-size:18px}.cover-arrow{display:none}.cover-copy{padding-inline:10px}.cover-meta{font-size:8px}.cover-copy p{font-size:10px}.header-game{gap:5px!important;font-size:12px!important}.in-game .header-inner{gap:8px}.language-toggle{font-size:10px}.question-card .prompt{font-size:28px}.word-card .target-word{font-size:36px}.forbidden li{font-size:13px;padding:7px}.count-options{gap:7px}.count-options button{width:40px;height:44px;border-radius:9px}[dir=rtl] .hub h1{font-size:35px}[dir=rtl] .cover-heading h2{font-size:20px}[dir=rtl] .cover-meta{font-size:9px}[dir=rtl] .question-card .prompt{font-size:27px}[dir=rtl] .word-card .target-word{font-size:35px}[dir=rtl] .forbidden li{font-size:16px}}
@media(max-height:700px) and (max-width:700px){:root{--header-h:61px}.stage{padding-top:13px;padding-bottom:max(13px,env(safe-area-inset-bottom));gap:11px}.question-card{min-height:205px;padding-block:22px 16px}.question-card .prompt{font-size:28px}.seat-orbit{margin-bottom:25px}.card-rule{margin:15px 0 10px}.question-mark{font-size:50px;top:17px}.point-count{min-height:59px}.point-count>[data-timer]{font-size:59px}.point-now strong{font-size:36px}.who-prep{padding-block:6px;gap:9px}.btn{min-height:49px;padding-block:11px}.btn.text{min-height:38px}.actions{gap:5px;padding-top:5px}.intro-art{max-height:118px}.stage h1{font-size:32px}.ready-stage{gap:12px}.ready-facts{padding-block:7px}.ready-facts>span{font-size:33px}.word-card{min-height:235px;padding-block:18px}.word-card .target-word{padding:18px 0;font-size:38px}.score-stamp{height:177px;width:170px;margin:10px 0 16px}.score-stamp>span{font-size:94px}.ready-token{margin-top:6px;padding:10px}.ready-token>.seat{width:60px;height:60px;font-size:32px}.three-markers{padding-block:5px;gap:10px}.three-markers i{width:34px;height:34px;font-size:21px}.challenge{padding:18px 13px 13px;margin-top:0}.challenge .prompt{font-size:27px;margin:14px 0}.clock{width:124px;height:124px}.clock strong{font-size:58px}.judge-title{padding-block:12px}.handoff-graphic{margin-block:16px}.phone-outline{height:145px;width:88px}.phone-outline:before{left:29px}.handoff-graphic{width:107px}.secret-card{min-height:230px;padding-block:22px}.secret-card #secret-content{gap:16px}.hold-button{min-height:52px}.clues-stage{gap:8px}.clues-stage h1{font-size:28px}.clue-order{gap:2px}.clue-order li{padding-block:4px;min-height:33px}.clue-order .seat{width:20px;height:20px}.vote-options>button{min-height:54px;padding:10px}.result-art{max-height:128px}.result-stage{gap:13px}.winner-seal{width:46px;height:46px;margin-block:3px}.reveal-seal{width:62px;height:62px;margin:12px 0}.final-secret{padding:18px}.result-stage h1{font-size:31px}.scoreboard>div{min-height:38px;padding-block:6px}[dir=rtl] .stage h1{font-size:29px}[dir=rtl] .question-card .prompt{font-size:26px;line-height:1.5}[dir=rtl] .clues-stage h1{font-size:25px}[dir=rtl] .clues-stage>p{font-size:11px}[dir=rtl] .challenge .prompt{font-size:26px}[dir=rtl] .word-card .target-word{font-size:36px}}
@media(orientation:landscape) and (max-height:550px){.stage{min-height:calc(100dvh - var(--header-h));height:auto;padding:18px 24px;max-width:760px}.stage>.intro-art{display:none}.question-card{min-height:170px}.clock{width:110px;height:110px}.ready-token{margin:0}.ready-token>.seat{width:45px;height:45px}.ready-stage{gap:12px}.stage .actions{margin-top:8px}.hub-number{display:none}.game-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cover-heading h2{font-size:17px}.cover-copy p{display:none}.cover-meta{margin-top:10px}.cover-arrow{display:none}.hub h1{font-size:40px}.handoff-graphic{margin-block:0}.phone-outline{height:92px;width:60px}.phone-outline:before{left:16px}.handoff-graphic{width:80px}.secret-card{min-height:190px}.clue-order{grid-template-columns:1fr 1fr}.result-art{max-height:110px}.score-stamp{height:135px;width:145px;margin:5px}.score-stamp>span{font-size:72px}.vote-options{grid-template-columns:repeat(3,1fr)}.result-stage{gap:12px}.hub-intro{margin-bottom:25px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.play-header,.actions,.hub-footer{display:none}.stage{min-height:0;border:0}.secret-card{visibility:hidden}}

/* Compact covers let the full collection introduce itself on a phone. */
@media(max-width:550px){.cover-copy p{display:none}.cover-heading{min-height:47px}.cover-meta{margin-top:12px}.hub-intro p{max-width:none}.hub-intro{margin-bottom:23px}}
.seat-orbit .seat{position:relative}.seat-orbit .seat:before{content:"";position:absolute;top:8px;left:7px;width:2px;height:3px;background:#5c4937;box-shadow:8px 0 #5c4937}.seat-orbit .seat:after{content:"";position:absolute;bottom:5px;left:8px;width:8px;height:5px;border-bottom:1.5px solid #5c4937;border-radius:50%}.seat-orbit .seat:nth-child(2):after{transform:rotate(180deg);bottom:4px}

@media(max-width:360px) and (max-height:620px){.clues-stage{gap:6px}.clues-stage h1{font-size:25px;line-height:1.1}.clue-order li{min-height:30px;padding-block:3px}.clue-order .player-chip{font-size:12px}[dir=rtl] .clues-stage h1{font-size:23px;line-height:1.3}.clues-stage .category-badge{padding-block:6px}}
/* Cards reflow into one column when text is enlarged. */
.cover-heading h2{min-width:0;overflow-wrap:anywhere}.game-cover{min-width:0}
@media(max-width:550px){.game-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,max(8.5em,calc((100% - 12px)/2))),1fr))}}
/* Balanced count controls and dependable touch areas. */
.three .count-options{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.three .count-options button{width:100%;min-width:44px}
@media(max-width:550px){.icon-button{width:44px;height:44px}.sheet-close{width:44px;height:44px}}
@media(max-width:360px){.three .count-options{grid-template-columns:repeat(4,minmax(0,1fr))}.count-options button{width:44px}}
/* The masthead can wrap when the user enlarges text. */
.header-inner{height:auto;min-height:var(--header-h);flex-wrap:wrap;padding-block:8px}.play-brand,.header-right{flex-shrink:0}.header-game{min-width:0}
