@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap);:root{--primary:#0984e3;--primary-dark:#0652dd;--dark:#1e272e;--dark-light:#34495e;--accent:#ff6b6b;--success:#00d2d3;--warning:#feca57;--bg:#f5f6fa;--white:#fff;--text:#2d3436;--text-muted:#636e72;--border:#dfe6e9;--shadow:0 4px 6px #00000012;--shadow-lg:0 10px 30px #0000001a}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f6fa;background-color:var(--bg);color:#2d3436;color:var(--text);font-family:Poppins,sans-serif;min-height:100vh;padding-top:70px}.hero{align-items:center;display:flex;gap:3rem;justify-content:space-between;padding:3rem 0}.hero-content{flex:1 1}.hero-title{color:var(--dark);font-size:3.5rem;font-weight:700;line-height:1.1;margin-bottom:1.25rem}.hero-title .highlight{color:var(--primary)}.hero-description{color:var(--text-muted);font-size:1.1rem;line-height:1.7;margin-bottom:2rem;max-width:500px}.hero-buttons{display:flex;gap:1rem}.hero-image{flex-shrink:0}.features{padding:3rem 0}.section-title{color:var(--dark);font-size:1.75rem;font-weight:700;margin-bottom:2rem;text-align:center}.features-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.feature-card{text-align:center}.feature-icon{margin-bottom:1rem}.feature-card h3{color:var(--dark);font-size:1.15rem;font-weight:600;margin-bottom:.5rem}.feature-card p{color:var(--text-muted);font-size:.95rem;line-height:1.6}@media (max-width:768px){.hero{flex-direction:column;gap:2rem;padding:2rem 0;text-align:center}.hero-title{font-size:2.5rem}.hero-description{margin-left:auto;margin-right:auto}.hero-buttons{justify-content:center}.features-grid{grid-template-columns:1fr}}@media (max-width:480px){.hero-title{font-size:2rem}.hero-buttons{align-items:center;flex-direction:column}}.game-list{display:flex;flex-direction:column;margin:0 auto;max-width:700px}.game-card{align-items:center;border-left:4px solid #0000;color:var(--text);display:flex;justify-content:space-between;text-decoration:none;transition:border-color .3s ease,transform .2s ease}.game-card:hover{border-left-color:var(--primary);transform:translateX(4px)}.game-name{color:var(--dark);font-size:1.15rem;font-weight:600;margin-bottom:.25rem}.game-author{color:var(--text-muted);font-size:.9rem}.author-name{color:var(--primary);font-weight:500}.game-meta{align-items:center;display:flex;flex-shrink:0;gap:1rem}.difficulty-badge{border-radius:20px;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:.35rem .85rem;text-transform:uppercase}.difficulty-badge.hard{background-color:#ff6b6b26;color:var(--accent)}.difficulty-badge.medium{background-color:#feca5733;color:#e67e22}.difficulty-badge.easy{background-color:#00b89426;color:#00b894}.game-time{color:var(--text-muted);font-size:.85rem;font-weight:500}@media (max-width:768px){.game-card{align-items:flex-start;flex-direction:column;gap:.75rem}.game-meta{align-self:flex-start}}.game-header{align-items:center;display:flex;justify-content:space-between;margin:0 auto 1.5rem;max-width:540px}.game-info-bar{color:var(--text-muted);font-size:.95rem}.difficulty-value{font-weight:600}.difficulty-value.easy{color:#00b894}.timer{align-items:center;background:var(--white);box-shadow:var(--shadow);color:var(--dark);display:flex;gap:.5rem;padding:.6rem 1.25rem}.congrats-message,.timer{border-radius:12px;font-size:1.3rem;font-weight:600}.congrats-message{background:#00d2d31a;color:var(--success);margin-bottom:1.5rem;margin-left:auto;margin-right:auto;max-width:540px;padding:1rem;text-align:center}.sudoku-board{grid-gap:4px;background-color:var(--dark);border:4px solid var(--dark);border-radius:10px;display:grid;gap:4px;margin:0 auto;overflow:hidden}.sudoku-board-6{grid-template-columns:repeat(2,1fr);max-width:400px}.sudoku-board-9{grid-template-columns:repeat(3,1fr);max-width:540px}.subgrid{grid-gap:1px;background-color:#b2bec3;display:grid;gap:1px}.subgrid-3x2,.subgrid-3x3{grid-template-columns:repeat(3,1fr)}.cell{align-items:center;aspect-ratio:1;background-color:var(--white);cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;min-width:0;transition:background-color .2s ease}.cell:hover{background-color:#edf2f7}.cell-given{background-color:#f8f9fa;color:var(--dark);cursor:default;font-weight:700}.cell-given:hover{background-color:#f0f1f3}.cell-player{color:var(--primary);font-weight:500}.cell-empty{padding:0}.cell-error{background-color:#ff6b6b1a;border:2px solid var(--accent)}.cell-hint{background-color:#feca574d;border:2px solid var(--warning)}.cell-input{-moz-appearance:textfield;background:#0000;border:none;color:var(--primary);cursor:pointer;font-family:Poppins,sans-serif;font-size:1.3rem;height:100%;text-align:center;width:100%}.cell-input::-webkit-inner-spin-button,.cell-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cell-input:focus{background-color:#0984e31a;outline:none}.game-controls{margin:1.5rem auto 0;max-width:540px;text-align:center}.game-actions{display:flex;gap:1rem;justify-content:center}@media (max-width:768px){.sudoku-board-6{max-width:85vw}.sudoku-board-9{max-width:90vw}.game-header{align-items:center;flex-direction:column;gap:.75rem}.game-controls,.game-header{max-width:85vw}.cell{font-size:1.2rem}.cell-input{font-size:1.1rem}.game-actions{align-items:center;flex-direction:column}.congrats-message{font-size:1.1rem;max-width:85vw}}@media (max-width:480px){.cell{font-size:1rem}.cell-input{font-size:.9rem}}.rules-content{margin:0 auto;max-width:800px}.rules-section{margin-bottom:2rem}.rules-section-title{border-bottom:2px solid var(--border);color:var(--dark);font-size:1.3rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.rules-section p{color:var(--text);font-size:1rem;line-height:1.7}.rules-list,.tips-list{color:var(--text);line-height:1.8;padding-left:1.5rem}.rules-list li,.tips-list li{margin-bottom:.5rem}.term{color:var(--primary);font-weight:600}.grid-info{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.grid-type{background-color:var(--bg);border-radius:12px;padding:1.5rem}.grid-type h3{color:var(--dark);font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.grid-type p{color:var(--text-muted);font-size:.95rem;line-height:1.6}.credits-section{margin:2rem auto 0;max-width:800px}.credits-links{display:flex;flex-wrap:wrap;gap:1rem}.credit-link{background-color:var(--primary);border-radius:20px;color:var(--white);display:inline-block;font-size:.9rem;font-weight:500;padding:.5rem 1.25rem;text-decoration:none;transition:background-color .3s ease}.credit-link:hover{background-color:var(--primary-dark)}@media (max-width:768px){.grid-info{grid-template-columns:1fr}}.scores-wrapper{margin:0 auto;max-width:800px;overflow-x:auto}.scores-table{background-color:var(--white);border-collapse:collapse;border-radius:12px;box-shadow:var(--shadow);overflow:hidden;width:100%}.scores-table thead{background-color:var(--dark);color:var(--white)}.scores-table th{font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:1rem 1.25rem;text-align:left;text-transform:uppercase}.scores-table td{border-bottom:1px solid var(--border);font-size:.95rem;padding:.85rem 1.25rem}.rank-badge,.scores-table tbody tr:hover{background-color:var(--bg)}.rank-badge{align-items:center;border-radius:50%;color:var(--text-muted);display:inline-flex;font-size:.85rem;font-weight:700;height:32px;justify-content:center;width:32px}.rank-gold{background-color:#feca57;color:#7d5a00}.rank-silver{background-color:#dfe6e9;color:#636e72}.rank-bronze{background-color:#fab1a0;color:#6c3a2a}.username{color:var(--dark);font-weight:600}@media (max-width:768px){.scores-table td,.scores-table th{font-size:.85rem;padding:.65rem .75rem}.rank-badge{font-size:.8rem;height:28px;width:28px}.auth-card{margin:0 1rem}.auth-title{font-size:1.5rem}}.auth-wrapper{align-items:center;display:flex;justify-content:center;min-height:60vh}.auth-card{max-width:440px;text-align:center;width:100%}.auth-icon{margin-bottom:1rem}.auth-title{color:var(--dark);font-size:1.75rem;font-weight:700;margin-bottom:1.5rem}.auth-form{text-align:left}.auth-submit{margin-top:.5rem;width:100%}.auth-footer{color:var(--text-muted);font-size:.9rem;margin-top:1.5rem}.auth-footer a{color:var(--primary);font-weight:500;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.navbar{background-color:var(--dark);box-shadow:var(--shadow-lg);height:70px;justify-content:space-between;left:0;padding:0 2rem;position:fixed;right:0;top:0;z-index:1000}.nav-brand,.navbar{align-items:center;display:flex}.nav-brand{color:var(--white);font-size:1.35rem;font-weight:700;gap:.5rem;text-decoration:none;transition:color .3s ease}.nav-brand:hover{color:var(--primary)}.nav-logo{flex-shrink:0}.nav-links{align-items:center;display:flex;gap:.2rem}.nav-links a{border-radius:8px;color:#b2bec3;font-size:.85rem;font-weight:500;padding:.5rem .8rem;text-decoration:none;transition:background-color .3s ease,color .3s ease}.nav-links a:hover{background-color:#ffffff1a;color:var(--white)}.nav-links a.active{background-color:var(--primary);color:var(--white)}.nav-toggle{display:none}.nav-toggle-label{background:none;border:none;cursor:pointer;display:none;padding:.5rem;z-index:1001}.hamburger-line,.hamburger-line:after,.hamburger-line:before{background-color:var(--white);border-radius:3px;display:block;height:3px;position:relative;transition:transform .3s ease,background-color .3s ease;width:26px}.hamburger-line:after,.hamburger-line:before{content:"";position:absolute}.hamburger-line:before{top:-8px}.hamburger-line:after{top:8px}.nav-open .hamburger-line{background-color:initial}.nav-open .hamburger-line:before{top:0;transform:rotate(45deg)}.nav-open .hamburger-line:after{top:0;transform:rotate(-45deg)}.page-container{margin:0 auto;max-width:1100px;padding:2rem}.page-title{color:var(--dark);font-size:2rem;font-weight:700;margin-bottom:.5rem;text-align:center}.page-subtitle{color:var(--text-muted);font-size:1rem;margin-bottom:2rem;text-align:center}.card{background-color:var(--white);border-radius:16px;box-shadow:var(--shadow);margin-bottom:1.5rem;padding:2rem;transition:transform .2s ease,box-shadow .2s ease}.card:hover{box-shadow:var(--shadow-lg)}.btn{border:none;border-radius:10px;cursor:pointer;display:inline-block;font-family:Poppins,sans-serif;font-size:1rem;font-weight:600;padding:.75rem 1.75rem;text-align:center;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background-color .3s ease}.btn:hover{box-shadow:0 6px 20px #00000026;transform:translateY(-2px)}.btn-primary{background-color:var(--primary);color:var(--white)}.btn-primary:hover{background-color:var(--primary-dark)}.btn-accent{background-color:var(--accent);color:var(--white)}.btn-accent:hover{background-color:#ee5253}.btn-outline{background-color:initial;border:2px solid var(--primary);color:var(--primary);padding:.65rem 1.65rem}.btn-outline:hover{background-color:var(--primary);color:var(--white)}.form-group{margin-bottom:1.25rem}.form-group label{color:var(--text);display:block;font-size:.95rem;font-weight:500;margin-bottom:.5rem}.form-group input{background-color:var(--white);border:2px solid var(--border);border-radius:10px;color:var(--text);font-family:Poppins,sans-serif;font-size:1rem;padding:.8rem 1rem;transition:border-color .3s ease,box-shadow .3s ease;width:100%}.form-group input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0984e326;outline:none}.footer{border-top:1px solid var(--border);color:var(--text-muted);font-size:.85rem;margin-top:2rem;padding:2rem 1rem;text-align:center}.footer a{color:var(--primary);text-decoration:none}.footer a:hover{text-decoration:underline}@media (max-width:768px){body{padding-top:60px}.navbar{height:60px;padding:0 1rem}.nav-brand{font-size:1.1rem}.nav-toggle-label{align-items:center;display:flex;justify-content:center}.nav-links{background-color:var(--dark);box-shadow:var(--shadow-lg);flex-direction:column;left:0;max-height:0;overflow:hidden;padding:0;position:fixed;right:0;top:60px;transition:max-height .4s ease}.nav-links.open{max-height:500px}.nav-links a{border-radius:0;display:block;font-size:.95rem;padding:.85rem 1.5rem;text-align:center}.nav-links a:first-child{margin-top:.5rem}.nav-links a:last-child{margin-bottom:.5rem}.page-container{padding:1.25rem}.page-title{font-size:1.5rem}.card{border-radius:12px;padding:1.25rem}}@media (max-width:480px){.page-title{font-size:1.25rem}.btn{font-size:.9rem;padding:.65rem 1.25rem}}
/*# sourceMappingURL=main.5ddc4fd6.css.map*/