:root{font-family:ui-rounded,"SF Pro Rounded",system-ui,sans-serif;color:#201a45;background:#100a33}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -10%,#4b288f,#181047 44%,#0c0829);font-size:16px}body:before{content:"";position:fixed;inset:0;opacity:.4;pointer-events:none;background-image:radial-gradient(circle,#fff 1px,transparent 1.5px),radial-gradient(circle,#ffd65a 1px,transparent 1.5px);background-position:0 0,23px 31px;background-size:75px 75px,105px 105px}button,input{font:inherit}button{cursor:pointer}.start{position:relative;width:min(calc(100% - 36px),480px);margin:max(26px,8vh) auto;padding:38px 32px 32px;border:1px solid #ffffff2b;border-radius:32px;background:linear-gradient(155deg,#ffffff18,#ffffff0a);box-shadow:0 30px 80px #03011199;backdrop-filter:blur(18px);text-align:center;color:#fff}.mark,.orb{margin:0 auto 18px;display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:linear-gradient(145deg,#ffd963,#f3aa26);color:#301a65;box-shadow:0 10px 35px #ffca3a4d;font:800 2.3rem Georgia}.eyebrow{margin:0 0 9px;color:#ffd65a;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.start h1{margin:0;font:700 clamp(2.3rem,8vw,3.6rem)/1.02 Georgia,serif;letter-spacing:-.04em}.start h1 em{color:#ffd65a;font-weight:400}.intro{margin:20px auto 26px;max-width:360px;color:#d9d2f4;line-height:1.55}.start label{display:block;text-align:left;color:#e4dffa;font-weight:700;font-size:.9rem}.start label input{margin-top:7px}.start form>button{width:100%;margin-top:12px}.or{display:flex;align-items:center;gap:12px;margin:20px 0;color:#aaa0cf;font-size:.82rem}.or span{height:1px;flex:1;background:#ffffff1c}.join{display:grid;grid-template-columns:1fr auto;gap:9px}.join input{text-align:center;text-transform:uppercase;font-weight:900;letter-spacing:.18em}input{width:100%;height:48px;padding:0 15px;border:1px solid #dcd5f1;border-radius:13px;background:#fff;color:#211a46;font-size:16px;outline:none}input:focus{border-color:#7950ed;box-shadow:0 0 0 3px #7950ed33}button:not(.room,.leave,.text-button){min-height:48px;padding:0 18px;border:0;border-radius:14px;background:linear-gradient(135deg,#7d4bff,#5e36dc);color:#fff;box-shadow:0 8px 18px #3e1aa94d;font-weight:800}.outline{border:1px solid #ffffff48!important;background:#ffffff10!important;box-shadow:none!important}header{position:relative;max-width:1060px;margin:auto;min-height:92px;padding:16px 18px 0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:#fff}header .eyebrow{margin:0;font-size:.64rem}.room,.leave{border:0;background:none;color:#fff}.room{padding:0;font-size:1.55rem;font-weight:900;letter-spacing:.16em}.round{padding:8px 15px;border:1px solid #ffffff24;border-radius:999px;background:#ffffff12;color:#ddd6f5;font-size:.85rem;font-weight:700}.leave{justify-self:end;width:42px;height:42px;border-radius:50%;background:#ffffff12;font-size:1.3rem}.grid{position:relative;max-width:1060px;margin:auto;padding:0 18px 36px;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.8fr);gap:18px;align-items:start}.play,.side{border-radius:27px;background:#fff;box-shadow:0 24px 55px #03011566}.play{min-height:600px;overflow:hidden}.centre{min-height:600px;padding:50px 28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle at 50% 30%,#faf8ff,#eee9ff)}.centre h2{margin:0;font:700 clamp(2.1rem,5vw,3.7rem)/1.03 Georgia,serif;color:#5c32ca;letter-spacing:-.035em}.centre>p:not(.eyebrow){max-width:420px;color:#6c648d;line-height:1.55}.centre form{display:grid;gap:10px;width:min(100%,390px);margin-top:12px}.role{padding:19px 26px;display:flex;justify-content:space-between;gap:15px;background:#eee9ff;color:#665b8c}.role strong{color:#5c32ca}.clues{padding:29px 28px 15px}.title{display:flex;align-items:center;gap:9px}.title b{font-size:1.1rem}.title i{margin-left:auto;display:grid;place-items:center;min-width:26px;height:26px;padding:0 7px;border-radius:99px;background:#eee9ff;color:#6540c7;font-size:.78rem;font-style:normal;font-weight:800}.empty{padding:26px 0;color:#8d85a7;text-align:center}.clues ol,.side ul{list-style:none;padding:0;margin:22px 0}.clues li{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid #eeeaf8;line-height:1.5}.clues li>b{flex:0 0 30px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#ffe58c;color:#5a4300}.entry{display:grid;grid-template-columns:1fr auto;gap:10px;padding:18px 28px 12px}.text-button{display:block;margin:0 auto 18px;padding:10px;border:0;background:none;color:#8b819f}.side{padding:23px;margin-bottom:18px}.side ul{margin:17px 0 0}.side li{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #eeeaf8}.avatar{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:linear-gradient(145deg,#7b4dff,#5830cd);color:#fff;font-weight:900}.pname{flex:1;font-weight:800}.pname small{display:block;color:#968daa;font-size:.7rem}.side li>strong{font-size:.85rem;color:#665d80}.guesses li>span{flex:1;display:flex;flex-direction:column}.guesses li span b{font-size:.75rem;color:#7a6e9a}.guesses button{min-height:34px!important;padding:0 10px!important;border-radius:9px!important;background:#e6dbff!important;color:#5730bb!important;box-shadow:none!important;font-size:.75rem!important}#toast{position:fixed;z-index:10;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translate(-50%,20px);opacity:0;pointer-events:none;max-width:calc(100% - 36px);padding:12px 18px;border-radius:14px;background:#be3154;color:#fff;box-shadow:0 10px 35px #0008;font-weight:700;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}
.header-actions{justify-self:end;display:flex;align-items:center;gap:8px}.end-game{min-height:38px!important;padding:0 12px!important;border:1px solid #ffffff35!important;background:#ffffff12!important;box-shadow:none!important;font-size:.78rem!important}.header-actions .leave{justify-self:auto}@media(max-width:760px){.grid{grid-template-columns:1fr}.play,.centre{min-height:510px}.side{border-radius:22px}.entry{grid-template-columns:1fr;padding:16px 20px}.clues{padding:24px 20px 8px}.role{padding:17px 20px}header{min-height:82px}.round{font-size:.75rem}.room{font-size:1.3rem}.start{padding:32px 22px}.end-game{padding:0 9px!important;font-size:.7rem!important}}
@media(max-width:420px){.join{grid-template-columns:1fr}.start h1{font-size:2.45rem}.grid{padding-inline:12px}.round{padding:7px 10px}.centre{padding-inline:20px}.centre h2{font-size:2.35rem}}
