@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@600;700&display=swap";.hangman-game{padding:2rem;max-width:1400px;margin:0 auto}.hangman-game.loading,.hangman-game.error{text-align:center;padding:4rem;font-size:1.2rem}.hangman-game .game-header{text-align:center;margin-bottom:2rem}.hangman-game .game-header h2{font-size:2rem;margin-bottom:1rem;color:#2b3f49}.hangman-game .game-header .turn-indicator{display:inline-block;padding:.5rem 1.5rem;border-radius:25px;font-weight:600;font-size:1.1rem;transition:all .3s ease}.hangman-game .game-header .turn-indicator.my-turn{background:linear-gradient(135deg,#5a8790,#4f6779);color:#fff;animation:pulse 1.5s ease-in-out infinite}.hangman-game .game-header .turn-indicator.opponent-turn{background:#d6e0e2;color:#5b6f79}.hangman-game .game-header .game-complete{font-size:1.5rem;font-weight:700;padding:1rem}.hangman-game .game-header .game-complete .winner{color:#5d8a68}.hangman-game .game-header .game-complete .loser{color:#b86f67}.hangman-game .game-header .game-complete .draw{color:#6c8089}.hangman-game .players-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}@media(max-width:968px){.hangman-game .players-container{grid-template-columns:1fr}}.hangman-game .player-side{background:linear-gradient(180deg,#f7fafa,#edf2f2);border-radius:12px;padding:1.5rem;box-shadow:0 8px 24px #213d471a;transition:all .3s ease}.hangman-game .player-side.active-turn{box-shadow:0 0 0 3px #6f97a0;transform:translateY(-2px)}.hangman-game .player-side.my-side{border-top:4px solid #5a8790}.hangman-game .player-side.opponent-side{border-top:4px solid #c4975c}.hangman-game .player-side .player-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #d8e2e4}.hangman-game .player-side .player-header h3{font-size:1.3rem;margin:0;color:#2b3f49}.hangman-game .player-side .player-header .stats{display:flex;gap:1rem;font-size:.9rem}.hangman-game .player-side .player-header .stats span{background:#e6eeef;padding:.3rem .7rem;border-radius:8px;font-weight:500}.hangman-game .player-side .word-display{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;min-height:60px;align-items:center}.hangman-game .player-side .word-display .word-letter{font-size:2rem;font-weight:700;font-family:monospace;width:40px;height:50px;display:inline-flex;align-items:center;justify-content:center;border-bottom:3px solid #617984;color:#4b7a86}.hangman-game .player-side .word-display .word-space{width:20px}.hangman-game .player-side .hangman-drawing{display:flex;justify-content:center;margin:1.5rem 0;background:#e7edef;border-radius:8px;padding:1rem}.hangman-game .player-side .guesses-info{margin-top:1.5rem;padding:1rem;background:#e7edef;border-radius:8px}.hangman-game .player-side .guesses-info>div{margin-bottom:.5rem}.hangman-game .player-side .guesses-info>div:last-child{margin-bottom:0}.hangman-game .player-side .guesses-info>div strong{color:#5b6f79;margin-right:.5rem}.hangman-game .player-side .guesses-info .correct-guesses{color:#5d8a68}.hangman-game .player-side .guesses-info .incorrect-guesses{color:#b86f67}.hangman-game .player-side .guesses-info .hits-count{color:#5d8a68;font-weight:600}.hangman-game .player-side .guesses-info .misses-count{color:#b86f67;font-weight:600}.hangman-game .player-side .status{margin-top:1rem;padding:1rem;border-radius:8px;text-align:center;font-weight:700;font-size:1.1rem}.hangman-game .player-side .status.won{background:#d8e9dd;color:#3e6848;border:2px solid #5d8a68}.hangman-game .player-side .status.lost{background:#eedad8;color:#7d3f3a;border:2px solid #b86f67}.hangman-game .player-side .status.lost .revealed-word{margin-top:.5rem;font-size:.9rem;font-family:monospace}.hangman-game .keyboard-section{background:linear-gradient(180deg,#f7fafa,#edf2f2);border-radius:12px;padding:1.5rem;box-shadow:0 8px 24px #213d471a}.hangman-game .keyboard-section h3{text-align:center;margin-bottom:1rem;color:#2b3f49}.hangman-game .keyboard-section .keyboard{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;max-width:800px;margin:0 auto}.hangman-game .keyboard-section .keyboard .key{width:45px;height:45px;border:2px solid #6f97a0;background:#f5f9f9;color:#476f7b;font-size:1.1rem;font-weight:700;border-radius:8px;cursor:pointer;transition:all .2s ease}.hangman-game .keyboard-section .keyboard .key:hover:not(.disabled){background:#6f97a0;color:#fff;transform:translateY(-2px);box-shadow:0 4px 8px #476f7b4d}.hangman-game .keyboard-section .keyboard .key:active:not(.disabled){transform:translateY(0)}.hangman-game .keyboard-section .keyboard .key.correct{background:#5d8a68;border-color:#5d8a68;color:#fff}.hangman-game .keyboard-section .keyboard .key.incorrect{background:#b86f67;border-color:#b86f67;color:#fff}.hangman-game .keyboard-section .keyboard .key.disabled{cursor:not-allowed;opacity:.6}.hangman-game .keyboard-section .guess-feedback{margin-top:1rem;padding:.75rem;border-radius:8px;text-align:center;font-weight:600;animation:slideIn .3s ease}.hangman-game .keyboard-section .guess-feedback.correct{background:#d8e9dd;color:#3e6848;border:2px solid #5d8a68}.hangman-game .keyboard-section .guess-feedback.incorrect{background:#eedad8;color:#7d3f3a;border:2px solid #b86f67}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}:root{--brand-sky: #3f7f8f;--brand-sky-deep: #2c5f6d;--brand-sun: #d8a75a;--surface-card: #f5f8f8;--surface-warm: #eef3f2;--surface-soft: #e8efee;--text-default: #243741;--text-muted: #59707a;--ring-color: rgba(63, 127, 143, .2);--accent-rose: #b86f67;--accent-lime: #5d8a68}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Manrope,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(1200px 800px at 10% -10%,#dae8ec,#dae8ec00 55%),radial-gradient(1000px 700px at 100% 0%,#efe3cf,#efe3cf00 45%),#e9eff1;color:var(--text-default)}#root{min-height:100vh}.site-brand{display:flex;align-items:center;gap:.85rem}.site-brand-compact{gap:.65rem}.site-logo{width:3.4rem;height:3.4rem;border-radius:.95rem;-o-object-fit:cover;object-fit:cover;box-shadow:0 10px 28px #2c5f6d33}.site-brand-compact .site-logo{width:2.95rem;height:2.95rem;border-radius:.7rem;box-shadow:0 8px 18px #2c5f6d2e}.site-brand-title{margin:0;font-family:Sora,Manrope,sans-serif;font-weight:700;font-size:2rem;letter-spacing:-.03em;line-height:1.05;color:var(--brand-sky-deep)}.site-brand-title-compact{font-size:1.45rem;letter-spacing:-.02em}.site-brand-subtitle{margin-top:.22rem;margin-bottom:0;font-size:1rem;color:var(--text-muted)}.page-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem}@media(max-width:768px){.site-brand-title{font-size:1.65rem}.site-brand-subtitle{font-size:.88rem}.page-toolbar{flex-direction:column;align-items:flex-start}}.btn-primary{background:linear-gradient(140deg,#4d8c98,#3e7582);color:#fff;font-weight:600;padding:.6rem 1.05rem;border-radius:.7rem;border:none;cursor:pointer;box-shadow:0 8px 20px #2c5f6d3d;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 22px #2c5f6d47;filter:brightness(1.02)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background-color:#dde7e9;color:#2d4e5b;font-weight:600;padding:.6rem 1.05rem;border-radius:.7rem;border:none;cursor:pointer;transition:background-color .2s,transform .2s}.btn-secondary:hover{background-color:#d0dde0;transform:translateY(-1px)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed;transform:none}.card{background:linear-gradient(180deg,#f8fbfb 0%,var(--surface-warm) 100%);border:1px solid #d5e0e2;border-radius:1rem;box-shadow:0 10px 30px #203e481a;padding:1.5rem}.soft-panel{background:linear-gradient(180deg,#f2f6f6,#e7eeee);border:1px solid #cfdadc;border-radius:.85rem}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .65rem;font-size:.73rem;font-weight:700;letter-spacing:.03em}.pill-game{background:#d6e5e7;color:#2f5f6b}.pill-player{background:#dfe8dc;color:#44634b}.pill-host{background:#e7dcc6;color:#665130}.pill-you{background:#dbe7ec;color:#375869}.modal-shell{background:linear-gradient(180deg,#f8fbfa,#edf3f2);border:1px solid #d3e0e2;border-radius:1rem;box-shadow:0 24px 45px #213d4738}input[type=text],input[type=email],input[type=password],select,textarea{width:100%;padding:.5rem .75rem;border:1px solid #c6d4d8;border-radius:.7rem;font-size:1rem;background-color:#f9fbfb;transition:border-color .2s,box-shadow .2s,background-color .2s}input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand-sky);background-color:#fff;box-shadow:0 0 0 3px var(--ring-color)}label{display:block;font-size:.875rem;font-weight:500;color:#3c5360;margin-bottom:.25rem}.min-h-screen{min-height:100vh}.flex{display:flex}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-6>*+*{margin-top:1.5rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.text-center{text-align:center}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-sm{font-size:.875rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.text-gray-500{color:#728692}.text-gray-600{color:#5b6f7a}.text-gray-700{color:#3f5560}.text-gray-800{color:#2b3f49}.text-green-600{color:var(--accent-lime)}.text-red-700{color:#b91c1c}.text-blue-800{color:#3c6073}.text-yellow-800{color:#854d0e}.text-primary-700{color:var(--brand-sky-deep)}.bg-gray-50{background-color:transparent}.bg-gray-100{background-color:#e6eced}.bg-primary-100{background-color:#dce8ea}.bg-primary-700{color:var(--brand-sky-deep)}.bg-red-100{background-color:#fee2e2}.bg-green-50{background-color:#f0fdf4}.bg-blue-200{background-color:#d6e5ef}.bg-yellow-200{background-color:#eaddc0}.border{border-width:1px}.border-2{border-width:2px}.border-gray-300{border-color:#c5d0d4}.border-red-400{border-color:#f87171}.border-primary-400{border-color:#76a2ad}.rounded{border-radius:.25rem}.rounded-lg{border-radius:.5rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pt-2{padding-top:.5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-1{margin-top:.25rem}.ml-2{margin-left:.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.w-full{width:100%}.max-w-md{max-width:28rem}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.transition-colors{transition-property:background-color,border-color,color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.hover\:shadow-lg:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.h-12{height:3rem}.w-12{width:3rem}.fixed{position:fixed}.inset-0{inset:0}.z-50{z-index:50}.bg-opacity-50{background-color:#00000080}.opacity-50{opacity:.5}.cursor-not-allowed{cursor:not-allowed}.flex-1{flex:1 1 0%}
