:root{--bg-color: #0f172a;--grid-color: #1e293b;--snake-color: #d946ef;--food-color: #ff0055;--obstacle-color: #475569;--powerup-color: #facc15;--life-color: #00ff00;--text-color: #f8fafc;--font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif}*{box-sizing:border-box;margin:0;padding:0;-webkit-user-select:none;user-select:none}body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-family);min-height:100vh;width:100%;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;align-items:center;justify-content:center}#app{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px 10px}.ui-container{position:relative;width:100%;max-width:600px;display:flex;flex-direction:column;align-items:center}.score-board{width:100%;display:flex;justify-content:space-between;align-items:center;padding:10px 20px;font-size:1.2rem;font-weight:700;text-shadow:0 0 10px rgba(255,255,255,.3)}canvas{background-color:var(--grid-color);border:2px solid var(--snake-color);box-shadow:0 0 15px var(--snake-color);border-radius:8px;touch-action:none;max-width:95vw;max-height:80vh;margin-bottom:20px}.overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;background:var(--bg-color);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:20px;text-align:center;z-index:2000;overflow-y:auto;-webkit-overflow-scrolling:touch}.hidden{display:none!important}h1{font-size:2.5rem;margin-bottom:1rem}h1 span{background:linear-gradient(to right,var(--snake-color),#00ccff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:transparent}p{margin-bottom:1.5rem;color:#94a3b8}button{background:var(--snake-color);color:var(--bg-color);border:none;padding:12px 32px;font-size:1.2rem;font-weight:700;border-radius:50px;cursor:pointer;transition:transform .1s,box-shadow .2s;box-shadow:0 0 15px var(--snake-color)}button:active{transform:scale(.95)}#menu-toggle-btn{position:fixed;top:15px;left:15px;width:45px;height:45px;border-radius:50%;z-index:3000;padding:0;display:flex;justify-content:center;align-items:center;font-size:1.5rem;background:#0f172acc;border:2px solid var(--snake-color);color:var(--snake-color);box-shadow:0 0 10px var(--snake-color);cursor:pointer}#global-menu-screen{z-index:2400}.menu-body{margin:auto 0;width:100%;max-width:600px;display:flex;flex-direction:column;align-items:center}#achievements-screen{z-index:2500}#share-stats-btn{background:linear-gradient(45deg,#00ccff,var(--snake-color));box-shadow:0 0 10px #0cf}.stats-table{width:100%;border-collapse:collapse;margin-top:10px;font-size:.75rem;min-width:600px}.stats-table th,.stats-table td{padding:8px 4px;text-align:center;border-bottom:1px solid rgba(255,255,255,.1);white-space:nowrap}.stats-table th{color:var(--snake-color)}#main-play-btn{animation:main-button-pulse 2s infinite ease-in-out}@keyframes main-button-pulse{0%{transform:scale(1);box-shadow:0 0 15px var(--snake-color)}50%{transform:scale(1.05);box-shadow:0 0 25px var(--snake-color)}to{transform:scale(1);box-shadow:0 0 15px var(--snake-color)}}.mobile-controls{margin-top:15px;display:flex;flex-direction:column;align-items:center;gap:8px;padding-bottom:60px;z-index:2700;transform:translate(var(--controls-h-offset, 0px),var(--controls-v-offset, 0px)) scale(var(--controls-scale, 1));transform-origin:bottom center;transition:transform .1s ease-out}@media (min-width: 1025px){.mobile-controls{display:none!important}canvas{max-height:90vh}#toggle-controls-config-btn{display:none!important}}.control-row{display:flex;gap:50px}.control-btn{width:70px;height:70px;border-radius:50%;padding:0;display:flex;justify-content:center;align-items:center;font-size:1.8rem;color:var(--snake-color);background:#ffffff0d;border:2px solid var(--snake-color);box-shadow:0 0 10px var(--snake-color),0 0 20px var(--snake-color),inset 0 0 10px var(--snake-color);text-shadow:0 0 10px var(--snake-color);touch-action:manipulation;transition:all .1s ease}.control-btn:active,.control-btn.active{transform:scale(.85);background:#ff00ff80;border-color:#f0f;color:#fff;box-shadow:0 0 30px #f0f,0 0 60px #f0f,inset 0 0 20px #f0f;text-shadow:0 0 15px #ffffff}#pause-btn{padding:5px 15px;font-size:1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);box-shadow:none}#settings-btn{padding:5px 10px;font-size:1.1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);box-shadow:none;margin-left:10px;color:#fff;cursor:pointer}.skin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;width:100%;max-height:300px;overflow-y:auto;padding:10px;background:#0003;border-radius:10px;margin-bottom:15px}#skin-shop-screen .skin-grid{max-height:60vh}.skin-preview-wrapper{width:100%;display:flex;justify-content:center;margin-bottom:15px;background:#0000004d;border-radius:10px;padding:15px;border:1px solid rgba(255,255,255,.1)}.skin-item{background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:8px;padding:10px;display:flex;flex-direction:column;align-items:center;cursor:pointer;transition:all .2s}.skin-item:hover{background:#ffffff1a;transform:translateY(-2px)}.skin-item.selected{border-color:var(--snake-color);box-shadow:0 0 10px var(--snake-color);background:#d946ef1a}.skin-item.locked{opacity:.5;cursor:not-allowed;filter:grayscale(1)}.skin-preview{width:30px;height:30px;border-radius:4px;margin-bottom:8px;box-shadow:0 0 5px currentColor}.skin-info{text-align:center;font-size:.7rem}.skin-name{font-weight:700;margin-bottom:2px;color:#fff}.skin-req{font-size:.6rem;color:#aaa}#reset-controls-btn{cursor:pointer;background-color:#f0f;color:#fff;box-shadow:0 0 15px #f0f;margin-top:20px}#close-settings-btn{margin-top:20px;background:transparent;border:1px solid white;color:#fff!important}.mode-buttons{display:flex;flex-direction:column;gap:1rem;padding:10px 5px}.settings-buttons{display:flex;flex-direction:column;gap:1rem;max-height:30rem;overflow-y:auto;overflow-x:hidden;padding:10px 5px;scrollbar-width:thin;mask-image:linear-gradient(to bottom,transparent,black 10%,black 90%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,black 10%,black 90%,transparent)}#controls-layout-screen{background:var(--bg-color);z-index:2600}#controls-layout-screen .menu-body{margin:0;padding-top:10vh;justify-content:flex-start}.control-customizer{background:#ffffff0d;padding:20px;border-radius:12px;width:100%;max-width:320px;margin:10px 0;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:15px}.slider-group{display:flex;flex-direction:column;align-items:flex-start;gap:8px}#pause-screen{width:90%;max-width:320px;height:auto;min-height:auto;top:50%;left:50%;transform:translate(-50%,-50%)!important;background:#0f172af2;border:2px solid var(--snake-color);border-radius:24px;box-shadow:0 0 30px #d946ef66;justify-content:center;padding:30px 20px;z-index:3100}.slider-group label{font-size:.9rem;color:var(--snake-color);font-weight:700}.slider-group input[type=range]{width:100%;accent-color:var(--snake-color);cursor:pointer}.pause-buttons{display:flex;flex-direction:column;gap:15px;margin-top:20px}.help-content{text-align:left;font-size:.9rem;line-height:1.4;margin-bottom:1rem;max-height:17rem;overflow-y:auto;overflow-x:auto;padding:10px 5px;scrollbar-width:thin;mask-image:linear-gradient(to bottom,transparent,black 10%,black 90%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,black 10%,black 90%,transparent)}.help-content p{margin-bottom:.5rem}.food-guide{margin:10px 0;padding:10px;background:#ffffff0d;border-radius:8px}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--bg-color)}::-webkit-scrollbar-thumb{background:var(--snake-color);border-radius:5px;border:2px solid var(--bg-color);box-shadow:0 0 10px var(--snake-color)}::-webkit-scrollbar-thumb:hover{background:#fff;box-shadow:0 0 15px #fff}*{scrollbar-width:thin;scrollbar-color:var(--snake-color) var(--bg-color)}.high-score-notification{position:absolute;top:30%;left:50%;transform:translate(-50%,-50%);color:#facc15;font-size:2.5rem;font-weight:700;text-shadow:0 0 10px rgba(250,204,21,.5),0 0 20px rgba(250,204,21,.3);pointer-events:none;z-index:100;white-space:nowrap}.animate-high-score{animation:high-score-fade 2s ease-out forwards}@keyframes high-score-fade{0%{opacity:0;transform:translate(-50%) scale(.5)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}80%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-100%) scale(1)}}.level-up-notification{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);color:#0f0;font-size:2.5rem;font-weight:700;text-shadow:0 0 10px rgba(0,255,0,.5),0 0 20px rgba(0,255,0,.3);pointer-events:none;z-index:100;white-space:nowrap}.animate-level-up{animation:high-score-fade 2s ease-out forwards}.game-footer{margin-top:40px;font-size:.9rem;color:#94a3b8;text-align:center;z-index:5}.game-footer a{color:var(--snake-color);text-decoration:none;transition:text-shadow .2s}.game-footer a:hover{text-shadow:0 0 8px var(--snake-color)}.github-link{display:inline-block;vertical-align:middle;margin-left:8px;line-height:0;transition:transform .2s,filter .2s}.github-link:hover{transform:scale(1.2);filter:drop-shadow(0 0 5px var(--snake-color))}@media (min-width: 1025px){.menu-body h1{font-size:4rem}.mode-buttons button,.settings-buttons button,#global-menu-skin-btn,#global-menu-type-btn{width:400px;font-size:1.1rem}#achievements-screen .menu-body{max-width:850px}.stats-table{font-size:1rem;margin-top:20px}.stats-table th{padding:15px 10px;border-bottom:2px solid var(--snake-color);font-size:1.2rem}.stats-table td{padding:15px 10px;font-size:1.1rem}.help-content{max-width:700px;font-size:1.1rem}}@media (max-width: 1024px){.overlay{width:100%;padding:80px 20px 40px}.mode-buttons,.settings-buttons,.pause-buttons{width:100%;align-items:center;gap:.6rem}.mode-buttons button,.settings-buttons button,.pause-buttons button,#global-menu-skin-btn,#global-menu-type-btn{width:100%;max-width:280px}}.share-section{margin:1.2rem 0;display:flex;flex-direction:column;align-items:center;border-top:1px solid rgba(255,255,255,.1);padding-top:1rem}.share-buttons-container{display:flex;gap:10px;margin-bottom:15px;width:100%;justify-content:center}.share-btn-main{font-size:1rem;padding:10px 25px;background:linear-gradient(45deg,var(--snake-color),#00ccff);box-shadow:0 0 15px var(--snake-color)}.share-btn-icon{font-size:1.2rem;padding:10px 15px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);box-shadow:none}.social-buttons{display:flex;gap:20px;font-size:1.8rem}.social-buttons a{cursor:pointer;text-decoration:none;transition:transform .2s}.social-buttons a:hover{transform:scale(1.2)}.loader{width:48px;height:48px;border:5px solid #FFF;border-bottom-color:var(--snake-color);border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite;margin-top:20px;box-shadow:0 0 15px var(--snake-color)}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#loading-screen{position:fixed;top:0;left:0;width:100vw;height:100vh;transform:none;border-radius:0;border:none;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999;background:var(--bg-color);padding:0}#loading-screen:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(217,70,239,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(217,70,239,.15) 1px,transparent 1px);background-size:40px 40px;background-position:center;z-index:-1;border-radius:0;animation:grid-pulse 2s infinite ease-in-out}@keyframes grid-pulse{0%,to{opacity:.4}50%{opacity:1}}#loading-screen:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(#0f172a00 50%,#00000026 50%);background-size:100% 4px;pointer-events:none;z-index:10;border-radius:0;animation:scanline-flicker .1s infinite}@keyframes scanline-flicker{0%{opacity:.8}to{opacity:1}}.pink-glow-text{transition:text-shadow .5s ease,color .5s ease;display:inline-block}.pink-glow-text.active{color:#fff!important;text-shadow:0 0 10px var(--snake-color),0 0 20px var(--snake-color);animation:name-pulse 2s infinite ease-in-out}@keyframes name-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05);text-shadow:0 0 15px var(--snake-color),0 0 30px var(--snake-color)}}.slow-mo-active{border-color:#3b82f6!important;box-shadow:0 0 25px #3b82f6!important;animation:slow-mo-glow 2s infinite ease-in-out;transition:border-color .5s ease,box-shadow .5s ease}@keyframes slow-mo-glow{0%,to{box-shadow:0 0 20px #3b82f6}50%{box-shadow:0 0 40px #3b82f6}}.magnet-active{border-color:#a855f7!important;box-shadow:0 0 25px #a855f7!important;animation:magnet-pulse 1.5s infinite ease-in-out;transition:border-color .5s ease,box-shadow .5s ease}@keyframes magnet-pulse{0%,to{box-shadow:0 0 20px #a855f7}50%{box-shadow:0 0 45px #a855f7,inset 0 0 20px #a855f7}}#achievement-popup{width:90%;max-width:400px;height:auto;min-height:auto;top:50%;left:50%;transform:translate(-50%,-50%)!important;background:#0f172af2;border:3px solid #ffd700;border-radius:24px;justify-content:center;padding:40px 20px;animation:achievement-glow 2s infinite alternate;z-index:4000;--achievement-color: #ffd700}@keyframes achievement-glow{0%{box-shadow:0 0 10px var(--achievement-color)}to{box-shadow:0 0 30px var(--achievement-color)}}#game-over-screen{width:90%;max-width:400px;height:auto;min-height:auto;top:50%;left:50%;transform:translate(-50%,-50%)!important;background:#0f172af2;border:3px solid var(--snake-color);border-radius:24px;box-shadow:0 0 50px #d946ef80;justify-content:center;padding:40px 20px;z-index:3200}#phase-action-btn{position:absolute;bottom:260px;right:20px;width:70px;height:70px;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;color:#0ff;background:#00ffff26;border:2px solid #00ffff;box-shadow:0 0 15px #0ff,inset 0 0 10px #00ffff4d;text-shadow:0 0 5px #00ffff;z-index:2800;touch-action:manipulation;transition:transform .1s,box-shadow .2s;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}#phase-action-btn:active{transform:scale(.9);background:#0ff6;box-shadow:0 0 30px #0ff}@media (min-width: 1025px){#phase-action-btn{display:none!important}}
