@import"https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:wght@600;700&family=Inter:wght@400;500;700;800&display=swap";:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:var(--text-primary);background-color:var(--background-dark);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-display: "Bricolage Grotesque", "Inter", system-ui, sans-serif;--background-dark: #100f18;--background-card: #1b1825;--background-card-strong: #232031;--background-input: #211e2d;--surface-warm: #201b29;--text-primary: #f8f0e2;--text-secondary: #aaa1b8;--text-placeholder: #756d80;--accent-primary: #ef6478;--accent-secondary: #f2c763;--accent-tertiary: #43cfb1;--accent-blue: #7b85e8;--accent-danger: #ef5d5d;--card-tier1-bg: #159a8c;--card-tier1-banner: #ffd166;--card-tier2-bg: #3ea35b;--card-tier2-banner: #fff0a3;--card-tier3-bg: #f29e38;--card-tier3-banner: #7a3bd1;--card-tier4-bg: #c94178;--card-tier4-banner: #3ed8b6;--button-primary-bg: var(--accent-primary);--button-primary-text: #211721;--button-secondary-bg: #3a334b;--button-secondary-text: var(--text-primary);--button-success-bg: #3ed8b6;--button-success-text: #10221f;--button-danger-bg: var(--accent-danger);--button-danger-text: #2a1010;--border-color: rgba(248, 240, 226, .12);--border-strong: rgba(248, 240, 226, .22);--shadow-card: 0 18px 48px rgba(0, 0, 0, .24);--shadow-pop: 0 12px 26px rgba(0, 0, 0, .22);--border-radius-small: 4px;--border-radius-medium: 8px}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--background-dark);color:var(--text-primary)}#root{margin:0 auto;text-align:center;width:100%}h1,h2,h3,h4,h5,h6{color:var(--text-primary)}h1,h2,h3{font-family:var(--font-display)}button{border-radius:var(--border-radius-medium);border:1px solid rgba(248,240,226,.12);padding:.68em 1.2em;font-size:1em;font-weight:800;font-family:inherit;background-color:var(--button-primary-bg);color:var(--button-primary-text);cursor:pointer;box-shadow:none;transition:transform .16s ease,box-shadow .16s ease,border-color .2s ease,background-color .2s ease}button:hover{border-color:#f8f0e247;background-color:#f7798b;transform:translateY(-1px);box-shadow:0 10px 24px #0000002e}button:active{transform:translateY(0);box-shadow:none}button:focus,button:focus-visible{outline:3px solid rgba(62,216,182,.55);outline-offset:2px}input[type=text],input[type=number],input[type=password],select,textarea{padding:.6em .8em;border-radius:var(--border-radius-small);border:1px solid var(--border-color);background-color:var(--background-input);color:var(--text-primary);font-family:inherit;margin:.25em;box-shadow:none}input[type=text]:focus,input[type=number]:focus,input[type=password]:focus,select:focus,textarea:focus{border-color:var(--accent-tertiary);outline:2px solid rgba(62,216,182,.25)}textarea{resize:vertical;min-height:96px}input::placeholder{color:var(--text-placeholder)}label{margin-right:.5em;color:var(--text-secondary)}.app-container{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:clamp(1rem,2.5vw,1.75rem);background-color:var(--background-dark);background-image:linear-gradient(180deg,rgba(248,240,226,.04),transparent 18rem),linear-gradient(115deg,rgba(67,207,177,.025),transparent 34rem);color:var(--text-primary);min-height:100vh;width:100%;box-sizing:border-box}.setup-app-container{justify-content:flex-start;gap:1.2rem}.admin-entry-button{position:fixed;top:1rem;right:1rem;z-index:20;background-color:var(--background-card-strong);color:var(--text-primary)}.toggle-debug-button{position:absolute;top:0;right:0}.setup-screen{width:min(100%,1180px);display:grid;gap:1.15rem}.setup-header{text-align:center;padding:0 5.5rem}.setup-header h1{margin:0;color:var(--text-primary);font-size:clamp(2.4rem,5vw,4rem);line-height:1.05;text-shadow:none}.setup-header p{margin:.25rem 0 0;color:var(--text-secondary)}.setup-grid{display:grid;grid-template-columns:minmax(340px,.95fr) minmax(380px,1.05fr);gap:clamp(1rem,2vw,1.35rem);align-items:stretch;padding:clamp(1rem,2vw,1.45rem);border:1px solid var(--border-color);border-radius:var(--border-radius-medium);background-color:#1b182594;box-sizing:border-box}.game-setup{background-color:#100f1842;padding:clamp(1rem,2vw,1.35rem);border-radius:var(--border-radius-medium);box-shadow:none;display:flex;flex-direction:column;gap:1.15rem;width:100%;border:1px solid var(--border-color);box-sizing:border-box;position:relative;overflow:hidden}.game-setup:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-top:1px solid rgba(67,207,177,.42);pointer-events:none}.game-setup h2{color:var(--accent-secondary);margin:0}.setup-card-header{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding-bottom:.85rem;border-bottom:1px solid var(--border-color)}.setup-card-header p{margin:.2rem 0 0;color:var(--text-secondary)}.setup-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;min-width:0}.game-setup .form-row{display:grid;grid-template-columns:1fr;align-items:stretch;gap:.7rem;width:100%;min-width:0;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius-small);background-color:#f8f0e208;box-sizing:border-box}.game-setup .form-row label{text-align:left;margin:0;font-size:.82rem;font-weight:800;text-transform:uppercase}.setup-slider-label{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.setup-slider-label strong{color:var(--text-primary);font-family:var(--font-display);font-size:1.1rem}.game-setup .form-row input[type=range]{width:100%;margin:0;accent-color:var(--accent-tertiary)}.game-setup .player-names-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.85rem;margin:0}.game-setup .player-name-input-group{display:flex;flex-direction:column;gap:.3rem;min-width:0}.game-setup .player-name-input-group label{text-align:left;margin:0;font-size:.82rem;font-weight:800;color:var(--accent-secondary)}.game-setup .player-name-input-group input[type=text]{width:100%;margin:0}.game-setup label{font-weight:500;color:var(--text-secondary)}.game-setup input[type=range],.game-setup input[type=text]{box-sizing:border-box}.game-setup .start-game-button{white-space:nowrap;background-color:var(--accent-tertiary);color:#10221f;min-width:132px}.player-display{width:100%;max-width:700px;background-color:var(--background-card);padding:1rem 1.5rem;border-radius:var(--border-radius-medium);border:1px solid var(--border-color);box-shadow:var(--shadow-card)}.player-display h3{margin-top:0;color:var(--accent-secondary);border-bottom:1px solid var(--border-color);padding-bottom:.5rem;margin-bottom:1rem}.player-display ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.player-display li{background-color:var(--background-input);padding:.75rem 1rem;border-radius:var(--border-radius-small);border:1px solid transparent;min-width:120px;text-align:center}.player-display li.active-player{font-weight:700;border-color:var(--accent-primary);box-shadow:0 0 8px var(--accent-primary);color:var(--text-primary)}.debug-info-container{margin-top:0;padding:0;background-color:transparent;border-radius:0;width:100%;max-width:none;font-size:.85em;color:var(--text-secondary);border:0}.debug-info-container p{margin:.3em 0;word-break:normal}.admin-debug-panel{text-align:left}.admin-debug-login{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.admin-debug-login input{min-width:220px}.admin-debug-header,.admin-debug-actions,.admin-debug-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.admin-debug-header h2,.admin-debug-section h3{margin:0 0 .35rem}.admin-debug-actions{margin:1rem 0}.admin-debug-danger{background-color:var(--button-danger-bg);color:var(--button-danger-text)}.admin-debug-summary{padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius-small);background-color:#ffd16614}.admin-debug-section{margin-top:1rem}.admin-debug-queue{display:flex;flex-direction:column;gap:.75rem;max-height:520px;overflow-y:auto;padding-right:.25rem}.admin-bank-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.admin-bank-header h3{margin:0}.admin-bank-list{display:grid;gap:.75rem;max-height:58vh;overflow-y:auto;padding-right:.25rem}.admin-bank-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius-small);background-color:#f8f0e209;box-shadow:none}.admin-bank-row.blocked{opacity:.72}.admin-bank-question p{margin:.35rem 0;color:var(--text-primary)}.admin-bank-question small,.admin-debug-status{color:var(--text-secondary)}.admin-bank-actions{display:flex;gap:.5rem;align-items:start}.admin-debug-queue-row{display:grid;grid-template-columns:48px minmax(220px,1fr) 210px 120px;gap:.75rem;align-items:stretch;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius-small);background-color:#f8f0e209;box-shadow:none}.admin-debug-queue-rank{display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--accent-secondary)}.admin-debug-queue-card p{margin:.35rem 0 0;color:var(--text-primary)}.admin-debug-queue-meta{display:flex;gap:.4rem;flex-wrap:wrap}.admin-debug-queue-meta span{padding:.1rem .35rem;border-radius:var(--border-radius-small);background-color:#3ed8b61f;color:var(--text-secondary);font-size:.8em}.admin-debug-queue-player{display:flex;flex-direction:column;gap:.35rem}.admin-debug-queue-player label{margin:0;font-size:.8em}.admin-debug-queue-player select{width:100%;padding:.5em .65em;border-radius:var(--border-radius-small);border:1px solid var(--border-color);background-color:var(--background-input);color:var(--text-primary);font-family:inherit}.admin-debug-queue-controls{display:flex;flex-direction:column;gap:.4rem}.admin-debug-icon-button{min-width:3rem;min-height:2.75rem;padding:.35em;font-size:1.25rem;line-height:1}.admin-debug-secondary{background-color:var(--button-secondary-bg);color:var(--button-secondary-text);border-color:#fff8ec38}.admin-debug-secondary:hover:not(:disabled){background-color:#574760;color:var(--button-secondary-text)}.game-log-container{max-height:260px;overflow-y:auto;border:1px solid var(--border-color);border-radius:var(--border-radius-small);padding:.5rem;background-color:#0000001a}.game-log-container p{margin:0;padding:.35rem 0;border-bottom:1px dashed var(--border-color);color:var(--text-secondary)}.game-log-container p:last-child{border-bottom:0}@media (max-width: 900px){.admin-debug-queue-row{grid-template-columns:42px 1fr}.admin-debug-queue-player,.admin-debug-queue-controls{grid-column:2}.admin-debug-queue-controls{flex-direction:row}}.game-header{width:min(100%,1280px);display:flex;justify-content:center;align-items:flex-start;gap:1rem;margin-bottom:0;position:relative}.game-screen-layout{width:min(100%,1280px);display:grid;grid-template-columns:1fr;gap:.85rem;align-items:start;padding:clamp(1rem,2vw,1.5rem);border:1px solid var(--border-color);border-radius:var(--border-radius-medium);background-color:#1b182594;box-sizing:border-box}.game-score-column,.game-main-column{min-width:0}.game-main-column{display:flex;flex-direction:column;align-items:stretch}.challenge-stage{min-height:0;padding:0;border:0;border-radius:0;background-color:transparent;box-sizing:border-box;display:flex;flex-direction:column;align-items:center}.challenge-stage-header{display:flex;align-items:center;justify-content:center;gap:.55rem;width:auto;max-width:min(100%,560px);padding-bottom:.65rem;color:var(--text-secondary);font-size:.88rem}.challenge-stage-header span{text-transform:uppercase;font-weight:800;color:var(--accent-secondary)}.challenge-stage-header strong{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-primary);font-size:.95rem}.challenge-stage-header strong span{color:var(--text-secondary);font-size:.82rem;font-weight:800;text-transform:uppercase}.challenge-stage-divider{color:#f8f0e252}.game-side-column{min-width:0;width:100%}.game-side-column .host-room-panel{max-width:none;display:grid;grid-template-columns:minmax(150px,.8fr) minmax(280px,1.2fr) minmax(260px,1fr);gap:1rem;align-items:center}.game-side-column .host-room-header{align-items:center;height:100%;padding-right:1rem;border-right:1px solid var(--border-color)}.game-side-column .host-room-header button{padding:.54em .8em}.game-side-column .host-room-content{grid-template-columns:96px minmax(0,1fr);gap:.75rem;margin-top:0;padding-right:1rem;border-right:1px solid var(--border-color)}.game-side-column .host-room-qr img,.game-side-column .host-room-qr-placeholder{width:96px;height:96px;border-width:3px}.game-side-column .host-room-join-url{margin-top:0}.game-side-column .host-room-steals{position:fixed;right:1rem;top:4rem;z-index:18;width:min(400px,calc(100vw - 2rem));max-height:min(46vh,360px);margin-top:0;padding:.75rem;border:1px solid rgba(67,207,177,.28);border-radius:var(--border-radius-small);background-color:#100f18eb;box-shadow:0 16px 40px #00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow-y:auto}.game-side-column .host-room-steal-row{padding:.5rem;gap:.5rem}.game-side-column .host-room-steal-row select{min-width:110px;padding:.45em .55em}.game-side-column .host-room-steal-actions{gap:.35rem}.game-side-column .host-room-steal-actions button{padding:.4em .6em}.game-side-column .host-room-join-url a{font-size:.95rem}@media (max-width: 900px){.setup-grid{grid-template-columns:1fr}.game-screen-layout{grid-template-columns:1fr;padding:0;border:0;background-color:transparent}.game-main-column{order:1}.game-score-column{order:2}.game-side-column{order:3}.challenge-stage{padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius-medium);background-color:#1b182585}.game-side-column .host-room-panel{display:block}.game-side-column .host-room-header,.game-side-column .host-room-content,.game-side-column .host-room-steals{padding-right:0;padding-left:0;border-right:0;border-left:0}.game-side-column .host-room-steals{position:static;width:auto;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);border-radius:0;background-color:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;max-height:none;overflow-y:visible}}.app-container .title-container{display:flex;flex-direction:column;align-items:center;gap:.45rem}.app-container .title-container h1{font-size:clamp(2.1rem,4vw,3rem);color:var(--text-primary);margin:0;line-height:1.1;text-shadow:none}.game-header-meta{display:flex;flex-wrap:wrap;gap:.45rem}.game-header-meta span{padding:.26rem .55rem;border:1px solid var(--border-color);border-radius:var(--border-radius-small);background-color:#f8f0e209;color:var(--text-secondary);font-size:.82rem;font-weight:700}.game-over-container h1{color:var(--accent-danger)}.flippable-card-container{width:min(100%,450px);height:290px;perspective:1000px;margin:.35rem auto .4rem}.card{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.25,.46,.45,.94),box-shadow .3s ease-in-out;border-radius:var(--border-radius-medium);box-shadow:0 18px 44px #0003}.card:hover{transform:translateY(-1px);box-shadow:0 22px 50px #0000003d}.card.is-flipped{transform:rotateY(180deg)}.card-face{position:absolute;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid rgba(248,240,226,.16);border-radius:var(--border-radius-medium);box-sizing:border-box;padding:1.6rem;text-align:center;transform:translateZ(0);overflow:hidden}.card-face:before{content:"";position:absolute;top:.75rem;right:.75rem;bottom:.75rem;left:.75rem;border:1px solid rgba(248,240,226,.08);border-radius:var(--border-radius-small);pointer-events:none}.card-face:after{display:none}.card-face>*{position:relative;z-index:1}.card-face-back{color:var(--text-primary);justify-content:space-between;background-color:#1b1825fa!important;background-image:none}.card-face-back .card-banner{position:absolute;top:10px;left:10px;width:auto;max-width:calc(50% - 10px);padding:.2em .4em .2em .6em;font-size:1.7em;font-weight:700;color:var(--text-primary);clip-path:polygon(0 0,100% 0,85% 100%,0% 100%);min-width:40px;text-align:center;line-height:1.2}.card-face-back .card-points-text{display:block}.card-face-back .card-tier-polygon-icon{width:80px;height:80px;margin:auto}.card-face-back .card-tier-polygon-icon.circle{background-color:#ffffff4d;border-radius:50%}.card-face-back .card-tier-polygon-icon.square{background-color:#ffffff4d}.card-face-back .card-tier-polygon-icon.triangle{width:0;height:0;border-left:40px solid transparent;border-right:40px solid transparent;border-bottom:69px solid rgba(255,255,255,.3);background-color:transparent!important}.card-face-back .card-tier-polygon-icon.pentagon{background-color:#ffffff4d;clip-path:polygon(50% 0%,100% 38%,82% 100%,18% 100%,0% 38%)}.card-face-front{color:var(--text-primary);justify-content:flex-start;align-items:flex-start;transform:rotateY(180deg);padding:1.25rem;background-color:#1b1825fa!important;background-image:none}.simple-card-content{position:relative;z-index:1;display:grid;gap:1rem;place-items:center;width:100%;height:100%}.simple-points{margin:0;padding:.25rem .72rem;border:1px solid rgba(242,199,99,.75);border-radius:var(--border-radius-small);background-color:#f2c76314;color:var(--accent-secondary);font-family:var(--font-display);font-size:1.85rem;font-weight:700}.simple-title-text{margin:0;color:var(--accent-secondary);font-family:var(--font-display);font-size:.92rem;font-weight:700;letter-spacing:0}.simple-prompt-text{margin:0;color:var(--text-primary);font-size:clamp(1.35rem,2vw,1.75rem);font-weight:700;line-height:1.28;text-align:left;overflow-wrap:anywhere}.simple-prompt-text.prompt-long{font-size:clamp(1.12rem,1.65vw,1.38rem);line-height:1.24}.simple-prompt-text.prompt-extra-long{font-size:clamp(.95rem,1.35vw,1.12rem);line-height:1.2}.card-face-front .simple-card-content{grid-template-rows:auto minmax(0,1fr);place-items:center;align-content:stretch;height:100%;min-height:0;text-align:left}.card-face-front .simple-points{justify-self:center}.card-face-front .simple-prompt-text{align-self:center;justify-self:stretch;min-height:0;max-height:100%;max-width:88%;margin:0 auto;overflow-y:auto}.card-face-front .card-title-container{position:relative;align-self:flex-start;margin-bottom:.75em}.card-face-front .card-title-corner-text{font-size:1em;font-weight:700;text-transform:uppercase;position:relative;z-index:2;padding:.1em .3em;color:var(--text-primary)}.card-face-front .polygon-underlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;opacity:.2;z-index:1}.card-face-front .polygon-underlay.circle{background-color:#333;border-radius:50%}.card-face-front .polygon-underlay.square{background-color:#333}.card-face-front .polygon-underlay.triangle{width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-bottom:31px solid #333;background-color:transparent!important}.card-face-front .polygon-underlay.pentagon{background-color:#333;clip-path:polygon(50% 0%,100% 38%,82% 100%,18% 100%,0% 38%)}.card-face-front .card-prompt-text-revealed{font-size:1em;font-weight:400;text-align:left;padding:.5em;color:var(--text-primary);width:100%;max-height:calc(100% - 5em);overflow-y:auto;box-sizing:border-box}.challenge-card-interaction-area{display:flex;flex-direction:column;align-items:center;gap:.75rem;width:100%;min-height:0}.card-instruction{font-size:.9em;color:var(--text-secondary);margin-top:0;margin-bottom:.25rem;min-height:1.2em;line-height:1.25em;display:flex;align-items:center;justify-content:center;text-align:center;max-width:min(100%,420px);overflow:hidden}.external-buttons-group{display:flex;gap:.65rem;margin-top:.25rem;width:100%;max-width:min(100%,560px);justify-content:center;flex-wrap:wrap;align-items:stretch}.external-buttons-group button{flex:1 1 150px;min-width:min(100%,130px);min-height:2.75rem;padding:.75em .95em;display:inline-flex;align-items:center;justify-content:center;gap:.4em;line-height:1.15;text-align:center;white-space:normal;overflow-wrap:anywhere}.external-buttons-group.single-button button{max-width:220px;flex:0 1 220px}.external-buttons-group .fail-button{flex-grow:1.35}.external-buttons-group .pass-button.skip-turn-button:disabled{background-color:#fff8ec1f;color:var(--text-placeholder);cursor:not-allowed;border-color:var(--border-color)}.external-buttons-group .pass-button{background-color:var(--button-secondary-bg);color:var(--button-secondary-text)}.external-buttons-group .pass-button:hover:not(:disabled){background-color:#574760;color:var(--button-secondary-text)}.external-buttons-group .reroll-button{background-color:var(--button-secondary-bg);color:var(--button-secondary-text);border:1px solid var(--border-color);flex-grow:.9}.external-buttons-group .reroll-button:hover:not(:disabled){background-color:#574760;color:var(--button-secondary-text)}.external-buttons-group .accept-button,.external-buttons-group .success-button{background-color:var(--button-success-bg);color:var(--button-success-text);border:1px solid var(--button-success-bg)}.external-buttons-group .accept-button:hover:not(:disabled),.external-buttons-group .success-button:hover:not(:disabled){background-color:#50e5c6;border-color:var(--accent-secondary)}.external-buttons-group .refuse-button,.external-buttons-group .fail-button{background-color:var(--button-danger-bg);color:var(--button-danger-text);border:1px solid var(--button-danger-bg)}.external-buttons-group .refuse-button:hover:not(:disabled),.external-buttons-group .fail-button:hover:not(:disabled){background-color:#ff7474;border-color:var(--accent-secondary)}.external-buttons-group .drink-button{background-color:var(--accent-primary);color:var(--button-primary-text);border:1px solid var(--accent-primary)}.external-buttons-group .drink-button:hover:not(:disabled){background-color:#ff809a;border-color:var(--accent-secondary)}.external-buttons-group button:disabled{background-color:#fff8ec1f;color:var(--text-placeholder);cursor:not-allowed;border-color:var(--border-color)}.event-card-view{background-color:var(--surface-warm);padding:1.5rem;border-radius:var(--border-radius-medium);border:2px dashed var(--accent-secondary);color:var(--text-primary);width:100%;max-width:450px;margin:1rem auto;box-shadow:var(--shadow-card);text-align:center}.event-card-view h3{color:var(--accent-secondary);margin-top:0;margin-bottom:1rem;font-size:1.5em}.event-card-view .event-text{font-size:1.1em;line-height:1.6;margin-bottom:1.5rem}.event-card-view .buttons-group{display:flex;justify-content:center}.host-room-panel{width:100%;max-width:520px;padding:1rem;border:1px solid var(--border-color);border-radius:var(--border-radius-medium);background-color:#1b1825e0;box-shadow:none;box-sizing:border-box}.host-room-panel-lobby{max-width:none;min-height:100%;display:flex;flex-direction:column;background-color:#100f1842}.host-room-panel-lobby .host-room-header{align-items:center;padding-bottom:.85rem;border-bottom:1px solid var(--border-color)}.host-room-panel-lobby .host-room-content{grid-template-columns:minmax(190px,220px) minmax(0,1fr);gap:1.25rem;margin-top:1.25rem}.host-room-panel-lobby .host-room-qr{display:flex;justify-content:center}.host-room-panel-lobby .host-room-qr img,.host-room-panel-lobby .host-room-qr-placeholder{width:min(100%,220px);height:auto;aspect-ratio:1;border-width:5px}.host-room-panel-lobby .host-room-details{align-self:stretch;justify-content:center}.host-room-panel-lobby .host-room-join-url{margin-top:1.25rem}.host-room-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.host-room-header h2{font-size:1.2rem}.host-room-header h2,.host-room-header p{margin:0}.host-room-header p,.host-room-details p,.host-room-join-url span{color:var(--text-secondary)}.host-room-content{display:grid;grid-template-columns:180px minmax(0,1fr);gap:1rem;align-items:center;margin-top:1rem}.host-room-qr img,.host-room-qr-placeholder{width:180px;height:180px;border-radius:var(--border-radius-small);border:4px solid var(--text-primary);box-shadow:none}.host-room-qr-placeholder{display:grid;place-items:center;background-color:var(--background-input);color:var(--text-secondary);font-weight:700}.host-room-details{display:flex;flex-direction:column;gap:.5rem;min-width:0}.host-room-join-url{display:grid;gap:.35rem;margin-top:1rem;padding:.7rem;border:1px solid var(--border-color);border-radius:var(--border-radius-small);background-color:#f8f0e209;text-align:left}.host-room-join-url span{font-size:.82rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.host-room-join-url a{color:var(--text-primary);font-weight:800;text-decoration:none;overflow-wrap:anywhere;word-break:break-word;line-height:1.35}.host-room-join-url a:hover{color:var(--accent-secondary);text-decoration:underline}.host-room-players{display:flex;flex-wrap:wrap;gap:.4rem}.host-room-players>span{padding:.2rem .45rem;border-radius:var(--border-radius-small);background-color:#3ed8b624;border:1px solid rgba(62,216,182,.26)}.host-room-player-chip{display:inline-flex;align-items:center;gap:.35rem}.host-room-player-chip strong{font-size:.92em}.host-room-player-chip em{color:var(--text-secondary);font-size:.78em;font-style:normal;font-weight:800;text-transform:uppercase}.host-room-player-chip.not-in-game{background-color:#fff8ec0f;border-color:var(--border-color)}.host-room-error{color:var(--accent-danger)}.host-room-steals{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.host-room-steals-header,.host-room-steal-row,.host-room-steal-actions{display:flex;align-items:center;gap:.75rem}.host-room-steals-header{justify-content:space-between;margin-bottom:.75rem}.host-room-steals-header h3,.host-room-steals-header span,.host-room-steals p{margin:0}.host-room-steals-header span,.host-room-steal-row span{color:var(--text-secondary)}.host-room-steal-row .host-room-steal-warning{color:var(--accent-danger);font-weight:800}.host-room-steal-row{justify-content:space-between;flex-wrap:wrap;padding:.65rem;border-radius:var(--border-radius-small);background-color:#fff8ec0f;border:1px solid var(--border-color)}.host-room-steal-row>div:first-child{display:grid;gap:.2rem}.host-room-steal-row select{min-width:140px}.host-room-steal-actions{flex-wrap:wrap}.host-room-steal-actions button{padding:.45em .75em}.host-room-steal-actions button:disabled{background-color:#fff8ec1a;color:var(--text-placeholder);border-color:var(--border-color);cursor:not-allowed;box-shadow:none}.mobile-room-page{min-height:100vh;width:min(100%,520px);margin:0 auto;padding:1rem;box-sizing:border-box;text-align:left;color:var(--text-primary)}.mobile-room-header{display:grid;gap:.25rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.mobile-room-header p,.mobile-room-header h1{margin:0}.mobile-room-header h1{color:var(--accent-secondary);font-family:var(--font-display)}.mobile-room-header p,.mobile-room-header span{color:var(--text-secondary)}.mobile-room-join,.mobile-room-card{padding:1rem;border:1px solid var(--border-color);border-radius:var(--border-radius-medium);background-color:#27212ff0;margin-bottom:1rem;box-shadow:0 7px #0000002e}.mobile-room-join{display:grid;gap:.75rem}.mobile-room-join input{width:100%;margin:0;box-sizing:border-box}.mobile-room-card h2,.mobile-room-card p{margin-top:0}.mobile-room-round,.mobile-room-now{display:flex;justify-content:space-between;gap:1rem;padding:.25rem 0}.mobile-room-round span,.mobile-room-now span{color:var(--text-secondary)}.mobile-room-phase{margin-top:.75rem;padding:.45rem .6rem;border-radius:var(--border-radius-small);background-color:#ffd1661f;border:1px solid rgba(255,209,102,.24);color:var(--accent-secondary);font-weight:700;text-align:center}.mobile-room-challenge-meta,.mobile-room-score-list{display:grid;gap:.5rem}.mobile-room-challenge-meta{grid-template-columns:repeat(3,1fr);margin-bottom:.75rem}.mobile-room-challenge-meta span{padding:.35rem;border-radius:var(--border-radius-small);background-color:#3ed8b61f;border:1px solid rgba(62,216,182,.2);text-align:center;color:var(--text-secondary)}.mobile-room-player{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem .75rem;align-items:center;padding:.65rem;border-radius:var(--border-radius-small);background-color:#fff8ec0d}.mobile-room-player.current{outline:2px solid var(--accent-secondary);background-color:#ffd16617}.mobile-room-player em{grid-column:1 / -1;color:var(--text-secondary);font-style:normal;font-size:.9em}.mobile-room-error{color:var(--accent-danger)}.mobile-room-note{margin-top:0;padding:.7rem;border:1px solid rgba(255,209,102,.24);border-radius:var(--border-radius-small);background-color:#ffd16614;color:var(--text-secondary);line-height:1.4}.mobile-room-submit-status{color:var(--text-secondary)}.mobile-room-submit{display:grid;gap:.75rem}.mobile-room-submit textarea{width:100%;box-sizing:border-box;margin:0}.mobile-room-steal{display:grid;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.mobile-room-steal p{margin:0;color:var(--text-secondary)}.mobile-room-steal small{color:var(--text-secondary);line-height:1.35}.mobile-room-footer{color:var(--text-secondary);font-size:.9em;padding-bottom:1rem}@media (max-width: 640px){.app-container{padding:.75rem}.game-header,.game-screen-layout{width:100%}.game-header{align-items:flex-start;justify-content:space-between}.app-container .title-container{align-items:flex-start}.toggle-debug-button{position:static}.game-header-meta span{font-size:.76rem}.game-screen-layout{grid-template-columns:1fr}.challenge-stage{padding:.75rem}.challenge-stage-header{align-items:flex-start;flex-direction:column;gap:.25rem}.challenge-stage-divider{display:none}.flippable-card-container{width:min(100%,320px);height:390px}.game-side-column .host-room-content{grid-template-columns:1fr}.game-side-column .host-room-qr img,.game-side-column .host-room-qr-placeholder{width:180px;height:180px}.admin-entry-button{position:static;align-self:flex-end}.setup-header{padding:0;text-align:left}.setup-grid,.setup-controls{grid-template-columns:1fr}.setup-card-header,.host-room-header,.admin-debug-header,.admin-bank-row,.admin-bank-actions{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.setup-card-header .start-game-button{width:100%}.host-room-content,.host-room-panel-lobby .host-room-content{grid-template-columns:1fr}.host-room-panel-lobby .host-room-details{align-items:center;text-align:center}.host-room-qr{display:flex;justify-content:center}}.player-display-panel{width:100%;max-width:none;overflow:hidden;background-color:#1b182585;padding:1rem;border-radius:var(--border-radius-medium);box-shadow:none;color:var(--text-primary);border:1px solid var(--border-color);box-sizing:border-box;font-size:1rem}.player-display-panel h3{color:var(--accent-secondary);margin-top:0;margin-bottom:.75rem;text-align:left;border-bottom:1px solid var(--border-color);padding-bottom:.7rem;font-size:1rem}.scoreboard-list{display:grid;gap:.5rem}.scoreboard-row{display:grid;gap:.5rem;padding:.7rem;border:1px solid var(--border-color);border-radius:var(--border-radius-small);background-color:#f8f0e206}.scoreboard-player,.scoreboard-metrics,.player-status-icons{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-width:0}.scoreboard-player strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scoreboard-player span,.scoreboard-metrics span,.player-status-icons span{color:var(--text-secondary);font-size:.78rem;font-weight:800}.scoreboard-metrics span:first-child{color:var(--accent-secondary);font-size:1rem}.scoreboard-empty{color:var(--text-secondary);padding:.75rem;border:1px dashed var(--border-color);border-radius:var(--border-radius-small)}@keyframes scoreUpdateAnimation{0%{transform:scale(1);color:var(--text-primary);background-color:transparent}25%{transform:scale(1.3);color:#000;background-color:var( --accent-secondary )}50%{transform:scale(1.1);color:#000;background-color:var(--accent-secondary)}to{transform:scale(1);color:var(--text-primary);background-color:transparent}}.scoreboard-metrics .score-updated{animation:scoreUpdateAnimation .6s ease-out;font-weight:700}.scoreboard-row.active-player-row{background-color:#43cfb11a;border-color:#43cfb157}.player-active-effects-inline{display:inline-block;margin-left:8px;font-size:.9em}.player-active-effects-inline span{margin-right:4px}.report-violation-button{background-color:var(--button-danger-bg);color:var(--button-danger-text);border:none;padding:2px 6px;font-size:.75em;border-radius:3px;cursor:pointer;transition:background-color .2s ease}.report-violation-button:hover{background-color:#ff7474}.active-rules-display{margin-top:.75rem;padding:.75rem;border:1px solid rgba(255,211,106,.28);border-radius:var(--border-radius-small);background-color:#ffd36a0f}.active-rules-display h4{color:var(--accent-secondary);margin:0 0 .5rem;font-size:.82rem;text-transform:uppercase;font-weight:800}.active-rules-display ul{list-style-type:none;padding-left:0;margin:0}.active-rules-display li{display:grid;gap:.25rem;background-color:#100f1857;border:1px solid rgba(255,211,106,.18);border-left:3px solid var(--accent-secondary);border-radius:var(--border-radius-small);padding:.55rem .65rem;font-size:.85rem;color:var(--text-secondary);margin-bottom:.45rem}.active-rules-display li:last-child{margin-bottom:0}.active-rules-display li strong{color:var(--text-primary);line-height:1.25}.active-rules-display li span{color:var(--text-secondary);font-size:.78rem;font-weight:800}.status-legend{margin-top:20px;padding-top:10px;border-top:1px solid var(--border-color);font-size:.8em}.status-legend h4{color:var(--accent-secondary);margin-bottom:5px}.status-legend p{margin:3px 0;color:var(--text-secondary)}.turn-order-indicator{font-size:.7em;margin-left:8px;color:var(--text-secondary);font-weight:400}.legend-toggle-button{background-color:var(--button-secondary-bg);color:var(--text-primary);border:1px solid var(--border-color);padding:.55rem .7rem;border-radius:4px;cursor:pointer;font-size:.8em;margin-bottom:10px;display:block;width:100%}.legend-toggle-button:hover{background-color:#574760}.panel-section{margin-top:15px;background-color:#f8f0e208;padding:10px;border-radius:var(--border-radius-medium);border:1px solid var(--border-color)}.status-legend p{padding:6px 8px;border-radius:4px;margin-bottom:6px;background-color:#f8f0e209;border-left:3px solid var(--accent-tertiary)}.status-legend p{display:flex;align-items:center;gap:8px;font-size:.85em;color:var(--text-secondary)}.status-legend p span:first-child{font-size:1.2em}@media (min-width: 901px){.game-score-column .player-display-panel{padding:0;overflow:visible;background-color:transparent;border:0}.game-score-column .player-display-panel h3,.game-score-column .panel-section{display:none}.game-score-column .scoreboard-list{display:flex;flex-wrap:wrap;gap:.65rem}.game-score-column .scoreboard-row{min-width:150px;flex:1 1 0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:.55rem;padding:.55rem .7rem;background-color:#f8f0e209}.game-score-column .scoreboard-row:before{content:"";width:.62rem;height:.62rem;border-radius:999px;background-color:var(--accent-tertiary)}.game-score-column .scoreboard-row:nth-child(2):before{background-color:var(--accent-secondary)}.game-score-column .scoreboard-row:nth-child(3):before{background-color:#a980ee}.game-score-column .scoreboard-row:nth-child(4):before{background-color:var(--accent-primary)}.game-score-column .scoreboard-player,.game-score-column .scoreboard-metrics{justify-content:space-between}.game-score-column .scoreboard-player{grid-column:2}.game-score-column .scoreboard-metrics{grid-column:3}.game-score-column .scoreboard-player span,.game-score-column .scoreboard-metrics span:nth-child(2),.game-score-column .player-status-icons{display:none}.game-score-column .scoreboard-metrics span:first-child{color:var(--text-primary);font-size:.85rem;font-weight:500;white-space:nowrap}.game-score-column .active-rules-display{position:fixed;top:1rem;left:1rem;z-index:18;width:min(360px,calc(42vw - 1rem));max-height:min(46vh,360px);display:block;margin-top:0;padding:.65rem .75rem;overflow-y:auto;box-shadow:0 16px 40px #00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.game-score-column .active-rules-display ul{display:grid;gap:.5rem}.game-score-column .active-rules-display li{margin-bottom:0}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0c0a10c2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:1rem;box-sizing:border-box;z-index:1000}.modal-content{background-color:#1b1825fa;padding:2rem;border-radius:var(--border-radius-medium);box-shadow:var(--shadow-pop);min-width:300px;max-width:90%;max-height:90vh;overflow-y:auto;position:relative;color:var(--text-primary);border:1px solid var(--border-strong)}.admin-modal-content{width:min(1100px,100%)}.modal-title{margin-top:0;color:var(--accent-secondary);text-align:center;margin-bottom:1rem}.modal-body{line-height:1.6}.modal-close-button{position:absolute;top:.75rem;right:.75rem;background:var(--button-secondary-bg);border:1px solid var(--border-color);font-size:1rem;color:var(--text-primary);cursor:pointer;padding:.25rem .5rem;line-height:1;box-shadow:none}.modal-close-button:hover{color:var(--text-primary);background-color:var(--accent-primary)}@media (max-width: 640px){.modal-overlay{align-items:center;padding:.5rem}.modal-content{min-width:0;width:100%;max-width:100%;max-height:calc(100vh - 1rem);padding:1rem}}.chaos-wheel-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:clamp(1rem,3vw,2rem);background-color:#0c0a10c7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow:auto}.chaos-wheel-container{width:min(100%,1040px);display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,380px);gap:clamp(1rem,3vw,2rem);align-items:center;padding:clamp(1rem,3vw,1.75rem);border:1px solid var(--border-color);border-radius:var(--border-radius-medium);background-color:#27212ffa;box-shadow:var(--shadow-card);color:var(--text-primary)}.wheel-area{position:relative;display:grid;place-items:center;min-width:0}.wheel-canvas{display:block;width:min(100%,520px,58vh);height:auto;aspect-ratio:1}.wheel-pointer{position:absolute;top:.35rem;left:50%;width:0;height:0;transform:translate(-50%);border-left:16px solid transparent;border-right:16px solid transparent;border-top:30px solid var(--accent-secondary);filter:drop-shadow(0 3px 4px rgba(0,0,0,.45))}.chaos-wheel-panel{display:grid;gap:1rem;text-align:left}.chaos-wheel-kicker{margin:0;color:var(--accent-secondary);font-size:.82rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.chaos-wheel-panel h2{margin:0;color:var(--text-primary);font-size:clamp(2rem,4vw,3.2rem);line-height:1}.chaos-wheel-segments{display:grid;gap:.55rem}.chaos-wheel-segment-row{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.65rem;align-items:center;padding:.55rem .65rem;border:1px solid var(--border-color);border-radius:var(--border-radius-small);background-color:#fff8ec0b;color:var(--text-primary)}.chaos-wheel-segment-number{display:inline-grid;place-items:center;width:2rem;height:2rem;border-radius:999px;background-color:var(--text-primary);color:var(--background-dark);border:2px solid rgba(23,20,29,.72);box-shadow:0 2px #00000038;font-weight:800}.chaos-wheel-spin-button,.chaos-wheel-continue-button{width:100%;margin:0;border-color:var(--accent-secondary);background-color:var(--accent-secondary);color:#1b1f22;font-weight:800}.chaos-wheel-spin-button:hover,.chaos-wheel-continue-button:hover{background-color:#ffe08f}.chaos-wheel-spin-button:disabled{border-color:var(--border-color);background-color:var(--button-secondary-bg);color:var(--text-secondary);cursor:not-allowed}.chaos-wheel-spinner{padding:.8rem 1rem;border:1px solid var(--border-color);border-radius:var(--border-radius-small);background-color:var(--background-input);color:var(--accent-secondary);font-weight:700;text-align:center}.chaos-wheel-result{display:grid;gap:.45rem;padding:.9rem;border:1px solid var(--accent-secondary);border-radius:var(--border-radius-medium);background-color:#ffd1661a}.chaos-wheel-result span{color:var(--text-secondary);font-size:.82rem;font-weight:700;text-transform:uppercase}.chaos-wheel-result strong{color:var(--accent-secondary);font-size:1.25rem}.chaos-wheel-outcome-text{margin:0;color:var(--text-primary)}@media (max-width: 760px){.chaos-wheel-modal{align-items:start;padding:.65rem}.chaos-wheel-container{grid-template-columns:1fr;gap:.75rem;padding:.75rem}.wheel-canvas{width:min(100%,280px,34vh)}.chaos-wheel-panel h2{font-size:1.9rem}.chaos-wheel-panel{gap:.7rem}.chaos-wheel-segments{gap:.42rem}.chaos-wheel-segment-row{min-height:2.4rem;padding:.42rem .5rem}}
