html,body,#root{height:100%;width:100%;margin:0;padding:0;overflow-x:hidden;overflow-y:hidden;box-sizing:border-box}:root{font-family:"Press Start 2P",monospace;line-height:1.8;font-weight:400;font-size:14px;color-scheme:dark;color:#aaa;background-color:#0a0a0a;font-synthesis:none;text-rendering:optimizeSpeed;-webkit-font-smoothing:none;-moz-osx-font-smoothing:unset;image-rendering:pixelated}*,*:before,*:after{box-sizing:border-box}body{margin:0;display:block;min-width:320px;min-height:100dvh;background:#0a0a0a}a{font-weight:400;color:#5ff;text-decoration:none}a:hover{color:#ff5}.platform-links{margin-top:12px;padding:10px;border:2px solid #555555;background:#0d0d0d;text-align:left}.platform-links-compact{margin-top:8px;padding:8px}.platform-links-text{margin:0 0 8px;font-size:9px;color:#aaa;line-height:1.5}.platform-links-actions{display:flex;gap:8px;flex-wrap:wrap}.platform-link-btn{display:inline-block;font-family:"Press Start 2P",monospace;font-size:8px;padding:8px 10px;text-decoration:none;text-transform:uppercase;background:#005;color:#5ff;border:2px solid #5555aa;box-shadow:inset -1px -1px #003,inset 1px 1px #77f}.platform-link-btn:hover{background:#007;color:#ff5;border-color:#aaa}h1{font-size:1.5em;line-height:1.3;color:#ff5;text-shadow:2px 2px 0 #555500;letter-spacing:1px;text-transform:uppercase;margin:0 0 12px}h2{font-size:1.2em;color:#5f5;text-shadow:2px 2px 0 #005500;text-transform:uppercase;margin:0 0 8px}h3{font-size:1em;color:#5ff;text-shadow:1px 1px 0 #005555;text-transform:uppercase;margin:0 0 8px}p{color:#aaa;line-height:1.8}button{font-family:"Press Start 2P",monospace;font-size:.85em;padding:12px 24px;color:#fff;background:#555;border:none;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;box-shadow:inset -2px -2px #333,inset 2px 2px #888}button:hover{background:#666;color:#ff5}button:active{box-shadow:inset 2px 2px #333,inset -2px -2px #888}button:focus,button:focus-visible{outline:2px solid #ffff55;outline-offset:2px}button:disabled{opacity:.4;cursor:not-allowed}.button-primary{background:#050;color:#5f5;box-shadow:inset -2px -2px #030,inset 2px 2px #5f5}.button-primary:hover{background:#070;color:#fff}.button-cta{background:#a50;color:#ff5;box-shadow:inset -2px -2px #530,inset 2px 2px #fa5}.button-cta:hover{background:#c60;color:#fff}.button-cta:focus,.button-cta:focus-visible{outline:2px solid #ffaa55;outline-offset:2px}.button-secondary{background:#005;color:#55f;box-shadow:inset -2px -2px #003,inset 2px 2px #77f}.button-secondary:hover{background:#008;color:#fff}.status-message{display:inline-flex;align-items:center;padding:8px 0;font-size:.85em;font-weight:400;color:#5f5;background:none;border:none;text-transform:uppercase}input[type=text],input[type=password],input[type=email],select,textarea{font-family:"Press Start 2P",monospace;font-size:.9em;padding:12px 14px;color:#5f5;background:#000;border:2px solid #555555;outline:none;caret-color:#5f5}input[type=text]:focus,input[type=password]:focus,input[type=email]:focus,select:focus,textarea:focus{border-color:#5f5}input[type=text]::placeholder,input[type=password]::placeholder,input[type=email]::placeholder{color:#555;opacity:1}input[type=range]{-webkit-appearance:none;appearance:none;height:6px;background:#333;border:1px solid #555555;outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:12px;background:#5f5;border:1px solid #005500;cursor:pointer}input[type=range]::-moz-range-thumb{width:12px;height:12px;background:#5f5;border:1px solid #005500;border-radius:0;cursor:pointer}.snake-error-dialog{position:fixed;top:0;left:0;width:100vw;height:100dvh;display:flex;align-items:center;justify-content:center;background:#000000bf;z-index:9999;padding:0}.snake-error-dialog-content{background:#111;padding:20px 24px 16px;min-width:320px;max-width:95vw;color:#aaa;text-align:center;border:3px solid #aaaaaa;box-shadow:inset 0 0 0 1px #000,inset 0 0 0 3px #555,6px 6px #000;max-height:95dvh;overflow-y:auto}.snake-error-dialog-content h2{margin-top:0;margin-bottom:8px;font-size:1.2em;color:#ff5;text-shadow:2px 2px 0 #555500;text-transform:uppercase}.snake-error-dialog-content p{margin-bottom:12px;color:#fa5;font-size:.85em}.snake-error-dialog-btn{font-family:"Press Start 2P",monospace;font-size:.85em;background:#a50;color:#ff5;border:none;padding:14px 28px;cursor:pointer;text-transform:uppercase;box-shadow:inset -2px -2px #530,inset 2px 2px #fa5}.snake-error-dialog-btn:hover{background:#c60;color:#fff}.snake-error-dialog-btn:active{box-shadow:inset 2px 2px #530,inset -2px -2px #fa5}.bento-grid{display:grid;grid-template-columns:repeat(1,1fr);grid-template-rows:auto;gap:12px;padding:16px;max-width:1200px;margin:0 auto}.bento-grid-fixed-mobile{height:100%;min-height:0}.bento-card{background:#111;padding:20px;border:2px solid #555555;box-shadow:inset -1px -1px #333,inset 1px 1px #777,4px 4px #000}.bento-card:hover{border-color:#aaa}.bento-card-scroll{min-height:0;overflow:auto;-webkit-overflow-scrolling:touch}.bento-header{grid-column:span 4;text-align:center;border-color:#a50;background:#110}.action-button[data-button-id=fire]{background-color:#ff555559!important;border-color:#ff7878cc!important}.action-button[data-button-id=bonus]{background-color:#ffaa0059!important;border-color:#ffdc78d9!important}.action-button[data-button-id=pause]{background-color:#7878784d!important;border-color:#dcdcdcb3!important}.action-button[disabled]{background-color:#50505073!important;border-color:#8c8c8cb3!important;color:#ccc!important}@media(max-width:900px){.action-button[data-button-id=bonus] span:last-child{font-size:9px!important}}.bento-small{grid-column:span 1}.bento-medium{grid-column:span 2}.bento-large{grid-column:span 3}.bento-full{grid-column:span 4}@media(max-width:900px){html,body,#root{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}.bento-grid{grid-template-columns:repeat(2,1fr)}.bento-grid-fixed-mobile{height:auto;max-height:none;overflow:visible;padding-top:calc(12px + env(safe-area-inset-top));padding-bottom:calc(12px + env(safe-area-inset-bottom))}.bento-card-scroll{overflow:visible}.bento-table-scroll{max-height:none;overflow-y:visible}.bento-header,.bento-large,.bento-full,.bento-medium{grid-column:span 2}.bento-small{grid-column:span 1}}@media(max-width:600px){.bento-grid{grid-template-columns:1fr}.bento-header,.bento-small,.bento-medium,.bento-large,.bento-full{grid-column:span 1}}.bento-table{width:100%;border-collapse:collapse}.bento-table-scroll{width:100%;max-width:100%;max-height:100%;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch}@media(hover:none)and (pointer:coarse){.bento-card-scroll{overflow:visible}.bento-table-scroll{max-height:none;overflow-y:visible}}.bento-table caption{text-align:left;font-size:1em;margin-bottom:8px;color:#ff5;text-transform:uppercase;text-shadow:1px 1px 0 #555500}.bento-table th,.bento-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #333333;word-break:break-all;overflow-wrap:break-word;max-width:200px;font-size:.85em}.bento-table th{color:#5ff;border-bottom:2px solid #555555;text-transform:uppercase;font-weight:400}.bento-table tbody tr:hover{background:#1a1a00}.bento-table tbody tr.current-player{color:#5f5;background:#001a00}.snake-canvas-shell{position:relative;width:100%;max-width:100%;margin:0 auto}.snake-canvas{width:100%;max-width:100%;height:auto;aspect-ratio:1 / 1;display:block;background:#000;border:3px solid #aaaaaa;box-shadow:4px 4px #000;image-rendering:pixelated}.bento-button{font-family:"Press Start 2P",monospace;font-size:.75em;padding:10px 16px;color:#aaa;background:#222;border:none;cursor:pointer;text-transform:uppercase;box-shadow:inset -2px -2px #111,inset 2px 2px #444}.bento-button:hover{color:#ff5;background:#333}.bento-button:active{box-shadow:inset 2px 2px #111,inset -2px -2px #444}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#111}::-webkit-scrollbar-thumb{background:#555;border:1px solid #333333}::-webkit-scrollbar-thumb:hover{background:#777}.CookieConsent{font-family:"Press Start 2P",monospace!important;font-size:9px!important;border-top:2px solid #555555!important}::selection{background:#a50;color:#ff5}#root{width:100%;height:100%;margin:0;padding:0;overflow-x:hidden;overflow-y:hidden;text-align:initial}@media(max-width:900px){#root{height:auto;min-height:100%;overflow-x:hidden;overflow-y:auto}}.logo{height:6em;padding:1.5em;image-rendering:pixelated}.card{padding:16px}.read-the-docs{color:#555}
