body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;overflow-x:hidden;overflow-y:auto}:root{--clr-dark-a0:#000;--clr-light-a0:#fff;--clr-btn-base:#e9e9ed;--clr-primary-a0:#f58728;--clr-primary-a10:#f99543;--clr-primary-a20:#fda25b;--clr-primary-a30:#ffaf72;--clr-primary-a40:#ffbc89;--clr-primary-a50:#ffcaa0;--clr-surface-a0:#121212;--clr-surface-a10:#282828;--clr-surface-a20:#3f3f3f;--clr-surface-a30:#575757;--clr-surface-a40:#717171;--clr-surface-a50:#8b8b8b;--clr-surface-tonal-a0:#261d16;--clr-surface-tonal-a10:#3b322b;--clr-surface-tonal-a20:#504842;--clr-surface-tonal-a30:#67605a;--clr-surface-tonal-a40:#7f7873;--clr-surface-tonal-a50:#97918d;--clr-cell-red:#e74c3c;--clr-cell-orange:#f39c12;--clr-cell-yellow:#ffda21;--clr-cell-green:#2ecc71;--clr-cell-blue:#3498db;--clr-cell-purple:#9b59b6;--clr-cell-pink:#e91e63;--clr-cell-white:#ecf0f1;--clr-cell-gray:#7f8c8d}.bg-primary{background-color:var(--clr-surface-a0);color:var(--clr-primary-a50)}.title{background:linear-gradient(45deg,var(--clr-cell-red),var(--clr-cell-orange),var(--clr-cell-yellow),var(--clr-cell-green),var(--clr-cell-blue),var(--clr-cell-purple),var(--clr-cell-pink));-webkit-background-clip:text;background-clip:text;background-size:300% 300%;font-size:3.5rem;font-weight:700;margin:50px auto 0;padding-bottom:20px;text-align:center;-webkit-text-fill-color:transparent;animation:colorShift 3s ease-in-out infinite;letter-spacing:.05em;text-shadow:0 0 20px hsla(0,0%,100%,.1)}@keyframes colorShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}#daily-header{margin:0 auto 30px;max-width:600px;padding:0 20px;text-align:center}#daily-title{color:var(--clr-primary-a30);font-size:1.8rem;font-weight:600;margin:0 0 8px}#daily-info{color:var(--clr-primary-a40);font-size:1rem;margin:0;opacity:.9}.daily-badge{animation:dailyPulse 2s ease-in-out infinite;background:linear-gradient(45deg,var(--clr-primary-a10),var(--clr-primary-a30));border-radius:20px;box-shadow:0 2px 8px rgba(245,135,40,.3);color:var(--clr-light-a0);display:inline-block;font-size:.8rem;font-weight:600;margin-left:8px;padding:4px 12px;-webkit-text-fill-color:currentColor}@keyframes dailyPulse{0%,to{box-shadow:0 2px 8px rgba(245,135,40,.3);transform:scale(1)}50%{box-shadow:0 4px 12px rgba(245,135,40,.5);transform:scale(1.05)}}.daily-completed{animation:none;background:linear-gradient(45deg,var(--clr-cell-green),#27ae60)}.daily-mode .control-btn.primary{background:linear-gradient(45deg,var(--clr-primary-a10),var(--clr-primary-a30));border-color:var(--clr-primary-a20)}.daily-countdown{color:var(--clr-primary-a30);font-family:Courier New,monospace;font-weight:600}#controls{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin:0 auto 30px;max-width:800px;padding:0 20px}#controls.center{justify-content:center}#controls-left,#controls-right{align-items:center;display:flex;gap:12px}.control-btn{align-items:center;background:var(--clr-surface-a20);border:none;border-radius:8px;color:var(--clr-primary-a50);cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:6px;min-width:fit-content;padding:10px 16px;transition:all .3s ease}.control-btn:hover{background:var(--clr-surface-a30);transform:translateY(-1px)}.control-btn:active{transform:translateY(0)}.control-btn.primary{background:var(--clr-primary-a30);color:var(--clr-surface-a0)}.control-btn.primary:hover{background:var(--clr-primary-a20)}.control-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.control-btn:disabled:hover{background:var(--clr-surface-a20);transform:none}.dropdown{display:inline-block;position:relative}.dropdown-content{background:var(--clr-surface-a10);border:1px solid var(--clr-surface-a30);border-radius:8px;box-shadow:0 8px 25px rgba(0,0,0,.3);display:none;margin-top:8px;min-width:250px;padding:20px;position:absolute;right:0;top:100%;z-index:100}.dropdown.open .dropdown-content{animation:dropdownFadeIn .2s ease-out;display:block}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}#size-control{color:var(--clr-primary-a50);display:flex;flex-direction:column;gap:12px}#size-control label{font-size:1rem;font-weight:500}#size-control input[type=range]{width:100%}#size-display{color:var(--clr-primary-a30);font-size:1.1rem;font-weight:700;text-align:center}#size-slider{background:var(--clr-surface-a20);border-radius:5px;height:8px;outline:none;width:200px}#size-slider::-webkit-slider-thumb{appearance:none;background:var(--clr-primary-a30);border-radius:50%;cursor:pointer;height:20px;width:20px}#size-slider::-moz-range-thumb{background:var(--clr-primary-a30);border:none;border-radius:50%;cursor:pointer;height:20px;width:20px}#help-modal{animation:fadeIn .3s ease-out;background:rgba(0,0,0,.8);display:none;height:100%;left:0;position:fixed;top:0;width:100%;z-index:1000}#help-modal.show{align-items:center;display:flex;justify-content:center}#help-modal .modal-content{max-height:80vh;max-width:650px;overflow-y:auto}.help-content{line-height:1.6;text-align:left}.help-content ul{margin:10px 0;padding-left:20px}.help-content li{color:var(--clr-primary-a40);margin:8px 0}.help-content p{margin:15px 0}.help-content strong{color:var(--clr-primary-a30)}.cell{align-items:center;border:1px solid var(--clr-surface-a30);border-radius:5px;cursor:pointer;display:flex;font-size:1.5em;height:var(--cell-size,100px);justify-content:center;position:relative;transition:background-color .2s ease;width:var(--cell-size,100px)}.cell.given:hover,.cell.hint:hover{cursor:not-allowed;transform:none!important}.cell.given:after{content:"🔒"}.cell.given:after,.cell.hint:after{font-size:.6em;opacity:.8;pointer-events:none;position:absolute;right:2px;text-shadow:0 0 2px rgba(0,0,0,.5);top:2px}.cell.hint:after{content:"💡"}.cell.region-cell{animation:dropIn .8s cubic-bezier(.68,-.55,.265,1.55) forwards,regionPulse 3s ease-in-out infinite;background:linear-gradient(135deg,rgba(255,107,0,.08),rgba(255,107,0,.03));position:relative;transition:all .3s ease}.cell.region-border-top{border-top:3px solid var(--clr-primary-a30);box-shadow:0 -3px 8px rgba(255,107,0,.25),inset 0 1px 0 rgba(255,107,0,.1)}.cell.region-border-right{border-right:3px solid var(--clr-primary-a30);box-shadow:3px 0 8px rgba(255,107,0,.25),inset -1px 0 0 rgba(255,107,0,.1)}.cell.region-border-bottom{border-bottom:3px solid var(--clr-primary-a30);box-shadow:0 3px 8px rgba(255,107,0,.25),inset 0 -1px 0 rgba(255,107,0,.1)}.cell.region-border-left{border-left:3px solid var(--clr-primary-a30);box-shadow:-3px 0 8px rgba(255,107,0,.25),inset 1px 0 0 rgba(255,107,0,.1)}.cell.region-border-top.region-border-left:before{left:-3px}.cell.region-border-top.region-border-left:before,.cell.region-border-top.region-border-right:before{background:var(--clr-primary-a30);border-radius:3px;content:"";height:6px;position:absolute;top:-3px;width:6px}.cell.region-border-top.region-border-right:before{right:-3px}.cell.region-border-bottom.region-border-left:before{left:-3px}.cell.region-border-bottom.region-border-left:before,.cell.region-border-bottom.region-border-right:before{background:var(--clr-primary-a30);border-radius:3px;bottom:-3px;content:"";height:6px;position:absolute;width:6px}.cell.region-border-bottom.region-border-right:before{right:-3px}@keyframes regionPulse{0%,to{box-shadow:inset 0 0 0 rgba(255,107,0,.5)}50%{box-shadow:inset 0 0 10px rgba(255,107,0,.25)}}@media (max-width:850px){#controls{flex-direction:column;gap:15px}#controls-left,#controls-right{justify-content:center;width:100%}.dropdown-content{left:50%;right:auto;transform:translateX(-50%)}.control-btn{font-size:.9rem;padding:8px 12px}:root[data-board-size="5"]{--cell-size:15vw}:root[data-board-size="6"]{--cell-size:13vw}:root[data-board-size="7"]{--cell-size:11vw}:root[data-board-size="8"]{--cell-size:10vw}:root[data-board-size="9"]{--cell-size:9vw}.cell{font-size:1.2em}#board{gap:1px;max-height:70vh;max-width:95vw;overflow:visible;padding:5px}#game{box-sizing:border-box;padding:0 5px;width:100%}}@media (max-width:480px){.title{font-size:2.5rem;margin:20px auto 0}:root[data-board-size="5"]{--cell-size:min(16vw,70px)}:root[data-board-size="6"]{--cell-size:min(13vw,60px)}:root[data-board-size="7"]{--cell-size:min(11vw,50px)}:root[data-board-size="8"]{--cell-size:min(10vw,45px)}:root[data-board-size="9"]{--cell-size:min(8.5vw,40px)}.cell{border-radius:3px;font-size:1em}#board{gap:1px;max-height:65vh;max-width:98vw;padding:3px}#game{padding:0 2px}.control-btn{font-size:.8rem;padding:6px 10px}}@media (max-width:320px){body{overflow-x:hidden}.title{font-size:2rem;margin:10px auto 0;padding-bottom:10px}#daily-header{margin:0 auto 20px;padding:0 10px}#daily-title{font-size:1.4rem}#daily-info{font-size:.9rem}:root[data-board-size="5"]{--cell-size:min(18vw,60px)}:root[data-board-size="6"]{--cell-size:min(15vw,50px)}:root[data-board-size="7"]{--cell-size:min(13vw,42px)}:root[data-board-size="8"]{--cell-size:min(11vw,36px)}:root[data-board-size="9"]{--cell-size:min(8vw,32px)}.cell{border-radius:2px;font-size:.9em}#board{gap:.5px;max-height:60vh;max-width:100vw;padding:2px}#board,#game{overflow:visible}#game{padding:0 1px;width:100%}#controls{gap:10px;padding:0 10px}.control-btn{font-size:.75rem;min-width:35px;padding:5px 8px}.dropdown-content{min-width:200px;padding:15px}}#win-modal{animation:fadeIn .3s ease-out;background:rgba(0,0,0,.8);display:none;height:100%;left:0;position:fixed;top:0;width:100%;z-index:1000}#win-modal.show{align-items:center;display:flex;justify-content:center}.modal-content{animation:bounceIn .5s ease-out;background:var(--clr-surface-a10);border:2px solid var(--clr-primary-a30);border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,.5);margin:20px;max-width:400px;padding:40px;text-align:center}.modal-content h2{color:var(--clr-primary-a30);font-size:2.5rem;margin-bottom:20px;text-shadow:0 0 10px rgba(245,135,40,.3)}.modal-content p{color:var(--clr-primary-a50);font-size:1.2rem;margin-bottom:30px}.modal-buttons{display:flex;gap:15px;justify-content:center}.modal-btn{background:var(--clr-primary-a30);border:none;border-radius:8px;color:var(--clr-surface-a0);cursor:pointer;font-size:1rem;font-weight:700;padding:12px 24px;transition:background-color .3s ease}.modal-btn:hover{background:var(--clr-primary-a20)}.modal-btn.secondary{background:var(--clr-surface-a30);color:var(--clr-primary-a50)}.modal-btn.secondary:hover{background:var(--clr-surface-a40)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}#game{align-items:center;display:flex;flex-direction:column;min-height:0;padding:0 10px}#board{border:2px solid var(--clr-primary-a20);border-radius:10px;border-radius:8px;box-shadow:0 0 20px rgba(245,135,40,.2);display:grid;gap:2px;grid-template-columns:repeat(var(--board-size),1fr);grid-template-rows:repeat(var(--board-size),1fr);margin:0 auto;max-width:100%;padding:10px;width:fit-content}:root[data-board-size="5"]{--board-size:5}:root[data-board-size="6"]{--board-size:6}:root[data-board-size="7"]{--board-size:7}:root[data-board-size="8"]{--board-size:8}:root[data-board-size="9"]{--board-size:9}.cell>.btn{background-color:var(--clr-surface-a0);border:none;height:100%;width:100%}.cell{animation:dropIn .8s cubic-bezier(.68,-.55,.265,1.55) forwards;opacity:0;transform:translateY(-200px)}@keyframes dropIn{0%{opacity:0;transform:translateY(-200px)}60%{opacity:1;transform:translateY(10px)}80%{transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}