:root{color:#172033;--ui-bg:#0c0d0b99;--ui-bg-hover:#0c0d0bb8;--ui-bg-solid:#0c0d0be0;--ui-edge:1px solid #bf7d2f47;--ui-edge-strong:1px solid #bf7d2f73;--ui-blur:blur(2px);--ui-shadow:0 18px 45px #0000004d;background:#eef2f7;font-family:Georgia,Times New Roman,serif}*{box-sizing:border-box;scrollbar-color:#bf7d2f73 transparent;scrollbar-width:thin}body{margin:0}#app{z-index:9999;min-height:100vh;position:relative}.page{width:min(640px,100% - 32px);margin:0 auto;padding:64px 0}h1{margin-top:0;font-size:42px}h2{margin-top:0}.panel{background:#ffffffbf;border:1px solid #d9e0ea;border-radius:8px;margin-top:24px;padding:24px;box-shadow:0 8px 24px #1e325014}form{gap:16px;display:grid}label{gap:6px;font-weight:400;display:grid}:where(input:not([type=checkbox],[type=radio],[type=range]),textarea){color:#eee2cc;font:inherit;letter-spacing:normal;text-transform:none;background:#090a08;border:1px solid #373329;border-radius:4px;padding:10px;font-family:Georgia,Times New Roman,serif}input:-webkit-autofill{-webkit-text-fill-color:#eee2cc;caret-color:#eee2cc;transition:background-color 600000s!important;box-shadow:inset 0 0 0 1000px #090a08!important}input:-webkit-autofill:hover{-webkit-text-fill-color:#eee2cc;caret-color:#eee2cc;transition:background-color 600000s!important;box-shadow:inset 0 0 0 1000px #090a08!important}input:-webkit-autofill:focus{-webkit-text-fill-color:#eee2cc;caret-color:#eee2cc;transition:background-color 600000s!important;box-shadow:inset 0 0 0 1000px #090a08!important}:where(select,select option,select optgroup){color:#eee2cc;background:#090a08}select,textarea,option,optgroup{font:inherit}h1,h2,h3,h4,h5,h6,b,strong,th,optgroup,legend,dt{font-weight:400}:root{--button-fill:linear-gradient(#874513, #5a2908);--button-edge:#a66122;--button-text:#f6e7cf;--button-gold:#e4a348;--button-gold-text:#ffbd62}button{width:fit-content;color:var(--button-text);background:var(--button-fill);border:1px solid var(--button-edge);font:inherit;cursor:pointer;border-radius:4px;padding:10px 16px;transition:border-color .18s,color .18s,filter .18s}:where(button):hover:not(:disabled){color:var(--button-gold-text);border-color:var(--button-gold);filter:brightness(1.12)}#backend-status{color:#176b43;font-weight:400}#login-message{min-height:24px}.home-page{color:#fff;background-image:linear-gradient(#00000059,#00000059);background-position:50%;background-repeat:no-repeat;background-size:100%;min-height:100vh;padding:4px 32px 64px}.backdrop-canvas{z-index:0;pointer-events:none;width:100%;height:100%;display:block;position:fixed;inset:0}.navbar{background:#ffffffbf;border:1px solid #d9e0ea;border-radius:8px;flex-wrap:wrap;align-items:center;gap:16px;padding:10px 16px;display:flex}.game-nav .game-nav-visualizer{color:#fff;background:#2457a6;border-radius:4px;margin-left:auto;padding:10px 16px;font-weight:400;text-decoration:none}.game-nav .game-nav-visualizer:hover{background:#1b4381}.game-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.game-label{color:#6b778c;letter-spacing:1.5px;margin:0 0 6px;font-size:13px;font-weight:400}.game-header h1{margin:0;font-size:36px}.game-header h1 span{color:#7b8798;font-size:24px;font-weight:400}.game-meta{color:#6b778c;text-align:right;font-size:14px}.game-meta p{margin:0 0 6px}.game-status{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px;display:grid}.status-box{background:#f5f7fa;border:1px solid #d9e0ea;border-radius:6px;padding:16px}.status-label{color:#6b778c;letter-spacing:1px;margin-bottom:6px;font-size:11px;font-weight:400;display:block}.status-box strong{font-size:17px}.section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.section-heading h2{margin-bottom:4px}.section-heading p{color:#6b778c;margin:0;font-size:14px}.seat-order{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.seat{background:#f5f7fa;border:1px solid #d9e0ea;border-radius:6px;align-items:center;gap:10px;padding:12px;display:flex}.seat-current{background:#eef4ff;border-color:#2457a6}.seat-number{color:#172033;background:#fff;border:1px solid #cbd4e0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:13px;font-weight:400;display:flex}.seat-name{text-overflow:ellipsis;white-space:nowrap;font-weight:400;overflow:hidden}.seat-indicator{color:#2457a6;margin-left:auto;font-size:10px;font-weight:400;display:block}.prediction-list{gap:8px;display:grid}.prediction-row{background:#f5f7fa;border:1px solid #d9e0ea;border-radius:6px;justify-content:space-between;align-items:center;min-height:48px;padding:10px 14px;display:flex}.prediction-current{background:#eef4ff;border-color:#2457a6}.prediction-done{background:#f2f8f5}.prediction-player{align-items:center;gap:10px;font-weight:400;display:flex}.player-number{color:#6b778c;background:#fff;border:1px solid #d9e0ea;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;display:flex}.turn-marker{color:#2457a6;background:#dce9ff;border-radius:4px;padding:3px 7px;font-size:10px;font-weight:400}.prediction-value{font-weight:400}.prediction-submitted{color:#176b43}.prediction-waiting{color:#8a95a5;font-weight:400}.phase-complete{color:#176b43;background:#f2f8f5;border:1px solid #c9e4d6;border-radius:6px;margin:16px 0 0;padding:12px;font-weight:400}.trick-list{gap:8px;display:grid}.trick-row{background:#f5f7fa;border:1px solid #d9e0ea;border-radius:6px;justify-content:space-between;align-items:center;min-height:48px;padding:10px 14px;display:flex}.trick-player{font-weight:400}.trick-card{color:#2457a6;font-weight:400}.trick-winner{text-align:center;background:#eef4ff;border:1px solid #cbdcff;border-radius:6px;margin-top:16px;padding:12px}.hand{flex-wrap:wrap;gap:12px;display:flex}.card-button{color:#172033;background:#fff;border:2px solid #cbd4e0;border-radius:8px;width:130px;min-height:90px;padding:16px;font-weight:400;transition:transform .1s,border-color .1s,box-shadow .1s}.card-button:not(:disabled):hover{color:#172033;background:#fff;border-color:#2457a6;transform:translateY(-3px);box-shadow:0 6px 14px #1e32501f}.card-button:disabled{color:#9aa4b2;cursor:not-allowed;background:#f1f3f6;border-color:#d9e0ea}.action-message{color:#6b778c;min-height:24px;margin-bottom:0;font-weight:400}.action-panel{border-color:#2457a6}.action-panel>p{color:#6b778c}.action-panel form{max-width:300px}@media (width>=800px){.page:has(.game-header){width:min(1000px,100% - 48px)}}@media (width<=650px){.game-header{flex-direction:column}.game-meta{text-align:left}.game-status{grid-template-columns:1fr}.card-button{width:110px;min-height:80px}}.visualizer-page{--hud-scale:1;--border-dark:#8a5d12;--border-mid:#ffd54f;--border-glint:#fff3b0;--border-glow:#ffc44059;width:100%;margin:0;padding:0;position:fixed;inset:0}.visualizer-canvas-wrap{background:#000;position:absolute;inset:0;overflow:hidden}.visualizer-canvas-wrap canvas{touch-action:none;width:100%;height:100%;display:block}.visualizer-nav{z-index:1;flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute;top:16px;left:16px}.visualizer-nav a{color:#f4ebd9e0;background:var(--ui-bg);border:var(--ui-edge);letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);border-radius:4px;padding:8px 12px;font-size:.72rem;font-weight:400;text-decoration:none;transition:border-color .2s,background .2s,color .2s}.visualizer-nav a:hover{color:#fff;background:#bf7d2f1f;border-color:#bf7d2fa6}.visualizer-page .event-log-toggle{z-index:3;color:#f4ebd9e0;font:inherit;letter-spacing:.08em;text-transform:uppercase;background:var(--ui-bg);border:var(--ui-edge);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);cursor:pointer;border-radius:4px;padding:8px 12px;font-size:.72rem;font-weight:400;position:absolute;left:16px}.visualizer-page .event-log-toggle:hover,.visualizer-page .event-log-toggle[aria-expanded=true]{color:#fff;background:#bf7d2f1f;border-color:#bf7d2fa6}.visualizer-page .event-log{z-index:14;box-sizing:border-box;color:#f4ebd9e6;border:var(--ui-edge);width:min(420px,100% - 32px);max-height:min(60vh,520px);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);background:#080908db;border-radius:4px;padding:10px 14px;font-size:13px;line-height:1.4;position:absolute;left:16px;overflow-y:auto}.visualizer-page .event-log[hidden]{display:none}.event-log-empty{opacity:.7;margin:0}.event-log-empty[hidden]{display:none}.event-log-list{margin:0;padding:0;list-style:none}.event-log-round{color:#ffd54f;letter-spacing:.12em;text-transform:uppercase;margin:10px 0 4px;font-size:12px}.event-log-round:first-child{margin-top:0}.event-log-line{border-left:2px solid #0000;padding:2px 0 2px 8px}.event-log-line.is-trick{opacity:.8;border-bottom:1px solid #f4ebd91f;margin-bottom:4px;padding-bottom:6px}.event-log-line.is-gain{color:#8ff0a0;border-left-color:#43d05a}.event-log-line.is-loss{color:#ff9a92;border-left-color:#ff4a3d}.event-log-line.is-result{font-size:12px}.table-roles-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.table-roles-item{align-items:flex-start;gap:10px;display:flex}.table-roles-seal{object-fit:contain;flex:none;width:34px;height:34px}.table-roles-item p{margin:0}.table-roles-name{font-weight:600}.table-roles-item.is-own .table-roles-name{color:#ffd54f}.table-roles-role{color:#b884e0;margin-left:6px;font-weight:400}.table-roles-power{opacity:.85;margin-top:2px}.visualizer-hourglass{aspect-ratio:.72;pointer-events:none;align-self:center;width:90%;margin-top:10px;position:relative}.visualizer-hourglass[hidden]{display:none}.visualizer-hourglass canvas{aspect-ratio:1;width:190%;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#wizard-visualizer-loading{color:#ddd;pointer-events:none;background:#000;justify-content:center;align-items:center;font-size:1.1rem;transition:opacity .3s;display:flex;position:absolute;inset:0}#wizard-visualizer-loading.hidden{opacity:0}.room-page{background:0 0;height:100svh;min-height:600px;position:relative;overflow:hidden}.room-message{box-sizing:border-box;color:#ddb16ee6;text-align:center;flex:1;justify-content:center;align-items:center;width:100%;margin:0;padding:16px;font-size:.85rem;font-weight:400;display:flex}.room-start{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.avatar-picker{position:relative}.room-avatar-picker .avatar-grid{grid-template-columns:repeat(6,minmax(0,1fr));justify-content:center;gap:10px;display:grid}.avatar-picker .avatar-cell{color:#f4ebd9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:var(--ui-edge);text-align:center;cursor:pointer;background:#0c0d0b8c;border-radius:600px;gap:4px;width:auto;padding:8px;font-weight:400;display:grid}.avatar-picker .avatar-cell:hover:not(:disabled){background:#bf7d2f24;border-color:#bf7d2fa6}.avatar-picker .avatar-cell.is-selected,.avatar-picker .avatar-cell.is-selected:hover{background:#bf7d2f33;border:3px solid #bf7d2fbf;padding:6px}.avatar-picker .avatar-cell.is-taken{color:#f4ebd966;cursor:not-allowed;background:#00000026}.avatar-view{aspect-ratio:1;display:block}.avatar-owner{color:#5b6b82;min-height:1.2em;font-size:12px;font-weight:400}.avatar-canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.visualizer-page{--self-width:188px}.visualizer-self{width:var(--self-width);height:var(--self-width);pointer-events:none;margin:0;position:absolute;bottom:88px;right:32px}.visualizer-self:before{z-index:1;content:"";background:var(--ui-bg);border:var(--ui-edge);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);border-radius:600px;position:absolute;inset:0}.visualizer-self[hidden]{display:none}.visualizer-self-view{z-index:2;width:calc(100% + 180px);height:calc(100% + 240px);position:absolute;bottom:-100px;left:-90px}.visualizer-self-view canvas{width:100%;height:100%;display:block}.visualizer-self-name{display:none}.visualizer-emotes{z-index:3;width:calc(var(--self-width) + 32px);gap:4px;display:flex;position:absolute;bottom:16px;right:16px}.visualizer-emotes:before{z-index:-1;content:"";filter:blur(10px);pointer-events:none;background:#000000bf;border-radius:999px;position:absolute;inset:2px -6px 2px 4px}.visualizer-page .visualizer-emotes{--emote-outline:drop-shadow(0 0 1px #000) drop-shadow(0 0 3px #000) drop-shadow(0 0 3px #000)}.visualizer-page .visualizer-emotes button{aspect-ratio:1;min-width:0;filter:var(--emote-outline);background:0 0;border:none;border-radius:50%;flex:1;padding:0;font-size:22px;line-height:1;position:relative;overflow:visible}.visualizer-page .visualizer-emotes button:hover{color:inherit;filter:var(--emote-outline);background:0 0;border:none}.visualizer-page .visualizer-emotes button:active{filter:brightness(1.12) drop-shadow(0 0 1px var(--button-gold)) drop-shadow(0 0 3px var(--button-gold)) drop-shadow(0 0 3px var(--button-gold))}.visualizer-emotes .emoticon{filter:brightness(.8);position:absolute;top:50%;left:50%;transform:translate(-50%,calc(-50% - 3px))}.emoticon{pointer-events:none;background:linear-gradient(var(--emoticon-tint,var(--border-mid)), var(--emoticon-tint,var(--border-mid))), var(--emoticon) center / contain no-repeat;background-blend-mode:color, normal;width:56px;height:56px;-webkit-mask:var(--emoticon) center / contain no-repeat;mask:var(--emoticon) center / contain no-repeat;-webkit-mask:var(--emoticon) center / contain no-repeat;display:block}.visualizer-page .prediction-modal{z-index:2;color:#f4ebd9eb;text-align:center;background:var(--ui-bg);border:var(--ui-edge-strong);width:max-content;max-width:calc(100% - 32px);box-shadow:var(--ui-shadow);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);border-radius:4px;padding:13px 19px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.visualizer-page .prediction-modal[hidden]{display:none}.prediction-modal h2{color:#f8f0e0f5;margin:0 0 2px;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:400}.prediction-round{color:#f4ebd99e;margin:0 0 10px;font-size:14px}.prediction-options{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.visualizer-page .prediction-options button{color:#f4ebd9e6;background:#0a0a0873;border:1px solid #bf7d2f52;border-radius:4px;min-width:48px;padding:10px 0;font-size:18px;font-weight:400;transition:border-color .2s,background .2s,color .2s}.visualizer-page .prediction-options button:hover:not(:disabled){color:#fff;background:#bf7d2f1f;border-color:#bf7d2fa6}.visualizer-page .prediction-options button.is-chosen{color:#211408;background:#ddaf6e;border-color:#f0c77e}.visualizer-page .prediction-options button:disabled:not(.is-chosen){cursor:default;opacity:.5}.prediction-error{color:#e0a14d;margin:6px 0 0;font-weight:400}.prediction-error:empty{display:none}.trump-options{grid-template-columns:repeat(4,72px);gap:10px;display:grid}.visualizer-page .trump-options button{color:#fff;background:0 0;border:1px solid #bf7d2f52;border-radius:4px;align-content:start;justify-items:center;gap:6px;width:100%;padding:8px 4px;font-size:13px;font-weight:400;display:grid}.trump-swatch{aspect-ratio:5/7;border:2px solid #bf7d2f8c;border-radius:6px;width:56px}.visualizer-page .trump-options button:hover:not(:disabled),.visualizer-page .trump-options button.is-chosen{border-color:#ffd54f}.visualizer-page .trump-options button:disabled:not(.is-chosen){cursor:default;opacity:.5}.visualizer-page .hud-panel{z-index:1;color:#f4ebd9e6;background:var(--ui-bg);border:var(--ui-edge);box-shadow:var(--ui-shadow);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);border-radius:4px;margin:0;padding:10px 12px;font-size:13px;position:absolute}.visualizer-page .hud-panel[hidden]{display:none}.visualizer-page{--hud-column-width:152px;--hud-button:calc((var(--hud-column-width) - 6px) / 4)}.visualizer-page .hud-status{top:calc(16px + 26px + 6px + var(--hud-button) + 8px);width:var(--hud-column-width);box-sizing:border-box;padding:8px 6px;right:16px}.hud-round{white-space:nowrap;margin:0;font-size:15px;font-weight:400}.hud-scores{grid-template-columns:minmax(0,1fr) max-content;column-gap:6px;margin-top:1.2em;display:grid}.hud-scores thead,.hud-scores tbody,.hud-scores tr{display:contents}.hud-scores th:first-child,.hud-scores td:first-child{text-overflow:clip;white-space:nowrap;width:auto;overflow:hidden}.hud-scores th{color:#ddb16ec7;text-align:left;text-transform:uppercase;white-space:nowrap;padding:2px 1px;font-size:10px;font-weight:400}.hud-scores th:not(:first-child),.hud-scores td:not(:first-child){text-align:right}.hud-scores td{padding:3px 1px}.hud-scores tr.is-you td{color:#ffd54f;font-weight:400}.hud-stat{justify-items:center;line-height:1.15;display:grid}.hud-stat-label{color:#9fb0c8;letter-spacing:.04em;text-transform:uppercase;font-size:11px}.hud-stat-value{font-size:20px;font-weight:400}.visualizer-page .hud-opponents{grid-template-columns:auto minmax(16px,auto) minmax(16px,auto);gap:4px 10px;padding:8px 10px;display:grid;bottom:16px;left:16px}.hud-opponent{grid-column:1/-1;grid-template-columns:subgrid;align-items:center;display:grid}.hud-opponent .hud-stat{justify-items:end}.hud-opponent-face{justify-items:center;gap:2px;margin:0;display:grid}.hud-opponent-face img{object-fit:cover;background:#ffffff1f;border-radius:50%;flex:none;width:48px;height:48px}.hud-opponent-face figcaption{text-align:center;overflow-wrap:anywhere;max-width:96px;font-size:12px;font-weight:400;line-height:1.2}.hud-opponent .hud-opponent-face{align-items:center;gap:6px;min-width:0;display:flex}.hud-opponent .hud-opponent-face img{width:26px;height:26px}.hud-opponent .hud-opponent-face figcaption{text-align:left;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;min-width:0;max-width:none;font-size:12px;font-weight:400;overflow:hidden}.hud-opponent .hud-opponent-face figcaption.has-role{font-size:12px;line-height:15px;display:grid}.hud-opponent .hud-opponent-face:has(figcaption.has-role) img{width:30px;height:30px}.hud-opponent .hud-opponent-face figcaption.has-role span{text-overflow:ellipsis;overflow:hidden}.hud-opponent .hud-opponent-face figcaption.has-role span:first-child{transition:color .6s ease-out,text-shadow .6s ease-out}.hud-opponent .hud-opponent-face figcaption.is-role-flash span:first-child{color:#ffd65a;text-shadow:0 0 6px #ffc440e6;transition:none}.hud-opponent .hud-opponent-face figcaption.is-role-flash.is-role-hit span:first-child{color:#ff5046;text-shadow:0 0 6px #ff3c32e6}.hud-opponent .hud-stat-label{font-size:10px}.hud-stat-label.is-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.hud-opponent-headings{grid-template-rows:repeat(3,auto);row-gap:2px;margin-bottom:4px}.hud-opponent-headings .hud-stat-label{color:inherit;text-align:right;white-space:nowrap;justify-self:end;padding:7px 0 1px;font-size:9px;font-weight:400;line-height:1.15}.hud-opponent-headings .hud-heading-tricks{grid-area:1/1/auto/4}.hud-opponent-headings .hud-heading-predictions{grid-area:2/1/auto/3}.hud-opponent-headings .hud-heading-order{grid-area:3/1/auto/2}.hud-opponent-guides{pointer-events:none;fill:none;stroke:#f4ebd938;stroke-width:1px;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.hud-opponent.is-current .hud-opponent-face img{box-shadow:0 0 0 2px #ffd54f}.hud-opponent.is-current .hud-opponent-face figcaption{text-underline-offset:3px;-webkit-text-decoration:underline #ffd54f;text-decoration:underline #ffd54f;text-decoration-thickness:2px}.hud-opponent.is-you .hud-opponent-face figcaption{color:#ffd54f}.hud-opponent .hud-stat-value{font-size:16px;font-weight:400}.hud-stat[data-standing=under] .hud-stat-value{color:#26a534}.hud-stat[data-standing=met] .hud-stat-value{color:#ffc747}.hud-stat[data-standing=over] .hud-stat-value{color:#d63430}.visualizer-page .hud-toolbar{z-index:3;width:var(--hud-column-width);box-sizing:border-box;color:#f4ebd9e6;flex-wrap:wrap;justify-content:flex-end;place-items:center;gap:6px 2px;padding:0;display:flex;position:absolute;top:16px;right:16px}.visualizer-page .music-toggle,.visualizer-page .music-source-toggle,.visualizer-page .effects-toggle,.visualizer-page .install-toggle,.visualizer-page .fullscreen-toggle{width:var(--hud-button);height:var(--hud-button);color:#f4ebd9e6;background:var(--ui-bg);border:var(--ui-edge);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);border-radius:4px;place-items:center;padding:0;display:grid}.visualizer-page .music-source-toggle{box-sizing:border-box;color:#f8f0e0e6;height:26px;min-height:0;font:inherit;text-align:center;background:#050605b8;border:1px solid #b4772f4d;flex:1 0 100%;padding:0 3px;font-size:.72rem}.visualizer-page .music-toggle:hover,.visualizer-page .music-source-toggle:hover,.visualizer-page .effects-toggle:hover,.visualizer-page .install-toggle:hover,.visualizer-page .fullscreen-toggle:hover{background:#bf7d2f1f;border-color:#bf7d2fa6}.visualizer-page .music-toggle svg,.visualizer-page .effects-toggle svg,.visualizer-page .install-toggle svg,.visualizer-page .fullscreen-toggle svg{width:calc(var(--hud-button) * .6);height:calc(var(--hud-button) * .6)}.visualizer-page .install-toggle[hidden]{display:none}.visualizer-page .install-help{z-index:5;color:#f4ebd9f2;background:var(--ui-bg-solid);border:var(--ui-edge-strong);border-radius:4px;max-width:min(260px,100% - 32px);padding:10px 12px;font-size:.85rem;line-height:1.4;position:absolute;top:100px;right:26px}.visualizer-page .hud-announcer{--announcer-shadow:0 0 8px 11px #000c;top:16px;right:calc(0px - var(--announce-offset,0px));left:var(--announce-offset,0px);z-index:15;width:max-content;max-width:min(100% - 32px,max(280px,min(560px,100% - 560px)));padding:calc(13px * var(--hud-scale)) calc(19px * var(--hud-scale));color:#f4ebd9eb;text-align:center;background:var(--ui-bg);border:var(--ui-edge);box-shadow:var(--announcer-shadow);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);border-radius:4px;margin:0 auto;font-size:17px;font-weight:600;line-height:1.35;position:absolute;transform:none}.visualizer-page .hud-announcer[hidden]{display:none}.visualizer-page .hud-announcer.is-popping{transform-origin:top;animation:.45s cubic-bezier(.34,1.2,.5,1) both hud-announcer-pop}@keyframes hud-announcer-pop{0%{transform:scale(0)}60%{transform:scale(1.12)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.visualizer-page .hud-announcer.is-popping{animation:none}}.hud-announcer-text{white-space:pre-line;margin:0}@property --gold-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.visualizer-page .hud-announcer{--border-dark:#8a5d12;--border-mid:#ffd54f;--border-glint:#fff3b0;--border-glow:#ffc44059}.visualizer-page [data-character=forest-elf]{--border-dark:#14501f;--border-mid:#4ade5a;--border-glint:#d6ffd0;--border-glow:#4ade5a59;--emoticon-tint:#87923a}.visualizer-page [data-character=kungfu-girl]{--border-dark:#8a3a08;--border-mid:#ff9a2e;--border-glint:#ffe0b0;--border-glow:#ff9a2e59;--emoticon-tint:#ff7a14}.visualizer-page [data-character=black-witch]{--border-dark:#2a2d33;--border-mid:#8c939e;--border-glint:#f2f6fc;--border-glow:#8c939e4d}.visualizer-page [data-character=demon]{--border-dark:#084845;--border-mid:#14b8aa;--border-glint:#a6ece6;--border-glow:#14b8aa4d;--emoticon-tint:#0d8296}.visualizer-page [data-character=blind-wizard]{--border-dark:#260f48;--border-mid:#7040c0;--border-glint:#c4acee;--border-glow:#7040c04d;--emoticon-tint:#4a2488}.visualizer-page .hud-announcer[data-suit=red]{--border-dark:#6b1414;--border-mid:#e53935;--border-glint:#ffc9c4;--border-glow:#e5393559}.visualizer-page .hud-announcer[data-suit=green]{--border-dark:#14501f;--border-mid:#43a047;--border-glint:#d6ffd0;--border-glow:#43a04759}.visualizer-page .hud-announcer[data-suit=blue]{--border-dark:#0d3a78;--border-mid:#1e88e5;--border-glint:#cfe6ff;--border-glow:#1e88e559}.visualizer-page .hud-announcer[data-suit=yellow]{--border-dark:#8a5d12;--border-mid:#ffd54f;--border-glint:#fff3b0;--border-glow:#ffc44059}.visualizer-page .hud-announcer.is-about-you{--border-dark:#14501f;--border-mid:#43d05a;--border-glint:#d6ffd0;--border-glow:#43d05ab3;background:linear-gradient(#1e8237bf,#145a28d9);font-size:19px}.visualizer-page .hud-announcer.is-about-you.is-loss{--border-dark:#6b1414;--border-mid:#ff4a3d;--border-glint:#ffc9c4;--border-glow:#ff3c32bf;background:linear-gradient(#aa1e1ecc,#6e0f0fe0)}.visualizer-page .hud-announcer.is-about-you.is-ingame{box-shadow:0 0 22px 4px var(--border-glow), var(--announcer-shadow)}.hud-announcer-tag{letter-spacing:.14em;text-transform:uppercase;color:#fff;opacity:.85;margin:0 0 4px;font-size:12px}.hud-announcer-tag[hidden]{display:none}.visualizer-page .hud-announcer.is-about-you.is-loss.is-popping{animation:.45s cubic-bezier(.34,1.2,.5,1) both hud-announcer-pop,.4s ease-in-out .45s hud-announcer-shake}@keyframes hud-announcer-shake{0%,to{translate:0}20%{translate:-6px}40%{translate:6px}60%{translate:-4px}80%{translate:3px}}@media (prefers-reduced-motion:reduce){.visualizer-page .hud-announcer.is-about-you.is-loss.is-popping{animation:none}}.visualizer-page .hud-announcer.is-ingame{box-shadow:0 0 14px var(--border-glow), var(--announcer-shadow)}.visualizer-page .hud-announcer.is-ingame:before{pointer-events:none;content:"";background:conic-gradient(from var(--gold-angle), var(--border-dark), var(--border-mid) 15%, var(--border-glint) 25%, var(--border-mid) 35%, var(--border-dark) 50%, var(--border-mid) 75%, var(--border-dark));border-radius:inherit;padding:2px;animation:4s linear infinite hud-gold-border;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes hud-gold-border{to{--gold-angle:360deg}}@media (prefers-reduced-motion:reduce){.visualizer-page .hud-announcer.is-ingame:before,.hud-game-winner-face:after{animation:none}}.visualizer-page .hud-announcer.has-results{text-align:left;width:max-content;max-width:calc(100% - 32px);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0;font-weight:400}.hud-results{--card-width:150px;max-width:calc(3 * var(--card-width) + 2 * 10px);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.hud-result.is-unrevealed{visibility:hidden;opacity:0}.hud-result{box-sizing:border-box;width:var(--card-width);background:var(--ui-bg);border:var(--ui-edge);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);border-radius:4px;grid-template-columns:minmax(0,1fr);align-content:start;gap:10px;padding:10px;transition:opacity .22s ease-out;animation:.3s ease-out hud-result-in;display:grid}@media (prefers-reduced-motion:reduce){.hud-result{transition:none}}.hud-result.is-winner{background:#785f0a80;border-color:#ddb16ecc}.hud-result.is-winner .hud-result-total{color:#ffd54f}.hud-results .hud-result-face{justify-self:start;align-items:center;gap:8px;display:flex;position:relative}.hud-result.is-winner .hud-result-face:before{content:"";background:linear-gradient(var(--emoticon-tint,var(--border-mid)), var(--emoticon-tint,var(--border-mid))), url(/assets/crown-CRfdkJ9k.webp) center / contain no-repeat;background-blend-mode:color, normal;width:20px;height:20px;position:absolute;top:-13px;left:18px;transform:translate(-50%);-webkit-mask:url(/assets/crown-CRfdkJ9k.webp) 50%/contain no-repeat;mask:url(/assets/crown-CRfdkJ9k.webp) 50%/contain no-repeat}.hud-results .hud-result-face img{width:36px;height:36px}.hud-results .hud-result-face figcaption{text-align:left;max-width:none;font-size:13px}.hud-result-summary{color:#f4ebd9cc;text-align:left;margin:0;font-size:12px;line-height:1.35}.hud-result-lines{color:#f4ebd99e;text-align:left;flex-wrap:wrap;gap:2px 10px;margin:0;font-size:11px;line-height:1.35;display:flex}.hud-result-lines b{font-variant-numeric:tabular-nums;font-weight:400}.hud-result-total{font-variant-numeric:tabular-nums;text-align:right;margin:0;font-size:28px;font-weight:400;line-height:1.1}.hud-result-lines [data-sign=positive],.hud-result-total[data-sign=positive]{color:#4caf50}.hud-result-lines [data-sign=negative],.hud-result-total[data-sign=negative]{color:#ef5350}@keyframes hud-result-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.hud-scores td.is-gain{animation:.4s step-end 3 hud-flash-gain}.hud-scores td.is-loss{animation:.4s step-end 3 hud-flash-loss}@keyframes hud-flash-gain{0%{color:#4caf50}50%{color:inherit}}@keyframes hud-flash-loss{0%{color:#ef5350}50%{color:inherit}}@media (width<=1100px){.visualizer-page .hud-announcer{max-width:min(100% - 32px,max(280px,100% - 380px));font-size:15px}.visualizer-page .hud-announcer.has-results{max-width:calc(100% - 32px)}}@media (width<=640px){.visualizer-page .hud-announcer{font-size:13px}}.visualizer-page .visualizer-diagnostics{z-index:5;color:#fff;background:#781414e6;border-radius:10px;width:min(520px,100% - 32px);max-height:60%;padding:12px 14px;font-size:12px;position:absolute;top:60px;left:50%;overflow:auto;transform:translate(-50%)}.visualizer-page .visualizer-diagnostics[hidden]{display:none}.visualizer-diagnostics-title{margin:0 28px 6px 0;font-weight:400}.visualizer-diagnostics pre{white-space:pre-wrap;word-break:break-word;margin:0;font-size:11px}.visualizer-page .visualizer-diagnostics-close{background:0 0;width:auto;padding:2px 8px;font-size:18px;position:absolute;top:4px;right:6px}.hud-game-winner{justify-content:center;gap:16px;margin-top:14px;display:flex}.hud-game-winner-face{--border-dark:#8a5d12;--border-mid:#ffd54f;--border-glint:#fff3b0;--border-glow:#ffc44059;margin:0;padding-top:34px;position:relative}.hud-game-winner-face img{width:128px;height:128px;box-shadow:0 0 14px var(--border-glow);object-fit:cover;background:#ffffff1f;border:3px solid #0000;border-radius:50%;display:block}.hud-game-winner-face:after{pointer-events:none;content:"";background:conic-gradient(from var(--gold-angle), var(--border-dark), var(--border-mid) 15%, var(--border-glint) 25%, var(--border-mid) 35%, var(--border-dark) 50%, var(--border-mid) 75%, var(--border-dark));border-radius:50%;padding:3px;animation:4s linear infinite hud-gold-border;position:absolute;inset:34px 0 0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.hud-game-winner .hud-game-winner-face:before{content:"";background:linear-gradient(var(--emoticon-tint,var(--border-mid)), var(--emoticon-tint,var(--border-mid))), url(/assets/crown-CRfdkJ9k.webp) center / contain no-repeat;background-blend-mode:color, normal;z-index:1;width:56px;height:56px;position:absolute;top:0;left:50%;transform:translate(-50%);-webkit-mask:url(/assets/crown-CRfdkJ9k.webp) 50%/contain no-repeat;mask:url(/assets/crown-CRfdkJ9k.webp) 50%/contain no-repeat}@media (width<=640px){.hud-game-winner-face img{width:88px;height:88px}.hud-game-winner .hud-game-winner-face:before{width:38px;height:38px}}.hud-opponent.has-quit .hud-opponent-face{opacity:.45}.visualizer-page .trick-pick-label{z-index:4;color:#ffd54f;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;pointer-events:none;background:var(--ui-bg);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);border:1px solid #ffd54f99;border-radius:4px;margin:0;padding:6px 16px;font-size:18px;font-weight:600;animation:1.6s ease-in-out infinite trick-pick-pulse;position:absolute;transform:translate(-50%);box-shadow:0 0 12px #ffc44059}.visualizer-page .trick-pick-label[hidden]{display:none}.visualizer-page .trick-pick-action{color:#f4ebd9f2;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;pointer-events:auto;background:#bf7d2f40;border:1px solid #f4ebd980;border-radius:4px;margin-left:14px;padding:4px 12px;font-size:15px}.visualizer-page .trick-pick-action:hover{background:#bf7d2f80}.visualizer-page .trick-pick-action[hidden]{display:none}@keyframes trick-pick-pulse{0%,to{box-shadow:0 0 8px #ffc44040}50%{box-shadow:0 0 18px #ffc44099}}@media (prefers-reduced-motion:reduce){.visualizer-page .trick-pick-label{animation:none}}.visualizer-page .bet-pick{z-index:6;gap:10px;display:flex;position:absolute;transform:translate(-50%)}.visualizer-page .bet-pick[hidden]{display:none}.visualizer-page .bet-pick button{color:#f4ebd9f2;font:inherit;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:var(--ui-bg);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);border:1px solid #f4ebd966;border-radius:4px;padding:8px 18px;font-size:17px;font-weight:600}.visualizer-page .bet-pick .bet-pick-yes{color:#ffd54f;border-color:#ffd54fb3;box-shadow:0 0 12px #ffc44066}.visualizer-page .bet-pick button:hover{background:#bf7d2f40}.home-page{color:#fff;background:0 0;min-height:100vh;position:relative;overflow:visible}.home-scene-shade{z-index:0;background:linear-gradient(90deg,#03050438 0%,#03040314 28%,#0000 60%),linear-gradient(#0203033d 0%,#0000 22% 78%,#0203026b 100%),radial-gradient(circle at 50% 47%,#0000 50%,#00000014 100%);display:none;position:absolute;inset:0}.home-logo{width:150px;height:auto;display:block}.home-topbar{z-index:10;justify-content:space-between;align-items:center;padding:10px clamp(24px,4.5vw,76px) 28px;display:flex;position:relative}.home-brand{color:#f8ecd4;align-items:center;gap:13px;text-decoration:none;display:flex;transform:translate(calc(-1*clamp(8px,2.5vw,40px)))}.home-brand>span,.home-brand strong,.home-brand small{display:block}.home-brand strong{letter-spacing:.1em;text-transform:uppercase;font-family:Cinzel Variable,serif;font-size:15px;font-weight:400}.home-brand small{color:#b89d79;letter-spacing:.28em;text-transform:uppercase;margin-top:3px;font-family:Cinzel Variable,serif;font-size:8px}.home-account-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.home-account-button{color:inherit;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:11px 17px;font-family:Cinzel Variable,serif;font-size:11px;font-weight:400;text-decoration:none;transition:color .18s,border-color .18s,background .18s}.home-account-button:hover{color:#ffbd62}.home-account-actions>.home-account-button{white-space:nowrap;flex-shrink:0}.home-account-actions>a.home-account-button{letter-spacing:.06em;text-transform:none;text-overflow:ellipsis;flex-shrink:1;min-width:0;max-width:160px;font-family:Georgia,Times New Roman,serif;font-size:13px;overflow:hidden}.home-language-button{color:#9a8b75;padding-inline:10px}.home-signup-button{background:#0a0a0870;border:1px solid #d69a4094}.home-signup-button:hover{background:#4a26088c;border-color:#e4a348}.home-top-nav{align-items:center;gap:15px;margin-left:clamp(20px,4vw,64px);display:flex;transform:translate(-4ch)}.home-top-nav button{color:#c9b99f;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:8px 5px;font-family:Cinzel Variable,serif;font-size:12px;font-weight:400;transition:color .18s}.home-top-nav button:hover{color:#efa94a}.home-top-nav span{background:#95632e;width:3px;height:3px;transform:rotate(45deg)}.home-table-action{z-index:10;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;top:43%;left:51%;transform:translate(-50%,-50%)}.home-table-action .home-play-button>span:last-child{margin-right:-.25em}.home-welcome{color:#f6e7cf;letter-spacing:.06em;text-align:center;white-space:nowrap;text-shadow:0 2px 12px #000000bf;margin:0 -.06em 4px 0;font-family:Cinzel Variable,serif;font-size:18px}.home-play-button{color:#f6e7cf;letter-spacing:.25em;text-transform:uppercase;cursor:pointer;background:linear-gradient(#9a4c14,#663008);border:1px solid #bb7022;justify-content:center;align-items:center;min-width:auto;padding:10.5px 16.5px;font-family:Cinzel Variable,serif;font-size:16.5px;font-weight:400;transition:transform .18s,box-shadow .18s,filter .18s;display:inline-flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffcf7957,inset 0 -5px 14px #250b0080,0 8px 30px #0000007a,0 0 24px #d365121f}.home-play-button:hover{filter:brightness(1.13);transform:translateY(-2px);box-shadow:0 12px 38px #0000008c,0 0 30px #d3651233}.home-play-button:active{transform:translateY(0)}.home-button-flare{background:linear-gradient(100deg,#0000 30%,#ffdc992e,#0000 70%);transition:transform .55s;position:absolute;inset:0;transform:translate(-110%)}.home-play-button:hover .home-button-flare{transform:translate(110%)}.home-footer{z-index:10;color:#746b5c;letter-spacing:.12em;text-transform:uppercase;gap:20px;font-size:9px;display:flex;position:absolute;bottom:26px;left:clamp(24px,4.5vw,76px)}.home-footer p{margin:0}.home-footer button{color:#746b5c;font-family:inherit;font-size:inherit;letter-spacing:inherit;text-transform:uppercase;cursor:pointer;background:0 0;border:0;margin:-5px 0;padding:5px;transition:color .18s}.home-footer button:hover{color:#efa94a}.home-modal-backdrop{z-index:100;-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);place-items:center;padding:24px;animation:.18s both home-fade-in;display:grid;position:fixed;inset:0}.home-modal{width:min(520px,100vw - 48px);box-shadow:var(--ui-shadow);text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0c0d0bf2;padding:48px;animation:.24s both home-modal-in;position:relative}.home-modal h2{color:#e09a38;margin:0 0 18px;font-family:Cinzel Variable,serif;font-size:28px;font-weight:700}.home-modal-copy{color:#e6dac4;margin:0;font-size:16px;line-height:1.8}.home-modal-link{color:#e0a14d;text-underline-offset:3px;-webkit-text-decoration:underline #e0a14d73;text-decoration:underline #e0a14d73}.home-modal-link:hover{color:#ffbd62}.home-close-button{z-index:1;cursor:pointer;background:0 0;border:0;width:32px;height:32px;position:absolute;top:18px;right:18px}.home-close-button span{background:#9b8d77;width:16px;height:1px;position:absolute;top:15px;left:8px;transform:rotate(45deg)}.home-close-button span:last-child{transform:rotate(-45deg)}.home-auth-form{text-align:left;gap:15px;margin-top:25px;display:grid}.home-auth-form label{color:#9f947f;letter-spacing:.14em;text-transform:uppercase;font-family:Cinzel Variable,serif;font-size:10px}.home-auth-form input{box-sizing:border-box;color:#eee2cc;background:#090a08;border:1px solid #373329;outline:0;width:100%;margin-top:7px;padding:12px 13px;font-size:14px;transition:border-color .18s,box-shadow .18s}.home-auth-form input:focus{border-color:#a86322;box-shadow:0 0 0 2px #a8632224}.home-modal-primary{color:#f6e7cf;letter-spacing:.16em;text-align:center;text-transform:uppercase;cursor:pointer;background:linear-gradient(#874513,#5a2908);border:1px solid #a66122;padding:13px 19px;font-family:Cinzel Variable,serif;font-size:10px;font-weight:400}.home-auth-form .home-modal-primary{margin-top:4px}.home-auth-message{color:#d69a40;min-height:18px;margin:12px 0 0;font-size:13px;line-height:1.5}.home-switch-auth{color:#9a8b75;cursor:pointer;background:0 0;border:0;margin-top:18px;font-size:11px}.home-switch-auth:hover{color:#d99a47}.home-modal:has(.home-board){width:min(650px,100vw - 48px)}.home-board{text-align:left;margin-top:22px}.home-board-compose{border-top:1px solid #bc7d312e;margin-top:14px;padding-top:14px}.home-board-compose .home-modal-copy{margin:0}.home-board-open{color:#e0a14d;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px dashed #bc7d3166;width:100%;padding:11px 13px;font-family:Cinzel Variable,serif;font-size:11px;transition:border-color .18s,background .18s}.home-board-open:hover{background:#bf7d2f14;border-color:#e0a14dbf}.home-board-form{gap:9px;display:grid}.home-board-form[hidden],.home-board-open[hidden]{display:none}.home-board-actions{align-items:center;gap:14px;display:flex}.home-board-actions .home-switch-auth{margin:0}.home-board-form textarea{box-sizing:border-box;resize:vertical;color:#eee2cc;width:100%;min-height:78px;font:inherit;background:#090a08;border:1px solid #373329;outline:0;padding:11px 13px;font-size:14px;line-height:1.5;transition:border-color .18s,box-shadow .18s}.home-board-form textarea:focus{border-color:#a86322;box-shadow:0 0 0 2px #a8632224}.home-board-form-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.home-board-count{color:#7d735f;font-size:11px}.home-board-form .home-auth-message{min-height:0;margin:0}.home-board-inline-link{color:#e0a14d;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;-webkit-text-decoration:underline #e0a14d73;text-decoration:underline #e0a14d73}.home-board-inline-link:hover{color:#ffbd62}.home-board-list{max-height:min(55vh,500px);margin:18px 0 0;padding:0 8px 0 0;list-style:none;overflow-y:auto}.home-board-post{border-top:1px solid #bc7d312e;padding:13px 0}.home-board-meta{flex-wrap:wrap;align-items:baseline;gap:4px 9px;display:flex}.home-board-meta strong{color:#e0a14d;font-family:Cinzel Variable,serif;font-size:13px;font-weight:400}.home-board-meta span{color:#7d735f;font-size:12px}.home-board-delete{color:#8d7f69;cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0;font-size:11px}.home-board-delete:hover{color:#e07a4a}.home-board-text{color:#e6dac4;white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0 0;font-size:16px;line-height:1.6}.home-board-status{color:#9a8b75;text-align:center;margin:14px 0 0;font-size:13px}.home-board-status:empty{display:none}.home-board>.home-switch-auth{margin:12px auto 0;display:block}@media (width<=420px){.home-top-nav{gap:9px}.home-top-nav button{letter-spacing:.1em}}.home-rules-content,.home-story{text-align:left;max-height:min(62vh,560px);margin-top:25px;padding-right:10px;overflow-y:auto}.home-story .home-modal-copy+.home-modal-copy{margin-top:16px}.home-rules-section{border-top:1px solid #2d2b24;padding:16px 0 2px}.home-rules-section:first-child{border-top:0;padding-top:0}.home-rules-section h3{color:#e0a14d;letter-spacing:.12em;text-transform:uppercase;margin:0 0 7px;font-family:Cinzel Variable,serif;font-size:14px;font-weight:700}.home-rules-section p,.home-rules-section li{color:#e6dac4;font-size:15px;line-height:1.65}.home-rules-section p{margin:0 0 9px}.home-rules-section ol{margin:8px 0 9px;padding-left:21px}.home-rules-section li::marker{color:#b36e27}.home-scoring-example{border-left:2px solid #b36e27;margin:12px 0 3px;padding-left:12px}.home-scoring-example strong{color:#e0a14d;letter-spacing:.12em;text-transform:uppercase;font-family:Cinzel Variable,serif;font-size:10px}.home-scoring-example p{margin-top:4px}@keyframes home-fade-in{0%{opacity:0}}@keyframes home-modal-in{0%{opacity:0;transform:translateY(10px)scale(.98)}}@media (width<=720px){.home-page{background-position:57%}.home-scene-shade{background:linear-gradient(#03040361,#0000 27%,#0203020d 55%,#02030280 100%),linear-gradient(90deg,#02030214,#0000)}.home-topbar{padding:10px 18px 19px}.home-brand strong{font-size:11px}.home-brand small{display:none}.home-account-actions{gap:2px}.home-account-button{padding:9px 8px;font-size:9px}.home-top-nav{margin:0;position:absolute;top:63px;left:18px;transform:none}.home-table-action{top:45%}.home-play-button{padding:10.5px 16.5px}.home-footer{bottom:11px;left:24px}.home-footer button{display:none}.home-modal{box-sizing:border-box;max-height:calc(100svh - 40px);padding:39px 27px;overflow-y:auto}}@media (prefers-reduced-motion:reduce){.home-page *,.home-page :before,.home-page :after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.lobby-header{z-index:2;background:var(--ui-bg);min-height:82px;-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);border-bottom:1px solid #bf7d2f33;justify-content:space-between;align-items:center;padding:15px clamp(24px,5vw,80px);display:flex;position:relative}.lobby-brand{align-items:center;width:120px;text-decoration:none;display:flex}.lobby-brand img{width:auto;height:88px;display:block}.lobby-nav{align-items:center;gap:12px;display:flex}.lobby-nav a{color:#f4ead8c2;letter-spacing:.12em;text-transform:none;font-size:.82rem;font-weight:400;text-decoration:none;transition:color .16s,text-shadow .16s}.lobby-nav a:hover{color:#e0a14d;text-shadow:0 0 12px #d2822859}.lobby-nav span{background:#bf7d2f52;width:1px;height:16px}.lobby-account{white-space:nowrap;align-items:center;gap:12px;display:flex}.lobby-account a,.lobby-account button{border:var(--ui-edge);color:#f4ebd9e0;letter-spacing:.08em;cursor:pointer;background:#0a0a0873;padding:8px 14px;font-family:inherit;font-size:.78rem;text-decoration:none;transition:border-color .2s,background .2s,color .2s}.lobby-account a:hover,.lobby-account button:hover{color:#fff;background:#bf7d2f1f;border-color:#bf7d2fa6}.lobby-username{white-space:nowrap;color:#f4ead894;letter-spacing:.08em;white-space:nowrap;border-radius:4px;flex-shrink:0;max-width:120px;font-size:.82rem}.lobby-username-text{text-overflow:ellipsis;display:block;overflow:hidden}.lobby-account .lobby-username-alert,.profile-heading-actions a.profile-take-seat,.room-start-button.is-ready{color:#f6e7cf;background:linear-gradient(#9a4c14,#663008);border:1px solid #bb7022;animation:2.4s ease-in-out infinite lobby-username-glow;box-shadow:inset 0 1px #ffcf7957,inset 0 -5px 14px #250b0080,0 0 18px #d365124d}.lobby-account .lobby-username-alert:hover,.profile-heading-actions a.profile-take-seat:hover,.room-start-button.is-ready:hover:not(:disabled){color:#fff;filter:brightness(1.13);background:linear-gradient(#9a4c14,#663008);border-color:#bb7022}@keyframes lobby-username-glow{0%,to{box-shadow:inset 0 1px #ffcf7957,inset 0 -5px 14px #250b0080,0 0 10px #d3651233}50%{box-shadow:inset 0 1px #ffcf7957,inset 0 -5px 14px #250b0080,0 0 24px #d365128c}}@media (prefers-reduced-motion:reduce){.lobby-account .lobby-username-alert,.home-account-actions>a.home-account-alert,.profile-heading-actions a.profile-take-seat,.room-start-button.is-ready{animation:none}}.profile-heading-actions a.profile-take-seat[hidden]{display:none}.home-account-actions>a.home-account-alert{color:#ffbd62;animation:2.4s ease-in-out infinite home-account-glow}@keyframes home-account-glow{0%,to{text-shadow:0 0 6px #ffbd6259}50%{text-shadow:0 0 10px #ffbd62d9,0 0 22px #d3651299}}.lobby-account-button{white-space:nowrap;color:#e0a14d;letter-spacing:.06em;justify-content:center;align-items:center;padding:6px 10px;font-size:.72rem;font-weight:400;text-decoration:none;display:inline-flex}.lobby-account .lobby-language-button{color:#9a8b75}.lobby-brand-group{align-items:center;gap:clamp(28px,4vw,56px);display:flex}.lobby-brand-group .lobby-brand{width:auto}.lobby-help-button{border:var(--ui-edge);color:#e0a14d;letter-spacing:0;cursor:pointer;background:#0a0a0873;border-radius:4px;flex-shrink:0;padding:8px 14px;font-family:Cinzel Variable,serif;font-size:.9rem;font-weight:700;line-height:1.2;transition:border-color .2s,background .2s,color .2s;position:relative}.lobby-help-button:hover,.lobby-help-button:focus-visible{color:#ffbd62;background:#bf7d2f1f;border-color:#bf7d2fa6}.lobby-help-group{align-items:center;gap:8px;display:flex}.lobby-back-button{font-size:1.35rem;font-weight:900;line-height:.8}.lobby-header [data-tooltip]{position:relative}.lobby-header [data-tooltip]:after{content:attr(data-tooltip);z-index:5;border:var(--ui-edge);box-shadow:var(--ui-shadow);color:#e6dac4;letter-spacing:.02em;white-space:normal;opacity:0;pointer-events:none;background:#0c0d0bf2;border-radius:4px;width:max-content;max-width:240px;padding:8px 12px;font-family:Georgia,Times New Roman,serif;font-size:.78rem;font-weight:400;line-height:1.4;transition:opacity .18s,transform .18s;position:absolute;top:calc(100% + 10px);left:0;transform:translateY(-4px)}.lobby-header [data-tooltip]:hover:after,.lobby-header [data-tooltip]:focus-visible:after{opacity:1;transform:translateY(0)}.lobby-account [data-tooltip]:after{left:auto;right:0}#navbar-help,#roles-help{z-index:10000}#visualizer-leave-dialog{z-index:200}#visualizer-leave-dialog .home-modal-copy+.home-modal-copy{margin-top:12px}.visualizer-leave-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:26px;display:flex}.visualizer-leave-actions button{padding:12px 18px}#room-start-summary{z-index:10000}.start-summary-list{text-align:left;grid-template-columns:auto minmax(0,1fr);gap:8px 18px;margin:0;display:grid}.start-summary-list dt{color:#f4ebd985;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;line-height:1.9}.start-summary-list dd{color:#e6dac4b8;margin:0;line-height:1.6}.start-summary-list dd.is-changed{color:#e0a14d}.start-summary-note{margin-top:22px;font-size:14px}.lobby{isolation:isolate;background:0 0;min-height:100svh;position:relative;overflow-x:hidden}.lobby-content{z-index:1;width:min(1180px,100% - 48px);margin:0 auto;padding:clamp(50px,8vh,90px) 0 80px;position:relative}.lobby-title-row{grid-template-columns:1fr auto 1fr;align-items:end;gap:30px;margin-bottom:28px;display:grid}.lobby-kicker{color:#c88735;letter-spacing:.22em;text-transform:uppercase;margin:0 0 8px;font-size:.72rem;font-weight:400}.lobby-title-row>div{text-align:center;grid-column:2}.lobby-title-row .create-room-button{justify-self:end}.lobby-title-row .quick-play-button{grid-column:1;justify-self:start}.quick-play-bar{color:#f4ead8;background:#4b280d66;border:1px solid #ce8b3573;justify-content:space-between;align-items:center;gap:16px;margin:-12px 0 20px;padding:6px 8px 6px 16px;display:flex}.quick-play-bar[hidden]{display:none}.quick-play-text{font-variant-numeric:tabular-nums}.quick-play-bar .secondary-action{color:#f4ead8;background:#a15e1859;border-color:#ce8b35b3;height:30px;padding:0 14px}.lobby-title-row h1{color:#f4ead8;letter-spacing:.025em;text-shadow:0 3px 25px #000000a6;margin:0;font-family:Cinzel Variable,serif;font-size:clamp(2rem,4vw,3.5rem);font-weight:700;line-height:.95}.create-room-button{color:#f0d6a5;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:linear-gradient(135deg,#aa651c38,#3e230d7a);border:1px solid #ce8b358c;justify-content:center;align-items:center;gap:10px;min-width:170px;height:48px;padding:0 20px;font-size:.76rem;font-weight:400;transition:background .16s,border-color .16s,box-shadow .16s,transform .16s;display:inline-flex;box-shadow:0 8px 28px #0000004d,inset 0 0 18px #c47a250d}.create-room-button span{color:#d99a4a;font-size:1.2rem;font-weight:400}.create-room-button:hover{background:linear-gradient(135deg,#b76f1f52,#4b280d8f);border-color:#e29f47d9;transform:translateY(-1px);box-shadow:0 12px 32px #0006,0 0 20px #bb6f221a}.create-room-button:active{transform:translateY(0)}.rooms-panel{border:var(--ui-edge);background:linear-gradient(135deg, #c97f2809, transparent 36%), var(--ui-bg-solid);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);overflow:hidden;box-shadow:0 25px 70px #00000061}.rooms-heading,.room-row{grid-template-columns:minmax(0,1fr) minmax(0,.8fr) minmax(0,.7fr) minmax(0,2.4fr);align-items:center;column-gap:10px;display:grid}.rooms-heading{color:#e0a14dd9;letter-spacing:.16em;text-transform:uppercase;background:#04050459;border-bottom:1px solid #bf7d2f29;min-height:48px;padding:0 24px;font-size:.66rem;font-weight:400}.room-row{border-bottom:1px solid #bf7d2f1c;min-height:92px;padding:0 24px;transition:background .16s}@media (width>=900px){.rooms-heading,.room-row{grid-template-columns:minmax(0,1fr) minmax(0,.8fr) minmax(0,.7fr) minmax(0,1.2fr);padding-inline:max(24px,50% - 430px)}}.room-row:last-child{border-bottom:0}.room-row:hover{background:linear-gradient(90deg,#9b5d1b14,#0000 70%)}.room-name{color:#eee0c7;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;font-family:Georgia,Times New Roman,serif;font-size:1.2rem;font-weight:400;display:flex}.room-name-text{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.mode-classic{--mode-color:201, 164, 92}.mode-roles{--mode-color:184, 132, 224}.mode-sabotage{--mode-color:214, 96, 72}.mode-badge{border:1px solid rgba(var(--mode-color), .75);background:rgba(var(--mode-color), .12);color:rgb(var(--mode-color));letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;vertical-align:middle;border-radius:3px;flex-shrink:0;padding:2px 8px;font-family:Cinzel Variable,serif;font-size:.6rem;font-weight:700;line-height:1.5;display:inline-block}.room-intro .mode-badge{margin-left:10px}.room-row[class*=mode-]{box-shadow:inset 4px 0 0 rgba(var(--mode-color), .8)}.room-created{flex-direction:column;gap:4px;min-width:0;display:flex}.room-created-at,.room-creator{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-created-at{color:#cd97529e;font-size:.75rem;font-weight:400}.room-creator{color:#f4ead89e;font-size:.8rem}.player-count{color:#f4ead86b;letter-spacing:.05em;text-transform:uppercase;flex-direction:column;gap:3px;font-size:.65rem;display:flex}.player-count-names{color:#f4ead89e;letter-spacing:0;text-transform:none;gap:2px;min-width:0;margin:0;padding:0;font-size:.74rem;list-style:none;display:grid}.player-count-names li{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.player-count-number{color:#e1c18d;font-size:.95rem;font-weight:400}.room-actions{white-space:nowrap;box-sizing:border-box;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:8px;min-width:0;display:flex}.room-actions .room-action-button{text-overflow:ellipsis;text-align:center;min-width:0;padding:0 clamp(4px,1vw,12px);overflow:hidden}.room-delete-slot{flex:0 64px;justify-content:center;align-items:center;width:64px;min-width:0;display:inline-flex}.room-action-button,.room-delete-button{letter-spacing:.08em;text-transform:uppercase;cursor:pointer;height:34px;padding:0 12px;font-size:.65rem;font-weight:400;transition:background .16s,border-color .16s,color .16s}.room-action-button{color:#e2b66f;background:#7d491533;border:1px solid #ca8b367a}.room-action-button:hover{color:#f0d19b;background:#97581852;border-color:#e09d46c7}.room-delete-button{color:#b9785b8c;background:0 0;border:1px solid #7d4a314d}.room-delete-button:hover{color:#dd876fe6;background:#782a1d2e;border-color:#b4563f99}.room-action-button:disabled,.room-delete-button:disabled,.create-room-button:disabled{opacity:.45;cursor:not-allowed}.rooms-loading,.rooms-empty,.rooms-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:260px;padding:40px;display:flex}.rooms-loading{color:#f4ead866;letter-spacing:.08em;font-size:.8rem}.rooms-empty h3,.rooms-error h3{color:#eadbc3;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;font-weight:400}.rooms-empty p,.rooms-error p{color:#f4ead873;margin:10px 0 20px;font-size:.8rem}.rooms-error h3{color:#d39a73}.rooms-empty-button{color:#dfb16b;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:#7d49152e;border:1px solid #ca8b366b;height:38px;padding:0 18px;font-size:.68rem;font-weight:400}.room-modal-backdrop{z-index:20;-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);justify-content:center;align-items:center;padding:24px;animation:.18s both home-fade-in;display:flex;position:fixed;inset:0}.room-modal-backdrop[hidden]{display:none}.room-modal{background:linear-gradient(140deg,#ffb9540b,#0000 1000%),#11120f;border:1px solid #bc7d318c;width:min(460px,100%);padding:38px;animation:.24s both home-modal-in;position:relative;box-shadow:0 28px 90px #000000bf,inset 0 0 45px #0000004d}.room-modal:before{pointer-events:none;content:"";border:1px solid #b3702529;position:absolute;inset:2px}.room-modal-close{color:#f4ead86b;cursor:pointer;background:0 0;border:0;width:32px;height:32px;padding:0;font-size:1.5rem;line-height:1;position:absolute;top:16px;right:18px}.room-modal-close:hover{color:#dca45c}.room-modal h2{color:#f0e0c5;margin:0;font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:400}.room-modal-description{color:#f4ead87a;margin:10px 0 30px;font-size:.78rem;line-height:1.6}#roomVisibility{color:#e2c18b;cursor:pointer;background:#0c0d0bf2;border:1px solid #ca8b366b;border-radius:0;outline:none;width:100%;min-width:0;height:42px;padding:0 12px;font-family:inherit;font-size:.78rem;transition:background .16s,border-color .16s,box-shadow .16s}#roomVisibility:hover{background:#281c0ff2;border-color:#e09d46bf}#roomVisibility:focus-visible{border-color:#e29f47d9;box-shadow:0 0 12px #bb6f2226}#roomVisibility option{color:#e2c18b;background:#0c0d0b}.room-form-field{border:0;margin:0 0 24px;padding:0;display:block}.room-form-field>span,.room-form-field legend{color:#e0a14db8;letter-spacing:.13em;text-transform:uppercase;margin-bottom:9px;font-size:.65rem;font-weight:400;display:block}.room-form-field input[type=text]{box-sizing:border-box;border:var(--ui-edge);color:#f0e2ca;width:100%;height:46px;font:inherit;background:#0304038c;outline:none;padding:0 14px}.room-form-field input[type=text]::placeholder{color:#f4ead840}.room-form-field input[type=text]:focus{border-color:#d08f3aad;box-shadow:0 0 0 2px #af661d14}.game-mode-options{gap:8px;display:grid}.game-mode-option{border:var(--ui-edge);cursor:pointer;background:#03040373;gap:4px;padding:10px 12px;transition:border-color .16s,background .16s;display:grid}.game-mode-option input{opacity:0;pointer-events:none;position:absolute}.game-mode-option:hover{border-color:rgba(var(--mode-color), .5)}.game-mode-option:has(input:checked){border-color:rgba(var(--mode-color), .85);background:rgba(var(--mode-color), .1)}.game-mode-option:has(input:focus-visible){outline:2px solid rgba(var(--mode-color), .85);outline-offset:2px}.game-mode-name{color:rgb(var(--mode-color));letter-spacing:.08em;text-transform:uppercase;font-family:Cinzel Variable,serif;font-size:.8rem;font-weight:700}.game-mode-description{color:#f4ead89e;letter-spacing:0;text-transform:none;font-size:.78rem;font-weight:400;line-height:1.4}.player-count-options{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.player-count-options label{cursor:pointer}.player-count-options input{opacity:0;pointer-events:none;position:absolute}.player-count-options span{border:var(--ui-edge);color:#f4ead88c;background:#03040373;justify-content:center;align-items:center;height:42px;margin:0;font-size:.8rem;font-weight:400;transition:border-color .16s,background .16s,color .16s;display:flex}.player-count-options label:hover span{border-color:#d08f3a80}.player-count-options input:checked+span{color:#e5b66e;background:#8b4e143d;border-color:#d08f3ab8;box-shadow:inset 0 0 15px #b0651b0f}.room-form-actions{justify-content:flex-end;gap:10px;display:flex}.secondary-action,.create-room-submit{letter-spacing:.1em;text-transform:uppercase;cursor:pointer;height:42px;padding:0 18px;font-size:.67rem;font-weight:400}.secondary-action{color:#f4ead87a;background:0 0;border:1px solid #bf7d2f33}.secondary-action:hover{color:#f4ead8bf;border-color:#bf7d2f61}.create-room-submit{color:#eac58a;background:linear-gradient(135deg,#a15e184d,#512c0d73);border:1px solid #ce8b3599}.create-room-submit:hover{background:linear-gradient(135deg,#b26a1c66,#5e330f8c);border-color:#e29f47d9}.create-room-submit:disabled{opacity:.45;cursor:not-allowed}@media (width<=720px){.lobby-header{min-height:76px;padding:10px 18px}.lobby-brand{width:auto}.lobby-brand img{height:70px}.lobby-nav{gap:12px}.lobby-nav a{font-size:.68rem}.lobby-account{gap:8px}.lobby-username{max-width:110px;font-size:.72rem}.lobby-account-button{padding:6px 9px;font-size:.68rem}.lobby-help-button{padding:6px 11px;font-size:.8rem}.lobby-back-button{font-size:1.2rem}.lobby-content{width:min(100% - 28px,600px);padding-top:44px}.lobby-title-row{flex-direction:column;align-items:center;gap:20px;display:flex}.lobby-title-row h1{font-size:2.2rem}.lobby-title-row>div{order:-1}.create-room-button{width:100%}.rooms-panel{border-radius:0}.room-modal{padding:30px 22px}}@media (width<=420px){.rooms-heading,.room-row{column-gap:6px;padding:0 10px}.lobby-nav span{display:none}.lobby-nav{gap:10px}.lobby-title-row h1{font-size:1.9rem}.player-count-options{gap:5px}}.room-page{background:0 0;min-height:100svh;position:relative;overflow:hidden auto}.room-content{flex-direction:column;width:min(1100px,100% - 48px);min-height:max(455px,100svh - 145px);margin:0 auto;padding:24px 0 10px;display:flex}.room-title-row{text-align:center;flex:none;margin-bottom:4px;position:relative}.room-title-row .room-intro{color:#f8f0e0f5;letter-spacing:.02em;margin:0;padding:0 90px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1rem,1.6vw,1.35rem);font-weight:400}.room-intro-line{line-height:1.35;display:block}.room-intro-line+.room-intro-line{color:#f8f0e0bd;font-size:.82em}.room-intro-name{color:#e0a14d}.room-invite{box-sizing:border-box;text-align:center;background:#bf7d2f14;border:1px solid #e0a14d73;flex:none;width:min(640px,100%);margin:10px auto 6px;padding:12px 16px}.room-invite[hidden]{display:none}.room-invite-title{color:#e0a14d;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:.72rem}.room-invite-row{gap:8px;display:flex}.room-invite-link{box-sizing:border-box;border:var(--ui-edge);color:#f4ebd9;min-width:0;height:36px;font:inherit;background:#0304038c;flex:auto;padding:0 10px;font-size:.8rem}.room-invite-button{color:#eac58a;height:36px;font:inherit;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:linear-gradient(135deg,#a15e184d,#512c0d73);border:1px solid #ce8b3599;flex:none;padding:0 14px;font-size:.72rem}.room-invite-button.is-quiet{color:#f4ebd9a6;background:0 0;border-color:#bf7d2f4d}.room-invite-button:disabled{opacity:.5;cursor:default}.room-invite-note{color:#f4ebd98c;margin:8px 0 0;font-size:.72rem;line-height:1.5}@media (width<=560px){.room-invite-row{flex-wrap:wrap}.room-invite-link{flex-basis:100%}.room-invite-button{flex:1 1 0}}.join-page{box-sizing:border-box;justify-content:center;align-items:center;min-height:100svh;padding:24px 16px;display:flex;position:relative}.join-language{border:var(--ui-edge);color:#f4ebd9b3;font:inherit;letter-spacing:.08em;cursor:pointer;background:#0a0a0873;padding:8px 12px;font-size:.75rem;position:absolute;top:16px;left:16px}.join-card{box-sizing:border-box;border:var(--ui-edge);background:linear-gradient(135deg, #c97f2809, transparent 36%), var(--ui-bg-solid);width:min(460px,100%);box-shadow:var(--ui-shadow);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);text-align:center;padding:28px 28px 24px}.join-title{color:#f4ebd9;margin:0 0 8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.25rem,4.5vw,1.6rem);font-weight:400;line-height:1.35}.join-seats,.join-message{color:#f4ebd9a6;margin:0 0 22px;font-size:.9rem}.join-form{text-align:left}.join-form .room-form-field{margin-bottom:16px}.join-submit{justify-content:center;align-items:center;width:100%;font-size:.75rem;text-decoration:none;display:inline-flex}.join-note{color:#f4ebd980;text-align:center;margin:12px 0 0;font-size:.75rem}.join-error{color:#e08a6a;margin:14px 0 0;font-size:.85rem}.join-error[hidden]{display:none}.room-main-panel{flex-direction:column;flex:1;min-height:0;display:flex}.room-avatar-section{flex-direction:column;flex:none;align-items:center;padding:4px 30px 10px;display:flex}.room-avatar-picker{flex:none;width:100%;max-width:900px;min-height:0;margin-top:8px}.room-avatar-picker .avatar-grid{grid-template-rows:auto;grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;width:100%}@media (orientation:portrait){.room-avatar-picker .avatar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.room-message{color:#ddb16ee6;margin:4px 0 0;font-size:.85rem}.room-message:empty{display:none}.room-start[hidden],.room-waiting[hidden]{display:none!important}.room-start{box-sizing:border-box;border:var(--ui-edge);background:linear-gradient(135deg, #c97f2809, transparent 36%), var(--ui-bg-solid);width:min(100% - 60px,900px);box-shadow:var(--ui-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);flex:none;margin:4px auto 0;padding:16px 30px 18px}.room-start-controls{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-flow:dense;align-items:start;gap:12px 20px;width:100%;display:grid}.room-start-controls .room-start-column,.room-start-controls .room-start-pair{display:contents}.room-start-controls label:has(#room-bot-level){grid-column:span 2}.room-start-controls .room-role-field{grid-row:2}.room-start-controls .room-role-basic{grid-column:3/span 2}.room-start-controls .room-role-master{grid-column:5/span 2}.room-start-controls .room-role-field[hidden],.room-role-own[hidden]{display:none}.room-start-controls .room-npc-roles{grid-area:2/1/auto/span 2}.room-start-controls .room-npc-roles[hidden]{display:none}.room-role-own{border:var(--ui-edge);background:var(--ui-bg-solid);min-width:200px;box-shadow:var(--ui-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:#f4ebd9b8;text-shadow:0 1px 6px #000000e6;letter-spacing:.12em;text-transform:uppercase;flex-direction:column;align-self:center;gap:14px;margin-top:12px;padding:14px 22px 16px;font-size:.72rem;font-weight:400;display:flex}.room-role-field>span:first-child,.room-role-own-choice>span:first-child{color:rgb(var(--mode-color))}.room-role-own-choice{flex-direction:column;gap:7px;display:flex}.room-role-own-choice>span:first-child{color:#9b5fd7;text-align:center;text-shadow:0 0 4px #000,0 1px 10px #000;font-size:.85rem;font-weight:700}#roles-help .home-modal h2{color:#9b5fd7}.room-role-row{gap:8px;display:flex}.room-role-row select{flex:1;min-width:0}.room-role-row .roles-help-button{border:1px solid rgba(var(--mode-color), .6);min-height:40px;color:rgb(var(--mode-color));letter-spacing:0;text-shadow:none;cursor:pointer;background:#0a0a0873;border-radius:4px;flex:0 0 40px;padding:0;font-family:Cinzel Variable,serif;font-size:.95rem;font-weight:700;transition:border-color .2s,background .2s}.room-role-row .roles-help-button:hover,.room-role-row .roles-help-button:focus-visible{border-color:rgb(var(--mode-color));background:rgba(var(--mode-color), .16)}.roles-help-card{color:#b884e0;letter-spacing:0;vertical-align:middle;background:#b884e024;border:1px solid #b884e0b3;border-radius:50%;place-items:center;width:24px;height:24px;margin-right:9px;font-size:12px;display:inline-grid}.roles-help h3{color:#b884e0}.room-role-own select{color:#f8f0e0e6;min-height:40px;font:inherit;letter-spacing:.04em;text-transform:none;background:#050605b8;border:1px solid #b4772f4d;padding:0 11px}.room-start-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.room-variations{color:#f4ebd9a3;letter-spacing:.12em;text-align:center;text-transform:uppercase;grid-column:1/-1;justify-self:center;margin:14px 0;font-size:.72rem}.room-variations summary{cursor:pointer}.room-variations-summary{color:#ddb16ee6;letter-spacing:.12em;text-align:center;text-transform:uppercase;flex:none;margin:12px 0 0;font-size:.72rem;font-weight:400}.room-variations-controls{grid-template-columns:repeat(4,minmax(0,max-content));justify-content:center;gap:12px;margin-top:10px;display:grid}.room-start-controls label{color:#f4ebd9a3;letter-spacing:.12em;text-align:left;text-transform:uppercase;flex-direction:column;gap:7px;min-width:0;font-size:.72rem;font-weight:400;display:flex}.room-start-controls select{color:#f8f0e0e6;min-height:40px;font:inherit;background:#050605b8;border:1px solid #b4772f4d;padding:0 11px}.room-start-button{color:#f8f0e0f0;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:#9153173d;border:1px solid #bf7d2f8c;grid-column:1/-1;justify-self:center;min-height:40px;padding:0 22px;font-family:inherit;font-size:.78rem;font-weight:400;transition:background .2s,border-color .2s}.room-start-button:hover:not(:disabled){background:#9153176b;border-color:#ddb16ecc}.room-start-button:disabled{cursor:not-allowed;opacity:.45}.room-waiting{box-sizing:border-box;color:#ddb16ee6;text-align:center;flex:1;justify-content:center;align-items:center;width:100%;margin:0;padding:16px;font-size:.85rem;font-weight:400;display:flex}@media (width<=720px){.room-content{width:min(100% - 28px,1180px);padding-top:35px}.room-avatar-section,.room-start{padding-left:20px;padding-right:20px}.room-start{width:min(100% - 40px,900px)}.room-start-controls{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px}.room-start-controls .room-role-field,.room-start-controls .room-npc-roles{grid-area:auto/1/auto/-1}.room-start-controls label{width:auto;min-width:0}.room-start-controls select,.room-start-button,.room-variations{width:100%}.room-variations-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.room-title-row .room-intro{font-size:1.1rem}}.profile-page{color:#f4ebd9;min-height:100svh;position:relative;overflow:hidden}.profile-content{flex-direction:column;width:min(1180px,100% - 48px);min-height:calc(100svh - 125px);margin:0 auto;padding:clamp(30px,5vh,55px) 0 20px;display:flex}.profile-heading{flex-shrink:0;justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px;display:flex}.profile-heading h1{color:#f4ebd9;letter-spacing:.04em;margin:2px 0 4px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.4rem);font-weight:400}.profile-color{--strong:#e0a14d;color:#f4ebd9b3;white-space:nowrap;letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;font-size:.82rem;display:flex}.profile-color[data-color=Blue]{--strong:#1565c0}.profile-color[data-color=Red]{--strong:#c62828}.profile-color[data-color=Yellow]{--strong:#f9a825}.profile-color[data-color=Green]{--strong:#2e7d32}.profile-color-name strong{color:color-mix(in srgb, var(--strong) 55%, #f4ebd9);font-weight:700}.profile-color-bar{border:1px solid color-mix(in srgb, var(--strong) 60%, transparent);background:#08090780;width:140px;height:7px}.profile-color-bar span{background:var(--strong);height:100%;box-shadow:0 0 8px var(--strong);display:block}.profile-highlights{flex-shrink:0;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px;margin-bottom:16px;display:grid}.profile-highlight-group{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:10px;display:grid}.profile-highlight{text-align:center;min-height:108px;-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);background:#0c0d0bad;border:1px solid #b4772f33;padding:16px 18px;box-shadow:0 16px 40px #0000003d}.profile-highlight span,.profile-highlight small{color:#f4ebd985;letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;display:block}.profile-highlight strong{color:#e0a14d;margin:8px 0 2px;font-size:clamp(1.6rem,3vw,2.3rem);font-weight:400;line-height:1;display:block}.profile-highlight small{letter-spacing:.02em;text-transform:none;font-size:.62rem}.profile-highlight-primary{background:linear-gradient(135deg,#c97f281f,#0000 70%),#0c0d0bb8;border-color:#bf7d2f7a}.profile-highlight-pair{grid-column:span 2}.profile-highlight-pair-row{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.profile-card{border:var(--ui-edge);background:linear-gradient(135deg, #c97f2809, transparent 36%), var(--ui-bg-solid);box-shadow:var(--ui-shadow);-webkit-backdrop-filter:var(--ui-blur);backdrop-filter:var(--ui-blur);padding:20px 24px}.profile-card-kicker{color:#b97a2d;letter-spacing:.16em;margin:0 0 5px;font-size:.62rem;font-weight:400}.profile-card h2{color:#f4ebd9;letter-spacing:.04em;margin:0 0 14px;font-family:Georgia,Times New Roman,serif;font-size:1.3rem;font-weight:400}.profile-section-heading{flex-shrink:0;justify-content:space-between;align-items:start;gap:16px;margin-bottom:8px;display:flex}.profile-skills-heading{align-items:center;gap:12px;margin-bottom:22px;display:flex}.profile-card .profile-skills-heading h2{white-space:nowrap;margin:0}.profile-level-progress{flex-direction:column;flex:0 140px;gap:6px;min-width:0;margin-left:auto;display:flex}.profile-level-label{color:#f4ebd985;letter-spacing:.08em;text-transform:uppercase;font-size:.64rem}.profile-level-bar{background:#08090780;border:1px solid #bf7d2f6b;height:6px;display:block}.profile-level-bar span{background:#e0a14d;height:100%;display:block;box-shadow:0 0 8px #e0a14d99}.profile-rank{color:#f0b45e;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;background:#bf7d2f24;border:1px solid #e0a14dbf;padding:7px 12px;font-size:.78rem;font-weight:700;box-shadow:0 0 10px #e0a14d2e}.profile-opponents{flex:none;min-height:0;margin-bottom:22px;display:block}.profile-social{min-height:0}.profile-player-search{flex-shrink:0;margin-bottom:16px}.profile-search-form{gap:7px;display:grid}.profile-search-label{color:#f4ebd985;letter-spacing:.08em;text-transform:uppercase;font-size:.64rem}.profile-search-controls{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.profile-search-controls input{color:#f4ebd9;min-width:0;font:inherit;background:#08090785;border:1px solid #bf7d2f3d;padding:8px 10px;font-size:.82rem}.profile-search-controls input:focus{border-color:#bf7d2fb3;outline:none}.profile-search-results{gap:8px;max-height:132px;margin-top:12px;display:grid;overflow-y:auto}.profile-search-result{background:#08090747;border:1px solid #bf7d2f24;justify-content:space-between;align-items:center;gap:16px;padding:9px 12px;display:flex}.profile-search-result>div{gap:3px;min-width:0;display:grid}.profile-search-result strong{color:#f4ebd9;font-size:.85rem;font-weight:400}.profile-search-result span{color:#f4ebd97a;font-size:.65rem}.profile-social .opponents-list{max-height:112px}.opponents-list{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:8px;padding-right:8px;display:grid}.profile-opponent-count{color:#f4ebd980;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.opponent-row{background:#08090747;border:1px solid #bf7d2f24;justify-content:space-between;align-items:center;gap:20px;min-width:0;padding:12px 14px;display:flex}.opponent-row>div{align-items:center;gap:12px;display:flex}.opponent-row strong{color:#f4ebd9;font-size:.9rem;font-weight:400}.opponent-row span{color:#f4ebd97a;letter-spacing:.08em;text-transform:uppercase;border:1px solid #bf7d2f33;padding:3px 7px;font-size:.62rem}.opponent-games{white-space:nowrap;color:#e0a14d!important}.opponent-player-link{color:inherit;text-decoration:none}.opponent-player-link:hover{text-decoration:underline}.profile-action-group{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.profile-action{color:#e0a14d;cursor:pointer;font:inherit;letter-spacing:.05em;background:#bf7d2f1f;border:1px solid #bf7d2f6b;padding:7px 10px;font-size:.68rem;text-decoration:none}.profile-action:hover:not(:disabled){background:#bf7d2f38}.profile-action-muted{color:#f4ebd99e;background:0 0;border-color:#f4ebd929}.profile-action-sent{cursor:default;-webkit-user-select:none;user-select:none}.profile-action:disabled{cursor:wait;opacity:.55}.profile-empty{color:#f4ebd985;margin:0;padding:20px 0 5px;font-size:.85rem}.profile-footer{color:#f4ebd959;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;width:min(1180px,100% - 48px);margin:0 auto;padding:0 0 28px;font-size:.68rem;display:flex}@media (width<=850px){.profile-highlights{grid-template-columns:minmax(0,1fr);gap:10px}}@media (width<=560px){.profile-heading{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:24px}.profile-content{width:min(100% - 28px,1180px);padding-top:40px}.profile-heading h1{font-size:2.3rem}.profile-card{padding:20px}.profile-highlight-group{grid-auto-flow:row}.profile-highlight-pair{grid-column:auto}.profile-section-heading{flex-direction:column;align-items:flex-start}.opponents-list{grid-template-columns:1fr}.opponent-row>div{flex-direction:column;align-items:flex-start;gap:5px}.profile-action-group{justify-content:flex-start}.profile-footer{width:min(100% - 28px,1180px)}}.profile-identity-main{min-width:0}.profile-title-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.profile-title-row h1{margin-bottom:0}.profile-heading-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;display:flex}.profile-action-count{color:#0c0d0b;background:#b97a2d;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:5px;padding:0 5px;font-size:.58rem;font-weight:400;display:inline-flex}.profile-detail-grid{flex-shrink:0;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px;margin-bottom:16px;display:grid}.profile-record-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.profile-record-group{text-align:center;background:#08090747;border:1px solid #bf7d2f1f;padding:12px 10px}.profile-record-group>span{color:#f4ebd985;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:.62rem;display:block}.profile-record-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.profile-record-row strong{color:#e0a14d;margin-bottom:4px;font-size:1.25rem;font-weight:400;line-height:1;display:block}.profile-record-row small{color:#f4ebd980;overflow-wrap:anywhere;font-size:.6rem;display:block}.profile-record-row .is-marked strong{font-weight:700}.profile-record-row .is-marked small{color:#f4ebd9d9;font-weight:700}.profile-social-summary{flex-direction:column;gap:14px;display:flex}.profile-social-summary .profile-section-heading{margin-bottom:0}.profile-social-summary-section{border-top:1px solid #bf7d2f24;padding-top:12px}.profile-social-summary-heading{color:#f4ebd9b3;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.7rem;font-weight:400;display:flex}.profile-social-summary-heading strong{color:#e0a14d;font-size:.9rem}.profile-mini-list{gap:6px;display:grid}.profile-mini-player{color:#f4ebd9;background:#08090738;border:1px solid #bf7d2f1a;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;text-decoration:none;display:flex}.profile-mini-player:hover{border-color:#bf7d2f4d}.profile-mini-player span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.8rem;overflow:hidden}.profile-mini-player small{color:#f4ebd96b;font-size:.62rem}.profile-mini-request{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.profile-mini-request .profile-action-group{flex-wrap:nowrap;gap:6px}.profile-scroll-list{max-height:248px;padding-right:4px;overflow-y:auto}.profile-mini-friend{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.profile-mini-friend[hidden]{display:none}.profile-mini-friend .profile-mini-player span{flex:1}.profile-list-filter,.profile-select{color:#f4ebd9;font:inherit;background:#08090785;border:1px solid #bf7d2f3d;padding:7px 10px;font-size:.78rem}.profile-list-filter{box-sizing:border-box;width:100%;margin-bottom:8px}.profile-list-filter:focus,.profile-select:focus{border-color:#bf7d2fb3;outline:none}.profile-select option{background:#14120e}.profile-collapse-toggle{cursor:pointer;margin-bottom:0}.profile-collapse-toggle h2{margin-bottom:0}.profile-collapse-toggle:focus-visible{outline-offset:4px;outline:1px solid #bf7d2fb3}[data-collapse-body][hidden]{display:none}.profile-history-body{margin-top:12px}.profile-social-body{flex-direction:column;gap:10px;display:flex}.profile-social-summary-heading.profile-collapse-toggle[aria-expanded=false]{margin-bottom:0}.profile-social-count{align-items:center;gap:10px;display:flex}.profile-social-summary-heading.profile-collapse-toggle{margin-bottom:13px;line-height:1.2}.profile-history-meta{flex-wrap:wrap;justify-content:flex-end;align-self:center;align-items:center;gap:12px;display:flex}.profile-chevron{border-bottom:2px solid #e0a14d;border-right:2px solid #e0a14d;width:8px;height:8px;transition:transform .2s;transform:rotate(-45deg)}.profile-chevron-small{border-width:0 1.5px 1.5px 0;width:6px;height:6px}.profile-collapse-toggle[aria-expanded=true]>*>.profile-chevron{transform:rotate(45deg)}.profile-history-controls{cursor:default;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.profile-collapse-toggle[aria-expanded=false] .profile-history-controls{display:none}.profile-history-controls label{color:#f4ebd985;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;font-size:.64rem;display:flex}.profile-player-search[hidden]{display:none}.profile-opponents .opponents-list{max-height:420px;overflow-y:auto}.profile-detail-grid-single{grid-template-columns:minmax(0,1fr)}.profile-main-column,.profile-side-column{flex-direction:column;gap:16px;min-width:0;display:flex}.profile-main-column .profile-opponents,.profile-side-column .profile-player-search{margin:0}@media (width>=851px) and (height>=700px){.profile-page{flex-direction:column;height:100svh;min-height:0;display:flex}.profile-content{flex:1;min-height:0;padding:clamp(16px,3vh,32px) 0 12px}.profile-heading{margin-bottom:clamp(10px,2vh,24px)}.profile-heading h1{font-size:clamp(1.8rem,5vh,3.4rem)}.profile-highlights{margin-bottom:clamp(10px,1.6vh,16px)}.profile-highlight{min-height:0;padding:clamp(8px,1.4vh,14px) 16px}.profile-highlight strong{margin:clamp(4px,.8vh,8px) 0 2px;font-size:clamp(1.3rem,3.4vh,2.3rem)}.profile-card{padding:clamp(14px,2.2vh,20px) 24px}.profile-card h2{margin-bottom:clamp(8px,1.4vh,14px)}.profile-skills-heading{margin-bottom:clamp(16px,2.2vh,22px)}.profile-record-group{padding:10px}.profile-main-column .profile-opponents,.profile-social-summary{flex-direction:column;flex:0 auto;min-height:0;display:flex;overflow:hidden}.opponent-row{padding:9px 14px}.profile-social-summary{gap:10px}.profile-social-summary-section{padding-top:10px}.profile-detail-grid{flex:1;grid-template-rows:minmax(0,1fr);min-height:0;margin-bottom:0}.profile-main-column,.profile-side-column,.profile-history-body,.profile-social-body,.profile-social-summary-section,.profile-social-section-body{min-height:0}.profile-history-body,.profile-social-body,.profile-social-summary-section,.profile-social-section-body{flex-direction:column;flex:0 auto;display:flex}.profile-main-column .opponents-list,.profile-scroll-list{flex:0 auto;min-height:0;max-height:none;overflow-y:auto}.profile-side-column .profile-search-results{max-height:160px;overflow-y:auto}.profile-footer{padding-bottom:12px}}@media (width<=850px){.profile-detail-grid{grid-template-columns:1fr}}@media (width<=560px){.profile-heading-actions{justify-content:flex-start;width:100%}.profile-title-row{flex-direction:column;align-items:flex-start;gap:8px}.profile-record-grid{grid-template-columns:1fr}}.visualizer-page .install-hint{bottom:max(12px, env(safe-area-inset-bottom));z-index:5;color:#f4ebd9f2;background:#080907d9;border:1px solid #bf7d2f66;border-radius:4px;align-items:center;gap:10px;max-width:calc(100% - 32px);padding:8px 12px;font-size:.8rem;display:flex;position:absolute;left:50%;transform:translate(-50%)}.visualizer-page .install-hint button{color:inherit;background:0 0;border:0;padding:0 6px;font-size:1.2rem}.visualizer-page .rotate-cover{z-index:100;color:#f4ebd9f2;text-align:center;background:#080907;place-items:center;padding:24px;font-size:1.1rem;display:none;position:fixed;inset:0}@media (orientation:portrait){.visualizer-page .rotate-cover{display:grid}}.home-toast{z-index:1000;color:#eee2cc;text-align:center;background:#080907f0;border:1px solid #bf7d2f8c;max-width:calc(100% - 32px);padding:22px 42px;font-size:1.2rem;animation:.18s both home-fade-in;position:fixed;top:50%;left:50%;transform:translate(-50%,calc(100px - 50%));box-shadow:0 25px 70px #00000080}.home-modal-primary:hover,.home-play-button:hover,.create-room-button:hover,.create-room-submit:hover:not(:disabled),.room-action-button:hover:not(:disabled),.room-start-button:hover:not(:disabled),.profile-action:hover:not(:disabled),.secondary-action:hover{color:var(--button-gold-text);border-color:var(--button-gold)}.home-modal-primary,.create-room-submit,.room-start-button,.profile-action,.secondary-action,.room-action-button,.create-room-button{transition:border-color .18s,color .18s,background .18s,box-shadow .18s}.visualizer-page .visualizer-nav,.visualizer-page .hud-status,.visualizer-page .hud-toolbar,.visualizer-page .hud-opponents,.visualizer-page .visualizer-self,.visualizer-page .visualizer-emotes,.visualizer-page .prediction-modal,.visualizer-page .hud-results,.visualizer-page .hud-game-winner{zoom:var(--hud-scale)}.visualizer-page .guest-signup{z-index:20;color:#eee2cc;background:var(--ui-bg-solid);border:var(--ui-edge-strong);width:min(420px,100% - 32px);box-shadow:var(--ui-shadow);text-align:center;justify-items:center;gap:10px;padding:16px 20px;animation:.24s both home-fade-in;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.guest-signup-question{white-space:pre-line;margin:0;font-size:1.05rem;line-height:1.4}.guest-signup-invitation{color:var(--button-gold-text);margin:0 0 6px;font-size:1.2rem;font-weight:400}.guest-signup-button{letter-spacing:.12em;text-transform:uppercase;padding:12px 28px}.visualizer-page .guest-signup-dismiss{color:#eee2cc99;background:0 0;border:0;padding:4px 8px;font-size:.8rem}.system-button{z-index:2147483647;color:#f4ebd9e6;background:var(--ui-bg-solid);border:var(--ui-edge);border-radius:4px;place-items:center;width:36px;height:36px;padding:0;display:grid;position:fixed;top:10px;right:10px}.system-button[hidden]{display:none}.system-button.is-second{right:52px}.system-button svg{pointer-events:none;width:20px;height:20px}.system-hint{z-index:2147483647;color:#f4ebd9f2;background:var(--ui-bg-solid);border:var(--ui-edge-strong);border-radius:4px;max-width:min(260px,100% - 20px);padding:12px 14px;font-size:.85rem;line-height:1.4;position:fixed;top:54px;right:10px}body.has-system-button .home-topbar{padding-right:calc(clamp(24px,4.5vw,76px) + 44px)}body.has-system-button .lobby-header{padding-right:calc(clamp(24px,5vw,80px) + 44px)}body.has-two-system-buttons .home-topbar{padding-right:calc(clamp(24px,4.5vw,76px) + 86px)}body.has-two-system-buttons .lobby-header{padding-right:calc(clamp(24px,5vw,80px) + 86px)}.home-menu-toggle{display:none}@media (width<=720px){.home-topbar{justify-content:flex-start;gap:6px}.home-brand{transform:none}.home-menu-toggle{cursor:pointer;background:#0a0a0870;border:1px solid #d69a4094;border-radius:4px;align-content:center;justify-items:center;gap:4px;width:40px;height:40px;padding:0;display:grid}.home-menu-toggle span{background:#d9c9ac;border-radius:1px;width:18px;height:2px;transition:transform .18s,opacity .18s;display:block}.home-topbar.is-menu-open .home-menu-toggle span:first-child{transform:translateY(6px)rotate(45deg)}.home-topbar.is-menu-open .home-menu-toggle span:nth-child(2){opacity:0}.home-topbar.is-menu-open .home-menu-toggle span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.home-top-nav{z-index:20;background:var(--ui-bg-solid);border:var(--ui-edge-strong);min-width:180px;box-shadow:var(--ui-shadow);border-radius:4px;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:6px;display:none;position:absolute;top:100%;left:18px;transform:none}.home-topbar.is-menu-open .home-top-nav{display:flex}.home-top-nav button{letter-spacing:.18em;text-align:left;padding:13px 12px;font-size:12px}.home-top-nav span{display:none}}.admin-content{z-index:1;color:#eee0c7;width:min(1180px,100% - 32px);margin:0 auto;padding:40px 0 80px;position:relative}.admin-content h1{margin:0 0 8px;font-family:Georgia,Times New Roman,serif;font-weight:400}.admin-message{color:#e0a14de6;min-height:1.4em;margin:0 0 16px}.admin-panel{border:var(--ui-edge);background:var(--ui-bg-solid);margin-bottom:28px;padding:18px}.admin-panel h2{margin:0 0 4px;font-family:Georgia,Times New Roman,serif;font-size:1.2rem;font-weight:400}.admin-panel h2 span,.admin-note,.admin-table small{color:#f4ead880}.admin-note{margin:0 0 12px;font-size:.8rem}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:.82rem}.admin-table th{color:#e0a14db3;letter-spacing:.12em;text-align:left;text-transform:uppercase;border-bottom:1px solid #bf7d2f40;padding:8px 10px;font-size:.66rem}.admin-table td{white-space:nowrap;border-bottom:1px solid #bf7d2f1a;padding:8px 10px}.admin-delete{padding:5px 12px;font-size:.72rem}.admin-empty{color:#f4ead880;margin:0}.is-sabotage .power-targets{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.is-sabotage .power-targets:empty,.is-sabotage .power-actions:empty,.is-sabotage .prediction-options:empty{display:none}.is-sabotage .power-targets button,.is-sabotage .power-actions button{color:#f4ebd9e6;background:#0a0a0873;border:1px solid #bf7d2f52;border-radius:4px;padding:10px 14px;font-size:16px;font-weight:400}.is-sabotage .power-targets button:hover:not(:disabled),.is-sabotage .power-actions button:hover:not(:disabled){color:#fff;background:#bf7d2f1f;border-color:#bf7d2fa6}.is-sabotage .power-actions{justify-content:center;gap:8px;margin-top:10px;display:flex}.is-sabotage .power-actions button{color:#f4ebd99e;padding:6px 12px;font-size:13px}.is-sabotage .prediction-options button.is-current{border-style:dashed}.is-sabotage .trump-swatch{background:#0e0d0a;place-items:center;display:grid}.is-sabotage .trump-swatch img{width:70%;height:auto}.is-sabotage .hud-stat-value{display:inline-block}.is-sabotage .hud-stat-value.is-flashing{animation:1s ease-out stat-swell,1s linear stat-flash}@keyframes stat-swell{0%{transform:scale(1)}12%{transform:scale(1.6)}85%{transform:scale(1.6)}to{transform:scale(1)}}@keyframes stat-flash{0%,40%,80%,to{filter:none}20%,60%{filter:brightness(2.4)drop-shadow(0 0 6px #fff)}}@media (prefers-reduced-motion:reduce){.is-sabotage .hud-stat-value.is-flashing{animation:1s linear stat-flash}}.is-sabotage .hud-announcer[data-suit=red]{--border-mid:#e92223;--border-glow:#e9222359}.is-sabotage .hud-announcer[data-suit=green]{--border-dark:#1c4a20;--border-mid:#4ca450;--border-glow:#4ca45059}.is-sabotage .hud-announcer[data-suit=blue]{--border-dark:#0a3f73;--border-mid:#018bf6;--border-glow:#018bf659}.is-sabotage .hud-announcer[data-suit=yellow]{--border-dark:#6e6448;--border-mid:#e2c98a;--border-glint:#fffaf0;--border-glow:#f3e6c459}@font-face{font-family:Cinzel Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/cinzel-latin-ext-wght-normal-CG36JvV6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/cinzel-latin-wght-normal-DMUuCU8H.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
