:root{color-scheme:dark;--ink:#f4f3f0;--muted:#979ba8;--surface:#191d28;--surface2:#202634;--line:#343b4a;--mint:#b8f25d;--coral:#ff725e;--violet:#a79bff;--felt:#253e3b;--felt2:#1b302f;--gold:#f0c46e}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#10131b;color:var(--ink);font-family:'DM Sans',sans-serif;overflow-x:hidden}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--mint);outline-offset:3px}.ambient{position:fixed;pointer-events:none;border-radius:50%;filter:blur(100px);opacity:.12;z-index:-1}.ambient-one{width:420px;height:420px;background:#6155dc;top:-160px;left:14%}.ambient-two{width:360px;height:360px;background:#58b9a8;bottom:-160px;right:4%}.topbar{height:76px;padding:0 clamp(20px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff0d;background:#11141bea;position:relative;z-index:2}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);font-family:Manrope,sans-serif;font-size:19px;font-weight:800;letter-spacing:-.8px}.brand>span:last-child{color:var(--mint);margin-left:-8px}.brand-mark{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--mint);color:#182017;font-size:19px;margin-right:2px}.topbar-right{display:flex;align-items:center;gap:11px;color:var(--muted);font-size:12px}.online-dot{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 12px #b8f25d80}.icon-button,.profile-chip{border:1px solid var(--line);background:#1a1e29;border-radius:999px}.icon-button{width:29px;height:29px;color:var(--mint);font-weight:800}.profile-chip{display:flex;align-items:center;gap:8px;padding:4px 11px 4px 4px;font-size:12px;color:var(--ink);margin-left:10px}.avatar-mini{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#d5a58e;color:#322522;font-weight:800}.app-shell{max-width:1400px;margin:auto;padding:42px clamp(18px,4vw,60px) 56px}.screen{animation:screenIn .45s cubic-bezier(.2,.8,.2,1) both}@keyframes screenIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.eyebrow{font-size:10px;letter-spacing:1.7px;color:#a3a8b5;font-weight:800}.hero{max-width:760px;margin:7vh auto 50px;text-align:center}.hero-kicker{display:inline-flex;align-items:center;gap:8px;border:1px solid #4b535b;background:#1b2223;border-radius:99px;padding:8px 13px;color:#c5d2c0;font-size:11px}.hero-kicker i{display:block;width:6px;height:6px;background:var(--mint);border-radius:50%;box-shadow:0 0 10px var(--mint)}h1,h2,h3,p{margin-top:0}.hero h1{font:800 clamp(42px,7vw,77px)/1.02 Manrope,sans-serif;letter-spacing:-4px;margin:22px 0 15px}.hero h1 em{font-style:normal;color:var(--mint)}.hero>p{color:#a8acb7;font-size:15px;line-height:1.6;max-width:500px;margin:0 auto}.room-toolbar{display:flex;align-items:center;justify-content:space-between;margin:0 auto 17px;max-width:920px}.room-toolbar h2{font:700 18px Manrope,sans-serif;margin:0}.room-list{max-width:920px;margin:auto;display:grid;gap:11px}.room-card{display:flex;align-items:center;gap:15px;padding:15px 17px;background:linear-gradient(110deg,#1c222e,#191e29);border:1px solid #323949;border-radius:16px;transition:.22s}.room-card:hover{transform:translateY(-2px);border-color:#657056}.room-symbol{width:49px;height:49px;display:grid;place-items:center;background:linear-gradient(145deg,#414a59,#282e3a);border-radius:13px;font-size:22px}.room-card-info{flex:1;min-width:0}.room-card-info strong{display:block;font-size:14px}.room-card-info span{display:block;color:#9298a6;font-size:11px;margin-top:5px}.room-count{color:#c8cbd3;font-size:12px;white-space:nowrap}.button{border:0;border-radius:12px;padding:12px 17px;font-size:12px;font-weight:800;transition:transform .2s,filter .2s}.button:hover{transform:translateY(-2px);filter:brightness(1.06)}.button-primary{background:var(--mint);color:#1c2416;box-shadow:0 6px 20px #a6e95022}.button-secondary{border:1px solid #42495a;background:#242a37;color:#eaebef}.button-small{padding:10px 14px}.room-actions{display:flex;align-items:center;gap:9px}.room-meta{display:flex;gap:8px;align-items:center;color:#9da3b0;font-size:11px}.room-meta .live{width:7px;height:7px;background:var(--mint);border-radius:50%}.empty-state{text-align:center;padding:40px 20px;background:#ffffff06;border:1px dashed #343b4b;border-radius:17px;color:#a6a9b4}.room-footer{max-width:920px;margin:22px auto 0;display:flex;justify-content:space-between;align-items:center;color:#777e8e;font-size:11px}.room-code{font-family:monospace;letter-spacing:1px;color:#c0c3cc}.back-link{background:none;border:0;color:#a5a9b5;font-size:12px;padding:0}.page-title{text-align:center;margin:26px auto 34px}.page-title h1{font:800 39px/1.1 Manrope;letter-spacing:-1.7px;margin:10px 0}.page-title p{font-size:13px;color:#9da2af}.vote-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;max-width:900px;margin:auto}.panel{background:linear-gradient(145deg,#1b202b,#171b25);border:1px solid #303746;border-radius:21px;padding:22px}.panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.panel-title h2{font:700 15px Manrope;margin:0}.vote-counter{font-size:10px;color:#9da2ad}.theme-list{display:grid;gap:10px}.theme-option{width:100%;display:flex;align-items:center;gap:12px;text-align:left;background:#232a37;border:1px solid transparent;border-radius:14px;padding:12px;transition:.2s}.theme-option:hover{border-color:#626a79}.theme-option.selected{border-color:var(--mint);background:#283329}.theme-art{width:45px;height:45px;border-radius:12px;display:grid;place-items:center;font-size:23px;background:linear-gradient(140deg,#4a2c3c,#273451)}.theme-option:nth-child(2) .theme-art{background:linear-gradient(140deg,#364326,#40343c)}.theme-option:nth-child(3) .theme-art{background:linear-gradient(140deg,#243b51,#493d31)}.theme-copy{flex:1}.theme-copy strong{display:block;font-size:12px}.theme-copy small{display:block;margin-top:4px;color:#9ca1ae;font-size:10px}.radio-dot{width:17px;height:17px;border:1px solid #6a7080;border-radius:50%;display:grid;place-items:center}.selected .radio-dot{border-color:var(--mint)}.selected .radio-dot:after{content:'';width:9px;height:9px;border-radius:50%;background:var(--mint)}.vote-summary{display:grid;gap:10px}.vote-summary-card{padding:14px;background:#242a36;border-radius:13px}.vote-summary-card span{color:#9ca2b1;font-size:10px;display:block}.vote-summary-card strong{display:block;font-size:12px;margin-top:6px}.vote-track{height:5px;background:#343b48;border-radius:99px;margin-top:12px;overflow:hidden}.vote-track i{display:block;width:50%;height:100%;background:var(--mint);border-radius:99px;transition:width .4s}.vote-participants{display:flex;gap:8px;margin:17px 0 14px}.vote-person{display:flex;align-items:center;gap:7px;border-radius:9px;background:#242a36;padding:7px 9px;color:#d5d7dd;font-size:10px}.person-dot{width:20px;height:20px;background:#6655bd;border-radius:50%;display:grid;place-items:center;font-size:9px}.vote-person:nth-child(2) .person-dot{background:#bb704f}.full-button{width:100%}.vote-foot{text-align:center;color:#8c92a0;font-size:10px;margin:11px 0 0}.game-wrap{max-width:1140px;margin:auto}.game-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.game-top .back-link{padding:8px 0}.turn-pill{display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:99px;background:#222a28;color:#d7ecc1;font-size:10px;border:1px solid #455342}.turn-pill i{width:6px;height:6px;background:var(--mint);border-radius:50%;box-shadow:0 0 9px var(--mint)}.game-score{display:flex;align-items:center;gap:14px;background:#191e29;border:1px solid #303746;padding:8px 12px;border-radius:12px;color:#a6aab5;font-size:10px}.game-score strong{color:var(--ink);font-size:13px}.arena{display:grid;grid-template-columns:1fr 1fr;gap:16px}.player-area{position:relative;padding:17px 18px 19px;border:1px solid #3a4744;border-radius:20px;background:radial-gradient(ellipse at 50% 15%,#35534a,#233b38 58%,#1c302f);box-shadow:0 14px 40px #0003,inset 0 1px #ffffff10;overflow:hidden;transition:box-shadow .3s,border-color .3s}.player-area:before{content:'';position:absolute;inset:0;opacity:.12;pointer-events:none;background-image:repeating-linear-gradient(115deg,transparent 0 14px,#a7c7aa 15px,transparent 16px 29px)}.player-area.active{border-color:#c0ed78;box-shadow:0 0 0 2px #b8f25d2e,0 15px 46px #0005,inset 0 1px #ffffff12}.player-area.opponent{transform:perspective(1100px) rotateX(-1.5deg)}.player-area.you{transform:perspective(1100px) rotateX(1deg)}.board-heading{position:relative;display:flex;align-items:center;justify-content:space-between;margin:0 2px 13px}.board-player{display:flex;align-items:center;gap:9px}.board-avatar{width:31px;height:31px;border-radius:10px;background:#8e79de;display:grid;place-items:center;font-size:12px;font-weight:800;color:white}.you .board-avatar{background:#d68e69}.board-name strong{display:block;font-size:11px}.board-name small{display:block;color:#b3bdb5;font-size:9px;margin-top:2px}.board-state{font-size:9px;color:#c9e6ae;background:#ffffff0d;padding:6px 8px;border-radius:99px}.card-grid{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;perspective:800px}.character-card{position:relative;min-width:0;height:clamp(86px,10.3vw,122px);padding:0;overflow:hidden;border-radius:10px;border:1px solid #ffffff28;background:var(--cardbg,#33414c);color:white;box-shadow:0 4px 6px #0004,inset 0 1px #ffffff48;transform-style:preserve-3d;transition:transform .4s cubic-bezier(.2,.8,.2,1),opacity .4s,filter .3s,box-shadow .3s;animation:dealIn .58s both;animation-delay:calc(var(--index)*28ms)}@keyframes dealIn{from{opacity:0;transform:translateY(24px) rotateX(-18deg) scale(.93)}to{opacity:1;transform:none}}.character-card:not(.down):hover{transform:translateY(-4px) scale(1.025);z-index:1;box-shadow:0 10px 18px #0006}.character-card .art{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 38%,var(--glow,#a85539),transparent 65%),linear-gradient(150deg,var(--cardbg),#18232d)}.character-card .art:before{content:'';position:absolute;width:69%;height:84%;bottom:-3%;border-radius:48% 48% 10% 10%;background:linear-gradient(120deg,#ffffff23,#0007),var(--suit,#a83b2c);clip-path:polygon(28% 0,72% 0,89% 24%,100% 100%,0 100%,11% 24%);filter:drop-shadow(0 4px 2px #0005)}.character-card .art:after{content:'';position:absolute;width:35%;aspect-ratio:1;border-radius:47% 48% 42% 43%;top:12%;background:radial-gradient(circle at 40% 40%,#ffe6c7,#c28d72 70%,#754e42);box-shadow:0 0 0 3px #ffffff24}.character-card .symbol{position:absolute;z-index:1;top:42%;font:800 17px Manrope;text-shadow:0 1px 6px #0008}.character-card .cape{position:absolute;z-index:0;width:80%;height:75%;bottom:0;clip-path:polygon(29% 8%,70% 8%,100% 100%,0 100%);background:var(--cape,#901f28);opacity:.72}.character-card .card-name{position:absolute;z-index:2;left:3px;right:3px;bottom:0;padding:14px 3px 5px;text-align:center;font-size:clamp(8px,.95vw,10px);line-height:1;background:linear-gradient(transparent,#090b10dd);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-weight:700}.character-card.down{transform:rotateX(88deg) translateY(8px);opacity:.22;filter:saturate(.25);pointer-events:none;box-shadow:none}.character-card.down:before{content:'';position:absolute;inset:0;z-index:3;background:linear-gradient(135deg,#b8f25d18,#11182044);border:1px solid #b8f25d35;border-radius:inherit}.character-card.down:after{content:'×';position:absolute;z-index:4;inset:0;display:grid;place-items:center;color:#daf4b5;font-size:23px;background:#141b1a77}.target-card{cursor:pointer}.target-card:hover{outline:2px solid var(--gold);outline-offset:1px}.target-card.chosen{outline:3px solid var(--mint);outline-offset:2px;transform:translateY(-5px) scale(1.03)}.board-controls{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;color:#cad3cd;font-size:9px}.board-controls .control-right{display:flex;align-items:center;gap:7px}.text-control{border:0;background:none;color:#dbecbf;font-size:10px;text-decoration:underline;text-decoration-color:#89aa5d66;text-underline-offset:3px;padding:5px}.question-area{display:grid;grid-template-columns:1.1fr .9fr;gap:16px;margin-top:15px}.question-panel,.action-panel{background:#191e29;border:1px solid #303746;border-radius:17px;padding:15px 17px}.question-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.question-panel h3,.action-panel h3{font:700 12px Manrope;margin:0}.question-examples{display:flex;flex-wrap:wrap;gap:6px}.question-chip{padding:7px 9px;border:1px solid #3c4655;background:#222936;border-radius:99px;color:#d0d3da;font-size:9px;transition:.2s}.question-chip:hover{border-color:var(--mint);color:var(--mint)}.question-custom{display:flex;gap:7px;margin-top:8px}.question-custom input{flex:1;min-width:0;border:1px solid #3c4553;border-radius:9px;background:#11151d;color:#fff;padding:9px 10px;font:inherit;font-size:10px}.question-custom button{padding:0 13px;border:0;border-radius:9px;background:#d7f5ac;color:#182014;font-size:10px;font-weight:800}.answer-prompt{color:#abb1bd;font-size:10px;margin:10px 0 0}.answer-buttons{display:flex;gap:8px;margin-top:9px}.answer-button{flex:1;background:#293a2e;border:1px solid #527149;color:#d8f4b6;border-radius:9px;padding:9px;font-size:10px;font-weight:800}.answer-button.no{background:#38292c;border-color:#704447;color:#ffc1b9}.answer-buttons.hidden{display:none}.action-panel{display:flex;flex-direction:column;justify-content:space-between}.action-top{display:flex;justify-content:space-between;align-items:center}.guess-help{font-size:9px;color:#989eac;margin:8px 0 12px;line-height:1.5}.guess-button{width:100%;display:flex;justify-content:center;align-items:center;gap:8px}.guess-button:disabled{filter:grayscale(.6);opacity:.55;cursor:not-allowed;transform:none}.keycap{border:1px solid #ffffff48;border-radius:4px;padding:2px 5px;font:700 9px monospace}.notice{position:fixed;left:50%;bottom:24px;z-index:10;transform:translate(-50%,14px);padding:11px 16px;border-radius:99px;background:#e2f4ce;color:#20271b;font-size:11px;font-weight:800;box-shadow:0 12px 40px #0006;opacity:0;pointer-events:none;transition:.25s}.notice.show{opacity:1;transform:translate(-50%,0)}.modal{width:min(470px,calc(100% - 28px));border:1px solid #40495a;border-radius:22px;background:#1a1f2a;color:var(--ink);padding:26px;box-shadow:0 30px 90px #000a}.modal::backdrop{background:#090b10bb;backdrop-filter:blur(5px)}.modal-close{float:right;border:0;background:#ffffff12;border-radius:50%;width:29px;height:29px;font-size:20px;color:#c9cbd0}.modal h2{font:800 26px Manrope;letter-spacing:-1px;margin:10px 0 15px}.rules-list{padding-left:20px;color:#c1c5ce;font-size:12px;line-height:1.7}.rules-list li{margin:7px 0}.rules-note{padding:12px;border-radius:11px;background:#242c30;color:#d1dfbd;font-size:11px;line-height:1.5}.guess-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:15px 0}.guess-choice{height:82px;border-radius:8px;background:var(--cardbg);border:1px solid #ffffff30;position:relative;overflow:hidden;display:grid;place-items:center;font-size:8px}.guess-choice:before{content:'?';font:800 24px Manrope;color:#ffffffc2;text-shadow:0 2px 8px #000}.guess-choice span{position:absolute;bottom:0;left:0;right:0;text-align:center;background:#0008;padding:5px 2px}.guess-choice:hover,.guess-choice.chosen{outline:2px solid var(--mint)}.guess-modal-actions{display:flex;gap:8px}.guess-modal-actions>*{flex:1}.result{text-align:center;padding:22px 12px}.result-icon{font-size:52px;margin-bottom:13px}.result h2{margin:8px 0}.result p{color:#abb1bd;font-size:12px;line-height:1.6}.result .button{margin:10px 5px 0}.footer-note{text-align:center;margin-top:20px;color:#737a89;font-size:10px}
@media(max-width:800px){.app-shell{padding-top:27px}.hero{margin:4vh auto 35px}.vote-layout{grid-template-columns:1fr}.vote-layout>.panel:last-child{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center}.vote-layout>.panel:last-child>.panel-title{grid-column:1/-1;margin:0}.vote-summary{grid-column:1/-1;grid-template-columns:1fr 1fr}.vote-track{margin-top:8px}.vote-participants{grid-column:1;flex-direction:column;margin:0}.vote-layout>.panel:last-child>.full-button{grid-column:2;grid-row:3/5;align-self:stretch}.vote-foot{grid-column:1/-1}.arena{grid-template-columns:1fr;gap:11px}.player-area.opponent{order:0}.player-area.you{order:1}.character-card{height:clamp(83px,17vw,125px)}.question-area{grid-template-columns:1fr}.action-panel{min-height:130px}}
@media(max-width:520px){.topbar{height:62px;padding:0 15px}.topbar-right>span:not(.online-dot){display:none}.profile-chip{margin-left:0}.hero{margin:5vh auto 30px}.hero h1{letter-spacing:-2.5px}.hero>p{font-size:13px}.room-toolbar{align-items:flex-end}.room-card{padding:12px;gap:10px}.room-symbol{width:41px;height:41px}.room-count{display:none}.room-card-info strong{font-size:12px}.room-actions{gap:5px}.room-actions .button{padding:9px 11px}.room-footer{font-size:9px}.page-title h1{font-size:31px}.panel{padding:17px}.vote-layout>.panel:last-child{display:flex;flex-direction:column;align-items:stretch}.vote-participants{flex-direction:row}.arena{margin:0 -4px}.player-area{padding:13px 11px 14px;border-radius:16px}.card-grid{gap:5px}.character-card{height:clamp(75px,19vw,99px);border-radius:8px}.character-card .card-name{font-size:8px}.character-card .symbol{font-size:13px}.board-heading{margin-bottom:10px}.board-state{font-size:8px;padding:5px 7px}.question-panel,.action-panel{padding:13px}.game-score{gap:8px}.game-top{margin-bottom:10px}.guess-grid{gap:4px}.guess-choice{height:68px}.hero-kicker{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
