:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;background-color:#fff;display:block}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.home-container{min-height:100vh;display:flex;justify-content:center;align-items:center;background-color:#e5e5e5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.home-card{background-color:#fff;padding:60px 80px;border-radius:8px;box-shadow:0 2px 10px #0000001a;width:400px;display:flex;flex-direction:column;align-items:center}.home-title{font-size:32px;font-weight:600;margin-bottom:40px;color:#000}.primary-button{width:100%;padding:14px;font-size:16px;font-weight:600;background-color:#000;color:#fff;border:none;border-radius:4px;cursor:pointer}.guest-button{width:100%;padding:14px;font-size:16px;font-weight:500;background-color:#d0d0d0;color:#000;border:none;border-radius:4px;cursor:pointer}.guest-button:hover{background-color:#bfbfbf}.login-container{min-height:100vh;display:flex;justify-content:center;align-items:center;background-color:#e5e5e5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.login-card{background-color:#fff;padding:60px 80px;border-radius:8px;box-shadow:0 2px 10px #0000001a;width:400px;display:flex;flex-direction:column;align-items:center}.logo-container{margin-bottom:30px}.logo{width:120px;height:120px}.title{font-size:32px;font-weight:600;margin-bottom:30px;color:#000;text-align:left;width:100%}.input{width:100%;padding:14px 18px;font-size:16px;background-color:#fff;color:#000;border:2px solid black;border-radius:4px;outline:none;margin-bottom:1px;box-sizing:border-box}.primary-button{width:100%;padding:14px;font-size:16px;font-weight:600;background-color:#000;color:#fff;border:2px solid black;border-radius:4px;cursor:pointer;margin-bottom:25px}.primary-button:disabled{opacity:.6;cursor:not-allowed}.secondary-button{width:100%;padding:14px;font-size:16px;font-weight:500;background-color:#d0d0d0;color:#000;border:2px solid black;border-radius:4px;cursor:pointer}.guest-button{width:100%;padding:14px;font-size:16px;font-weight:500;background-color:#d0d0d0;color:#000;border:2px solid black;border-radius:4px;cursor:pointer;margin-top:15px}.toggle-container{width:100%;margin-top:5px;text-align:center}.toggle-text{font-size:14px;color:#666;margin-bottom:10px}.secondary-button{width:100%;padding:14px;font-size:16px;font-weight:500;background-color:#d0d0d0;color:#000;border:none;border-radius:4px;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:10px}.secondary-button:hover{background-color:#bfbfbf}.modal-overlay,.popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:10}.modal,.modal-content,.popup{background-color:#fff;padding:40px 60px;border-radius:8px;text-align:center;box-shadow:0 2px 10px #0003}:is(.modal,.modal-content,.popup) h2{margin-bottom:15px;font-size:28px}:is(.modal,.modal-content,.popup) button{background-color:#000;color:#fff;border:none;padding:10px 20px;font-size:16px;border-radius:4px;cursor:pointer;margin-top:10px}:is(.modal,.modal-content,.popup) button:hover{background-color:#333}.modal-close{position:absolute;top:10px;right:10px;background:none;border:none;font-size:1.25rem;cursor:pointer}.dashboard-container{min-height:100vh;display:flex;justify-content:center;align-items:center;background-color:#e5e5e5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.dashboard-card{background-color:#fff;padding:60px 80px;border-radius:8px;box-shadow:0 2px 10px #0000001a;width:420px;display:flex;flex-direction:column;align-items:center;position:relative}.top-buttons{position:absolute;top:20px;right:20px;display:flex;flex-direction:column;gap:10px}.top-button{display:flex;align-items:center;gap:8px;background-color:#fff;border:1px solid #000;border-radius:4px;padding:6px 12px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease}.top-button:hover{background-color:#f0f0f0}.top-button.gray{background-color:#d0d0d0;border-color:#555}.top-button.gray:hover{background-color:#bfbfbf}.logo-container{margin-top:40px;margin-bottom:30px}.crossword-logo{display:flex;flex-direction:column;align-items:flex-start;transform:rotate(-15deg)}.row{display:flex;gap:4px;margin-bottom:4px}.offset{margin-left:24px}.offset-2{margin-left:48px}.tile{width:42px;height:42px;border:2px solid #000;display:flex;justify-content:center;align-items:center;font-weight:700;font-size:18px;background-color:#f7f7f7}.tile.dark{background-color:#bdbdbd}.dashboard-title{font-size:28px;font-weight:600;margin-bottom:30px;color:#000}.button-container{width:100%;display:flex;flex-direction:column;gap:15px}.primary-button{width:100%;padding:14px;font-size:16px;font-weight:600;background-color:#000;color:#fff;border:none;border-radius:4px;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:10px}.primary-button:hover{background-color:#333}.battle-container{display:flex;flex-direction:column;align-items:center;font-family:Inter,sans-serif;padding:20px;background-color:#f8f8f8;min-height:100vh}.top-button.gray{background:#ddd;border:1px solid #aaa;border-radius:8px;padding:10px 20px;font-weight:600;cursor:pointer;color:#000}.timer-display{font-size:18px;font-weight:500;color:#333;display:flex;align-items:center;gap:8px}.battle-body{display:flex;gap:40px;justify-content:center;align-items:flex-start;margin-top:20px}.crossword-container{display:grid;grid-template-columns:repeat(5,50px);grid-template-rows:repeat(5,50px);gap:2px;border:2px solid #000;background:#fff;justify-content:center}.cell-wrapper{position:relative;width:50px;height:50px;border:1px solid #000;background-color:#fff;display:flex;align-items:center;justify-content:center}.black-cell{background-color:#000!important}.cell{width:100%;height:100%;text-align:center;font-size:22px;color:#000;text-transform:uppercase;border:none;outline:none;background:transparent}.cell-number{position:absolute;top:2px;left:4px;font-size:10px;font-weight:600;color:#000}.clues-container{max-width:250px;font-size:14px}.clues-container h3{font-weight:700;margin-bottom:8px;text-decoration:underline;color:#000}.popup-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:9999}.popup{background-color:#fff;border-radius:16px;padding:2rem 3rem;width:90%;max-width:420px;text-align:center;box-shadow:0 8px 24px #00000040;display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin:auto}.logo-container{display:flex;justify-content:center}.logo{width:100px;height:auto}.popup-title{font-size:1.8rem;font-weight:700;color:#fff}.popup-content{display:flex;flex-direction:column;align-items:center;color:#fff}.popup-time{font-size:1.2rem;margin:0}.popup-actions{display:flex;justify-content:center;width:100%}.popup-button{background:#007bff;color:#fff;border:none;padding:.8rem 1.5rem;border-radius:8px;cursor:pointer;font-size:1rem;transition:background .2s ease}.popup-button:hover{background:#0056b3}.loading-popup{color:#000;background-color:#fff;border:2px solid #000;border-radius:8px;padding:2rem;text-align:center;font-size:1.2rem;font-weight:500}.stats-container{min-height:100vh;background-color:#e5e5e5;display:flex;flex-direction:column;align-items:center;padding:40px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.stats-logo{width:80px;height:auto;position:absolute;top:30px;left:30px}.stats-title{font-size:28px;font-weight:600;margin-top:80px;margin-bottom:40px;text-align:center;color:#000}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px;justify-items:center;width:100%;max-width:1100px;padding:12px;box-sizing:border-box}@media(max-width:980px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}@media(max-width:520px){.stats-grid{grid-template-columns:1fr;gap:20px}.stat-box{padding:20px 24px;min-width:220px}}.stat-item{text-align:center}.stat-item h3{font-size:18px;font-weight:700;margin-bottom:16px;color:#000}.stat-box{background-color:#d9d9d9;padding:30px 40px;border-radius:4px;min-width:120px;min-height:120px;display:flex;flex-direction:column;justify-content:center;align-items:center}.stat-value{font-size:22px;font-weight:700;font-style:italic;margin:0;color:#000}.stat-label{font-size:14px;font-style:italic;font-weight:600;margin-top:4px;color:#000}.battle-container{display:flex;flex-direction:column;align-items:center;font-family:Inter,sans-serif;padding:20px;background-color:#f8f8f8}.battle-header{display:flex;align-items:center;justify-content:space-between;width:90%;margin-bottom:20px}.quit-btn{background:#ddd;border:1px solid #aaa;border-radius:8px;padding:10px 20px;font-weight:600;cursor:pointer}.progress-section{display:flex;gap:30px}.progress-item{text-align:center}.progress-text{font-weight:700;font-size:1.1rem;margin-top:4px}.progress-text.user{color:#3b5bdb}.progress-text.opponent{color:#c17c00}.mini-crossword{display:grid;grid-template-columns:repeat(5,14px);gap:1px;margin-top:4px;border:1px solid #000;background:#fff}.mini-row{display:contents}.mini-cell{width:14px;height:14px;border:1px solid #000;background-color:#f8f8f8}.mini-cell-green{background-color:#b5e7a0}.battle-body{display:flex;gap:40px;justify-content:center;align-items:flex-start}.crossword-container{display:grid;grid-template-columns:repeat(5,50px);grid-template-rows:repeat(5,50px);gap:2px;border:2px solid #000;background:#fff}.row{display:contents}.cell{width:50px;height:50px;text-transform:uppercase;text-align:center;border:1px solid #000;font-size:20px;font-weight:600}.cell:focus{outline:2px solid #4a90e2}.opponent-view .cell{pointer-events:none;background-color:#f0f0f0}.cell-correct{background-color:#b5e7a0}.clues-container{max-width:250px}.clues-container h3{font-weight:700;margin-bottom:5px}.clues-container ul{list-style:none;padding-left:0;margin-bottom:20px}.clues-container li{margin-bottom:6px;color:#444}.black-cell{background-color:#000!important;border:1px solid #000}.cell-wrapper{position:relative;width:50px;height:50px;box-sizing:border-box;border:1px solid #000;display:flex;align-items:center;justify-content:center;background-color:#fff}.cell{width:100%;height:100%;border:none;outline:none;text-align:center;font-size:22px;text-transform:uppercase;background:transparent}.cell:focus{background-color:beige}.mini-black-cell{background-color:#000}.timer{font-size:18px;font-weight:500;color:#333}.popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:10}.popup{background-color:#fff;padding:40px 60px;border-radius:8px;text-align:center;box-shadow:0 2px 10px #0003}.popup h2{margin-bottom:15px;font-size:28px}.popup button{background-color:#000;color:#fff;border:none;padding:10px 20px;font-size:16px;border-radius:4px;cursor:pointer;margin-top:10px}.popup button:hover{background-color:#333}.cell-wrapper{position:relative;width:50px;height:50px;border:1px solid #000}.cell{width:100%;height:100%;text-align:center;font-size:24px;text-transform:uppercase;border:none;outline:none}.cell-number{position:absolute;top:2px;left:4px;font-size:10px;color:#000}.loading-popup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border:2px solid black;border-radius:12px;padding:30px 50px;font-size:18px;text-align:center;box-shadow:0 4px 12px #0000004d}.popup{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#00000080;flex-direction:column;gap:1.5rem;margin:auto}.popup-inner{background:#fff;padding:30px 40px;border-radius:12px;text-align:center;box-shadow:0 4px 12px #0000004d}.timer{margin-top:10px;font-size:18px;font-weight:600}.progress-info{display:flex;flex-direction:column;align-items:flex-start;margin:0 1rem;width:150px}.progress-info.opponent{align-items:flex-end}.progress-label{font-size:.9rem;margin-bottom:.3rem}.progress-bar{background:#ddd;border-radius:6px;width:100%;height:8px;overflow:hidden}.progress-fill{background:#4caf50;height:100%;transition:width .3s ease;border-radius:6px}.progress-fill.opponent{background:#ff5252}.mini-crossword{display:flex;flex-direction:column;gap:2px;margin:5px 0}.mini-row{display:flex;gap:2px}.mini-cell{width:12px;height:12px;background-color:#ddd;border-radius:2px}.mini-black-cell{background-color:#333}.progress-item{display:flex;flex-direction:column;align-items:center}.mini-cell.mini-highlight-blue{background-color:#00f!important}.mini-highlight-green{background-color:green}.battle-room{width:100%;max-width:600px;margin:3rem auto;padding:2rem;background:#fff;border-radius:18px;box-shadow:0 4px 14px #0000001f;text-align:center;font-family:inherit}.battle-room h1{font-size:2rem;margin-bottom:.5rem;color:#222}.battle-room p{font-size:1rem;color:#444;margin:.3rem 0}.waiting{margin-top:1.5rem;padding:1rem;background:#fdf3d0;border:1px solid #f5d27b;border-radius:10px;color:#8a6d1a;font-weight:600}.joined{margin-top:1.5rem;padding:1rem;background:#e2f6e7;border:1px solid #7fd19b;border-radius:10px;color:#2f7a47;font-weight:600}.ready-section{margin-top:1.5rem}.ready-btn{padding:.7rem 1.4rem;font-size:1rem;border-radius:10px;border:none;cursor:pointer;background:#0078ff;color:#fff;font-weight:600;transition:.2s ease}.ready-btn:hover:not(:disabled){background:#005fcc}.ready-btn:disabled{background:#ccc;cursor:default}.starting{margin-top:1.2rem;font-size:1.1rem;color:#007800;font-weight:600}@media(max-width:480px){.battle-room{margin:1.5rem;padding:1.5rem}.ready-btn{width:100%}}
