:root{color:#171717;font-synthesis:none;text-rendering:optimizelegibility;--ink:#171717;--cream:#fff8e8;--yellow:#ffd83d;--yellow-dark:#efbd00;--paper:#fffefa;--line:#dedbd4;--muted:#77736d;--green:#218b5b;--red:#d84451;--shadow:4px 4px 0 var(--ink);--round:18px;background:#fff8e8;font-family:Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif}*{box-sizing:border-box}body{background:var(--cream);min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:4px solid #6b56e8}button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none!important;transform:none!important}::selection{color:var(--ink);background:#ffe786}.entry-shell,.room-shell{min-height:100vh;padding:18px clamp(16px,4vw,54px) 36px;position:relative;overflow:hidden}.entry-shell:before,.room-shell:before{content:"あ　　と　　　 り　　　ん　　し　　　か";color:#eee3d0;letter-spacing:1.5rem;pointer-events:none;white-space:nowrap;opacity:.55;z-index:-1;font-size:34px;font-weight:900;position:fixed;inset:auto 0 0}.entry-header,.room-header{justify-content:space-between;align-items:center;gap:14px;max-width:1500px;margin:0 auto;display:flex}.brand{letter-spacing:.03em;white-space:nowrap;align-items:center;gap:10px;font-size:25px;font-weight:900;display:inline-flex}.brand-mark{border:3px solid var(--ink);background:var(--yellow);width:48px;height:44px;box-shadow:2px 2px 0 var(--ink);border-radius:50% 50% 46%;place-items:center;font-size:25px;font-weight:900;display:inline-grid;position:relative}.brand-mark:after{content:"";border-left:3px solid var(--ink);border-bottom:3px solid var(--ink);background:var(--yellow);width:13px;height:13px;position:absolute;bottom:-5px;left:7px;transform:skew(-18deg)rotate(-15deg)}.home-hero{text-align:center;isolation:isolate;flex-direction:column;justify-content:center;align-items:center;max-width:920px;min-height:calc(100vh - 105px);margin:16px auto 0;padding:16px 12px 0;display:flex;position:relative}.letter-trail{pointer-events:none;z-index:-1;color:#eee2ce;opacity:.72;font-size:clamp(24px,4vw,48px);font-weight:900;position:absolute;inset:0}.letter-trail span{position:absolute;transform:rotate(-13deg)}.letter-trail span:first-child{top:13%;left:2%}.letter-trail span:nth-child(2){top:47%;left:0%}.letter-trail span:nth-child(3){top:22%;right:3%}.letter-trail span:nth-child(4){bottom:24%;left:7%}.letter-trail span:nth-child(5){bottom:13%;right:7%}.hero-chain{align-items:center;gap:clamp(4px,1.2vw,18px);margin:2px 0 8px;display:flex;transform:rotate(-2deg)}.word-tile{border:3px solid var(--ink);width:clamp(65px,8vw,104px);height:clamp(70px,8vw,100px);box-shadow:3px 3px 0 var(--ink);transform:rotate(var(--tilt,3deg));background:#fff;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;display:flex}.word-tile:nth-child(3){--tilt:-3deg}.word-tile:nth-child(5){--tilt:2deg}.word-tile:nth-child(7){--tilt:-4deg}.word-tile b{font-size:clamp(16px,2.1vw,24px)}.word-tile i{font-size:22px;font-style:normal;line-height:1.2}.word-mark{width:39px;height:34px;margin-top:2px}.chain-arrow{color:#eabc00;text-shadow:1px 1px var(--ink);font-size:clamp(20px,3vw,32px);font-weight:900}.avatar-parade{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(4px,1.6vw,20px);max-width:680px;margin:2px auto -2px;display:flex}.avatar{object-fit:contain;filter:drop-shadow(1px 2px #171717);flex:none;display:block;overflow:visible}.avatar--small{width:42px;height:42px}.avatar--medium{width:60px;height:60px}.avatar--large{width:clamp(49px,6vw,76px);height:clamp(49px,6vw,76px)}.home-hero h1{letter-spacing:.015em;margin:6px 0 10px;font-size:clamp(35px,6.6vw,70px);font-weight:900;line-height:1.08;position:relative}.home-hero h1:after{content:"";background:var(--yellow);z-index:-1;border-radius:10px;height:9px;position:absolute;bottom:-5px;left:4%;right:28%;transform:rotate(-1deg)}.home-lead{margin:9px 0 22px;font-size:clamp(14px,2vw,20px);font-weight:700}.home-actions{grid-template-columns:1fr 1fr;gap:16px;width:min(760px,100%);display:grid}.button{appearance:none;border:3px solid var(--ink);box-shadow:var(--shadow);cursor:pointer;text-align:center;background:#fff;border-radius:15px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:10px 18px;font-size:16px;font-weight:900;transition:transform .12s,box-shadow .12s,background .12s;display:inline-flex}.button:hover:not(:disabled){box-shadow:5px 5px 0 var(--ink);transform:translate(-1px,-1px)}.button:active:not(:disabled){box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.button--primary{background:var(--yellow)}.button--primary:hover:not(:disabled){background:#ffe269}.button--white{background:var(--paper)}.button--hero{min-height:86px;padding:12px 22px;font-size:clamp(18px,2vw,25px)}.button-icon{font-size:34px;line-height:.7}.game-chips{flex-wrap:wrap;justify-content:center;gap:10px;margin:24px 0 14px;display:flex}.game-chips span{border:2px solid var(--ink);background:var(--paper);box-shadow:2px 2px 0 var(--ink);border-radius:12px;padding:8px 16px;font-weight:800}.card{background:var(--paper);border:3px solid var(--ink);border-radius:var(--round);box-shadow:var(--shadow)}.entry-card{width:min(520px,100%);margin:clamp(24px,7vh,72px) auto;padding:24px clamp(20px,5vw,38px) 34px}.entry-card h1{text-align:center;margin:10px 0 0;font-size:34px;font-weight:900}.entry-card>.muted{text-align:center}.back-link{cursor:pointer;color:#4d4a45;background:0 0;border:0;padding:6px 0;font-weight:800}.entry-form{gap:16px;margin-top:24px;display:grid}.entry-form label,.settings-fields label,.prompt-picker label,.answer-form>label,.answer-fields>label,.report-controls label{gap:6px;font-size:14px;font-weight:800;display:grid}input,select{width:100%;min-height:46px;color:var(--ink);background:#fff;border:2px solid #aaa79f;border-radius:10px;padding:11px 12px;font-size:16px}input::placeholder{color:#aaa8a3}.room-code-input{text-transform:uppercase;letter-spacing:.16em;font-size:24px;font-weight:900}.avatar-picker{border:0;min-width:0;margin:0;padding:0}.avatar-picker legend{margin-bottom:8px;padding:0;font-size:14px;font-weight:800}.avatar-options{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.avatar-option{cursor:pointer;background:#fff;border:2px solid #d6d3ce;border-radius:13px;place-items:center;min-width:0;min-height:72px;display:grid}.avatar-option.is-selected{border:3px solid var(--ink);box-shadow:0 0 0 3px var(--yellow);background:#fff7cf}.avatar-option .avatar--medium{width:53px;height:53px}.form-hint,.muted{color:var(--muted);margin:0;font-size:13px}.form-error{border-left:4px solid var(--red);color:#9b2732;background:#fff0ef;border-radius:5px;margin:0;padding:10px 12px;font-size:14px;font-weight:700}.button--wide{width:100%}.button--small{min-height:40px;box-shadow:2px 2px 0 var(--ink);padding:7px 10px;font-size:13px}.toast{border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;padding:10px 14px;font-size:14px;font-weight:800;display:flex}.toast button{cursor:pointer;background:0 0;border:0;font-size:22px}.toast--success{background:#e9f9e9}.toast--error{background:#fff0ef}.room-shell{padding-top:14px;padding-bottom:26px}.room-header{border-bottom:2px solid #e8dece;padding-bottom:14px}.room-header-actions{align-items:center;gap:10px;display:flex}.room-code-pill,.count-pill{border:2px solid var(--ink);background:var(--paper);cursor:pointer;box-shadow:2px 2px 0 var(--ink);border-radius:999px;padding:8px 14px;font-weight:900}.leave-room-button{color:#9c343a;cursor:pointer;background:#fff;border:2px solid #9c343a;border-radius:999px;padding:7px 12px;font-weight:900}.room-code-pill{letter-spacing:.05em}.room-code-pill span{letter-spacing:0;border-left:1px solid #ccc;margin-left:8px;padding-left:8px;font-size:12px}.room-grid{grid-template-columns:minmax(195px,245px) minmax(0,1fr) minmax(260px,310px);align-items:start;gap:16px;max-width:1500px;margin:16px auto 0;display:grid}.players-panel{padding:17px 15px}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:12px;display:flex}.panel-heading h2,.chat-heading h2{margin:0;font-size:19px;font-weight:900}.panel-heading>span{color:var(--muted);font-size:12px;font-weight:800}.player-list{margin:10px 0 0;padding:0;list-style:none;display:grid}.player-row{border-bottom:1px solid #ece9e3;align-items:center;gap:8px;min-width:0;padding:8px 2px;display:flex}.player-row:last-child{border-bottom:0}.player-row.is-me{background:#fff8d6;border-radius:10px;padding-left:5px}.player-row.is-eliminated{opacity:.55}.player-name{flex-wrap:wrap;flex:1;align-items:center;gap:4px;min-width:0;display:flex}.player-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.player-name small{width:100%;color:var(--muted);font-size:11px}.player-score{white-space:nowrap;font-size:17px;font-weight:900}.player-score small{font-size:10px}.host-tag,.you-tag{background:var(--yellow);border-radius:99px;padding:2px 6px;font-size:10px;font-weight:900}.you-tag{color:#5741b9;background:#eee9ff}.settings-panel{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}.settings-panel summary{cursor:pointer;font-size:13px;font-weight:900}.settings-fields{grid-template-columns:1fr 1fr;gap:9px;margin-top:12px;display:grid}.settings-fields label{font-size:11px}.settings-fields input{min-height:37px;padding:6px 8px;font-size:14px}.game-column{min-width:0}.game-heading{text-align:center;margin:0 auto 10px}.game-heading h1{margin:2px 0;font-size:clamp(24px,3vw,34px);font-weight:900;line-height:1.2}.eyebrow{color:var(--muted);letter-spacing:.12em;margin:0;font-size:11px;font-weight:900}.mobile-player-strip{display:none}.game-card,.lobby-panel,.results-card{min-height:450px;padding:clamp(18px,2.5vw,28px)}.game-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.phase-badge{border:2px solid var(--ink);background:var(--yellow);border-radius:99px;padding:7px 16px;font-weight:900}.timer{border:2px solid var(--ink);white-space:nowrap;background:#fff;border-radius:99px;align-items:center;gap:4px;padding:6px 14px;font-weight:800;display:inline-flex}.timer strong{font-size:22px}.timer--urgent{color:var(--red);border-color:var(--red)}.kana-banner{text-align:center;background:#fff7dc;border-radius:13px;gap:3px;margin:22px 0 18px;padding:17px 12px;display:grid}.kana-banner small{font-size:20px;font-weight:900}.kana-banner strong{font-size:clamp(16px,2.2vw,21px)}.auction-seller{text-align:center;background:#f8f5ec;border-radius:9px;margin:-3px 0 12px;padding:8px;font-size:13px}.section-title{margin:10px 0;font-size:17px}.bid-tiles{grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:8px;display:grid}.bid-tile{border:2px solid #e0ddd7;border-radius:12px;grid-template-columns:40px 1fr auto;align-items:center;gap:5px;min-width:0;padding:7px;display:grid}.bid-tile.is-me{background:#f6f2ff;border-color:#7861dc}.bid-tile strong{text-overflow:ellipsis;font-size:12px;overflow:hidden}.bid-tile span{white-space:nowrap;font-size:16px;font-weight:900}.bid-tile span small{font-size:9px}.bid-controls{border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);border-radius:14px;margin-top:18px;padding:14px}.bid-controls h3,.history-box h3,.judge-controls h3{margin:0 0 10px;font-size:16px}.stepper{align-items:center;gap:8px;display:flex}.stepper>button:not(.button){border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:11px;width:46px;height:46px;font-size:28px;font-weight:900}.stepper output{border:2px solid var(--line);text-align:center;background:#fff;border-radius:10px;flex:1;padding:7px;font-size:25px;font-weight:900}.stepper output small{font-size:14px}.stepper .button{min-width:150px}.history-box{background:#fff;border:2px solid #e5e1d9;border-radius:13px;margin-top:18px;padding:12px}.history-row{border-top:1px solid #eeeae4;align-items:center;gap:8px;min-height:48px;display:flex}.history-row:first-of-type{border-top:0}.history-row strong{flex:1}.history-row>span{font-weight:900}.top-bid{background:#fff0b4;border-radius:99px;padding:3px 8px;font-size:11px}.auction-winner-line{text-align:center;margin:0 0 14px;font-size:20px;font-weight:800}.answer-form{gap:9px;margin-top:18px;display:grid}.answer-input-row{align-items:center;gap:8px;display:flex}.answer-input-row input{min-width:0;font-size:18px}.answer-help{border:1px solid var(--line);white-space:nowrap;background:#f7f6f4;border-radius:9px;padding:12px 10px;font-size:13px;font-weight:800}.answer-form .button{min-height:56px}.judge-controls{border-top:1px solid var(--line);text-align:center;margin-top:20px;padding-top:16px}.judge-controls p{color:var(--muted);margin:0 0 12px;font-size:13px}.judge-controls>div,.vote-controls{gap:10px;display:flex}.judge-controls .button,.vote-controls .button{flex:1}.button--good{color:#167448;border-color:#218b5b;box-shadow:3px 3px #218b5b}.button--bad{color:#c5303f;border-color:#d84451;box-shadow:3px 3px #d84451}.waiting-note{text-align:center;color:#61532c;background:#fff7dc;border-radius:12px;margin:16px 0;padding:15px;font-weight:800}.prompt-card{border:2px solid var(--line);text-align:center;border-radius:14px;margin:19px 0 16px;padding:18px}.prompt-card small{background:var(--yellow);border-radius:99px;padding:4px 14px;font-weight:900;display:inline-block}.prompt-card h2{margin:13px 0;font-size:clamp(21px,3vw,32px)}.prompt-card p{margin:0;font-weight:800}.prompt-card p b{color:#e35680;font-size:21px}.submitted-answer{text-align:center;background:#fff;border:2px solid #e0ddd7;border-radius:14px;gap:6px;margin:16px 0;padding:17px;display:grid}.submitted-answer span,.submitted-answer small{color:var(--muted);font-size:13px}.submitted-answer strong{font-size:clamp(25px,4vw,38px)}.vote-controls{text-align:center;flex-wrap:wrap;margin:14px 0}.vote-controls p{width:100%;margin:0 0 2px;font-weight:800}.rule-note{color:#615d54;text-align:center;background:#f8f5ec;border-radius:10px;margin-top:18px;padding:10px;font-size:12px}.answer-fields{gap:12px;display:grid}.answer-fields .answer-form{margin-top:0}.ng-turn{background:#f7f1ff;border:2px solid #9f7be2;border-radius:14px;grid-template-columns:64px 1fr;align-items:center;gap:2px 12px;margin:18px 0;padding:12px;display:grid}.ng-turn .avatar-bubble{grid-row:span 2}.ng-turn strong{font-size:20px}.ng-turn small{color:#6042ab;font-weight:800}.secret-condition{background:#f5efff;border:2px dashed #9571dd;border-radius:14px;align-items:center;gap:12px;margin:14px 0;padding:12px;display:flex}.secret-condition>span{color:#7651cc;font-size:28px}.secret-condition div{display:grid}.secret-condition small{font-size:11px}.secret-condition strong{font-size:22px}.secret-condition p{color:#5c4b80;max-width:150px;margin:0 0 0 auto;font-size:11px}.report-controls{border-top:1px solid var(--line);gap:8px;margin-top:18px;padding-top:14px;display:grid}.report-controls .button{width:100%}.report-controls>small{text-align:center;color:var(--muted)}.private-review,.review-card{border:2px solid var(--line);text-align:center;background:#fff;border-radius:16px;margin-top:22px;padding:24px 16px}.private-review>span{font-size:34px}.private-review h2,.review-card h2{margin:6px 0}.private-review strong{background:var(--yellow);border-radius:99px;padding:9px 18px;display:inline-block}.review-answer{margin:17px 0 5px;font-size:27px;font-weight:900}.review-reason{color:#615d54}.spectator-note{text-align:center;background:#ece8f8;border-radius:9px;padding:10px;font-weight:800}.other-conditions{background:#fff;border:2px solid #e4e0d7;border-radius:13px;margin:12px 0;padding:11px}.other-conditions h2{margin:0 0 6px;font-size:14px}.other-condition-row{border-top:1px solid #eeeae4;grid-template-columns:38px minmax(62px,auto) 1fr;align-items:center;gap:4px 8px;min-height:46px;padding:5px 0;display:grid}.other-condition-row .avatar{grid-row:span 2;width:36px;height:36px}.other-condition-row strong{font-size:12px}.other-condition-row span{font-size:12px;font-weight:800}.other-condition-row small{color:var(--muted);grid-column:2/-1;font-size:10px}.paused-card,.end-card{text-align:center;padding:42px 20px}.pause-icon{background:var(--yellow);border:3px solid var(--ink);border-radius:50%;place-items:center;width:58px;height:58px;font-size:27px;font-weight:900;display:inline-grid}.paused-card h2{margin:17px 0 6px}.results-card{text-align:center}.results-card h2{margin:5px 0 20px;font-size:clamp(28px,4vw,42px)}.standings{text-align:left;max-width:600px;margin:0 auto;padding:0;list-style:none}.standings li{background:#fff;border:2px solid #e7e3dc;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin:7px 0;padding:8px 12px;display:flex}.standings li:first-child{border-color:var(--yellow-dark);background:#fff4b7}.standings li>span{min-width:25px;font-size:20px;font-weight:900}.standings li strong{flex:1}.standings li>b{font-size:18px}.standings li>small{width:100%;color:var(--muted);margin-left:45px}.result-summary{color:var(--muted)}.result-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px;display:flex}.lobby-panel{padding:0;overflow:hidden}.lobby-code{border-bottom:2px solid var(--ink);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.lobby-code div{align-items:center;gap:16px;display:flex}.lobby-code div span{font-size:13px;font-weight:800}.lobby-code strong{letter-spacing:.12em;font-size:clamp(24px,4vw,35px)}.lobby-code p{color:var(--muted);margin:0;font-size:12px}.lobby-content{padding:clamp(16px,2.3vw,26px)}.lobby-game-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.game-choice{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:150px;padding:12px 9px;display:flex}.game-choice.is-selected{box-shadow:inset 0 0 0 3px var(--yellow);background:#fff9df}.game-choice strong{font-size:16px}.game-choice small{color:#5d5952;font-size:11px}.game-symbol{border-radius:12px;place-items:center;width:54px;height:48px;font-size:31px;font-weight:900;display:grid}.game-symbol--auction{color:#bd9200}.game-symbol--ogiri{color:#e44f7e;letter-spacing:2px;background:#ffe5ed;border-radius:50%;font-size:18px}.game-symbol--ng{color:#ec5070;border:2px solid #171717;font-size:23px;transform:rotate(-5deg)}.lobby-summary{border:1px solid var(--line);background:#f7f5f0;border-radius:11px;justify-content:center;gap:0;margin:14px 0;padding:10px;font-size:13px;font-weight:800;display:flex}.lobby-summary span{padding:0 18px}.lobby-summary span+span{border-left:1px solid #bbb7ae}.prompt-picker{grid-template-columns:1fr 1fr;gap:9px;margin:13px 0;display:grid}.prompt-picker select,.prompt-picker input{min-height:40px}.chat-panel{flex-direction:column;min-height:min(680px,100vh - 130px);max-height:calc(100vh - 100px);padding:15px;display:flex;position:sticky;top:12px;overflow:hidden}.chat-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:8px;padding-bottom:11px;display:flex}.chat-heading small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.chat-heading>button,.drawer-heading>button{cursor:pointer;background:0 0;border:0;font-size:28px;line-height:1}.chat-game-notice{text-align:center;background:#fff5d8;border-radius:9px;margin:10px 0 0;padding:7px;font-size:12px;font-weight:800}.chat-messages{overscroll-behavior:contain;flex-direction:column;flex:1;gap:13px;padding:12px 2px;display:flex;overflow:auto}.chat-empty{text-align:center;color:var(--muted);margin:auto;padding:20px 10px}.chat-empty span{font-size:34px}.chat-empty strong{color:var(--ink);display:block}.chat-empty p{font-size:12px}.chat-message{align-items:flex-start;gap:7px;display:flex}.chat-message>div{flex:1;grid-template-columns:1fr auto;min-width:0;display:grid}.chat-message strong{font-size:12px}.chat-message p{overflow-wrap:anywhere;background:#fff;border:1px solid #dad6cf;border-radius:3px 12px 12px;grid-column:1/-1;margin:3px 0 0;padding:8px 10px;font-size:13px}.chat-message time{color:var(--muted);align-self:center;font-size:10px}.chat-message.is-mine p{background:#fff5c9;border-color:#e8cd68}.chat-compose{background:#fff;border:2px solid #bab6af;border-radius:13px;gap:7px;padding:4px;display:flex}.chat-compose input{min-width:0;min-height:39px;box-shadow:none;border:0;outline:none;padding:8px}.chat-compose input:focus-visible{outline:0}.chat-compose:focus-within{outline-offset:2px;outline:3px solid #6b56e8}.send-button{background:var(--yellow);cursor:pointer;border:0;border-radius:50%;width:40px;height:40px;font-size:19px}.chat-footnote{color:var(--muted);text-align:center;margin:8px 0 0;font-size:10px}.chat-fab{display:none}.chat-overlay,.drawer-overlay{z-index:20;position:fixed;inset:0}.overlay-scrim{background:#17171788;border:0;width:100%;position:absolute;inset:0}.mobile-chat{display:none}.participants-drawer{z-index:1;border-radius:20px 20px 0 0;width:min(430px,94vw);padding:18px;position:absolute;top:5vh;bottom:0;right:0;overflow:auto}.drawer-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.player-list--expanded .player-row{padding:9px}.player-list--expanded .player-name strong{font-size:16px}.loading-screen{align-content:center;justify-items:center;gap:12px;min-height:100vh;display:grid}.loading-screen p{font-weight:800}.loading-bar{background:#eee1c7;border-radius:99px;width:180px;height:8px;overflow:hidden}.loading-bar i{background:var(--yellow);border-radius:inherit;width:38%;height:100%;animation:1s infinite alternate loading;display:block}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes pulse{50%{opacity:.35}}@keyframes loading{to{transform:translate(160%)}}@media (width<=1120px){.room-grid{grid-template-columns:minmax(190px,230px) minmax(0,1fr)}.desktop-chat{display:none}.chat-fab{z-index:5;border:3px solid var(--ink);background:var(--paper);width:min(410px,100vw - 28px);box-shadow:3px 3px 0 var(--ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:9px;min-height:54px;font-size:16px;font-weight:900;display:flex;position:fixed;bottom:12px;left:50%;transform:translate(-50%)}.chat-fab b{color:#fff;background:#ed4b50;border-radius:99px;padding:2px 8px;font-size:12px}}@media (width<=760px){.entry-shell,.room-shell{padding:12px 12px 78px}.entry-header .brand,.room-header .brand{font-size:20px}.brand-mark{width:40px;height:38px;font-size:20px}.home-hero{min-height:calc(100dvh - 70px);margin-top:0;padding-top:5px}.hero-chain{margin-top:0}.word-tile{border-width:2px;border-radius:10px;width:56px;height:60px}.word-tile i,.chain-arrow{font-size:17px}.home-hero h1{margin-top:10px;font-size:clamp(34px,9vw,52px)}.home-lead{margin:7px 0 18px}.home-actions{grid-template-columns:1fr;gap:11px;max-width:430px}.button--hero{min-height:66px;font-size:20px}.game-chips{gap:6px;margin:17px 0 8px}.game-chips span{padding:7px 9px;font-size:11px}.letter-trail{opacity:.42}.entry-card{margin:24px auto;padding:20px 18px 24px}.entry-card h1{font-size:28px}.room-header{align-items:flex-start;padding-bottom:10px}.room-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px}.room-code-pill{padding:6px 10px;font-size:13px}.room-code-pill span{display:none}.count-pill{padding:6px 9px;font-size:12px}.room-grid{margin-top:12px;display:block}.players-panel{display:none}.game-heading{margin-bottom:8px}.game-heading h1{font-size:24px}.game-heading .eyebrow{font-size:9px}.mobile-player-strip{justify-content:center;align-items:center;gap:7px;min-height:49px;margin:0 auto 5px;display:flex;overflow-x:auto}.mobile-player-strip>span{border:2px solid var(--ink);background:#fff;border-radius:50%;flex:0 0 40px;place-items:center;height:40px;display:grid}.lobby-panel,.game-card,.results-card{min-height:0;box-shadow:3px 3px 0 var(--ink);border-radius:16px}.lobby-code{padding:11px 13px}.lobby-code div{gap:8px}.lobby-code div span{font-size:10px}.lobby-code strong{font-size:23px}.lobby-code p{text-align:right;max-width:95px;font-size:10px}.lobby-content{padding:13px}.lobby-game-grid{grid-template-columns:1fr;gap:7px}.game-choice{text-align:left;flex-direction:row;justify-content:flex-start;min-height:73px;padding:8px 12px}.game-choice .game-symbol{width:45px;height:43px;font-size:24px}.game-choice strong{flex:1;font-size:15px}.game-choice small{text-align:right;max-width:42%}.lobby-summary{margin:10px 0;padding:8px 2px;font-size:11px}.lobby-summary span{padding:0 8px}.game-card{padding:14px 13px 18px}.game-meta{gap:7px}.phase-badge{padding:6px 11px;font-size:12px}.timer{padding:4px 10px;font-size:12px}.timer strong{font-size:19px}.kana-banner{margin:14px 0 12px;padding:12px 8px}.kana-banner small{font-size:17px}.kana-banner strong{font-size:14px}.bid-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.bid-tile{grid-template-columns:36px minmax(0,1fr) auto}.bid-tile .avatar{width:36px;height:36px}.bid-controls{margin-top:13px;padding:11px}.stepper{gap:5px}.stepper>button:not(.button){width:40px;height:42px}.stepper output{padding:5px;font-size:22px}.stepper .button{flex:1;min-width:0;padding:8px;font-size:14px}.answer-input-row input{font-size:16px}.answer-help{padding:10px 6px;font-size:11px}.answer-form .button{min-height:51px}.judge-controls>div,.vote-controls{gap:7px}.judge-controls .button,.vote-controls .button{min-height:46px;padding:8px 6px;font-size:13px}.prompt-card{margin:13px 0;padding:13px 9px}.prompt-card h2{font-size:22px}.ng-turn{margin:13px 0}.secret-condition{flex-wrap:wrap;gap:7px}.secret-condition p{flex-basis:100%;max-width:none;margin-left:40px}.report-controls{margin-top:13px}.private-review,.review-card{margin-top:13px;padding:18px 12px}.chat-fab{bottom:max(10px, env(safe-area-inset-bottom));min-height:50px}.mobile-chat{z-index:1;left:0;right:0;top:max(24px, env(safe-area-inset-top));min-height:0;max-height:none;padding:18px 16px max(18px, env(safe-area-inset-bottom));border-bottom:0;border-radius:22px 22px 0 0;display:flex;position:absolute;bottom:0}.chat-panel.mobile-chat:before{content:"";background:#9f9b94;border-radius:99px;width:48px;height:5px;position:absolute;top:8px;left:calc(50% - 24px)}.chat-heading{padding-top:6px}.chat-messages{min-height:0}.chat-compose{flex:none}.chat-footnote{margin-bottom:0}.participants-drawer{width:100%;padding-bottom:max(18px, env(safe-area-inset-bottom));border-radius:20px 20px 0 0;top:6vh}}@media (width<=390px){.avatar-parade{gap:0}.avatar--large{width:47px;height:47px}.home-hero h1{font-size:31px}.home-lead{font-size:13px}.game-chips span{padding:6px 7px;font-size:10px}.lobby-code p{display:none}.lobby-code{justify-content:center}.stepper .button{font-size:12px}.room-header .brand{gap:6px;font-size:16px}.room-header .brand-mark{width:34px;height:32px;font-size:17px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.card{box-shadow:2px 2px 0 var(--ink);border-width:1px}.button:hover:not(:disabled){box-shadow:4px 4px 0 var(--ink)}.entry-shell,.room-shell{overflow:visible}.brand-mark{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.brand-mark:after{display:none}.brand-mark>svg{width:100%;height:100%;display:block}.game-chips span{box-shadow:1px 1px 0 var(--ink);align-items:center;gap:7px;display:inline-flex}.game-chips svg{width:25px;height:24px}.icon{flex:none;width:20px;height:20px;display:inline-block}.icon--call{width:18px;height:18px}.icon--clock{width:20px;height:20px}.icon--copy{width:19px;height:19px}.icon--chat{width:22px;height:22px}.icon--send{width:20px;height:20px}.room-code-pill{min-height:42px;box-shadow:1px 1px 0 var(--ink);align-items:center;gap:8px;display:inline-flex}.room-code-pill>span{display:none}.copy-unavailable{color:#8d3036;max-width:112px;font-size:11px;font-weight:800}.sound-toggle{border:2px solid var(--ink);background:var(--paper);min-width:44px;min-height:42px;box-shadow:1px 1px 0 var(--ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.sound-toggle[aria-pressed=false]{color:#6f6960;background:#f0ece3}.sound-toggle .icon{width:19px;height:19px}.settings-panel{background:#fffdf7;border:1px solid #ded8cb;border-radius:14px;margin:18px clamp(13px,2.3vw,26px);padding:14px}.settings-panel h2{margin:0 0 12px;font-size:16px}.settings-fields{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px}.settings-fields label{min-width:0;font-size:12px}.settings-fields input,.settings-fields select{min-height:40px;padding:7px 9px;font-size:14px}.field-error{color:#b12636;font-size:11px;line-height:1.35;display:block}.field-hint{color:var(--muted);font-size:10px;line-height:1.35;display:block}.settings-save-status{min-height:1.4em;color:var(--muted);margin:12px 0 0;font-size:12px;font-weight:800}.settings-save-status--saving{color:#6652c4}.settings-save-status--saved{color:#187548}.settings-save-status--error{color:#b12636}.settings-save-status button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;margin-left:8px;font-weight:900;text-decoration:underline}.auction-icon,.game-symbol svg{width:100%;height:100%}.game-choice{box-shadow:1px 1px 0 var(--ink);position:relative}.game-choice.is-selected{box-shadow:inset 0 0 0 3px var(--yellow), 1px 1px 0 var(--ink)}.choice-check{border:2px solid var(--ink);background:var(--yellow);width:30px;height:30px;box-shadow:1px 1px 0 var(--ink);border-radius:50%;place-items:center;font-size:18px;font-weight:1000;display:grid;position:absolute;top:-10px;right:-8px}.lobby-summary svg{vertical-align:-5px}.copy-room-code{border:1px solid var(--ink);width:38px;height:38px;color:var(--ink);cursor:pointer;background:#fff;border-radius:10px;place-items:center;display:inline-grid}.copy-room-code:hover{background:#fff7cf}.copy-room-code .icon{width:18px;height:18px}.prompt-change{background:#fffdf7;border:1px solid #dfd9cd;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding:12px;display:flex}.prompt-change div{gap:3px;display:grid}.prompt-change small{color:var(--muted);font-size:11px}.prompt-change .button{min-height:42px;padding:8px 12px;font-size:13px}.successful-words{margin-top:14px;padding:17px}.successful-words h2{margin:0 0 10px;font-size:16px}.successful-words ol{gap:7px;margin:0;padding:0;list-style:none;display:grid}.successful-words li{background:#fff;border:1px solid #e3dfd7;border-radius:11px;grid-template-columns:minmax(80px,auto) 1fr auto;align-items:center;gap:6px 12px;min-width:0;padding:9px 12px;display:grid}.successful-word-route{white-space:nowrap;background:#fff3bf;border-radius:999px;padding:5px 9px;font-weight:900}.successful-words li>strong{overflow-wrap:anywhere;min-width:0}.successful-words li>small{color:var(--muted);text-align:right;font-size:11px}.ready-label{color:#246b43;white-space:nowrap;background:#e8f7e8;border-radius:999px;grid-column:2/-1;justify-self:end;padding:3px 7px;font-weight:800}.bid-lock-hint{color:#61532c;background:#fff4cf;border-radius:9px;padding:10px;font-weight:800}.auction-done-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.auction-done-row .button{flex:none;min-width:118px;min-height:44px}.auction-done-row>small{color:var(--muted);flex:1;font-size:11px}.chat-empty>.icon{width:34px;height:34px;margin:0 auto 8px}.send-button{place-items:center;display:grid}.send-button .icon{width:20px;height:20px}.chat-fab{box-shadow:2px 2px 0 var(--ink)}.chat-overlay{z-index:40;isolation:isolate}.chat-overlay .overlay-scrim{z-index:0}.mobile-chat{z-index:1}@media (width<=1120px){.mobile-chat{z-index:1;top:max(20px, env(safe-area-inset-top));right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));width:min(620px,100vw - 32px);min-height:0;max-height:none;padding:20px 20px max(18px, env(safe-area-inset-bottom));border-radius:20px;display:flex;position:absolute;left:auto}.chat-panel.mobile-chat:before{content:"";background:#a29b90;border-radius:99px;width:46px;height:5px;position:absolute;top:8px;left:calc(50% - 23px)}.chat-panel.mobile-chat .chat-heading{padding-top:8px}.chat-panel.mobile-chat .chat-messages{overscroll-behavior:contain;min-height:0}.chat-panel.mobile-chat .chat-compose{flex:none}.chat-panel.mobile-chat .chat-footnote{margin-bottom:0}.room-header-actions{flex-wrap:wrap;justify-content:flex-end}}:root{--shadow:1px 1px 0 var(--ink)}.button,.button--small,.button--good,.button--bad,.room-code-pill,.count-pill,.sound-toggle,.chat-fab{box-shadow:var(--shadow)}.room-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.room-header-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.settings-fields{align-items:start}.settings-fields label{grid-template-rows:auto 40px minmax(32px,auto) 14px;align-content:start}.settings-fields label.setting-number-field,.settings-fields label.setting-control-field{grid-template-rows:auto 40px 14px minmax(32px,auto)}.field-error,.field-error-slot{min-height:32px;margin:0;font-size:11px;line-height:1.35;display:block}.field-error-slot{visibility:hidden}.field-hint{min-height:14px}.field-hint--empty{visibility:hidden}.start-ready-hint{min-height:18px;margin-top:8px}.start-ready-hint.is-hidden{visibility:hidden}.lobby-summary{flex-wrap:wrap;gap:4px 0}.lobby-summary--rules{justify-content:flex-start;margin-top:18px}.game-choice:disabled{cursor:default;opacity:1}.game-choice:disabled:not(.is-selected){background:#faf8f3;border-color:#cbc6bc}.auction-consensus{color:#246b43;text-align:center;background:#e8f7e8;border-radius:10px;margin:-4px 0 14px;padding:9px 12px;font-size:13px;font-weight:800}@media (width<=760px){.room-header{align-items:flex-start}.settings-fields label{grid-template-rows:auto 40px minmax(32px,auto) 14px}.settings-fields label.setting-number-field,.settings-fields label.setting-control-field{grid-template-rows:auto 40px 14px minmax(32px,auto)}.settings-panel{margin:12px;padding:12px}.settings-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.room-header-actions .sound-toggle{width:42px;padding:6px}.room-header-actions .sound-toggle span{display:none}.chat-overlay{z-index:40}.mobile-chat{top:max(24px, env(safe-area-inset-top));width:auto;max-height:none;padding:18px 16px max(18px, env(safe-area-inset-bottom));border-bottom:0;border-radius:22px 22px 0 0;bottom:0;left:0;right:0}.successful-words{padding:12px}.successful-words li{grid-template-columns:1fr auto;gap:5px 9px;padding:8px}.successful-word-route{grid-column:1/-1;justify-self:start}.successful-words li>small{grid-area:2/2}.auction-done-row{align-items:stretch}.prompt-change{flex-direction:column;align-items:stretch}.prompt-change .button{width:100%}}@media (width<=390px){.settings-fields{grid-template-columns:1fr}.settings-fields>.button{grid-column:auto}}.help-button,.help-entry-button{border:1px solid var(--ink);min-height:38px;color:var(--ink);box-shadow:var(--shadow);font:inherit;cursor:pointer;white-space:nowrap;background:#fff8d7;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:900}.help-button:hover,.help-entry-button:hover{background:var(--yellow)}.help-entry-button--loading{z-index:2;position:fixed;top:16px;right:16px}.help-overlay{z-index:80;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));place-items:center;display:grid;position:fixed;inset:0}.help-overlay .overlay-scrim{cursor:default;background:#17171780;border:0;position:absolute;inset:0}.help-dialog{z-index:1;background:#fffdf7;flex-direction:column;width:min(640px,100%);max-height:min(720px,100dvh - 32px);padding:0;display:flex;position:relative;overflow:hidden}.help-heading{border-bottom:1px solid #ddd6c8;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px 13px;display:flex}.help-heading .eyebrow{margin:0 0 3px}.help-heading h2{margin:0;font-size:28px}.help-heading>button,.chat-heading-actions>button:last-child,.drawer-actions>button:last-child{border:1px solid var(--ink);width:36px;height:36px;color:var(--ink);cursor:pointer;background:#fff;border-radius:50%;place-items:center;font-size:23px;line-height:1;display:grid}.help-tabs{scrollbar-width:thin;border-bottom:1px solid #e2ddd2;gap:7px;padding:12px 18px 0;display:flex;overflow-x:auto}.help-tabs button{min-height:37px;color:var(--ink);font:inherit;cursor:pointer;background:#f4efe5;border:1px solid #bdb5a7;border-bottom:0;border-radius:10px 10px 0 0;flex:none;padding:7px 12px;font-size:13px;font-weight:900}.help-tabs button.is-selected{background:var(--yellow);border-color:var(--ink);position:relative}.help-content{overscroll-behavior:contain;color:#39332e;padding:18px 22px 24px;line-height:1.65;overflow-y:auto}.help-content h3{margin:19px 0 6px;font-size:16px}.help-content p{margin:0}.help-content ol,.help-content ul{margin:6px 0 0;padding-left:1.4em}.help-content li+li{margin-top:4px}.help-purpose{font-size:16px;font-weight:800}.help-example{background:#fff5c8;border:1px dashed #887d6c;border-radius:11px;margin-top:17px;padding:12px 14px}.help-example strong{font-size:12px}.help-content details{background:#fff;border:1px solid #ded8cb;border-radius:10px;margin-top:15px;padding:10px 12px}.help-content summary{cursor:pointer;font-weight:900}.help-note{color:#655a4e;font-size:13px;font-weight:800;margin-top:17px!important}.chat-heading-actions,.drawer-actions{align-items:center;gap:7px;display:flex}.chat-heading-actions .help-button,.drawer-actions .help-button{min-height:34px;padding:5px 9px;font-size:12px}@media (width<=760px){.room-header-actions .help-button{order:-1}.help-dialog{max-height:calc(100dvh - 20px)}.help-heading{padding:17px 16px 11px}.help-heading h2{font-size:24px}.help-tabs{padding-left:12px;padding-right:12px}.help-content{padding:15px 16px 20px}.help-button{min-height:36px;padding:6px 10px;font-size:12px}}@media (width<=390px){.room-header-actions .help-button{align-items:center;display:inline-flex}.help-dialog{width:100%}.help-tabs{gap:5px}.help-tabs button{padding:7px 10px;font-size:12px}.help-content{font-size:14px}}
