@import"https://fonts.googleapis.com/css2?family=Play:wght@500;700&display=swap";:root{--bg: #0d213d;--accent: #f7cd42;--tile: #0b2a4a;--tile-border: #1f4f85;--text: #f3fbff;--app-scale: 1;--app-width: 1100px;--app-height: 620px}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--text);font-family:Play,Segoe UI,Tahoma,sans-serif;background:var(--bg);overflow:hidden}body.fresh-load *{transition:none!important}.app-viewport{position:relative;width:100vw;height:100vh;min-height:100vh;min-height:100dvh;padding:12px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;overflow:hidden;background:linear-gradient(180deg,#0c224229,#0c224247),url(/assets/wizard_background-DB5mxZ1S.png) center/cover no-repeat fixed}#app{width:var(--app-width);height:var(--app-height);border:1px solid #0f2544;border-radius:14px;overflow:hidden;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(var(--app-scale));transform-origin:center center;box-shadow:none;display:flex;gap:12px;background:#123761;padding:12px;box-sizing:border-box;opacity:0;visibility:hidden;pointer-events:none;transition:none;transform:translate(-50%,-50%) scale(calc(var(--app-scale) * .98))}body.app-ready #app{transition:opacity .35s ease,transform .35s ease,visibility .35s ease}body:not(.in-game) #app{opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-50%) scale(calc(var(--app-scale) * .98))}body.in-game #app{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,-50%) scale(var(--app-scale))}.board-area{position:relative;flex:1 1 65%;min-width:0;display:flex;flex-direction:column;gap:8px}.board-header{font-size:20px;letter-spacing:.05em;font-weight:700;text-transform:uppercase;color:var(--text);padding:2px 0}.board-viewport{position:relative;flex:1 1 auto;overflow:visible}.board-viewport canvas{width:100%;height:100%;display:block;position:absolute;top:55px}.hud__btn{background:#ffffff14;color:var(--text);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:8px 12px;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:background .2s ease,border-color .2s ease;display:flex;align-items:center;gap:8px;min-height:46px}.hud__btn.primary{background:#7ad7ff2e;border-color:#7ad7ff66;color:#dff4ff;text-shadow:0 0 12px rgba(122,215,255,.4)}.hud__btn-icon{font-size:14px}.hud__btn:hover{background:#ffffff1f;border-color:#fff3}.hud__btn.primary:hover{background:#7ad7ff40}.status-indicator{width:10px;height:10px;border-radius:50%;display:inline-block;box-shadow:none;flex-shrink:0;margin-right:6px}.status-indicator--online{background:#3fef9b;margin-top:4px}.status-indicator--offline{background:#ff6b6b;opacity:.85;margin-top:4px}.power-panel{position:absolute;width:200px;top:0;right:18px;pointer-events:auto;background:#165eaf4d;border:1px solid rgba(122,215,255,.25);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:12px}.hud__controls{position:absolute;bottom:0;right:18px;width:200px;display:flex;flex:1;flex-direction:column;gap:8px;pointer-events:auto}.power-panel__title{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:#cfefff}.power-panel__controls{display:flex;flex-direction:column;gap:8px}.power-panel__btn{width:100%;background:#7ad7ff26;border:1px solid rgba(122,215,255,.3);border-radius:8px;padding:8px;color:#dff4ff;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease;display:flex;align-items:center;gap:10px;justify-content:space-between}.power-panel__btn:hover{background:#7ad7ff40;border-color:#7ad7ff80}.power-panel__btn-icon{font-size:18px}.power-panel__pill{margin-left:auto;padding:2px 10px;font-size:11px}.word-box{position:absolute;height:54px;display:grid;place-items:center;background:#123761;border:5px solid #f7cd42;border-radius:12px;color:#f7fbff;font-size:20px;letter-spacing:.12em;font-weight:700;pointer-events:none;text-transform:uppercase;box-shadow:none;top:100px;z-index:2;min-width:240px;overflow:visible}.word-box:after,.word-box:before{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:inherit;pointer-events:none;opacity:0;mix-blend-mode:screen;display:none}.word-box:after{background:radial-gradient(circle 6px at 10% 0%,rgba(255,255,255,.9),transparent 60%),radial-gradient(circle 5px at 30% 0%,rgba(255,255,255,.85),transparent 60%),radial-gradient(circle 6px at 50% 0%,rgba(255,255,255,.9),transparent 60%),radial-gradient(circle 5px at 70% 0%,rgba(255,255,255,.85),transparent 60%),radial-gradient(circle 6px at 90% 0%,rgba(255,255,255,.9),transparent 60%),radial-gradient(circle 6px at 0% 15%,rgba(255,255,255,.9),transparent 60%),radial-gradient(circle 5px at 0% 50%,rgba(255,255,255,.85),transparent 60%),radial-gradient(circle 6px at 0% 85%,rgba(255,255,255,.9),transparent 60%),radial-gradient(circle 6px at 100% 15%,rgba(255,255,255,.9),transparent 60%),radial-gradient(circle 5px at 100% 50%,rgba(255,255,255,.85),transparent 60%),radial-gradient(circle 6px at 100% 85%,rgba(255,255,255,.9),transparent 60%),radial-gradient(circle 6px at 10% 100%,rgba(255,215,128,.9),transparent 60%),radial-gradient(circle 5px at 30% 100%,rgba(255,255,255,.85),transparent 60%),radial-gradient(circle 6px at 50% 100%,rgba(255,255,255,.9),transparent 60%),radial-gradient(circle 5px at 70% 100%,rgba(255,215,128,.85),transparent 60%),radial-gradient(circle 6px at 90% 100%,rgba(255,215,128,.9),transparent 60%);background-repeat:no-repeat}.word-box:before{background:radial-gradient(circle 4px at 10% 6%,rgba(255,248,196,.8),transparent 55%),radial-gradient(circle 4px at 50% 4%,rgba(255,255,255,.75),transparent 55%),radial-gradient(circle 4px at 90% 8%,rgba(220,240,255,.85),transparent 55%),radial-gradient(circle 4px at 10% 94%,rgba(255,220,140,.9),transparent 55%),radial-gradient(circle 4px at 50% 96%,rgba(255,255,255,.75),transparent 55%),radial-gradient(circle 4px at 90% 92%,rgba(255,255,255,.8),transparent 55%),radial-gradient(circle 4px at 0% 25%,rgba(255,255,255,.7),transparent 55%),radial-gradient(circle 4px at 0% 50%,rgba(255,255,255,.8),transparent 55%),radial-gradient(circle 4px at 0% 75%,rgba(255,255,255,.7),transparent 55%),radial-gradient(circle 4px at 100% 25%,rgba(255,255,255,.7),transparent 55%),radial-gradient(circle 4px at 100% 50%,rgba(255,255,255,.7),transparent 55%),radial-gradient(circle 4px at 100% 75%,rgba(255,255,255,.7),transparent 55%);background-repeat:no-repeat}.word-box--valid{border-color:#7ad7ffcc;box-shadow:none}.word-box--invalid{border-color:#ff6961d9;box-shadow:none}.word-box__particle{position:absolute;width:8px;height:8px;border-radius:999px;background:var(--particle-color, #fff);pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(.5);animation:word-box-particle .9s ease-out forwards;mix-blend-mode:screen}@keyframes word-box-glow{0%{box-shadow:0 0 #7ad7ff40,0 0 10px #7ad7ff80}50%{box-shadow:0 0 0 6px #7ad7ff2e,0 0 16px 2px #7ad7ffa6}to{box-shadow:0 0 #7ad7ff1f,0 0 6px #7ad7ff4d}}@keyframes word-box-sparkle{0%{opacity:1;transform:translate(-50%,-50%) scale(.9)}60%{opacity:.9}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}@keyframes word-box-sparkle-edge{0%{opacity:0;transform:scale(1)}25%{opacity:1}to{opacity:0;transform:scale(1.2)}}@keyframes word-box-particle{0%{opacity:1;transform:translate(-50%,-50%) scale(.5)}60%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx, 0) * 48px),calc(-50% + var(--dy, 0) * 48px)) scale(1)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#02040ab3;display:grid;place-items:center;z-index:20000;opacity:1;transition:opacity .25s ease}.modal{background:linear-gradient(135deg,#10162b,#090d1b);border:1px solid rgba(122,215,255,.4);border-radius:16px;padding:20px 24px;min-width:280px;color:#dfe9ff;box-shadow:none;font-size:16px;transform:scale(1);opacity:1;transition:transform .25s ease,opacity .25s ease}.modal-overlay.modal--entering{opacity:0}.modal-overlay.modal--entering .modal{transform:scale(.94);opacity:0}.modal-overlay.modal--leaving{opacity:0}.modal-overlay.modal--leaving .modal{transform:scale(.94);opacity:0}.chat-modal{width:90vw;max-width:900px;height:80vh;max-height:80vh;border-radius:16px;display:flex;flex-direction:column;gap:12px;padding:16px 18px}.chat-modal__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.chat-modal__close{background:transparent;border:none;color:#f7fbff;font-size:24px;cursor:pointer}.chat-modal__messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;background:#050a1480;border:1px solid #1f4d86;border-radius:12px;padding:12px}.chat-modal__message{background:#123761cc;border:1px solid #2d72c4;border-radius:10px;padding:8px 10px;box-shadow:none}.chat-modal__meta{font-size:12px;color:#9fc7ff;margin-bottom:4px}.chat-modal__text{font-size:15px;color:#f7fbff;word-break:break-word}.chat-modal__input-row{display:flex;gap:10px;align-items:center}.chat-modal__input{flex:1;padding:12px 14px;border-radius:12px;border:2px solid #2d72c4;background:#0c1c34;color:#f7fbff;font-size:15px}.chat-modal__input:focus{outline:none;border-color:#f7cd42;box-shadow:0 0 0 3px #f7cd4259}.chat-modal__send{background:#f7cd42;color:#0b1a2f;border:none;border-radius:12px;padding:12px 14px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;box-shadow:none;transition:transform .15s ease}.chat-modal__send:active{transform:translateY(1px)}.modal__actions{display:flex;justify-content:flex-end;gap:12px;margin-top:18px}.modal.modal--theme{background:#123761;border:2px solid #e5b832;color:#f7fbff;box-shadow:none}.modal.modal--theme h3{margin:0;letter-spacing:.08em;text-transform:uppercase;color:#f7cd42}.modal.modal--theme .modal__actions{justify-content:flex-end}.modal.modal--theme .modal__btn{border-radius:10px;border:2px solid #e5b832;background:#f7cd42;color:#0d1f38;font-weight:700;letter-spacing:.05em;padding:10px 14px;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.modal.modal--theme .modal__btn.primary{background:#f7cd42;border-color:#e5b832}.modal.modal--theme .modal__btn:hover{transform:translateY(-2px) scale(1.02);filter:brightness(1.05)}.modal.modal--theme .modal__btn:active{transform:translateY(0) scale(.97)}.endgame-modal .endgame-list{display:flex;flex-direction:column;gap:10px;margin-top:12px;width:100%;align-items:stretch}.endgame-modal{width:min(560px,95vw);display:flex;flex-direction:column}.endgame-card{position:relative;box-shadow:none;width:100%;align-self:stretch;display:flex;flex-direction:column;gap:8px;padding:16px 12px;min-height:90px}.endgame-card__header{align-items:center;padding-right:96px}.endgame-card__meta{position:absolute;top:50%;right:12px;transform:translateY(-50%);display:flex;align-items:center;justify-content:flex-end}.endgame-card__score-pill{width:72px;height:72px;border-radius:999px;font-size:26px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.endgame-card__score-pill .pill__icon{font-size:20px;margin-right:0}.endgame-card .pill--score .pill__icon{font-size:14px;color:#ffd76f}.dictionary-modal__input{width:100%;border-radius:12px;border:2px solid #e5b832;background:#ffffff1a;color:#f7fbff;padding:12px 14px;font-size:16px;box-shadow:none}.dictionary-modal__input:focus{outline:none;border-color:#f7cd42;box-shadow:0 0 0 3px #f7cd4240}.dictionary-modal__list{flex:1;min-height:0;overflow:auto;border:2px solid #0f2544;border-radius:12px;background:#123761b3;padding:12px;display:flex;flex-direction:column;gap:6px}.dictionary-modal__item{padding:8px 10px;border-radius:10px;background:#165eaf66;border:1px solid rgba(229,184,50,.6);color:#f7fbff;font-weight:700;letter-spacing:.05em}.submit-anim-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:5}.submit-anim__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000a148c;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.submit-anim__score{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#f7cd42;font:900 64px Play,Segoe UI,sans-serif;letter-spacing:.1em;text-shadow:0 2px 10px rgba(0,0,0,.5);pointer-events:none;opacity:0}.submit-anim__letter{position:absolute;width:80px;height:96px;display:grid;place-items:center;background:transparent;border:none;color:#f7fbff;font-size:48px;font-weight:900;letter-spacing:.1em;transform:translate(-50%,-50%) scale(.4);opacity:0;transition:transform .52s ease,opacity .52s ease;filter:drop-shadow(0 2px 8px rgba(0,0,0,.25))}.submit-anim__letter--filled{text-shadow:0 0 16px rgba(122,215,255,.6),0 0 6px rgba(255,255,255,.6)}.submit-anim__sparkle{position:absolute;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle,#fff,#f7cd4299);opacity:.9;pointer-events:none;filter:drop-shadow(0 0 6px rgba(255,255,255,.8));animation:submit-sparkle-fade .45s ease-out forwards}@keyframes submit-sparkle-fade{0%{transform:translate(-50%,-50%) scale(.4);opacity:.95}70%{opacity:.8}to{transform:translate(-50%,-50%) scale(1.2);opacity:0}}.modal__btn{border:1px solid rgba(255,255,255,.25);background:#ffffff1a;color:#e8f3ff;padding:8px 14px;border-radius:8px;cursor:pointer;transition:background .2s ease,border-color .2s ease}.modal__btn.primary{border-color:#7ad7ff80;background:#7ad7ff40;color:#0c162a;font-weight:700}.modal__btn:hover{background:#fff3;border-color:#fff6}.modal__btn.primary:hover{background:#7ad7ff59}.modal.modal--theme{background:#123761;border:2px solid #f7cd42;color:#f7fbff}.modal.modal--theme p{color:#f7fbff}.modal.modal--theme .modal__actions{justify-content:center}.modal.modal--theme .modal__btn{border:2px solid #e5b832;background:#f7cd42;color:#0d1f38;font-weight:800;transition:transform .18s ease,filter .18s ease}.modal.modal--theme .modal__btn.primary{background:#0d1f38;border-color:#e5b832;color:#f7fbff}.modal.modal--theme .modal__btn:hover{transform:translateY(-1px);filter:brightness(1.05)}.letter-picker{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:16px 0}.letter-picker__btn{border:1px solid rgba(122,215,255,.3);background:#7ad7ff26;color:#e6f4ff;border-radius:8px;font-weight:700;cursor:pointer;padding:8px 0;transition:background .2s ease,border-color .2s ease}.letter-picker__btn:hover{background:#7ad7ff4d;border-color:#7ad7ff80}.sidebar{flex:0 0 300px;background:#165eaf4d;border-radius:10px;padding:14px 12px;border:1px solid rgba(255,255,255,.05);box-shadow:none;display:flex}.sidebar__content{display:flex;flex-direction:column;gap:10px;width:100%;position:relative}.sidebar__heading{font-size:16px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center}.round-indicator{font-size:12px;letter-spacing:.08em;margin-left:8px;color:#e6ebf5}.activity-log-btn{margin-left:auto;border:1px solid rgba(122,215,255,.3);background:#7ad7ff26;color:#dfe9ff;border-radius:8px;cursor:pointer;padding:4px 10px;font-size:16px;transition:background .2s ease,border-color .2s ease}.activity-log-btn:hover{background:#7ad7ff4d;border-color:#7ad7ff80}.players{display:flex;flex-direction:column;gap:10px;padding-bottom:00px}.player-controls{display:flex;justify-content:space-between;margin-top:12px}.player-controls__btn{flex:1 1 auto;margin:0 4px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#7ad7ff33;color:#e6f4ff;font-size:18px;font-weight:700;cursor:pointer;padding:8px 0;transition:background .2s ease,border-color .2s ease}.player-controls__btn:hover{background:#7ad7ff59;border-color:#7ad7ff80}.player-action-tray{position:absolute;left:0;right:0;bottom:-10px;display:flex;justify-content:center;gap:12px;padding:0}.player-action-btn{width:35px;height:35px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:#dfe9ff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,border-color .2s ease}.player-action-btn:hover{background:#fff3;border-color:#ffffff59}.player-action-btn.chat-btn{position:relative}.chat-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:12px;background:#f64f59;color:#fff;font-size:11px;font-weight:700;display:none;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000040}.player-action-btn--exit{color:#ffb0b0;border-color:#ffb0b066}.player-action-btn--exit:hover{background:#ff000026;border-color:#f006}.player{position:relative;background:#141b2c40;border:1px solid rgba(255,255,255,.05);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:6px;min-height:75px}.player__nameRow{display:flex;align-items:center;position:relative;padding-right:120px;width:100%}.player__name{flex:1}.player__actions{position:absolute;top:0;right:6px;display:flex;flex-direction:column;gap:3px}.player__kick-btn{width:25px;height:25px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:#ffffff0f;color:#ffb0b0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease;z-index:2}.player__kick-btn:hover{background:#ff6b6b33;border-color:#ff6b6b99;color:#ffe6e6}.player__skip-btn{width:25px;height:25px;border-radius:50%;border:1px solid rgba(122,215,255,.4);background:#7ad7ff26;color:#dff4ff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease;z-index:2}.player__skip-btn:hover{background:#7ad7ff40;border-color:#7ad7ff99;color:#f8fdff}.player__turnBadge{position:absolute;top:-2px;right:-4px;width:25px;height:25px;border-radius:50%;background:#7ad7ff4d;border:1px solid rgba(122,215,255,.6);color:#072035;display:flex;align-items:center;justify-content:center;box-shadow:none;font-size:10px}.player--active{border-color:#7ad7ff80;border-width:4px;box-shadow:none;border-color:#f7cd42}.player__name{font-weight:700;letter-spacing:.02em;margin-top:2px}.player__meta{position:absolute;top:10px;right:52px;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.player__metaRow{display:flex;gap:6px;flex-wrap:nowrap;justify-content:flex-end}.player__lastWord{position:absolute;left:12px;bottom:14px;font-size:16px;color:#c9d9ff;opacity:.9;text-align:left}.pill--turn{display:inline-flex;align-items:center;gap:6px;background:#7ad7ff33;border-color:#7ad7ff99;color:#dff4ff}.pill{border-radius:999px;padding:4px 8px;font-size:12px}.pill--score{display:inline-flex;align-items:center;gap:6px;background:#ffffff14;color:#f8fbff}.pill--score .pill__icon{color:#ffd76f;font-size:12px}.pill--gem{display:inline-flex;align-items:center;gap:6px;background:#f26cff;color:#ffdfff}.endgame-card__score-pill{font-size:22px!important;padding:0!important}.pill--gem .pill__icon{color:#ffe6ff;font-size:10px}.pill--spectator{background:#ffffff14;border-color:#ffffff26;color:#b7c9ff}.activity-log{list-style:none;margin:12px 0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14px;color:#dfe9ff}.landing-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:20px;z-index:9999;background:#0c1a2e73;opacity:1;transition:opacity .35s ease}body:not(.landing-ready) .landing-overlay{transition:none}.landing-overlay--hidden{opacity:0;pointer-events:none;visibility:hidden}.landing-overlay--hidden .landing-panel{transform:translateY(-12px) scale(.98);opacity:.9}.landing-overlay--loading{cursor:progress}.landing-panel{width:min(460px,92vw);background:#123761;border-radius:16px;padding:32px 30px;box-shadow:none;display:flex;flex-direction:column;gap:16px;max-height:100vh;overflow:auto;transition:transform .35s ease,opacity .35s ease}.landing-panel__label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#f7cd42;margin-top:12px}.landing-panel__input{width:100%;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:#ffffff12;color:#f6fbff;padding:10px 12px;font-size:16px;font-family:inherit}.landing-panel__input:focus{outline:none;border-color:#f7cd42d9;box-shadow:none}.landing-panel__actions{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}.landing-panel__status{min-height:20px;font-size:14px;margin-top:6px;color:#e6f7ff}.landing-panel__status[data-tone=error]{color:#ff9fb0}.landing-views{flex:1}.landing-panels{flex:1;display:grid;grid-template-columns:1fr;grid-template-rows:1fr;justify-items:center;align-items:center}.landing-view{display:flex;flex-direction:column;gap:12px}.landing-panel{width:min(460px,92vw);background:#123761;border-radius:16px;padding:32px 30px;box-shadow:none;display:flex;flex-direction:column;gap:16px;max-height:100vh;overflow:auto;transition:transform .35s ease,opacity .35s ease;opacity:0;transform:translateY(14px) scale(.98);pointer-events:none}.landing-panel--lobby{width:min(1200px,94vw);aspect-ratio:16 / 9;max-height:100vh;display:flex;overflow:hidden;padding:20px;margin:auto}@media (max-width: 820px),(max-height: 740px){.landing-panel--lobby{width:96vw;max-height:100vh;padding:14px}}.landing-panel--active{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.landing-panel--exit{opacity:0;transform:translateY(-10px) scale(.98)}.landing-panel[hidden]{display:none}.lobby-layout{flex:1;display:grid;grid-template-columns:1fr 2fr;gap:16px;height:100%;min-height:0}.lobby-left{display:flex;flex-direction:column;gap:5px;height:100%;overflow:hidden;padding-right:4px;min-height:0}.lobby-chat{background:#0a182c99;border:1px solid #1f4d86;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:10px;overflow:hidden;min-height:0;height:100%}.lobby-chat__header h3{margin:0;color:#f7cd42}.lobby-chat__messages{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-right:6px;min-height:0}.lobby-chat__message{background:#123761cc;border:1px solid #2d72c4;border-radius:10px;padding:6px 8px}.lobby-chat__meta{font-size:12px;color:#9fc7ff;margin-bottom:3px}.lobby-chat__text{font-size:14px;color:#f7fbff;word-break:break-word}.lobby-chat__form{display:flex;gap:8px;align-items:center}.lobby-chat__input{flex:1;padding:10px 12px;border-radius:12px;border:2px solid #2d72c4;background:#0c1c34;color:#f7fbff;font-size:14px}.lobby-chat__input:focus{outline:none;border-color:#f7cd42;box-shadow:0 0 0 3px #f7cd4259}.lobby-chat__send{background:#f7cd42;color:#0b1a2f;border:none;border-radius:12px;padding:10px 12px;display:inline-flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;box-shadow:none;transition:transform .15s ease}.lobby-chat__send:active{transform:translateY(1px)}body:not(.landing-ready) .landing-panel{transition:none}@media (max-height: 760px){.landing-panel{transform:scale(1);transform-origin:center}}@media (max-height: 660px){.landing-panel{transform:scale(.95)}}.landing-view__menu{text-align:center;gap:18px}.landing-menu__logo{display:block;width:80%;max-width:260px;margin:-45px auto}.landing-menu__title{margin:0;font-size:28px;letter-spacing:.12em;text-transform:uppercase;color:#f9fdff}.landing-menu__subtitle{margin:0;color:#def3ffd1}.landing-menu__session{margin-top:6px;font-size:14px;color:#f7fbff}.landing-menu__actions{display:flex;flex-direction:column;gap:20px}.landing-menu__primary-row{display:flex;gap:12px;justify-content:center}.landing-menu__primary-row .landing-menu__btn{flex:1 1 0;min-width:140px}.landing-menu__btn{padding:12px;font-size:16px;border-radius:12px;border:2px solid #e5b832;background:#f7cd42;color:#0d1f38;font-weight:700;letter-spacing:.05em;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;box-shadow:none}.landing-menu__btn.primary{background:#f7cd42;border-color:#e5b832;color:#0d1f38}.landing-menu__btn:hover{transform:translateY(-3px) scale(1.03) rotate(-1deg);box-shadow:none;filter:brightness(1.05)}.landing-menu__btn:active{transform:translateY(0) scale(.97);box-shadow:none}.landing-panel button:not(.share-copy-btn):not(.landing-link):not(.lobby-player__kick){padding:10px;font-size:15px;border-radius:12px;border:2px solid #e5b832;background:#f7cd42;color:#0d1f38;font-weight:700;letter-spacing:.05em;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;box-shadow:none}.landing-panel button:not(.share-copy-btn):not(.landing-link):not(.lobby-player__kick):hover{transform:translateY(-3px) scale(1.03) rotate(-1deg);box-shadow:none;filter:brightness(1.05)}.landing-panel button:not(.share-copy-btn):not(.landing-link):not(.lobby-player__kick):active{transform:translateY(0) scale(.97);box-shadow:none}.landing-view__form h2{margin:0;text-transform:uppercase;letter-spacing:.1em;color:#f7cd42}.landing-link{background:none;border:none;color:#f7cd42;text-decoration:underline;cursor:pointer;margin-top:12px;align-self:flex-start;padding:0}.landing-view__lobby{display:flex;flex-direction:column;gap:14px;height:100%;min-height:0}.lobby-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.lobby-header h2{margin:0;letter-spacing:.08em;text-transform:uppercase;color:#f7cd42}.lobby-room-code{font-size:14px;letter-spacing:.2em;color:#cfe8ff;text-transform:uppercase;display:inline-flex;align-items:center}.lobby-share{display:flex;flex-direction:column;gap:6px}.lobby-share__row{display:flex;align-items:stretch;gap:8px}.lobby-divider{border:none;border-top:1px solid rgba(255,255,255,.15);margin:8px 0}.lobby-share__input{width:100%;flex:1;border-radius:10px;border:1px solid rgba(247,205,66,1);background:#ffffff0f;color:#f7fbff;padding:8px 10px;font-size:14px}.share-copy-btn{min-width:44px;padding:0 14px;border-radius:10px;border:2px solid #e5b832;background:#f7cd42;color:#0d1f38;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;box-shadow:none}.share-copy-btn:hover:not(:disabled){transform:translateY(-2px) scale(1.02) rotate(-1deg);box-shadow:none;filter:brightness(1.05)}.share-copy-btn:disabled{opacity:.6;cursor:wait}.share-copy-btn--success{background:#3fef9b33;border-color:#3fef9b8c;color:#0c301f}.share-copy-btn--error{background:#ff6b6b33;border-color:#ff6b6b8c;color:#2c1111}.lobby-players{list-style:none;margin:0;padding:6px;display:flex;flex-direction:column;gap:6px;flex:1;min-height:0;overflow-y:auto;border-radius:10px}.lobby-players__heading{margin:0 0 4px;font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:#f7cd42cc}.lobby-player{padding:10px;border-radius:10px;background:#165eaf4d;font-weight:700;color:#f7fbff}.lobby-rounds{margin-top:8px;display:flex;flex-direction:column;gap:6px}.lobby-rounds__label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#f7cd42e6}.lobby-rounds__options{display:flex;gap:8px;flex-wrap:wrap;transform:scale(.8);transform-origin:top left}.lobby-rounds__option{cursor:pointer}.lobby-rounds__option input{display:none}.lobby-rounds__option span{display:inline-block;padding:6px 14px;border-radius:999px;border:2px solid rgba(247,205,66,.7);background:#165eaf59;color:#f7fbff;font-weight:700;letter-spacing:.02em;transition:transform .15s ease,background .2s ease,border-color .2s ease,color .2s ease}.lobby-rounds__option input:checked+span{background:#f7cd42;border-color:#e5b832;color:#0d1f38;transform:translateY(-2px)}.lobby-rounds--disabled{opacity:.6;pointer-events:none}.lobby-rounds--busy span{border-color:#ffffff59}.lobby-actions{display:flex;align-items:center;justify-content:space-between;margin-top:0;margin-bottom:10px;gap:10px}.connection-notice{position:fixed;top:20px;left:50%;transform:translate(-50%);background:#0a101ee6;border:1px solid rgba(255,87,146,.5);color:#ffd8f0;padding:10px 16px;border-radius:999px;font-weight:600;letter-spacing:.05em;box-shadow:none;z-index:10000}.lobby-player__row{display:flex;align-items:center;justify-content:space-between;gap:12px}.lobby-player__left{display:flex;align-items:center;gap:8px}.lobby-player__badge{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#dfe3ea;border-radius:999px;padding:2px 8px;background:#8c929e}.lobby-player__badge--spectator{color:#ffc1ff;border-color:#ffc1ff66}.lobby-player__kick{background:#ff7272;color:#0d1f38;text-transform:uppercase;font-size:11px;letter-spacing:.08em;border-radius:999px;padding:2px 10px;cursor:pointer;font-weight:800;border:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .12s ease}.lobby-player__kick:hover{background:#ff8a8a;border-color:#ff8a8a;color:#0d1f38;transform:translateY(-1px)}.player__kick-icon{border:none;background:#ffffff14;color:#ffb0b0;border-radius:6px;padding:4px 6px;cursor:pointer;transition:background .2s ease,color .2s ease}.player__kick-icon:hover{background:#ff000026;color:#ffd0d0}
