: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}.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{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-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}.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}.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}.director-actions{margin-top:24px}.director-actions .button{cursor:pointer;border:0}.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}.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}.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}.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)}}@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}.cinematic-copy h2{font-size:54px}}
