@import"https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap";.main-menu{position:relative;width:100%;height:100%;height:100dvh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,var(--darker-bg) 0%,var(--dark-bg) 100%)}.menu-background{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.menu-header-overlay{position:absolute;top:0;left:0;right:0;display:flex;align-items:flex-start;justify-content:flex-start;padding:1rem;padding-top:max(1rem,env(safe-area-inset-top));padding-left:max(1rem,env(safe-area-inset-left));z-index:0;pointer-events:none}.menu-header-overlay>*{pointer-events:auto}.menu-brand{display:flex;flex-direction:column;gap:.25rem}.brand-title{font-size:1.4rem;color:var(--theme-text-primary);text-shadow:3px 3px 8px rgba(0,0,0,.9)}.brand-subtitle{font-size:.7rem;color:var(--theme-text-secondary);opacity:.9}.menu-panel{position:relative;z-index:2;background:var(--theme-bg-panel);border:.25rem solid var(--theme-border-strong);border-radius:1.5rem;padding:1.5rem;box-shadow:0 0 2rem var(--theme-shadow-glow);min-width:20rem;max-width:30rem;width:min(90vw,28rem)}.games-grid{display:flex;flex-direction:column;gap:var(--controls-expanded-gap)}.game-tile{display:flex!important;gap:1.25rem!important;justify-content:flex-start!important;min-height:5rem!important;height:5rem!important}.game-icon{font-size:2.2rem!important}.game-text{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.game-title{font-size:1.2rem;color:var(--theme-text-primary)}.game-desc{font-size:.9rem;color:var(--theme-text-secondary);opacity:.9}.game-tile.disabled{opacity:.5;cursor:not-allowed;pointer-events:none;background:var(--theme-bg-panel)!important;border-color:var(--theme-border-weak)!important;box-shadow:none!important}.game-tile.disabled:hover{transform:none!important;box-shadow:none!important}.game-tile.disabled .game-title{color:var(--theme-text-secondary)}.game-tile.disabled .game-desc{color:var(--theme-text-secondary);opacity:.7}.mobile-landscape-block{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;color:#fff;display:none;align-items:center;justify-content:center;z-index:99999}.mobile-landscape-text{font-size:.9rem;text-align:center;padding:0 1rem}@media (min-width: 1200px){.brand-title{font-size:1.6rem}.brand-subtitle{font-size:.8rem}.menu-panel{padding:2rem;width:min(90vw,35rem);min-width:25rem}.game-tile{min-height:6rem!important;height:6rem!important;gap:1.25rem!important}.game-icon{font-size:2.8rem!important}.game-title{font-size:1.4rem}.game-desc{font-size:1rem}}@media (max-width: 1199px) and (min-width: 768px){.menu-panel{padding:1.25rem;width:min(92vw,26rem)}.game-tile{min-height:4.5rem!important;height:4.5rem!important;gap:1rem!important}.game-icon{font-size:2rem!important}}@media (max-width: 767px) and (min-width: 481px){.menu-panel{padding:1rem;width:min(96vw,20rem)}.game-title{font-size:.9rem}.game-desc{font-size:.65rem}.game-tile{min-height:5rem!important;height:5rem!important;gap:1rem!important}.game-icon{font-size:1.8rem!important}}@media (max-width: 480px){.menu-panel{padding:.75rem;width:min(96vw,18rem)}.game-title{font-size:.9rem}.game-desc{font-size:.65rem}.game-tile{min-height:4.5rem!important;height:4.5rem!important;gap:.875rem!important}.game-icon{font-size:1.6rem!important}}@media (max-width: 360px){.menu-panel{padding:.5rem;width:min(96vw,16rem)}.brand-title{font-size:1rem}.brand-subtitle{font-size:.6rem}.game-tile{min-height:4rem!important;height:4rem!important;gap:.75rem!important}.game-icon{font-size:1.4rem!important}}@media (max-height: 31.25rem) and (orientation: landscape){.mobile-landscape-block{display:flex}}:root{--controls-col-min: 3rem;--controls-row-size: 3rem;--controls-gap: .5rem;--controls-expanded-col-min: 7rem;--controls-expanded-gap: .5rem;--panel-padding: .5rem;--button-min-width: 6rem;--button-padding-x: 1.2rem;--control-button-font-size: 1rem;--button-radius: 1rem;--action-button-font-size: .9rem;--action-button-padding-y: .8rem;--action-button-padding-x: 1.2rem;--action-button-min-width: 8rem;--cards-gap: .5rem;--cards-padding: 1rem;--card-scale: 1;--card-radius-scale: 1;--chat-container-width: clamp(14rem, 40vw, 26rem);--chat-dynamic-max: 100vw;--chat-field-basis: auto;--chat-field-min: 0;--emoji-size: 3.2rem;--emoji-grid-cols: 6;--drop-overlay-top: -8rem;--drop-scale: 1;--action-top-offset: -4rem}@keyframes sceneSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{box-shadow:0 0 20px #ffd70099}50%{box-shadow:0 0 30px #ffd700cc}}@keyframes handPulse{0%,to{box-shadow:0 0 20px #ff8c0099}50%{box-shadow:0 0 30px #ff8c00cc}}@keyframes winnerPulse{0%,to{box-shadow:0 0 30px #ffd700cc;transform:scale(1)}50%{box-shadow:0 0 50px gold;transform:scale(1.05)}}@keyframes hintPulse{0%,to{transform:translate(-50%) scale(1);filter:brightness(1)}50%{transform:translate(-50%) scale(1.02);filter:brightness(1.15)}}@keyframes turnDisplayPulse{0%,to{transform:scale(1);box-shadow:0 0 20px var(--theme-shadow-glow);background:var(--theme-accent-1);border-color:var(--theme-border-strong)}50%{transform:scale(1.05);box-shadow:0 0 30px var(--theme-shadow-glow);background:var(--theme-accent-1);border-color:var(--theme-border-strong)}}@keyframes countdownPop{0%{transform:scale(.6);opacity:.2}50%{transform:scale(1.1);opacity:1}to{transform:scale(1);opacity:1}}@keyframes turnDisplayGlow{0%,to{box-shadow:0 0 20px var(--theme-button-glow)}50%{box-shadow:0 0 30px var(--theme-button-glow)}}@keyframes turnDisplayButtonPulse{0%,to{transform:scale(1);box-shadow:0 0 20px var(--theme-button-glow)}50%{transform:scale(1.05);box-shadow:0 0 30px var(--theme-button-glow)}}.game{position:fixed;top:0;left:0;width:100%;height:100%;height:100dvh;height:calc(var(--vh, 1vh) * 100);background:#000;overflow:hidden;font-family:"Press Start 2P",monospace}.game-scene-container{position:absolute;left:0;top:0;width:100%;height:100%;z-index:1;display:flex;align-items:center;justify-content:center}.edge-gradients{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:4}.edge-gradient-top,.edge-gradient-bottom{position:absolute;left:0;width:100%;height:25%}.edge-gradient-top{top:0;background:linear-gradient(180deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.6) 60%,transparent 100%)}.edge-gradient-bottom{bottom:0;background:linear-gradient(0deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.6) 60%,transparent 100%)}.main-loader-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#1a1a1a 0%,#2a2a2a 50%,#1a1a1a 100%);z-index:100000;display:flex;align-items:center;justify-content:center;animation:loaderFadeIn .5s ease-out}.main-loader{text-align:center;color:#fff;max-width:90%}.loader-progress{width:20rem;max-width:80vw;margin:0 auto}.progress-bar{width:100%;height:.5rem;background:rgba(255,255,255,.1);border-radius:.25rem;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#FFD700,#FFA500);border-radius:.25rem;animation:progressFill 3s ease-out infinite}@keyframes loaderFadeIn{0%{opacity:0}to{opacity:1}}@keyframes progressFill{0%{width:0%}70%{width:85%}to{width:100%}}.scene-loader-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,rgba(0,0,0,.9) 0%,rgba(0,0,0,.85) 40%,rgba(0,0,0,.8) 100%);z-index:25;transition:opacity .4s ease;opacity:1;pointer-events:none}.scene-loader-overlay.hidden{opacity:0;pointer-events:none}.scene-loader{display:flex;flex-direction:column;align-items:center;gap:1rem;color:gold;text-shadow:0 0 .2rem rgba(255,215,0,.8)}.loader-ring{width:4rem;height:4rem;border-radius:50%;border:.4rem solid rgba(255,215,0,.25);border-top-color:gold;animation:sceneSpin 1s linear infinite;box-shadow:0 0 1rem #ffd70066}.loader-text{font-size:.9rem;color:#fff;background:rgba(0,0,0,.6);padding:.5rem .8rem;border-radius:.6rem;border:.15rem solid rgba(255,215,0,.5)}.game-header-overlay{position:absolute;top:0;left:0;right:0;z-index:15;background:transparent;padding:1rem;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none;padding-top:max(1rem,env(safe-area-inset-top));padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.game-header-overlay>*{pointer-events:auto}.game-info{display:flex;flex-direction:row;align-items:center;gap:var(--controls-gap);color:var(--theme-text-primary);text-shadow:2px 2px 4px rgba(0,0,0,.8)}.game-info span{font-size:.75rem;background:rgba(0,0,0,.6);padding:.25rem .5rem;border-radius:.25rem;border:1px solid rgba(255,255,255,.2);white-space:normal;word-wrap:break-word;max-width:16rem;line-height:1.2}.current-player{color:gold;font-weight:700}.game-controls{display:flex;gap:var(--controls-gap);align-items:center}.controls-menu-container{position:relative}.controls-expanded{position:fixed;top:max(var(--edge-gap),env(safe-area-inset-top));right:max(var(--edge-gap),env(safe-area-inset-right));background:var(--theme-bg-panel);border:4px solid var(--theme-border-strong);border-radius:1rem;padding:var(--panel-padding);display:flex;flex-direction:column;gap:var(--controls-expanded-gap);z-index:2000;box-shadow:0 0 20px var(--theme-shadow-glow);min-width:8rem}.controls-expanded .control-button-fixed{min-width:var(--controls-expanded-col-min);min-height:2.5rem;font-size:.7rem;padding:.6rem 1rem;justify-content:flex-start;gap:.8rem}.controls-expanded .control-button-fixed .material-icons{font-size:1rem}.turn-display-overlay{position:absolute;top:calc(constant(safe-area-inset-top) + 1rem);top:calc(env(safe-area-inset-top) + 1rem);left:50%;transform:translate(-50%);z-index:12;pointer-events:none}.turn-display-overlay>*{pointer-events:auto}.action-log-overlay{position:absolute;top:5rem;left:1rem;z-index:10;max-width:20rem;max-height:60vh;overflow:hidden;pointer-events:none}.action-log-overlay>*{pointer-events:auto}.waiting-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:20;background:rgba(0,0,0,.9);border:2px solid var(--theme-border-strong);border-radius:1rem;padding:2rem;text-align:center;color:var(--theme-text-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.waiting-content h3{color:var(--theme-accent-1);margin-bottom:1rem;font-size:1.2rem}.waiting-content p{color:#ccc;font-size:.9rem}.winner-message{background:linear-gradient(45deg,#FFD700,#FFA500);border:4px solid #FF0000;border-radius:1rem;color:#fff;font-family:"Press Start 2P",monospace;font-size:1rem;font-weight:700;padding:1rem 2rem;text-shadow:2px 2px 4px rgba(0,0,0,.8);box-shadow:0 0 30px #ffd700cc;animation:winnerPulse 1s infinite;text-align:center;white-space:nowrap;min-width:12rem}.action-buttons-container{position:absolute;top:-4rem;left:50%;transform:translate(-50%);z-index:15;display:flex;flex-direction:column;gap:var(--controls-gap);pointer-events:none}.action-buttons-container>*{pointer-events:auto}.action-button{background:var(--theme-button-bg);border:4px solid var(--theme-button-border);border-radius:1rem;color:var(--theme-text-primary);font-family:"Press Start 2P",monospace;font-size:var(--action-button-font-size);font-weight:700;padding:var(--action-button-padding-y) var(--action-button-padding-x);cursor:pointer;transition:all .3s ease;text-shadow:2px 2px 4px rgba(0,0,0,.8);box-shadow:0 0 20px var(--theme-button-glow);min-width:var(--action-button-min-width);text-align:center;white-space:nowrap}.action-button:hover{transform:scale(1.05);box-shadow:0 0 30px var(--theme-button-glow)}.action-button:active{transform:scale(.95)}.action-button.shit-button,.action-button.throw-hand-button,.action-button.sort-button{background:var(--theme-button-bg);animation:none}.control-button{background:var(--theme-bg-panel);border:6px solid #1A1A1A;border-radius:0;color:var(--theme-text-primary);font-family:"Press Start 2P",monospace;font-size:var(--control-button-font-size);padding:.5rem;cursor:pointer;transition:all .1s steps(2);min-width:var(--controls-row-size);height:var(--controls-row-size);display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #4a4a4a,6px 6px #0a0a0a,inset 2px 2px #0006,inset -1px -1px #ffffff1a;position:relative}.control-button:before{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:repeating-linear-gradient(45deg,transparent 0px,transparent 2px,rgba(255,255,255,.05) 2px,rgba(255,255,255,.05) 4px);pointer-events:none}.control-button:hover{background:#4A4A4A;border-color:#1a1a1a;transform:translate(-3px,-3px);box-shadow:0 0 0 2px #4a4a4a,9px 9px #0a0a0a,inset 2px 2px #0006,inset -1px -1px #ffffff1a}.control-button:active{transform:translate(0);box-shadow:0 0 0 2px #4a4a4a,2px 2px #0a0a0a,inset 4px 4px #00000080,inset -1px -1px #ffffff1a;background:#2A2A2A;border-color:#1a1a1a}.control-button-fixed{background:var(--theme-button-bg);border:4px solid var(--theme-button-border);border-radius:var(--button-radius);color:var(--theme-text-primary);font-family:"Press Start 2P",monospace;font-size:var(--button-font-size);font-weight:700;padding:.8rem var(--button-padding-x);cursor:pointer;z-index:20;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 0 20px var(--theme-button-glow);transition:all .3s ease;text-shadow:2px 2px 4px rgba(0,0,0,.8);text-align:center;white-space:nowrap;min-width:var(--button-min-width);min-height:var(--button-height)}.control-button-fixed.menu-toggle{border-radius:var(--button-radius);width:var(--menu-button-size);height:var(--menu-button-size);min-width:var(--menu-button-size);min-height:var(--menu-button-size);padding:0;position:fixed;top:var(--edge-gap);right:var(--edge-gap);display:inline-flex;align-items:center;justify-content:center;background:transparent!important;border-color:var(--theme-accent-1)!important;color:#fff!important;box-shadow:0 0 20px var(--theme-shadow-glow)!important}.control-button-fixed.menu-toggle:hover,.control-button-fixed.menu-toggle:active{background:var(--theme-accent-1)!important;color:#000!important;transform:scale(1.05)!important;box-shadow:0 0 30px var(--theme-accent-1)!important}.control-button-fixed.reset-settings{background:linear-gradient(45deg,var(--theme-danger-1),var(--theme-danger-2));border-color:var(--theme-danger-border)}.control-button-fixed.reset-settings:hover{background:linear-gradient(45deg,var(--theme-danger-2),var(--theme-danger-1));box-shadow:0 0 30px #ff4500cc}.control-button-fixed .material-icons{font-size:var(--button-icon-size)}.control-button-fixed:hover{transform:scale(1.05);box-shadow:0 0 30px var(--theme-button-glow)}.control-button-fixed:active{transform:scale(.95)}.sort-button-fixed{position:fixed;bottom:var(--edge-gap);right:var(--edge-gap);background:transparent;border:4px solid var(--theme-accent-1);border-radius:var(--button-radius);color:#fff;font-family:"Press Start 2P",monospace;font-size:var(--button-font-size);font-weight:700;padding:.8rem var(--button-padding-x);cursor:pointer;z-index:20;display:flex;align-items:center;justify-content:center;box-shadow:0 0 20px var(--theme-shadow-glow);transition:all .3s ease;text-shadow:2px 2px 4px rgba(0,0,0,.8);text-align:center;white-space:nowrap;min-width:var(--button-min-width);min-height:var(--button-height)}.sort-button-fixed:hover,.sort-button-fixed:active{background:var(--theme-accent-1);color:#000;transform:scale(1.05);box-shadow:0 0 30px var(--theme-accent-1)}.afk-return-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;pointer-events:all}.afk-return-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.afk-return-button{font-size:1.5rem!important;min-width:20rem!important;min-height:4rem!important;padding:1.5rem 3rem!important;background:linear-gradient(45deg,#E67E22,#D35400)!important;border-color:#e67e22!important;box-shadow:0 0 40px #e67e2299!important;animation:afkButtonPulse 2s ease-in-out infinite}.afk-return-button:hover{background:linear-gradient(45deg,#D35400,#E67E22)!important;transform:scale(1.1)!important;box-shadow:0 0 50px #e67e22cc!important}@keyframes afkButtonPulse{0%,to{box-shadow:0 0 40px #e67e2299;transform:scale(1)}50%{box-shadow:0 0 60px #e67e22cc;transform:scale(1.05)}}.turn-display-content{background:transparent;border:none;border-radius:0;padding:.5rem 1rem;color:var(--theme-text-primary);font-family:"Press Start 2P",monospace;font-size:1rem;font-weight:700;text-align:center;text-shadow:2px 2px 4px rgba(0,0,0,.8);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;white-space:nowrap;max-width:90vw;overflow:hidden;text-overflow:ellipsis;transition:all .3s ease}.turn-display-active{background:rgba(255,215,0,.9);border:2px solid #FFD700;border-radius:.8rem;padding:.5rem 1rem;color:#000;text-shadow:2px 2px 4px rgba(255,255,255,.5);box-shadow:0 0 20px #ffd70099;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:turnDisplayPulse 1.5s infinite}@media (max-width: 900px){.action-button,.control-button-fixed,.control-button-fixed.menu-toggle,.sort-button-fixed{border-radius:var(--button-radius)}}@supports (padding: max(0px)){.control-button-fixed.menu-toggle{top:max(var(--edge-gap),env(safe-area-inset-top));right:max(var(--edge-gap),env(safe-area-inset-right))}.sort-button-fixed{right:max(var(--edge-gap),env(safe-area-inset-right));bottom:max(var(--edge-gap),env(safe-area-inset-bottom))}}.my-cards-overlay{position:absolute;bottom:0rem;left:0;right:0;z-index:10;background:transparent;padding:3.5rem;pointer-events:none;touch-action:none}.my-cards-overlay>*{pointer-events:auto}.cards-container{display:flex;justify-content:center;gap:var(--cards-gap);flex-wrap:wrap;max-width:100%;overflow-x:hidden;padding:var(--cards-padding);margin-top:.5rem;touch-action:none;-webkit-user-select:none;user-select:none}.cards-row{display:inline-flex;flex-wrap:nowrap;align-items:flex-end;justify-content:center;gap:var(--cards-gap);width:auto}.cards-row .card{flex:0 0 auto}.cards-row .card+.card{margin-left:calc(var(--card-overlap, 0rem) * -1)}.cards-container .card{transition:transform .3s ease,box-shadow .15s ease}.cards-container .card.reordering{transition:all .3s cubic-bezier(.25,.46,.45,.94)}.card{width:9.5rem;height:13.25rem;background:#fff;border:8px solid var(--darker-bg);border-radius:1rem;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;transition:all .1s steps(2);position:relative;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none}.card.dragging{position:fixed!important;z-index:1000;pointer-events:none;transform:rotate(5deg) scale(1.1);box-shadow:0 8px 32px #0006;transition:none;left:0;top:0}.card:before{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:repeating-linear-gradient(45deg,transparent 0px,transparent 2px,rgba(0,0,0,.03) 2px,rgba(0,0,0,.03) 4px);pointer-events:none}.card:not(.empty-slot):not(.placeholder):hover{transform:translateY(-.8rem) scale(1.02);box-shadow:0 8px 25px #0006}.card:active{cursor:grabbing!important}.card.drop-target{transform:scale(.95);box-shadow:0 0 0 3px #ffd700cc,0 .4rem 1rem #ffd7004d;transition:all .15s ease}.card-content{display:flex;flex-direction:column;align-items:center;gap:.25rem;z-index:1}.card-rank{font-size:2.4rem;font-weight:700;line-height:1;margin-bottom:-.8rem}.card-suit{font-size:3rem;line-height:1}.card-corner{position:absolute;display:flex;flex-direction:column;align-items:center;gap:.1rem;z-index:2;pointer-events:none;-webkit-user-select:none;user-select:none}.card-corner.top-left{top:.3rem;left:.3rem}.card-corner.bottom-right{bottom:.3rem;right:.3rem;transform:rotate(180deg)}.corner-rank{font-size:1.2rem;font-weight:700;line-height:1}.corner-suit{font-size:1.6rem;line-height:1}.drop-zone-overlay{position:absolute;top:var(--drop-overlay-top);left:50%;transform:translate(-50%);z-index:12;pointer-events:none;opacity:0;transform-origin:center;transition:opacity .18s ease,transform .18s ease}.drop-zone-overlay.visible{opacity:1;transform:translate(-50%) translateY(0)}@media (min-width: 768px) and (max-width: 1599px){.drop-zone-overlay{top:-10rem}}@media (min-width: 1600px) and (max-width: 1999px){.drop-zone-overlay{top:-16rem}}@media (min-width: 2000px){.drop-zone-overlay{top:-18rem}}.drop-zone{pointer-events:none;margin:0 auto;border:4px dashed rgba(255,215,0,.4);background:transparent;border-radius:1rem;transition:all .16s ease;box-shadow:0 0 0 2px #ffd7001a,0 0 20px #ffd7001a;position:relative}.drop-zone:before{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:repeating-linear-gradient(45deg,transparent 0px,transparent 2px,rgba(255,215,0,.05) 2px,rgba(255,215,0,.05) 4px);border-radius:.8rem;pointer-events:none}.drop-zone.active{border-color:#ffd700cc;background:transparent;box-shadow:0 0 0 2px #ffd70033,0 0 30px #ffd7004d}.drop-hint{position:absolute;top:0rem;left:50%;transform:translate(-50%);color:#fff;text-shadow:0 0 .4rem rgba(255,255,255,.8);font-size:.9rem;opacity:0;pointer-events:none;transition:opacity .22s ease;animation:hintPulse 1.6s ease-in-out infinite;white-space:nowrap}.drop-hint.visible{opacity:1}@media (max-width: 767px){.drop-hint{font-size:1.5rem}}@media (min-width: 768px) and (max-width: 1199px){.drop-hint{font-size:1.5rem}}@media (min-width: 1200px){.drop-hint{font-size:1.5rem}}@media (max-width: 900px) and (orientation: landscape){.drop-hint{font-size:.8rem}}@media (min-width: 2000px){.drop-hint{font-size:1.5rem}}.preparation-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:20;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.6)}.preparation-modal{background:var(--theme-bg-panel);border:.25rem solid var(--theme-border-strong);border-radius:1rem;padding:1.5rem;color:var(--theme-text-primary);text-align:center;box-shadow:0 1rem 3rem #0009,0 0 2rem var(--theme-shadow-glow);min-width:20rem;max-width:32rem}.preparation-modal h3{color:var(--theme-accent-1);font-size:1.2rem;margin:0 0 1rem}.prep-spinner{margin-bottom:1rem;display:flex;justify-content:center}.ready-list{display:flex;flex-direction:column;gap:.8rem;margin:.5rem 0 1.2rem}.ready-item{display:flex;align-items:center;gap:.8rem;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.15);border-radius:.6rem;padding:.6rem 1rem}.ready-indicator{width:1.4rem;height:1.4rem;border-radius:.35rem;border:.15rem solid #888;background:transparent;box-shadow:inset 0 0 0 .15rem #0000004d;position:relative}.ready-item.ready .ready-indicator{border-color:#00c853;background:#00c853}.ready-item.ready .ready-name{color:#c8f7d4}.ready-name{font-size:.95rem;color:var(--theme-text-primary);letter-spacing:.02em}.control-button-fixed.ready-button{font-size:1.1rem;min-width:12rem;margin:0 auto;display:inline-flex;background:transparent!important;color:#fff!important;border-color:var(--theme-accent-1)!important;box-shadow:0 0 1rem var(--theme-shadow-glow)!important}.control-button-fixed.ready-button:hover,.control-button-fixed.ready-button:active{background:var(--theme-accent-1)!important;color:#000!important;transform:scale(1.05)!important;box-shadow:0 0 1.5rem var(--theme-accent-1)!important}.control-button-fixed.ready-button:disabled{background:transparent!important;color:#666!important;border-color:#666!important;opacity:.7!important;transform:none!important;box-shadow:none!important}.countdown{font-size:3rem;font-weight:700;color:var(--theme-accent-1);animation:countdownPop 1s ease}.preparation-modal.round-result{min-width:18rem;max-width:28rem;padding:1.2rem 1.2rem 1.4rem}.round-loser-title{font-size:.9rem;color:#bbb;margin-bottom:.3rem}.round-loser-name{font-size:1.6rem;color:#fff;font-weight:700;margin-bottom:1rem}@media (max-width: 900px) and (orientation: landscape){.preparation-modal{min-width:14rem;max-width:20rem;padding:1rem}.preparation-modal h3{font-size:.9rem}.ready-list{gap:.5rem}.ready-item{padding:.5rem .8rem;gap:.5rem}.ready-indicator{width:1.1rem;height:1.1rem;border-radius:.3rem}.ready-name{font-size:.8rem}.control-button-fixed.ready-button{font-size:.9rem;min-width:9rem;background:transparent!important;color:#fff!important;border-color:var(--theme-accent-1)!important}}.portrait-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;color:#fff;display:none!important;align-items:center;justify-content:center;z-index:1000;text-align:center;padding:2rem}.portrait-overlay .portrait-loader{display:flex;flex-direction:column;gap:1rem;align-items:center}.portrait-overlay .rotate-message{font-size:1rem;line-height:1.5}.chat-input-container{position:fixed;left:max(var(--edge-gap),env(safe-area-inset-left));bottom:max(var(--edge-gap),env(safe-area-inset-bottom));z-index:22;width:var(--chat-container-width);max-width:calc(100vw - 2rem);margin:0;padding:0;pointer-events:auto}.chat-self-messages{display:flex;flex-direction:column;gap:.05rem;margin-bottom:.2rem;max-height:30vh;overflow:hidden}.chat-self-message{align-self:flex-start;background:transparent;border:none;border-radius:1rem;color:var(--theme-text-primary);font-family:"Press Start 2P",monospace;font-size:var(--button-font-size);font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.8);padding:.35rem .6rem;text-align:left;max-width:100%;word-wrap:break-word;box-shadow:none}.chat-input-wrapper{display:flex;align-items:center;gap:var(--controls-gap);background:transparent;border:none;border-radius:0;padding:0;-webkit-backdrop-filter:none;backdrop-filter:none;transition:all .3s ease;opacity:1;position:relative}.chat-input-wrapper:hover,.chat-input-wrapper:focus-within{opacity:1}.chat-input-field{flex:1 1 auto;min-width:0;width:auto;background:transparent;border:.25rem solid var(--theme-accent-1);border-radius:var(--button-radius);color:#fff;font-family:"Press Start 2P",monospace;font-size:var(--button-font-size);font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.8);padding:0 var(--button-padding-x);height:var(--button-height);outline:none;resize:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 0 20px var(--theme-shadow-glow)}.chat-input-field::placeholder{color:#fff9;text-shadow:1px 1px 2px rgba(0,0,0,.6)}.chat-input-field:focus{box-shadow:0 0 30px var(--theme-accent-1);background:rgba(255,255,255,.05)}.chat-emoji-btn,.chat-send-btn,.chat-sort-btn{background:transparent;border:.25rem solid var(--theme-accent-1);border-radius:var(--button-radius);color:#fff;cursor:pointer;font-size:calc(var(--button-font-size) * 1.4);padding:0;transition:all .3s ease;width:var(--button-height);min-width:var(--button-height);height:var(--button-height);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;box-shadow:0 0 20px var(--theme-shadow-glow),0 0 8px #00000080;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.chat-emoji-btn:hover,.chat-send-btn:hover,.chat-emoji-btn:active,.chat-send-btn:active{background:var(--theme-accent-1);color:#000;transform:scale(1.05);box-shadow:0 0 30px var(--theme-accent-1),0 0 12px #0009}.chat-emoji-btn .material-icons,.chat-send-btn .material-icons{font-size:calc(var(--button-height) * .82);line-height:1}.chat-emoji-btn img,.chat-send-btn img,.chat-emoji-btn svg,.chat-send-btn svg{image-rendering:pixelated}.emoji-placeholder{width:1.5rem;height:1.5rem;background:rgba(255,255,255,.1);border-radius:.25rem;display:flex;align-items:center;justify-content:center;font-size:.8rem;color:#ffffff80;font-family:"Press Start 2P",monospace}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.chat-sort-btn{display:none}.chat-emoji-picker-container{position:static}.chat-emoji-picker{position:absolute;left:0;right:0;bottom:calc(100% + .5rem);width:100%;background:rgba(0,0,0,.7);border:.25rem solid var(--theme-accent-1);border-radius:1rem;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);max-height:16rem;overflow-y:auto;padding:.75rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(2.5rem,1fr));gap:.75rem;z-index:2001;box-shadow:0 0 30px #000c,0 0 15px var(--theme-accent-1)}.chat-emoji-option{background:transparent;border:none;border-radius:.5rem;color:var(--theme-text-primary);cursor:pointer;font-family:"Press Start 2P",monospace;transition:all .15s ease;min-width:auto;min-height:auto;display:flex;align-items:center;justify-content:center;padding:.25rem}.chat-emoji-option:hover{background:rgba(255,255,255,.1);transform:scale(1.1)}.chat-emoji-option img{width:var(--emoji-size);height:var(--emoji-size)}.chat-emoji-option:hover img{transform:scale(1.1)}.chat-message-center{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:50;pointer-events:none;animation:chatBubbleAppear .3s ease-out}.chat-bubble-center{background:rgba(0,0,0,.8);border:.125rem solid var(--theme-border-strong);border-radius:1rem;color:var(--theme-text-primary);font-family:"Press Start 2P",monospace;font-size:.75rem;max-width:20rem;padding:1rem 1.5rem;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 0 20px var(--theme-shadow-glow);word-wrap:break-word}@keyframes chatBubbleAppear{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media (max-width: 56.25em){.chat-input-field{font-size:.75rem}.chat-emoji-option{font-size:.625rem}.chat-bubble-center{font-size:.625rem;max-width:15rem;padding:.75rem 1rem}}.chat-emoji-btn svg,.chat-send-btn svg{font-size:calc(var(--button-height) * .5)!important;width:1em;height:1em}.game-header-overlay{padding-top:max(1rem,env(safe-area-inset-top))!important;padding-right:max(1rem,env(safe-area-inset-right))!important;padding-bottom:1rem!important;padding-left:max(1rem,env(safe-area-inset-left))!important}.game-info span{font-size:.75rem!important;padding:.25rem .5rem!important;max-width:16rem!important;border-radius:.25rem!important;border:.0625rem solid rgba(255,255,255,.2)!important;white-space:normal!important;line-height:1.2!important}.action-buttons-container{position:absolute!important;top:-4rem!important;left:50%!important;transform:translate(-50%)!important;z-index:15!important;display:flex!important;flex-direction:row!important;gap:.75rem!important;pointer-events:none!important}.action-buttons-container>*{pointer-events:auto!important}.action-button{font-size:.9rem!important;padding:.8rem 1.2rem!important;min-width:8rem!important;border-width:.25rem!important;border-radius:1rem!important}.action-button.shit-button,.action-button.throw-hand-button,.action-button.sort-button{border-radius:1rem!important}.control-button{font-size:var(--control-button-font-size)!important;padding:.5rem!important;min-width:var(--controls-row-size)!important;height:var(--controls-row-size)!important;border-width:.25rem!important}.control-button-fixed{font-size:var(--button-font-size)!important;padding:0 var(--button-padding-x)!important;min-width:var(--button-min-width)!important;min-height:var(--button-height)!important}.control-button-fixed.menu-toggle{width:var(--button-height)!important;height:var(--button-height)!important;min-width:var(--button-height)!important;min-height:var(--button-height)!important;padding:0!important}.control-button-fixed.ready-button{font-size:1rem!important;min-width:9rem!important;min-height:var(--button-height)!important}.sort-button-fixed{font-size:var(--button-font-size)!important;padding:0 1.2rem!important;min-width:6rem!important;min-height:var(--button-height)!important}.control-button:hover{transform:translate(-.1875rem,-.1875rem)!important}.turn-display-content{font-size:.9rem!important;padding:.5rem 1rem!important;border-radius:0!important}.turn-display-active{border-radius:1rem!important;padding:.6rem 1.2rem!important;border-width:.1875rem!important}.my-cards-overlay{bottom:0!important;padding:1.25rem!important}.cards-container{gap:.5rem!important;padding:1rem 1rem 1.5rem!important;margin-top:.5rem!important;display:flex!important;justify-content:center!important;flex-wrap:wrap!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important;min-height:calc(var(--card-height) + 2rem)!important}.card{width:var(--card-width)!important;height:var(--card-height)!important;border:.3125rem solid var(--darker-bg)!important;border-radius:var(--card-radius)!important;cursor:pointer!important}.card-content{gap:.25rem!important;display:flex!important;flex-direction:column!important;align-items:center!important}.card-rank{font-size:2.2rem!important;line-height:1!important;margin-bottom:-.6rem!important}.card-suit{font-size:2.6rem!important;line-height:1!important}.corner-rank{font-size:1rem!important;line-height:1!important}.corner-suit{font-size:1.4rem!important;line-height:1!important}.card.selected,.card.selected:hover{transform:none!important;border-color:var(--darker-bg)!important}.card:hover{transform:translateY(-.8rem)!important}.card.dragging,.card.drag-over{transform:none!important;opacity:1!important}.drop-zone{width:var(--drop-zone-width)!important;height:var(--drop-zone-height)!important;border-radius:1rem!important}.drop-zone-overlay{top:-8rem!important}.drop-hint{font-size:1rem!important;top:.5rem!important}.chat-input-container{left:max(var(--edge-gap),env(safe-area-inset-left))!important;bottom:max(var(--edge-gap),env(safe-area-inset-bottom))!important;width:min(var(--chat-container-width),var(--chat-dynamic-max, 100vw))!important}.chat-input-wrapper{padding:0!important;border-radius:0!important;display:inline-flex!important;align-items:center!important;gap:var(--controls-gap)!important}.chat-input-field{font-size:var(--button-font-size)!important;padding:0 var(--button-padding-x)!important;border-radius:var(--button-radius)!important;height:var(--button-height)!important;flex:0 0 25vw!important;min-width:14rem!important}.chat-emoji-option img{width:var(--emoji-size)!important;height:var(--emoji-size)!important}.chat-emoji-btn,.chat-send-btn,.chat-sort-btn{width:var(--button-height)!important;min-width:var(--button-height)!important;min-height:var(--button-height)!important;font-size:calc(var(--button-font-size) * 1.2)!important;border-radius:var(--button-radius)!important}.chat-input-field,.chat-emoji-btn,.chat-send-btn{line-height:1!important;margin:0!important}@media (orientation: landscape) and (pointer: coarse) and (max-width: 62.5em){:root{--edge-gap: .5rem !important;--chat-container-width: min(12rem, 40vw) !important;--chat-field-basis: 6rem !important;--chat-field-min: 0 !important}.game-controls{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(var(--controls-col-min),1fr))!important;grid-auto-rows:var(--controls-row-size)!important;gap:var(--controls-gap)!important;width:min(100vw,18rem)!important;max-width:100vw!important;padding:.3rem!important;position:fixed!important;top:max(0rem,env(safe-area-inset-top))!important;right:max(0rem,env(safe-area-inset-right))!important;z-index:20!important}.game-controls .control-button{width:2.5rem!important;height:2.5rem!important;min-width:0!important;padding:0!important;font-size:.85rem!important}.graphics-quality svg{font-size:.7rem!important}.controls-expanded{display:grid!important;grid-template-columns:repeat(2,minmax(var(--controls-expanded-col-min),1fr))!important;gap:var(--controls-expanded-gap)!important;min-width:calc(var(--controls-expanded-col-min) * 2 + var(--controls-expanded-gap))!important;padding:var(--panel-padding)!important;position:fixed!important;top:max(var(--edge-gap),env(safe-area-inset-top))!important;right:max(var(--edge-gap),env(safe-area-inset-right))!important;transform:none!important;z-index:2000!important}.controls-expanded .control-button-fixed{min-width:auto!important;min-height:var(--button-height)!important;font-size:var(--button-font-size)!important}.control-button-fixed.menu-toggle{width:2.5rem!important;height:2.5rem!important;min-width:2.5rem!important;min-height:2.5rem!important;padding:0!important}.action-buttons-container{top:var(--action-top-offset)!important;gap:var(--controls-gap)!important}.action-button,.throw-hand-button{font-size:.7rem!important;padding:.4rem .8rem!important;min-width:4.5rem!important}.my-cards-overlay{padding:.8rem!important}.cards-container{gap:var(--cards-gap)!important;padding:var(--cards-padding) var(--cards-padding) .75rem var(--cards-padding)!important;min-height:calc(var(--card-height) * var(--card-scale) + 1.5rem)!important}.card{width:calc(var(--card-width) * var(--card-scale))!important;height:calc(var(--card-height) * var(--card-scale))!important;border-radius:calc(var(--card-radius) * var(--card-radius-scale))!important}.card-rank{font-size:1.6rem!important;margin-bottom:-.4rem!important}.card-suit{font-size:2rem!important}.corner-rank{font-size:.8rem!important}.corner-suit{font-size:1rem!important}.drop-zone{width:calc(var(--drop-zone-width) * var(--drop-scale))!important;height:calc(var(--drop-zone-height) * var(--drop-scale))!important}.drop-zone-overlay{top:var(--drop-overlay-top)!important}.drop-hint{font-size:.8rem!important}.chat-input-container{left:max(var(--edge-gap),env(safe-area-inset-left))!important;bottom:max(var(--edge-gap),env(safe-area-inset-bottom))!important;width:min(var(--chat-container-width),var(--chat-dynamic-max, 100vw))!important}.chat-input-field{font-size:var(--button-font-size)!important;padding:0 var(--button-padding-x)!important;height:var(--button-height)!important;flex:0 0 var(--chat-field-basis)!important;min-width:var(--chat-field-min)!important;width:var(--chat-field-basis)!important}.chat-emoji-option img{width:var(--emoji-size)!important;height:var(--emoji-size)!important}.chat-emoji-btn,.chat-send-btn{width:var(--button-height)!important;min-width:var(--button-height)!important;height:var(--button-height)!important;font-size:calc(var(--button-font-size) * 1.2)!important;padding:0!important}.preparation-modal{min-width:12rem!important;max-width:18rem!important;padding:.8rem .8rem 1rem!important}.preparation-modal h3{font-size:.85rem!important;margin:0 0 .6rem!important}.asset-picker-swatch,.asset-picker-swatch-inner{border-radius:.6rem!important}.ready-list{gap:.4rem!important;margin:.4rem 0 .9rem!important}.ready-item{padding:.4rem .7rem!important;gap:.5rem!important}.ready-indicator{width:1rem!important;height:1rem!important;border-radius:.25rem!important}.ready-name{font-size:.75rem!important}.control-button-fixed.ready-button{font-size:.85rem!important;min-width:8rem!important}.countdown{font-size:2rem!important}.preparation-modal.round-result{min-width:12rem!important;max-width:18rem!important;padding:.9rem .9rem 1rem!important}.round-loser-title{font-size:.8rem!important}.round-loser-name{font-size:1.3rem!important}.asset-picker-modal{min-width:12rem!important;max-width:22rem!important;padding:.8rem .8rem 1rem!important}.asset-picker-modal{width:20rem!important}.asset-picker-title{font-size:.85rem!important;margin-bottom:.6rem!important}.asset-picker-grid{grid-template-columns:repeat(3,minmax(5rem,1fr))!important;gap:.5rem!important}.asset-picker-swatch{aspect-ratio:1 / 1!important;border-width:.18rem!important;border-radius:.6rem!important}}@media (orientation: landscape) and (pointer: coarse) and (min-width: 30em) and (max-width: 60em){:root{--button-height: 2.8rem !important;--button-font-size: .85rem !important;--button-icon-size: 1.1rem !important;--edge-gap: .45rem !important;--controls-col-min: 2.5rem !important;--controls-row-size: 2.5rem !important;--controls-gap: .3rem !important;--controls-expanded-col-min: 5rem !important;--controls-expanded-gap: .3rem !important;--panel-padding: .3rem !important;--button-min-width: 4.5rem !important;--button-padding-x: .8rem !important;--chat-container-width: min(10rem, 38vw) !important;--chat-field-basis: 9rem !important;--chat-field-min: 0 !important;--chat-button-min-width: 1.6rem !important;--emoji-size: 1rem !important;--emoji-grid-cols: 4 !important;--cards-gap: .3rem !important;--cards-padding: .4rem !important;--card-scale: .79 !important;--card-radius-scale: .8 !important;--drop-overlay-top: -3.5rem !important;--drop-scale: .6 !important;--action-top-offset: -3rem !important}.game-controls .control-button{font-size:.85rem!important}.control-button-fixed{font-size:var(--button-font-size)!important;min-height:var(--button-height)!important}.control-button-fixed.menu-toggle{width:2.5rem!important;height:2.5rem!important;min-width:2.5rem!important;min-height:2.5rem!important;padding:0!important}.controls-expanded{grid-template-columns:repeat(2,minmax(5rem,1fr))!important;gap:.3rem!important}.cards-container{gap:.25rem!important;padding:.4rem .4rem .6rem!important;min-height:calc(var(--card-height) * .75 + 1.2rem)!important}.card{width:calc(var(--card-width) * .75)!important;height:calc(var(--card-height) * .74)!important;border-radius:calc(var(--card-radius) * .85)!important}.card-rank{font-size:1.5rem!important;margin-bottom:-.35rem!important}.card-suit{font-size:1.9rem!important}.corner-rank{font-size:.75rem!important}.corner-suit{font-size:1.2rem!important}.drop-zone{width:calc(var(--drop-zone-width) * .5)!important;height:calc(var(--drop-zone-height) * .55)!important}.drop-zone-overlay{top:-3.5rem!important}.drop-hint{font-size:.75rem!important}.chat-input-container{left:max(var(--edge-gap),env(safe-area-inset-left))!important;bottom:max(var(--edge-gap),env(safe-area-inset-bottom))!important;width:min(var(--chat-container-width),var(--chat-dynamic-max, 100vw))!important}.chat-input-field{flex:0 0 var(--chat-field-basis)!important;min-width:var(--chat-field-min)!important;width:var(--chat-field-basis)!important}.chat-emoji-btn,.chat-send-btn{width:var(--button-height)!important;min-width:var(--button-height)!important;font-size:calc(var(--button-font-size) * 1.2)!important}}@media (orientation: portrait) and (pointer: coarse) and (min-width: 24.375em) and (max-width: 26.875em){.chat-input-field{flex:1 1 auto!important;min-width:0!important;width:auto!important}:root{--button-height: 3.2rem !important;--button-font-size: .95rem !important;--button-icon-size: 1.3rem !important}.game-header-overlay{padding-top:max(.75rem,env(safe-area-inset-top))!important;padding-right:max(.75rem,env(safe-area-inset-right))!important;padding-bottom:.75rem!important;padding-left:max(.75rem,env(safe-area-inset-left))!important}.game-info span{font-size:.65rem!important;padding:.25rem .4rem!important;max-width:12rem!important}.control-button{font-size:.9rem!important;min-width:2.8rem!important;height:2.8rem!important;border-width:.1875rem!important}.control-button-fixed{font-size:.8rem!important;min-width:5.5rem!important;min-height:var(--button-height)!important}.control-button-fixed.menu-toggle{width:2.2rem!important;height:2.2rem!important;min-width:2.2rem!important;min-height:2.2rem!important;padding:0!important}.control-button-fixed.ready-button{font-size:.95rem!important;min-width:8rem!important;min-height:var(--button-height)!important}.turn-display-content{font-size:.8rem!important;padding:.4rem .8rem!important}.action-buttons-container{top:-3rem!important;gap:.5rem!important}.action-button,.throw-hand-button{font-size:.7rem!important;padding:.5rem .9rem!important;min-width:5.5rem!important}.my-cards-overlay{padding:1rem!important}.cards-container{gap:.35rem!important;padding:.5rem .5rem .9rem!important;min-height:calc(var(--card-height) * .74 + 1.8rem)!important}.card{width:calc(var(--card-width) * .71)!important;height:calc(var(--card-height) * .74)!important;border:.25rem solid var(--darker-bg)!important;border-radius:calc(var(--card-radius) * .9)!important}.card-rank{font-size:1.5rem!important;margin-bottom:-.35rem!important}.card-suit{font-size:1.9rem!important}.corner-rank{font-size:.8rem!important}.corner-suit{font-size:1.2rem!important}.drop-zone{width:calc(var(--drop-zone-width) * .5)!important;height:calc(var(--drop-zone-height) * .6)!important}.drop-zone-overlay{top:-3rem!important}.drop-hint{font-size:.8rem!important}.chat-input-container{left:max(1rem,env(safe-area-inset-left))!important;bottom:max(1rem,env(safe-area-inset-bottom))!important;width:min(16rem,90vw)!important}.preparation-modal{min-width:13rem!important;max-width:22rem!important;padding:.95rem!important}.preparation-modal h3{font-size:.95rem!important}.ready-list{gap:.5rem!important}.ready-item{padding:.5rem .85rem!important}.control-button-fixed.ready-button{font-size:.9rem!important;min-width:8.2rem!important}.countdown{font-size:2.2rem!important}.preparation-modal.round-result{min-width:13rem!important;max-width:20rem!important}.preparation-modal{min-width:14rem!important;max-width:22rem!important;padding:1rem!important}.preparation-modal h3{font-size:1rem!important;margin:0 0 .7rem!important}.ready-list{gap:.6rem!important;margin:.4rem 0 1rem!important}.ready-item{padding:.5rem .9rem!important;gap:.6rem!important}.ready-indicator{width:1.2rem!important;height:1.2rem!important;border-radius:.3rem!important}.ready-name{font-size:.85rem!important}.control-button-fixed.ready-button{font-size:.9rem!important;min-width:8.5rem!important}.countdown{font-size:2.4rem!important}.preparation-modal.round-result{min-width:14rem!important;max-width:20rem!important;padding:.9rem 1rem 1.1rem!important}.round-loser-title{font-size:.85rem!important}.round-loser-name{font-size:1.4rem!important}.asset-picker-modal{min-width:18rem!important;max-width:32rem!important;padding:1rem 1rem 1.2rem!important}.asset-picker-modal{width:24rem!important}.asset-picker-grid{grid-template-columns:repeat(3,minmax(6rem,1fr))!important;gap:.75rem!important}.asset-picker-swatch{aspect-ratio:1 / 1!important;border-width:.2rem!important;border-radius:.75rem!important}}@media (orientation: portrait) and (pointer: coarse) and (max-width: 62.5em){:root{--edge-gap: .6rem !important;--button-height: 2.6rem !important;--button-font-size: .85rem !important;--button-icon-size: 1.1rem !important;--menu-button-size: 2.6rem !important;--controls-row-size: 2.5rem !important;--controls-gap: .35rem !important;--button-min-width: 4.8rem !important;--chat-container-width: calc(100vw - (var(--edge-gap) * 2)) !important;--emoji-size: 3.2rem !important;--emoji-grid-cols: 5 !important}.game-header-overlay{padding-top:max(.5rem,env(safe-area-inset-top))!important;padding-right:max(.5rem,env(safe-area-inset-right))!important;padding-bottom:.5rem!important;padding-left:max(.5rem,env(safe-area-inset-left))!important}.game-info span{font-size:.6rem!important;padding:.2rem .4rem!important;max-width:12rem!important}.control-button{font-size:.85rem!important;min-width:var(--controls-row-size)!important;height:var(--controls-row-size)!important}.control-button-fixed{font-size:var(--button-font-size)!important;min-width:var(--button-min-width)!important;min-height:var(--button-height)!important;padding:0 .8rem!important}.control-button-fixed.menu-toggle{width:var(--menu-button-size)!important;height:var(--menu-button-size)!important;min-width:var(--menu-button-size)!important;min-height:var(--menu-button-size)!important;padding:0!important}.action-buttons-container{top:-3rem!important;gap:var(--controls-gap)!important}.action-button,.throw-hand-button{font-size:.7rem!important;padding:.5rem .8rem!important;min-width:5rem!important}.chat-input-container{left:0!important;right:0!important;bottom:var(--edge-gap)!important;width:100%!important;max-width:100%!important;padding-left:var(--edge-gap)!important;padding-right:var(--edge-gap)!important;box-sizing:border-box!important;overflow:visible!important}.chat-input-wrapper{width:100%!important;max-width:100%!important;gap:.25rem!important;overflow:visible!important;display:inline-flex!important;align-items:center!important}.chat-self-messages{max-width:100%!important;overflow:hidden!important}.chat-input-field{flex:1 1 auto!important;min-width:0!important;width:auto!important}.chat-emoji-btn,.chat-send-btn{width:var(--button-height)!important;min-width:var(--button-height)!important;height:var(--button-height)!important;font-size:var(--button-font-size)!important}.sort-button-fixed{display:none!important}.cards-container{gap:.25rem!important;padding:.35rem .35rem .75rem!important;min-height:calc(var(--card-height) * .74 + 1.5rem)!important}.card{width:calc(var(--card-width) * .7)!important;height:calc(var(--card-height) * .74)!important;border-radius:calc(var(--card-radius) * .82)!important}.card-rank{padding-left:.2rem;font-size:1.45rem!important;margin-bottom:-.8rem!important}.card-suit{font-size:1.9rem!important}.corner-rank{padding-left:.05rem;font-size:.75rem!important;margin-bottom:-.3rem!important}.corner-suit{font-size:1.2rem!important}.drop-zone{width:calc(var(--drop-zone-width) * .45)!important;height:calc(var(--drop-zone-height) * .5)!important}.drop-zone-overlay{top:-3.2rem!important}.drop-hint{font-size:.75rem!important}.my-cards-overlay{bottom:calc(var(--edge-gap) + var(--button-height) + .75rem)!important}.turn-display-overlay{top:calc(env(safe-area-inset-top) + 3.5rem)!important}.chat-sort-btn{display:inline-flex!important}}@media (min-width: 80em) and (pointer: fine){:root{--chat-container-width: min(24vw, 18rem) !important}.chat-input-field{flex:0 0 20rem!important;min-width:12rem!important;width:14rem!important}:root{--button-height: 3.4rem !important;--button-font-size: 1rem !important;--button-icon-size: 1.4rem !important}.game-header-overlay{padding-top:max(1.1rem,env(safe-area-inset-top))!important;padding-right:max(1.1rem,env(safe-area-inset-right))!important;padding-bottom:1.1rem!important;padding-left:max(1.1rem,env(safe-area-inset-left))!important}.game-info span{font-size:.8rem!important;padding:.3rem .6rem!important;max-width:16rem!important;border-radius:.3rem!important;border-width:.075rem!important}.control-button{font-size:1.2rem!important;min-width:3.2rem!important;height:3.2rem!important}.control-button-fixed{font-size:.95rem!important;min-width:6.5rem!important;min-height:var(--button-height)!important}.control-button-fixed.ready-button{font-size:1.05rem!important;min-width:10rem!important;min-height:var(--button-height)!important}.turn-display-content{font-size:.95rem!important;padding:.6rem 1.2rem!important}.turn-display-active{border-width:.2rem!important;padding:.8rem 1.4rem!important}.action-buttons-container{top:-4rem!important;gap:.9rem!important}.action-button,.throw-hand-button{font-size:.9rem!important;padding:.8rem 1.2rem!important;min-width:8rem!important}.sort-button-fixed{font-size:.9rem!important;padding:.9rem 1.4rem!important;min-width:6.5rem!important;bottom:2rem!important;right:2rem!important}.my-cards-overlay{padding:1.2rem 0 3.5rem!important}.cards-container{gap:.7rem!important;padding:1rem 1rem 1.25rem!important;margin-top:.6rem!important;max-width:45vw!important;min-height:calc(var(--card-height) * 1.05 + 2.5rem)!important}.card{width:calc(var(--card-width) * 1.07)!important;height:calc(var(--card-height) * 1.05)!important;border:.375rem solid var(--darker-bg)!important;border-radius:var(--card-radius)!important}.card-rank{font-size:2.4rem!important;margin-bottom:-.8rem!important}.card-suit{font-size:3rem!important}.corner-rank{font-size:1.3rem!important;margin-bottom:-.4rem!important}.corner-suit{font-size:2rem!important}.card-corner.top-left{top:.6rem!important;left:.6rem!important}.card-corner.bottom-right{bottom:.6rem!important;right:.6rem!important}.drop-zone{width:calc(var(--drop-zone-width) * 1.14)!important;height:var(--drop-zone-height)!important}.drop-zone-overlay{top:-8rem!important}.chat-input-container{width:min(var(--chat-container-width),var(--chat-dynamic-max, 100vw))!important;left:2rem!important;bottom:2rem!important}.control-button-fixed.menu-toggle{width:var(--button-height)!important;height:var(--button-height)!important;min-width:var(--button-height)!important;min-height:var(--button-height)!important;padding:0!important}}@media (min-width: 120em) and (pointer: fine){:root{--chat-container-width: min(22vw, 20rem) !important}.chat-input-field{flex:0 0 28rem!important;min-width:14rem!important;width:16rem!important}:root{--button-height: 3.6rem !important;--button-font-size: 1.05rem !important;--button-icon-size: 1.5rem !important}.game-header-overlay{padding-top:max(1.2rem,env(safe-area-inset-top))!important;padding-right:max(1.2rem,env(safe-area-inset-right))!important;padding-bottom:1.2rem!important;padding-left:max(1.2rem,env(safe-area-inset-left))!important}.game-info span{font-size:.9rem!important;padding:.35rem .65rem!important;max-width:18rem!important}.control-button{font-size:1.35rem!important;min-width:3.5rem!important;height:3.5rem!important;border-width:.1875rem!important}.control-button-fixed{font-size:1rem!important;min-width:7rem!important;min-height:var(--button-height)!important}.control-button-fixed.ready-button{font-size:1.2rem!important;min-width:11rem!important;min-height:var(--button-height)!important}.turn-display-content{font-size:1.05rem!important}.turn-display-active{border-width:.25rem!important;padding:.9rem 1.6rem!important}.action-buttons-container{top:-5rem!important;gap:1.1rem!important}.action-button,.throw-hand-button{font-size:1.1rem!important;padding:1rem 1.6rem!important;min-width:10rem!important}.sort-button-fixed{font-size:1rem!important;padding:1rem 1.6rem!important;min-width:7rem!important;bottom:2rem!important;right:2rem!important}.my-cards-overlay{padding:1.5rem 0 4.5rem!important}.cards-container{gap:.8rem!important;padding:1rem 1rem 1.5rem!important;max-width:45vw!important;min-height:calc(var(--card-height) * 1.4 + 3rem)!important}.card{width:calc(var(--card-width) * 1.45)!important;height:calc(var(--card-height) * 1.4)!important;border:.5rem solid var(--darker-bg)!important}.card-rank{font-size:2.8rem!important;margin-bottom:-.9rem!important}.card-suit{font-size:3.4rem!important}.corner-rank{font-size:1.5rem!important;margin-bottom:-.5rem!important}.corner-suit{font-size:2.2rem!important}.card-corner.top-left{top:.6rem!important;left:.6rem!important}.card-corner.bottom-right{bottom:.6rem!important;right:.6rem!important}.drop-zone{width:calc(var(--drop-zone-width) * 1.43)!important;height:calc(var(--drop-zone-height) * 1.4)!important}.drop-zone-overlay{top:-12rem!important}.drop-hint{font-size:1.5rem!important}.control-button-fixed.menu-toggle{width:var(--button-height)!important;height:var(--button-height)!important;min-width:var(--button-height)!important;min-height:var(--button-height)!important;padding:0!important}}@media (min-width: 240em) and (pointer: fine){:root{--chat-container-width: min(20vw, 22rem) !important}.chat-input-field{flex:0 0 35rem!important;min-width:16rem!important;width:18rem!important}:root{--button-height: 3.9rem !important;--button-font-size: 1.15rem !important;--button-icon-size: 1.65rem !important}.game-header-overlay{padding-top:max(1.3rem,env(safe-area-inset-top))!important;padding-right:max(1.3rem,env(safe-area-inset-right))!important;padding-bottom:1.3rem!important;padding-left:max(1.3rem,env(safe-area-inset-left))!important}.game-info span{font-size:1rem!important;padding:.4rem .7rem!important;max-width:20rem!important}.control-button{font-size:1.56rem!important;min-width:3.9rem!important;height:3.9rem!important;border-width:.1625rem!important}.control-button-fixed{font-size:1.1rem!important;min-width:7.8rem!important;min-height:var(--button-height)!important}.control-button-fixed.ready-button{font-size:1.35rem!important;min-width:13rem!important;min-height:var(--button-height)!important}.turn-display-content{font-size:1.2rem!important;padding:.7rem 1.3rem!important}.turn-display-active{border-width:.25rem!important;padding:1rem 1.8rem!important}.action-buttons-container{top:-6rem!important;gap:1.2rem!important}.action-button,.throw-hand-button{font-size:1.25rem!important;padding:1.2rem 1.8rem!important;min-width:11rem!important}.sort-button-fixed{font-size:1.05rem!important;padding:1.05rem 1.6rem!important;min-width:7.8rem!important;bottom:2rem!important;right:2rem!important}.my-cards-overlay{padding:2rem 0 4.8rem!important}.cards-container{gap:1rem!important;padding:1rem 1rem 1.75rem!important;max-width:45vw!important;min-height:calc(var(--card-height) * 1.68 + 3.5rem)!important}.card{width:calc(var(--card-width) * 1.71)!important;height:calc(var(--card-height) * 1.68)!important;border:.5rem solid var(--darker-bg)!important;border-radius:calc(var(--card-radius) * 1.2)!important}.card-rank{font-size:4rem!important;margin-bottom:-1.2rem!important}.card-suit{font-size:5rem!important}.corner-rank{font-size:2.2rem!important;margin-bottom:-.7rem!important}.corner-suit{font-size:2.8rem!important}.card-corner.top-left{top:.6rem!important;left:.6rem!important}.card-corner.bottom-right{bottom:.6rem!important;right:.6rem!important}.drop-zone{width:calc(var(--drop-zone-width) * 1.71)!important;height:calc(var(--drop-zone-height) * 1.6)!important}.drop-zone-overlay{top:-14rem!important}.drop-hint{font-size:1.8rem!important}.control-button-fixed.menu-toggle{width:var(--button-height)!important;height:var(--button-height)!important;min-width:var(--button-height)!important;min-height:var(--button-height)!important;padding:0!important}}@media (max-width: 62.5em){.card:hover{transform:none!important}}@media (max-width: 900px){.afk-return-button{font-size:1.2rem!important;min-width:16rem!important;min-height:3.5rem!important;padding:1.2rem 2.5rem!important}}@media (max-width: 600px){.afk-return-button{font-size:1rem!important;min-width:14rem!important;min-height:3rem!important;padding:1rem 2rem!important}}@media (max-width: 480px){.afk-return-button{font-size:.9rem!important;min-width:12rem!important;min-height:2.8rem!important;padding:.8rem 1.5rem!important}}.asset-picker-modal{min-width:16rem;max-width:28rem;max-height:70vh;overflow-y:auto;padding:1rem 1rem 1.25rem}.asset-picker-title{margin:0 0 .75rem;text-align:center;font-size:1rem}.asset-picker-subtitle{margin:.75rem 0 .5rem;text-align:left;font-size:.95rem}.asset-picker-grid{display:grid;grid-template-columns:repeat(3,minmax(6rem,1fr));gap:.75rem}.asset-picker-swatch{padding:0;width:100%;height:auto;aspect-ratio:1 / 1;border-radius:.75rem!important;border:.2rem solid rgba(255,255,255,.9);box-shadow:0 2px 10px #00000059,inset 0 0 .5rem #0003;overflow:hidden}.asset-picker-swatch-card{aspect-ratio:.7 / 1!important}.asset-picker-swatch:focus{outline:none;box-shadow:0 0 0 .2rem var(--theme-shadow-glow),0 2px 10px #00000059,inset 0 0 .5rem #0003}.asset-picker-swatch:hover{transform:translate(-2px,-2px)}.asset-picker-swatch-inner{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:.55rem!important;display:flex;align-items:center;justify-content:center;padding:.4rem}.asset-picker-swatch.asset-picker-swatch-card .asset-picker-img{width:100%!important;height:100%!important;object-fit:cover!important}.asset-picker-img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:cover;display:block}:root{--theme-bg-panel: linear-gradient(45deg, #3A3A3A, #2A2A2A);--theme-border-strong: #FFD700;--theme-shadow-glow: rgba(255, 215, 0, .6);--theme-text-primary: #ffffff;--theme-text-secondary: #cccccc;--theme-accent-1: #FFD700;--theme-accent-2: #FFA500;--theme-button-bg: linear-gradient(45deg, #3A3A3A, #2A2A2A);--theme-button-border: #FFD700;--theme-button-glow: rgba(255, 215, 0, .6);--theme-danger-1: #8B0000;--theme-danger-2: #DC143C;--theme-danger-border: #FF4500}.theme-retrogrid{--theme-bg-panel: linear-gradient(45deg, #2a2038, #1a0b2a);--theme-border-strong: #9c27b0;--theme-shadow-glow: rgba(156, 39, 176, .45);--theme-text-primary: #f3e5f5;--theme-text-secondary: #d1c4e9;--theme-accent-1: #9c27b0;--theme-accent-2: #7b1fa2;--theme-button-bg: linear-gradient(45deg, #2a2038, #1a0b2a);--theme-button-border: #9c27b0;--theme-button-glow: rgba(156, 39, 176, .45);--theme-danger-1: #6a1b9a;--theme-danger-2: #8e24aa;--theme-danger-border: #ab47bc}.theme-retrogrid .turn-display-content{color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.9)}.theme-retrogrid .turn-display-active{background:var(--theme-button-bg)!important;border:4px solid var(--theme-button-border)!important;box-shadow:0 0 20px var(--theme-button-glow)!important;animation:turnDisplayButtonPulse 1.5s infinite!important}.theme-dots{--theme-bg-panel: linear-gradient(45deg, #15161a, #0f1013);--theme-border-strong: #bfc3c9;--theme-shadow-glow: rgba(191, 195, 201, .3);--theme-text-primary: #eceff4;--theme-text-secondary: #c7ccd3;--theme-accent-1: #bfc3c9;--theme-accent-2: #9aa1ab;--theme-button-bg: linear-gradient(45deg, #1a1c21, #121317);--theme-button-border: #bfc3c9;--theme-button-glow: rgba(191, 195, 201, .3);--theme-danger-1: #8B0000;--theme-danger-2: #DC143C;--theme-danger-border: #FF4500}.theme-dots .turn-display-content{color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.9)}.theme-dots .turn-display-active{background:var(--theme-button-bg)!important;border:4px solid var(--theme-button-border)!important;box-shadow:0 0 20px var(--theme-button-glow)!important;animation:turnDisplayButtonPulse 1.5s infinite!important;color:#fff!important;text-shadow:2px 2px 4px rgba(0,0,0,.9)!important}.theme-dots .control-button-fixed.reset-settings:hover{box-shadow:0 0 30px #ff4500d9!important}.theme-dots .stars-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:transparent}.theme-dots .stars-canvas{display:block;width:100%;height:100%}.theme-darkStripes{--theme-bg-panel: linear-gradient(45deg, #15161a, #0f1013);--theme-border-strong: #000000;--theme-shadow-glow: rgba(255, 255, 255, .35);--theme-text-primary: #eceff4;--theme-text-secondary: #c7ccd3;--theme-accent-1: #bfc3c9;--theme-accent-2: #9aa1ab;--theme-button-bg: linear-gradient(45deg, #1a1c21, #121317);--theme-button-border: #000000;--theme-button-glow: rgba(255, 255, 255, .35);--theme-danger-1: #5a1b1b;--theme-danger-2: #7a2a2a;--theme-danger-border: #a44a4a}.theme-darkStripes .turn-display-content{color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.9)}.theme-darkStripes .turn-display-active{background:var(--theme-button-bg)!important;border:4px solid var(--theme-button-border)!important;box-shadow:0 0 20px var(--theme-button-glow)!important;animation:turnDisplayButtonPulse 1.5s infinite!important;color:#fff!important;text-shadow:2px 2px 4px rgba(0,0,0,.9)!important}.theme-matrix{--theme-bg-panel: linear-gradient(45deg, #0a0a0a, #000000);--theme-border-strong: #00ff41;--theme-shadow-glow: rgba(0, 255, 128, .35);--theme-text-primary: #e6ffe6;--theme-text-secondary: #b6f7c8;--theme-accent-1: #00ff41;--theme-accent-2: #00cc66;--theme-button-bg: linear-gradient(45deg, #0e0e0e, #000000);--theme-button-border: #00ff41;--theme-button-glow: rgba(0, 255, 65, .35);--theme-danger-1: #00663d;--theme-danger-2: #0b8f59;--theme-danger-border: #00cc66}.theme-matrix .turn-display-content{color:#e6ffe6;text-shadow:2px 2px 4px rgba(0,0,0,.9)}.theme-matrix .turn-display-active{background:var(--theme-button-bg)!important;border:4px solid var(--theme-button-border)!important;box-shadow:0 0 20px var(--theme-button-glow)!important;animation:turnDisplayButtonPulse 1.5s infinite!important;color:#e6ffe6!important;text-shadow:2px 2px 4px rgba(0,0,0,.9)!important}.theme-matrix .matrix-rain-layer{position:absolute;top:0;right:0;bottom:0;left:0;background:#000;z-index:0;pointer-events:none}.theme-matrix .matrix-rain-canvas{display:block;width:100%;height:100%;image-rendering:pixelated}.game-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;transition:opacity .4s ease-in-out}.game-modal-overlay.visible{opacity:1}.game-modal-overlay.closing{opacity:0}.game-modal{background:var(--theme-bg-panel);border:.25rem solid var(--theme-border-strong);border-radius:1.5rem;padding:2.5rem;color:var(--theme-text-primary);text-align:center;box-shadow:0 0 2rem var(--theme-shadow-glow),inset 0 0 2rem #0000004d;min-width:32rem;max-width:50rem;width:min(90vw,44rem);max-height:85vh;overflow-y:auto;opacity:0;transition:opacity .4s ease-in-out}.game-modal.visible{opacity:1}.game-modal.closing{opacity:0}.modal-anim-wrapper{overflow:visible;transition:height .25s ease}.game-modal-title{font-size:1.6rem;color:#fff;margin:0 0 2rem;text-shadow:2px 2px 4px rgba(0,0,0,.8)}.modal-tabs{position:relative;display:flex;margin-bottom:1rem;border:.25rem solid var(--theme-button-border);border-radius:.5rem;overflow:hidden;background:rgba(0,0,0,.25);box-shadow:0 .5rem 1rem #0006}.tab-slider{position:absolute;top:0;left:0;width:50%;height:100%;background:var(--theme-accent-1);border-radius:.25rem;transition:transform .3s ease;z-index:1;box-shadow:0 0 1.5rem var(--theme-accent-1)}.tab-slider.join{transform:translate(100%)}.tab-button{flex:1;background:transparent;color:var(--theme-text-primary);padding:1.2rem;font-family:"Press Start 2P",monospace;font-size:.8rem;cursor:pointer;transition:all .2s ease;border:none;text-transform:uppercase;position:relative;z-index:2}.tab-button:hover{transform:scale(1.05)}.tab-button.active{color:#000;font-weight:700}.modal-button{background:var(--theme-button-bg);border:.25rem solid var(--theme-button-border);color:var(--theme-text-primary);padding:1.2rem 2rem;font-family:"Press Start 2P",monospace;font-size:.9rem;cursor:pointer;transition:all .2s ease;border-radius:.5rem;box-shadow:0 .5rem 1rem #0006;flex:1;text-transform:uppercase;font-weight:700}.modal-button:hover{transform:scale(1.05);box-shadow:0 0 1.5rem var(--theme-shadow-glow)}.modal-button:active{transform:translateY(2px)}.modal-button.primary{background:var(--theme-accent-1);color:#000;border-color:var(--theme-accent-1)}.modal-button.primary:hover{transform:scale(1.05);box-shadow:0 0 1.5rem var(--theme-accent-1)}.modal-button.secondary{background:var(--theme-bg-panel);border-color:var(--theme-border-strong)}.modal-button.name-generator{background:var(--theme-accent-1);color:#000;border-color:var(--theme-accent-1);font-size:.8rem;padding:1rem 1.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.modal-button.name-generator:hover{transform:scale(1.05);box-shadow:0 0 1.5rem var(--theme-accent-1)}@media (max-width: 767px){.tab-button:hover{transform:none}.modal-button:hover,.modal-button.primary:hover,.modal-button.name-generator:hover,.lobby-item:hover{transform:none;box-shadow:none}}.modal-button.name-generator.generating{background:var(--theme-bg-panel);color:var(--theme-text-secondary);border-color:var(--theme-border-strong);cursor:not-allowed;animation:generatingPulse .5s ease-in-out infinite alternate}@keyframes generatingPulse{0%{opacity:.7}to{opacity:1}}.error-message{margin-bottom:1rem;padding:1.2rem;background:#8b0000;color:#fff;border-radius:.5rem;font-size:.9rem;text-align:center;border:.25rem solid #f00;box-shadow:0 0 1rem #f00c;font-family:"Press Start 2P",monospace;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.8);animation:errorBlink .5s ease-in-out infinite alternate;position:relative;background-image:repeating-linear-gradient(45deg,transparent,transparent .5rem,rgba(255,0,0,.1) .5rem,rgba(255,0,0,.1) 1rem)}@keyframes errorBlink{0%{background:#8b0000;background-image:repeating-linear-gradient(45deg,transparent,transparent .5rem,rgba(255,0,0,.1) .5rem,rgba(255,0,0,.1) 1rem);border-color:red;box-shadow:0 0 1rem #f00c}to{background:#a00000;background-image:repeating-linear-gradient(45deg,transparent,transparent .5rem,rgba(255,0,0,.2) .5rem,rgba(255,0,0,.2) 1rem);border-color:red;box-shadow:0 0 2rem red}}.modal-form{display:flex;flex-direction:column;gap:1.2rem}.input-group{display:flex;flex-direction:column;gap:.6rem}.input-group label{font-size:.9rem;color:var(--theme-text-secondary);font-weight:700;text-align:left}.modal-input{background:var(--theme-bg-panel);border:.25rem solid var(--theme-border-strong);color:var(--theme-text-primary);padding:1.2rem 1.5rem;font-family:"Press Start 2P",monospace;font-size:.9rem;outline:none;transition:all .2s ease;border-radius:.5rem;box-shadow:0 .5rem 1rem #0006;text-align:center}.modal-input:focus{border-color:var(--theme-accent-1);box-shadow:0 0 1.5rem var(--theme-shadow-glow);background:rgba(255,255,255,.05);transform:scale(1.02)}@media (max-width: 767px){.modal-input:focus{transform:none}}.modal-input::placeholder{color:var(--theme-text-secondary);opacity:.6}.modal-actions{display:flex;gap:1.2rem;justify-content:flex-end;margin-top:0rem}.coming-soon{margin:1.5rem 0;text-align:center;color:var(--theme-text-secondary);font-size:1rem}.coming-soon p{margin-bottom:1.5rem;padding:1rem;background:rgba(255,255,255,.05);border-radius:.5rem;box-shadow:0 .5rem 1rem #0006}.privacy-toggle{display:flex;align-items:center;cursor:pointer;width:100%;justify-content:space-between}.toggle-switch{width:4.5rem;height:2.2rem;border-radius:1.1rem;border:.25rem solid #000;background:#000;position:relative;transition:all .2s ease;flex-shrink:0}.toggle-switch.on{background:var(--theme-accent-1);border-color:var(--theme-accent-1)}.toggle-knob{width:1.6rem;height:1.6rem;border-radius:50%;background:var(--theme-accent-1);position:absolute;top:50%;left:.3rem;transform:translateY(-50%);transition:left .2s ease}.toggle-switch.on .toggle-knob{left:2.4rem;background:#000}.privacy-toggle span{color:var(--theme-text-secondary);font-size:.85rem;flex:1;text-align:center}.privacy-toggle span.active{color:var(--theme-accent-1);font-weight:700;text-shadow:-1px 4px 1px rgba(0,0,0)}.lobby-browser{display:flex;flex-direction:column;gap:.6rem}.lobby-browser-panel{border:.25rem solid var(--theme-border-strong);border-radius:.5rem;padding:.8rem;background:rgba(0,0,0,.2);box-shadow:0 .5rem 1rem #0006}.lobby-list{display:flex;flex-direction:column;gap:.6rem;max-height:14rem;overflow-y:auto}.lobby-empty{color:var(--theme-text-secondary);font-size:.9rem;text-align:center;padding:.5rem}.lobby-item{display:flex;justify-content:space-between;align-items:center;background:var(--theme-bg-panel);border:.25rem solid var(--theme-border-strong);color:var(--theme-text-primary);padding:.8rem 1rem;border-radius:.5rem;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.lobby-item:hover{transform:scale(1.02);box-shadow:0 0 1rem var(--theme-shadow-glow)}.lobby-item-title{font-weight:700}.lobby-item-meta{display:flex;gap:.8rem;align-items:center}.status-pill{padding:.2rem .5rem;border-radius:.4rem;font-size:.75rem;border:.2rem solid var(--theme-border-strong)}.status-pill.playing{background:#ffc107;color:#000;border-color:#ffc107}.status-pill.waiting{background:#2ecc71;color:#000;border-color:#2ecc71}.count-badge{font-size:.8rem;color:var(--theme-text-secondary)}.search-input{margin-bottom:.4rem}.mobile-privacy-toggle{display:flex;align-items:center;gap:.8rem;margin-bottom:1.2rem}.public-join-container{display:flex;flex-direction:column;gap:1.2rem}.lobby-list-container{border:.25rem solid var(--theme-border-strong);border-radius:.5rem;background:rgba(0,0,0,.2);box-shadow:0 .5rem 1rem #0006;overflow:hidden}.lobby-list-header{background:var(--theme-bg-panel);padding:.8rem 1rem;border-bottom:.25rem solid var(--theme-border-strong);font-weight:700;color:var(--theme-text-primary)}.lobby-list-content{max-height:12rem;overflow-y:auto;padding:.8rem;display:flex;flex-direction:column;gap:.6rem}.desktop-lobby-panel{position:fixed;top:50%;right:2rem;transform:translateY(-50%);width:20rem;height:80vh;background:var(--theme-bg-panel);border:.25rem solid var(--theme-border-strong);border-radius:1rem;box-shadow:0 0 2rem var(--theme-shadow-glow);display:flex;flex-direction:column;z-index:9999}.desktop-lobby-header{background:rgba(0,0,0,.2);padding:1rem;border-bottom:.25rem solid var(--theme-border-strong);display:flex;flex-direction:column;gap:.8rem}.desktop-lobby-header span{font-weight:700;color:var(--theme-text-primary);font-size:1rem}.desktop-search-input{background:var(--theme-bg-panel);border:.25rem solid var(--theme-border-strong);color:var(--theme-text-primary);padding:.8rem 1rem;font-family:"Press Start 2P",monospace;font-size:.8rem;outline:none;transition:all .2s ease;border-radius:.5rem;box-shadow:0 .5rem 1rem #0006}.desktop-search-input:focus{border-color:var(--theme-accent-1);box-shadow:0 0 1.5rem var(--theme-shadow-glow)}.desktop-search-input::placeholder{color:var(--theme-text-secondary);opacity:.6}.desktop-lobby-list{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.8rem}@media (max-width: 1199px){.desktop-lobby-panel,.desktop-join-form{display:none}}@media (min-width: 1200px){.mobile-privacy-toggle,.mobile-join-content{display:none}}.mobile-private-form.hidden,.public-join-container.hidden{display:none}.mobile-private-form.visible,.public-join-container.visible{display:flex;flex-direction:column}@media (max-width: 1199px) and (min-width: 768px){.game-modal{min-width:20rem;max-width:32rem;padding:1.5rem}.game-modal-title{font-size:1.2rem}.tab-button{padding:.8rem;font-size:.6rem}.tab-slider{border-radius:.2rem}.modal-input{padding:.8rem 1rem;font-size:.7rem}.modal-button{font-size:.9rem;padding:.8rem 1.2rem}.modal-button.name-generator{font-size:.7rem;padding:.8rem 1rem}.rule-item{font-size:.8rem}}@media (max-width: 767px) and (min-width: 481px){.game-modal{min-width:18rem;max-width:28rem;padding:1.25rem}.game-modal-title{font-size:1.3rem;margin-bottom:1.5rem}.tab-button{padding:.7rem;font-size:.55rem}.tab-slider{border-radius:.15rem}.modal-input{padding:1.2rem 1rem;font-size:.65rem;min-height:3.5rem}.modal-button{font-size:.9rem;padding:1.2rem 1.5rem;min-height:3.5rem}.modal-button.name-generator{font-size:.65rem;padding:1rem 1.2rem;min-height:3.5rem}.rule-item{font-size:.75rem}}@media (max-width: 480px){.game-modal-overlay{align-items:flex-start;padding:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.game-modal{min-width:100vw;max-width:100vw;width:100vw;height:100vh;max-height:100vh;border-radius:0;border:none;padding:1rem;margin:0;display:flex;flex-direction:column;position:relative;overflow:hidden;background:transparent}.modal-open .menu-panel,.modal-open .menu-header-overlay{opacity:0;pointer-events:none;transition:opacity .4s ease-in-out}.modal-open .background-cards{opacity:0;transition:opacity .4s ease-in-out}.menu-panel,.menu-header-overlay{opacity:1;pointer-events:auto;transition:opacity .4s ease-in-out}.background-cards{opacity:1;transition:opacity .4s ease-in-out}.game-modal{min-width:100vw;max-width:100vw;width:100vw;height:100vh;max-height:100vh;border-radius:0;border:none;padding:1rem;margin:0;display:flex;flex-direction:column;position:relative;overflow:hidden}.game-modal-title{font-size:1.8rem;margin-bottom:1.2rem;margin-top:1rem}.tab-button{padding:.6rem;font-size:.5rem}.tab-slider{border-radius:.1rem}.modal-input{padding:1.5rem 1rem;font-size:.6rem;min-height:4rem}.modal-button{font-size:.9rem;padding:1.5rem 1.2rem;min-height:4rem}.modal-button.name-generator{font-size:.8rem;padding:1.2rem 1rem;min-height:4rem}.rule-item{font-size:.7rem}.game-rules{display:none}.modal-anim-wrapper{flex:1;overflow-y:auto;overflow-x:hidden;padding-bottom:6rem}.modal-actions{position:fixed;bottom:0;left:0;right:0;background:var(--theme-bg-panel);padding:1rem;margin:0;z-index:10001;box-shadow:0 -.5rem 1rem #0006}.lobby-browser-panel{max-height:20vh}.lobby-list{max-height:15vh}}.background-cards{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.background-card{position:absolute;width:9rem;height:12.6rem;opacity:1;filter:drop-shadow(.5rem .5rem 1rem rgba(0,0,0,.7));transition:transform .3s ease}.card-image{width:100%;height:100%;object-fit:cover;border-radius:.5rem;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}@media (max-width: 1199px) and (min-width: 768px){.background-card{width:6rem;height:8.4rem}}@media (max-width: 767px) and (min-width: 481px){.background-card{width:6rem;height:8.4rem}}@media (max-width: 480px){.background-card{width:5rem;height:7rem}}@media (max-width: 360px){.background-card{width:4rem;height:5.6rem}}.lobby{width:100%;height:100%;height:100dvh;display:flex;justify-content:center;align-items:center;padding:20px;overflow:hidden}.lobby-container{background:#3A3A3A;border:8px solid #1A1A1A;border-radius:0;padding:40px;max-width:800px;width:100%;box-shadow:0 0 0 4px #4a4a4a,0 0 0 8px #1a1a1a,12px 12px #0a0a0a;position:relative;overflow:hidden}.lobby-container:before{content:"";position:absolute;top:0;left:0;right:0;height:8px;background:repeating-linear-gradient(90deg,#1A1A1A 0px,#1A1A1A 4px,#3A3A3A 4px,#3A3A3A 8px)}.lobby-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:6px solid #1A1A1A;position:relative}.lobby-title-section{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.lobby-header:after{content:"";position:absolute;bottom:-6px;left:0;right:0;height:6px;background:repeating-linear-gradient(90deg,#1A1A1A 0px,#1A1A1A 4px,#3A3A3A 4px,#3A3A3A 8px)}.lobby-header h2{color:var(--primary-color);font-size:24px;text-transform:uppercase;letter-spacing:2px;text-shadow:3px 3px 0px var(--darker-bg)}.lobby-name{text-align:center;margin:10px 0}.lobby-name h3{color:#fff;font-size:20px;font-weight:700;text-shadow:2px 2px 4px rgba(0,0,0,.8);margin:0;padding:8px 16px;background:rgba(0,0,0,.3);border-radius:4px;border:2px solid rgba(255,255,255,.1)}.lobby-code-section{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.lobby-code{display:flex;align-items:center;gap:12px;font-size:14px}.code-display{display:flex;align-items:center;gap:8px;background:#2A2A2A;border:6px solid #1A1A1A;border-radius:0;padding:12px 16px;box-shadow:0 0 0 2px #4a4a4a,6px 6px #0a0a0a;position:relative}.code-display:before{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:repeating-linear-gradient(45deg,transparent 0px,transparent 2px,rgba(255,255,255,.05) 2px,rgba(255,255,255,.05) 4px);pointer-events:none}.code-text{font-family:Courier New,monospace;font-size:18px;font-weight:700;color:var(--accent-color);letter-spacing:2px;text-shadow:2px 2px 0px var(--darker-bg)}.copy-button{background:#D4AF37;border:6px solid #D4AF37;color:#1a1a1a;font-size:16px;cursor:pointer;padding:8px;width:40px;height:40px;border-radius:0;transition:all .1s steps(2);box-shadow:0 0 0 2px #4a4a4a,6px 6px #0a0a0a;position:relative;font-weight:700;display:flex;align-items:center;justify-content:center}.copy-button.copied{background:#27AE60;border-color:#27ae60;color:#fff}.copy-button:before{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:repeating-linear-gradient(45deg,transparent 0px,transparent 2px,rgba(255,255,255,.1) 2px,rgba(255,255,255,.1) 4px);pointer-events:none}.copy-button:hover{background:#B8860B;border-color:#b8860b;transform:translate(-4px,-4px);box-shadow:0 0 0 2px #4a4a4a,10px 10px #0a0a0a}.copy-button.copied:hover{background:#229954;border-color:#229954}.copy-button:active{transform:translate(0);box-shadow:0 0 0 2px #4a4a4a,2px 2px #0a0a0a,inset 4px 4px #0006,inset -1px -1px #ffffff1a;background:#CD853F;border-color:peru}.copy-button.copied:active{background:#1E8449;border-color:#1e8449}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.players-section{margin-bottom:30px}.players-section h3{color:var(--secondary-color);font-size:18px;margin-bottom:20px;text-transform:uppercase;letter-spacing:1px;text-shadow:2px 2px 0px var(--darker-bg)}.players-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:600px;margin:0 auto}.player-card{background:#2A2A2A;border:6px solid #1A1A1A;border-radius:0;padding:20px;min-height:100px;transition:all .1s steps(3);position:relative;box-shadow:0 0 0 2px #4a4a4a,8px 8px #2a2a2a;display:flex;flex-direction:column;justify-content:space-between}.player-card.ready{border-color:#27ae60}.player-card.in-game{border-color:#e74c3c;box-shadow:0 0 0 2px #4a4a4a,8px 8px #2a2a2a,0 0 8px #e74c3c66}.player-card:before{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:repeating-linear-gradient(45deg,transparent 0px,transparent 2px,rgba(255,255,255,.03) 2px,rgba(255,255,255,.03) 4px);pointer-events:none}.player-card:hover,.player-card.ready:hover{transform:translate(-6px,-6px);box-shadow:0 0 0 2px #4a4a4a,14px 14px #2a2a2a}.player-card.current-player:hover{transform:translate(-6px,-6px)!important;box-shadow:0 0 0 2px #4a4a4a,14px 14px #2a2a2a!important}.player-card.current-player{border-color:#d4af37;box-shadow:0 0 0 2px #4a4a4a,8px 8px #2a2a2a}.player-card.current-player.ready{border-color:#27ae60}.player-card.empty-slot{border-style:dashed;border-color:#4a4a4a;opacity:.6;display:flex;align-items:center;justify-content:center;min-height:100px}.empty-slot-text{color:var(--text-light);font-size:12px;text-align:center;opacity:.7;text-shadow:1px 1px 0px var(--darker-bg)}.player-info{display:flex;flex-direction:column;gap:10px}.player-name{font-size:14px;font-weight:700;color:#fff;display:flex;align-items:center;gap:8px;text-shadow:1px 1px 0px #0A0A0A}.player-emoji{font-size:20px;filter:drop-shadow(2px 2px 0px #0A0A0A);animation:emojiBounce 2s steps(4) infinite}@keyframes emojiBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.host-badge{font-size:16px;animation:pixelPulse 1s steps(2) infinite;filter:drop-shadow(0 0 4px var(--accent-color))}.bot-badge{font-size:16px;color:var(--secondary-color);filter:drop-shadow(0 0 4px var(--secondary-color))}.player-status{font-size:12px;text-transform:uppercase;letter-spacing:1px;font-weight:700;text-shadow:1px 1px 0px #0A0A0A}.player-status.in-game{color:#e74c3c}.player-status.afk{color:#e67e22;animation:afkBlink 2s steps(2) infinite}@keyframes afkBlink{0%,to{text-shadow:1px 1px 0px #0A0A0A,0 0 4px #E67E22}50%{text-shadow:1px 1px 0px #0A0A0A,0 0 8px #E67E22,0 0 12px #E67E22}}.immersion-indicator{display:flex;gap:4px;margin-top:8px}.immersion-seg{width:.6rem;height:.4rem;background:#555;border:.125rem solid #1A1A1A;box-shadow:0 0 0 .0625rem #4a4a4a}.immersion-seg.filled{background:#8B4513;box-shadow:0 0 0 1px #d4af37,inset 0 0 4px #d4af3799}.player-status.ready{color:#27ae60;animation:readyGlow 1s steps(3) infinite}@keyframes readyGlow{0%,to{text-shadow:1px 1px 0px #0A0A0A,0 0 4px #27AE60}50%{text-shadow:1px 1px 0px #0A0A0A,0 0 8px #27AE60,0 0 12px #27AE60}}.bot-difficulty{margin-top:10px;font-size:10px;color:#2ecc71;text-align:center;padding:6px 10px;background:#1A1A1A;border:4px solid #2ECC71;border-radius:0;font-weight:700;box-shadow:0 0 0 2px #4a4a4a,4px 4px #0a0a0a;position:relative}.bot-difficulty:before{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:repeating-linear-gradient(45deg,transparent 0px,transparent 2px,rgba(46,204,113,.1) 2px,rgba(46,204,113,.1) 4px);pointer-events:none}.lobby-actions{display:flex;gap:16px;margin-bottom:30px;flex-wrap:wrap;justify-content:center;align-items:flex-start}@media (min-width: 768px){.lobby-actions{flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:center;gap:16px}}.ready-button{background:#E67E22;border-color:#e67e22;box-shadow:0 0 0 2px #4a4a4a,6px 6px #0a0a0a;white-space:nowrap;overflow:visible}.ready-button.ready{background:#27AE60;border-color:#1e8449;box-shadow:0 0 0 2px #4a4a4a,6px 6px #0a0a0a}.ready-button.ready:hover{background:#1E8449;border-color:#145a32;transform:translate(-4px,-4px);box-shadow:0 0 0 2px #4a4a4a,10px 10px #0a0a0a}.start-button{background:#D4AF37;border-color:#d4af37;font-size:14px;padding:20px;box-shadow:0 0 0 2px #4a4a4a,6px 6px #0a0a0a;position:relative;font-weight:700;white-space:nowrap;overflow:visible}.start-button:before{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:repeating-linear-gradient(45deg,transparent 0px,transparent 2px,rgba(255,255,255,.1) 2px,rgba(255,255,255,.1) 4px);pointer-events:none}.start-button.disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:0 0 0 2px #4a4a4a,2px 2px #0a0a0a}.start-button.disabled:hover{transform:none;box-shadow:0 0 0 2px #4a4a4a,2px 2px #0a0a0a}.start-game-section{display:flex;flex-direction:column;align-items:center;gap:8px}.start-requirement{font-size:10px;text-align:center;text-shadow:1px 1px 0px #0A0A0A;font-weight:700;margin-top:-12px;margin-bottom:20px;transition:color .2s steps(2)}.start-requirement.waiting{color:beige;opacity:.7}.start-requirement.ready{color:#27ae60;animation:readyGlow 1s steps(3) infinite}.leave-button{background:#E74C3C;border-color:#e74c3c;font-size:14px;padding:20px;box-shadow:0 0 0 2px #4a4a4a,6px 6px #0a0a0a;position:relative;font-weight:700;white-space:nowrap;overflow:visible}.lobby-info{border-top:6px solid #1A1A1A;padding-top:20px;position:relative}.lobby-info:before{content:"";position:absolute;top:-6px;left:0;right:0;height:6px;background:repeating-linear-gradient(90deg,#1A1A1A 0px,#1A1A1A 4px,#3A3A3A 4px,#3A3A3A 8px)}.lobby-info .info-card{background:#2A2A2A;border:6px solid #1A1A1A;border-radius:0;padding:24px;box-shadow:0 0 0 2px #4a4a4a,8px 8px #0a0a0a;position:relative}.lobby-info .info-card:before{content:"";position:absolute;top:2px;left:2px;right:2px;bottom:2px;background:repeating-linear-gradient(45deg,transparent 0px,transparent 2px,rgba(255,255,255,.03) 2px,rgba(255,255,255,.03) 4px);pointer-events:none}.lobby-info h4{color:var(--secondary-color);font-size:14px;margin-bottom:15px;text-transform:uppercase;letter-spacing:1px;text-shadow:2px 2px 0px var(--darker-bg)}.lobby-info ul{list-style:none;padding:0}.lobby-info li{color:var(--text-light);font-size:10px;margin-bottom:10px;padding-left:24px;position:relative;line-height:1.5}.lobby-info li:before{content:"▶";position:absolute;left:0;color:var(--accent-color);font-size:8px;text-shadow:1px 1px 0px var(--darker-bg)}@media (max-width: 1600px){.lobby{padding:10px}.lobby-container{padding:25px;margin:8px;max-width:700px;max-height:100%}.lobby-header h2{font-size:20px;letter-spacing:1.5px}.lobby-code{font-size:12px;gap:8px}.code-display{padding:10px 14px;border-width:5px}.code-text{font-size:16px;letter-spacing:1.5px}.copy-button{width:36px;height:36px;font-size:14px;padding:6px}.players-section h3{font-size:16px;margin-bottom:16px}.players-grid{gap:14px;max-width:500px}.player-card{padding:18px;min-height:90px;border-width:5px}.player-card.empty-slot{min-height:90px}.player-name{font-size:12px;gap:6px}.player-emoji{font-size:18px}.host-badge,.bot-badge{font-size:14px}.player-status{font-size:10px}.bot-difficulty{font-size:9px;padding:5px 8px;margin-top:8px;border-width:3px}.lobby-actions{gap:14px;margin-bottom:25px}.start-button{font-size:12px;padding:18px 36px}.start-requirement{font-size:9px;margin-top:-10px;margin-bottom:18px}.lobby-info{padding-top:20px}.lobby-info .info-card{padding:20px;border-width:5px}.lobby-info h4{font-size:12px;margin-bottom:12px}.lobby-info li{font-size:9px;padding-left:20px;margin-bottom:8px}.lobby-info li:before{font-size:7px}}@media (max-width: 1199px) and (min-width: 768px){.lobby-container{padding:30px;margin:15px;max-width:700px}.lobby-header h2{font-size:20px}.code-text{font-size:16px}.copy-button{width:36px;height:36px;font-size:14px}.players-section h3{font-size:16px}.player-card{padding:18px;min-height:90px}.player-name{font-size:12px}.player-emoji{font-size:18px}.player-status{font-size:10px}.bot-difficulty{font-size:9px;padding:4px 8px}.start-button{font-size:12px;padding:18px 36px}.lobby-info h4{font-size:12px}.lobby-info li{font-size:9px}}.ready-button:before{display:none}.leave-button:before{display:none}@media (max-width: 480px){.lobby{padding:0;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.lobby-container{padding:12px;margin:0;max-width:100%;border-width:0;border-radius:0;height:100vh;height:100dvh;display:flex;flex-direction:column;flex:1;overflow:hidden}.lobby-header{flex-direction:row;gap:10px;align-items:center;margin-bottom:16px;padding-bottom:12px;flex-shrink:0}.lobby-header h2{font-size:14px;letter-spacing:1px;flex:1}.lobby-code-section{align-items:flex-end;gap:6px}.lobby-code{font-size:10px;gap:4px}.code-display{padding:6px 10px;border-width:3px}.code-text{font-size:12px;letter-spacing:.5px}.copy-button{width:28px;height:28px;font-size:10px;padding:3px;border-width:3px}.players-section{flex:1;display:flex;flex-direction:column;margin-bottom:20px}.players-section h3{font-size:12px;margin-bottom:12px;flex-shrink:0}.players-grid{grid-template-columns:repeat(2,1fr);gap:10px;flex:1;align-content:start}.player-card{padding:12px;min-height:70px;border-width:4px}.player-card.empty-slot{min-height:70px}.player-info{gap:8px}.player-name{font-size:10px;gap:6px}.player-emoji{font-size:14px}.host-badge,.bot-badge{font-size:12px}.player-status{font-size:8px}.bot-difficulty{font-size:7px;padding:3px 5px;margin-top:6px;border-width:3px}.lobby-actions{flex-direction:row;gap:10px;margin-bottom:20px;justify-content:center;flex-wrap:nowrap;align-items:center;flex-shrink:0;margin-top:auto}.ready-button:before{display:none}.leave-button:before{display:none}.ready-button,.leave-button,.start-button{font-size:8px!important;padding:14px 20px;min-width:auto;min-height:50px;border-width:4px;white-space:nowrap;overflow:visible}.ready-button span,.leave-button span{display:inline!important}.start-button{font-size:8px;padding:14px 28px;border-width:4px;white-space:nowrap;overflow:visible}.leave-button span{display:none!important}.leave-button:after{content:"Выйти";display:inline!important}.start-button span{display:none!important}.start-button:after{content:attr(data-label);display:inline!important}.start-requirement{font-size:8px;margin-top:-8px;margin-bottom:16px;flex-shrink:0}.lobby-info{padding-top:16px;flex-shrink:0}.lobby-info .info-card{padding:16px;border-width:4px}.lobby-info h4{font-size:10px;margin-bottom:12px}.lobby-info li{font-size:7px;padding-left:16px;margin-bottom:6px}.lobby-info li:before{font-size:5px}}@media (max-width: 360px){.lobby{padding:0;height:100vh;height:100dvh;overflow:hidden}.lobby-container{padding:8px;margin:0;border-width:0;border-radius:0;height:100vh;height:100dvh;overflow:hidden}.lobby-header{flex-direction:row;gap:8px;align-items:center;margin-bottom:12px;padding-bottom:10px}.lobby-header h2{font-size:12px;letter-spacing:.5px;flex:1}.lobby-code-section{align-items:flex-end;gap:4px}.lobby-code{font-size:9px;gap:3px}.code-display{padding:4px 8px;border-width:2px}.code-text{font-size:10px;letter-spacing:.3px}.copy-button{width:24px;height:24px;font-size:8px;padding:2px;border-width:2px}.players-section{margin-bottom:16px}.players-section h3{font-size:10px;margin-bottom:10px}.players-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.player-card{padding:10px;min-height:60px;border-width:3px}.player-card.empty-slot{min-height:60px}.player-info{gap:6px}.player-name{font-size:9px;gap:4px}.player-emoji{font-size:12px}.host-badge,.bot-badge{font-size:10px}.player-status{font-size:7px}.bot-difficulty{font-size:6px;padding:2px 4px;margin-top:4px;border-width:2px}.lobby-actions{gap:8px;margin-bottom:16px;justify-content:center;flex-wrap:nowrap;align-items:center}.ready-button:before{display:none}.leave-button:before{display:none}.ready-button,.leave-button,.start-button{font-size:6px!important;padding:12px 16px;min-width:auto;min-height:44px;border-width:3px;white-space:nowrap;overflow:visible}.ready-button span,.leave-button span{display:inline!important}.start-button{font-size:6px;padding:12px 24px;border-width:3px;min-height:36px;white-space:nowrap;overflow:visible}.leave-button span{display:none!important}.leave-button:after{content:"Выйти";display:inline!important}.start-button span{display:none!important}.start-button:after{content:attr(data-label);display:inline!important}.start-requirement{font-size:7px;margin-top:-4px;margin-bottom:12px}.lobby-info{padding-top:12px}.lobby-info .info-card{padding:12px;border-width:3px}.lobby-info h4{font-size:8px;margin-bottom:10px}.lobby-info li{font-size:6px;padding-left:12px;margin-bottom:4px}.lobby-info li:before{font-size:4px}}@media (max-height: 500px) and (orientation: landscape){.lobby{padding:0;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.lobby-container{padding:6px;margin:0;max-width:100%;border-width:0;border-radius:0;height:100vh;height:100dvh;display:flex;flex-direction:column;flex:1;overflow:hidden}.lobby-header{flex-direction:row;gap:6px;align-items:center;margin-bottom:10px;padding-bottom:8px;flex-shrink:0}.lobby-header h2{font-size:12px;flex:1}.lobby-code-section{align-items:flex-end;gap:3px}.lobby-code{font-size:8px;gap:2px}.code-display{padding:4px 6px;border-width:2px}.code-text{font-size:10px;letter-spacing:.3px}.copy-button{width:22px;height:22px;font-size:7px;padding:2px;border-width:2px}.players-section{flex:1;display:flex;flex-direction:column;margin-bottom:10px}.players-section h3{font-size:10px;margin-bottom:8px;flex-shrink:0}.players-grid{gap:6px;grid-template-columns:repeat(2,1fr);flex:1;align-content:start}.player-card{padding:8px;min-height:50px}.player-card.empty-slot{min-height:50px}.player-info{gap:4px}.player-name{font-size:8px}.player-emoji{font-size:10px}.host-badge,.bot-badge{font-size:8px}.player-status{font-size:6px}.bot-difficulty{font-size:5px;padding:2px 3px;margin-top:3px}.lobby-actions{gap:6px;margin-bottom:10px;justify-content:center;flex-wrap:nowrap;align-items:center;flex-shrink:0;margin-top:auto}.ready-button:before{display:none}.leave-button:before{display:none}.ready-button,.leave-button,.start-button{padding:8px 12px;min-width:auto;min-height:40px;white-space:nowrap;overflow:visible}.ready-button span,.leave-button span{display:inline!important}.start-button{font-size:5px;padding:8px 16px;white-space:nowrap;overflow:visible}.leave-button span{display:none!important}.leave-button:after{content:"Выйти";display:inline!important}.start-button span{display:none!important}.start-button:after{content:attr(data-label);display:inline!important}.start-requirement{font-size:6px;margin-top:0;margin-bottom:8px;flex-shrink:0}.lobby-info{padding-top:8px;flex-shrink:0}.lobby-info .info-card{padding:8px}.lobby-info h4{font-size:7px;margin-bottom:6px}.lobby-info li{font-size:5px;margin-bottom:3px}}@media (max-width: 767px){.player-card:hover{transform:none;box-shadow:0 0 0 2px #4a4a4a,8px 8px #2a2a2a}.player-card.current-player:hover{transform:none!important;box-shadow:0 0 0 2px #4a4a4a,8px 8px #2a2a2a!important}.copy-button:hover{transform:none;box-shadow:0 0 0 2px #4a4a4a,6px 6px #0a0a0a}.copy-button:active{background:#B8860B;border-color:#b8860b;transform:translate(-2px,-2px);box-shadow:0 0 0 2px #4a4a4a,8px 8px #0a0a0a}.start-button:hover{transform:none;box-shadow:0 0 0 2px #4a4a4a,6px 6px #0a0a0a}.start-button:active{background:#B8860B;border-color:#b8860b;transform:translate(-3px,-3px);box-shadow:0 0 0 2px #4a4a4a,9px 9px #0a0a0a}.ready-button:hover,.ready-button.ready:hover,.leave-button:hover{transform:none;box-shadow:0 0 0 2px #4a4a4a,6px 6px #0a0a0a}.copy-button{min-height:25px;min-width:25px}.start-button{min-height:44px}.ready-button,.leave-button{min-height:44px;min-width:44px}.lobby-header h2{text-shadow:2px 2px 0px var(--darker-bg),0 0 4px rgba(0,0,0,.5)}.players-section h3{text-shadow:1px 1px 0px var(--darker-bg),0 0 2px rgba(0,0,0,.5)}.player-name,.player-status{text-shadow:1px 1px 0px #0A0A0A,0 0 2px rgba(0,0,0,.5)}.lobby-info h4,.lobby-info li{text-shadow:1px 1px 0px var(--darker-bg),0 0 2px rgba(0,0,0,.5)}.lobby-actions{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:12px;flex-wrap:nowrap}.ready-button,.leave-button{display:flex;align-items:center;justify-content:center;position:relative}}@media (max-width: 360px){.lobby{padding:2px}.lobby-container{padding:8px;margin:1px;border-width:3px}.lobby-header{gap:6px;margin-bottom:8px;padding-bottom:8px}.lobby-header h2{font-size:12px;letter-spacing:.3px}.lobby-code-section{gap:3px}.lobby-code{font-size:9px;gap:3px}.code-display{padding:4px 8px;border-width:2px}.code-text{font-size:10px;letter-spacing:.3px}.copy-button{width:24px;height:24px;font-size:8px;padding:2px;border-width:2px}.players-section{margin-bottom:8px}.players-section h3{font-size:8px;margin-bottom:6px}.players-grid{gap:4px}.player-card{padding:6px;min-height:50px;border-width:2px}.player-card.empty-slot{min-height:50px}.player-info{gap:3px}.player-name{font-size:7px;gap:3px}.player-emoji{font-size:10px}.host-badge,.bot-badge{font-size:8px}.player-status{font-size:6px}.bot-difficulty{font-size:5px;padding:1px 3px;margin-top:3px;border-width:1px}.lobby-actions{gap:4px;margin-bottom:8px}.start-button{font-size:7px;padding:8px 16px;border-width:2px;min-height:36px;white-space:nowrap;overflow:visible}.start-requirement{font-size:6px;margin-top:-6px;margin-bottom:6px}.lobby-info{padding-top:8px}.lobby-info .info-card{padding:8px;border-width:2px}.lobby-info h4{font-size:7px;margin-bottom:6px}.lobby-info li{font-size:5px;padding-left:8px;margin-bottom:3px}.lobby-info li:before{font-size:3px}}@media (max-width: 767px) and (min-width: 481px){.lobby{padding:0;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}.lobby-container{padding:15px;margin:0;max-width:100%;border-width:0;border-radius:0;height:100vh;height:100dvh;display:flex;flex-direction:column;flex:1;overflow:hidden}.lobby-header{flex-direction:row;gap:12px;align-items:center;margin-bottom:20px;padding-bottom:16px;flex-shrink:0}.lobby-header h2{font-size:16px;flex:1}.lobby-code-section{align-items:flex-end;gap:8px}.lobby-code{font-size:12px;gap:6px}.code-display{padding:8px 12px;border-width:4px}.code-text{font-size:14px;letter-spacing:1px}.copy-button{width:32px;height:32px;font-size:12px;padding:4px}.players-section{flex:1;display:flex;flex-direction:column}.players-section h3{font-size:14px;margin-bottom:16px;flex-shrink:0}.players-grid{grid-template-columns:repeat(2,1fr);max-width:none;gap:12px;flex:1;align-content:start}.player-card{padding:16px;min-height:80px}.player-name{font-size:11px}.player-emoji{font-size:16px}.host-badge,.bot-badge{font-size:14px}.player-status{font-size:9px}.bot-difficulty{font-size:8px;padding:4px 6px;margin-top:8px}.lobby-actions{flex-direction:row;gap:12px;justify-content:center;flex-wrap:nowrap;align-items:center;flex-shrink:0;margin-top:auto}.ready-button:before{display:none}.leave-button:before{display:none}.ready-button,.leave-button,.start-button{font-size:9px!important;padding:16px 24px;min-width:auto;min-height:60px;white-space:nowrap;overflow:visible}.ready-button span,.leave-button span{display:inline!important}.start-button{font-size:9px;padding:16px 32px;white-space:nowrap;overflow:visible}.leave-button span{display:none!important}.leave-button:after{content:"Выйти";display:inline!important}.start-button span{display:none!important}.start-button:after{content:attr(data-label);display:inline!important}.start-requirement{font-size:9px;margin-top:-12px;flex-shrink:0}.lobby-info{flex-shrink:0}.lobby-info h4{font-size:11px}.lobby-info li{font-size:8px;padding-left:20px}.lobby-info li:before{font-size:6px}}.emoji-display{display:inline-block;vertical-align:middle;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;filter:drop-shadow(2px 2px 0px rgba(0,0,0,.3))}.emoji-display img{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;filter:drop-shadow(2px 2px 0px rgba(0,0,0,.3))}.emoji-display span{filter:drop-shadow(2px 2px 0px rgba(0,0,0,.3))}.afk-return-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem)}.afk-return-modal{background:var(--surface-color, #2a2a2a);border:.125rem solid var(--primary-color, #4a9eff);border-radius:.75rem;padding:1.5rem;max-width:25rem;width:90%;box-shadow:0 .5rem 2rem #00000080;animation:afkModalSlideIn .3s ease-out}@keyframes afkModalSlideIn{0%{opacity:0;transform:translateY(-2rem) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.afk-return-content{text-align:center}.afk-return-icon{margin-bottom:1rem}.afk-return-icon .material-icons{font-size:3rem;color:var(--warning-color, #ff6b6b);animation:afkIconPulse 2s infinite}@keyframes afkIconPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.afk-return-title{font-size:1.25rem;font-weight:600;color:var(--text-color, #ffffff);margin:0 0 .75rem}.afk-return-description{font-size:.875rem;color:var(--text-secondary-color, #cccccc);margin:0 0 1.5rem;line-height:1.4}.afk-return-overlay{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10000;display:flex;align-items:center;justify-content:center}.afk-return-button{background:var(--primary-color, #4a9eff)!important;color:#fff!important;border:.125rem solid var(--primary-color, #4a9eff)!important;border-radius:.5rem!important;padding:.75rem 1.5rem!important;font-size:.875rem!important;font-weight:600!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;gap:.5rem!important;transition:all .2s ease!important;min-width:12rem!important;justify-content:center!important;box-shadow:0 .25rem .75rem #4a9eff4d!important;animation:afkButtonPulse 2s infinite!important}@keyframes afkButtonPulse{0%,to{transform:scale(1);box-shadow:0 .25rem .75rem #4a9eff4d}50%{transform:scale(1.05);box-shadow:0 .5rem 1rem #4a9eff66}}.afk-return-button:hover{background:var(--primary-hover-color, #3a8eef)!important;transform:translateY(-.125rem) scale(1.02)!important;box-shadow:0 .5rem 1rem #4a9eff66!important}.afk-return-button:active{transform:translateY(0) scale(1)!important;box-shadow:0 .25rem .75rem #4a9eff4d!important}.afk-return-button .material-icons{font-size:1rem}@media (max-width: 30rem){.afk-return-modal{margin:1rem;padding:1.25rem}.afk-return-title{font-size:1.125rem}.afk-return-description{font-size:.8125rem}.afk-return-button{padding:.625rem 1.25rem!important;font-size:.8125rem!important;min-width:10rem!important}}.notifications-container{position:fixed;bottom:1rem;right:1rem;z-index:10000;display:flex;flex-direction:column;gap:.5rem;max-width:20rem;pointer-events:none}.notification{position:relative;padding:1rem;border-radius:.5rem;box-shadow:0 .25rem .75rem #0000004d;font-family:"Press Start 2P",cursive;font-size:.6rem;line-height:1.4;color:#fff;cursor:pointer;pointer-events:auto;animation:slideIn .3s ease-out;transition:transform .2s ease,opacity .2s ease;min-height:3rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.notification:hover{transform:translateY(-.125rem)}.notification-error{background:linear-gradient(135deg,#dc3545,#b02a37);border:.125rem solid #ff6b7d}.notification-warning{background:linear-gradient(135deg,#ffc107,#e0a800);border:.125rem solid #ffed4e;color:#000}.notification-success{background:linear-gradient(135deg,#28a745,#1e7e34);border:.125rem solid #5cb85c}.notification-info{background:linear-gradient(135deg,#17a2b8,#138496);border:.125rem solid #5bc0de}.notification-content{flex:1;word-wrap:break-word;padding-right:.5rem}.notification-close{background:none;border:none;color:inherit;font-size:.9rem;font-weight:700;cursor:pointer;padding:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease;flex-shrink:0}.notification-close:hover{background-color:#fff3}.notification-error .notification-close:hover{background-color:#ffffff4d}.notification-warning .notification-close:hover{background-color:#0003}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 48rem){.notifications-container{bottom:.5rem;right:.5rem;left:.5rem;max-width:none}.notification{font-size:.55rem;padding:.75rem;min-height:2.5rem}.notification-close{width:1.25rem;height:1.25rem;font-size:.875rem}}@media (max-width: 30rem){.notification{font-size:.5rem;padding:.625rem;min-height:2rem}.notification-close{width:1rem;height:1rem;font-size:.75rem}}@media screen and (orientation: portrait){.notifications-container{bottom:1rem;right:.5rem;left:.5rem}}.loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;height:100dvh;background:#000;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:99999;font-family:"Press Start 2P",monospace;padding:2rem;opacity:1;transition:opacity .8s ease-in-out}.loading-screen.fade-out{opacity:0;pointer-events:none}.loading-logo{text-align:center;margin-bottom:4rem;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center}.loading-logo h1{font-size:4rem;color:var(--theme-text-primary);margin:0 0 1rem;text-shadow:4px 4px 12px rgba(0,0,0,.9);letter-spacing:.1em}.loading-subtitle{font-size:1.2rem;color:var(--theme-text-secondary);opacity:.8;text-shadow:2px 2px 6px rgba(0,0,0,.8)}.loading-progress-container{width:100%;max-width:40rem;margin-bottom:2rem;display:flex;flex-direction:column;align-items:center}.loading-spinner{width:4rem;height:4rem;margin-bottom:2rem;position:relative}.loading-spinner:before,.loading-spinner:after{content:"";position:absolute;border-radius:50%;animation:spinner 2s linear infinite}.loading-spinner:before{width:100%;height:100%;background:conic-gradient(from 0deg,transparent,var(--theme-accent-1),var(--theme-accent-2),var(--theme-accent-1),transparent);animation:spinner 2s linear infinite}.loading-spinner:after{width:80%;height:80%;background:#000;top:10%;left:10%;animation:none}@keyframes spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-info-line{font-size:1.25rem;color:var(--theme-text-primary);text-align:center;text-shadow:2px 2px 6px rgba(0,0,0,.8);margin-top:.25rem}.loading-message{font-size:1rem;color:var(--theme-text-secondary);text-align:center;min-height:1.5rem;transition:all .5s ease;text-shadow:1px 1px 3px rgba(0,0,0,.8)}.loading-complete{font-size:1.3rem;color:var(--theme-accent-1);font-weight:700;text-shadow:2px 2px 6px rgba(0,0,0,.8);animation:completePulse 2s ease-in-out infinite alternate}@keyframes completePulse{0%{text-shadow:2px 2px 6px rgba(0,0,0,.8);transform:scale(1)}to{text-shadow:2px 2px 6px rgba(0,0,0,.8),0 0 25px var(--theme-shadow-glow);transform:scale(1.05)}}.loading-error{text-align:center;margin-top:1rem}.error-icon{font-size:3rem;margin-bottom:1rem;display:block}.error-text{font-size:.9rem;color:var(--theme-danger-2);margin-bottom:1.5rem;word-break:break-word;text-shadow:1px 1px 3px rgba(0,0,0,.8)}.retry-button{background:linear-gradient(45deg,var(--theme-danger-1),var(--theme-danger-2));color:#fff;border:none;padding:1rem 2rem;font-family:"Press Start 2P",monospace;font-size:.8rem;border-radius:.5rem;cursor:pointer;transition:all .3s ease;box-shadow:0 0 15px #ff45004d;text-shadow:1px 1px 2px rgba(0,0,0,.8)}.retry-button:hover{background:linear-gradient(45deg,var(--theme-danger-2),var(--theme-danger-1));transform:scale(1.05);box-shadow:0 0 25px #ff450080}@media (max-width: 768px){.loading-screen{padding:1rem}.loading-logo h1{font-size:2rem;letter-spacing:.06em;line-height:1.1}.loading-subtitle{font-size:.8rem}.loading-info-line{font-size:.9rem}.loading-spinner{width:3rem;height:3rem}}@media (max-width: 480px){.loading-logo h1{font-size:1.4rem;letter-spacing:.02em;line-height:1.1}.loading-subtitle{font-size:.6rem}.loading-info-line{font-size:.75rem}.loading-spinner{width:2.5rem;height:2.5rem}}@media (max-height: 600px){.loading-logo{margin-bottom:2rem}.loading-logo h1{font-size:1.6rem}.loading-subtitle{font-size:.7rem}.loading-spinner{width:2.5rem;height:2.5rem;margin-bottom:1rem}}.card-demo-page{min-height:100vh;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:2rem;font-family:"Press Start 2P",monospace;color:#fff}.card-demo-header{text-align:center;margin-bottom:2rem}.card-demo-header h1{font-size:2rem;margin-bottom:1rem;text-shadow:2px 2px 4px rgba(0,0,0,.5)}.card-demo-header p{font-size:1rem;opacity:.9;margin:0}.card-demo-controls{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin-bottom:2rem;padding:1.5rem;background:rgba(255,255,255,.1);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.control-group{display:flex;flex-direction:column;gap:.5rem}.control-group label{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.card-selector{display:flex;flex-wrap:wrap;gap:.5rem}.card-button{padding:.5rem 1rem;background:rgba(255,255,255,.2);border:2px solid rgba(255,255,255,.3);border-radius:.5rem;color:#fff;font-family:inherit;font-size:.7rem;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.card-button:hover{background:rgba(255,255,255,.3);border-color:#ffffff80;transform:translateY(-2px)}.card-button.active{background:rgba(255,255,255,.4);border-color:gold;box-shadow:0 0 10px #ffd70080}.control-group input[type=checkbox]{margin-right:.5rem;transform:scale(1.2)}.flip-button{padding:.8rem 1.5rem;background:linear-gradient(135deg,#ff6b6b,#ee5a24);border:none;border-radius:.5rem;color:#fff;font-family:inherit;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px #ff6b6b4d}.flip-button:hover{background:linear-gradient(135deg,#ff5252,#d63031);transform:translateY(-2px);box-shadow:0 6px 20px #ff6b6b66}.flip-button:active{transform:translateY(0);box-shadow:0 2px 10px #ff6b6b4d}.card-demo-canvas{width:100%;height:60vh;min-height:400px;background:rgba(0,0,0,.2);border-radius:1rem;overflow:hidden;border:2px solid rgba(255,255,255,.2);box-shadow:0 10px 30px #0000004d}.card-demo-instructions{margin-top:2rem;padding:1.5rem;background:rgba(255,255,255,.1);border-radius:1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.card-demo-instructions h3{font-size:1rem;margin-bottom:1rem;text-transform:uppercase;letter-spacing:1px}.card-demo-instructions ul{list-style:none;padding:0;margin:0}.card-demo-instructions li{font-size:.8rem;margin-bottom:.5rem;padding:.5rem;background:rgba(255,255,255,.1);border-radius:.5rem;border-left:3px solid #ffd700}.card-demo-instructions strong{color:gold}@media (max-width: 768px){.card-demo-page{padding:1rem}.card-demo-header h1{font-size:1.5rem}.card-demo-controls{flex-direction:column;gap:1rem}.card-selector{justify-content:center}.card-button{font-size:.6rem;padding:.4rem .8rem}.card-demo-canvas{height:50vh;min-height:300px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.card-demo-page>*{animation:fadeIn .5s ease-out}.card-demo-page>*:nth-child(2){animation-delay:.1s}.card-demo-page>*:nth-child(3){animation-delay:.2s}.card-demo-page>*:nth-child(4){animation-delay:.3s}.App{width:100%;height:100%;height:100dvh;height:calc(var(--vh, 1vh) * 100);display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,var(--darker-bg) 0%,var(--dark-bg) 100%);position:relative;overflow:hidden}.App:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 80%,rgba(212,175,55,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(139,69,19,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(205,133,63,.05) 0%,transparent 50%);pointer-events:none}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.App:after{content:"";position:absolute;top:50%;left:50%;width:300px;height:300px;background:radial-gradient(circle,rgba(212,175,55,.05) 0%,transparent 70%);transform:translate(-50%,-50%);animation:float 8s ease-in-out infinite;pointer-events:none;z-index:-1}@media (max-width: 1199px) and (min-width: 768px){.App:after{width:250px;height:250px}}@media (max-width: 767px) and (min-width: 481px){.App:after{width:200px;height:200px}}@media (max-width: 480px){.App:after{width:150px;height:150px}}@media (max-width: 360px){.App:after{width:120px;height:120px}}@media (max-height: 500px) and (orientation: landscape){.App:after{width:100px;height:100px}}@supports (padding: max(0px)){.App{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}:root{--primary-color: #D4AF37;--secondary-color: #A0522D;--accent-color: #CD853F;--dark-bg: #2F2F2F;--darker-bg: #1A1A1A;--card-bg: #3F3F3F;--text-light: #F5F5DC;--text-dark: #2F2F2F;--success: #228B22;--warning: #DAA520;--error: #B22222;--purple-light: #B8860B;--green-light: #32CD32;--orange-light: #FF8C00;--muted-dark: #3A3A3A;--muted-darker: #2A2A2A;--outline-muted: #4A4A4A;--shadow-strong: #0A0A0A;--brand-gold-500: #FFD700;--brand-orange-500: #FFA500;--brand-red-500: #FF0000;--edge-gap: 2rem;--button-height: 3.4rem;--button-font-size: 1rem;--button-icon-size: 1.4rem;--menu-button-size: 3.4rem;--card-width: 7.17rem;--card-height: 10rem;--card-radius: 1rem;--drop-zone-width: 28.68rem;--drop-zone-height: 10rem}*{margin:0;padding:0;box-sizing:border-box}html{overflow:hidden;width:100%;height:100%;height:100dvh;touch-action:manipulation}body{font-family:"Press Start 2P",Courier New,monospace;background:#000;color:var(--text-light);overflow:hidden;width:100%;height:100%;height:100dvh;margin:0;padding:0;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;-ms-user-select:none;user-select:none}#root{width:100%;height:100%;height:100dvh;height:calc(var(--vh, 1vh) * 100);display:flex;justify-content:center;align-items:center;overflow:hidden}.pixel-button{background:var(--card-bg);border:4px solid var(--text-light);color:var(--text-light);padding:16px 32px;font-family:"Press Start 2P",monospace;font-size:12px;cursor:pointer;transition:all .1s steps(3);text-transform:uppercase;letter-spacing:1px;position:relative;overflow:hidden;border-radius:0;box-shadow:4px 4px 0 var(--darker-bg),inset -2px -2px #0000004d,inset 2px 2px #ffffff1a;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.pixel-button:hover{background:var(--primary-color);transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--darker-bg),inset -2px -2px #0000004d,inset 2px 2px #ffffff1a}.pixel-button:active{transform:translate(0);box-shadow:2px 2px 0 var(--darker-bg),inset -2px -2px #0000004d,inset 2px 2px #ffffff1a}.pixel-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:2px 2px 0 var(--darker-bg),inset -2px -2px #0000004d,inset 2px 2px #ffffff1a}.pixel-input{background:var(--card-bg);border:4px solid var(--text-light);color:var(--text-light);padding:16px 20px;font-family:"Press Start 2P",monospace;font-size:12px;outline:none;transition:all .1s steps(2);border-radius:0;box-shadow:inset 4px 4px #0000004d,inset -2px -2px #ffffff1a;-webkit-appearance:none;-moz-appearance:none;appearance:none}.pixel-input:focus{border-color:var(--primary-color);box-shadow:inset 4px 4px #0000004d,inset -2px -2px #ffffff1a,0 0 0 4px #ff6b354d;background:var(--dark-bg)}.pixel-card{background:var(--card-bg);border:4px solid var(--text-light);border-radius:0;padding:20px;margin:12px;box-shadow:6px 6px 0 var(--darker-bg),inset -2px -2px #0000004d,inset 2px 2px #ffffff1a;transition:all .1s steps(3)}.pixel-card:hover{transform:translate(-4px,-4px);box-shadow:10px 10px 0 var(--darker-bg),inset -2px -2px #0000004d,inset 2px 2px #ffffff1a;border-color:var(--primary-color)}@keyframes pixelPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes scrollDiagonal{0%{background-position:0 0,0 0,0 0}to{background-position:200px 200px,200px 200px,200px 200px}}@keyframes pixelFloat{0%,to{transform:translateY(0)}25%{transform:translateY(-4px)}50%{transform:translateY(-8px)}75%{transform:translateY(-4px)}}@keyframes pixelGlow{0%,to{box-shadow:4px 4px 0 var(--darker-bg),inset -2px -2px #0000004d,inset 2px 2px #ffffff1a}50%{box-shadow:4px 4px 0 var(--darker-bg),inset -2px -2px #0000004d,inset 2px 2px #ffffff1a,0 0 8px var(--primary-color)}}@keyframes pixelShake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@keyframes gradientShiftLayered{0%{background-position:0 0,20px 20px,0% 50%}50%{background-position:0 0,20px 20px,100% 50%}to{background-position:0 0,20px 20px,0% 50%}}@keyframes starsDrift{0%{background-position:0 0,0 0,0 0,center}to{background-position:500px 800px,300px 600px,200px 400px,center}}@keyframes starsDriftSky{0%{background-position:0 0,0 0,0 0,center}50%{background-position:6rem 10rem,4rem 8rem,2rem 4rem,center}to{background-position:12rem 20rem,8rem 16rem,4rem 8rem,center}}@keyframes starPan{0%{background-position:0 0}to{background-position:20rem 35rem}}@keyframes matrixRainFast{0%{background-position:0 -200%}to{background-position:0 200%}}@keyframes matrixRainSlow{0%{background-position:0 -400%}to{background-position:0 400%}}@keyframes matrixFall1{0%{--m1: -100%}to{--m1: 100%}}@keyframes matrixFall2{0%{--m2: -100%}to{--m2: 100%}}@keyframes matrixFall3{0%{--m3: -100%}to{--m3: 100%}}.pulse{animation:pixelPulse .5s steps(2) infinite}.float{animation:pixelFloat 1s steps(4) infinite}.glow{animation:pixelGlow 1s steps(2) infinite}.shake{animation:pixelShake .2s steps(2) infinite}::-webkit-scrollbar{width:16px}::-webkit-scrollbar-track{background:var(--darker-bg);border:2px solid var(--text-light);border-radius:0}::-webkit-scrollbar-thumb{background:var(--primary-color);border:2px solid var(--text-light);border-radius:0;box-shadow:inset 2px 2px #0000004d,inset -1px -1px #ffffff1a}::-webkit-scrollbar-thumb:hover{background:var(--orange-light)}@media (min-width: 1200px){.pixel-button{font-size:14px;padding:20px}.pixel-input{font-size:14px;padding:20px 24px}.pixel-card{padding:30px;margin:16px}}@media (max-width: 1199px) and (min-width: 768px){.pixel-button{font-size:11px;padding:14px 28px}.pixel-input{font-size:11px;padding:14px 18px}.pixel-card{padding:24px;margin:14px}}@media (max-width: 767px) and (min-width: 481px){.pixel-button{font-size:10px;padding:12px 24px}.pixel-input{font-size:10px;padding:12px 16px}.pixel-card{padding:20px;margin:10px}}@media (max-width: 480px){.pixel-button{font-size:8px;padding:10px 20px;border-width:3px}.pixel-input{font-size:8px;padding:10px 14px;border-width:3px}.pixel-card{padding:16px;margin:8px;border-width:3px}::-webkit-scrollbar{width:12px}}@media (max-width: 360px){.pixel-button{font-size:7px;padding:8px 16px;border-width:2px}.pixel-input{font-size:7px;padding:8px 12px;border-width:2px}.pixel-card{padding:12px;margin:6px;border-width:2px}::-webkit-scrollbar{width:8px}}@media (max-height: 500px) and (orientation: landscape){.pixel-button{padding:8px 16px;font-size:8px}.pixel-input{padding:8px 12px;font-size:8px}.pixel-card{padding:12px;margin:6px}}@media (max-width: 767px){.pixel-button:hover{transform:none;box-shadow:4px 4px 0 var(--darker-bg),inset -2px -2px #0000004d,inset 2px 2px #ffffff1a}.pixel-card:hover{transform:none;box-shadow:6px 6px 0 var(--darker-bg),inset -2px -2px #0000004d,inset 2px 2px #ffffff1a}.pixel-button{min-height:44px;min-width:44px}.pixel-input{min-height:44px}}@media screen and (max-width: 767px){input[type=text],input[type=email],input[type=password],textarea,select{font-size:16px!important}}@supports (padding: max(0px)){body,#root{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}@supports (padding: max(0px)){body{background:#000}#root{background:linear-gradient(135deg,var(--darker-bg) 0%,var(--dark-bg) 100%)}}@media (max-width: 767px){html{overflow:hidden;width:100%;height:100%;height:100dvh}body{width:100%;height:100%;height:100dvh;margin:0;padding:0;overflow:hidden}#root{overflow:hidden;width:100%;height:100%;height:100dvh;display:flex;flex-direction:column}.App{flex:1;display:flex;flex-direction:column;height:100%;height:100dvh;overflow:hidden}.pixel-button:hover,.pixel-card:hover{transform:none;box-shadow:none}.pixel-button{min-height:44px;min-width:44px;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.pixel-input{font-size:16px!important;-webkit-appearance:none;-moz-appearance:none;appearance:none}}@property --grid-h{syntax: "<angle>"; inherits: false; initial-value: 290deg;}@keyframes gridHueCycle{0%{--grid-h: 280deg}50%{--grid-h: 320deg}to{--grid-h: 280deg}}@property --m1{syntax: "<length-percentage>"; inherits: false; initial-value: 0%;}@property --m2{syntax: "<length-percentage>"; inherits: false; initial-value: 0%;}@property --m3{syntax: "<length-percentage>"; inherits: false; initial-value: 0%;}
