.reference-app{color:#080808;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.reference-app,.reference-app *{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100dvh}.reference-app button,.reference-app input,.reference-app textarea{font:inherit}.reference-app button{cursor:pointer}.reference-app button:disabled{cursor:not-allowed;opacity:.48}.reference-app button:focus-visible,.reference-app a:focus-visible,.reference-app input:focus-visible{outline-offset:3px;outline:3px solid #1f96d7}.reference-app{--ink:#080808;--muted:#7f7f7f;--line:#eee;--gold:#ffb32e;isolation:isolate;background:radial-gradient(76% 24% at 50% 102%,#ffb053d6,#0000 69%),linear-gradient(#fff 0% 68%,#fffaf6 84%,#fff5e9 100%);grid-template-rows:58px minmax(0,1fr);min-height:100dvh;display:grid;position:relative;overflow:hidden}.reference-app:after{z-index:-1;content:"";background:#292929;height:2px;position:absolute;bottom:0;left:0;right:0}.reference-night:before{z-index:0;content:"";pointer-events:none;opacity:.86;background-image:radial-gradient(circle at 8% 22%,#fff 0 1px,#0000 1.6px),radial-gradient(circle at 18% 7%,#ffffffbf 0 1px,#0000 1.5px),radial-gradient(circle at 28% 18%,#fff 0 1.4px,#0000 2px),radial-gradient(circle at 42% 8%,#ffffffdb 0 1px,#0000 1.6px),radial-gradient(circle at 57% 25%,#fff 0 1px,#0000 1.6px),radial-gradient(circle at 67% 12%,#fffc 0 1.4px,#0000 2px),radial-gradient(circle at 78% 26%,#fff 0 1px,#0000 1.6px),radial-gradient(circle at 92% 9%,#ffffffe6 0 1px,#0000 1.5px);background-size:210px 165px;animation:18s linear infinite alternate reference-star-drift;position:absolute;inset:0 0 42%}.reference-app.reference-night{color:#0c1017;background:radial-gradient(circle at 87% 11%,#fffffff0 0 1px,#0000 2px),radial-gradient(circle at 76% 19%,#fffc 0 1px,#0000 2px),radial-gradient(circle at 13% 9%,#ffffffbf 0 1px,#0000 2px),radial-gradient(circle at 20% 28%,#ffffffb8 0 1px,#0000 2px),radial-gradient(circle at 46% 7%,#fffc 0 1px,#0000 2px),radial-gradient(78% 24% at 50% 102%,#ffb053d6,#0000 69%),linear-gradient(#245d8f 0%,#8cbee5 29%,#f9fdff 57%,#fff 69%,#fffaf6 85%,#fff0db 100%)}.reference-header{z-index:15;color:currentColor;justify-content:space-between;align-items:center;padding:0 clamp(16px,2.5vw,34px);display:flex;position:relative}.reference-wordmark{color:inherit;letter-spacing:-.035em;align-items:center;gap:7px;font-size:13px;text-decoration:none;display:inline-flex}.reference-wordmark strong{font-weight:790}.reference-wordmark span{color:#919191;font-size:16px}.reference-wordmark b{color:#777;font-weight:600}.reference-night .reference-wordmark b,.reference-night .reference-wordmark span{color:#ffffffc9}.reference-night .reference-wordmark{color:#fff}.reference-header nav{align-items:center;gap:19px;display:flex}.reference-header nav button{color:inherit;opacity:.88;background:0 0;border:0;padding:4px 0;font-size:10px}.reference-header nav button:hover{opacity:1;text-underline-offset:4px;text-decoration:underline}.reference-home{z-index:24;color:#111;background:#ffffffdb;border:1px solid #ececec;border-radius:999px;place-items:center;width:27px;height:27px;padding:0;transition:transform .16s,background .16s;display:grid;position:fixed;top:50%;left:9px;transform:translateY(-50%);box-shadow:0 2px 9px #0c0c0c06}.reference-home:hover{background:#fff;transform:translateY(-50%)scale(1.06)}.reference-home svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:12px;height:12px}.reference-night .reference-home{color:#1a2631;border-color:#ffffff75}.reference-stage{z-index:1;place-items:center;min-height:0;padding:10px 22px 106px;display:grid;position:relative;overflow:hidden}.game-stage,.setup-stage{align-items:center}.phase-stack,.setup-flow,.finding-stage,.moon-only,.cinematic-copy{z-index:2;text-align:center;justify-items:center;width:min(100%,690px);display:grid;position:relative}.phase-stack{gap:16px}.setup-flow{gap:17px}.stage-copy{justify-items:center;gap:9px;display:grid}.stage-copy h1{letter-spacing:-.07em;margin:0;font-size:clamp(29px,3.05vw,40px);font-weight:760;line-height:.98}.stage-copy p{color:#6f6f6f;max-width:430px;margin:0;font-size:13px;line-height:1.42}.reference-night .stage-copy p{color:#3f4e5c}.compact-copy h1{letter-spacing:-.04em;font-size:16px}.compact-copy p{color:#979797;font-size:10px}.primary-pill,.secondary-pill,.gold-pill{border:0;border-radius:999px;min-height:37px;padding:9px 19px;font-size:10px;font-weight:710;transition:transform .18s,filter .18s,background .18s}.primary-pill{color:#fff;background:#050505}.secondary-pill{color:#676767;background:#ffffffb8;border:1px solid #efefef}.gold-pill{color:#1f1708;background:linear-gradient(135deg,#ffcd4c,#f7a317);box-shadow:0 7px 15px #e48e1e30}.primary-pill:hover:not(:disabled),.gold-pill:hover:not(:disabled),.secondary-pill:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-2px)}.small-pill{min-height:32px;padding:7px 16px;font-size:9px}.stage-actions{justify-content:center;align-items:center;gap:9px;display:flex}.setup-card{text-align:left;background:#ffffffa8;border:1px solid #ececec;border-radius:18px;width:min(100%,283px);padding:12px;box-shadow:0 6px 20px #1c130703}.setup-card h2{letter-spacing:-.04em;margin:0 0 8px;font-size:13px}.mode-card{padding-bottom:9px}.mode-choice{color:#838383;text-align:left;background:0 0;border:0;border-radius:9px;justify-items:start;gap:5px;width:100%;padding:11px 9px;font-size:10px;display:grid}.mode-choice span{font-size:14px}.mode-choice small{color:inherit;font-size:9px}.mode-choice.is-selected{color:#fff;background:#050505}.setup-grid{grid-template-columns:1fr 1fr;gap:8px;width:min(100%,430px);display:grid}.player-count-card,.role-list-card{width:100%;min-height:121px}.player-count-card{text-align:center;justify-items:center;display:grid}.player-count-card h2{justify-self:start}.count-control{grid-template-columns:34px 1fr 34px;align-items:center;gap:9px;width:100%;display:grid}.count-control strong{border:1px solid #eee;border-radius:9px;place-items:center;min-height:37px;font-size:13px;display:grid}.count-control button{color:#fff;background:#050505;border:0;border-radius:12px;width:31px;height:37px;font-size:20px;line-height:1}.count-control button:last-child{background:linear-gradient(135deg,#f9a631,#ed8931)}.player-count-card>small{color:#999;margin-top:5px;font-size:9px}.role-list-card p{color:#656565;margin:0 0 8px;font-size:10px}.explain-toggle{background:#ffffff94;border:1px solid #ededed;border-radius:999px;align-items:center;gap:8px;min-height:32px;padding:0 14px;font-size:10px;display:inline-flex}.explain-toggle input{accent-color:#111;width:12px;height:12px}.setup-actions{gap:8px;display:flex}.player-strip{flex-wrap:wrap;justify-content:center;gap:9px;max-width:100%;display:flex}.player-tile{color:#333;background:#ffffff96;border:1px solid #eee;border-radius:14px;place-items:center;gap:7px;width:61px;min-height:60px;padding:8px 6px;font-size:9px;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;position:relative;overflow:hidden}.player-tile:not(:disabled):hover,.player-tile.is-selected{border-color:currentColor;transform:translateY(-3px);box-shadow:0 7px 20px #1e1e1e1a}.player-tile i,.finding-card>i{background:var(--accent,#ffbc34);border-radius:50%;width:12px;height:12px;display:block}.player-tile small{color:#c05b5b;font-size:7px;position:absolute;bottom:3px;right:4px}.player-tile.is-out{opacity:.42;filter:grayscale()}.accent-1{--accent:#ffdd42}.accent-2{--accent:#52c0ef}.accent-3{--accent:#ee4ee5}.accent-4{--accent:#c9fb43}.accent-5{--accent:#ff565d}.accent-6{--accent:#ff9457}.meet-stage{gap:12px;transform:translateY(-3vh)}.meet-stage .stage-copy p{font-size:10px}.speech-stack{justify-items:center;gap:8px;margin-top:2px;display:grid}.speech-stack p,.speech-stack strong{border-radius:16px;margin:0;padding:10px 12px;font-size:10px;font-weight:500;line-height:1.4}.speech-stack p{background:#ffffffa6;border:1px solid #efefef}.speech-stack strong{color:#fff;background:#050505;font-weight:500}.role-stage{gap:17px;transform:translateY(-1vh)}.role-stage .stage-copy h1{letter-spacing:-.04em;font-size:13px}.role-card{text-align:center;background:linear-gradient(#ffffffeb 0%,#fff 52%,#6dcaff 100%);border:1px solid #ececec;border-radius:16px;width:min(100%,184px);min-height:193px;display:grid;overflow:hidden;box-shadow:0 10px 24px #47b9f31f}.role-card>.role-symbol{color:#56bef0;padding-top:17px;font-size:23px;line-height:1}.role-card>h2{letter-spacing:-.04em;margin:9px 0 0;font-size:13px}.role-card-glow{background:linear-gradient(#0000,#4dbef4e0 42%,#58c0f3);align-content:end;justify-items:center;gap:10px;min-height:106px;margin-top:19px;padding:15px 13px 13px;display:grid}.role-card-glow p{margin:0;font-size:9px;line-height:1.4}.detail-card{text-align:left;min-height:208px}.detail-card>h2{margin:16px 15px 0;font-size:13px}.role-detail{min-height:57px;margin:11px 15px 0;font-size:9px;line-height:1.38}.detail-card .role-card-glow{align-content:center;justify-items:start;min-height:87px;margin-top:0;padding:10px 15px 12px}.detail-card .role-card-glow h3{margin:0;font-size:13px}.detail-card .role-card-glow .small-pill{justify-self:center}.night-turn{transform:translateY(-2vh)}.night-turn .stage-copy p,.vote-stage .stage-copy p{color:var(--ink);letter-spacing:-.055em;font-size:clamp(17px,2.05vw,23px);font-weight:690}.reference-night .night-turn .stage-copy p{color:#10151d}.voice-prompt{color:#777;max-width:360px;margin:0;font-size:10px;line-height:1.45}.examples{color:#999;margin:-6px 0 0;font-size:9px;line-height:1.9}.potion-choice{background:#ffffffa6;border:1px solid #eee;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:10px;display:inline-flex}.potion-choice input{accent-color:#050505}.discussion-stage,.vote-stage{gap:15px;transform:translateY(-2vh)}.vote-stage .stage-copy h1{font-size:clamp(29px,3.05vw,40px)}.cinematic-copy{align-self:center;transform:translateY(-3vh)}.cinematic-copy h1{letter-spacing:-.07em;margin:0;font-size:clamp(29px,3.5vw,40px)}.moon-only,.finding-stage{align-self:center}.finding-card{background:#ffffffd1;border:1px solid #ededed;border-radius:16px;align-content:center;justify-items:center;gap:11px;width:136px;min-height:137px;padding:13px;display:grid}.finding-card h2{letter-spacing:-.045em;margin:0;font-size:16px}.finding-card strong{font-size:10px;font-weight:650}.finding-card p{margin:0;font-size:8px;line-height:1.4}.pause-card h1{font-size:26px}.end-stage{gap:12px;transform:translateY(-2vh)}.end-stage .stage-copy h1{font-size:clamp(31px,3.5vw,42px)}.end-stage .stage-copy p{color:#555;font-size:13px}.survival-copy{color:#777;margin:6px 0 -4px;font-size:12px}.end-stage>h2{letter-spacing:-.04em;text-transform:uppercase;margin:0;font-size:20px}.fireworks{pointer-events:none;width:440px;height:265px;position:absolute;top:-162px;left:50%;transform:translate(-50%)}.fireworks i{filter:drop-shadow(0 0 6px #fffffff2);opacity:0;background:repeating-conic-gradient(#fffffff5 0deg 1deg,#0000 1.5deg 11deg);border-radius:50%;width:130px;height:130px;animation:2.1s ease-out infinite reference-firework-burst;position:absolute;-webkit-mask-image:radial-gradient(circle,#0000 0 18%,#000 20% 22%,#0000 24% 100%);mask-image:radial-gradient(circle,#0000 0 18%,#000 20% 22%,#0000 24% 100%)}.fireworks i:first-child{top:15px;left:34px}.fireworks i:nth-child(2){animation-delay:-.7s;top:-10px;right:36px;transform:scale(1.2)}.fireworks i:nth-child(3){animation-delay:-1.3s;top:75px;left:166px;transform:scale(.72)}.reference-moon{z-index:1;aspect-ratio:1;background:radial-gradient(circle at 31% 26%,#ffd974f2 0 8%,#0000 9%),radial-gradient(circle at 62% 39%,#d567076b 0 15%,#0000 16%),radial-gradient(circle at 43% 67%,#ffe6956b 0 13%,#0000 14%),radial-gradient(circle at 76% 73%,#c95c0361 0 9%,#0000 10%),radial-gradient(circle at 48% 48%,#ffc34a,#f38d13 72%);border-radius:50%;width:clamp(51px,5vw,68px);animation:5s ease-in-out infinite reference-moon-breathe;display:block;position:absolute;bottom:clamp(25px,5vh,54px);left:50%;transform:translate(-50%);box-shadow:0 6px 17px #f18d1761,inset 3px 4px 7px #ffe9996b,inset -4px -6px 7px #b44d0447}.reference-moon.is-large{width:clamp(110px,14vw,152px);animation-name:large-moon-breathe;position:relative;bottom:auto;transform:none}.reference-night .reference-moon{opacity:.82}.vote-result-stage{gap:17px;transform:translateY(-2vh)}.vote-result-stage .stage-copy p{color:var(--ink);letter-spacing:-.055em;font-size:clamp(17px,2.05vw,23px);font-weight:690}.vote-result-strip .player-tile{cursor:default}.vote-result-strip .player-tile.is-eliminated{border-color:#ec515794;box-shadow:0 8px 22px #dc434a29}.vote-count{color:#444;background:#fff;border:1px solid #efefef;border-radius:50%;place-items:center;min-width:19px;min-height:19px;font-size:9px;font-weight:500;display:grid;position:absolute;bottom:-25px;left:50%;transform:translate(-50%)}.vote-outcome{color:#fff;background:linear-gradient(135deg,#fb7373,#e64550);border-radius:999px;margin:16px 0 0;padding:9px 14px;font-size:10px;box-shadow:0 8px 18px #d73c4229}.vote-outcome.is-tie{color:#6c5737;box-shadow:none;background:#fff2dd}.role-reveal-stage .finding-card{gap:8px}.reveal-card{min-height:142px}.revealed-role-symbol{filter:drop-shadow(0 4px 5px #00000029);place-items:center;min-width:28px;min-height:28px;font-size:25px;line-height:1;animation:.56s cubic-bezier(.16,1,.3,1) both reference-role-reveal;display:grid}.voice-dock{z-index:100;bottom:max(14px, env(safe-area-inset-bottom));color:#151515;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border:1px solid #0000001a;border-radius:999px;align-items:center;gap:8px;width:max-content;max-width:calc(100% - 28px);padding:7px 13px 7px 8px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #1a1f2424}.voice-dock>span:last-child{gap:1px;display:grid}.voice-dock strong{font-size:10px}.voice-dock small{color:#6f6f6f;font-size:9px}.voice-dock-orb{background:#080808;border-radius:50%;place-items:center;width:25px;height:25px;display:inline-grid;position:relative;overflow:hidden}.voice-dock-orb i{transform-origin:50%;background:#ffc54c;border-radius:10px;width:3px;height:8px;animation:1.1s ease-in-out infinite reference-voice-bars;position:absolute}.voice-dock-orb i:first-child{animation-delay:-.25s;transform:translate(-5px)scaleY(.55)}.voice-dock-orb i:nth-child(2){animation-delay:-.1s;transform:scaleY(.9)}.voice-dock-orb i:nth-child(3){animation-delay:-.45s;transform:translate(5px)scaleY(.45)}.voice-dock:not(.is-active) .voice-dock-orb i{opacity:.5;animation-play-state:paused}.stage-error{z-index:8;color:#a62f2f;text-align:center;background:#fff2f1;border-radius:999px;width:min(100% - 40px,400px);margin:0;padding:9px 13px;font-size:10px;position:absolute;bottom:86px;left:50%;transform:translate(-50%)}.stage-progress{z-index:9;color:#595959;background:#ffffffe0;border:1px solid #00000014;border-radius:999px;align-items:center;gap:7px;margin:0;padding:9px 13px;font-size:10px;display:inline-flex;position:absolute;bottom:83px;left:50%;transform:translate(-50%);box-shadow:0 9px 22px #171f2814}.stage-progress i{border:1.5px solid #d4d4d4;border-top-color:#0a0a0a;border-radius:50%;width:10px;height:10px;animation:.75s linear infinite reference-spinner}.scene-enter{animation:.52s cubic-bezier(.16,1,.3,1) both reference-scene-in}@keyframes reference-scene-in{0%{opacity:0;transform:translateY(13px)scale(.987)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes reference-moon-breathe{0%,to{filter:saturate();transform:translate(-50%)translateY(0)scale(1)}50%{filter:saturate(1.12);transform:translate(-50%)translateY(-5px)scale(1.025)}}@keyframes reference-large-moon-breathe{0%,to{filter:saturate();transform:translateY(0)scale(1)}50%{filter:saturate(1.12);transform:translateY(-5px)scale(1.025)}}@keyframes reference-star-drift{0%{opacity:.68;background-position:0 0}to{opacity:.94;background-position:34px 21px}}@keyframes reference-role-reveal{0%{opacity:0;transform:translateY(8px)scale(.4)rotate(-14deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@keyframes reference-spinner{to{transform:rotate(1turn)}}@keyframes reference-firework-burst{0%,12%{opacity:0;scale:.15}30%{opacity:.95;scale:.78}72%{opacity:.3;scale:1.08}to{opacity:0;scale:1.2}}@keyframes reference-voice-bars{50%{scale:1 1.4}}@media (width<=600px){.reference-app{grid-template-rows:52px minmax(0,1fr)}.reference-header{padding:0 14px}.reference-header nav{gap:12px}.reference-header nav button{font-size:9px}.reference-wordmark{gap:5px;font-size:12px}.reference-wordmark b{text-overflow:ellipsis;white-space:nowrap;max-width:86px;overflow:hidden}.reference-stage{padding:8px 14px 91px}.setup-grid{width:min(100%,385px)}.player-strip{gap:7px}.player-tile{width:56px;min-height:57px}.role-stage,.meet-stage,.night-turn,.discussion-stage,.vote-stage{transform:none}.fireworks{transform:translate(-50%)scale(.75)}.voice-dock{padding-right:10px}.voice-dock strong{font-size:9px}.voice-dock small{font-size:8px}}@media (prefers-reduced-motion:reduce){.reference-app *,.reference-app :before,.reference-app :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.ww-app{--ww-line:#f1f1f1;--ww-muted:#707070;--ww-orange:#ffb326;--ww-ease:cubic-bezier(.22, 1, .36, 1);color:#000;isolation:isolate;background:#fff;flex-direction:column;min-height:100svh;font-family:Inter,Arial,Helvetica,sans-serif;display:flex;position:relative;overflow:hidden}.ww-app h1,.ww-app h2,.ww-app h3,.ww-app p{margin:0}.ww-app h1:focus,.ww-app h2:focus{outline:none}.ww-app .sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ww-sky{z-index:-1;pointer-events:none;height:760px;position:absolute;inset:0 0 auto;overflow:hidden;-webkit-mask-image:linear-gradient(#000 0% 36%,#000000d6 48%,#0000008c 61%,#0000003d 75%,#0000000f 87%,#0000 96%);mask-image:linear-gradient(#000 0% 36%,#000000d6 48%,#0000008c 61%,#0000003d 75%,#0000000f 87%,#0000 96%)}.ww-sky-layer{opacity:0;transition:opacity 2.6s cubic-bezier(.45,0,.25,1);position:absolute;inset:0}.ww-sky.is-night .ww-sky-night,.ww-sky.is-day .ww-sky-day,.ww-sky.is-victory .ww-sky-victory{opacity:1}.ww-sky-night{background:linear-gradient(#24458c 0%,#3a5ca3 18%,#6f8bc6 36%,#b0c1e4 52%,#dde5f4 68%,#f6f8fc 82%,#fff 94%)}.ww-stars{width:100%;height:100%;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0% 55%,#0000 88%);mask-image:linear-gradient(#000 0% 55%,#0000 88%)}.ww-sky-day{background:linear-gradient(#6dbdec 0%,#8fcbf0 16%,#b4dcf5 32%,#d4ebf9 48%,#ebf6fc 64%,#f8fcfe 78%,#fff 90%)}.ww-sky-warmth{opacity:.15;background:radial-gradient(70% 60% at 80% 0,#ffd6aaa6,#ffd6aa00 72%),linear-gradient(#ffe6cc66 0%,#ffe6cc00 50%);animation:36s ease-in-out infinite alternate ww-sky-warm;position:absolute;inset:0}.ww-sky-sun{background:radial-gradient(circle,#fffbe2d9 0%,#fff0c859 32%,#0000 68%);border-radius:50%;width:520px;height:520px;animation:14s ease-in-out infinite alternate ww-sun-breathe;position:absolute;top:-120px;right:8%}.ww-cloud{will-change:transform;background:radial-gradient(closest-side,#ffffffc7,#fff0);border-radius:50%;width:460px;height:120px;animation:120s linear infinite ww-cloud-drift;position:absolute;left:0}.ww-cloud.is-1{animation-duration:140s;animation-delay:-30s;top:40px}.ww-cloud.is-2{opacity:.8;width:620px;height:150px;animation-duration:170s;animation-delay:-95s;top:120px}.ww-cloud.is-3{opacity:.7;width:380px;animation-duration:110s;animation-delay:-60s;top:210px}.ww-cloud.is-4{opacity:.6;width:300px;height:90px;animation-duration:95s;animation-delay:-12s;top:70px}.ww-cloud.is-5{opacity:.55;width:540px;height:130px;animation-duration:190s;animation-delay:-140s;top:260px}.ww-sky-victory{background:#034a80de;height:428px;-webkit-mask:url(/artwork/loups-garous/sky-mask.svg) top/100% 100% no-repeat;mask:url(/artwork/loups-garous/sky-mask.svg) top/100% 100% no-repeat}.ww-sky-victory:after{content:"";background:url(/artwork/loups-garous/victory-fireworks.png) 50%/cover no-repeat;width:min(1122px,100%);height:478px;position:absolute;top:10px;left:50%;transform:translate(-50%)}@keyframes ww-cloud-drift{0%{transform:translate(-40vw)}to{transform:translate(110vw)}}@keyframes ww-sky-warm{to{opacity:.85}}@keyframes ww-sun-breathe{0%{opacity:.65;transform:translate(0)scale(.96)}to{opacity:1;transform:translate(-40px,18px)scale(1.04)}}.ww-header{z-index:3;justify-content:space-between;align-items:center;gap:16px;min-height:96px;padding:24px 32px;display:flex;position:relative}.ww-brand-group{white-space:nowrap;align-items:center;gap:12px;min-width:0;font-size:24px;font-weight:600;line-height:32px;display:flex}.ww-brand{color:inherit;background:0 0;border:0;padding:0;font-weight:600}.ww-header-game{color:var(--ww-muted)}.ww-header-nav{align-items:center;gap:26px;display:flex}.ww-header-nav button{min-height:44px;color:inherit;background:0 0;border:0;padding:8px 0;font-size:16px;line-height:24px}.ww-header-nav button:hover,.ww-brand:hover{text-underline-offset:4px;text-decoration:underline}.ww-header.is-on-art{color:#fff}.ww-header.is-on-art .ww-header-game{color:#d1d1d1}.ww-rail{z-index:4;flex-direction:column;align-items:center;gap:12px;display:flex;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.ww-round-control{color:#000;background:#fff;border:1px solid #dedede;border-radius:999px;place-items:center;width:50px;height:50px;padding:12px;transition:background-color .18s ease-out;display:grid}.ww-round-control:hover{background:#fff7ea}.ww-round-control:active{transform:scale(.97)}.ww-scene-loading{background:#000}.ww-loading-art{z-index:-1;filter:blur(56px)saturate(1.05);background:url(/artwork/loups-garous/loading-artwork-overlay.jpg) 50%/cover no-repeat,url(/artwork/loups-garous/loading-artwork-base.jpg) 50%/cover no-repeat;position:absolute;inset:-18% -12%}.ww-loading{color:#fff;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:calc(100svh - 96px);padding:24px 24px 120px;display:flex;position:relative}.ww-loading-center{justify-items:center;display:grid}.ww-loading-visual{width:360px;max-width:82vw;height:300px;margin-bottom:-188px;display:block;position:relative}.ww-loading-shape{width:136px;height:auto;animation:2.8s cubic-bezier(.65,0,.35,1) infinite ww-loading-orbit;position:absolute;top:9%;left:50%;transform:translate(-50%,-50%)rotate(0)}.ww-loading-center h1{letter-spacing:-.96px;margin-top:64px;font-size:48px;font-weight:700;line-height:56px;position:relative}.ww-app .ww-loading-back{color:#000;background:#fff;border:0;border-bottom:1px solid #f5f5f5;border-radius:32px 32px 0 0;padding:10px 26px;font-size:18px;line-height:28px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.ww-loading-error{color:#111;text-align:center;background:#fff;border-radius:28px;width:min(480px,100% - 32px);padding:32px}.ww-loading-error h1{font-size:28px;line-height:36px}.ww-loading-error p{color:var(--ww-muted);margin-top:12px;line-height:24px}.ww-loading-error div{justify-content:center;gap:10px;margin-top:24px;display:flex}.ww-loading-error button{background:#fff;border:1px solid #ededed;border-radius:16px;min-height:48px;padding:10px 20px}.ww-loading-error button:first-child{color:#fff;background:#111;border-color:#111}@keyframes ww-loading-orbit{0%,to{top:9%;left:50%;transform:translate(-50%,-50%)rotate(0)}25%{top:50%;left:86%;transform:translate(-50%,-50%)rotate(90deg)}50%{top:91%;left:50%;transform:translate(-50%,-50%)rotate(180deg)}75%{top:50%;left:14%;transform:translate(-50%,-50%)rotate(270deg)}}.ww-stage{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:20px;width:min(708px,100% - 140px);margin:0 auto;padding:93px 0 48px;display:flex;position:relative}.ww-phase{padding-top:150px}.ww-stage-intro{gap:14px;width:min(353px,100%);margin-bottom:10px;display:grid}.ww-stage-intro h1,.ww-section-title,.ww-panel h2{font-size:24px;font-weight:600;line-height:32px}.ww-stage-intro p{color:var(--ww-muted);font-size:16px;line-height:24px}.ww-display{letter-spacing:-.96px;font-size:48px;font-weight:700;line-height:56px}.ww-question{letter-spacing:-.36px;font-size:36px;font-weight:600;line-height:44px}.ww-stage-copy{font-size:16px;line-height:24px}.ww-test-banner{background:#fff;border-radius:999px;padding:6px 14px;font-size:14px}.ww-error{color:#c23b3b}.ww-panel{border:1px solid var(--ww-line);text-align:left;background:#fff;border-radius:28px;flex-direction:column;gap:16px;padding:24px;display:flex}.ww-pill{min-height:52px;transition:background-color .18s ease-out, transform .18s var(--ww-ease);border:0;border-radius:999px;padding:16px 32px;font-size:14px;font-weight:500;line-height:20px}.ww-pill:active:not(:disabled){transform:scale(.97)}.ww-pill.is-primary{background:var(--ww-orange);color:#000}.ww-pill.is-primary:hover:not(:disabled){background:#f2a40f}.ww-pill.is-dark{color:#fff;background:#000}.ww-pill.is-dark:hover:not(:disabled){background:#2b2b2b}.ww-pill.is-light{border:1px solid var(--ww-line);color:#000;background:#fff}.ww-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.ww-setup{gap:16px}.ww-mode-panel{gap:14px;width:min(403px,100%)}.ww-mode-options{gap:10px;display:grid}.ww-mode-option{border:1px solid var(--ww-line);color:#00000080;text-align:left;background:#fff;border-radius:16px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:10px;min-height:108px;padding:12px;font-size:18px;line-height:28px;display:flex}.ww-mode-option.is-selected{color:#fff;background:#000;border-color:#000}.ww-mode-option.is-selected:hover{background:#2b2b2b}.ww-mode-option:disabled{opacity:1;min-height:0}.ww-app .ww-text-button{min-height:44px;color:var(--ww-muted);text-underline-offset:4px;background:0 0;border:0;font-size:14px;text-decoration:underline}.ww-village-setup{flex-direction:column;align-items:center;gap:20px;width:100%;display:flex}.ww-village-config{grid-template-columns:369px 1fr;gap:20px;width:100%;display:grid}.ww-count-setting{gap:8px;display:grid}.ww-stepper{gap:10px;padding:10px;display:flex}.ww-step-button{width:56px;height:81px;transition:transform .18s var(--ww-ease);background:#000;border:0;border-radius:24px;place-items:center;display:grid}.ww-step-button.is-increase{background:#e58c39}.ww-step-button:active:not(:disabled){transform:scale(.96)}.ww-count-value{border:1px solid var(--ww-line);border-radius:24px;flex:1;place-items:center;height:81px;font-size:24px;font-weight:600;line-height:32px;display:grid}.ww-count-label{color:#0009;text-align:center;font-size:16px;line-height:24px}.ww-roles-panel h3{font-size:18px;font-weight:400;line-height:28px}.ww-roles-panel ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.ww-roles-panel li{gap:8px;font-size:18px;line-height:28px;display:flex}.ww-role-total{color:#0009}.ww-village-footer{justify-items:center;gap:16px;width:min(369px,100%);display:grid}.ww-guidance{cursor:pointer;flex-direction:row;align-items:center;gap:14px;width:100%;min-height:62px;padding:16px;font-size:18px;line-height:28px;position:relative}.ww-guidance input{opacity:0;cursor:pointer;border-radius:28px;width:100%;height:100%;margin:0;position:absolute;inset:0}.ww-check-box{background:#000;border:1px solid #000;border-radius:8px;flex:none;place-items:center;width:20px;height:20px;display:grid}.ww-guidance input:not(:checked)+.ww-check-box{background:#fff}.ww-guidance input:not(:checked)+.ww-check-box img{visibility:hidden}.ww-guidance:has(input:focus-visible){outline-offset:3px;outline:3px solid #1b80cf}.ww-app .ww-start-button{color:#fff;text-align:center;width:100%;min-height:54px;transition:background-color .18s ease-out, transform .18s var(--ww-ease);background:#000;border:0;border-radius:16px;place-items:center;padding:12px 24px;font-size:18px;line-height:28px;display:grid}.ww-start-button:active:not(:disabled){transform:scale(.98)}.ww-start-button:hover:not(:disabled){background:#2b2b2b}.ww-players{flex-wrap:wrap;justify-content:center;gap:20px;width:100%;margin:0;padding:0;list-style:none;display:flex}.ww-players li{width:calc(16.6667% - 16.6667px);min-width:96px;display:flex}.ww-app .ww-player{border:1px solid var(--ww-line);color:#000;width:100%;min-height:118px;transition:border-color .18s ease-out, background-color .18s ease-out, transform .18s var(--ww-ease);background:#fff;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px 8px;font-size:18px;line-height:28px;display:flex}button.ww-player:hover:not(:disabled){border-color:#ffd27f}button.ww-player:active:not(:disabled){transform:scale(.97)}.ww-player.is-selected{color:#fff;background:#000;border-color:#000}.ww-player.is-speaking{border-color:var(--ww-orange);box-shadow:0 0 0 3px #ffb3264d}.ww-player.is-dead{color:#00000073;background:#f7f7f7}.ww-player.is-dead .ww-dot{opacity:.35}.ww-player-votes{color:#0009;font-variant-numeric:tabular-nums;margin-top:-6px;font-size:13px;line-height:18px}.ww-player.is-selected .ww-player-votes{color:#ffffffc7}.ww-player-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.ww-player-detail{opacity:.75;margin-top:-8px;font-size:13px;line-height:18px}.ww-dot{border-radius:64px;flex:none;width:24px;height:24px;display:block}.ww-intro-notes{justify-items:center;gap:16px;display:grid}.ww-note{border:1px solid var(--ww-line);background:#fff;border-radius:28px;padding:16px;font-size:18px;line-height:28px}.ww-note.is-dark{color:#fff;background:#000}.ww-role-card{border:1px solid var(--ww-line);isolation:isolate;background:#fff;border-radius:28px;flex-direction:column;justify-content:space-between;align-items:center;gap:16px;width:min(369px,100%);min-height:384px;padding:32px;display:flex;position:relative;overflow:hidden}.ww-role-flip{perspective:1400px;width:min(369px,100%)}.ww-role-inner{transform-style:preserve-3d;transition:transform .72s cubic-bezier(.45,.05,.25,1);display:grid}.ww-role-flip.is-flipped .ww-role-inner{transform:rotateY(180deg)}.ww-role-face{backface-visibility:hidden;grid-area:1/1;width:100%}.ww-role-face.is-back{transform:rotateY(180deg)}.ww-role-face h2:focus{outline:none}.ww-role-glow{z-index:-1;background:var(--role-color);filter:blur(31px);height:155px;position:absolute;bottom:-40px;left:0;right:0}.ww-role-front{flex-direction:column;flex:1;justify-content:space-between;align-items:center;gap:40px;display:flex}.ww-role-identity{justify-items:center;gap:22px;display:grid}.ww-role-identity h2,.ww-role-back h2,.ww-role-back h3{font-size:24px;font-weight:600;line-height:32px}.ww-role-front p,.ww-role-back p,.ww-role-back li{font-size:16px;line-height:24px}.ww-role-back{text-align:left;gap:16px;width:100%;display:grid}.ww-role-back ul{margin:0;padding:0;list-style:none;display:grid}.ww-role-back li:before{content:"• "}.ww-role-shape{border-radius:50%;display:block}.ww-result-card{border:1px solid var(--ww-line);background:#fff;border-radius:28px;justify-items:center;gap:16px;margin-top:10vh;padding:24px;display:grid}.ww-result-card h1{letter-spacing:-.36px;font-size:36px;font-weight:600;line-height:44px}.ww-result-card h2{font-size:24px;font-weight:600;line-height:32px}.ww-result-card p{font-size:16px;line-height:24px}.ww-update{border:1px solid var(--ww-line);background:#ffffffeb;border-radius:64px;max-width:560px;padding:12px 16px;font-size:16px;line-height:24px}.ww-update.is-loss{color:#fff;background:#ec4c4c;border-color:#ec4c4c}.ww-update.is-empty{display:none}.ww-examples{color:#0006;gap:12px;font-size:16px;line-height:24px;display:grid}.ww-speak{text-align:left;gap:10px;width:min(560px,100%);display:grid}.ww-speak label{font-size:14px;font-weight:500}.ww-speak textarea{resize:vertical;background:#fff;border:1px solid #e3e3e3;border-radius:20px;min-height:84px;padding:14px 16px}.ww-outcome{color:#000000b3;font-size:24px;font-weight:600;line-height:32px}.ww-final-role{gap:24px;margin:8px 0;display:grid}.ww-final-role p:first-child{color:#0009;font-size:24px;font-weight:600;line-height:32px}.ww-final-role-name{letter-spacing:-.36px;font-size:36px;font-weight:600;line-height:44px}.ww-final-votes{text-align:left;width:min(480px,100%)}.ww-app.pbv-root .companion-dock{width:100%;margin-top:auto}.ww-app.pbv-root .companion-dock:before{background:radial-gradient(at 50% 110%,#fadc57,#0000 72%),linear-gradient(#0000,#fff1df 45%,#f6c48f)}.ww-app.pbv-root .companion-dock:after{opacity:0}.ww-app .ww-rail .dock-icon{position:static;transform:none}.ww-app .ww-command-reply{background:#fff7ea;border-radius:16px;max-height:120px;margin-top:12px;padding:10px 12px;font-size:13px;line-height:20px;overflow:auto}.ww-app.pbv-root .ww-dialog{text-align:left;width:min(560px,100%);max-height:calc(100svh - 48px);overflow-y:auto}.ww-dialog-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.ww-dialog .audio-controls{background:0 0;border:0;gap:14px;margin:0;padding:0;display:grid}.ww-dialog .audio-controls p{color:#707070;font-size:14px;line-height:20px}.ww-dialog .audio-buttons{flex-wrap:wrap;gap:8px;display:flex}.ww-dialog .plain-button{color:#222;background:#fff;border:1px solid #e3e3e3;border-radius:999px;min-height:44px;padding:10px 16px;font-size:14px}.ww-dialog .plain-button:hover:not(:disabled){background:#f7f7f7}.ww-dialog .volume-control{color:#4b4b4b;gap:6px;font-size:14px;display:grid}.ww-dialog .volume-control input{accent-color:#e99b28;width:100%}.ww-dialog .ww-help{gap:12px;font-size:15px;line-height:22px;display:grid}.ww-dialog .ww-help h3{font-size:15px;font-weight:600}.ww-history{color:#4b4b4b;gap:6px;margin:0;padding:0;list-style:none;display:grid}.ww-dialog .confirm-actions{justify-content:flex-start}@media (width<=760px){.ww-header{min-height:72px;padding:16px}.ww-brand-group{gap:8px;font-size:18px}.ww-header-nav{gap:14px}.ww-header-nav button{font-size:14px}.ww-rail{top:auto;bottom:calc(190px + env(safe-area-inset-bottom,0px));position:fixed;left:12px;transform:none}.ww-stage{width:calc(100% - 32px);padding-top:40px;padding-left:48px}.ww-phase{padding-top:56px}.ww-village-config{grid-template-columns:1fr}.ww-display{font-size:36px;line-height:44px}.ww-question{font-size:26px;line-height:34px}.ww-players{gap:12px}.ww-players li{width:calc(33.3333% - 8px);min-width:0}.ww-loading-center h1{font-size:40px}}@media (width<=420px){.ww-header-game,.ww-brand-group img{display:none}}@media (prefers-reduced-motion:reduce){.ww-loading-shape{animation:none}.ww-role-inner,.ww-role-flip.is-flipped .ww-role-inner,.ww-role-face.is-back{transition:none;transform:none}.ww-role-flip:not(.is-flipped) .ww-role-face.is-back,.ww-role-flip.is-flipped .ww-role-face.is-front{visibility:hidden}.ww-sky-layer{transition-duration:0s}.ww-sky-warmth,.ww-sky-sun,.ww-cloud{animation:none}}@media (width<=900px){.ww-app .ww-stage{padding-bottom:calc(190px + env(safe-area-inset-bottom,0px))}}@media (width<=900px) and (height<=600px){.ww-app .ww-stage{padding-bottom:calc(154px + env(safe-area-inset-bottom,0px))}}.pbv-root{color:#111;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--text:#111;--text-muted:#6b7280;--border:#e5e7eb;--accent:#d4e89c;--accent-dark:#526834;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);background:#fff;font-family:Inter,Arial,Helvetica,sans-serif}.pbv-root *,.pbv-root :before,.pbv-root :after{box-sizing:border-box}.pbv-root{min-width:320px;margin:0}.pbv-root button,.pbv-root input,.pbv-root select{font:inherit}.pbv-root button{color:inherit;cursor:pointer}.pbv-root button:disabled{cursor:not-allowed}.pbv-root button,.pbv-root a,.pbv-root input,.pbv-root select,.pbv-root summary{-webkit-tap-highlight-color:transparent}.pbv-root button{touch-action:manipulation}.pbv-root button:focus-visible,.pbv-root a:focus-visible,.pbv-root input:focus-visible,.pbv-root select:focus-visible,.pbv-root summary:focus-visible{outline-offset:5px;outline:3px solid #386df6}.pbv-root button:disabled{opacity:.5}.pbv-root img{max-width:100%}.pbv-root h1,.pbv-root h2,.pbv-root h3,.pbv-root p{margin:0}.pbv-root h1:focus{outline:none}.pbv-root a{color:inherit}.pbv-root .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}.pbv-root .skip-link{z-index:100;color:#fff;background:#111;border-radius:12px;padding:12px 20px;position:fixed;top:-80px;left:16px}.pbv-root .skip-link:focus{top:12px}@media (prefers-reduced-motion:reduce){.pbv-root *,.pbv-root :before,.pbv-root :after{scroll-behavior:auto!important;transition-duration:0s!important;animation:none!important}.pbv-root .companion-dock:before,.pbv-root .companion-dock:after{transition:opacity .15s!important}.pbv-root .companion-liquid-orb,.pbv-root .companion-orb,.pbv-root .companion-liquid-orb .orb-glass{transition:none!important;transform:none!important}.pbv-root .companion-liquid-orb.liquid-glass-ready .orb-glass{opacity:1}.pbv-root .start-game{transition:transform,color .15s ease-out,background-color .15s ease-out!important}.pbv-root .start-game:before{display:none}.pbv-root .game-card.is-playable:hover .start-game,.pbv-root .game-card-control:focus-visible .start-game{background-color:#111}}@media (forced-colors:active){.pbv-root .companion-liquid-orb .orb-glass{display:none}.pbv-root .companion-liquid-orb.liquid-glass-ready>.companion-orb{opacity:1}}.pbv-root .pbv-shell{flex-direction:column;min-height:100svh;display:flex;overflow-x:clip}.pbv-root .site-header{z-index:3;align-items:center;gap:12px;min-height:96px;padding:24px 32px;display:flex;position:relative}.pbv-root .header-game{color:#707070;align-items:center;gap:12px;font-size:24px;font-weight:600;display:flex}.pbv-root .site-header nav{align-items:center;gap:28px;margin-left:auto;display:flex}.pbv-root .site-header nav button{background:0 0;border:0;min-height:44px;padding:8px 0;font-size:16px}.pbv-root .site-header nav button[aria-current]{color:#777}.pbv-root .site-header nav button:hover,.pbv-root .back-link:hover{color:#526834}.pbv-root .main-content{flex:1;min-width:0;position:relative}.pbv-root .game-picker{min-height:620px;padding-top:83px}.pbv-root .game-carousel-frame{position:relative}.pbv-root .game-carousel-frame:before,.pbv-root .game-carousel-frame:after{content:"";z-index:1;pointer-events:none;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:linear-gradient(90deg,#fff9,#0000);width:max(24px,50% - 544px);position:absolute;inset-block:0;-webkit-mask-image:linear-gradient(90deg,#000 15%,#0000);mask-image:linear-gradient(90deg,#000 15%,#0000)}.pbv-root .game-carousel-frame:before{left:0}.pbv-root .game-carousel-frame:after{right:0;transform:scaleX(-1)}.pbv-root .game-carousel{scrollbar-width:none;overscroll-behavior-x:contain;overflow-anchor:none;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;padding:0 max(24px,50% - 544px);overflow:auto hidden}.pbv-root .game-carousel.is-dragging{cursor:grabbing}.pbv-root .game-carousel:focus-visible{outline-offset:-4px}.pbv-root .game-carousel::-webkit-scrollbar{display:none}.pbv-root .game-cards,.pbv-root .game-card-cycle{gap:28px;width:max-content;display:flex}.pbv-root .game-cards{isolation:isolate;position:relative}.pbv-root .game-card-cycle{flex-shrink:0}.pbv-root .game-card{color:#fff;background-position:50%;background-size:cover;border-radius:48px;flex-shrink:0;width:344px;height:416px;position:relative;overflow:hidden}.pbv-root .game-card:after{content:"";pointer-events:none;background:linear-gradient(#0000,#00000028);position:absolute;inset:45% 0 0}.pbv-root .game-card-control{z-index:2;border-radius:inherit;width:100%;height:100%;color:inherit;text-align:left;background:0 0;border:0;padding:0;position:absolute;inset:0}.pbv-root .game-card-control:disabled{opacity:1}.pbv-root .game-card-control:focus-visible{outline-offset:-5px}.pbv-root .game-card-chess{background-image:url(/artwork/chess-card.webp)}.pbv-root .game-card-loups-garous{background-image:url(/artwork/werewolf-card.webp)}.pbv-root .game-card-ludo{background-image:url(/artwork/red-card.webp)}.pbv-root .game-card-intercept{background-image:radial-gradient(circle at 30% 25%,#6c8890 0,#0000 32%),linear-gradient(145deg,#0b2730 0%,#162028 55%,#05090d 100%)}.pbv-root .game-card-tic-tac-toe{background-image:url(/artwork/tic-tac-toe-card.webp)}.pbv-root .game-shape{background:#fff;width:120px;height:116px;display:block;position:absolute;top:68px;left:50%;transform:translate(-50%)}.pbv-root .triangle{clip-path:polygon(0 0,100% 0,50% 100%);width:108px;height:94px;top:82px}.pbv-root .pentagon{clip-path:polygon(50% 0,100% 38%,81% 100%,19% 100%,0 38%)}.pbv-root .diamond{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);width:122px;height:122px;top:52px}.pbv-root .game-card-copy{z-index:1;position:absolute;bottom:70px;left:28px;right:28px}.pbv-root .game-card-title{letter-spacing:-.65px;margin-bottom:14px;font-size:30px;font-weight:600;line-height:36px;display:block}.pbv-root .game-card-description{font-size:16px;line-height:24px;display:block}.pbv-root .start-game{z-index:2;color:#111;isolation:isolate;width:152px;min-height:56px;transition:transform .16s var(--ease-out), color .5s var(--ease-out), background-color .5s var(--ease-out);background:#fff;border:0;border-radius:30px 30px 0 0;padding:11px 12px 20px;font-size:14px;position:absolute;bottom:-8px;left:50%;overflow:hidden;transform:translate(-50%)}.pbv-root .start-game:before{content:"";z-index:-1;width:16px;height:16px;transition:transform .5s var(--ease-out);background:#111;border-radius:50%;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)scale(0)}.pbv-root .start-game>span{z-index:1;text-align:center;place-items:center;line-height:20px;display:grid;position:absolute;inset:0}.pbv-root .game-card.is-playable:hover .start-game,.pbv-root .game-card-control:focus-visible .start-game{color:#fff}.pbv-root .game-card.is-playable:hover .start-game:before,.pbv-root .game-card-control:focus-visible .start-game:before{transform:translate(-50%,-50%)scale(14)}.pbv-root .game-card-control:active:not(:disabled) .start-game{transform:translate(-50%)scale(.97)}.pbv-root .game-card-control:disabled .start-game{opacity:.9;color:#666}.pbv-root .coming-soon{letter-spacing:.2px;color:#333;z-index:1;background:#ffffffed;border-radius:24px;padding:7px 11px;font-size:11px;position:absolute;top:20px;right:20px}.pbv-root .chess-page{min-height:716px;padding:53px 0 0;position:relative}.pbv-root .chess-layout{grid-template-columns:minmax(0,1.0196fr) minmax(0,1fr);align-items:start;gap:30px;width:min(1060px,100% - 160px);margin-inline:auto;display:grid;position:relative;left:60px}.pbv-root .chess-board-column,.pbv-root .chess-side-column{min-width:0}.pbv-root .chess-side-column{flex-direction:column;gap:24px;display:flex}.pbv-root .game-rail{flex-direction:column;gap:20px;display:flex;position:absolute;top:301px;left:15px}.pbv-root .round-control{background:#fff;border:1px solid #dedede;border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.pbv-root .round-control:hover{background:#f5f8ed}.pbv-root .board-wrapper{--board-light:#edf3d6;--board-dark:#7d9250;--board-frame:#526834;background:var(--board-frame);border-radius:48px;width:100%;padding:40px 40px 40px 46px}.pbv-root .theme-marine{--board-light:#def0f3;--board-dark:#6b9baf;--board-frame:#36576a}.pbv-root .theme-ember{--board-light:#f8e9d9;--board-dark:#bc8265;--board-frame:#86593f}.pbv-root .theme-forest{--board-light:#dfe9db;--board-dark:#719474;--board-frame:#345940}.pbv-root .theme-midnight{--board-light:#c6c9df;--board-dark:#7d83a9;--board-frame:#3f466d}.pbv-root .board{aspect-ratio:1;grid-template-rows:repeat(8,minmax(0,1fr));width:100%;display:grid;position:relative}.pbv-root .board-row{grid-template-columns:repeat(8,minmax(0,1fr));min-height:0;display:grid}.pbv-root .board-row:first-child .square:first-child{border-top-left-radius:8px}.pbv-root .board-row:first-child .square:last-child{border-top-right-radius:8px}.pbv-root .board-row:last-child .square:first-child{border-bottom-left-radius:8px}.pbv-root .board-row:last-child .square:last-child{border-bottom-right-radius:8px}.pbv-root .square{isolation:isolate;border:0;place-items:center;min-width:0;padding:0;display:grid;position:relative}.pbv-root .square-light{background:var(--board-light)}.pbv-root .square-dark{background:var(--board-dark)}.pbv-root .square:hover{box-shadow:inset 0 0 0 3px #ffffff65}.pbv-root .square:focus-visible{z-index:2;outline-offset:-3px;outline:3px solid #2c60f5}.pbv-root .square-selected{box-shadow:inset 0 0 0 4px #f2ce4c!important}.pbv-root .square-last-move:before{content:"";z-index:-1;background:#f4de4e38;position:absolute;inset:0}.pbv-root .square-check{background:#c97061}.pbv-root .label-rank,.pbv-root .label-file{color:#edf3d6;pointer-events:none;font-size:12px;font-weight:400;position:absolute}.pbv-root .label-rank{top:50%;left:-23px;transform:translateY(-50%)}.pbv-root .label-file{bottom:-17px;left:50%;transform:translate(-50%)}.pbv-root .piece{pointer-events:none;color:#213017;place-items:center;width:100%;height:100%;font-family:Segoe UI Symbol,Apple Symbols,sans-serif;font-size:clamp(24px,3.3vw,45px);line-height:1;display:grid}.pbv-root .piece img{object-fit:contain;width:100%;height:100%}.pbv-root .piece-w{color:#fffdf5;text-shadow:0 1px 2px #17240d,1px 0 #17240d,-1px 0 #17240d}.pbv-root .piece-b{color:#17240d;text-shadow:0 1px 1px #ffffff80}.pbv-root .piece-set-symbols{color:#8b641a}.pbv-root .piece-set-outlined{-webkit-text-stroke:1px #213017;color:#0000}.pbv-root .legal-move-dot{pointer-events:none;background:#2130177a;border-radius:50%;width:22%;height:22%;position:absolute}.pbv-root .board-computer-thinking{box-shadow:0 0 0 3px #d4e89c80}.pbv-root .board-status{color:#4a543e;align-items:center;gap:8px;min-height:44px;padding:10px 6px;font-size:12px;line-height:18px;display:flex}.pbv-root .status-dot{background:#7d9250;border-radius:50%;flex-shrink:0;width:6px;height:6px}.pbv-root .status-dot.is-thinking{animation:1s ease-in-out infinite alternate breathe}.pbv-root .playing-as{color:#73786e;margin-left:auto}.pbv-root .board-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.pbv-root .board-actions button{background:#f5f6f3;border:0;border-radius:20px;align-items:center;gap:6px;min-height:36px;padding:6px 12px;font-size:12px;display:inline-flex}.pbv-root .board-actions button:hover:not(:disabled){background:#e9eedf}.pbv-root .surface{background:#fff;border:1px solid #e5e7eb;border-radius:32px;padding:24px}.pbv-root .surface h2{letter-spacing:-.35px;margin-bottom:16px;font-size:24px;font-weight:600;line-height:30px}.pbv-root .move-history{min-height:252px}.pbv-root .move-list{scrollbar-width:thin;flex-direction:column;gap:12px;max-height:156px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.pbv-root .move-list li{flex-shrink:0}.pbv-root .move-list button{text-align:left;background:#f3f4f6;border:0;border-radius:22px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:44px;padding:11px 15px;font-size:14px;display:flex}.pbv-root .move-list button.current-move{background:#d4e89c}.pbv-root .move-list button:hover{background:#e5edcf}.pbv-root .move-list button:focus-visible{outline-offset:-3px}.pbv-root .move-number{color:#4a543e;font-size:12px}.pbv-root .empty-history{text-align:center;color:#667052;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:148px;font-size:14px;line-height:23px;display:flex}.pbv-root .empty-history span{color:#8b9283;font-size:12px}.pbv-root .game-notice,.pbv-root .move-confirmation,.pbv-root .engine-notice{background:#f4f8e9;border:1px solid #d4e89c;border-radius:20px;margin-bottom:16px;padding:16px;font-size:14px;line-height:22px}.pbv-root .game-notice div,.pbv-root .move-confirmation div{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.pbv-root .move-confirmation{margin:16px 0 0}.pbv-root .engine-notice{background:#fff7e8;border-color:#efdab0;margin:16px 0 0}.pbv-root .engine-notice button{margin-top:10px}.pbv-root .review-controls{justify-content:space-between;align-items:center;gap:12px;padding-top:16px;font-size:12px;display:flex}.pbv-root .pill-button{background:#fff;border:1px solid #e0e4dc;border-radius:24px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 18px;font-size:13px;display:inline-flex}.pbv-root .pill-button:hover{background:#f3f6ed}.pbv-root .pill-button.primary{background:#d4e89c;border-color:#d4e89c}.pbv-root .pill-button.primary:hover{background:#c4df83}.pbv-root .companion-dock{isolation:isolate;z-index:2;pointer-events:none;flex-shrink:0;min-height:261px;padding-bottom:26px;position:relative}.pbv-root .companion-dock:before,.pbv-root .companion-dock:after{content:"";z-index:-1;pointer-events:none;width:100%;height:230px;transition:opacity .25s var(--ease-out);position:absolute;bottom:0}.pbv-root .companion-dock:before{opacity:1;background:radial-gradient(at 50% 110%,#bae3ff,#0000 72%),linear-gradient(#0000,#eef9ff 45%,#cfeafa)}.pbv-root .companion-dock:after{opacity:0;background:radial-gradient(at 50% 110%,#d5f76d,#0000 72%),linear-gradient(#0000,#f9fede 45%,#e5f794)}.pbv-root .dock-green:before{opacity:0}.pbv-root .dock-green:after{opacity:1}.pbv-root .voice-connected:before,.pbv-root .voice-connected:after{animation:6s linear infinite alternate glow-drift}.pbv-root .companion-orb-row{justify-content:center;height:201px;display:flex;position:relative}.pbv-root .orb-button{pointer-events:auto;background:0 0;border:0;border-radius:48%;width:160px;height:201px;padding:0;position:relative}.pbv-root .companion-orb{object-fit:contain;width:100%;height:100%;transition:opacity .32s cubic-bezier(.32,.72,0,1)}.pbv-root .companion-liquid-orb{pointer-events:none;width:201px;height:201px;transition:transform .7s cubic-bezier(.32,.72,0,1);display:block;position:absolute;top:0;left:-20.5px}.pbv-root .companion-liquid-orb .orb-glass{opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .32s cubic-bezier(.32,.72,0,1);position:absolute;inset:0}.pbv-root .companion-liquid-orb.liquid-glass-ready .orb-glass{opacity:1}.pbv-root .companion-liquid-orb.liquid-glass-ready>.companion-orb{opacity:0}.pbv-root .voice-connected .companion-liquid-orb{animation:orb-breathe 4s var(--ease-in-out) infinite}.pbv-root .orb-button:disabled{opacity:.7}.pbv-root .dock-icon{color:#52616c;pointer-events:auto;background:#ffffffcf;border:1px solid #d9e2e9;border-radius:50%;place-items:center;width:42px;height:42px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.pbv-root .end-voice{right:calc(50% + 112px)}.pbv-root .dock-icon:hover{color:#111;background:#fff;border-color:#9cb2c2}.pbv-root .companion-caption{text-align:center;color:#5b6770;overflow-wrap:anywhere;pointer-events:auto;max-width:680px;max-height:54px;margin:9px auto 0;padding:0 24px;font-size:12px;line-height:18px;overflow:auto}.pbv-root .voice-error{color:#933b29;text-align:center;pointer-events:auto;background:#fff2ee;border:1px solid #eac7bf;border-radius:16px;width:min(620px,100% - 32px);max-height:122px;margin:8px auto;padding:10px 16px;font-size:13px;line-height:20px;overflow:auto}.pbv-root .settings-page,.pbv-root .help-page{width:min(680px,100% - 64px);margin:24px auto 80px}.pbv-root .back-link{color:#73786f;background:0 0;border:0;align-items:center;gap:8px;margin-bottom:26px;padding:5px 0;font-size:13px;display:inline-flex}.pbv-root .settings-page h1,.pbv-root .help-page h1{letter-spacing:-.8px;font-size:32px;font-weight:600;line-height:40px}.pbv-root .page-intro{color:#6b7280;margin-top:10px;font-size:15px;line-height:24px}.pbv-root .settings-fields{margin-top:36px}.pbv-root .volume-field{border-bottom:1px solid #edf0e9;padding:0 0 28px}.pbv-root .volume-field>div:first-child{justify-content:space-between;gap:16px;font-size:16px;display:flex}.pbv-root .volume-field output{color:#70776a;font-size:14px}.pbv-root .volume-input{color:#68745a;align-items:center;gap:16px;margin-top:24px;display:flex}.pbv-root .volume-input input{accent-color:#7d9250;cursor:pointer;width:100%;min-height:24px}.pbv-root .volume-field p{color:#7a8173;margin-top:12px;font-size:12px}.pbv-root .toggle-field{cursor:pointer;border-bottom:1px solid #edf0e9;justify-content:space-between;align-items:center;gap:24px;padding:24px 0;display:flex}.pbv-root .toggle-field strong{font-size:15px;font-weight:400;display:block}.pbv-root .toggle-field span span{color:#7a8173;margin-top:7px;font-size:13px;line-height:21px;display:block}.pbv-root .toggle-field input{appearance:none;cursor:pointer;background:#dce1d7;border-radius:24px;width:44px;min-width:44px;height:26px;margin:0;position:relative}.pbv-root .toggle-field input:before{content:"";width:20px;height:20px;transition:transform .16s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0002}.pbv-root .toggle-field input:checked{background:#7d9250}.pbv-root .toggle-field input:checked:before{transform:translate(18px)}.pbv-root .chess-preferences{margin-top:30px;font-size:14px}.pbv-root .chess-preferences summary{cursor:pointer;padding:8px 0}.pbv-root .preferences-grid{grid-template-columns:1fr 1fr;gap:24px;margin-top:24px;display:grid}.pbv-root .preferences-grid label{flex-direction:column;gap:10px;font-size:13px;display:flex}.pbv-root .preferences-grid select{color:#27311e;background:#f9faf7;border:1px solid #dfe3dc;border-radius:12px;width:100%;min-width:0;min-height:44px;padding:10px 12px}.pbv-root .chess-preferences>p{color:#7a8173;margin-top:20px;font-size:12px;line-height:20px}.pbv-root .help-page{padding-bottom:16px}.pbv-root .help-sections{margin-top:36px}.pbv-root .help-sections section{border-bottom:1px solid #edf0e9;padding:22px 0}.pbv-root .help-sections section:first-child{padding-top:0}.pbv-root .help-sections h2{margin-bottom:10px;font-size:17px;font-weight:600;line-height:24px}.pbv-root .help-sections p,.pbv-root .help-sections li{color:#697360;font-size:14px;line-height:24px}.pbv-root .help-sections ul{margin:0;padding-left:20px}.pbv-root .help-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.pbv-root .page-loading{color:#fff;background:#5b7928 url(/artwork/chess-loading.webp) 50%/cover}.pbv-root .page-loading .header-game,.pbv-root .page-loading .site-header nav button{color:#fff}.pbv-root .loading-page{flex-direction:column;justify-content:center;align-items:center;min-height:calc(100svh - 96px);padding:64px 24px 150px;display:flex;position:relative}.pbv-root .loading-center{text-align:center}.pbv-root .loading-visual{place-items:center;width:min(420px,82vw);height:300px;display:grid;position:relative}.pbv-root .loading-triangle{clip-path:polygon(0 0,100% 0,50% 100%);width:156px;height:136px;animation:loading-orbit 2.8s var(--ease-in-out) infinite;transform-origin:50%;background:#fff;position:absolute;top:9%;left:50%;transform:translate(-50%,-50%)rotate(0)scale(.72)}.pbv-root .loading-center h1{z-index:1;color:#fff;font-size:48px;font-weight:600;line-height:56px;position:relative}.pbv-root .loading-back{color:#111;background:#fff;border:0;border-radius:24px;padding:14px 24px;font-size:14px;position:absolute;bottom:64px}.pbv-root .loading-error{color:#111;text-align:center;background:#fff;border-radius:28px;width:min(480px,100% - 32px);padding:32px}.pbv-root .loading-error h1{font-size:28px;line-height:36px}.pbv-root .loading-error p{color:#707070;margin-top:12px;line-height:24px}.pbv-root .loading-error>div{justify-content:center;gap:10px;margin-top:24px;display:flex}.pbv-root .loading-error button{background:#fff;border:1px solid #ededed;border-radius:16px;min-height:48px;padding:10px 20px}.pbv-root .loading-error button:first-child{color:#fff;background:#111;border-color:#111}.pbv-root .chess-setup-page{min-height:620px;padding:125px 24px 38px;position:relative}.pbv-root .setup-rail{z-index:2;flex-direction:column;align-items:center;gap:12px;display:flex;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.pbv-root .setup-rail .round-control:active{transform:scale(.97)}.pbv-root .setup-intro{text-align:center;width:min(403px,100%);margin:0 auto 26px}.pbv-root .setup-intro h1,.pbv-root .setup-panel h2{letter-spacing:-.35px;font-size:24px;font-weight:600;line-height:32px}.pbv-root .setup-intro p{color:#707070;margin-top:14px;font-size:16px;line-height:24px}.pbv-root .setup-panel{background:#fff;border:1px solid #f1f1f1;border-radius:28px;width:min(403px,100% - 48px);min-height:194px;margin:0 auto;padding:24px}.pbv-root .setup-panel h2:focus{outline:none}.pbv-root .setup-option-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.pbv-root .setup-option-list{gap:10px;margin-top:14px;display:grid}.pbv-root .setup-option{text-align:left;background:#fff;border:1px solid #f1f1f1;border-radius:16px;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:8px;min-height:72px;padding:12px;font-size:18px;line-height:28px;transition:border-color .18s ease-out,background-color .18s ease-out,color .18s ease-out;display:flex;position:relative;overflow:hidden}.pbv-root .setup-option:hover:not(:disabled){border-color:#b8c89a}.pbv-root .setup-option.is-dark{color:#fff;background:#111;border-color:#111}.pbv-root .setup-option small{color:#7a7a7a;font-size:12px;line-height:17px}.pbv-root .setup-option.is-dark small{color:#d3d3d3}.pbv-root .setup-option:disabled{opacity:1;color:#8c8c8c;background:#f7f7f7}.pbv-root .setup-opponents .setup-option{min-height:126px}.pbv-root .difficulty-option{min-height:62px}.pbv-root .difficulty-option:after,.pbv-root .rules-options .setup-option:after,.pbv-root .timer-off:after{content:"";filter:blur(10px);background:#b1e249;border-radius:50%;width:38px;height:38px;position:absolute;bottom:-7px;right:-5px}.pbv-root .difficulty-option.tone-1:after{background:#fff56e}.pbv-root .difficulty-option.tone-2:after,.pbv-root .rules-off:after,.pbv-root .timer-off:after{background:#ff6e6e}.pbv-root .color-option{justify-content:flex-start;min-height:92px}.pbv-root .setup-option-wide{grid-column:1/-1;justify-content:center;min-height:54px}.pbv-root .timer-off,.pbv-root .rules-off{color:#e25151}.pbv-root .rules-on{color:#779a2b}.pbv-root .rules-options .rules-off:after{background:#ff6e6e}.pbv-root .rules-options .rules-off:hover:not(:disabled){border-color:#f0a3a3}.pbv-root .rules-options .rules-off.is-selected{background:#fff5f5;border-color:#e25151}.pbv-root .setup-description{color:#7b7b7b;margin-top:10px;font-size:18px;line-height:28px}.pbv-root .rules-options{margin-top:8px}.pbv-root .rules-options .setup-option{min-height:54px}.pbv-root .setup-actions{justify-content:flex-end;gap:10px;width:min(353px,100% - 72px);min-height:54px;margin:12px auto 0;display:flex}.pbv-root .setup-actions button{background:#fff;border:1px solid #f1f1f1;border-radius:16px;flex:1;min-height:54px;padding:12px;font-size:18px}.pbv-root .setup-actions .setup-cancel{color:#e25151}.pbv-root .setup-actions .setup-start{color:#fff;background:#111;border-color:#111}.pbv-root .page-loading .companion-dock{height:0;min-height:0;margin:0;padding:0}.pbv-root .page-loading .companion-dock:before,.pbv-root .page-loading .companion-dock:after,.pbv-root .page-loading .orb-button{display:none}.pbv-root .page-loading .companion-orb-row{height:0}.pbv-root .page-loading .companion-caption{color:#fff;width:100%;max-width:none;position:absolute;bottom:12px}.pbv-root .page-loading .dock-icon{bottom:20px}.pbv-root .confirm-overlay,.pbv-root .promotion-overlay,.pbv-root .game-end-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:30;background:#0005;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.pbv-root .confirm-dialog,.pbv-root .promotion-dialog,.pbv-root .game-end-modal{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:28px;width:min(480px,100%);padding:32px;box-shadow:0 20px 100px #00000020}.pbv-root .confirm-title,.pbv-root .promotion-title,.pbv-root .game-end-result{letter-spacing:-.4px;font-size:24px;font-weight:600;line-height:32px}.pbv-root .confirm-message,.pbv-root .game-end-message{color:#6b7280;margin-top:12px;font-size:14px;line-height:23px}.pbv-root .confirm-actions,.pbv-root .game-end-actions{flex-direction:row-reverse;gap:12px;margin-top:28px;display:flex}.pbv-root .btn{color:#111;background:#f8f9f6;border:1px solid #dedede;border-radius:24px;flex:1;min-height:44px;padding:12px 20px;font-size:14px}.pbv-root .btn:hover{background:#edf3e1}.pbv-root .btn-danger{color:#fff;background:#d9443c;border-color:#d9443c}.pbv-root .btn-danger:hover{background:#bf342e}.pbv-root .btn-cancel{background:#fff}.pbv-root .game-end-actions{flex-direction:row}.pbv-root .game-end-actions .btn:first-child{background:#d4e89c;border-color:#d4e89c}.pbv-root .promotion-choices{justify-content:center;gap:12px;margin-top:24px;display:flex}.pbv-root .promotion-btn{background:#f5f8ed;border:1px solid #e5e7eb;border-radius:16px;width:72px;height:72px;font-family:Apple Symbols,Segoe UI Symbol,sans-serif;font-size:38px}.pbv-root .promotion-btn:hover{background:#d4e89c}@keyframes loading-orbit{0%,to{top:9%;left:50%;transform:translate(-50%,-50%)rotate(0)scale(.72)}25%{top:50%;left:86%;transform:translate(-50%,-50%)rotate(90deg)scale(.72)}50%{top:91%;left:50%;transform:translate(-50%,-50%)rotate(180deg)scale(.72)}75%{top:50%;left:14%;transform:translate(-50%,-50%)rotate(270deg)scale(.72)}}@keyframes breathe{0%{opacity:.3}to{opacity:1}}@keyframes orb-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}@keyframes glow-drift{0%{transform:translate(-1.5%,2%)scale(1.04)}to{transform:translate(1.5%,-2%)scale(1.08)}}@media (hover:hover) and (pointer:fine){.pbv-root .orb-button:hover .companion-liquid-orb{transform:scale(1.035)}}@media (width>=1600px){.pbv-root .game-picker{padding-top:100px}.pbv-root .chess-layout{left:30px}}@media (width<=1180px){.pbv-root .chess-layout{width:calc(100% - 120px);left:25px}.pbv-root .board-wrapper{border-radius:36px;padding:32px 32px 32px 38px}.pbv-root .surface{padding:20px}.pbv-root .game-picker{padding-top:64px}}@media (width<=900px){.pbv-root .site-header{min-height:88px;padding:20px 24px}.pbv-root .chess-page{padding-top:24px;padding-bottom:70px}.pbv-root .chess-layout{grid-template-columns:1fr;gap:24px;width:calc(100% - 40px);max-width:560px;left:0}.pbv-root .game-rail{flex-direction:row;justify-content:flex-end;gap:12px;width:calc(100% - 40px);max-width:560px;margin:0 auto 16px;position:static}.pbv-root .round-control{width:44px;height:44px}.pbv-root .board-wrapper{padding:32px 32px 32px 38px}.pbv-root .surface{padding:24px}.pbv-root .piece{font-size:clamp(28px,8vw,50px)}.pbv-root .main-content{padding-bottom:calc(190px + env(safe-area-inset-bottom,0px))}.pbv-root .companion-dock{height:auto;min-height:calc(180px + env(safe-area-inset-bottom,0px));padding-bottom:max(8px, env(safe-area-inset-bottom,0px));margin:0;position:fixed;bottom:0;left:0;right:0}.pbv-root .pbv-shell:has(.voice-error) .main-content{padding-bottom:calc(320px + env(safe-area-inset-bottom,0px))}.pbv-root .companion-orb-row{height:132px}.pbv-root .orb-button{width:112px;height:132px}.pbv-root .companion-liquid-orb{width:132px;height:132px;left:-10px}.pbv-root .companion-caption{max-height:34px;margin-top:4px;padding-inline:24px;font-size:11px;line-height:17px}.pbv-root .dock-icon{width:44px;height:44px}.pbv-root .end-voice{right:calc(50% + 82px)}.pbv-root .preferences-grid select{font-size:16px}.pbv-root .page-loading .main-content{padding-bottom:0}.pbv-root .page-loading .companion-dock{height:0;min-height:0}.pbv-root .volume-input input{min-height:44px}.pbv-root .move-list{max-height:200px}.pbv-root .game-picker{min-height:620px}.pbv-root .settings-page,.pbv-root .help-page{margin-bottom:50px}}@media (width<=900px) and (height<=600px){.pbv-root .main-content{padding-bottom:calc(154px + env(safe-area-inset-bottom,0px))}.pbv-root .companion-dock{min-height:calc(142px + env(safe-area-inset-bottom,0px))}.pbv-root .companion-orb-row,.pbv-root .orb-button{height:96px}.pbv-root .orb-button{width:96px}.pbv-root .companion-liquid-orb{width:96px;height:96px;left:0}}@media (width<=600px){.pbv-root .site-header{flex-wrap:wrap;gap:9px;min-height:80px;padding:16px 20px}.pbv-root .header-game{gap:8px;font-size:18px}.pbv-root .site-header nav{gap:16px}.pbv-root .site-header nav button{font-size:12px}.pbv-root .page-chess .site-header nav,.pbv-root .page-loading .site-header nav{flex-basis:100%;justify-content:flex-end;margin-top:-2px}.pbv-root .game-picker{min-height:540px;padding-top:40px}.pbv-root .chess-setup-page{min-height:540px;padding:70px 16px 24px}.pbv-root .setup-rail{top:auto;left:12px;bottom:calc(190px + env(safe-area-inset-bottom,0px));z-index:5;position:fixed;transform:none}.pbv-root .setup-panel{width:min(403px,100%)}.pbv-root .game-carousel{padding-inline:24px}.pbv-root .game-cards,.pbv-root .game-card-cycle{gap:20px}.pbv-root .game-card{border-radius:40px;width:min(344px,100vw - 56px);height:396px}.pbv-root .game-card-copy{left:24px;right:24px}.pbv-root .game-card-title{font-size:28px}.pbv-root .game-card-description{font-size:15px}.pbv-root .chess-page{padding-top:8px}.pbv-root .board-wrapper{border-radius:30px;padding:25px 22px 28px 30px}.pbv-root .label-rank{font-size:10px;left:-17px}.pbv-root .label-file{font-size:10px;bottom:-16px}.pbv-root .board-status{font-size:11px}.pbv-root .playing-as{font-size:10px}.pbv-root .board-actions{gap:6px}.pbv-root .board-actions button{min-height:44px;padding-inline:10px}.pbv-root .surface{border-radius:28px;padding:20px}.pbv-root .surface h2{font-size:22px}.pbv-root .settings-page,.pbv-root .help-page{width:calc(100% - 40px);margin-top:16px}.pbv-root .settings-page h1,.pbv-root .help-page h1{font-size:27px;line-height:35px}.pbv-root .page-intro{font-size:14px;line-height:22px}.pbv-root .preferences-grid{gap:20px 16px}.pbv-root .toggle-field{gap:16px}.pbv-root .confirm-overlay,.pbv-root .promotion-overlay,.pbv-root .game-end-overlay{padding:20px}.pbv-root .confirm-dialog,.pbv-root .promotion-dialog,.pbv-root .game-end-modal{border-radius:24px;padding:28px 24px}.pbv-root .confirm-title,.pbv-root .game-end-result{font-size:22px}.pbv-root .confirm-actions{gap:8px}.pbv-root .btn{padding-inline:14px;font-size:12px}.pbv-root .promotion-btn{width:56px;height:60px;font-size:30px}}.app{flex-direction:column;min-height:100vh;display:flex}.library-link{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:8px;padding:.4rem .7rem;position:absolute;left:1rem}.library-link:hover,.library-link:focus-visible{background:var(--bg-alt)}.game-badge{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:700;position:absolute;right:1rem}.ludo-app{background:radial-gradient(circle at top,#21355a 0,#101827 52%,#090e18 100%)}.ludo-main{width:min(100% - 2rem,1220px);margin:0 auto;padding:1rem 0 2rem}.ludo-layout{grid-template-columns:minmax(280px,360px) minmax(400px,1fr);align-items:start;gap:1.2rem;margin-top:1rem;display:grid}.ludo-side{flex-direction:column;gap:.8rem;display:flex}.ludo-side .library-card,.ludo-token-list{background:var(--bg);border:1px solid var(--border);color:var(--text);border-radius:10px;padding:.8rem}.ludo-status{color:var(--accent);font-weight:700;line-height:1.4}.ludo-turn-banner{color:#fff;border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:.8rem;margin:1rem 0 0;padding:.8rem 1rem;display:grid;box-shadow:0 8px 22px #0003}.ludo-turn-banner span{letter-spacing:.08em;text-transform:uppercase;background:#0000003d;border-radius:999px;padding:.35rem .65rem;font-size:.78rem;font-weight:800}.ludo-turn-banner.human-turn{background:#b52b38}.ludo-turn-banner.computer-turn{color:#fffdf0;background:#9a7600}.ludo-turn-panel{grid-template-columns:1fr auto;align-items:center;gap:1rem;display:grid}.ludo-turn-panel p{margin:.25rem 0}.ludo-die{background:#fff;border:2px solid #243047;border-radius:12px;flex:none;grid-template-columns:repeat(3,1fr);gap:4px;width:64px;height:64px;padding:10px;display:grid;box-shadow:0 4px 10px #00000038}.ludo-die .pip{background:0 0;border-radius:50%;place-self:center;width:9px;height:9px}.ludo-die .pip.visible{background:#172033}.ludo-actions{flex-wrap:wrap;gap:.5rem;margin-top:.7rem;display:flex}.ludo-side label{margin:.5rem 0;font-size:.9rem;display:block}.ludo-token-list h3{margin:0 0 .45rem;font-size:1rem}.ludo-token-row{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:2rem 1fr auto;align-items:center;gap:.45rem;padding:.48rem .35rem;display:grid}.ludo-token-row:not(:disabled):hover,.ludo-token-row:not(:disabled):focus-visible{border-color:var(--accent);background:#5a7d5a1a}.ludo-token-row:disabled{cursor:default;opacity:.76}.ludo-token-row strong{color:var(--accent);font-size:.7rem}.token-number{color:#fff;background:#bb3d45;border-radius:50%;place-items:center;width:1.5rem;height:1.5rem;font-weight:700;display:grid}.ludo-computer .token-number{color:#19150a;background:#c4a52b}.ludo-board-section{min-width:0}.classic-ludo-board{aspect-ratio:1;background:#f8f4e8;border:clamp(5px,.8vw,10px) solid #fff;border-radius:8px;grid-template-rows:repeat(15,1fr);grid-template-columns:repeat(15,1fr);width:min(100%,690px);margin:0 auto;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 45px #0006}.classic-ludo-cell{border:1px solid #1720332e;justify-content:center;align-items:center;gap:1px;min-width:0;display:flex;position:relative}.classic-ludo-cell.track{background:#fffdf7}.classic-ludo-cell.red-yard{background:#d43c49;border-color:#ffffff14}.classic-ludo-cell.yellow-yard{background:#f0c929;border-color:#ffffff24}.classic-ludo-cell.green-yard{background:#48a66a;border-color:#ffffff14}.classic-ludo-cell.blue-yard{background:#3782bd;border-color:#ffffff14}.classic-ludo-cell.inactive-yard{filter:saturate(.5)brightness(.78)}.classic-ludo-cell.red-home-lane,.classic-ludo-cell.red-start{background:#e2545f}.classic-ludo-cell.yellow-home-lane,.classic-ludo-cell.yellow-start{background:#f3d95e}.classic-ludo-cell.home-goal{background:conic-gradient(from 45deg, #48a66a 0 25%, #f0c929 0 50%, #3782bd 0 75%, #d43c49 0);border-color:#ffffff4d}.classic-ludo-cell.blank{background:#eee8da}.classic-ludo-cell.safe{box-shadow:inset 0 0 0 2px #20304a}.safe-mark{color:#26344c;font-size:clamp(.5rem,1.8vw,1rem);line-height:1}.classic-token{z-index:3;color:#fff;border:2px solid #fff;border-radius:50%;place-items:center;width:clamp(15px,2.8vw,28px);height:clamp(15px,2.8vw,28px);font-size:clamp(.48rem,1.4vw,.72rem);font-weight:900;display:grid;box-shadow:0 2px 5px #0000007a}.classic-token.red-token{background:#9f1425}.classic-token.yellow-token{color:#fff;background:#a67b00}.classic-token+.classic-token{margin-left:-35%}.yard-label{z-index:2;color:#152039;letter-spacing:.08em;background:#ffffffe6;border-radius:999px;padding:.2rem .4rem;font-size:clamp(.5rem,1.5vw,.8rem);font-weight:900;position:absolute;box-shadow:0 2px 5px #0003}.red-yard-label{top:18%;left:17%}.yellow-yard-label{bottom:18%;right:16%}.ludo-board-help{color:#ffffffc7;text-align:center;max-width:680px;margin:.8rem auto;line-height:1.4}.ludo-confirm,.ludo-finished{background:var(--bg);border:2px solid var(--accent);width:min(100% - 2rem,520px);color:var(--text);border-radius:12px;flex-wrap:wrap;align-items:center;gap:.6rem;margin:1rem auto;padding:1rem;display:flex}.ludo-confirm p,.ludo-finished p,.ludo-finished h2{width:100%;margin:0}.intercept-app{background:radial-gradient(circle at top,#203238 0,#101c21 48%,#090f13 100%)}.intercept-main{gap:1rem;width:min(100% - 2rem,980px);margin:0 auto;padding:1rem 0 2rem;display:grid}.intercept-introduction{color:#f7f3e8;background:#14272d;border:1px solid #8fa9ad;border-left:5px solid #f2c96d;border-radius:14px;padding:clamp(1rem,3vw,1.5rem);box-shadow:0 12px 32px #0003}.intercept-introduction h2{margin:.2rem 0 .65rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.35rem,3vw,1.8rem)}.intercept-introduction p:last-child{color:#e2e9e7;max-width:78ch;margin:0;line-height:1.65}.intercept-story,.intercept-transcript{color:#172126;background:#f4eedf;border:1px solid #52656a;border-radius:14px;box-shadow:0 16px 40px #00000047}.intercept-story{padding:clamp(1rem,4vw,2.2rem)}.intercept-story-heading{border-bottom:1px solid #b7ab91;justify-content:space-between;align-items:start;gap:1rem;padding-bottom:.8rem;display:flex}.intercept-story-heading h2{margin:.15rem 0 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.6rem,4vw,2.4rem)}.intercept-story .voice-eyebrow{color:#425960}.story-state{text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:.3rem .65rem;font-size:.75rem;font-weight:800}.story-playing{color:#17452c;background:#d8eadc}.story-paused{color:#593d09;background:#f4dfb5}.story-finished{color:#293244;background:#d8dce5}.intercept-passage{max-width:74ch;margin:1.5rem auto;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.08rem,2.5vw,1.3rem);line-height:1.75}.intercept-passage p{margin:0 0 1rem}.story-ended{border-top:1px solid #b7ab91;padding-top:1rem}.intercept-choices{max-width:74ch;margin:1rem auto}.intercept-choices h3{margin:0 0 .8rem}.intercept-choice{text-align:left;color:#fff;background:#173b43;grid-template-columns:2.2rem 1fr;align-items:center;gap:.75rem;width:100%;min-height:3.5rem;margin:.55rem 0;display:grid}.intercept-choice span{color:#192327;background:#f2c96d;border-radius:50%;place-items:center;width:2rem;height:2rem;font-weight:900;display:grid}.intercept-actions{flex-wrap:wrap;gap:.55rem;max-width:74ch;margin:1.2rem auto 0;display:flex}.intercept-transcript{padding:1rem 1.2rem}.intercept-transcript summary{cursor:pointer;font-weight:800}.intercept-transcript ol{padding-left:1.5rem}.intercept-transcript li{margin:.6rem 0;line-height:1.5}.transcript-choice{color:#37545c}.intercept-credit{text-align:center;color:#ffffffbf;margin:0;font-size:.82rem}.intercept-screen-reader{margin-top:.8rem;display:block}@media (width<=760px){.ludo-layout{grid-template-columns:1fr}.ludo-turn-banner{grid-template-columns:1fr;gap:.4rem}.library-link{margin-right:auto;position:static}.game-badge{display:none}.intercept-story-heading{align-items:center}}.voice-companion{width:min(100%,1180px);max-width:1180px;margin:0 auto 1rem}.voice-heading-row,.voice-actions,.typed-command>div,.pending-action,.voice-preferences{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.voice-heading-row{justify-content:space-between}.voice-heading-row h2{color:#fff;margin:.1rem 0;font-size:clamp(1.4rem,3vw,2rem)}.voice-eyebrow{color:#6ee7b7;text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:.72rem;font-weight:800}.voice-status{color:#cbd5e1;margin:0}.voice-help,.voice-caption{color:#cbd5e1}.dashboard-overview{color:#ecfeff;background:#0f2a2b;border-left:4px solid #2dd4bf;margin:1rem 0;padding:.85rem;line-height:1.55}.resume-choice{background:#0c2235;border:2px solid #38bdf8;border-radius:.75rem;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1rem;padding:.85rem;display:flex}.resume-choice p{flex-basis:100%;margin:0;font-weight:700}.voice-onboarding{background:#111f2e;border:1px solid #475569;border-radius:.75rem;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1rem;padding:.85rem;display:flex}.voice-onboarding p{flex-basis:100%;margin:0;font-weight:700}.voice-error{background:#4c0519;border-left:4px solid #fb7185;padding:.75rem}.typed-command{gap:.45rem;margin-top:1rem;display:grid}.typed-command input{color:#0f172a;min-width:min(100%,25rem);min-height:44px;font:inherit;background:#fff;border:2px solid #64748b;border-radius:.75rem;flex:1;padding:.65rem .8rem}.typed-command input:focus{outline-offset:2px;outline:4px solid #fcd34d}.pending-action{border:2px solid #fcd34d;border-radius:.75rem;margin-top:1rem;padding:.8rem}.pending-action p{flex-basis:100%;margin:0;font-weight:700}.voice-preferences{border-top:1px solid #334155;margin-top:1rem;padding-top:1rem}.voice-preferences label{align-items:center;gap:.4rem;display:flex}.voice-preferences select{color:#0f172a;border-radius:.5rem;min-height:38px;padding:.25rem .5rem}.sr-announcement{color:#ecfdf5;background:#102a24;border-radius:.75rem;margin:1rem 0 0;padding:.8rem}@media (width<=700px){.voice-heading-row{align-items:stretch}.voice-heading-row>*{width:100%}}.app{--bg:#faf8f0;--bg-alt:#f0ede1;--text:#2c3e2d;--text-muted:#667566;--border:#c4bb9e;--accent:#5a7d5a}.library-game-root,.app{box-sizing:border-box;font-family:Inter,Arial,sans-serif}.app *,.app :before,.app :after{box-sizing:border-box}.app-header{background:var(--bg);border-bottom:1px solid var(--border);justify-content:center;align-items:center;gap:1rem;min-height:64px;padding:.75rem 1rem;display:flex;position:relative}.app-header h1{color:var(--text);margin:0;font-size:1.5rem}.library-card{color:#f8fafc;background:#0f172a;border:1px solid #334155;border-radius:1rem;padding:1rem;box-shadow:0 12px 30px #00000038}.library-button{color:#0f172a;min-height:44px;font:inherit;cursor:pointer;background:#6ee7b7;border:1px solid #6ee7b766;border-radius:.75rem;padding:.6rem 1rem;font-weight:700}.library-button:hover:not(:disabled){filter:brightness(1.08)}.library-button:focus-visible,.library-link:focus-visible{outline-offset:3px;outline:4px solid #facc15}.library-button:disabled{opacity:.5;cursor:not-allowed}.secondary-button{color:#f8fafc;background:#1e293b}.danger-button{color:#fff;background:#be123c}.sr-announcement{align-items:flex-start;gap:.45rem;display:flex}
