:root{--font-display:"Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--ink:#0d1718;--ink-soft:#152425;--paper:#eee9dd;--ember:#d97f4a;--ember-light:#eaa16f;--sage:#9eaa93}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{background:var(--ink);color:var(--paper);font-family:var(--font-sans), sans-serif;margin:0}button,input{font:inherit}a{color:inherit;text-decoration:none}.landing-shell{background:radial-gradient(circle at 77% 15%,#34544f47,#0000 27%),linear-gradient(112deg,#0c1718 0%,#102021 54%,#0d1718 100%);min-height:100vh;position:relative;overflow:hidden}.landing-shell:before{content:"";pointer-events:none;opacity:.15;background-image:radial-gradient(#eee9dd2e .6px,#0000 .6px),radial-gradient(#eee9dd1a .5px,#0000 .5px);background-position:0 0,7px 9px;background-size:13px 13px,17px 17px;position:absolute;inset:0}.site-nav{z-index:10;border-bottom:1px solid #eee9dd1f;justify-content:space-between;align-items:center;width:min(1240px,100% - 48px);height:102px;margin:0 auto;display:flex;position:relative}.brand{align-items:center;gap:13px;display:flex}.brand>span:last-child{gap:5px;line-height:1;display:grid}.brand strong{letter-spacing:.24em;font-size:14px}.brand small{letter-spacing:.34em;color:var(--sage);font-size:7px}.brand-mark{border:1px solid #eee9dd80;border-radius:50%;place-items:center;width:42px;height:42px;display:grid;position:relative}.brand-mark:before{content:"";background:var(--ember-light);width:16px;height:16px;box-shadow:-5px 2px 0 1px var(--ink);border-radius:50%}.brand-mark i{border-top:1px solid var(--paper);border-right:1px solid var(--paper);width:5px;height:5px;position:absolute;bottom:5px;transform:rotate(-45deg)}.nav-note{color:#aeb8ac;letter-spacing:.05em;align-items:center;gap:9px;font-size:11px;display:flex}.nav-note i{background:#89a889;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #89a8891a}.hero{z-index:2;grid-template-columns:.88fr 1.12fr;align-items:center;gap:70px;width:min(1240px,100% - 48px);min-height:665px;margin:0 auto;padding:78px 0 82px;display:grid;position:relative}.eyebrow{color:var(--ember-light);text-transform:uppercase;letter-spacing:.22em;align-items:center;gap:13px;margin:0 0 25px;font-size:10px;font-weight:600;display:flex}.eyebrow span{background:var(--ember);width:28px;height:1px}.hero h1{font-family:var(--font-display), serif;letter-spacing:-.045em;margin:0;font-size:clamp(64px,6.7vw,100px);font-weight:500;line-height:.82}.hero h1 em{color:var(--ember-light);font-weight:500}.hero-lead{color:#aeb8ac;font-family:var(--font-display), serif;max-width:530px;margin:34px 0 35px;font-size:20px;line-height:1.55}.hero-actions{align-items:center;gap:30px;display:flex}.button{letter-spacing:.06em;border-radius:2px;align-items:center;gap:12px;min-height:54px;padding:0 22px;font-size:12px;font-weight:700;transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ember);color:#172020;box-shadow:0 12px 30px #0003}.button-primary:hover{background:var(--ember-light)}.play-icon{font-size:9px}.text-link{color:#c1c8bd;border-bottom:1px solid #c1c8bd59;padding:10px 0;font-size:11px}.text-link span{color:var(--ember-light);margin-left:8px}.trust-row{color:#7f9187;text-transform:uppercase;letter-spacing:.09em;gap:24px;margin-top:42px;font-size:9px;display:flex}.trust-row b{color:var(--ember-light);margin-right:6px}.scene-wrap{place-items:center;min-height:520px;display:grid;position:relative}.moon{border:1px solid #eaa16f1f;border-radius:50%;place-items:center;width:500px;height:500px;display:grid;position:absolute}.moon:before,.moon:after{content:"";border:1px solid #eaa16f14;border-radius:50%;position:absolute}.moon:before{inset:50px}.moon:after{inset:105px}.moon span{opacity:.11;background:radial-gradient(circle at 38% 35%,#ece8db,#c8c3b6 60%,#92978d);border-radius:50%;width:220px;height:220px;box-shadow:0 0 80px #d8ddc71f}.scene-card{color:#152021;z-index:2;background:#e9e5d9;width:min(430px,83vw);position:relative;box-shadow:0 32px 90px #0000006e}.scene-card header{justify-content:space-between;align-items:center;min-height:69px;padding:17px 20px;display:flex}.scene-card header div{gap:4px;display:grid}.scene-card small{letter-spacing:.18em;color:#728078;font-size:7px;font-weight:700}.scene-card header strong{font-family:var(--font-display), serif;font-size:16px;font-weight:600}.live-pill{letter-spacing:.14em;border:1px solid #c5c1b7;align-items:center;gap:7px;padding:8px 10px;font-size:8px;font-weight:700;display:flex}.live-pill i{background:var(--ember);border-radius:50%;width:5px;height:5px}.phase-art{background:radial-gradient(circle at 55% 14%,#d8ddc738,#0000 19%),linear-gradient(#172c2d,#0e1c1d);height:190px;position:relative;overflow:hidden}.stars{color:#eee9dd8c;text-align:center;letter-spacing:2.5em;padding-top:28px;font-size:10px;animation:3s infinite alternate glimmer}.forest{clip-path:polygon(0 100%,0 66%,5% 44%,8% 69%,12% 27%,17% 66%,21% 37%,24% 72%,29% 18%,34% 66%,38% 32%,42% 70%,48% 20%,53% 67%,57% 41%,61% 73%,66% 28%,71% 65%,77% 15%,82% 66%,86% 38%,91% 69%,95% 26%,100% 58%,100% 100%);height:60%;position:absolute;bottom:0;left:-5%;right:-5%}.forest-back{opacity:.85;background:#213637;transform:translateY(18px)scale(1.05)}.forest-front{background:#0b1617}.wolf-mark{color:#b16e47;text-shadow:0 0 20px #d97f4a99;font-size:30px;position:absolute;bottom:35px;left:50%;transform:translate(-50%)rotate(45deg)}.scene-body{grid-template-columns:48px 1fr 42px;align-items:center;gap:16px;min-height:126px;padding:17px 20px;display:grid}.phase-label{align-content:start;justify-items:center;gap:8px;height:78px;display:grid}.phase-label span{font-family:var(--font-display), serif;color:var(--ember);font-size:22px}.phase-label i{background:#c3beb3;width:1px;height:44px}.scene-body h2{font-family:var(--font-display), serif;margin:7px 0 0;font-size:25px;font-weight:600;line-height:1}.sound-button{width:37px;height:37px;color:var(--ember);cursor:pointer;background:0 0;border:1px solid #c3beb3;border-radius:50%}.scene-card footer{text-transform:uppercase;letter-spacing:.1em;color:#6f7a74;border-top:1px solid #d0ccc2;justify-content:space-between;align-items:center;height:50px;padding:0 20px;font-size:8px;display:flex}.player-dots{display:flex}.player-dots i{color:#fff;background:#62726c;border:2px solid #e9e5d9;border-radius:50%;place-items:center;width:21px;height:21px;margin-left:-4px;font-size:7px;font-style:normal;display:grid}.player-dots i:nth-child(2){background:#b67855}.player-dots i:nth-child(3){background:#394e4d}.player-dots i:nth-child(4){background:#899285}.player-dots .more{color:#52605a;background:#d5d0c4}.floating-card{z-index:3;background:#1c2b2bf5;border:1px solid #eee9dd1f;align-items:center;gap:11px;min-width:185px;padding:14px;display:flex;position:absolute;box-shadow:0 20px 45px #0000004d}.floating-card>span{color:var(--ember-light);border:1px solid #eaa16f59;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.floating-card div{gap:4px;display:grid}.floating-card small{letter-spacing:.18em;color:#83918a;font-size:6px}.floating-card strong{font-family:var(--font-display), serif;font-size:13px}.reveal-card{top:53px;right:-12px}.sound-card{bottom:38px;left:-20px}.bars{background:repeating-linear-gradient(90deg, var(--ember) 0 2px, transparent 2px 5px);clip-path:polygon(0 45%,10% 30%,20% 70%,30% 10%,40% 80%,50% 30%,60% 70%,70% 0,80% 90%,90% 25%,100% 50%,100% 100%,0 100%);width:24px;height:15px;margin-left:auto}.join-strip{background:var(--paper);min-height:150px;color:var(--ink);z-index:4;grid-template-columns:1fr 1.3fr .65fr;align-items:center;gap:60px;padding:28px max(24px,50vw - 620px);display:grid;position:relative}.join-strip small{color:#8b8578;letter-spacing:.18em;font-size:8px;font-weight:700}.join-strip h2{font:600 30px/1 var(--font-display), serif;margin:6px 0 0}.join-strip form{position:relative}.join-strip label{text-transform:uppercase;letter-spacing:.13em;color:#79776e;margin-bottom:7px;font-size:8px;display:block}.code-field{border-bottom:1px solid #9c988e;display:flex}.code-field input{width:100%;color:var(--ink);font:600 21px/1 var(--font-sans), sans-serif;letter-spacing:.28em;text-transform:uppercase;background:0 0;border:0;outline:none;padding:8px 0 11px}.code-field input::placeholder{color:#aaa69b}.code-field button{cursor:pointer;width:46px;color:var(--ember);background:0 0;border:0;font-size:22px}.join-strip>p{font-family:var(--font-display), serif;color:#77766e;border-left:1px solid #c5c0b5;padding-left:26px;font-size:14px;line-height:1.45}.mist{filter:blur(80px);pointer-events:none;border-radius:50%;position:absolute}.mist-one{background:#6f8f8514;width:420px;height:130px;top:240px;left:-90px;transform:rotate(-20deg)}.mist-two{background:#6f8f8512;width:460px;height:150px;bottom:90px;right:-90px}@keyframes glimmer{to{opacity:.45}}@media (max-width:900px){.hero{text-align:center;grid-template-columns:1fr;gap:36px;padding-top:55px}.hero-copy{justify-items:center;display:grid}.hero-lead{max-width:620px}.eyebrow{justify-content:center}.scene-wrap{min-height:500px}.join-strip{grid-template-columns:1fr 1.2fr}.join-strip>p{display:none}}@media (max-width:600px){.site-nav,.hero{width:min(100% - 32px,1240px)}.site-nav{height:82px}.nav-note{font-size:0}.nav-note:after{content:"En présentiel";font-size:9px}.hero{padding:48px 0 68px}.hero h1{font-size:clamp(58px,18vw,78px)}.hero-lead{font-size:18px}.hero-actions{flex-direction:column;gap:12px;width:100%}.button{justify-content:center;width:100%}.trust-row{flex-wrap:wrap;justify-content:center;gap:11px}.scene-wrap{min-height:430px}.moon{width:390px;height:390px}.scene-card{width:calc(100vw - 48px)}.floating-card{display:none}.join-strip{grid-template-columns:1fr;gap:22px;padding-block:34px}.scene-body h2{font-size:22px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.setup-shell,.join-page,.room-shell,.room-loading{background:radial-gradient(circle at 18% 15%,#3a5c5638,#0000 27%),linear-gradient(120deg,#0b1516,#112122 58%,#0b1516);min-height:100vh;position:relative;overflow:hidden}.setup-shell:before,.join-page:before,.room-shell:before{content:"";pointer-events:none;opacity:.12;background-image:radial-gradient(#eee9dd40 .6px,#0000 .6px);background-size:15px 15px;position:fixed;inset:0}.simple-nav,.room-header{z-index:4;border-bottom:1px solid #eee9dd1f;justify-content:space-between;align-items:center;width:min(1240px,100% - 48px);min-height:88px;margin:0 auto;display:flex;position:relative}.simple-nav>span{color:#87938b;text-transform:uppercase;letter-spacing:.16em;font-size:9px}.setup-panel{z-index:2;grid-template-columns:1fr 1fr;align-items:center;gap:120px;width:min(1080px,100% - 48px);min-height:calc(100vh - 88px);margin:0 auto;padding:58px 0 85px;display:grid;position:relative}.setup-intro h1,.join-card h1{font:500 clamp(58px, 6vw, 86px)/.88 var(--font-display), serif;letter-spacing:-.04em;margin:0}.setup-intro>p:not(.eyebrow){font:18px/1.55 var(--font-display), serif;color:#aeb8ac;max-width:470px;margin:28px 0 40px}.setup-steps{gap:22px;margin:0;padding:0;list-style:none;display:grid}.setup-steps li{align-items:center;gap:15px;display:flex}.setup-steps li>b{width:32px;height:32px;color:var(--ember-light);font:600 14px var(--font-display), serif;border:1px solid #eaa16f66;border-radius:50%;place-items:center;display:grid}.setup-steps span{gap:3px;display:grid}.setup-steps strong{font-size:12px}.setup-steps small{color:#7f8d85;font-size:10px}.setup-form{background:var(--paper);color:var(--ink);padding:50px 54px 42px;position:relative;box-shadow:0 35px 100px #00000059}.form-symbol{width:48px;height:48px;color:var(--ember);border:1px solid #c9c3b6;border-radius:50%;place-items:center;margin-bottom:28px;font-size:25px;display:grid}.setup-form>small{color:#8a857a;letter-spacing:.2em;font-size:8px;font-weight:700}.setup-form h2{font:600 32px/1.05 var(--font-display), serif;max-width:340px;margin:9px 0 34px}.setup-form label,.join-card label{color:#77776f;letter-spacing:.15em;text-transform:uppercase;margin-bottom:8px;font-size:8px;display:block}.setup-form input,.join-card input{width:100%;color:var(--ink);font:600 19px var(--font-display), serif;background:0 0;border:0;border-bottom:1px solid #a6a196;outline:none;padding:10px 0 12px}.setup-form input:focus,.join-card input:focus{border-color:var(--ember)}.feature-note{background:#e3ded2;gap:13px;margin:32px 0;padding:17px;display:flex}.feature-note>span{color:var(--ember)}.feature-note p{gap:4px;margin:0;display:grid}.feature-note strong{font-size:10px}.feature-note small{color:#77766f;font-size:9px;line-height:1.45}.form-submit{cursor:pointer;border:0;justify-content:space-between;width:100%}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.mode-divider{color:#9a958b;text-transform:uppercase;letter-spacing:.15em;align-items:center;gap:12px;margin:17px 0;font-size:8px;display:flex}.test-mode-submit{text-align:left;width:100%;min-height:68px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #b9b2a5;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;padding:10px 13px;display:grid}.test-mode-submit:hover{border-color:var(--ember);background:#e7e1d5}.test-mode-submit:disabled{opacity:.5;cursor:not-allowed}.test-mode-symbol{width:36px;height:36px;color:var(--ember);border:1px solid #d97f4a80;border-radius:50%;place-items:center;font-size:18px;display:grid}.test-mode-submit>span:nth-child(2){gap:4px;display:grid}.test-mode-submit strong{font:600 13px var(--font-display), serif}.test-mode-submit small{color:#77766f;font-size:8px;line-height:1.35}.test-mode-submit>b{color:var(--ember)}.back-link{text-align:center;color:#89857c;margin-top:22px;font-size:9px;display:block}.form-error{color:#773e31;background:#f1d8d0;border-left:3px solid #b8553f;margin:14px 0;padding:10px 12px;font-size:10px}.join-page{place-items:center;padding:96px 24px 54px;display:grid}.join-brand{position:absolute;top:25px;left:max(24px,50vw - 620px)}.join-card{background:var(--paper);width:min(430px,100%);color:var(--ink);text-align:center;z-index:2;padding:46px 48px 38px;position:relative;box-shadow:0 35px 100px #0006}.join-card .eyebrow{justify-content:center;margin-bottom:18px}.join-card .eyebrow b{color:var(--ink);letter-spacing:.28em}.join-moon{width:65px;height:65px;color:var(--ember);border:1px solid #c6c0b4;border-radius:50%;place-items:center;margin:0 auto 28px;font-size:34px;display:grid}.join-card h1{font-size:54px}.join-card>p:not(.eyebrow){color:#77766e;font:15px/1.45 var(--font-display), serif;max-width:310px;margin:21px auto 30px}.join-card form{text-align:left}.join-card form .button{border:0;justify-content:space-between;width:100%;margin-top:24px}.join-card>small{color:#88837a;letter-spacing:.06em;margin-top:21px;font-size:8px;display:block}.room-loading{color:#91a097;align-content:center;place-items:center;gap:18px;display:grid}.room-loading p{font:18px var(--font-display), serif}.room-shell{min-height:100dvh;overflow-x:hidden}.room-header{width:calc(100% - 56px);max-width:none;padding:0 4px}.room-title{text-align:center;gap:5px;display:grid}.room-title small{color:#819088;text-transform:uppercase;letter-spacing:.18em;font-size:7px}.room-title strong{font:600 15px var(--font-display), serif}.room-tools{align-items:center;gap:18px;display:flex}.room-tools button{color:#8d9d94;cursor:pointer;background:0 0;border:1px solid #eee9dd29;padding:9px 11px;font-size:8px}.room-tools button.audio-on,.room-tools button.vibration-on{color:var(--ember-light);border-color:#eaa16f66}.room-tools>span{letter-spacing:.13em;color:#78887f;font-size:7px}.room-tools b{color:var(--paper);letter-spacing:.24em;margin-left:7px;font-size:12px}.room-tools .test-mode-badge{color:var(--ember-light);letter-spacing:.16em;border:1px solid #eaa16f59;padding:8px 10px}.room-error{z-index:40;color:#773e31;background:#f1d8d0;width:min(420px,100% - 32px);padding:12px 40px 12px 15px;font-size:11px;position:fixed;top:100px;left:50%;transform:translate(-50%);box-shadow:0 15px 45px #0000004d}.room-error button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:18px;position:absolute;top:8px;right:10px}.lobby-layout{z-index:2;grid-template-columns:.85fr 1.15fr;align-items:center;gap:85px;width:min(1160px,100% - 48px);min-height:calc(100vh - 88px);margin:0 auto;padding:45px 0 65px;display:grid;position:relative}.lobby-callout h1{font:500 clamp(58px, 5.6vw, 82px)/.86 var(--font-display), serif;letter-spacing:-.04em;margin:0}.lobby-callout>p:not(.eyebrow){color:#9aa79f;max-width:420px;font:16px/1.5 var(--font-display), serif;margin:25px 0 28px}.lobby-callout>p strong{color:var(--paper);font-weight:500}.big-code{gap:8px;margin:18px 0 14px;display:flex}.big-code span{width:52px;height:65px;color:var(--ember-light);font:600 30px var(--font-display), serif;background:#eaa16f0d;border:1px solid #eaa16f59;place-items:center;display:grid}.copy-button{color:#98a59d;cursor:pointer;background:0 0;border:0;padding:8px 0;font-size:9px}.host-reminder{border-top:1px solid #eee9dd1f;gap:14px;max-width:410px;margin-top:28px;padding-top:20px;display:flex}.host-reminder>span{color:var(--ember-light)}.host-reminder p{gap:4px;margin:0;display:grid}.host-reminder strong{font-size:10px}.host-reminder small{color:#718078;font-size:9px;line-height:1.45}.test-lobby-note{background:#eaa16f0f;border:1px solid #eaa16f3d;align-items:center;gap:14px;max-width:420px;padding:18px;display:flex}.test-lobby-note>span{width:38px;height:38px;color:var(--ember-light);border:1px solid #eaa16f61;border-radius:50%;flex:0 0 38px;place-items:center;display:grid}.test-lobby-note p{gap:4px;margin:0;display:grid}.test-lobby-note strong{font-size:11px}.test-lobby-note small{color:#86958c;font-size:9px;line-height:1.45}.lobby-players{background:var(--paper);color:var(--ink);padding:30px;box-shadow:0 35px 90px #00000052}.lobby-players>header,.player-control>header{border-bottom:1px solid #cbc6bb;justify-content:space-between;align-items:center;padding-bottom:20px;display:flex}.lobby-players header small,.role-preview>small,.player-control header small,.scene-controls>small,.end-game>small{color:#8a877e;letter-spacing:.17em;font-size:7px;font-weight:700}.lobby-players h2,.player-control h2{font:600 23px var(--font-display), serif;margin:4px 0 0}.player-grid{grid-template-columns:1fr 1fr;gap:9px;min-height:220px;max-height:330px;padding:20px 0;display:grid;overflow-y:auto}.lobby-player{background:#ded9ce;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;min-height:66px;padding:10px 12px;display:grid}.lobby-player>span,.avatar{color:#fff;width:36px;height:36px;font:600 16px var(--font-display), serif;background:#596963;border-radius:50%;place-items:center;display:grid}.lobby-player p{gap:4px;margin:0;display:grid}.lobby-player strong{font-size:10px}.lobby-player small{color:#7f7d75;font-size:7px}.lobby-player>i{color:#9e9a90;font:8px var(--font-sans)}.empty-village{color:#99968c;grid-column:1/-1;align-content:center;place-items:center;gap:10px;display:grid}.empty-village span{font-size:24px}.empty-village p{font:15px var(--font-display), serif}.role-preview{border-top:1px solid #cbc6bb;padding:15px 0}.role-preview>div{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.role-preview span{border:1px solid #c9c4b8;padding:7px 9px;font-size:8px}.role-preview b{color:var(--ember);margin-right:3px}.start-game{border:0;justify-content:space-between;width:100%;margin-top:8px}.host-console{z-index:2;grid-template-columns:190px 1fr 310px;min-height:calc(100vh - 88px);display:grid;position:relative}.phase-rail{border-right:1px solid #eee9dd1c;padding:37px 28px}.phase-rail>small{color:#6f8178;letter-spacing:.18em;font-size:7px}.phase-rail>div{color:#64756d;grid-template-columns:24px 1fr 8px;align-items:center;height:50px;display:grid;position:relative}.phase-rail>div:after{content:"";background:#eee9dd1a;width:1px;height:25px;position:absolute;top:33px;left:11px}.phase-rail>div:last-child:after{display:none}.phase-rail span{font:11px var(--font-display), serif}.phase-rail p{margin:0;font-size:9px}.phase-rail i{border:1px solid #66776f;border-radius:50%;width:6px;height:6px}.phase-rail .current{color:var(--paper)}.phase-rail .current span{color:var(--ember-light)}.phase-rail .current i{background:var(--ember);border:0;box-shadow:0 0 0 4px #d97f4a1f}.phase-rail .done i{background:#6d7e75}.director-stage{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:50px;display:flex;position:relative;overflow:hidden}.stage-orbit{aspect-ratio:1;border:1px solid #eaa16f24;border-radius:50%;place-items:center;width:min(31vw,390px);display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-59%)}.stage-orbit:before,.stage-orbit:after{content:"";border:1px solid #eaa16f14;border-radius:50%;position:absolute}.stage-orbit:before{inset:48px}.stage-orbit:after{inset:100px}.stage-orbit span{font:90px var(--font-display), serif;color:#eaa16f14}.director-stage>:not(.stage-orbit){z-index:2;position:relative}.director-stage .eyebrow{justify-content:center}.director-stage h1{max-width:720px;font:500 clamp(47px, 5vw, 75px)/.9 var(--font-display), serif;letter-spacing:-.04em;margin:0}.director-cue{color:#9caaa2;font:17px/1.45 var(--font-display), serif;max-width:600px;margin:23px 0}.test-guide{text-align:left;background:#d97f4a12;border:1px solid #eaa16f33;gap:5px;width:min(430px,100%);margin-bottom:14px;padding:11px 15px;display:grid}.test-guide span{color:var(--ember-light);letter-spacing:.17em;font-size:7px;font-weight:700}.test-guide p{color:#8e9d95;margin:0;font-size:9px;line-height:1.45}.spoken-line{border-top:1px solid #eee9dd1f;border-bottom:1px solid #eee9dd1f;min-width:min(420px,100%);padding:13px 25px}.spoken-line small{color:#64786f;letter-spacing:.16em;font-size:7px}.spoken-line p{font:italic 16px var(--font-display), serif;color:#c8cec5;margin:4px 0 0}.secret-progress{text-align:left;background:#0810116b;border:1px solid #eaa16f38;align-items:center;gap:12px;width:min(430px,100%);margin-top:17px;padding:12px 15px;display:flex}.secret-progress>span{width:28px;height:28px;color:var(--ember-light);border:1px solid #eaa16f59;border-radius:50%;flex:0 0 28px;place-items:center;display:grid}.secret-progress p{gap:2px;margin:0;display:grid}.secret-progress small{color:#64786f;letter-spacing:.14em;font-size:6px}.secret-progress strong{color:#cdd4ca;font:500 13px var(--font-display), serif}.secret-progress em{color:var(--ember-light);font:italic 11px var(--font-display), serif}.secret-progress.is-complete{background:#4a6f531a;border-color:#729c7e59}.secret-progress.is-complete>span{color:#9fc2a5;border-color:#6f9479}.director-actions{justify-items:center;gap:9px;margin-top:18px;display:grid}.director-actions .button{cursor:pointer;border:0}.force-advance{color:#788b82;letter-spacing:.08em;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #eee9dd3d;padding:4px 0;font-size:7px}.force-advance:hover{color:var(--paper)}.ready-meter{background:#eee9dd1c;width:min(330px,90%);height:2px;margin-top:22px;position:relative}.ready-meter>span{background:var(--ember);height:100%;transition:width .3s;display:block}.ready-meter p{color:#72827a;margin:8px 0;font-size:8px}.player-control{background:var(--paper);color:var(--ink);max-height:calc(100vh - 88px);padding:27px 24px;overflow-y:auto}.player-control>header>span{width:34px;height:34px;font:600 14px var(--font-display), serif;color:var(--ember);border:1px solid #c5c0b5;border-radius:50%;place-items:center;display:grid}.control-list{gap:7px;padding:17px 0;display:grid}.control-list>div{background:#e1dcd1;grid-template-columns:36px 1fr 30px;align-items:center;gap:10px;padding:7px;transition:opacity .2s;display:grid}.control-list>div.is-dead{opacity:.45}.control-list .avatar{width:34px;height:34px}.control-list p{gap:2px;margin:0;display:grid}.control-list strong{font-size:9px}.control-list small{color:#74746d;font-size:7px}.control-list button{color:#96604c;cursor:pointer;background:0 0;border:1px solid #c3bdb2;width:29px;height:29px}.scene-controls{border-top:1px solid #cbc6bb;padding-top:16px}.scene-controls>div{grid-template-columns:1fr 1fr;gap:6px;margin-top:9px;display:grid}.scene-controls button,.end-game button{color:#4c5d57;cursor:pointer;background:0 0;border:1px solid #c5c0b5;padding:9px 5px;font-size:8px}.scene-controls button:hover{background:#d9d3c7}.end-game{border-top:1px solid #cbc6bb;margin-top:18px;padding-top:15px}.end-game>div{gap:6px;margin-top:8px;display:flex}.end-game button{color:#87513e;flex:1}.player-wait,.role-reveal,.player-phase{text-align:center;z-index:2;flex-direction:column;justify-content:center;align-items:center;width:min(760px,100% - 32px);min-height:calc(100dvh - 88px);margin:0 auto;padding:48px 0 70px;display:flex;position:relative}.waiting-orbit,.mobile-orbit{border:1px solid #eaa16f2e;border-radius:50%;place-items:center;width:190px;height:190px;margin-bottom:30px;display:grid;position:relative}.waiting-orbit:before,.mobile-orbit:before{content:"";border:1px solid #eaa16f1a;border-radius:50%;position:absolute;inset:27px}.waiting-orbit>span,.mobile-orbit>span{font:80px var(--font-display), serif;color:#eaa16f40}.player-wait .eyebrow,.role-reveal .eyebrow,.player-phase .eyebrow{justify-content:center}.player-wait h1,.role-reveal h1,.player-phase h1{font:500 clamp(48px, 10vw, 72px)/.9 var(--font-display), serif;letter-spacing:-.04em;margin:0}.player-wait>p:not(.eyebrow),.player-instruction{color:#9aa89f;font:17px/1.5 var(--font-display), serif}.waiting-names{flex-wrap:wrap;justify-content:center;gap:15px;margin:28px 0 35px;display:flex}.waiting-names>span{width:48px;height:48px;font:600 17px var(--font-display), serif;border:1px solid #eee9dd40;border-radius:50%;place-items:center;display:grid;position:relative}.waiting-names>span.you{border-color:var(--ember);color:var(--ember-light)}.waiting-names small{white-space:nowrap;font:7px var(--font-sans);color:#72837a;position:absolute;top:56px}.player-wait>small{color:#65766e;letter-spacing:.12em;text-transform:uppercase;font-size:8px}.role-reveal{padding-top:34px}.role-reveal h1{font-size:52px}.secret-card{aspect-ratio:.69;cursor:pointer;perspective:900px;background:0 0;border:0;width:min(330px,100vw - 48px);margin:28px 0 20px;padding:0;position:relative}.secret-card>span{backface-visibility:hidden;flex-direction:column;justify-content:center;align-items:center;padding:34px;transition:transform .8s cubic-bezier(.2,.75,.2,1);display:flex;position:absolute;inset:0;box-shadow:0 30px 80px #0006}.card-back{background:#1a2c2c;border:1px solid #eaa16f66}.card-back:before,.card-front:before{content:"";pointer-events:none;border:1px solid #eee9dd21;position:absolute;inset:12px}.card-back>i{width:120px;height:120px;color:var(--ember-light);font:64px var(--font-display);border:1px solid #eaa16f40;border-radius:50%;place-items:center;margin-bottom:50px;display:grid}.card-back strong{font:600 18px var(--font-display), serif}.card-back small{color:#7f9087;margin-top:8px;font-size:8px}.card-front{background:var(--paper);color:var(--ink);transform:rotateY(180deg)}.secret-card.revealed .card-back{transform:rotateY(-180deg)}.secret-card.revealed .card-front{transform:rotateY(0)}.card-front>small{color:#8b877d;letter-spacing:.18em;font-size:7px}.card-front>i{font:68px var(--font-display), serif;color:var(--ember);margin:18px 0 11px}.card-front>strong{font:600 36px var(--font-display), serif}.card-front>em{color:var(--ember);font:600 8px var(--font-sans);letter-spacing:.16em;text-transform:uppercase;margin-top:6px}.card-front>p{color:#6f716b;font:14px/1.45 var(--font-display), serif}.ready-button{color:var(--ember-light);cursor:pointer;background:0 0;border:1px solid #eaa16f8c;min-width:230px;padding:14px 22px;font-size:10px}.ready-button.done{background:#eaa16f1a}.player-phase .mobile-orbit{width:150px;height:150px}.player-phase .mobile-orbit span{font-size:60px}.player-phase h1{max-width:670px}.player-instruction{max-width:550px;margin:24px auto 27px}.mini-role{border-top:1px solid #eee9dd1f;border-bottom:1px solid #eee9dd1f;align-items:center;gap:12px;margin-bottom:24px;padding:12px 18px;display:flex}.mini-role>span{color:var(--ember-light);font-size:24px}.mini-role p{text-align:left;gap:2px;margin:0;display:grid}.mini-role small{color:#6e8177;letter-spacing:.18em;font-size:6px}.mini-role strong{font:600 15px var(--font-display), serif}.teammates{margin-bottom:20px}.teammates small{color:#75877d;letter-spacing:.15em;margin-bottom:9px;font-size:7px;display:block}.teammates span{background:#d97f4a1f;border:1px solid #d97f4a4d;margin:3px;padding:8px 11px;font-size:9px;display:inline-block}.lover-bond{background:#d97f4a12;border:1px solid #d97f4a47;align-items:center;gap:12px;margin:-12px 0 22px;padding:11px 16px;display:flex}.lover-bond>span{color:var(--ember-light);font:27px var(--font-display), serif}.lover-bond p{text-align:left;gap:2px;margin:0;display:grid}.lover-bond small{color:#788b81;letter-spacing:.15em;font-size:6px}.lover-bond strong{font:600 15px var(--font-display), serif}.no-secret-action{text-align:left;border:1px solid #eee9dd1c;align-items:center;gap:13px;width:min(420px,100%);padding:15px 18px;display:flex}.no-secret-action>span{color:var(--ember-light);font-size:24px}.no-secret-action p{gap:3px;margin:0;display:grid}.no-secret-action strong{font:500 14px var(--font-display), serif}.no-secret-action small{color:#6e8077;font-size:8px}.secret-action{background:#081011b8;border:1px solid #eaa16f38;width:min(560px,100%);max-height:min(52dvh,530px);margin-top:2px;padding:22px;overflow-y:auto;box-shadow:0 24px 70px #00000042}.secret-action>small,.target-block>small{color:var(--ember-light);letter-spacing:.18em;font-size:7px;font-weight:700;display:block}.secret-action h2{font:500 26px/1.05 var(--font-display), serif;letter-spacing:-.02em;margin:8px 0 17px}.secret-candidates{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.secret-candidates button{color:#bdc9c1;cursor:pointer;background:#eee9dd09;border:1px solid #eee9dd24;align-items:center;gap:8px;min-height:49px;padding:7px 9px;font-size:9px;display:flex}.secret-candidates button>span{width:27px;height:27px;color:var(--paper);font:600 12px var(--font-display), serif;background:#243736;border-radius:50%;flex:0 0 27px;place-items:center;display:grid}.secret-candidates button.selected{border-color:var(--ember);color:var(--paper);background:#d97f4a24}.secret-candidates button:disabled{opacity:.32;cursor:not-allowed}.confirm-secret{background:var(--ember);color:#172020;cursor:pointer;border:0;width:100%;min-height:48px;margin-top:13px;font-size:10px;font-weight:700}.confirm-secret:disabled{opacity:.38;cursor:not-allowed}.submitted-note{color:#8fb29a;margin:10px 0 0;font-size:8px}.seer-result>span{color:var(--ember-light);margin-top:8px;font-size:52px;display:block}.seer-result h2{margin-bottom:4px;font-size:38px}.seer-result>strong{color:var(--ember-light);letter-spacing:.16em;text-transform:uppercase;font-size:11px}.seer-result>p{color:#7f9188;font:14px var(--font-display), serif}.witch-action{width:min(620px,100%)}.potion-status{flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:13px;display:flex}.potion-status span{color:#aebdb4;border:1px solid #eee9dd26;padding:6px 9px;font-size:7px}.potion-status span.used{opacity:.38;text-decoration:line-through}.potion-choice{color:#b9c6be;text-align:left;cursor:pointer;background:0 0;border:1px solid #eee9dd29;align-items:center;gap:12px;width:100%;padding:11px;display:flex}.potion-choice>b{width:30px;height:30px;color:var(--ember-light);border:1px solid #eaa16f4d;border-radius:50%;place-items:center;display:grid}.potion-choice>span{gap:2px;display:grid}.potion-choice strong{font-size:9px}.potion-choice small{color:#71837a;font-size:7px}.potion-choice.selected{background:#5b8b6921;border-color:#79a184}.potion-choice:disabled{opacity:.35;cursor:not-allowed}.target-block{border-top:1px solid #eee9dd1a;margin-top:15px;padding-top:14px}.target-block .secret-candidates{margin-top:9px}.phone-note{color:#5f7168;letter-spacing:.1em;text-transform:uppercase;margin-top:24px;font-size:7px}.player-dead{filter:grayscale(.55)}.player-dead .mobile-orbit span{color:#eee9dd1f}.cinematic{z-index:100;cursor:pointer;background:#081011;place-items:center;animation:.75s both cinematic-in;display:grid;position:fixed;inset:0;overflow:hidden}.cinematic:before{content:"";background:radial-gradient(circle at 50% 45%,#d97f4a26,#0000 28%),linear-gradient(135deg,#0000 30%,#53766b1a,#0000 70%);animation:2.5s ease-in-out infinite alternate cinematic-pulse;position:absolute;inset:0}.cinematic-grain{opacity:.14;background-image:radial-gradient(#eee9dd59 .6px,#0000 .7px);background-size:11px 11px;animation:.3s steps(2,end) infinite grain-shift;position:absolute;inset:0}.cinematic-moon{aspect-ratio:1;border:1px solid #eaa16f21;border-radius:50%;place-items:center;width:min(70vw,600px);display:grid;position:absolute}.cinematic-moon:before,.cinematic-moon:after{content:"";border:1px solid #eaa16f14;border-radius:50%;position:absolute}.cinematic-moon:before{inset:10%}.cinematic-moon:after{inset:24%}.cinematic-moon span{aspect-ratio:1;opacity:.14;background:radial-gradient(circle at 36% 32%,#ebe6d7,#a7aaa1);border-radius:50%;width:32%;box-shadow:0 0 100px #eee9dd29}.cinematic-death{background:#100c0c}.cinematic-death:before{background:radial-gradient(circle,#8b2e2140,#0000 32%)}.cinematic-dawn{background:#172526}.cinematic-dawn .cinematic-moon span{opacity:.35;background:#dda06d}.cinematic-copy{z-index:2;text-align:center;width:min(820px,100% - 44px);animation:1.1s .15s both cinematic-copy;position:relative}.cinematic-copy>small{color:var(--ember-light);letter-spacing:.28em;font-size:8px}.cinematic-copy h2{font:500 clamp(50px, 8vw, 100px)/.88 var(--font-display), serif;letter-spacing:-.04em;margin:20px 0}.cinematic-copy p{color:#9aaba1;font:19px var(--font-display), serif}.cinematic-copy>span{color:#52645b;letter-spacing:.15em;text-transform:uppercase;margin-top:45px;font-size:7px;display:block}@keyframes cinematic-in{0%{opacity:0}}@keyframes cinematic-pulse{to{opacity:.65;transform:scale(1.08)}}@keyframes cinematic-copy{0%{opacity:0;transform:translateY(24px)}}@keyframes grain-shift{50%{transform:translate(2px,-1px)}}@media (max-width:1000px){.host-console{grid-template-columns:145px 1fr 270px}.phase-rail{padding-inline:18px}.director-stage{padding-inline:28px}.lobby-layout{gap:45px}}@media (max-width:760px){.setup-panel,.lobby-layout{grid-template-columns:1fr;gap:45px}.setup-panel{padding-top:45px}.setup-intro{text-align:center}.setup-intro .eyebrow{justify-content:center}.setup-intro>p:not(.eyebrow){margin-inline:auto}.setup-steps{text-align:left;width:min(340px,100%);margin:0 auto}.setup-form{padding:38px 28px 32px}.room-header{width:calc(100% - 28px);min-height:76px}.room-header .brand strong{font-size:12px}.room-header .brand-mark{width:34px;height:34px}.room-title{display:none}.room-tools{gap:8px}.room-tools>span{display:none}.room-tools .test-mode-badge{display:inline-flex}.lobby-layout{text-align:center;padding-top:45px}.lobby-callout .eyebrow{justify-content:center}.lobby-callout>p:not(.eyebrow),.host-reminder{margin-inline:auto}.big-code{justify-content:center}.big-code span{width:min(13vw,50px);height:59px}.host-reminder{text-align:left}.test-lobby-note{text-align:left;margin-inline:auto}.lobby-players{padding:23px 18px}.host-console{grid-template-columns:1fr}.phase-rail{display:none}.director-stage{min-height:calc(100dvh - 76px);padding:45px 20px 320px}.stage-orbit{width:330px}.player-control{max-height:300px;padding:17px;position:absolute;bottom:12px;left:12px;right:12px;box-shadow:0 -20px 70px #00000040}.player-control>header{padding-bottom:10px}.player-control h2{font-size:18px}.control-list{grid-template-columns:1fr 1fr;max-height:105px;padding:10px 0;overflow-y:auto}.control-list>div{grid-template-columns:30px 1fr 27px}.control-list .avatar{width:29px;height:29px;font-size:13px}.scene-controls>div{grid-template-columns:repeat(4,1fr)}.end-game{display:none}.player-wait,.role-reveal,.player-phase{min-height:calc(100dvh - 76px)}.player-phase{justify-content:flex-start;padding-top:34px}.player-phase .mobile-orbit{width:105px;height:105px;margin-bottom:18px}.player-phase .mobile-orbit span{font-size:44px}.player-phase h1{font-size:46px}.player-instruction{margin:16px auto 19px}.secret-action{max-height:none}}@media (max-width:480px){.simple-nav{width:calc(100% - 32px)}.simple-nav>span{display:none}.join-card{padding:38px 25px 30px}.join-card h1{font-size:47px}.lobby-players{margin-inline:-8px}.player-grid{grid-template-columns:1fr}.setup-intro h1,.lobby-callout h1{font-size:57px}.director-stage h1{font-size:49px}.director-cue{font-size:15px}.control-list{grid-template-columns:1fr}.player-control{max-height:330px}.director-stage{padding-bottom:350px}.player-wait h1,.player-phase h1{font-size:48px}.secret-candidates{grid-template-columns:1fr 1fr}.secret-action{padding:17px 14px}.cinematic-copy h2{font-size:54px}}.nav-actions{align-items:center;gap:24px;display:flex}.nav-actions>a{color:var(--ember-light);letter-spacing:.11em;text-transform:uppercase;border-bottom:1px solid #eaa16f59;padding:10px 0;font-size:9px;font-weight:700}.setup-v2{overflow:auto}.setup-v2 .setup-panel{align-items:start;gap:80px;padding-top:56px;padding-bottom:90px}.scenario-form{padding:39px 42px 34px}.mode-picker{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 26px;display:grid}.mode-picker button{text-align:left;min-height:110px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #c7c1b5;grid-template-rows:auto auto;grid-template-columns:32px 1fr;align-content:center;gap:3px 9px;padding:15px;display:grid}.mode-picker button>span{color:var(--ember);font:26px var(--font-display), serif;grid-row:1/3}.mode-picker button strong{font:600 14px var(--font-display), serif}.mode-picker button small{color:#7e7d75;font-size:8px;line-height:1.4}.mode-picker button.selected{border-color:var(--ember);background:#d97f4a17;box-shadow:inset 0 0 0 1px #d97f4a29}.auto-creator{margin-top:19px}.scenario-heading{border-top:1px solid #cbc6bb;justify-content:space-between;align-items:end;gap:16px;margin:30px 0 14px;padding-top:20px;display:flex}.scenario-heading>div{gap:3px;display:grid}.scenario-heading small,.roles-label{color:#8a857a;letter-spacing:.18em;font-size:7px}.scenario-heading strong{font:600 18px var(--font-display), serif}.scenario-form select{color:var(--ink);background:#eee9dd;border:1px solid #aaa499;outline:none;min-height:38px;padding:0 30px 0 10px;font-size:9px}.scenario-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.scenario-grid label{margin:0}.scenario-grid label>select,.scenario-grid label>div{width:100%;margin-top:1px}.scenario-grid label>div{border:1px solid #aaa499;align-items:center;min-height:38px;padding:0 10px;display:flex}.scenario-grid input[type=number]{font:600 13px var(--font-sans);border:0;padding:0}.scenario-grid label>div small{color:#8b877f;font-size:7px}.roles-label{margin:22px 0 9px;display:block}.role-picker{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.role-picker button{color:#666961;text-align:left;cursor:pointer;background:0 0;border:1px solid #c9c4b9;grid-template-columns:24px 1fr 14px;align-items:center;gap:6px;min-height:43px;padding:5px 8px;font-size:8px;display:grid}.role-picker button>span{color:var(--ember);font:17px var(--font-display), serif;text-align:center}.role-picker button i{color:#aaa59a;text-align:right;font-style:normal}.role-picker button.selected{color:var(--ink);background:#e2ddd1;border-color:#9b8f7d}.role-picker button.selected i{color:#67806d}.scenario-form .form-submit{cursor:pointer;border:0;justify-content:center;width:100%;margin-top:19px}.mode-divider{color:#9a958b;letter-spacing:.19em;text-transform:uppercase;align-items:center;gap:9px;height:31px;font-size:6px;display:flex}.mode-divider:before,.mode-divider:after{content:"";background:#d0cbc0;flex:1;height:1px}.test-lab{border:1px solid #c9c3b7;grid-template-columns:1fr auto;gap:9px;padding:12px;display:grid}.test-lab>div{align-items:center;gap:10px;display:flex}.test-mode-symbol{color:var(--ember);font:24px var(--font-display), serif}.test-lab p{gap:2px;margin:0;display:grid}.test-lab strong{font:600 13px var(--font-display), serif}.test-lab small{color:#7e7c74;font-size:7px}.test-lab select{grid-column:1;min-height:34px}.test-lab>button{color:var(--paper);cursor:pointer;background:#243535;border:0;grid-area:1/2/3;padding:0 14px;font-size:8px;font-weight:700}.room-tools{flex-wrap:wrap;justify-content:flex-end}.mode-badge{color:#9eafa5;letter-spacing:.12em;border:1px solid #eee9dd2e;align-items:center;min-height:27px;padding:0 8px;font-size:6px!important;display:inline-flex!important}.mode-auto{color:#a7c8ae;border-color:#7eae8b59}.mode-test{color:var(--ember-light);border-color:#eaa16f59}.screen-link{color:#aebcb3;letter-spacing:.08em;border:1px solid #eee9dd26;align-items:center;min-height:29px;padding:0 9px;font-size:7px;display:inline-flex}.volume-control{color:#708179;align-items:center;gap:5px;font-size:6px;display:flex}.volume-control input{width:62px;accent-color:var(--ember)}.tv-callout{background:#eee9dd06;border:1px solid #eee9dd1f;align-items:center;gap:14px;width:min(430px,100%);margin-top:13px;padding:14px 16px;display:flex}.tv-callout>span{color:var(--ember-light);font-size:24px}.tv-callout p{gap:3px;margin:0;display:grid}.tv-callout strong{font:500 14px var(--font-display), serif}.tv-callout small{color:#73857c;font-size:8px;line-height:1.4}.auto-start{border:1px solid #87b19142;width:min(440px,100%);margin:5px 0 15px;padding:17px}.auto-start p{gap:5px;margin:0 0 12px;display:grid}.auto-start strong{color:#c9d8cb;font:600 16px var(--font-display), serif}.auto-start small{color:#75877d;font-size:8px;line-height:1.5}.auto-start .button{cursor:pointer;border:0;justify-content:center;width:100%}.auto-start .button:disabled{opacity:.38;cursor:not-allowed}.player-tv-link{color:#72857b;border-bottom:1px solid #72857b59;padding:6px 0;font-size:8px}.auto-countdown{justify-items:center;gap:5px;width:min(330px,100%);margin:-8px 0 22px;display:grid}.auto-countdown small{color:#75867d;letter-spacing:.16em;font-size:7px}.auto-countdown strong{color:var(--ember-light);font:600 29px var(--font-display), serif}.auto-countdown>span{background:linear-gradient(90deg, transparent, var(--ember), transparent);width:100%;height:2px;animation:1.3s ease-in-out infinite alternate timer-glow}@keyframes timer-glow{to{opacity:.35;transform:scaleX(.84)}}.event-history{border-top:1px solid #cbc6bb;margin-top:16px;padding-top:15px}.event-history>div{gap:3px;max-height:145px;margin-top:8px;display:grid;overflow-y:auto}.event-history p{background:#e4dfd4;grid-template-columns:17px 1fr;align-items:center;gap:5px;margin:0;padding:5px;display:grid}.event-history p span{color:var(--ember);text-align:center}.event-history p strong{color:#5d635d;font-size:7px;font-weight:500}.cinematic-variant-1:before{background:radial-gradient(circle at 28%,#6b231c52,#0000 32%),linear-gradient(105deg,#0000,#d97f4a14)}.cinematic-variant-2 .cinematic-moon{transform:rotate(12deg)scale(1.18)}.cinematic-variant-2 .cinematic-moon span{background:#b8664e}.cinematic-variant-3:before{background:repeating-linear-gradient(114deg,#0000 0 60px,#71251e1a 61px 62px),radial-gradient(circle,#53141245,#0000 36%)}.management-shell{background:radial-gradient(circle at 75% 5%, #34544f47, transparent 30%), var(--ink);min-height:100vh}.management-lock,.management-heading>button{color:#aab9b0;cursor:pointer;background:0 0;border:1px solid #eee9dd33;padding:9px 13px;font-size:8px}.management-unlock{flex-direction:column;justify-content:center;align-items:flex-start;width:min(520px,100% - 40px);min-height:calc(100vh - 88px);margin:auto;display:flex}.management-unlock .form-symbol{font:44px var(--font-display), serif;color:var(--ember);margin-bottom:24px}.management-unlock h1,.management-heading h1{font:500 clamp(55px, 7vw, 88px)/.85 var(--font-display), serif;letter-spacing:-.04em;margin:0}.management-unlock>p:not(.eyebrow){color:#95a59c;font:17px/1.5 var(--font-display), serif}.management-unlock form{gap:10px;width:100%;margin-top:20px;display:grid}.management-unlock label{color:#788b81;letter-spacing:.16em;font-size:7px}.management-unlock input{min-height:48px;color:var(--paper);background:#eee9dd0a;border:1px solid #eee9dd38;outline:none;padding:0 14px}.management-unlock .button{cursor:pointer;border:0;justify-content:center}.management-board{width:min(1180px,100% - 48px);margin:0 auto;padding:60px 0 100px}.management-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px;display:flex}.management-heading h1{font-size:64px}.management-heading>div>p:last-child{color:#7e9187;font-size:10px}.managed-games{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.managed-games article{background:#eee9dd09;border:1px solid #eee9dd21;padding:23px}.managed-games article>header,.managed-games article>footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.managed-games article>header>b{color:var(--ember-light);font:600 15px var(--font-display), serif;letter-spacing:.16em}.managed-status{color:#9ab7a0;letter-spacing:.13em;align-items:center;gap:7px;font-size:7px;display:flex}.managed-status i{background:#78a183;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #78a1831a}.managed-status.status-lobby{color:#b4a27e}.managed-status.status-lobby i{background:#c08b5e}.managed-games h2{font:500 30px var(--font-display), serif;margin:24px 0}.managed-stats{border-top:1px solid #eee9dd1a;border-bottom:1px solid #eee9dd1a;grid-template-columns:1fr 1fr 1fr;gap:10px;padding:15px 0;display:grid}.managed-stats span{color:#c1cac3;gap:4px;font-size:9px;display:grid}.managed-stats small{color:#657970;letter-spacing:.13em;font-size:6px}.managed-games article>footer{padding-top:18px}.managed-games article>footer a{color:#a4b8ab;border-bottom:1px solid #a4b8ab4d;font-size:8px}.managed-games article>footer button{color:#d48d79;cursor:pointer;background:#b559450f;border:1px solid #b5594559;padding:8px 11px;font-size:8px}.empty-management{text-align:center;border:1px dashed #eee9dd24;grid-column:1/-1;align-content:center;place-items:center;min-height:340px;display:grid}.empty-management>span{color:#eaa16f59;font:62px var(--font-display), serif}.empty-management h2{font:500 29px var(--font-display), serif;margin:15px 0 5px}.empty-management p{color:#73867c;font-size:9px}.public-screen{background:radial-gradient(circle at 50% 42%,#2d4c484d,#0000 37%),#0a1516;grid-template-rows:88px 1fr auto;min-height:100vh;display:grid;position:relative;overflow:hidden}.public-screen:before{content:"";pointer-events:none;opacity:.15;background-image:radial-gradient(#eee9dd33 .6px,#0000 .7px);background-size:13px 13px;position:absolute;inset:0}.public-screen>header{z-index:3;border-bottom:1px solid #eee9dd1f;grid-template-columns:1fr auto 1fr;align-items:center;height:88px;margin:0 32px;padding:0 4px;display:grid;position:relative}.screen-game{justify-items:center;gap:4px;display:grid}.screen-game small{color:#7d9187;font-size:8px}.screen-game strong{color:var(--ember-light);letter-spacing:.16em;font-size:10px}.screen-audio{justify-self:end;align-items:center;gap:9px;display:flex}.screen-audio button{color:#93a49b;cursor:pointer;background:0 0;border:1px solid #eee9dd33;padding:9px 12px;font-size:8px}.screen-audio button.active{color:var(--ember-light);border-color:#eaa16f59}.screen-audio input{width:90px;accent-color:var(--ember)}.screen-stage{text-align:center;z-index:2;flex-direction:column;justify-content:center;align-items:center;min-height:0;padding:35px 40px;display:flex;position:relative}.screen-orbit{aspect-ratio:1;border:1px solid #eaa16f24;border-radius:50%;place-items:center;width:min(52vh,44vw);display:grid;position:absolute}.screen-orbit:before,.screen-orbit:after{content:"";border:1px solid #eaa16f12;border-radius:50%;position:absolute}.screen-orbit:before{inset:12%}.screen-orbit:after{inset:27%}.screen-orbit>span{color:#eaa16f1c;font:16vh var(--font-display), serif}.screen-stage>:not(.screen-orbit){z-index:2;position:relative}.screen-stage .eyebrow{margin-bottom:20px}.screen-stage h1{width:min(1100px,92vw);font:500 clamp(72px, 9vw, 145px)/.82 var(--font-display), serif;letter-spacing:-.045em;margin:0}.screen-stage>p:not(.eyebrow){color:#97a89e;font:20px var(--font-display), serif}.screen-code{gap:12px;margin-top:24px;display:flex}.screen-code span{width:68px;height:76px;color:var(--ember-light);font:600 34px var(--font-display), serif;background:#d97f4a0f;border:1px solid #eaa16f59;place-items:center;display:grid}.screen-countdown{justify-items:center;gap:3px;margin-top:18px;display:grid}.screen-countdown small{color:#6f8278;letter-spacing:.17em;font-size:7px}.screen-countdown strong{color:var(--ember-light);font:600 48px var(--font-display), serif}.screen-countdown>i{background:#eee9dd1a;width:300px;height:2px}.screen-countdown>i span{background:var(--ember);height:100%;transition:width .25s linear;display:block}.screen-village{z-index:3;background:#070e0f8c;border-top:1px solid #eee9dd1c;justify-content:space-between;align-items:center;gap:25px;min-height:94px;padding:16px 32px;display:flex;position:relative}.screen-village>div:first-child{gap:4px;min-width:130px;display:grid}.screen-village small{color:#60736a;letter-spacing:.17em;font-size:6px}.screen-village strong{font:500 16px var(--font-display), serif}.screen-village>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.screen-village span{color:#aab9b0;align-items:center;gap:6px;font-size:8px;display:flex}.screen-village span i{width:27px;height:27px;color:var(--ember-light);font:600 11px var(--font-display), serif;border:1px solid #eee9dd33;border-radius:50%;place-items:center;display:grid}.screen-village span.dead{opacity:.3;text-decoration:line-through}.screen-loading{color:#84968c;align-content:center;place-items:center;gap:20px}.public-phase-night,.public-phase-wolves,.public-phase-guardian,.public-phase-witch,.public-phase-seer{background:radial-gradient(circle at 50% 43%,#2539435c,#0000 35%),#080f13}.public-phase-dawn{background:radial-gradient(circle at 50% 47%,#ca804f2e,#0000 35%),#192829}@media (max-width:900px){.setup-v2 .setup-panel{gap:45px}.scenario-form{padding-inline:30px}.managed-games{grid-template-columns:1fr}.public-screen>header{grid-template-columns:1fr 1fr}.screen-game{display:none}.screen-stage h1{font-size:clamp(55px,11vw,95px)}.screen-village{align-items:flex-start}}@media (max-width:760px){.nav-actions .nav-note{display:none}.scenario-grid{grid-template-columns:1fr}.role-picker{grid-template-columns:1fr 1fr}.screen-link,.volume-control{display:none}.room-tools .mode-badge{display:inline-flex}.event-history{display:none}.management-heading{align-items:flex-start}.management-heading h1{font-size:49px}.managed-stats{grid-template-columns:1fr}.public-screen{grid-template-rows:72px 1fr auto}.public-screen>header{height:72px;margin:0 16px}.public-screen .brand small,.screen-audio input{display:none}.screen-stage{padding:24px 18px}.screen-code{gap:5px}.screen-code span{width:13vw;height:57px;font-size:25px}.screen-village{flex-direction:column;gap:10px;padding:13px 17px}.screen-village>div:last-child{justify-content:flex-start}}@media (max-width:480px){.mode-picker,.role-picker,.test-lab{grid-template-columns:1fr}.test-lab>button{grid-area:auto/1;min-height:40px}.management-board{width:calc(100% - 30px);padding-top:38px}.management-heading{display:grid}.managed-games article{padding:18px}.screen-stage h1{font-size:51px}.screen-stage>p:not(.eyebrow){font-size:15px}.screen-village>div:last-child{max-height:68px;overflow:hidden}}.music-credits-link{color:var(--ember-light);letter-spacing:.08em;border-bottom:1px solid #eaa16f40;margin-top:6px;font-size:7px;display:inline-block}.now-playing,.screen-now-playing{align-items:center;gap:7px;max-width:145px;display:flex}.now-playing>i,.screen-now-playing>i{align-items:end;gap:2px;height:19px;display:flex}.now-playing b,.screen-now-playing b{background:var(--ember-light);width:2px;min-height:3px;animation:.72s ease-in-out infinite alternate soundbar;display:block}.now-playing b:nth-child(2),.screen-now-playing b:nth-child(2){animation-delay:-.28s}.now-playing b:nth-child(3),.screen-now-playing b:nth-child(3){animation-delay:-.52s}.now-playing b:nth-child(4),.screen-now-playing b:nth-child(4){animation-delay:-.14s}.now-playing small,.screen-now-playing small{text-overflow:ellipsis;white-space:nowrap;color:#9cada3;letter-spacing:.04em;font-size:6px;overflow:hidden}.audio-error{max-width:180px;color:#e39a82!important;letter-spacing:.04em!important;font-size:7px!important}@keyframes soundbar{0%{opacity:.45;height:4px}to{opacity:1;height:18px}}.ambient-world{z-index:1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.ambient-world:before{content:"";background:radial-gradient(at 20% 75%,#8ea09312,#0000 31%),radial-gradient(at 80% 45%,#5f786f12,#0000 35%);animation:16s ease-in-out infinite alternate forest-breathe;position:absolute;inset:-10%}.ambient-world:after{content:"";opacity:0;background:linear-gradient(#04090cd1,#0000 58%);position:absolute;inset:-15% -10%;transform:translateY(-12%)}.ambient-world>span{opacity:.09;background:radial-gradient(#9eaaa1 0%,#4e655e73 38%,#0000 69%);border-radius:50%;width:150%;height:28%;animation:26s ease-in-out infinite alternate mist-drift;position:absolute;left:-25%;transform:rotate(-4deg)}.ambient-world>span:first-of-type{top:22%}.ambient-world>span:nth-of-type(2){opacity:.06;animation-duration:34s;animation-direction:alternate-reverse;bottom:6%}.ambient-world>i{opacity:0;background:#df9361;border-radius:50%;width:3px;height:3px;animation:9s linear infinite ember-rise;position:absolute;box-shadow:0 0 10px #eaa16fcc}.ambient-world>i:first-child{animation-delay:-2s;bottom:5%;left:12%}.ambient-world>i:nth-child(2){animation-duration:12s;animation-delay:-7s;bottom:2%;left:37%}.ambient-world>i:nth-child(3){animation-duration:10s;animation-delay:-4s;bottom:7%;right:29%}.ambient-world>i:nth-child(4){animation-duration:14s;animation-delay:-8s;bottom:1%;right:9%}.phase-night .ambient-world:after,.phase-wolves .ambient-world:after,.phase-seer .ambient-world:after,.phase-witch .ambient-world:after,.phase-guardian .ambient-world:after,.public-phase-night .ambient-world:after,.public-phase-wolves .ambient-world:after,.public-phase-seer .ambient-world:after,.public-phase-witch .ambient-world:after,.public-phase-guardian .ambient-world:after{animation:1.25s ease-out both night-fall}.phase-wolves .ambient-world>i,.public-phase-wolves .ambient-world>i{background:#bb4b3b;box-shadow:0 0 14px #bb4b3be6}@keyframes forest-breathe{to{opacity:.58;transform:scale(1.08)translate(1.5%,-1%)}}@keyframes mist-drift{to{opacity:.14;transform:translate(11%,-9%)rotate(2deg)}}@keyframes ember-rise{0%{opacity:0;transform:translate(0,0)scale(.6)}18%{opacity:.8}75%{opacity:.25}to{opacity:0;transform:translate(38px,-55vh)scale(1.5)}}@keyframes night-fall{0%{opacity:0;transform:translateY(-12%)}to{opacity:1;transform:translateY(0)}}.director-stage,.screen-stage,.player-phase.phase-enter{animation:.82s cubic-bezier(.2,.75,.2,1) both phase-surface-in}.director-stage:before,.screen-stage:before,.player-phase.phase-enter:before{content:"";pointer-events:none;z-index:4;background:linear-gradient(#071112 0%,#071112b8 40%,#0000 78%);animation:1.1s cubic-bezier(.2,.7,.2,1) both phase-curtain;position:absolute;inset:0}.director-stage>h1,.screen-stage>h1,.player-phase.phase-enter>h1{animation:.9s cubic-bezier(.18,.76,.2,1) .12s both phase-title-in}.director-stage>.director-cue,.screen-stage>p:not(.eyebrow),.player-phase.phase-enter>.player-instruction{animation:.8s ease-out .3s both phase-copy-in}@keyframes phase-surface-in{0%{opacity:.55;transform:scale(1.018)}}@keyframes phase-curtain{0%{opacity:.96;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(18%)}}@keyframes phase-title-in{0%{opacity:0;transform:translateY(22px)scale(.98)}}@keyframes phase-copy-in{0%{opacity:0;transform:translateY(13px)}}.stage-orbit:before,.screen-orbit:before,.waiting-orbit:before,.mobile-orbit:before{border-style:dashed;animation:42s linear infinite orbit-turn}.stage-orbit:after,.screen-orbit:after{border-style:dotted;animation:58s linear infinite reverse orbit-turn}.stage-orbit>span,.screen-orbit>span,.waiting-orbit>span,.mobile-orbit>span{animation:6s ease-in-out infinite alternate moon-breathe}.phase-wolves .stage-orbit>span,.phase-wolves .mobile-orbit>span,.public-phase-wolves .screen-orbit>span{color:#be402f3b;animation:1.4s ease-out both wolf-awakens,6s ease-in-out 1.4s infinite alternate moon-breathe}.phase-dawn .stage-orbit,.public-phase-dawn .screen-orbit{animation:1.7s ease-out both dawn-opens}@keyframes orbit-turn{to{transform:rotate(360deg)}}@keyframes moon-breathe{to{opacity:.62;text-shadow:0 0 35px #eaa16f33;transform:scale(1.08)}}@keyframes wolf-awakens{0%{opacity:0;transform:scale(.62)}45%{opacity:1;text-shadow:0 0 55px #b6372b94;transform:scale(1.24)}to{transform:scale(1)}}@keyframes dawn-opens{0%{opacity:.2;transform:scale(.82)}to{opacity:1;transform:scale(1.08)}}.secret-candidates button{transition:transform .16s,opacity .16s,border-color .16s,background .16s}.secret-candidates button:hover{transform:translateY(-2px)}.secret-candidates button.selected{transform:translateY(-2px)scale(1.015)}.secret-candidates button.selected>span{animation:.45s ease-out both choice-pulse}.confirm-secret:not(:disabled){position:relative;overflow:hidden}.confirm-secret:not(:disabled):after{content:"";background:linear-gradient(105deg,#0000 20%,#ffffff4d 48%,#0000 72%);animation:2.8s ease-in-out 1s infinite confirm-glint;position:absolute;inset:0;transform:translate(-120%)}@keyframes choice-pulse{50%{transform:scale(1.2)}}@keyframes confirm-glint{0%,70%{transform:translate(-120%)}to{transform:translate(120%)}}.auto-countdown.is-urgent strong,.screen-countdown.is-urgent strong{color:#db7158;animation:1s ease-in-out infinite urgent-beat}.screen-countdown.is-urgent>i span{background:#c44e3d;box-shadow:0 0 14px #c44e3d8c}.public-phase-vote .screen-orbit{animation:10s ease-in-out infinite alternate vote-closes}@keyframes urgent-beat{50%{text-shadow:0 0 22px #cf503d6b;transform:scale(1.07)}}@keyframes vote-closes{to{border-color:#be49364d;transform:scale(.94)}}.screen-village span.dead{animation:.85s ease-out both death-mark}.screen-village span.dead i,.control-list>div.is-dead .avatar{animation:.8s ease-out both light-out}.control-list>div.is-dead{animation:.75s ease-out both death-mark}.player-dead{animation:1.1s ease-out both player-death-fade}@keyframes death-mark{0%{opacity:1;transform:scale(1.05)}to{opacity:.3;transform:scale(.98)}}@keyframes light-out{0%{box-shadow:0 0 24px #eaa16f80}to{box-shadow:none;transform:scale(.9)}}@keyframes player-death-fade{0%{opacity:1;transform:scale(1.015)}to{filter:grayscale(.55)}}.cinematic{will-change:opacity, transform}.cinematic-death{animation:.85s ease-out both death-flash}.cinematic-death .cinematic-moon{animation:1.3s cubic-bezier(.3,.72,.25,1) both death-moon}.cinematic-death .cinematic-copy h2{animation:1.1s cubic-bezier(.2,.7,.2,1) .22s both death-title}.cinematic-wolves .cinematic-moon span{color:#bd4938;animation:1.4s ease-out both wolf-awakens}.cinematic-victory .cinematic-moon{animation:5s ease-in-out infinite alternate victory-halo}@keyframes death-flash{0%{opacity:0;background:#b64232}13%{opacity:1;background:#3d1715}to{background:#100c0c}}@keyframes death-moon{0%{opacity:.9;transform:scale(1.18)}38%{transform:scale(.94)}to{opacity:.5;transform:scale(1)}}@keyframes death-title{0%{opacity:0;transform:translateY(-18px)}55%{opacity:1;transform:translateY(8px)}to{transform:translateY(0)}}@keyframes victory-halo{to{border-color:#eaa16f4d;transform:scale(1.1)}}.credits-shell{background:radial-gradient(circle at 23% 30%,#3d5b5545,#0000 32%),linear-gradient(120deg,#0a1415,#142526);min-height:100vh}.credits-content{grid-template-columns:.9fr 1.1fr;align-items:center;gap:90px;width:min(1100px,100% - 48px);min-height:calc(100vh - 88px);margin:0 auto;padding:60px 0 90px;display:grid}.credits-content h1{font:500 clamp(58px, 6.5vw, 92px)/.84 var(--font-display), serif;letter-spacing:-.045em;margin:0}.credits-content>div:first-child>p:not(.eyebrow){color:#91a299;max-width:470px;font:18px/1.55 var(--font-display), serif;margin:28px 0}.credit-tracks{background:var(--paper);color:var(--ink);padding:22px}.credit-tracks>a{border-bottom:1px solid #cbc6bb;grid-template-columns:34px 1fr 22px;align-items:center;gap:14px;min-height:92px;padding:14px;transition:background .2s,transform .2s;display:grid}.credit-tracks>a:hover{background:#e0dbcf;transform:translate(3px)}.credit-tracks>a>span{color:var(--ember);font:16px var(--font-display), serif}.credit-tracks p{gap:3px;margin:0;display:grid}.credit-tracks small{color:#8b877d;letter-spacing:.15em;text-transform:uppercase;font-size:6px}.credit-tracks strong{font:600 19px var(--font-display), serif}.credit-tracks em{color:#7d7c74;font-size:8px;font-style:normal}.credit-tracks>a>b{color:var(--ember);font-weight:400}.credit-tracks>p{color:#858178;padding:16px 14px 4px;font-size:7px;display:block}.credit-tracks>p a{color:#9b5b3e;border-bottom:1px solid #b69380}@media (max-width:900px){.credits-content{grid-template-columns:1fr;gap:45px}.screen-now-playing{display:none}}@media (max-width:760px){.ambient-world>span,.ambient-world>i:nth-child(n+3),.room-tools .now-playing{display:none}.credits-content{width:calc(100% - 32px);padding-top:42px}.credits-content>div:first-child{text-align:center}.credits-content .eyebrow{justify-content:center}.credits-content h1{font-size:56px}}@media (prefers-reduced-motion:reduce){.ambient-world *,.ambient-world:before,.ambient-world:after,.director-stage,.director-stage:before,.director-stage>h1,.director-stage>.director-cue,.screen-stage,.screen-stage:before,.screen-stage>h1,.screen-stage>p,.player-phase,.player-phase:before,.player-phase>h1,.player-phase>.player-instruction,.stage-orbit:before,.stage-orbit:after,.stage-orbit>span,.screen-orbit:before,.screen-orbit:after,.screen-orbit>span,.waiting-orbit:before,.waiting-orbit>span,.mobile-orbit:before,.mobile-orbit>span,.now-playing b,.screen-now-playing b,.auto-countdown *,.screen-countdown *,.cinematic,.cinematic *{transition-duration:.01ms!important;animation:none!important}}
