:root{--hud-cell-min: 64px;color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#101214;color:#eef7f3;font-synthesis:none;text-rendering:optimizeLegibility}@property --ribbon-angle{syntax: "<angle>"; inherits: false; initial-value: 0deg;}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(180deg,#070b0a8f,#070b0ac7),radial-gradient(circle at top right,rgba(56,189,248,.1),transparent 28%),url(/assets/bg-main-BmXfFMCM.webp) center / cover no-repeat,#0e1413}button,input{font:inherit}input[type=range]{width:100%;min-height:auto;padding:0;background:transparent;accent-color:#4ade80}button{min-height:46px;border:1px solid rgba(238,247,243,.18);border-radius:8px;background:#1d2624;color:#eef7f3;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.42}button.primary{background:#4ade80;color:#07110b;border-color:#4ade80;font-weight:800}button.danger{background:#ef77771f;border-color:#ef77776b;color:#ffd8d8}button.secondary{background:#74c69d1f;border-color:#74c69d61;color:#dcffec}button.icon-button{min-height:46px;width:46px;padding:0;flex:0 0 auto}button.ghost-button{background:#eef7f30a;color:#d8ebe4}button.compact-action{min-height:46px;padding:0 14px;font-weight:800;white-space:nowrap}.hud-icon-button{position:relative;overflow:hidden;width:100%;min-height:58px;height:100%;padding:0;flex:1 1 var(--hud-cell-min);border-radius:8px;border-color:#74c69d3d;background:#eef7f314;box-shadow:inset 0 0 0 1px #74c69d14,0 0 0 1px #74c69d08}button.hud-icon-button{width:100%;min-height:58px;height:100%;flex:1 1 var(--hud-cell-min);justify-self:stretch;align-self:stretch}.game-head-side>.icon-only,.game-inline-actions>.icon-only{width:100%;min-height:58px;height:100%;justify-self:stretch;align-self:stretch}.hud-icon-button:before{content:"";position:absolute;inset:-1px;border-radius:8px;border:2px solid rgba(125,211,252,.24);pointer-events:none}.hud-icon-button:after{content:"";position:absolute;inset:-2px;padding:4px;border-radius:9px;background:conic-gradient(from var(--ribbon-angle),rgba(125,211,252,0) 0deg,rgba(125,211,252,0) 304deg,rgba(125,211,252,.14) 320deg,rgba(125,211,252,.86) 336deg,rgba(74,222,128,.74) 350deg,rgba(125,211,252,.22) 357deg,rgba(125,211,252,0) 360deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;filter:drop-shadow(0 0 7px rgba(125,211,252,.28)) drop-shadow(0 0 14px rgba(74,222,128,.2));pointer-events:none;animation:my-turn-ribbon 3.2s linear infinite}.hud-icon-button svg{position:relative;z-index:1}input{width:100%;min-height:46px;border:1px solid rgba(238,247,243,.16);border-radius:8px;padding:0 13px;background:#121917;color:#eef7f3}label{display:grid;gap:8px;color:#b7cbc2;font-size:.92rem}.app{width:min(1120px,100%);min-height:100vh;margin:0 auto;padding:max(14px,env(safe-area-inset-top)) 14px 28px}.status-bar{height:42px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand-line{display:inline-flex;align-items:center;gap:8px;min-width:0}.brand{font-weight:900;letter-spacing:0}.net{display:inline-flex;align-items:center;gap:5px;color:#b7cbc2;font-size:.9rem}.net.ok svg{color:#74c69d}.net.ko svg{color:#ef7777}.status-quit{width:40px;height:40px;min-height:40px;padding:0}.home,.lobby,.game{display:grid;gap:16px}.home{max-width:460px;margin:5vh auto 0}.intro h1,.lobby h1,.game h1{margin:0;font-size:clamp(2rem,8vw,4.6rem);line-height:.95}.intro p,.hint{color:#c7ddd5;font-size:.98rem;line-height:1.45}.panel,.qr-panel,.role,.result,.log{border:1px solid rgba(238,247,243,.14);border-radius:8px;background:linear-gradient(180deg,#0c1211d6,#0c1211eb),url(/assets/panel-texture-mmR_cD2C.webp) center / cover no-repeat;padding:16px;box-shadow:0 16px 32px #0000002e}.panel{display:grid;gap:12px}.panel h2,.preview-toolbar h2{margin:0}.error{border-left:4px solid #ef7777;background:#ef77771f;padding:11px 12px;border-radius:6px}.lobby{max-width:520px;margin:2vh auto 0;padding:18px;border:1px solid rgba(238,247,243,.14);border-radius:8px;background:linear-gradient(180deg,#090e0d94,#090e0dd1),url(/assets/bg-lobby-BTzHFgt8.webp) center / cover no-repeat;box-shadow:0 16px 32px #0003}.eyebrow{margin:0 0 6px;color:#7dd3fc;font-size:.76rem;font-weight:900;text-transform:uppercase}.qr-panel{display:grid;justify-items:center;gap:14px}.room-code{width:100%;border-radius:8px;background:#22c55e;color:#07110b;padding:12px;text-align:center;font-size:2.3rem;font-weight:950;letter-spacing:0}.qr-panel svg{background:#eef7f3;padding:10px;border-radius:8px}.join-url{width:100%;margin:0;color:#d5e8e1;font-size:.95rem;overflow-wrap:anywhere;text-align:center}.join-link-details{width:100%;border-top:1px solid rgba(238,247,243,.1);padding-top:8px}.join-link-details summary{cursor:pointer;color:#c7ddd5;font-size:.92rem;font-weight:700;list-style:none}.join-link-details summary::-webkit-details-marker{display:none}.join-link-details[open],.players-list{display:grid;gap:8px}.state-panel{border:1px solid rgba(238,247,243,.14);border-radius:8px;background:#eef7f30d;display:grid;gap:8px;padding:16px}.state-panel h2,.state-panel p{margin:0}.state-panel p:last-child{color:#d3e6de;line-height:1.45}.state-panel.waiting{border-color:#7dd3fc47;background:#38bdf814}.state-panel.ready,.state-panel.review{border-color:#74c69d47;background:#74c69d14}.player-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(238,247,243,.1);padding:11px 2px}.player-row span:last-child{color:#b7cbc2}.lobby-player-name,.lobby-player-actions{display:inline-flex;align-items:center;gap:8px}.lobby-player-name svg{color:#38bdf8}.preview-toolbar{border:1px solid rgba(238,247,243,.14);border-radius:8px;background:linear-gradient(180deg,#0c1211d6,#0c1211eb),url(/assets/panel-texture-mmR_cD2C.webp) center / cover no-repeat;display:grid;gap:12px;padding:14px;box-shadow:0 16px 32px #0000002e}.preview-controls{display:grid;gap:10px}.preview-count{color:#dcffec;font-weight:900}.preview-modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}.rules-page{display:grid;gap:14px}.rules-modal-backdrop{z-index:42}.rules-modal{width:min(1040px,100%);max-height:min(90vh,980px);border:1px solid rgba(238,247,243,.18);border-radius:8px;background:linear-gradient(180deg,#070c0beb,#070c0bf7),url(/assets/panel-texture-mmR_cD2C.webp) center / cover no-repeat;box-shadow:0 24px 80px #00000075;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.rules-modal-head{display:flex;align-items:start;justify-content:space-between;gap:12px;padding:16px 16px 0}.rules-modal-head h2,.rules-modal-head p{margin:0}.rules-modal-body{overflow:auto;padding:16px;display:grid;gap:14px}.rules-hero,.rules-section{display:grid;gap:12px}.rules-hero p,.rules-hero h2{margin:0}.rules-card-grid,.rules-role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.rules-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.rules-card,.rules-role-card,.rules-stat-card{border:1px solid rgba(238,247,243,.12);border-radius:8px;background:#eef7f30a;display:grid;gap:10px;padding:10px}.rules-card-art,.rules-role-art{width:100%;aspect-ratio:.72;border-radius:7px;background-position:center;background-repeat:no-repeat;background-size:contain;background-origin:content-box;padding:6px;box-shadow:inset 0 0 0 1px #ffffff14,0 10px 18px #00000029}.rules-copy{display:grid;gap:4px}.rules-copy strong,.rules-copy span{margin:0}.rules-copy span{color:#d1e5dd;font-size:.94rem;line-height:1.45}.rules-stat-chip{min-height:66px;border-radius:8px;background:#eef7f314;display:grid;place-items:center;gap:2px;padding:8px;font-weight:900;text-align:center}.rules-stat-chip small{color:#d3e6de;font-size:.8rem;font-weight:700}.rules-stat-chip span{font-size:1.1rem}.rules-stat-card p{margin:0;color:#d1e5dd;font-size:.94rem;line-height:1.45}.rules-steps{display:grid;gap:10px}.rules-steps div{border:1px solid rgba(238,247,243,.1);border-radius:8px;background:#eef7f30a;padding:10px 12px}.rules-steps div{display:grid;gap:4px}.rules-steps span{color:#d1e5dd;font-size:.95rem;line-height:1.45}.game-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-top:4px}.game-head-side,.game-inline-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--hud-cell-min),1fr));align-items:stretch;gap:8px;justify-content:flex-end;width:min(100%,620px)}.game-inline-actions{justify-content:end}.score{display:contents}.score div{width:100%;min-height:58px;border-radius:8px;background:#eef7f314;display:grid;place-items:center;gap:2px;font-weight:900;padding:6px 8px}.score small{color:#d3e6de;font-size:.8rem;font-weight:700}.score span{font-size:1.05rem}.round-transition{min-height:min(72vh,520px);border:1px solid rgba(238,247,243,.16);border-radius:8px;background:linear-gradient(135deg,#4ade8024,#38bdf814),linear-gradient(180deg,#0a100fc7,#0a100fe6),url(/assets/bg-intermission-BhOGxUbQ.webp) center / cover no-repeat;display:grid;align-content:center;justify-items:center;gap:14px;padding:24px;text-align:center}.transition-kicker{min-height:32px;border-radius:999px;background:#74c69d29;color:#dbffec;display:inline-flex;align-items:center;padding:0 12px;font-size:.84rem;font-weight:900}.round-transition h1,.round-transition p{margin:0}.round-transition p:last-child{color:#d3e6de}.transition-steps{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.transition-steps span{min-height:34px;border-radius:999px;background:#eef7f314;display:inline-flex;align-items:center;padding:0 12px;color:#ecf7f3;font-size:.88rem;font-weight:800}.turn-modal-backdrop,.reveal-overlay,.end-overlay{position:fixed;inset:0;z-index:40;background:#000000bd;display:grid;place-items:center;padding:16px}.turn-modal,.reveal-dialog,.end-dialog{width:min(560px,100%);border:1px solid rgba(238,247,243,.18);border-radius:8px;background:linear-gradient(180deg,#0c1211cc,#0c1211eb),url(/assets/panel-texture-mmR_cD2C.webp) center / cover no-repeat;box-shadow:0 24px 90px #0000008a;display:grid;gap:14px;padding:20px;text-align:center}.reveal-dialog{background:linear-gradient(180deg,#090d0c94,#090d0cd6),url(/assets/bg-reveal-DWy1dYJO.webp) center / cover no-repeat}.turn-modal h2,.turn-modal p,.reveal-dialog h2,.reveal-dialog p,.end-dialog h2,.end-dialog p{margin:0}.turn-notice-card{width:74px;aspect-ratio:.72;border-radius:7px;background:#74c69d;color:#102018;display:grid;place-items:center;justify-self:center}.big-flip-stage{width:min(240px,55vw);aspect-ratio:.72;perspective:700px;justify-self:center}.big-flip-card{width:100%;height:100%;position:relative;transform-style:preserve-3d;animation:reveal-wait 1.1s ease-in-out infinite alternate}.big-flip-card.show-front{animation:reveal-flip .76s cubic-bezier(.22,.8,.22,1) forwards}.big-flip-face{position:absolute;inset:0;border:1px solid rgba(238,247,243,.26);border-radius:7px;display:grid;align-items:end;backface-visibility:hidden;overflow:hidden;background-position:center;background-repeat:no-repeat;background-size:cover;box-shadow:inset 0 0 0 1px #ffffff0f}.big-flip-back{background-color:#163126}.big-flip-front{transform:rotateY(180deg);background-color:#0f1917}.big-flip-copy{width:100%;padding:18px 16px;background:linear-gradient(180deg,transparent 0%,rgba(2,6,5,.2) 30%,rgba(2,6,5,.86) 100%)}.big-flip-front strong{display:block;font-size:1.4rem;color:#f3fef8}.reveal-caption{color:#d2e5de;font-size:.98rem}@keyframes reveal-flip{0%,42%{transform:rotateY(0) scale(1)}58%{transform:rotateY(108deg) scale(1.08)}to{transform:rotateY(180deg) scale(1)}}@keyframes reveal-wait{0%{transform:rotate(-1deg) scale(.98)}to{transform:rotate(1deg) scale(1.03)}}.role{display:flex;justify-content:space-between;gap:16px;align-items:center}.role h2,.result h2{margin:0}.role p{margin:0;color:#d2e5de;line-height:1.45}.role.agents{border-color:#74c69d73}.role.infiltrators{border-color:#ef777780}.role-visual{align-items:stretch;min-height:0}.role-flip-shell{flex:0 0 min(38%,200px);aspect-ratio:.72;padding:0;border:0;background:transparent;perspective:900px}.role-flip-card{position:relative;width:100%;height:100%}.role-flip-face{position:absolute;inset:0;border-radius:7px;backface-visibility:hidden;-webkit-backface-visibility:hidden;background-position:center;background-repeat:no-repeat;background-size:contain;background-origin:content-box;padding:6px;transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .2s linear;box-shadow:inset 0 0 0 1px #ffffff1a,0 12px 20px #0000002e}.role-flip-back{background-color:#060a093d;transform:rotateY(0);opacity:1}.role-flip-front{transform:rotateY(-180deg);background-color:#060a095c;opacity:0}.role-flip-card.revealed .role-flip-back{transform:rotateY(180deg);opacity:0}.role-flip-card.revealed .role-flip-front{transform:rotateY(0);opacity:1}.role-copy{position:relative;flex:1 1 auto;display:grid;align-content:center;gap:12px}.fade-in{animation:role-fade-in .45s ease-out both}@keyframes role-fade-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.secret-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.secret-guard,.secret-stack{border:1px solid rgba(238,247,243,.14);border-radius:8px;background:linear-gradient(180deg,#060a09e6,#060a09f7),url(/assets/panel-briefing-C32muVnC.webp) center / cover no-repeat;padding:18px;box-shadow:inset 0 0 0 1px #7dd3fc14,0 18px 38px #00000038}.secret-guard{display:grid;gap:12px}.secret-guard h2,.secret-guard p{margin:0}.secret-guard p{color:#d2e5de;line-height:1.45}.secret-stack{display:grid;gap:12px}.secret-modal-backdrop{z-index:41}.secret-modal{width:min(760px,100%);overflow:hidden;position:relative;align-content:start}.secret-modal-head{min-height:42px;display:flex;align-items:start;justify-content:space-between;gap:12px}.secret-modal-head .eyebrow{margin:0;align-self:center}.secret-close-button{position:relative;z-index:2;width:42px;height:42px;min-height:42px;padding:0;flex:0 0 42px}.secret-guard .eyebrow,.secret-stack .eyebrow{color:#8ce0ff}.secret-guard h2,.secret-stack h2{font-size:clamp(1.5rem,5vw,2.15rem);line-height:1}.timed-secret{position:relative;overflow:hidden}.secret-timer{position:absolute;left:0;top:0;height:3px;width:100%;background:#22c55e;transform-origin:left center;animation:secret-timeout 15s linear forwards}@keyframes secret-timeout{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.composition{border:1px solid rgba(238,247,243,.14);border-radius:8px;background:linear-gradient(180deg,#0c1211cc,#0c1211eb),url(/assets/panel-texture-mmR_cD2C.webp) center / cover no-repeat;padding:16px}.composition>.eyebrow{margin-bottom:2px}.composition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.composition-item{min-height:108px;border:0;border-radius:8px;background:transparent;padding:0;perspective:900px;display:grid;place-items:center;overflow:hidden}.composition-item.key{border-color:#74c69d6b}.composition-item.dead{border-color:#ef77776b}.composition-card{position:relative;width:min(100%,92px);aspect-ratio:.72;min-height:124px;display:grid;place-items:center;border-radius:8px;overflow:hidden;background:transparent;box-shadow:none}.composition-card.revealed{animation:composition-card-reveal .64s cubic-bezier(.2,.8,.2,1) both}.composition-card-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:0;display:block;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:1}.composition-front-copy{position:absolute;left:0;right:0;bottom:0;width:100%;min-height:58px;padding:8px 6px 10px;background:linear-gradient(180deg,transparent 0%,rgba(2,6,5,.82) 100%);display:grid;justify-items:center;gap:4px;text-align:center;pointer-events:none;z-index:2}@keyframes composition-card-reveal{0%{transform:rotateY(0) scale(1)}46%{transform:rotateY(88deg) scale(1.05)}to{transform:rotateY(0) scale(1)}}.composition-front-copy strong{font-size:1.2rem;line-height:1}.composition-front-copy span{color:#eef7f3;font-size:.8rem}.players-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:12px;align-items:start}.player-board{border:1px solid rgba(238,247,243,.14);border-radius:8px;background:linear-gradient(180deg,#16201d8f,#16201da8),url(/assets/panel-texture-mmR_cD2C.webp) center / cover no-repeat;padding:16px;display:grid;gap:12px;min-width:0;min-height:208px}.player-board.me{position:relative;border-color:#38bdf8b8;background:linear-gradient(180deg,#0a1c2333,#0a1c234d),linear-gradient(180deg,#121d2057,#121d2070),url(/assets/bg-lobby-BTzHFgt8.webp) center / cover no-repeat;box-shadow:inset 0 0 0 1px #38bdf857,0 0 0 1px #38bdf814,0 12px 28px #0b2c3a29}.player-board.me:before{content:"";position:absolute;inset:-1px;border-radius:8px;border:1px solid rgba(56,189,248,.18);pointer-events:none}.player-board.turn{position:relative;border-color:#74c69db8;background:linear-gradient(180deg,#18221e14,#18221e24),url(/assets/board-active-DnK0Kr3d.webp) center / cover no-repeat,linear-gradient(135deg,#74c69d0a,#74c69d00),#1c2424b8;box-shadow:inset 0 0 0 1px #74c69d52,0 0 0 1px #74c69d0f,0 8px 20px #14402f14;animation:current-turn-glow 1.5s ease-in-out infinite alternate}.player-board.me.turn{background:linear-gradient(180deg,#0a1c2333,#0a1c234d),linear-gradient(180deg,#121d2057,#121d2070),url(/assets/bg-lobby-BTzHFgt8.webp) center / cover no-repeat;box-shadow:inset 0 0 0 1px #38bdf857,0 0 0 1px #38bdf814,0 12px 28px #0b2c3a29;animation:none}.player-board.me.turn:before{content:"";position:absolute;inset:-2px;border-radius:9px;border:1px solid rgba(125,211,252,.34);box-shadow:0 0 0 1px #7dd3fc1a,0 0 12px #7dd3fc29}.player-board.me.turn:after{content:"";position:absolute;inset:-2px;padding:2px;border-radius:9px;background:conic-gradient(from var(--ribbon-angle),rgba(125,211,252,0) 0deg,rgba(125,211,252,0) 312deg,rgba(125,211,252,.12) 324deg,rgba(125,211,252,.98) 338deg,rgba(74,222,128,.96) 348deg,rgba(125,211,252,.22) 356deg,rgba(125,211,252,0) 360deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;filter:drop-shadow(0 0 8px rgba(125,211,252,.34)) drop-shadow(0 0 14px rgba(74,222,128,.24));pointer-events:none;animation:my-turn-ribbon 2.6s linear infinite}.player-board.turn:not(.me):after{content:"";position:absolute;inset:-1px;border-radius:8px;border:1px solid rgba(116,198,157,.22);pointer-events:none}.player-board header{position:relative;display:grid;align-items:center;min-height:30px}.player-board-title{justify-self:center;max-width:100%;text-align:center}.player-board h3,.player-board p{margin:0}.player-board h3{font-size:1.14rem}.player-board p{color:#d2e5de;font-size:.94rem}.player-corner{position:absolute;top:0;display:inline-flex;align-items:center;gap:6px;min-height:28px}.player-corner-left{left:0}.player-corner-right{right:0}.player-badge{min-height:28px;border-radius:999px;padding:0 10px;display:inline-flex;align-items:center;background:#eef7f314;color:#eff9f5;font-size:.76rem;font-weight:900;text-transform:uppercase}.player-badge.me{background:#38bdf82e;color:#d6f5ff}.player-badge.turn{background:#74c69d38;color:#e6fff1}.player-badge.absent{background:#ef77772e;color:#ffd8d8}.turn-badge{border-radius:999px;padding:5px 9px;background:#74c69d;color:#102018;font-size:.8rem;font-weight:900}.cards{display:grid;gap:10px;width:100%;overflow:hidden;align-content:center}.cards-5{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:1fr}.cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}.cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{aspect-ratio:.72;width:100%;min-height:0;padding:0;display:block;border-radius:7px;background:transparent;overflow:hidden;perspective:900px}.card:not(.revealed){box-shadow:0 0 0 1px #eef7f31f,0 10px 16px #00000014}.cards-5 .card{grid-column:span 2}.cards-5 .card.slot-1{grid-column:2 / span 2}.cards-5 .card.slot-2{grid-column:4 / span 2}.cards-5 .card.slot-3{grid-column:1 / span 2}.cards-5 .card.slot-4{grid-column:3 / span 2}.cards-5 .card.slot-5{grid-column:5 / span 2}.card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.card.revealed .card-inner{transform:rotateY(180deg)}.card.revealed{box-shadow:0 0 0 2px #dcffec33,0 14px 22px #0000002e}.card-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:7px;background-position:center;background-repeat:no-repeat;background-size:cover;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff1a,0 10px 18px #0000001f}.card-back{display:grid;place-items:end center;padding-bottom:8px;background-color:#143127;filter:brightness(1.12) saturate(1.04)}.card-front{transform:rotateY(180deg);display:grid;align-items:end;background-color:#14201c}.card.revealed .card-front{box-shadow:inset 0 0 0 1px #ffffff29,0 16px 24px #0000003d}.card-front-label{width:100%;min-height:14px;background:linear-gradient(180deg,transparent 0%,rgba(2,6,5,.22) 100%)}.card-index{display:inline-block;min-width:20px;padding:2px 6px;border-radius:999px;background:#040807ad;color:#eef7f3;font-size:.68rem;font-weight:900}.card.pending{border-color:#38bdf8;animation:card-waiting .7s ease-in-out infinite alternate}@keyframes card-waiting{0%{transform:rotate(-1deg) scale(.99)}to{transform:rotate(1deg) scale(1.03)}}@keyframes current-turn-glow{0%{box-shadow:inset 0 0 0 1px #74c69d75,0 0 0 1px #74c69d1f,0 10px 24px #14402f2e}to{box-shadow:inset 0 0 0 1px #74c69db8,0 0 0 1px #74c69d47,0 18px 40px #14402f47}}@keyframes my-turn-ribbon{0%{--ribbon-angle: 0deg}to{--ribbon-angle: 360deg}}.result{display:grid;gap:12px}.result.agents{border-color:#74c69d80}.result.infiltrators{border-color:#ef777780}.result.aborted{border-color:#38bdf88c}.end-dialog.agents{border-color:#74c69d99}.end-dialog.infiltrators{border-color:#ef777799}.end-dialog.aborted{border-color:#38bdf899}.end-dialog h2{font-size:clamp(2rem,9vw,4rem);line-height:.95}.end-summary{border:1px solid rgba(238,247,243,.12);border-radius:8px;background:#eef7f30f;display:grid;gap:6px;padding:14px;text-align:left}.end-summary p{color:#e0f0ea;line-height:1.45}.end-summary-label,.end-section-head small{color:#b8d2c8;font-size:.82rem;font-weight:800;text-transform:uppercase}.end-section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;text-align:left}.end-section-head span{font-size:1.02rem;font-weight:900}.role-reveal-list{display:grid;gap:8px;text-align:left}.role-reveal-row{min-height:46px;border:1px solid rgba(238,247,243,.12);border-radius:8px;background:#eef7f30d;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px}.role-reveal-row.agents strong{color:#a8f0c9}.role-reveal-row.infiltrators strong{color:#ffb3b3}.end-actions{display:grid;gap:10px}.modal-backdrop{position:fixed;inset:0;z-index:30;background:#000000ad;display:grid;place-items:center;padding:16px}.end-overlay{background:linear-gradient(180deg,#0407079e,#040707d1),url(/assets/bg-result-Cb-1PfxW.webp) center / cover no-repeat}.confirm-modal{width:min(460px,100%);border:1px solid rgba(238,247,243,.18);border-radius:8px;background:linear-gradient(180deg,#0c1211cc,#0c1211eb),url(/assets/panel-texture-mmR_cD2C.webp) center / cover no-repeat;box-shadow:0 24px 80px #00000075;display:grid;gap:12px;padding:16px}.confirm-modal h2,.confirm-modal p{margin:0}.confirm-modal p{color:#d2e5de;line-height:1.45}.icon-only{min-height:46px;width:46px;padding:0}.status-bar .status-quit{width:40px;height:40px;min-height:40px}.log{display:grid;gap:8px;color:#b7cbc2}@media(max-width:620px){.game-head,.role{align-items:stretch;flex-direction:column}.app{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.game-head-side,.game-inline-actions{width:100%}.game-head-side{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--hud-cell-min),1fr));align-items:stretch}.role-art{flex-basis:auto;width:100%;min-height:240px}.role-flip-shell{width:min(220px,58vw);flex-basis:auto}.players-grid{grid-template-columns:1fr}.rules-card-grid,.rules-role-grid,.rules-stats-grid{grid-template-columns:1fr 1fr}}@media(max-width:460px){.secret-modal{width:100%;padding:16px}.rules-card-grid,.rules-role-grid,.rules-stats-grid{grid-template-columns:1fr}}
