*,:after,:before{box-sizing:border-box;margin:0;padding:0}#root,body,html{height:100vh;width:100vw;overflow:hidden;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:#f8f9fa;color:#2d3436;line-height:1.5;-webkit-font-smoothing:antialiased}#root,.app-container{display:flex;flex-direction:column}.app-container{height:100vh;max-height:100vh;width:100%;max-width:1180px;margin:0 auto;padding:.75rem 1.25rem 1.25rem;overflow:hidden}@media(max-width:640px){.app-container{padding:.5rem .75rem .75rem}}.header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;border-bottom:none;margin:0 auto .75rem;position:relative;width:100%}.header.home-header{max-width:580px}.header .header-left{display:flex;align-items:center;min-width:140px}@media(max-width:640px){.header .header-left{min-width:0}}.header .header-user-profile{display:flex;align-items:center;gap:.4rem;padding:.25rem .65rem .25rem .35rem;background-color:#fff;border:2px solid #2d3436;border-radius:9999px;box-shadow:2px 2px 0 #2d3436;font-weight:800;font-size:.8rem}.header .header-user-profile .avatar-circle{width:26px;height:26px;border-radius:50%;background-color:#fd79a8;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:1px 1px 0 #2d3436}.header .header-user-profile .profile-name{color:#2d3436;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header .brand{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:.65rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.header .brand .icon-wrapper{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#fd79a8,#6c5ce7);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.3rem;box-shadow:4px 4px 0 #2d3436;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.header .brand .icon-wrapper .film-icon{transition:transform .4s ease}.header .brand h1{font-size:1.45rem;font-weight:900;letter-spacing:-.02em;color:#2d3436;transition:color .3s ease}.header .brand h1 span{color:#6c5ce7;transition:color .3s ease}.header .brand:hover .icon-wrapper{transform:scale(1.08) rotate(-4deg)}.header .brand:hover .icon-wrapper .film-icon{transform:rotate(180deg)}.header .brand:hover h1{color:#fd79a8}.header .brand:hover h1 span{color:#00cec9}.header .header-actions{display:flex;align-items:center;gap:.65rem;margin-left:auto}.header .header-actions .btn-quit-game{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.header .header-actions .btn-quit-game:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.header .header-actions .btn-quit-game:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.header .header-actions .btn-quit-game:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.header .header-actions .btn-quit-game{padding:.25rem .65rem;background-color:#ff7675;color:#fff;font-size:.75rem;display:flex;align-items:center;gap:.3rem;box-shadow:1px 1px 0 #2d3436}.header .header-actions .sound-tooltip-wrapper{position:relative;display:inline-flex;align-items:center}.header .header-actions .sound-tooltip-wrapper .sound-icon-btn{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.header .header-actions .sound-tooltip-wrapper .sound-icon-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.header .header-actions .sound-tooltip-wrapper .sound-icon-btn:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.header .header-actions .sound-tooltip-wrapper .sound-icon-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.header .header-actions .sound-tooltip-wrapper .sound-icon-btn{width:38px;height:38px;border-radius:50%;padding:0;background-color:#fff;color:#2d3436;display:flex;align-items:center;justify-content:center}.header .header-actions .sound-tooltip-wrapper .sound-icon-btn:hover{background-color:#f1f2f6;transform:scale(1.05)}.header .header-actions .sound-tooltip-wrapper .tooltip-text{visibility:hidden;opacity:0;width:100px;background-color:#2d3436;color:#fff;text-align:center;border-radius:8px;padding:.3rem .45rem;position:absolute;z-index:100;top:125%;right:0;font-size:.75rem;font-weight:700;transition:opacity .2s ease,visibility .2s ease;box-shadow:2px 2px 0 #2d3436;pointer-events:none}.header .header-actions .sound-tooltip-wrapper .tooltip-text:after{content:"";position:absolute;bottom:100%;right:13px;border:5px solid transparent;border-bottom-color:#2d3436}.header .header-actions .sound-tooltip-wrapper:hover .tooltip-text{visibility:visible;opacity:1}.header .header-actions .badge{font-size:.75rem;font-weight:800;padding:.2rem .6rem;border-radius:9999px;border:2px solid #2d3436;box-shadow:1px 1px 0 #2d3436}.header .header-actions .badge.solo{background-color:#ffeaa7;color:#d63031}.header .header-actions .badge.multi{background-color:#81ecec;color:#00b894}.main-view-wrapper{flex:1 1;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;width:100%}.home-container{width:100%;max-width:580px;margin:0 auto;max-height:calc(100vh - 90px);overflow-y:auto;padding-right:4px}.home-container::-webkit-scrollbar{width:6px}.home-container::-webkit-scrollbar-thumb{background-color:#b2bec3;border-radius:4px}.home-card{text-align:center;padding:1.75rem}.home-card .home-title{font-size:2.1rem;font-weight:900;margin-bottom:.15rem;color:#2d3436;letter-spacing:-.01em}.home-card .home-subtitle{color:#636e72;margin-bottom:1.25rem;font-size:.9rem;font-weight:500}.home-card .input-group{margin-bottom:1.25rem;text-align:left}.home-card .input-group label{display:block;font-weight:800;margin-bottom:.35rem;font-size:.85rem;color:#2d3436;letter-spacing:.05em}.home-card .input-group .input-with-icon{position:relative}.home-card .input-group .input-with-icon .field-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#636e72}.home-card .input-group .input-with-icon input{width:100%;padding:.75rem 1rem .75rem 2.6rem;font-size:1.05rem;font-weight:700;border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;outline:none;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif}.home-card .input-group .input-with-icon input:focus{border-color:#6c5ce7}.home-card .invited-hero-box{background-color:#9fffec;border:2px solid #00b894;border-radius:12px;padding:1.15rem;margin-bottom:1rem;box-shadow:4px 4px 0 #2d3436}.home-card .invited-hero-box .invited-header{font-weight:800;color:#00896d;font-size:.9rem;display:flex;align-items:center;justify-content:center;gap:.4rem;margin-bottom:.75rem}.home-card .invited-hero-box .btn-hero-join{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.home-card .invited-hero-box .btn-hero-join:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.home-card .invited-hero-box .btn-hero-join:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.home-card .invited-hero-box .btn-hero-join:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.home-card .invited-hero-box .btn-hero-join{width:100%;padding:.9rem;background-color:#00b894;color:#fff;font-size:1.05rem;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:3px 3px 0 #2d3436}.home-card .hero-join-section{background-color:#f1f2f6;border:2px solid #2d3436;border-radius:12px;padding:1.15rem;margin-bottom:1rem;box-shadow:2px 2px 0 #2d3436;text-align:left}.home-card .hero-join-section .join-label{font-size:.9rem;font-weight:900;color:#6c5ce7;margin-bottom:.5rem;letter-spacing:.05em}.home-card .hero-join-section .join-form{display:flex;gap:.65rem}.home-card .hero-join-section .join-form input{flex:1 1;padding:.65rem;font-size:1rem;font-weight:800;text-transform:uppercase;text-align:center;letter-spacing:.1em;border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;outline:none}.home-card .hero-join-section .join-form input:focus{border-color:#00cec9}.home-card .hero-join-section .join-form .hero-join-btn{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.home-card .hero-join-section .join-form .hero-join-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.home-card .hero-join-section .join-form .hero-join-btn:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.home-card .hero-join-section .join-form .hero-join-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.home-card .hero-join-section .join-form .hero-join-btn{padding:.65rem 1.4rem;background-color:#00b894;color:#fff;font-size:.95rem;display:flex;align-items:center;gap:.4rem;white-space:nowrap}.home-card .secondary-divider{display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;color:#636e72;letter-spacing:.08em;margin:.85rem 0}.home-card .secondary-divider:after,.home-card .secondary-divider:before{content:"";flex:1 1;border-bottom:1px dashed #dfe6e9;margin:0 .6rem}.home-card .action-buttons-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.85rem;gap:.85rem}.home-card .action-buttons-grid .btn-solo{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.home-card .action-buttons-grid .btn-solo:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.home-card .action-buttons-grid .btn-solo:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.home-card .action-buttons-grid .btn-solo:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.home-card .action-buttons-grid .btn-solo{padding:.75rem;background-color:#fd79a8;color:#fff;font-size:.95rem;display:flex;align-items:center;justify-content:center;gap:.4rem}.home-card .action-buttons-grid .btn-create{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.home-card .action-buttons-grid .btn-create:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.home-card .action-buttons-grid .btn-create:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.home-card .action-buttons-grid .btn-create:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.home-card .action-buttons-grid .btn-create{padding:.75rem;background-color:#6c5ce7;color:#fff;font-size:.95rem;display:flex;align-items:center;justify-content:center;gap:.4rem}.highscores-card{margin-top:1rem;padding:1.25rem}.highscores-card .highscores-header{display:flex;align-items:center;gap:.5rem;font-weight:800;font-size:.9rem;margin-bottom:.75rem;color:#2d3436}.highscores-card .table-wrapper{max-height:140px;overflow-y:auto}.highscores-card .table-wrapper table{width:100%;border-collapse:collapse;font-size:.85rem;text-align:left}.highscores-card .table-wrapper table th{padding:.35rem .5rem;color:#636e72;border-bottom:2px solid #dfe6e9;font-weight:800}.highscores-card .table-wrapper table td{padding:.35rem .5rem;border-bottom:1px solid #f1f2f6;font-weight:700}.highscores-card .table-wrapper table td.score-val{color:#fd79a8;font-weight:800}.highscores-card .table-wrapper table td.date-val{color:#636e72;font-size:.75rem}.lobby-container{width:100%;max-width:580px;margin:0 auto}.lobby-card{text-align:center;padding:1.75rem 1.5rem}.lobby-card .lobby-badge{font-size:.8rem;font-weight:800;color:#6c5ce7;letter-spacing:.1em}.lobby-card .lobby-title{font-size:2.4rem;font-weight:900;margin:.2rem 0 .75rem;letter-spacing:.05em}.lobby-card .lobby-title span{color:#fd79a8}.lobby-card .copy-wrapper{display:flex;justify-content:center;gap:.65rem;margin-bottom:1.25rem}.lobby-card .copy-wrapper .copy-btn{padding:.4rem .85rem;border-radius:9999px;border:2px solid #2d3436;background-color:#f1f2f6;font-weight:800;font-size:.85rem;cursor:pointer;display:flex;align-items:center;gap:.4rem;box-shadow:1px 1px 0 #2d3436;transition:all .15s ease}.lobby-card .copy-wrapper .copy-btn:hover{transform:translateY(-1px);box-shadow:2px 2px 0 #2d3436}.lobby-card .copy-wrapper .copy-btn.invite-link-btn{background-color:#81ecec;color:#00896d}.lobby-card .host-config-panel{background-color:#f1f2f6;border:2px solid #2d3436;border-radius:12px;padding:1.15rem;margin-bottom:1.25rem;box-shadow:2px 2px 0 #2d3436;text-align:left}.lobby-card .host-config-panel .config-header{font-weight:900;font-size:.85rem;color:#6c5ce7;display:flex;align-items:center;gap:.4rem;margin-bottom:.85rem;letter-spacing:.05em}.lobby-card .host-config-panel .config-grid{display:flex;flex-direction:column;gap:.75rem}.lobby-card .host-config-panel .config-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.lobby-card .host-config-panel .config-item label{font-weight:800;font-size:.78rem;color:#2d3436}.lobby-card .host-config-panel .config-item .config-val-display{font-weight:800;font-size:.85rem;color:#fd79a8}.lobby-card .host-config-panel .config-item .config-btn-group{display:flex;gap:.3rem}.lobby-card .host-config-panel .config-item .config-btn-group .config-chip{padding:.2rem .55rem;font-size:.75rem;font-weight:800;border-radius:8px;border:1.5px solid #2d3436;background-color:#fff;cursor:pointer;transition:all .15s ease}.lobby-card .host-config-panel .config-item .config-btn-group .config-chip.active{background-color:#6c5ce7;color:#fff;box-shadow:1px 1px 0 #2d3436}.lobby-card .host-config-panel .config-item .toggle-switch-btn{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lobby-card .host-config-panel .config-item .toggle-switch-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.lobby-card .host-config-panel .config-item .toggle-switch-btn:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.lobby-card .host-config-panel .config-item .toggle-switch-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.lobby-card .host-config-panel .config-item .toggle-switch-btn{padding:.25rem .75rem;font-size:.75rem;display:flex;align-items:center;gap:.3rem}.lobby-card .host-config-panel .config-item .toggle-switch-btn.on{background-color:#00b894;color:#fff}.lobby-card .host-config-panel .config-item .toggle-switch-btn.off{background-color:#ff7675;color:#fff}.lobby-card .players-section{text-align:left;margin-bottom:1.5rem}.lobby-card .players-section .players-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;font-weight:800;font-size:.9rem}.lobby-card .players-section .players-header .players-title{display:flex;align-items:center;gap:.4rem}.lobby-card .players-section .players-header .players-count{color:#6c5ce7}.lobby-card .players-section .players-list-scroll{max-height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:.4rem;padding-right:4px}.lobby-card .players-section .players-list-scroll .player-item{display:flex;align-items:center;justify-content:space-between;padding:.6rem .85rem;border-radius:8px;border:2px solid #2d3436;background-color:#fff;box-shadow:2px 2px 0 #2d3436}.lobby-card .players-section .players-list-scroll .player-item.is-me{background-color:#fff;border-color:#6c5ce7}.lobby-card .players-section .players-list-scroll .player-item.disconnected{opacity:.5}.lobby-card .players-section .players-list-scroll .player-item .player-meta{display:flex;align-items:center;gap:.4rem;font-weight:800;font-size:.9rem}.lobby-card .players-section .players-list-scroll .player-item .player-meta .status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.lobby-card .players-section .players-list-scroll .player-item .player-meta .status-dot.on{background-color:#00b894}.lobby-card .players-section .players-list-scroll .player-item .player-meta .status-dot.off{background-color:#ff7675}.lobby-card .players-section .players-list-scroll .player-item .player-meta .me-tag{font-size:.75rem;color:#6c5ce7}.lobby-card .players-section .players-list-scroll .player-item .host-badge{display:flex;align-items:center;gap:.25rem;background-color:#ffeaa7;color:#d63031;font-size:.75rem;font-weight:800;padding:.15rem .45rem;border-radius:6px;border:1px solid #2d3436}.lobby-card .btn-start-game{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lobby-card .btn-start-game:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.lobby-card .btn-start-game:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.lobby-card .btn-start-game:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.lobby-card .btn-start-game{width:100%;padding:.85rem;background-color:#00b894;color:#fff;font-size:1.05rem;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.75rem}.lobby-card .waiting-message{margin-bottom:.75rem;font-weight:700;color:#636e72;font-style:italic;font-size:.9rem}.lobby-card .btn-leave-room{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.lobby-card .btn-leave-room:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.lobby-card .btn-leave-room:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.lobby-card .btn-leave-room:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.lobby-card .btn-leave-room{padding:.5rem 1.1rem;background-color:#ff7675;color:#fff;font-size:.85rem;display:inline-flex;align-items:center;gap:.4rem}.game-layout{flex:1 1;width:100%;max-height:calc(100vh - 80px);display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-gap:1rem;gap:1rem;align-items:stretch;overflow:hidden}@media(max-width:960px){.game-layout{grid-template-columns:1fr;overflow-y:auto}}.main-game-column{justify-content:space-between;overflow:hidden}.main-game-column,.sidebar-column{display:flex;flex-direction:column;gap:.75rem;height:100%}.sidebar-column{overflow-y:auto;padding-right:2px}.sidebar-column::-webkit-scrollbar{width:5px}.sidebar-column::-webkit-scrollbar-thumb{background-color:#b2bec3;border-radius:4px}.card{background:#fff;border:3px solid #2d3436;border-radius:18px;box-shadow:4px 4px 0 #2d3436}.chat-box-card{padding:.85rem;display:flex;flex-direction:column;height:190px;border-left:5px solid #00cec9;transition:border-color .2s ease,box-shadow .2s ease}.chat-box-card.chat-input-focused{border-color:#6c5ce7;box-shadow:0 0 0 3px rgba(108,92,231,.3),4px 4px 0 #2d3436}.chat-box-card .chat-header{display:flex;align-items:center;justify-content:space-between;font-weight:800;font-size:.8rem;margin-bottom:.4rem;color:#2d3436}.chat-box-card .chat-header .chat-title{display:flex;align-items:center;gap:.35rem}.chat-box-card .chat-header .focus-indicator-badge{font-size:.68rem;font-weight:900;color:#6c5ce7;background-color:#fff;padding:.15rem .45rem;border-radius:9999px;border:1px solid #2d3436;animation:pulse 1.5s infinite}.chat-box-card .chat-messages-wrapper{flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:.3rem;padding-right:4px;margin-bottom:.4rem;font-size:.78rem}.chat-box-card .chat-messages-wrapper::-webkit-scrollbar{width:4px}.chat-box-card .chat-messages-wrapper::-webkit-scrollbar-thumb{background-color:#b2bec3;border-radius:4px}.chat-box-card .chat-messages-wrapper .empty-chat-msg{color:#636e72;font-style:italic;font-size:.75rem;text-align:center;margin:auto}.chat-box-card .chat-messages-wrapper .chat-message-item{display:flex;gap:.35rem;line-height:1.35;word-break:break-word}.chat-box-card .chat-messages-wrapper .chat-message-item .sender-name{font-weight:800;color:#fd79a8;flex-shrink:0}.chat-box-card .chat-messages-wrapper .chat-message-item .msg-text{color:#2d3436;font-weight:600}.chat-box-card .chat-messages-wrapper .chat-message-item.me .sender-name{color:#6c5ce7}.chat-box-card .chat-messages-wrapper .chat-message-item.system{color:#636e72;font-style:italic}.chat-box-card .chat-input-form{display:flex;gap:.4rem}.chat-box-card .chat-input-form input{flex:1 1;padding:.35rem .6rem;font-size:.8rem;font-weight:700;border:1.5px solid #2d3436;border-radius:8px;outline:none}.chat-box-card .chat-input-form input:focus{border-color:#6c5ce7}.chat-box-card .chat-input-form .btn-chat-send{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.chat-box-card .chat-input-form .btn-chat-send:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.chat-box-card .chat-input-form .btn-chat-send:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.chat-box-card .chat-input-form .btn-chat-send:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.chat-box-card .chat-input-form .btn-chat-send{padding:.35rem .65rem;background-color:#6c5ce7;color:#fff;display:flex;align-items:center;justify-content:center}.movie-board-container{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:1.25rem 1.25rem 3.4rem;background:#fff;border:3px solid #2d3436;border-radius:18px;box-shadow:4px 4px 0 #2d3436;flex:1 1;min-height:210px}.movie-board-container .solved-waiting-banner{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-top:.4rem;padding:.45rem 1.1rem;background-color:#8fffe9;border:2px solid #00b894;border-radius:9999px;color:#00896d;font-weight:800;font-size:.85rem;box-shadow:2px 2px 0 #2d3436;animation:fadeIn .3s ease}.movie-board-container .board-blur-overlay{position:absolute;top:0;left:0;right:0;bottom:34px;background:hsla(0,0%,100%,.78);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:18px 18px 0 0;display:flex;align-items:center;justify-content:center;z-index:20;animation:fadeIn .3s ease}.movie-board-container .board-blur-overlay .overlay-content{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1rem;text-align:center}.movie-board-container .board-blur-overlay .overlay-content .overlay-badge{font-size:.85rem;font-weight:900;padding:.35rem .85rem;border-radius:9999px;border:2px solid #2d3436;box-shadow:2px 2px 0 #2d3436}.movie-board-container .board-blur-overlay .overlay-content .overlay-badge.win{background-color:#e6f9f4;color:#00896d}.movie-board-container .board-blur-overlay .overlay-content .overlay-badge.loss{background-color:#ffeef0;color:#d63031}.movie-board-container .board-blur-overlay .overlay-content .btn-overlay-next{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.movie-board-container .board-blur-overlay .overlay-content .btn-overlay-next:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.movie-board-container .board-blur-overlay .overlay-content .btn-overlay-next:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.movie-board-container .board-blur-overlay .overlay-content .btn-overlay-next:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.movie-board-container .board-blur-overlay .overlay-content .btn-overlay-next{padding:.75rem 1.6rem;background-color:#00b894;color:#fff;font-size:1.05rem;display:flex;align-items:center;gap:.5rem;box-shadow:3px 3px 0 #2d3436}.movie-board-container .board-blur-overlay .overlay-content .waiting-overlay-msg{font-size:.9rem;font-weight:800;color:#636e72;font-style:italic}.movie-board-container .board-meta{display:flex;align-items:center;justify-content:space-between;width:100%;font-weight:800;font-size:.85rem;gap:.5rem}.movie-board-container .board-meta .round-badge{display:flex;align-items:center;gap:.3rem;color:#6c5ce7;background-color:#fff;padding:.25rem .65rem;border-radius:9999px;border:1.5px solid #2d3436}.movie-board-container .board-meta .timer-badge{display:flex;align-items:center;gap:.3rem;background-color:#ffeaa7;border:1.5px solid #2d3436;padding:.25rem .65rem;border-radius:9999px;color:#2d3436}.movie-board-container .board-meta .timer-badge.urgent{background-color:#ff7675;color:#fff;animation:pulse 1s infinite}.movie-board-container .board-meta .guesses-badge{display:flex;align-items:center;gap:.3rem;background-color:#74b9ff;border:1.5px solid #2d3436;padding:.25rem .65rem;border-radius:9999px;color:#fff}.movie-board-container .movie-tiles-wrapper{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.4rem 1.25rem;width:100%;padding:.5rem 0;margin:auto 0}.movie-board-container .movie-word{display:flex;align-items:center;gap:.3rem}.movie-board-container .char-tile{width:40px;height:48px;border-radius:8px;border:2px solid #2d3436;background-color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:800;text-transform:uppercase;box-shadow:2px 2px 0 #2d3436;transition:background-color .3s ease,transform .3s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(max-width:640px){.movie-board-container .char-tile{width:30px;height:38px;font-size:1rem}}.movie-board-container .char-tile.hidden{background-color:#faf8f5;color:#b2bec3}.movie-board-container .char-tile.hidden .tile-slot{font-size:1.2rem;color:#b2bec3}.movie-board-container .char-tile.revealed{background-color:#fd79a8;color:#fff;transform:scale(1.04);box-shadow:3px 3px 0 #2d3436;animation:flipTile .35s ease}.movie-board-container .char-tile.win-revealed{background-color:#00b894;color:#fff;transform:scale(1.06);box-shadow:3px 3px 0 #2d3436;border-color:#2d3436;animation:flipTile .35s ease}.movie-board-container .char-tile.loss-revealed{background-color:#d63031;color:#fff;transform:scale(1.02);box-shadow:2px 2px 0 #2d3436;border-color:#2d3436;animation:flipTile .35s ease}.movie-board-container .char-tile.punctuation{background-color:transparent;border:2px dashed #b2bec3;box-shadow:none;color:#636e72}.movie-board-container .used-chars-bar{position:absolute;bottom:8px;left:20px;right:20px;height:34px;display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:800;color:#636e72;border-top:2px dashed #dfe6e9;padding-top:.35rem;overflow:hidden}.movie-board-container .used-chars-bar .used-label{font-weight:800;color:#636e72}.movie-board-container .used-chars-bar .used-placeholder{color:#b2bec3;font-weight:600}.movie-board-container .used-chars-bar .used-chips{display:flex;gap:.2rem;flex-wrap:nowrap;overflow-x:auto}.movie-board-container .used-chars-bar .used-chips::-webkit-scrollbar{display:none}.movie-board-container .used-chars-bar .used-chip{padding:.1rem .4rem;border-radius:5px;border:1.5px solid #2d3436;font-weight:800;font-size:.8rem;flex-shrink:0}.movie-board-container .used-chars-bar .used-chip.correct{background-color:#e6f9f4;color:#00896d}.movie-board-container .used-chars-bar .used-chip.wrong{background-color:#ffeef0;color:#d63031}.movie-board-container .used-chars-bar .used-chip.bounce-used-chip{animation:bounceChip .6s cubic-bezier(.175,.885,.32,1.275);background-color:#ffeaa7!important;border-color:#d63031!important;color:#d63031!important}.keyboard-container{display:flex;flex-direction:column;align-items:center;gap:.35rem;width:100%;padding:.85rem;background-color:#fff;border:3px solid #2d3436;border-radius:18px;box-shadow:4px 4px 0 #2d3436}.keyboard-container .keyboard-header-info{width:100%;display:flex;justify-content:center;margin-bottom:.2rem}.keyboard-container .keyboard-header-info .focus-status-badge{font-size:.7rem;font-weight:800;padding:.15rem .6rem;border-radius:9999px;border:1px solid #2d3436;transition:all .2s ease}.keyboard-container .keyboard-header-info .focus-status-badge.keyboard-active{background-color:#e6f9f4;color:#00896d}.keyboard-container .keyboard-header-info .focus-status-badge.typing-in-input{background-color:#ffeaa7;color:#d63031}.keyboard-container .keyboard-row{display:flex;justify-content:center;gap:.3rem;width:100%}@media(max-width:640px){.keyboard-container .keyboard-row{gap:.15rem}}.keyboard-container .keyboard-row.numbers-row{margin-top:.2rem;border-top:1px dashed #dfe6e9;padding-top:.3rem}.keyboard-container .keyboard-row.numbers-row .num-key{height:36px;font-size:.9rem;background-color:#f1f2f6}@media(max-width:640px){.keyboard-container .keyboard-row.numbers-row .num-key{height:32px;font-size:.8rem}}.keyboard-container .key-btn{flex:1 1;max-width:44px;height:44px;border-radius:8px;border:2px solid #2d3436;background-color:#fff;font-weight:800;font-size:1.05rem;color:#2d3436;box-shadow:2px 2px 0 #2d3436;cursor:pointer;transition:all .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center}@media(max-width:640px){.keyboard-container .key-btn{max-width:32px;height:38px;font-size:.9rem}}.keyboard-container .key-btn:hover:not(:disabled){background-color:#f8f8fe;transform:translateY(-2px);box-shadow:3px 3px 0 #2d3436}.keyboard-container .key-btn:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.keyboard-container .key-btn.correct{background-color:#00b894;color:#fff;border-color:#2d3436;box-shadow:2px 2px 0 #2d3436}.keyboard-container .key-btn.wrong{background-color:#ff7675;color:#fff;opacity:.55;border-color:#2d3436;box-shadow:none}.keyboard-container .key-btn.bounce-key{animation:shakeKey .5s ease;background-color:#ffeaa7!important;color:#d63031!important;border-color:#d63031!important}.keyboard-container .key-btn:disabled{cursor:not-allowed}.movie-guess-form{display:flex;gap:.65rem;width:100%}@media(max-width:640px){.movie-guess-form{flex-direction:column}}.movie-guess-form input{flex:1 1;padding:.65rem .85rem;border:2px solid #2d3436;border-radius:12px;font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.9rem;font-weight:700;box-shadow:2px 2px 0 #2d3436;outline:none}.movie-guess-form input:focus{border-color:#6c5ce7}.movie-guess-form button{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.movie-guess-form button:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.movie-guess-form button:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.movie-guess-form button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.movie-guess-form button{padding:.65rem 1.15rem;background-color:#6c5ce7;color:#fff;font-size:.9rem;display:flex;align-items:center;justify-content:center;gap:.4rem;white-space:nowrap}.hint-panel{background:#fff;border-radius:18px;box-shadow:4px 4px 0 #2d3436;border:3px solid #2d3436;border-left:5px solid #fd79a8;padding:1.15rem}.hint-panel .hint-header{display:flex;align-items:center;gap:.4rem;font-weight:800;font-size:.95rem;margin-bottom:.65rem;color:#2d3436}.hint-panel .hint-list{display:flex;flex-direction:column;gap:.5rem}.hint-panel .hint-item{display:flex;flex-direction:column;gap:.25rem;padding:.55rem .75rem;background-color:#f1f2f6;border-radius:8px;border:1.5px solid #dfe6e9}.hint-panel .hint-item .hint-label{font-weight:700;font-size:.8rem;color:#636e72;display:flex;align-items:center;gap:.35rem}.hint-panel .hint-item .hint-val{font-weight:800;font-size:.85rem;color:#6c5ce7;word-break:break-word}.hint-panel .hint-item .hint-unlock-btn{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.hint-panel .hint-item .hint-unlock-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.hint-panel .hint-item .hint-unlock-btn:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.hint-panel .hint-item .hint-unlock-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.hint-panel .hint-item .hint-unlock-btn{padding:.3rem .65rem;background-color:#fd79a8;color:#fff;font-size:.75rem;align-self:flex-start;margin-top:.15rem}.scoreboard{background:#fff;border:3px solid #2d3436;border-radius:18px;box-shadow:4px 4px 0 #2d3436;padding:1.15rem}.scoreboard .scoreboard-header{display:flex;align-items:center;justify-content:space-between;font-weight:800;font-size:.95rem;margin-bottom:.65rem;border-bottom:2px solid #dfe6e9;padding-bottom:.35rem}.scoreboard .player-list{display:flex;flex-direction:column;gap:.4rem;max-height:180px;overflow-y:auto;padding-right:2px}.scoreboard .player-row{display:flex;align-items:center;justify-content:space-between;padding:.45rem .75rem;border-radius:8px;border:2px solid #2d3436;background-color:#fff;box-shadow:2px 2px 0 #2d3436}.scoreboard .player-row.me{border-color:#6c5ce7;background-color:#fff}.scoreboard .player-row .player-info{display:flex;align-items:center;gap:.35rem;font-weight:800;font-size:.85rem}.scoreboard .player-row .player-info .rank{width:20px;height:20px;border-radius:50%;background-color:#f1f2f6;display:flex;align-items:center;justify-content:center;font-size:.7rem}.scoreboard .player-row .player-score{font-weight:800;color:#fd79a8;font-size:.9rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(35,33,39,.75);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-card{background-color:#fff;border:3px solid #2d3436;border-radius:18px;box-shadow:4px 4px 0 #2d3436;width:100%;max-width:480px;padding:1.75rem;text-align:center;animation:scaleUp .3s cubic-bezier(.175,.885,.32,1.275);max-height:calc(100vh - 40px);overflow-y:auto}.modal-card.confirm-modal-card{max-width:420px}.modal-card .confirm-modal-msg{font-size:.95rem;font-weight:700;color:#636e72;margin:.65rem 0 1rem;line-height:1.45}.modal-card .modal-top-label{font-size:.8rem;font-weight:800;color:#fd79a8;letter-spacing:.1em}.modal-card h2{font-size:1.6rem;font-weight:900;margin-bottom:.4rem;color:#2d3436}.modal-card .modal-winners-section{text-align:left;margin-bottom:1.25rem}.modal-card .modal-winners-section .winners-title{font-weight:800;font-size:.85rem;margin-bottom:.4rem;color:#2d3436}.modal-card .modal-winners-section .winners-list{display:flex;flex-direction:column;gap:.35rem}.modal-card .modal-winners-section .winners-list .winner-row{display:flex;align-items:center;justify-content:space-between;padding:.45rem .75rem;background-color:#f1f2f6;border-radius:8px;border:1px solid #b2bec3;font-weight:700;font-size:.85rem}.modal-card .modal-winners-section .winners-list .winner-row .winner-meta{display:flex;align-items:center;gap:.35rem}.modal-card .modal-winners-section .winners-list .winner-row .winner-score{color:#00b894;font-weight:800}.modal-card .modal-winners-section .no-winners-msg{color:#636e72;font-style:italic;font-size:.85rem}.modal-card .champion-box{padding:.85rem;background-color:#ffeaa7;border-radius:12px;border:2px solid #2d3436;box-shadow:2px 2px 0 #2d3436;margin:.75rem 0 1.25rem}.modal-card .champion-box .champion-label{font-size:.8rem;font-weight:800;color:#d63031}.modal-card .champion-box .champion-name{font-size:1.4rem;font-weight:900;color:#2d3436}.modal-card .champion-box .champion-score{font-size:1rem;font-weight:800;color:#6c5ce7}.modal-card .modal-actions .btn-modal-action{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.modal-card .modal-actions .btn-modal-action:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.modal-card .modal-actions .btn-modal-action:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.modal-card .modal-actions .btn-modal-action:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.modal-card .modal-actions .btn-modal-action{padding:.75rem 1.75rem;background-color:#00b894;color:#fff;font-size:1rem;width:100%;display:flex;align-items:center;justify-content:center;gap:.4rem}.modal-card .modal-actions-grid{display:flex;gap:.75rem}.modal-card .modal-actions-grid .btn-modal-action{border:2px solid #2d3436;border-radius:12px;box-shadow:2px 2px 0 #2d3436;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.modal-card .modal-actions-grid .btn-modal-action:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px 0 #2d3436}.modal-card .modal-actions-grid .btn-modal-action:active:not(:disabled){transform:translateY(1px);box-shadow:1px 1px 0 #2d3436}.modal-card .modal-actions-grid .btn-modal-action:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.modal-card .modal-actions-grid .btn-modal-action{padding:.75rem 1rem;font-size:.9rem;display:flex;align-items:center;justify-content:center;gap:.4rem}.modal-card .modal-actions-grid .btn-modal-action.btn-play-again{background-color:#6c5ce7;color:#fff;flex:1 1}.modal-card .modal-actions-grid .btn-modal-action.btn-home{background-color:#ff7675;color:#fff;flex:1 1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes scaleUp{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes bounceChip{0%{transform:translateY(0) scale(1)}30%{transform:translateY(-10px) scale(1.3) rotate(-5deg)}60%{transform:translateY(0) scale(1.1)}80%{transform:translateY(-4px) scale(1.05)}to{transform:translateY(0) scale(1)}}@keyframes shakeKey{0%,to{transform:translateX(0)}20%,60%{transform:translateX(-4px) rotate(-3deg)}40%,80%{transform:translateX(4px) rotate(3deg)}}@keyframes flipTile{0%{transform:rotateY(0deg) scale(1)}50%{transform:rotateY(90deg) scale(1.15)}to{transform:rotateY(0deg) scale(1.04)}}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}