.blank-canvas{min-height:100%;padding:72px 28px calc(var(--mobile-safe-area-height) + 34px)}.word-game-web{background:#ebe3fa;margin:0}.word-game{--cream:#fff8e9;--ink:#260b39;--purple:#8121d2;--purple-edge:#4d1387;--lavender:#f0e1fb;--purple-soft:#e3c5f8;--lime:#bafa54;--lime-edge:#4a9a14;--gutter:19px;width:100%;min-width:0;color:var(--ink);background:var(--cream);font-synthesis:weight;-webkit-tap-highlight-color:transparent;font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,system-ui,sans-serif;line-height:1.25}.word-game-web .word-game{max-width:440px;margin:0 auto}.word-game-preview{background:#fff8e9}.word-game *,.word-game :before,.word-game :after{box-sizing:border-box}.word-game h1,.word-game p,.word-game ul{margin:0}.word-game ul{padding:0;list-style:none}.word-game img{-webkit-user-select:none;user-select:none;max-width:100%;display:block}.word-game button,.word-game input{font:inherit;color:inherit}.word-game button{cursor:pointer}.word-game button,.game-word-surface{--press-depth:2px;--press-scale:.96;touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:translate .32s cubic-bezier(.2,1.55,.42,1),scale .32s cubic-bezier(.2,1.55,.42,1),box-shadow .23s ease-out;translate:0;scale:1}.word-game button:active:not(:disabled),.game-word-surface[data-pressed]{translate:0 var(--press-depth);scale:var(--press-scale);transition-duration:65ms;transition-timing-function:ease-out}.word-game button:disabled{cursor:default}.word-game button:focus-visible,.word-game input:focus-visible{outline-offset:3px;outline:3px solid #461272}.game-screen{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) var(--gutter) max(26px, env(safe-area-inset-bottom));flex-direction:column;gap:15px;display:flex}.word-game-preview .game-screen{min-height:var(--phone-height,852px);padding-top:max(46px, var(--mobile-safe-top,46px));padding-bottom:32px}.game-screen h1{text-align:center;letter-spacing:.025em;-webkit-text-stroke:.025em currentColor;font-size:clamp(36px,12.3vw,54px);font-weight:900;line-height:1.12}.game-footer{gap:10px;margin-top:auto;padding-top:10px;display:grid}.word-game .game-primary,.word-game .game-secondary{--press-depth:6px;--press-scale:.985;color:#fff;background:var(--purple);min-height:60px;box-shadow:inset 0 -7px var(--purple-edge);border:0;border-radius:20px;padding:8px 14px 15px;font-size:27px;font-weight:900;display:block}.word-game .game-primary{width:100%;min-height:72px;font-size:clamp(24px,7.8vw,33px)}.word-game .game-secondary{color:#57208a;background:#e9cffb;min-width:84px;min-height:53px;padding-bottom:13px;font-size:20px;box-shadow:inset 0 -5px #c297e9}.word-game .game-primary:active:not(:disabled),.word-game .game-secondary:active:not(:disabled){box-shadow:inset 0 -2px var(--purple-edge)}.word-game .game-primary:disabled,.word-game .game-secondary:disabled{color:#5b3c6f;background:#e8d7ef;box-shadow:inset 0 -5px #d7c3e1}.game-notice{text-align:center;color:#842047;font-size:14px;font-weight:700}.game-entry{justify-content:center;align-items:center;gap:15px}.game-entry-art{width:min(92%,316px)}.game-entry h1{font-size:clamp(44px,13vw,65px)}.game-entry-actions{gap:16px;width:100%;margin-top:32px;display:grid}.game-join{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.game-admin-form{gap:10px;display:grid}.game-admin-form label{font-weight:900}.game-admin-form .game-input{min-height:52px}.game-admin-form .game-room-exit{justify-self:center}.word-game .game-input{width:100%;min-width:0;caret-color:var(--purple);background:#fff;border:2px solid #c9a5ea;border-radius:14px;padding:8px 12px;font-size:18px;font-weight:800;display:block}.word-game .game-input::placeholder{color:#775d85;opacity:1}.word-game .game-input:focus{border-color:var(--purple)}.game-brand{letter-spacing:.015em;-webkit-text-stroke:.018em currentColor;justify-content:center;align-items:center;gap:4px;height:81px;font-size:clamp(25px,8.8vw,40px);font-weight:900;display:flex}.game-brand img{object-fit:contain;width:42%;max-height:96px}.game-lobby{gap:15px}.game-lobby h1{margin:0 0 2px}.game-room-actions{justify-content:center;align-items:center;gap:6px;display:flex}.word-game .game-room-exit{color:#694783;background:0 0;border:0;border-radius:9px;min-width:44px;min-height:44px;font-size:14px;font-weight:700}.word-game .game-room-code{background:#fffdf8;border:2px solid #e6c9f7;border-radius:13px;justify-content:center;align-self:center;align-items:center;gap:9px;min-height:42px;padding:4px 12px;font-size:14px;font-weight:800;display:flex}.game-room-code strong{letter-spacing:.12em;font-size:18px}.game-room-code svg{width:17px;height:17px}.game-copy-field{opacity:0;pointer-events:none;position:fixed;top:0;left:0}.game-setting{background:var(--lavender);border-radius:16px;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px 7px 12px;font-size:clamp(15px,4.7vw,20px);font-weight:900;display:flex}.game-setting>strong{flex-shrink:0}.game-stepper,.game-segments{align-items:center;gap:7px;display:flex}.game-stepper>span{text-align:center;min-width:25px;font-size:26px;font-weight:900}.word-game .game-stepper button,.word-game .game-segments button{background:var(--purple-soft);border:0;border-radius:10px;place-items:center;min-width:44px;min-height:44px;padding:3px 6px;font-weight:900;display:grid}.game-stepper svg{width:23px;height:23px}.word-game .game-stepper button:disabled{opacity:.5}.game-segments{background:#fff;border:1px solid #ddc1f1;border-radius:12px;gap:0}.word-game .game-segments button{background:0 0;font-size:clamp(13px,4vw,17px)}.word-game .game-segments button[aria-pressed=true]{background:var(--purple);color:#fff}.word-game .game-lobby-players{--avatar-size:72px;gap:13px;padding:5px;display:grid}.game-player-row,.game-seat{grid-template-columns:76px minmax(0,1fr);align-items:center;gap:13px;min-height:77px;display:grid}.word-game .game-name{border-radius:13px;min-height:60px;padding:8px 11px;font-size:28px;font-weight:900}.game-name-static{overflow-wrap:anywhere;background:#fffdf8;border:2px solid #e6d0f2;align-items:center;display:flex}.game-seat{color:#715a80;font-weight:700}.game-seat-icon{aspect-ratio:1;color:#744496;background:#f7eafb;border:2px dashed #b88ed6;border-radius:50%;place-items:center;width:68px;display:grid}.game-seat-icon svg{width:23px;height:23px}.game-avatar{width:var(--avatar-size,57px);aspect-ratio:1;vertical-align:middle;flex:none;display:inline-block;position:relative}.game-avatar-image{background:url(/assets/game/avatars.png) 0 0/372.816% 248.544% no-repeat;position:absolute;inset:0}.word-game .game-avatar-edit{background:0 0;border:0;border-radius:50%;place-items:center;width:74px;height:74px;padding:0;display:inline-grid;position:relative}.game-edit-mark,.game-avatar-mark{background:#fff;border:2px solid #fff;border-radius:50%;place-items:center;width:23px;height:23px;display:grid;position:absolute;bottom:-2px;right:-2px;box-shadow:0 1px 3px #3d125d43}.game-avatar-mark{color:#fff;background:#459a13}.game-avatar-mark svg{width:16px;height:16px}.game-avatar-options{--avatar-size:min(8vw, 36px);background:#f5e6fd;border-radius:16px;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;margin-top:8px;padding:6px;display:grid}.word-game .game-avatar-choice{background:0 0;border:2px solid #0000;border-radius:12px;min-height:43px;padding:0}.word-game .game-avatar-choice[aria-pressed=true]{border-color:var(--purple);background:#fff}.game-round-number{background:var(--purple-soft);border-radius:30px;align-self:center;padding:7px 20px;font-size:22px;font-weight:900}.game-writing,.game-reveal,.game-victory{padding-top:max(36px, env(safe-area-inset-top))}.game-clock{justify-items:center;gap:10px;padding:0 6px;display:grid}.game-clock-time{letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-family:ui-rounded,system-ui,sans-serif;font-size:clamp(56px,20.5vw,84px);font-weight:950}.game-progress{appearance:none;background:var(--purple-soft);width:100%;height:24px;color:var(--purple);border:0;border-radius:20px;overflow:hidden}.game-progress::-webkit-progress-bar{background:var(--purple-soft);border-radius:20px}.game-progress::-webkit-progress-value{background:var(--purple);border-radius:20px}.game-progress::-moz-progress-bar{background:var(--purple);border-radius:20px}.game-clock-low .game-clock-time{color:#a52954}.game-clock-low .game-progress::-webkit-progress-value{background:#ca416c}.game-clock-low .game-progress::-moz-progress-bar{background:#ca416c}.game-write-word{justify-items:center;gap:15px;margin-top:clamp(12px,4.8vh,42px);display:grid}.game-current-player{--avatar-size:35px;background:#ffe6a3;border-radius:15px;align-items:center;gap:6px;max-width:90%;padding:5px 14px 5px 9px;font-size:21px;font-weight:900;display:inline-flex}.game-current-player span{overflow-wrap:anywhere}.word-game .game-word-input{border-color:var(--purple);border-radius:18px;min-height:70px;padding:8px 15px;font-size:32px}.word-game .game-word-input:disabled{opacity:1;color:var(--ink);background:#f4e8ff}.game-status{text-align:center;gap:11px;font-size:21px;font-weight:900;display:grid}.game-writing .game-status{margin-top:clamp(6px,2.6vh,22px)}.word-game .game-player-group{flex-wrap:wrap;justify-content:center;gap:11px 25px;display:flex}.game-player-group li{justify-items:center;gap:4px;min-width:63px;max-width:90px;display:grid}.game-player-group .game-avatar{--avatar-size:60px}.game-player-label{overflow-wrap:anywhere;width:100%;font-size:16px;font-weight:900}.game-reveal h1{margin:clamp(10px,4.2vh,37px) 0 clamp(14px,4.6vh,36px)}.word-game .game-reveal-list{perspective:800px;gap:21px;padding:0 1px;display:grid}.game-word-card{--card-bg:#e8d0fa;--card-edge:#ac60e5;--press-depth:5px;--press-scale:.985;background:var(--card-bg);min-height:110px;box-shadow:inset 0 -7px var(--card-edge);animation:game-flip .48s cubic-bezier(.2,.75,.23,1) var(--reveal-delay) both;border-radius:21px;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);align-items:stretch;gap:12px;padding:13px 15px 20px;display:grid}.game-word-card[data-pressed]{box-shadow:inset 0 -2px var(--card-edge)}.game-tone-1{--card-bg:#fff0a3;--card-edge:#e6b516}.game-tone-2{--card-bg:#c7edfe;--card-edge:#53b8e9}.game-tone-3{--card-bg:#ddf5af;--card-edge:#8ab643}.game-tone-4{--card-bg:#f9d3e4;--card-edge:#dd81af}.game-tone-5{--card-bg:#b9f2e5;--card-edge:#52c1aa}.game-tone-6{--card-bg:#ffd8af;--card-edge:#d78942}.game-tone-7{--card-bg:#d4d8ff;--card-edge:#8292e1}.game-tone-8{--card-bg:#f7d2c9;--card-edge:#d47e72}.game-tone-9{--card-bg:#eaf2b7;--card-edge:#9aa940}.game-tone-blank{--card-bg:#f0e7ed;--card-edge:#c6b2c3}.game-word-author{border-right:2px solid var(--card-edge);overflow-wrap:anywhere;--avatar-size:56px;align-items:center;gap:6px;padding-right:8px;font-size:clamp(18px,6vw,27px);font-weight:900;display:flex}.game-result-word{text-align:center;overflow-wrap:anywhere;animation:game-word-pop .45s ease-out calc(var(--reveal-delay) + 45ms) both;align-self:center;place-items:center;font-size:clamp(24px,9vw,40px);font-weight:900;line-height:1.11;display:grid}.game-tone-blank .game-result-word{font-size:22px}.game-victory{background:#fff8bc;gap:14px}.game-victory h1{font-size:clamp(44px,14.3vw,62px)}.game-victory-art{object-fit:contain;width:calc(100% + 18px);max-width:none;max-height:207px;margin-inline:-9px;animation:.53s cubic-bezier(.24,1.5,.6,1) both game-landing}.game-winning-word{--press-depth:7px;--press-scale:.965;background:var(--lime);min-height:146px;box-shadow:inset 0 -10px var(--lime-edge);text-align:center;overflow-wrap:anywhere;-webkit-text-stroke:.025em currentColor;border-radius:24px;place-items:center;margin:20px 2px 4px;padding:9px 16px 19px;font-size:clamp(57px,21vw,88px);font-weight:900;line-height:1.05;animation:.46s cubic-bezier(.24,1.5,.6,1) 95ms both game-landing;display:grid}.game-winning-word[data-pressed]{box-shadow:inset 0 -3px var(--lime-edge)}.game-winning-word,.game-result-word{word-break:break-all}@keyframes game-flip{0%{opacity:0;transform:rotateX(-74deg)translateY(12px)}68%{opacity:1;transform:rotateX(8deg)translateY(-3px)}to{opacity:1;transform:none}}@keyframes game-word-pop{0%{opacity:0;transform:translateY(9px)scale(.86)}65%{opacity:1;transform:translateY(-2px)scale(1.06)}to{opacity:1;transform:none}}@keyframes game-landing{0%{opacity:0;transform:scale(.82)translateY(8px)}to{opacity:1;transform:none}}@media (width<=350px){.word-game{--gutter:13px}.game-brand img{width:36%}.game-word-author{--avatar-size:38px}}@media (height<=740px){.game-reveal h1{margin-bottom:15px}.game-word-card{min-height:90px}.game-word-author{--avatar-size:48px}.game-victory-art{max-height:169px}.game-winning-word{min-height:108px;margin-top:8px}}.game-large-room .game-lobby-players{--avatar-size:49px;order:1;gap:8px}.game-large-room .game-lobby .game-footer{order:2}.game-large-room :is(.game-player-row,.game-seat){grid-template-columns:52px minmax(0,1fr);min-height:52px}.game-large-room :is(.game-avatar-edit,.game-seat-icon){width:50px;height:50px}.game-large-room .game-name{min-height:45px;font-size:20px}.game-large-room .game-player-group{gap:8px}.game-large-room .game-player-group li{width:calc(20% - 6.4px);min-width:0}.game-large-room .game-player-group .game-avatar{--avatar-size:40px}.game-large-room .game-player-label{font-size:14px}.game-large-room .game-word-card{min-height:82px}.game-large-room .game-word-author{--avatar-size:42px}.word-game-web .game-large-room :is(.game-lobby,.game-reveal) .game-footer{bottom:env(safe-area-inset-bottom);z-index:1;background:var(--cream);box-shadow:0 -8px 10px var(--cream);position:sticky}@media (prefers-reduced-motion:reduce){.word-game *,.word-game :before,.word-game :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}}
