:root{--neon-primary:#00ff00;--neon-primary-rgb:0, 255, 0;--neon-secondary:#00ff99;--neon-secondary-rgb:0, 255, 153;--neon-glow:rgba(var(--neon-primary), 0.5);--neon-hover:rgba(var(--neon-primary), 0.1);--neon-border:#00ff00;--neon-text:#00ff00;--dark-bg:#0a0a0a;--darker-bg:#050505;--terminal-bg:#111;--neon-color:#00ff00;--glow-color:rgba(var(--neon-primary), 0.5);--upgrade-hover:rgba(var(--neon-primary), 0.1);--neon-color:#00ff00;--boot-bg:#010402;--matrix-bg-fade:rgba(10, 10, 10, 0.15);--neon-danger:#ff0040;--neon-warning:#ffaa00;--neon-info:#00aaff;--error-glow:rgba(255, 0, 64, 0.5);--warning-glow:rgba(255, 170, 0, 0.5);--info-glow:rgba(0, 170, 255, 0.5)} *{margin:0;padding:0;box-sizing:border-box;font-family:"Courier New", "Monaco", "Menlo", "Consolas", monospace;color:var(--neon-primary);text-shadow:0 0 2px var(--neon-primary)} @keyframes typewriter{from{width:0} to{width:100%} } @keyframes scanline{0%{transform:translateY(-100vh)} 100%{transform:translateY(100vh)} } html, body{margin:0;padding:0;width:100%;min-height:100vh;overflow-x:hidden;touch-action:manipulation;-webkit-overflow-scrolling:touch;overscroll-behavior:none} body{background:radial-gradient( circle at 20% 20%, rgba(var(--neon-primary), 0.05) 0%, transparent 50% ), radial-gradient( circle at 80% 80%, rgba(var(--neon-primary), 0.03) 0%, transparent 50% ), linear-gradient(145deg, #000000, #0a0f0a);color:var(--neon-text);font-family:"Courier New", "Monaco", "Menlo", "Consolas", monospace;line-height:1.6;overflow-y:auto;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;position:relative;background-attachment:fixed} @media (max-width:600px){html, body{overflow-x:hidden;width:100%;margin:0;padding:0} body{padding:0;margin:0;min-height:100vh;display:flex;flex-direction:column} .terminal{padding:6px !important;font-size:0.95em;margin-top:20px !important} .terminal-output{font-size:0.9em;padding:8px} .hamburger-container{position:relative !important} .terminal .header{flex-direction:column !important;align-items:center !important;justify-content:flex-start !important;min-height:unset !important;padding-top:16px;padding-bottom:8px} .terminal .header h1{display:none !important} .header-btn-group{display:flex !important;align-items:center !important;gap:12px !important;justify-content:center !important;width:100% !important;margin:0 auto !important;padding:0 !important;position:static !important} } body.no-animations *{transition:none !important;animation:none !important;box-shadow:none !important;text-shadow:none !important;filter:none !important} body.no-animations .neon-button, body.no-animations .upgrade-item, body.no-animations #settings-panel, body.no-animations #info-panel, body.no-animations #hack-button{background:#111 !important;color:var(--neon-primary) !important;border-color:var(--neon-primary) !important;transform:none !important} body.no-animations .neon-button:hover{background:var(--neon-primary) !important;color:#111 !important;box-shadow:none !important} body.no-animations [class*="glow-intensity-"]{box-shadow:none !important} body.no-animations .click-effect{display:none !important} body.no-animations .particle{display:none !important} body.no-animations .modal-content{transition:none !important;transform:translate(-50%, -50%) !important} body.no-animations .scanlines{display:none !important} body.no-animations #boot-cursor{animation:none !important} body.no-animations .fab-button:hover, body.no-animations .upgrade-item:hover, body.no-animations .side-panel:hover{transform:none !important;border-width:3px !important} body.no-animations .fab-tooltip{transition:none !important} body.no-animations .side-panel{transition:none !important;transform:translateY(-50%) !important} body.no-animations .side-panel.hidden{transform:translateY(-50%) translateX(120%) !important} body.no-animations .section-title::after, body.no-animations .section-title::before, body.no-animations .fab-tooltip{box-shadow:none !important;text-shadow:none !important;transition:none !important} body.no-animations #settings-panel, body.no-animations #info-panel{transition:none !important;animation:none !important;transform:translateY(-50%) !important} body.no-animations #settings-panel.hidden, body.no-animations #info-panel.hidden{transform:translateY(-50%) translateX(120%) !important} .dark-credits-remaining{margin-left:5px} .soul-harvest-description > div{display:block} .terminal{background:linear-gradient(145deg, #000000, #0a0f0a);border:1px solid var(--neon-border);border-radius:8px;padding:0;width:100%;max-width:1400px;box-shadow:0 4px 20px rgba(var(--neon-primary), 0.1), inset 0 1px 0 rgba(var(--neon-primary), 0.1);position:relative;overflow:hidden;margin:24px auto;background-image:linear-gradient(145deg, #000000, #0a0f0a), repeating-linear-gradient( 0deg, transparent, transparent 2px, rgba(var(--neon-primary), 0.02) 2px, rgba(var(--neon-primary), 0.02) 4px )} .terminal::before{content:"● ● ●";position:absolute;top:8px;left:12px;font-size:12px;color:var(--neon-primary);opacity:0.6;z-index:10} .terminal::after{content:"● ● ●";position:absolute;top:8px;right:12px;font-size:12px;color:var(--neon-primary);opacity:0.6;z-index:10} .terminal > *{position:relative;z-index:2;padding:20px} .terminal > *:first-child{padding-top:40px} .header{text-align:center;margin-bottom:30px;padding-bottom:20px;width:100%} h1{font-size:2em;text-shadow:0 0 8px var(--neon-glow);margin-bottom:15px;text-align:center;width:100%} @keyframes blink{50%{border-color:transparent} } h1::before{content:"[ ";color:var(--neon-primary);opacity:0.7} h1::after{content:" ]";color:var(--neon-primary);opacity:0.7} .system-status{display:inline-flex;align-items:center;justify-content:center;gap:10px;position:relative;z-index:2;margin:0 auto} .status-indicator{display:none !important} .credits-display{font-size:1.4em;text-align:center;margin:20px 0;padding:15px;border:1px solid var(--neon-border);border-radius:6px;background:linear-gradient( 135deg, rgba(0, 0, 0, 0.8), rgba(var(--neon-hover), 0.6) );backdrop-filter:blur(10px);position:relative;overflow:hidden} .credits-display::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient( 90deg, transparent, rgba(var(--neon-primary), 0.1), transparent );animation:shimmer 3s infinite} @keyframes shimmer{0%{left:-100%} 100%{left:100%} } .credits-display .credits-label, .credits-display .cps-label{font-size:0.7em;opacity:0.8;text-transform:uppercase;letter-spacing:1px} .credits-per-second{font-size:0.6em;margin-top:5px;color:var(--neon-text);opacity:0.8} .click-area{text-align:center;margin:30px 0;position:relative;min-height:100px;touch-action:manipulation;-webkit-overflow-scrolling:touch;overscroll-behavior:none;transform:translateZ(0);backface-visibility:hidden;perspective:1000px} #hack-button{background:transparent;color:var(--neon-primary);border:2px solid var(--neon-border);box-shadow:0 0 8px 2px var(--neon-glow);width:120px;height:120px;border-radius:8px;font-size:1em;cursor:pointer;text-transform:uppercase;position:relative;overflow:hidden;z-index:2;margin:0 auto;display:flex;align-items:center;justify-content:center;transition:all 0.3s ease;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;transform:translateZ(0);backface-visibility:hidden;perspective:1000px;will-change:transform;font-weight:bold;letter-spacing:1px} #hack-button::before{content:"┌─────────┐";position:absolute;top:8px;left:50%;transform:translateX(-50%);font-size:0.6em;opacity:0.6;pointer-events:none} #hack-button::after{content:"└─────────┘";position:absolute;bottom:8px;left:50%;transform:translateX(-50%);font-size:0.6em;opacity:0.6;pointer-events:none} #hack-button:hover{background:var(--neon-primary);color:var(--dark-bg);box-shadow:0 0 16px 4px var(--neon-glow);transform:translateY(-2px);border-color:var(--neon-primary)} .glow-1{box-shadow:0 0 8px 2px var(--neon-primary), 0 0 1px var(--neon-primary) !important} .glow-2{box-shadow:0 0 12px 4px var(--neon-primary), 0 0 2px var(--neon-primary) !important} .glow-3{box-shadow:0 0 18px 6px var(--neon-primary), 0 0 3px var(--neon-primary) !important} .glow-4{box-shadow:0 0 24px 8px var(--neon-primary), 0 0 4px var(--neon-primary) !important} .glow-5{box-shadow:0 0 32px 10px var(--neon-primary), 0 0 5px var(--neon-primary) !important} .glow-intensity-6{box-shadow:0 0 14px 6px var(--neon-primary), 0 0 28px 7px var(--neon-primary)} .glow-intensity-7{box-shadow:0 0 16px 7px var(--neon-primary), 0 0 32px 8px var(--neon-primary)} .glow-intensity-8{box-shadow:0 0 18px 8px var(--neon-primary), 0 0 36px 9px var(--neon-primary)} .glow-intensity-9{box-shadow:0 0 20px 9px var(--neon-primary), 0 0 40px 10px var(--neon-primary)} .glow-intensity-10{box-shadow:0 0 22px 10px var(--neon-primary), 0 0 44px 11px var(--neon-primary)} .glow-intensity-11{box-shadow:0 0 24px 11px var(--neon-primary), 0 0 48px 12px var(--neon-primary)} .glow-intensity-12{box-shadow:0 0 26px 12px var(--neon-primary), 0 0 52px 13px var(--neon-primary)} .glow-intensity-13{box-shadow:0 0 28px 13px var(--neon-primary), 0 0 56px 14px var(--neon-primary)} .glow-intensity-14{box-shadow:0 0 30px 14px var(--neon-primary), 0 0 60px 15px var(--neon-primary)} .glow-intensity-15{box-shadow:0 0 32px 15px var(--neon-primary), 0 0 64px 16px var(--neon-primary)} .glow-intensity-16{box-shadow:0 0 34px 16px var(--neon-primary), 0 0 68px 17px var(--neon-primary)} .glow-intensity-17{box-shadow:0 0 36px 17px var(--neon-primary), 0 0 72px 18px var(--neon-primary)} .glow-intensity-18{box-shadow:0 0 38px 18px var(--neon-primary), 0 0 76px 19px var(--neon-primary)} .glow-intensity-19{box-shadow:0 0 40px 19px var(--neon-primary), 0 0 80px 20px var(--neon-primary)} .glow-intensity-20{box-shadow:0 0 42px 20px var(--neon-primary), 0 0 84px 21px var(--neon-primary)} .matrix-rain{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1} .upgrades-container{margin:30px 0} .upgrades-tabs{display:flex;gap:2px;margin-bottom:20px;padding-bottom:10px;flex-wrap:nowrap;overflow-x:auto;overflow-y:visible;scrollbar-width:none;-ms-overflow-style:none} .upgrades-tabs::-webkit-scrollbar{display:none} .tab-button{background-color:var(--terminal-bg);border-color:var(--neon-border);color:var(--neon-primary);padding:8px 12px;cursor:pointer;transition:all 0.3s ease;position:relative;border-radius:6px 6px 0 0;text-transform:uppercase;font-size:0.75em;font-weight:bold;letter-spacing:0.5px;backdrop-filter:blur(5px);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} .tab-button::before{content:"▸ ";color:var(--neon-hover);opacity:0.6;margin-right:4px} .tab-button:hover{background-color:var(--neon-hover);color:var(--neon-primary);border-color:var(--neon-border)} .tab-button.active{background-color:var(--neon-hover);color:var(--neon-primary)} .tab-button.active::before{content:"▼ ";opacity:1} .tab-button.locked, .tab-button[aria-disabled="true"]{opacity:0.4;cursor:not-allowed;pointer-events:auto;overflow:visible !important} .tab-button[aria-disabled="true"]:active, .tab-button[aria-disabled="true"]:focus{transform:none;box-shadow:none} .tab-button.locked.active, .tab-button[aria-disabled="true"].active{background-color:var(--terminal-bg);color:var(--neon-primary);border:1px solid var(--neon-border)} .upgrade-tab{display:none} .upgrade-tab.active{display:block} .upgrades-grid{display:flex;flex-wrap:wrap;gap:20px;align-items:stretch} .upgrade-item{flex:1 1 250px;display:flex;flex-direction:column;justify-content:space-between;min-height:280px;background:linear-gradient( 145deg, rgba(0, 0, 0, 0.8), rgba(var(--neon-hover), 0.6) );border:1px solid var(--neon-border);padding:18px;border-radius:8px;text-align:center;transition:all 0.3s ease;position:relative;overflow:hidden;backdrop-filter:blur(5px)} .upgrade-item::before{content:"╭─";position:absolute;top:8px;left:8px;font-size:0.8em;opacity:0.4;color:var(--neon-primary)} .upgrade-item::after{content:"─╯";position:absolute;bottom:8px;right:8px;font-size:0.8em;opacity:0.4;color:var(--neon-primary)} .upgrade-item:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(var(--glow-color), 0.15), inset 0 1px 0 rgba(var(--glow-color), 0.1);border-color:rgba(var(--neon-border), 0.8)} .upgrade-item:hover::before, .upgrade-item:hover::after{opacity:0.8} .upgrade-item h3{margin-bottom:12px;margin-top:15px;color:var(--neon-primary);font-size:1.1em;text-transform:uppercase;letter-spacing:1px;position:relative;text-align:center;display:flex;align-items:center;justify-content:center} .upgrade-item p{margin-bottom:15px;font-size:0.85em;line-height:1.4;opacity:0.9;color:rgba(var(--neon-primary), 0.8);text-align:center;display:flex;align-items:center;justify-content:center;overflow:hidden;word-break:break-word} .cost{display:block;margin-bottom:12px;color:var(--neon-secondary);font-size:0.9em;font-weight:bold;text-align:center} .cost::before{content:"$ ";color:var(--neon-primary)} .upgrade-level{margin-bottom:10px;font-size:0.9em;color:var(--neon-primary);opacity:0.8;text-align:center} .upgrade-button{background:transparent;color:var(--neon-primary);border:2px solid var(--neon-border);padding:10px 16px;cursor:pointer;transition:all 0.3s ease;border-radius:4px;text-transform:uppercase;font-size:0.85em;font-weight:bold;letter-spacing:0.5px;position:relative;overflow:hidden} .upgrade-button::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient( 90deg, transparent, rgba(var(--neon-primary), 0.2), transparent );transition:left 0.5s ease} .upgrade-button:hover{background:var(--neon-primary);color:var(--dark-bg);border-color:var(--neon-primary);transform:translateY(-1px)} .upgrade-button:hover::before{left:100%} .upgrade-button:disabled, .upgrade-button[disabled]{pointer-events:none;box-shadow:none !important;opacity:0.6;cursor:not-allowed;filter:grayscale(1)} .achievements-grid{display:grid;grid-template-columns:repeat(5, 1fr);gap:24px 16px;margin-bottom:20px} .achievement-item{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;flex:1 1 250px;min-height:280px;background:linear-gradient( 145deg, rgba(0, 0, 0, 0.8), rgba(var(--neon-hover), 0.6) );border:1px solid var(--neon-border);padding:18px;border-radius:8px;text-align:center;transition:all 0.3s ease;opacity:0.6;height:100%;position:relative;overflow:hidden;backdrop-filter:blur(5px)} .achievement-item::before{content:"◦";position:absolute;top:12px;left:12px;color:var(--neon-border);opacity:0.5} .achievement-item.unlocked::before{content:"●";color:var(--neon-primary);opacity:1;text-shadow:0 0 8px var(--neon-primary)} .achievement-main{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:80px} .achievement-item > h3{margin-bottom:10px;color:var(--neon-primary);min-height:32px;display:flex;align-items:center;justify-content:center} .achievement-desc{margin-bottom:18px;color:var(--neon-primary);font-size:1em;opacity:0.9;min-height:40px;max-height:40px;display:flex;align-items:center;justify-content:center;text-align:center;word-break:break-word;overflow:hidden} .achievement-progress{font-size:0.9em;color:var(--neon-primary);opacity:0.8;margin-bottom:18px;min-height:20px;display:flex;align-items:center;justify-content:center} .achievement-unlock{margin-top:auto;color:var(--neon-primary);font-size:0.95em;font-family:"Share Tech Mono", monospace;text-shadow:0 0 6px var(--neon-primary), 0 0 2px var(--neon-primary);opacity:0.85;min-height:24px;display:flex;align-items:flex-end;justify-content:center} .achievement-unlock .unlock-bg{font-weight:bold;color:var(--neon-secondary);text-shadow:0 0 8px var(--neon-secondary)} .achievement-item.unlocked{opacity:1;box-shadow:0 0 2px 2px var(--neon-glow)} .achievement-item:hover{transform:translateY(-2px)} .achievements-pagination{display:flex;justify-content:center;gap:10px;margin-top:20px} .pagination-button{background:transparent;border:1px solid var(--neon-border);color:var(--neon-primary);padding:8px 15px;cursor:pointer;transition:all 0.3s ease} .pagination-button:hover{background-color:var(--neon-primary);color:var(--dark-bg)} .pagination-button:disabled{opacity:0.4;cursor:not-allowed} .pagination-info{color:var(--neon-primary);display:flex;align-items:center;gap:10px} @media (max-width:1280px){.achievements-grid{grid-template-columns:repeat(3, 1fr)} } @media (max-width:834px){.achievements-grid{grid-template-columns:repeat(2, 1fr)} } @media (max-width:480px){.achievements-grid{grid-template-columns:1fr} } @keyframes pulse{0%{box-shadow:0 0 5px var(--glow-color)} 50%{box-shadow:0 0 20px var(--glow-color)} 100%{box-shadow:0 0 5px var(--glow-color)} } ::-webkit-scrollbar{width:8px} ::-webkit-scrollbar-track{background:var(--darker-bg)} ::-webkit-scrollbar-thumb{background:var(--neon-primary);border-radius:4px} ::-webkit-scrollbar-thumb:hover{background:var(--neon-secondary)} .modal{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:20000;background:none;pointer-events:none} .modal.hidden{display:none} .modal-content{position:fixed;left:50%;top:50%;transform:translate(-50%, -50%);z-index:20000;background:#111;border:3px solid var(--neon-border);border-radius:12px;padding:36px 40px 32px 40px;min-width:340px;max-width:95vw;color:var(--neon-primary);font-family:"Share Tech Mono", monospace;text-align:center;box-shadow:none;pointer-events:auto;opacity:0;transform:translate(-50%, -50%) scale(0.96);transition:opacity 0.3s, transform 0.3s} .modal-content.show{opacity:1;transform:translate(-50%, -50%) scale(1);pointer-events:auto} .modal-content.hidden{opacity:0;pointer-events:none} .hacker-icon{font-size:3em;margin-bottom:10px;text-shadow:0 0 20px var(--glow-color);display:flex;justify-content:center;align-items:center} #event-timer{font-size:1.3em;margin:10px 0 20px 0;color:var(--neon-primary);text-shadow:0 0 10px var(--glow-color)} .event-actions{display:flex;gap:20px;justify-content:center} .neon-button{background:transparent;color:var(--neon-primary);border:2px solid var(--neon-border);box-shadow:0 0 8px 2px var(--neon-glow);padding:10px 20px;border-radius:6px;font-size:0.9em;cursor:pointer;transition:all 0.3s ease;text-transform:uppercase;font-weight:bold;letter-spacing:1px;position:relative;overflow:hidden;backdrop-filter:blur(5px)} .neon-button::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient( 90deg, transparent, rgba(var(--neon-primary), 0.2), transparent );transition:left 0.5s ease} .neon-button:hover, .neon-button:focus, .neon-button:active{background:var(--neon-primary);color:var(--dark-bg);box-shadow:0 0 16px 4px var(--neon-glow);transform:translateY(-2px)} .neon-button:hover::before{left:100%} #boot-sequence{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;background:var(--boot-bg, #010402);z-index:9999;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:opacity 0.8s;overflow:hidden} #boot-sequence.hidden{opacity:0;pointer-events:none} #boot-messages{position:relative;color:var(--neon-primary);font-family:"Share Tech Mono", monospace;font-size:1.5em;text-shadow:0 0 4px var(--neon-primary), 0 0 10px var(--neon-primary);white-space:pre-line;line-height:1.5;padding:48px 40px;background:rgba(0, 0, 0, 0.85);border-radius:12px;box-shadow:0 0 24px var(--neon-primary);z-index:3;text-align:center;margin:0} #boot-cursor{color:var(--neon-primary);font-size:1.5em;font-family:"Share Tech Mono", monospace;margin-left:2px;animation:blink-cursor 1s steps(1) infinite;text-shadow:0 0 4px var(--neon-primary), 0 0 10px var(--neon-primary);z-index:3;position:relative} @keyframes blink-cursor{0%, 49%{opacity:1} 50%, 100%{opacity:0} } @keyframes boot-flicker{0%{box-shadow:0 0 20px var(--neon-primary), 0 0 60px var(--neon-primary) inset} 100%{box-shadow:0 0 30px var(--neon-primary), 0 0 90px var(--neon-primary) inset} } .scanlines{pointer-events:none;position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;background:repeating-linear-gradient( to bottom, rgba(var(--neon-primary), 0.03) 0px, rgba(var(--neon-primary), 0.03) 2px, transparent 2px, transparent 6px );z-index:2;animation:scan-move 2s linear infinite} @keyframes scan-move{0%{background-position-y:0} 100%{background-position-y:8px} } .boot-center{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;width:100vw;position:relative;z-index:2} #settings-fab{position:fixed;right:32px;top:50%;transform:translateY(-50%);z-index:30000;display:flex;flex-direction:column;align-items:flex-end;margin:0} #settings-tab{background:#111;border:3px solid var(--neon-border);border-radius:50%;width:56px;height:56px;display:flex;align-items:center;justify-content:center;color:var(--neon-primary);box-shadow:none;cursor:pointer;transition:background 0.2s, color 0.2s, border-color 0.2s, border-width 0.2s;margin-bottom:0} #settings-tab:hover, #settings-tab:focus, #settings-tab:active{background:#111;border-color:var(--neon-border);border-width:4px} #settings-tab i{color:var(--neon-primary);font-size:28px} #settings-tab:hover i, #settings-tab:focus i, #settings-tab:active i{color:#fff} #settings-panel, #info-panel{} .neon-button, .upgrade-item, #settings-panel, .terminal{border:3px solid var(--neon-border) !important;box-shadow:none !important} .achievements-grid, .terminal-output, .modal{border:none !important;box-shadow:none !important;background:#111} .upgrade-item{border-radius:8px} .upgrade-item:hover, .upgrade-item:focus-within{border-width:4px;border-color:var(--neon-primary)} .modal{border-radius:10px;background:#111;transition:border-width 0.2s, border-color 0.2s} .modal:focus-within, .modal:hover{border-width:4px;border-color:var(--neon-primary)} .terminal, .main-content{border-radius:12px;background:#111;padding:clamp(8px, 2vw, 20px) !important} .modal-bg{position:fixed;inset:0;width:100vw;height:100vh;background:transparent;border-radius:0;z-index:19999;pointer-events:auto;box-shadow:none;backdrop-filter:blur(6px);opacity:0;transition:opacity 0.3s} .modal-bg.show{opacity:1;pointer-events:auto} .modal-bg.hidden{opacity:0;pointer-events:none} .modal-content{position:fixed;left:50%;top:50%;transform:translate(-50%, -50%);z-index:20000;background:#111;border:3px solid var(--neon-border);border-radius:12px;padding:36px 40px 32px 40px;min-width:340px;max-width:95vw;color:var(--neon-primary);font-family:"Share Tech Mono", monospace;text-align:center;box-shadow:none;pointer-events:auto;transition:opacity 0.3s, transform 0.3s} .modal-content.hidden{display:none} .radio-label{display:flex;align-items:center;margin:8px 0;cursor:pointer;color:var(--neon-primary);font-family:"Courier New", monospace;transition:all 0.3s ease} .radio-label:hover{text-shadow:0 0 5px var(--neon-primary)} .radio-label input[type="radio"]{position:absolute;opacity:0;cursor:pointer} .radio-custom{position:relative;display:inline-block;width:18px;height:18px;margin-right:10px;border:2px solid var(--neon-primary);border-radius:50%;background:transparent;transition:all 0.3s ease} .radio-label:hover .radio-custom{box-shadow:0 0 5px var(--neon-primary)} .radio-label input[type="radio"]:checked + .radio-custom{background:var(--neon-primary);box-shadow:0 0 10px var(--neon-primary)} .radio-label input[type="radio"]:checked + .radio-custom::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:8px;height:8px;border-radius:50%;background:#000} .radio-label.locked{opacity:0.5;cursor:not-allowed} .radio-label.locked:hover{text-shadow:none} .radio-label.locked .radio-custom{border-color:var(--neon-primary);opacity:0.5} .section-title{position:relative;cursor:help} .section-title::after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translateX(-50%);padding:8px 12px;background-color:rgba(0, 0, 0, 0.9);color:var(--neon-primary);border:1px solid var(--neon-primary);border-radius:4px;font-size:14px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity 0.3s, visibility 0.3s;z-index:1000;box-shadow:0 2px 4px rgba(0, 0, 0, 0.2)} .section-title:hover::after{opacity:1;visibility:visible} .section-title::before{content:"";position:absolute;bottom:calc(100% - 5px);left:50%;transform:translateX(-50%);border-width:5px;border-style:solid;border-color:var(--neon-primary) transparent transparent transparent;opacity:0;visibility:hidden;transition:opacity 0.3s, visibility 0.3s} .section-title:hover::before{opacity:1;visibility:visible} .tab-button{position:relative} .hidden{display:none !important} .fab-button{background:#111;border:3px solid var(--neon-border);border-radius:50%;width:56px;height:56px;display:flex;align-items:center;justify-content:center;color:var(--neon-primary);box-shadow:none;cursor:pointer;transition:background 0.2s, color 0.2s, border-color 0.2s, border-width 0.2s, box-shadow 0.2s;margin-bottom:0;position:relative;z-index:30001} .fab-button:hover, .fab-button:focus, .fab-button:active{background:#111;border-color:var(--neon-border);border-width:4px} .fab-button:disabled{opacity:0.5;cursor:not-allowed;filter:grayscale(1)} .fab-button i{color:var(--neon-primary);font-size:28px} .fab-button:hover i, .fab-button:focus i, .fab-button:active i{color:#fff} .fab-tooltip{position:absolute;right:70px;top:50%;transform:translateY(-50%);background:#000;border:1px solid var(--neon-border);color:var(--neon-primary);padding:6px 14px;border-radius:4px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity 0.2s;z-index:99999;font-size:1em;font-family:"Share Tech Mono", monospace} .fab-button:focus .fab-tooltip, .fab-button:hover .fab-tooltip{opacity:1;pointer-events:none} #info-modal{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:30002;background:rgba(0, 0, 0, 0.7);pointer-events:auto;transition:opacity 0.3s} #info-modal.hidden{display:none} #info-modal .modal-content{background:#111;border:3px solid var(--neon-border);border-radius:12px;padding:36px 40px 32px 40px;min-width:340px;max-width:95vw;color:var(--neon-primary);font-family:"Share Tech Mono", monospace;text-align:center;box-shadow:0 0 20px var(--neon-glow);pointer-events:auto;opacity:1;transform:translateY(0);transition:opacity 0.3s, transform 0.3s} #info-modal .modal-content h2{margin-top:0;margin-bottom:18px;font-size:1.3em;letter-spacing:1px} #info-modal .modal-content ul{margin-bottom:18px} #info-modal .modal-content button{margin-top:16px} #info-panel{position:fixed;right:88px;top:50%;transform:translateY(-50%);min-width:340px;max-width:95vw;max-height:90vh;overflow-y:auto;background:#111;border:3px solid var(--neon-border) !important;box-shadow:none !important;color:var(--neon-primary);font-family:"Share Tech Mono", monospace;border-radius:10px 0 0 10px;padding:32px 28px 24px 28px;z-index:30001;opacity:1;pointer-events:auto;transition:opacity 0.3s, transform 0.3s, border-width 0.2s, border-color 0.2s;display:block} #info-panel.hidden{opacity:0;pointer-events:none;transform:translateY(-50%) translateX(120%)} #info-panel:focus-within, #info-panel:hover{border-width:4px;border-color:var(--neon-primary)} #info-panel h2{margin-top:0;margin-bottom:18px;font-size:1.3em;letter-spacing:1px} #info-panel ul{margin-bottom:18px;font-size:1em;padding-left:1.2em} #info-panel li{margin-bottom:10px;color:var(--neon-primary);font-size:1em} #info-panel button{margin-top:16px} .side-panel{position:fixed;right:56px;top:50%;transform:translateY(-50%);min-width:340px;max-width:95vw;max-height:90vh;overflow-y:auto;background:#111;border:3px solid var(--neon-border) !important;box-shadow:none !important;color:var(--neon-primary);font-family:"Share Tech Mono", monospace;border-radius:10px 0 0 10px;padding:32px 28px 24px 28px;z-index:30001;opacity:1;pointer-events:auto;transition:opacity 0.3s, transform 0.3s, border-width 0.2s, border-color 0.2s;display:block} .side-panel.hidden{opacity:0;pointer-events:none;transform:translateY(-50%) translateX(120%)} .side-panel:focus-within, .side-panel:hover{border-width:4px;border-color:var(--neon-primary)} .side-panel h2{margin-top:0;margin-bottom:18px;font-size:1.3em;letter-spacing:1px} .side-panel ul{margin-bottom:18px;font-size:1em;padding-left:1.2em} .side-panel li{margin-bottom:10px;color:var(--neon-primary);font-size:1em} .side-panel button{margin-top:16px} .settings-group{display:flex;flex-direction:column;gap:18px;margin-top:12px} .settings-group label{font-size:1.1em;cursor:pointer;display:flex;align-items:center;gap:10px;color:var(--neon-primary)} .settings-group input[type="checkbox"]{accent-color:var(--neon-primary);width:18px;height:18px} .settings-group .locked{opacity:0.5;cursor:not-allowed} .neon-select{background:var(--darker-bg, #111);color:var(--neon-primary);border:1px solid var(--neon-border);border-radius:4px;padding:6px 12px;font-size:1em;outline:none;margin-left:8px;margin-bottom:8px;transition:box-shadow 0.2s} .neon-select:focus{box-shadow:0 0 8px var(--neon-primary)} #neon-hamburger-menu{position:fixed;top:0;left:0;height:100vh;width:64px;display:flex;flex-direction:column;align-items:center;z-index:40000;background:transparent;justify-content:flex-start} .hamburger-container{position:absolute;left:16px;top:24px;z-index:2001;display:flex;flex-direction:column;align-items:flex-start} #hamburger-btn{position:static;margin:0;background:#111;border:3px solid var(--neon-border);border-radius:10px;width:48px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:border-color 0.2s, box-shadow 0.2s;z-index:2001} #hamburger-btn:focus, #hamburger-btn:hover{border-color:var(--neon-border);box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border)} #hamburger-btn .hamburger-bar{background:transparent;border:2px solid var(--neon-primary);border-radius:2px;box-shadow:none !important;transition:all 0.3s cubic-bezier(0.4, 2, 0.6, 1)} #hamburger-btn:hover .hamburger-bar, #hamburger-btn:focus .hamburger-bar, #hamburger-btn:active .hamburger-bar{background:var(--neon-primary);box-shadow:none !important;border-color:var(--neon-primary)} #hamburger-dropdown{position:fixed;left:-400px;top:0;bottom:0;width:350px;height:100vh;background:linear-gradient( 135deg, rgba(var(--neon-primary), 0.98), rgba(var(--neon-hover), 0.99) );border:none;border-right:3px solid var(--neon-border);border-radius:0;box-shadow:0 0 20px var(--neon-glow);color:var(--neon-primary);font-family:"Share Tech Mono", monospace;opacity:1;pointer-events:none;transform:translateX(0);transition:left 0.4s cubic-bezier(0.4, 0, 0.2, 1);z-index:2000;padding:2rem;overflow-y:auto;backdrop-filter:blur(20px)} #hamburger-dropdown.open{left:0;pointer-events:auto} #hamburger-dropdown.closing{left:-400px;pointer-events:none} #hamburger-dropdown.hidden{display:none !important} .dropdown-section{margin:0;padding:0 0 0 0} .dropdown-toggle, .dropdown-link{width:100%;background:none;border:none;color:var(--neon-primary);font-size:1.1em;text-align:left;padding:16px 16px 16px 16px;cursor:pointer;font-family:"Share Tech Mono", monospace;outline:none;transition:background 0.2s, color 0.2s;margin:0;border-radius:0;box-sizing:border-box} .dropdown-content .dropdown-toggle:not(:last-child), .dropdown-content .dropdown-link:not(:last-child){border-bottom:1.5px solid var(--neon-border)} .dropdown-content .dropdown-toggle:last-child, .dropdown-content .dropdown-link:last-child{border-bottom:none} .dropdown-toggle:hover, .dropdown-toggle:focus, .dropdown-link:hover, .dropdown-link:focus{background:var(--neon-primary);color:#111} .dropdown-content{max-height:0;overflow:hidden;opacity:0;transition:max-height 0.4s cubic-bezier(0.4, 2, 0.6, 1), opacity 0.3s;display:block;background:var(--neon-hover);border:none !important;box-shadow:none !important;border-radius:0 0 10px 10px;margin:0} .dropdown-content.open{max-height:400px;opacity:1;padding:8px 12px;width:100%} #hamburger-dropdown h2{color:var(--neon-primary);font-size:1.1em;margin:10px 0 8px 0} #hamburger-dropdown ul{color:var(--neon-primary);font-size:1em;margin:0 0 10px 0;padding-left:1.2em} #hamburger-dropdown li{margin-bottom:8px} .neon-lock-icon{color:var(--neon-primary);opacity:0.8;margin-left:6px;vertical-align:middle;font-size:1em} .dropdown-category-header{margin:16px 0 8px 0;padding:12px 20px;background:linear-gradient(135deg, rgba(var(--neon-primary-rgb), 0.15), rgba(var(--neon-primary-rgb), 0.08) );border:1px solid rgba(var(--neon-primary-rgb), 0.25);border-radius:6px;text-align:center;position:relative;overflow:hidden} .dropdown-category-header::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg, transparent, rgba(var(--neon-primary-rgb), 0.1), transparent );transition:left 0.5s ease} .dropdown-category-header:hover::before{left:100%} .category-text{color:var(--neon-primary);font-family:"Share Tech Mono", monospace;font-size:0.85em;font-weight:700;text-transform:uppercase;letter-spacing:2px;text-shadow:0 0 8px var(--neon-glow);position:relative;z-index:1} @media (min-width:1920px){.dropdown-category-header{text-align:left;margin:12px 0 6px 0;padding:10px 16px} .category-text{font-size:0.8em;letter-spacing:1.5px} } @media (max-width:1919px){.dropdown-category-header{margin:20px auto 12px auto;max-width:300px;box-shadow:0 4px 15px rgba(var(--neon-primary-rgb), 0.2)} .dropdown-category-header:hover{box-shadow:0 4px 20px rgba(var(--neon-primary-rgb), 0.3);transform:translateY(-1px)} .category-text{font-size:0.9em;letter-spacing:2.5px} } #fab-bar, #settings-fab, #settings-tab, #info-tab, #settings-panel, #info-panel{display:none !important} .terminal .header{display:flex;align-items:center;justify-content:center;position:relative;min-height:64px;padding-left:0;padding-right:0} .terminal .header .col-auto:first-child{padding-left:0;position:relative} .terminal .header h1{flex:1 1 auto;text-align:center;margin-left:0;margin-right:0} @media (max-width:1199px){#hamburger-dropdown{position:fixed !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;width:100vw !important;height:100vh !important;margin:0 !important;background:linear-gradient( 145deg, rgba(0, 0, 0, 0.8), rgba(var(--neon-hover), 0.6) ) !important;border:none !important;border-radius:0 !important;box-shadow:none !important;padding:8rem 2rem 2rem 2rem !important;backdrop-filter:blur(15px) !important;transform:translateX(-100%) !important;opacity:1 !important;overflow-y:auto !important;z-index:9999 !important;transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;display:flex;flex-direction:column;align-items:center !important;justify-content:flex-start !important;min-width:auto !important;max-width:none !important} #hamburger-dropdown.open{transform:translateX(0) !important;opacity:1 !important;pointer-events:auto !important} #hamburger-dropdown.closing{transform:translateX(100%) !important;opacity:1 !important;pointer-events:none !important;transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important} #hamburger-dropdown::before{content:"✕";position:absolute;top:2rem;left:50%;transform:translateX(-50%);font-size:1.8rem;color:var(--neon-primary);cursor:pointer;z-index:10001;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:2px solid var(--neon-primary);border-radius:50%;background:rgba(0, 0, 0, 0.8);box-shadow:0 0 20px var(--neon-glow);transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);font-weight:400;line-height:1;font-family:"Share Tech Mono", monospace;backdrop-filter:blur(10px)} #hamburger-dropdown::before:hover{background:var(--neon-primary);color:#000;box-shadow:0 0 30px var(--neon-glow), 0 0 40px var(--neon-glow);transform:translateX(-50%) scale(1.1) rotate(90deg)} .dropdown-section:first-child{margin-top:1rem} .dropdown-toggle, .dropdown-link{font-size:1.3em;padding:22px 20px;border-radius:8px;margin-bottom:4px;transition:all 0.3s ease;text-align:center !important;width:100% !important;max-width:400px !important} .dropdown-toggle:hover, .dropdown-link:hover{background:var(--neon-primary);color:#000;box-shadow:0 0 15px var(--neon-glow);transform:translateX(8px)} .dropdown-content{border-radius:8px;background:rgba(0, 0, 0, 0.4);backdrop-filter:blur(10px);border:1px solid rgba(var(--neon-border), 0.2)} .dropdown-content.open{padding:16px 20px;box-shadow:0 0 20px rgba(var(--neon-glow), 0.1);width:100%} #hamburger-dropdown h2{font-size:1.3em;margin:12px 0 10px 0;text-shadow:0 0 10px var(--neon-glow)} #hamburger-dropdown ul{font-size:1.1em;margin:0 0 12px 0;padding-left:1.5em} #hamburger-dropdown li{margin-bottom:10px;line-height:1.4} .dropdown-section{animation:slideInUp 0.6s ease-out forwards;animation-delay:calc(var(--index, 0) * 0.1s);opacity:0;transform:translateY(20px);width:100% !important;max-width:400px !important;display:flex !important;flex-direction:column !important;align-items:center !important} #hamburger-dropdown.open .dropdown-section{opacity:1;transform:translateY(0)} } @keyframes slideInUp{from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} } @media (max-width:600px){.header-spacer{display:none} } .terminal .header .col-auto:first-child{padding-left:0;position:relative} #hamburger-btn{margin:0;background:#111;border:3px solid var(--neon-border);border-radius:10px;width:48px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:border-color 0.2s, box-shadow 0.2s;z-index:10} #hamburger-btn:focus, #hamburger-btn:hover{border-color:var(--neon-border);box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border)} .hamburger-bar{width:28px;height:4px;background:var(--neon-primary);margin:3px 0;border-radius:2px;box-shadow:none !important;transition:all 0.3s cubic-bezier(0.4, 2, 0.6, 1)} .header-spacer{width:48px;min-width:48px;height:1px;display:inline-block} .dropdown-section{margin:0;padding:0 0 0 0} .dropdown-toggle, .dropdown-link{width:100%;background:none;border:none;color:var(--neon-primary);font-size:1.1em;text-align:left;padding:16px 16px 16px 16px;cursor:pointer;font-family:"Share Tech Mono", monospace;outline:none;transition:background 0.2s, color 0.2s;margin:0;border-radius:0;box-sizing:border-box} .dropdown-content .dropdown-toggle:not(:last-child), .dropdown-content .dropdown-link:not(:last-child){border-bottom:1.5px solid var(--neon-border)} .dropdown-content .dropdown-toggle:last-child, .dropdown-content .dropdown-link:last-child{border-bottom:none} .dropdown-content input[type="checkbox"]{accent-color:var(--neon-primary)} .dropdown-content label, .dropdown-content .radio-label{margin-left:4px;margin-right:4px;margin-top:4px;margin-bottom:4px;display:block} #hamburger-btn:hover .hamburger-bar, #hamburger-btn:focus .hamburger-bar, #hamburger-btn:active .hamburger-bar{background:var(--neon-primary);box-shadow:none !important;border-color:var(--neon-primary);transition:box-shadow 0.2s, background 0.2s} #hamburger-btn:hover, #hamburger-btn:focus{border-color:var(--neon-primary);box-shadow:0 0 16px var(--neon-primary), 0 0 4px var(--neon-primary)} #save-game-btn{background:#111 !important;border:3px solid var(--neon-border) !important;border-radius:10px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;transition:background 0.2s, border-color 0.2s, box-shadow 0.2s} #save-game-btn .save-icon{color:var(--neon-primary);font-size:28px;transition:color 0.2s} #save-game-btn:hover, #save-game-btn:focus, #save-game-btn:active{background:#111 !important;border-color:var(--neon-border) !important;box-shadow:0 0 8px var(--neon-glow), 0 0 2px var(--neon-glow);cursor:pointer} #save-game-btn:hover .save-icon, #save-game-btn:focus .save-icon, #save-game-btn:active .save-icon{color:var(--neon-primary)} #save-game-btn:not(:disabled):hover, #save-game-btn:not(:disabled):focus{box-shadow:0 0 16px var(--neon-primary), 0 0 4px var(--neon-primary)} #save-game-btn:disabled{pointer-events:none;box-shadow:none;opacity:0.6} .neon-hamburger-btn, #audio-btn, #leaderboard-btn{background:#111;border:3px solid var(--neon-border);border-radius:10px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:var(--neon-primary);cursor:pointer;transition:background 0.2s, color 0.2s, border-color 0.2s, border-width 0.2s, box-shadow 0.2s;padding:0;font-size:1em} .neon-hamburger-btn:hover, .neon-hamburger-btn:focus, .neon-hamburger-btn:active, #audio-btn:hover, #audio-btn:focus, #audio-btn:active, #leaderboard-btn:hover, #leaderboard-btn:focus, #leaderboard-btn:active{border-color:var(--neon-border);box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border);outline:none;border-width:4px} .neon-hamburger-btn i{color:var(--neon-primary);font-size:28px} #audio-btn:focus, #audio-btn:hover{border-color:var(--neon-border);box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border)} .music-player-popup{position:fixed;left:-400px;top:0;bottom:0;width:300px;height:100vh;z-index:40000;background:linear-gradient( 135deg, rgba(var(--neon-primary), 0.95), rgba(var(--neon-hover), 0.98) );border:none;border-right:3px solid var(--neon-border);border-radius:0;box-shadow:0 0 20px var(--neon-glow);opacity:1;pointer-events:none;transform:translateX(0);transition:left 0.4s cubic-bezier(0.4, 0, 0.2, 1);padding:2rem;overflow-y:auto;backdrop-filter:blur(20px);display:block} .music-player-popup.open{left:0;pointer-events:auto} .music-player-popup.hidden{left:-400px;pointer-events:none} @media (max-width:1199px){.music-player-popup{position:fixed !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;width:100vw !important;height:100vh !important;margin:0 !important;background:linear-gradient( 145deg, rgba(0, 0, 0, 0.8), rgba(var(--neon-hover), 0.6) ) !important;border:none !important;border-radius:0 !important;box-shadow:none !important;padding:8rem 2rem 2rem 2rem !important;backdrop-filter:blur(15px) !important;transform:translateX(-100%) !important;opacity:1 !important;overflow-y:auto !important;z-index:9999 !important;transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;min-width:auto !important;max-width:none !important} .music-player-popup.open{transform:translateX(0) !important;opacity:1 !important;pointer-events:auto !important} .music-player-popup.closing{transform:translateX(100%) !important;opacity:1 !important;pointer-events:none !important;transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important} .music-player-popup::before{content:"✕";position:absolute;top:2rem;left:50%;transform:translateX(-50%);font-size:1.8rem;color:var(--neon-primary);cursor:pointer;z-index:10001;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:2px solid var(--neon-primary);border-radius:50%;background:rgba(0, 0, 0, 0.8);box-shadow:0 0 20px var(--neon-glow);transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);font-weight:400;line-height:1;font-family:"Share Tech Mono", monospace;backdrop-filter:blur(10px)} .music-player-popup::before:hover{background:var(--neon-primary);color:#000;box-shadow:0 0 30px var(--neon-glow), 0 0 40px var(--neon-glow);transform:translateX(-50%) scale(1.1) rotate(90deg)} .music-player-popup .music-controls{gap:20px;justify-content:center;margin:2rem 0} .music-player-popup .music-btn{width:60px;height:60px;font-size:1.5rem} .music-player-popup .music-btn i{font-size:28px} .music-player-popup .volume-control{margin:2rem 0} .music-player-popup .progress-bar{margin:2rem 0} .music-player-popup .music-info{text-align:center;margin-bottom:2rem} .music-player-popup h3{font-size:1.5rem;margin-bottom:1rem} } .terminal.container-fluid{padding-left:0 !important;padding-right:0 !important} .terminal{margin-top:24px;transition:margin-left 0.4s cubic-bezier(0.4, 0, 0.2, 1)} .header{margin:0;padding:0.5rem 0} .main-content{margin:0;padding:0.5rem 0} @media (min-width:1353px){.terminal .header{display:flex !important;align-items:center !important;justify-content:center !important;position:relative !important;min-height:64px !important;padding-left:0 !important;padding-right:0 !important;margin-top:20px !important;margin-bottom:20px !important;flex-direction:row !important;text-align:center !important} .terminal .header h1{display:block !important;visibility:visible !important} .terminal .header .col-auto, .terminal .header .col{display:block !important} .hamburger-container{position:absolute !important;left:16px !important;top:50px !important;display:flex !important;flex-direction:column !important;align-items:flex-start !important;width:auto !important;margin:0 !important;padding:0 !important} .header-btn-group{display:flex !important;align-items:center !important;gap:16px !important;margin-top:0 !important;margin-bottom:20px !important;justify-content:flex-start !important;width:auto !important;margin-left:0 !important;margin-right:0 !important;padding:0 !important;position:static !important} .header-btn-group .music-btn, .header-btn-group #save-game-btn, .header-btn-group #leaderboard-btn, .header-btn-group #hamburger-btn, .header-btn-group #audio-btn{width:48px !important;height:48px !important;font-size:1em !important;margin:0 !important;padding:0 !important} .header-spacer{display:inline-block !important} } @media (min-width:769px) and (max-width:1352px){.tab-button{padding:10px 14px;font-size:0.8em;min-width:100px} .upgrades-grid{gap:16px} .upgrade-item{flex:1 1 280px;min-height:260px} } @media (max-width:1352px){.terminal .header{flex-direction:column !important;align-items:center !important;justify-content:flex-start !important;min-height:unset !important;padding-top:16px !important;padding-bottom:8px !important;margin-top:0 !important;margin-bottom:10px !important;text-align:center !important} .terminal .header h1{display:none !important;visibility:hidden !important} .terminal .header .col-auto, .terminal .header .col{display:none !important} .hamburger-container{position:static !important;display:flex !important;align-items:center !important;justify-content:center !important;width:100% !important;margin:0 auto !important;padding:0 !important} .header-btn-group{display:flex !important;align-items:center !important;gap:16px !important;justify-content:center !important;width:100% !important;margin:0 auto !important;padding:0 !important;position:static !important} .header-btn-group .music-btn, .header-btn-group #save-game-btn, .header-btn-group #leaderboard-btn, .header-btn-group #hamburger-btn, .header-btn-group #audio-btn{width:48px !important;height:48px !important;font-size:1em !important;margin:0 !important;padding:0 !important} .header-spacer{display:none !important} } @media (max-width:600px){.header-btn-group{gap:12px !important} .header-btn-group .music-btn, .header-btn-group #save-game-btn, .header-btn-group #leaderboard-btn, .header-btn-group #hamburger-btn{width:46px !important;height:46px !important;font-size:1em !important} } @media (max-width:768px){.upgrades-tabs{gap:1px;padding-bottom:8px} .tab-button{padding:6px 8px;font-size:0.7em;min-width:80px;border-radius:4px 4px 0 0;letter-spacing:0.3px} .tab-button::before{margin-right:2px} .upgrades-grid{gap:12px} .upgrade-item{flex:1 1 100%;min-height:240px} } @media (max-width:900px){html, body{height:auto !important;min-height:100vh !important;overflow-y:auto !important} body{display:block !important;align-items:initial !important;justify-content:initial !important;padding:0 !important} .terminal{margin-top:12px;border-radius:0 !important;max-width:100vw !important;min-width:0 !important} } .header.row, .main-content .row{margin-left:0 !important;margin-right:0 !important} @media (min-width:1200px){.upgrades-grid{display:grid !important;grid-template-columns:repeat(5, 1fr);gap:24px 16px} .upgrades-grid .upgrade-item{width:100%;margin-bottom:0} } .header h1{font-size:clamp(1.1em, 2vw, 2.2em)} .credits-display{font-size:clamp(1em, 2vw, 1.5em)} #hack-button.glow-1{box-shadow:0 0 8px 2px var(--neon-primary), 0 0 1px var(--neon-primary) !important} #hack-button.glow-2{box-shadow:0 0 12px 4px var(--neon-primary), 0 0 2px var(--neon-primary) !important} #hack-button.glow-3{box-shadow:0 0 18px 6px var(--neon-primary), 0 0 3px var(--neon-primary) !important} #hack-button.glow-4{box-shadow:0 0 24px 8px var(--neon-primary), 0 0 4px var(--neon-primary) !important} #hack-button.glow-5{box-shadow:0 0 32px 10px var(--neon-primary), 0 0 5px var(--neon-primary) !important} #hack-button.glow-intensity-6{box-shadow:0 0 14px 6px var(--neon-primary), 0 0 28px 7px var(--neon-primary) !important} #hack-button.glow-intensity-7{box-shadow:0 0 16px 7px var(--neon-primary), 0 0 32px 8px var(--neon-primary) !important} #hack-button.glow-intensity-8{box-shadow:0 0 18px 8px var(--neon-primary), 0 0 36px 9px var(--neon-primary) !important} #hack-button.glow-intensity-9{box-shadow:0 0 20px 9px var(--neon-primary), 0 0 40px 10px var(--neon-primary) !important} #hack-button.glow-intensity-10{box-shadow:0 0 22px 10px var(--neon-primary), 0 0 44px 11px var(--neon-primary) !important} .achievement-unlock{margin-top:8px;color:var(--neon-primary);font-size:0.95em;font-family:"Share Tech Mono", monospace;text-shadow:0 0 6px var(--neon-primary), 0 0 2px var(--neon-primary);opacity:0.85} .achievement-unlock .unlock-bg{font-weight:bold;color:var(--neon-secondary);text-shadow:0 0 8px var(--neon-secondary)} #intro-modal.modal{position:fixed;inset:0;z-index:30001;background:rgba(0, 0, 0, 0.7);pointer-events:auto} #intro-modal .modal-content{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);z-index:30002;background:#111;border:3px solid var(--neon-border);border-radius:12px;padding:36px 40px 32px 40px;min-width:0;max-width:420px;width:90vw;max-height:90vh;box-sizing:border-box;color:var(--neon-primary);font-family:"Share Tech Mono", monospace;text-align:center;box-shadow:0 0 20px var(--neon-glow);pointer-events:auto;opacity:1;overflow-y:auto;transition:opacity 0.3s, transform 0.3s} .tier-unlock-bar{display:flex;justify-content:center;align-items:center;margin-bottom:18px;min-height:48px} .tier-unlock-btn{background:#111;color:var(--neon-primary);border:2px solid var(--neon-border);border-radius:6px;font-family:"Share Tech Mono", monospace;font-size:1.1em;padding:10px 28px;margin:0 10px;cursor:pointer;box-shadow:0 0 8px var(--neon-primary), 0 0 2px var(--neon-primary);transition:background 0.2s, color 0.2s, border-color 0.2s} .tier-unlock-btn:disabled{opacity:0.5;cursor:not-allowed;box-shadow:none} .tier-unlock-btn:hover:not(:disabled), .tier-unlock-btn:focus:not(:disabled){background:var(--neon-primary);color:#111;border-color:var(--neon-border)} .tier-unlock-cost{color:var(--neon-primary);font-size:1.05em;margin-right:12px;font-family:"Share Tech Mono", monospace} .music-player{margin-top:20px;padding:15px;border:1px solid var(--neon-primary);border-radius:8px;background:rgba(0, 0, 0, 0.3);box-shadow:0 0 10px var(--neon-primary)} .music-info{text-align:center;margin-bottom:15px;color:var(--neon-primary);font-size:14px;text-shadow:0 0 5px var(--neon-primary)} .music-controls{display:flex;justify-content:center;align-items:center;gap:15px;margin-bottom:15px} .music-btn{background:#111;border:3px solid var(--neon-border);border-radius:10px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:var(--neon-primary);cursor:pointer;transition:background 0.2s, color 0.2s, border-color 0.2s, border-width 0.2s, box-shadow 0.2s;padding:0;font-size:1em} .music-btn i{color:var(--neon-primary);font-size:20px} .music-btn:hover, .music-btn:focus{background:#111;color:var(--neon-primary);border-color:var(--neon-border);box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border);border-width:4px} .music-btn:active{background:#111;color:var(--neon-primary);border-color:var(--neon-border);box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border);border-width:4px;transform:scale(0.95)} .music-btn.active{background:#111;color:var(--neon-primary);border-color:var(--neon-border);box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border);border-width:4px} .music-btn.active i{filter:drop-shadow(0 0 2px rgba(0, 0, 0, 0.5))} .volume-control{display:flex;align-items:center;gap:10px;color:var(--neon-primary)} .volume-control i{color:var(--neon-primary);font-size:20px} #volume-slider{flex:1;-webkit-appearance:none;height:4px;background:linear-gradient( to right, var(--neon-primary) 0%, var(--neon-primary) var(--volume-fill, 50%), rgba(255, 255, 255, 0.1) var(--volume-fill, 50%), rgba(255, 255, 255, 0.1) 100% );border-radius:2px;outline:none} #volume-slider::-webkit-slider-thumb{-webkit-appearance:none;width:15px;height:15px;background:var(--neon-primary);border-radius:50%;cursor:pointer;box-shadow:0 0 5px var(--neon-primary)} #volume-slider::-moz-range-thumb{width:15px;height:15px;background:var(--neon-primary);border-radius:50%;cursor:pointer;box-shadow:0 0 5px var(--neon-primary);border:none} #volume-slider::-webkit-slider-thumb:hover{box-shadow:0 0 10px var(--neon-primary)} #volume-slider::-moz-range-thumb:hover{box-shadow:0 0 10px var(--neon-primary)} .progress-bar{position:relative;width:100%;height:4px;background:rgba(255, 255, 255, 0.1);border-radius:2px;margin-bottom:15px;cursor:pointer} .progress{position:absolute;height:100%;background:var(--neon-primary);border-radius:2px;width:0%;box-shadow:0 0 5px var(--neon-primary)} #progress-slider{position:absolute;width:100%;height:100%;opacity:0;cursor:pointer;z-index:1;-webkit-appearance:none;appearance:none;background:transparent} #progress-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:var(--neon-primary);cursor:pointer;opacity:0;transition:opacity 0.2s} #progress-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:var(--neon-primary);cursor:pointer;border:none;opacity:0;transition:opacity 0.2s} .progress-bar:hover #progress-slider::-webkit-slider-thumb, .progress-bar:hover #progress-slider::-moz-range-thumb, #progress-slider:focus::-webkit-slider-thumb, #progress-slider:focus::-moz-range-thumb{opacity:1} #leaderboard-popup{position:fixed;left:-400px;top:0;bottom:0;width:300px;height:100vh;z-index:40000;background:linear-gradient( 135deg, rgba(var(--neon-primary), 0.95), rgba(var(--neon-hover), 0.98) );border:none;border-right:3px solid var(--neon-border);border-radius:0;box-shadow:0 0 20px var(--neon-glow);opacity:1;pointer-events:none;transform:translateX(0);transition:left 0.4s cubic-bezier(0.4, 0, 0.2, 1);padding:2rem;overflow-y:auto;backdrop-filter:blur(20px)} #leaderboard-popup.open{left:0;pointer-events:auto} #leaderboard-popup.hidden{left:-400px;pointer-events:none} .leaderboard-header{display:flex;flex-direction:column;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--neon-primary);text-align:center} .leaderboard-header h3{margin:0 0 4px 0;color:var(--neon-primary);font-size:1.1em} #leaderboard-update-time{font-size:0.75em;color:var(--neon-primary);opacity:0.8;line-height:1.2} #leaderboard-content{max-height:calc(100vh - 140px);overflow-y:auto;overflow-x:hidden;padding-right:8px;margin-right:-8px} #leaderboard-content::-webkit-scrollbar{width:6px} #leaderboard-content::-webkit-scrollbar-track{background:rgba(var(--neon-primary), 0.1);border-radius:3px} #leaderboard-content::-webkit-scrollbar-thumb{background:var(--neon-primary);border-radius:3px;opacity:0.7} #leaderboard-content::-webkit-scrollbar-thumb:hover{background:var(--neon-secondary);opacity:1} .leaderboard-entry{display:flex;align-items:center;gap:8px;padding:8px;border-radius:4px;transition:background-color 0.2s} .leaderboard-entry:hover{background:rgba(255, 255, 255, 0.05)} .leaderboard-rank{font-family:"Courier New", monospace;font-weight:bold;color:var(--neon-primary);min-width:24px;text-align:center} .leaderboard-avatar{width:48px;height:48px;border-radius:50%;border:1px solid var(--neon-primary)} .leaderboard-info{flex:1;min-width:0} .leaderboard-name{font-weight:bold;color:var(--neon-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis} .leaderboard-stats{display:flex;flex-direction:column;gap:2px;font-size:0.9em;overflow-wrap:anywhere;word-break:break-word;align-items:flex-start} .leaderboard-credits{font-family:"Courier New", monospace;word-break:break-all;text-align:right} @media (max-width:1199px){#leaderboard-popup{position:fixed !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;width:100vw !important;height:100vh !important;margin:0 !important;background:linear-gradient( 145deg, rgba(0, 0, 0, 0.8), rgba(var(--neon-hover), 0.6) ) !important;border:none !important;border-radius:0 !important;box-shadow:none !important;padding:8rem 0 2rem 0 !important;backdrop-filter:blur(15px) !important;transform:translateX(-100%) !important;opacity:1 !important;overflow-y:auto !important;z-index:9999 !important;transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;min-width:auto !important;max-width:none !important;display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:flex-start !important} #leaderboard-popup.open{transform:translateX(0) !important;opacity:1 !important;pointer-events:auto !important} #leaderboard-popup.closing{transform:translateX(100%) !important;opacity:1 !important;pointer-events:none !important;transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important} #leaderboard-popup::before{content:"✕";position:absolute;top:2rem;left:50%;transform:translateX(-50%);font-size:1.8rem;color:var(--neon-primary);cursor:pointer;z-index:10001;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:2px solid var(--neon-primary);border-radius:50%;background:rgba(0, 0, 0, 0.8);box-shadow:0 0 20px var(--neon-glow);transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);font-weight:400;line-height:1;font-family:"Share Tech Mono", monospace;backdrop-filter:blur(10px)} #leaderboard-popup::before:hover{background:var(--neon-primary);color:#000;box-shadow:0 0 30px var(--neon-glow), 0 0 40px var(--neon-glow);transform:translateX(-50%) scale(1.1) rotate(90deg)} .leaderboard-header, #leaderboard-content{width:100% !important;max-width:450px !important;margin:0 auto !important;padding:0 0.5rem !important} .leaderboard-header{margin-bottom:2rem;padding-bottom:1rem;text-align:center} .leaderboard-header h3{font-size:1.8rem;margin-bottom:0.5rem} .leaderboard-entry{padding:1rem;margin-bottom:0.5rem;background:rgba(var(--neon-border), 0.05);border:1px solid rgba(var(--neon-border), 0.2);border-radius:8px} .leaderboard-entry:hover{background:rgba(var(--neon-border), 0.1);border-color:rgba(var(--neon-border), 0.3)} .leaderboard-rank{min-width:32px;font-size:1.2rem} .leaderboard-avatar{width:56px;height:56px;border-width:2px} .leaderboard-name{font-size:1.1rem;font-weight:bold} .leaderboard-stats{font-size:1rem;gap:0.5rem} .leaderboard-credits{font-size:1.1rem;font-weight:bold} #leaderboard-content{max-height:calc(100vh - 200px) !important;overflow-y:auto !important} #leaderboard-content::-webkit-scrollbar{width:8px !important} #leaderboard-content::-webkit-scrollbar-track{background:rgba(var(--neon-primary), 0.15) !important;border-radius:4px !important} #leaderboard-content::-webkit-scrollbar-thumb{background:var(--neon-primary) !important;border-radius:4px !important;opacity:0.8 !important} #leaderboard-content::-webkit-scrollbar-thumb:hover{background:var(--neon-secondary) !important;opacity:1 !important} } #profile-popup{position:fixed;left:-500px;top:0;bottom:0;width:450px;height:100vh;z-index:40000;background:linear-gradient( 135deg, rgba(var(--neon-primary), 0.95), rgba(var(--neon-hover), 0.98) );border:none;border-right:3px solid var(--neon-border);border-radius:0;box-shadow:0 0 20px var(--neon-glow);opacity:1;pointer-events:none;transform:translateX(0);transition:left 0.4s cubic-bezier(0.4, 0, 0.2, 1);padding:2rem;overflow-y:auto;backdrop-filter:blur(20px)} #profile-popup.open{left:0;pointer-events:auto} #profile-popup.hidden{left:-500px;pointer-events:none} .profile-header{display:flex;flex-direction:column;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--neon-primary);text-align:center} .profile-header h3{margin:0 0 8px 0;color:var(--neon-primary);font-size:1.3em;font-family:"Share Tech Mono", monospace;text-shadow:0 0 10px var(--neon-glow)} #profile-username{font-size:1.1em;color:var(--neon-secondary);font-weight:bold;font-family:"Share Tech Mono", monospace;text-shadow:0 0 5px var(--neon-secondary)} #profile-content{max-height:calc(100vh - 140px);overflow-y:auto;overflow-x:hidden;padding-right:8px;margin-right:-8px} #profile-content::-webkit-scrollbar{width:6px} #profile-content::-webkit-scrollbar-track{background:rgba(var(--neon-primary), 0.1);border-radius:3px} #profile-content::-webkit-scrollbar-thumb{background:var(--neon-primary);border-radius:3px;opacity:0.7} #profile-content::-webkit-scrollbar-thumb:hover{background:var(--neon-secondary);opacity:1} .profile-section{margin-bottom:25px;padding:15px;background:rgba(0, 0, 0, 0.2);border:1px solid rgba(var(--neon-primary), 0.3);border-radius:8px;backdrop-filter:blur(5px)} .profile-section h4{margin:0 0 15px 0;color:var(--neon-primary);font-size:1.1em;font-family:"Share Tech Mono", monospace;text-transform:uppercase;letter-spacing:1px;text-align:center;text-shadow:0 0 8px var(--neon-glow);border-bottom:1px solid rgba(var(--neon-primary), 0.3);padding-bottom:8px} .profile-stats-grid{display:grid;grid-template-columns:1fr;gap:16px} .profile-stat{width:100%;box-sizing:border-box} .profile-stat:hover{background:rgba(var(--neon-primary), 0.1);border-color:rgba(var(--neon-primary), 0.4);transform:translateX(3px)} .stat-label{color:var(--neon-primary);font-size:0.9em;font-family:"Share Tech Mono", monospace;opacity:0.9} .stat-value{color:var(--neon-secondary);font-size:0.95em;font-family:"Courier New", monospace;font-weight:bold;text-align:right;word-break:break-all;max-width:50%} .profile-tier-breakdown{display:flex;flex-direction:column;gap:10px} .tier-breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:rgba(0, 0, 0, 0.3);border:1px solid rgba(var(--neon-primary), 0.2);border-radius:4px;transition:all 0.3s ease} .tier-breakdown-item:hover{background:rgba(var(--neon-primary), 0.1);border-color:rgba(var(--neon-primary), 0.4)} .tier-breakdown-item .tier-name{color:var(--neon-primary);font-family:"Share Tech Mono", monospace;font-size:0.9em;text-transform:uppercase;font-weight:bold} .tier-breakdown-item .tier-count{color:var(--neon-secondary);font-family:"Courier New", monospace;font-weight:bold} .tier-breakdown-item.tier-locked{opacity:0.5} .tier-breakdown-item.tier-locked .tier-name{color:rgba(var(--neon-primary), 0.6)} @media (max-width:1919px){#profile-popup{position:fixed !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;width:100vw !important;height:100vh !important;margin:0 !important;background:linear-gradient( 145deg, rgba(0, 0, 0, 0.8), rgba(var(--neon-hover), 0.6) ) !important;border:none !important;border-radius:0 !important;box-shadow:none !important;padding:8rem 0 2rem 0 !important;backdrop-filter:blur(15px) !important;transform:translateX(-100%) !important;opacity:1 !important;overflow-y:auto !important;z-index:9999 !important;transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;min-width:auto !important;max-width:none !important;display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:flex-start !important} #profile-popup.open{transform:translateX(0) !important;opacity:1 !important;pointer-events:auto !important} #profile-popup.closing{transform:translateX(100%) !important;opacity:1 !important;pointer-events:none !important;transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important} #profile-popup::before{content:"✕";position:absolute;top:2rem;left:50%;transform:translateX(-50%);font-size:1.8rem;color:var(--neon-primary);cursor:pointer;z-index:10001;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:2px solid var(--neon-primary);border-radius:50%;background:rgba(0, 0, 0, 0.8);box-shadow:0 0 20px var(--neon-glow);transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);font-weight:400;line-height:1;font-family:"Share Tech Mono", monospace;backdrop-filter:blur(10px)} #profile-popup::before:hover{background:var(--neon-primary);color:#000;box-shadow:0 0 30px var(--neon-glow), 0 0 40px var(--neon-glow);transform:translateX(-50%) scale(1.1) rotate(90deg)} .profile-header, #profile-content{width:100% !important;max-width:500px !important;margin:0 auto !important;padding:0 1rem !important} .profile-header{margin-bottom:2rem;padding-bottom:1rem;text-align:center} .profile-header h3{font-size:1.8rem;margin-bottom:0.5rem} #profile-username{font-size:1.3rem} .profile-section{margin-bottom:1.5rem;padding:1rem} .profile-section h4{font-size:1.2rem;margin-bottom:1rem} .profile-stat{padding:12px;margin-bottom:8px} .stat-label{font-size:1rem} .stat-value{font-size:1.1rem;max-width:60%} #profile-content{max-height:calc(100vh - 200px) !important;overflow-y:auto !important} #profile-content::-webkit-scrollbar{width:8px !important} #profile-content::-webkit-scrollbar-track{background:rgba(var(--neon-primary), 0.15) !important;border-radius:4px !important} #profile-content::-webkit-scrollbar-thumb{background:var(--neon-primary) !important;border-radius:4px !important;opacity:0.8 !important} #profile-content::-webkit-scrollbar-thumb:hover{background:var(--neon-secondary) !important;opacity:1 !important} } @media (min-width:1920px){#profile-popup{position:fixed !important;left:-500px !important;top:0 !important;bottom:0 !important;width:450px !important;height:100vh !important;margin:0 !important;background:linear-gradient( 135deg, rgba(var(--neon-primary), 0.95), rgba(var(--neon-hover), 0.98) ) !important;border:none !important;border-right:3px solid var(--neon-border) !important;border-radius:0 !important;box-shadow:0 0 20px var(--neon-glow) !important;padding:2rem !important;backdrop-filter:blur(20px) !important;transform:translateX(0) !important;opacity:1 !important;overflow-y:auto !important;z-index:40000 !important;transition:left 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;pointer-events:none !important} #profile-popup.open{left:0 !important;pointer-events:auto !important} #profile-popup.closing{left:-500px !important;pointer-events:none !important;transition:left 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important} #profile-popup.hidden{left:-500px !important;pointer-events:none !important} #profile-popup.hidden{left:-500px !important;pointer-events:none !important} #profile-popup::before{display:none !important} } @media (min-width:1200px){#hamburger-dropdown{position:fixed !important;left:-400px !important;top:0 !important;bottom:0 !important;width:350px !important;height:100vh !important;margin:0 !important;background:linear-gradient( 135deg, rgba(var(--neon-primary), 0.98), rgba(var(--neon-hover), 0.99) ) !important;border:none !important;border-right:3px solid var(--neon-border) !important;border-radius:0 !important;box-shadow:0 0 20px var(--neon-glow) !important;padding:2rem !important;backdrop-filter:blur(20px) !important;transform:translateX(0) !important;opacity:1 !important;overflow-y:auto !important;z-index:2000 !important;transition:left 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important} #hamburger-dropdown.open{left:0 !important;pointer-events:auto !important} #hamburger-dropdown.closing{left:-400px !important;pointer-events:none !important} #hamburger-dropdown::before{display:none !important} .dropdown-toggle, .dropdown-link{font-size:1.1em !important;padding:16px !important;border-radius:0 !important;margin-bottom:0 !important;text-align:left !important;width:100% !important;max-width:none !important} .dropdown-section{margin:0 !important;padding:0 !important;width:100% !important;max-width:none !important;display:block !important;flex-direction:column !important;align-items:stretch !important;animation:none !important;opacity:1 !important;transform:translateY(0) !important} .music-player-popup{position:fixed !important;left:-400px !important;top:0 !important;bottom:0 !important;width:300px !important;height:100vh !important;margin:0 !important;background:linear-gradient( 135deg, rgba(var(--neon-primary), 0.95), rgba(var(--neon-hover), 0.98) ) !important;border:none !important;border-right:3px solid var(--neon-border) !important;border-radius:0 !important;box-shadow:0 0 20px var(--neon-glow) !important;padding:2rem !important;backdrop-filter:blur(20px) !important;transform:translateX(0) !important;opacity:1 !important;overflow-y:auto !important;z-index:40000 !important;transition:left 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important} .music-player-popup.open{left:0 !important;pointer-events:auto !important} .music-player-popup.hidden{left:-400px !important;pointer-events:none !important} .music-player-popup::before{display:none !important} #leaderboard-popup{position:fixed !important;left:-400px !important;top:0 !important;bottom:0 !important;width:300px !important;height:100vh !important;margin:0 !important;background:linear-gradient( 135deg, rgba(var(--neon-primary), 0.95), rgba(var(--neon-hover), 0.98) ) !important;border:none !important;border-right:3px solid var(--neon-border) !important;border-radius:0 !important;box-shadow:0 0 20px var(--neon-glow) !important;padding:2rem !important;backdrop-filter:blur(20px) !important;transform:translateX(0) !important;opacity:1 !important;overflow-y:auto !important;z-index:40000 !important;transition:left 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important} #leaderboard-popup.open{left:0 !important;pointer-events:auto !important} #leaderboard-popup.hidden{left:-400px !important;pointer-events:none !important} #leaderboard-popup::before{display:none !important} } .matrix-bg{background-image:url("../images/matrix.jpg");background-size:cover;background-position:center;background-attachment:fixed;background-color:#000} .mr-robot-bg{background-image:url("../images/mr_robot.jpg");background-size:cover;background-position:center;background-attachment:fixed;background-color:#000} .hacker-pc-bg{background-image:url("../images/hacker_pc.jpg");background-size:cover;background-position:center;background-attachment:fixed;background-color:#000} .hacker-green-bg{background-image:url("../images/hacker_green.jpg");background-size:cover;background-position:center;background-attachment:fixed;background-color:#000} .hacker-green-bg{background-image:url("../images/hacker_green.jpg");background-size:cover;background-position:center;background-attachment:fixed;background-color:#000} #save-game-btn .fab-tooltip{left:50% !important;right:auto !important;top:83% !important;bottom:auto !important;transform:translateX(-50%) !important;margin-top:2px !important;z-index:10000 !important} [data-upgrade="dark-credits"] .upgrade-button{background:linear-gradient(45deg, #1a1a1a, #2a2a2a);border:1px solid var(--neon-green);color:var(--neon-green);text-shadow:0 0 5px var(--neon-green);box-shadow:0 0 10px rgba(var(--neon-border), 0.2)} [data-upgrade="dark-credits"] .upgrade-button:hover{background:linear-gradient(45deg, #2a2a2a, #3a3a3a);box-shadow:0 0 15px rgba(var(--neon-border), 0.4)} [data-upgrade="dark-credits"] .upgrade-button:active{background:linear-gradient(45deg, #3a3a3a, #4a4a4a);box-shadow:0 0 20px rgba(var(--neon-border), 0.6)} .dark-credits-conversion{margin-top:15px;padding-top:15px;border-top:1px solid var(--neon-border)} .dark-credits-conversion.hidden{display:none} .conversion-info{margin-bottom:12px;font-size:0.9em;color:var(--neon-primary)} .conversion-info p{margin:5px 0} .conversion-input{display:flex;flex-direction:column;gap:10px} .dark-credits-amount{background:var(--darker-bg);border:1px solid var(--neon-border);color:var(--neon-primary);padding:8px;border-radius:4px;text-align:center;font-size:0.9em;font-family:"Orbitron", "Montserrat", sans-serif} .dark-credits-amount:focus{outline:none;box-shadow:0 0 8px var(--neon-glow)} .convert-button{background:transparent;color:var(--neon-primary);border:2px solid var(--neon-border);padding:10px 16px;cursor:pointer;transition:all 0.3s ease;border-radius:4px;text-transform:uppercase;font-size:0.85em;font-weight:bold;letter-spacing:0.5px;position:relative;overflow:hidden;width:100%} .convert-button::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient( 90deg, transparent, rgba(var(--neon-primary), 0.2), transparent );transition:left 0.5s ease} .convert-button:hover{background:var(--neon-primary);color:var(--dark-bg);border-color:var(--neon-primary);transform:translateY(-1px)} .convert-button:hover::before{left:100%} .convert-button:disabled{pointer-events:none;box-shadow:none !important;opacity:0.6;cursor:not-allowed;filter:grayscale(1)} .conversion-cost{color:var(--neon-primary);font-size:1em;margin-top:6px;display:block;font-family:"Orbitron", "Montserrat", sans-serif} .shadow-transfer-form{margin-top:15px;padding-top:15px;border-top:1px solid var(--neon-border)} .shadow-transfer-form.hidden{display:none} .transfer-input{display:flex;flex-direction:column;gap:10px} .friend-identifier, .credits-to-send{background:var(--darker-bg);border:1px solid var(--neon-border);color:var(--neon-primary);padding:8px;border-radius:4px;text-align:center;font-size:0.9em;font-family:"Orbitron", "Montserrat", sans-serif;outline:none;transition:all 0.3s ease} .friend-identifier:focus, .credits-to-send:focus{outline:none;box-shadow:0 0 8px var(--neon-glow)} .friend-identifier::placeholder, .credits-to-send::placeholder{color:rgba(var(--neon-primary-rgb), 0.6)} .friend-identifier:disabled, .credits-to-send:disabled{background:rgba(0, 0, 0, 0.3);border-color:rgba(var(--neon-primary-rgb), 0.3);color:rgba(var(--neon-primary-rgb), 0.5);cursor:not-allowed} .transfer-button{background:transparent;color:var(--neon-primary);border:2px solid var(--neon-border);padding:10px 16px;cursor:pointer;transition:all 0.3s ease;border-radius:4px;text-transform:uppercase;font-size:0.85em;font-weight:bold;letter-spacing:0.5px;position:relative;overflow:hidden;width:100%} .transfer-button::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient( 90deg, transparent, rgba(var(--neon-primary), 0.2), transparent );transition:left 0.5s ease} .transfer-button:hover{background:var(--neon-primary);color:var(--dark-bg);border-color:var(--neon-primary);transform:translateY(-1px)} .transfer-button:hover::before{left:100%} .transfer-button:disabled{pointer-events:none;box-shadow:none !important;opacity:0.6;cursor:not-allowed;filter:grayscale(1)} .transfer-cost{color:var(--neon-primary);font-size:1em;margin-top:6px;display:block;font-family:"Orbitron", "Montserrat", sans-serif} [data-upgrade="shadow-transfer"] .shadow-transfer-description{transition:color 0.3s ease} [data-upgrade="shadow-transfer"] .shadow-transfer-description.prerequisite{color:rgba(var(--neon-primary-rgb), 0.7);font-style:italic} [data-upgrade="shadow-transfer"] .shadow-transfer-description.available{color:var(--neon-primary);font-style:normal} [data-upgrade="soul-harvest"] .soul-harvest-description.prerequisite{color:rgba(var(--neon-primary-rgb), 0.7);font-style:italic} [data-upgrade="soul-harvest"] .soul-harvest-description.available{color:var(--neon-primary);font-style:normal} [data-upgrade="soul-bind"] .soul-bind-description.prerequisite{color:rgba(var(--neon-primary-rgb), 0.7);font-style:italic} [data-upgrade="soul-bind"] .soul-bind-description.available{color:var(--neon-primary);font-style:normal} [data-upgrade="void-market"] .void-market-description.prerequisite{color:rgba(var(--neon-primary-rgb), 0.7);font-style:italic} [data-upgrade="void-market"] .void-market-description.available{color:var(--neon-primary);font-style:normal} .void-shop-overlay{position:fixed !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;width:100vw !important;height:100vh !important;margin:0 !important;background:linear-gradient( 145deg, rgba(0, 0, 0, 0.9), rgba(var(--neon-hover), 0.7) ) !important;border:none !important;border-radius:0 !important;box-shadow:none !important;padding:4rem 2rem 2rem 2rem !important;backdrop-filter:blur(15px) !important;transform:translateX(-100%) !important;opacity:1 !important;overflow-y:auto !important;z-index:9999 !important;transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;display:flex;flex-direction:column;align-items:center !important;justify-content:flex-start !important;min-width:auto !important;max-width:none !important} .void-shop-overlay.open{transform:translateX(0) !important;opacity:1 !important;pointer-events:auto !important} .void-shop-overlay.closing{transform:translateX(100%) !important;opacity:1 !important;pointer-events:none !important;transition:transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important} .void-shop-overlay.hidden{display:none !important} .void-shop-overlay::before{content:"✕";position:absolute;top:2rem;left:50%;transform:translateX(-50%);font-size:1.8rem;color:var(--neon-primary);cursor:pointer;z-index:10001;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border:2px solid var(--neon-primary);border-radius:50%;background:rgba(0, 0, 0, 0.8);box-shadow:0 0 20px var(--neon-glow);transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);font-weight:400;line-height:1;font-family:"Share Tech Mono", monospace;backdrop-filter:blur(10px)} .void-shop-overlay::before:hover{background:var(--neon-primary);color:#000;box-shadow:0 0 30px var(--neon-glow), 0 0 40px var(--neon-glow);transform:translateX(-50%) scale(1.1) rotate(90deg)} .void-shop-content{width:100%;max-width:1200px;margin-top:2rem} .void-shop-content h2{color:var(--neon-primary);font-size:2.5rem;text-align:center;margin-bottom:0.5rem;text-shadow:0 0 20px var(--neon-glow);font-family:"Share Tech Mono", monospace} .void-shop-subtitle{color:var(--neon-secondary);font-size:1.2rem;text-align:center;margin-bottom:3rem;opacity:0.8;font-style:italic} .void-shop-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:20px;width:100%} .void-shop-item{flex:1 1 250px;display:flex;flex-direction:column;justify-content:space-between;min-height:280px;background:linear-gradient( 145deg, rgba(0, 0, 0, 0.8), rgba(var(--neon-hover), 0.6) );border:1px solid var(--neon-border);padding:18px;border-radius:8px;text-align:center;transition:all 0.3s ease;position:relative;overflow:hidden;backdrop-filter:blur(5px)} .void-shop-item::before{content:"╭─";position:absolute;top:8px;left:8px;font-size:0.8em;opacity:0.4;color:var(--neon-primary)} .void-shop-item::after{content:"─╯";position:absolute;bottom:8px;right:8px;font-size:0.8em;opacity:0.4;color:var(--neon-primary)} .void-shop-item:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(var(--glow-color), 0.15), inset 0 1px 0 rgba(var(--glow-color), 0.1);border-color:rgba(var(--neon-border), 0.8)} .void-shop-item:hover::before, .void-shop-item:hover::after{opacity:0.8} .void-shop-item h3{margin-bottom:12px;margin-top:15px;color:var(--neon-primary);font-size:1.1em;text-transform:uppercase;letter-spacing:1px;position:relative;text-align:center} .void-item-description{margin-bottom:15px;font-size:0.85em;line-height:1.4;opacity:0.9;color:rgba(var(--neon-primary), 0.8);text-align:center} .void-item-cost{display:block;margin-bottom:12px;color:var(--neon-secondary);font-size:0.9em;font-weight:bold;text-align:center} .void-item-cost::before{content:"◊ ";color:var(--neon-primary)} .void-item-cooldown{margin-bottom:10px;font-size:0.9em;color:var(--neon-primary);opacity:0.8;text-align:center} .void-item-status{margin-bottom:10px;font-size:0.9em;color:var(--neon-primary);opacity:0.8;text-align:center;font-weight:bold} .void-item-button{background:transparent;color:var(--neon-primary);border:2px solid var(--neon-border);padding:10px 16px;cursor:pointer;transition:all 0.3s ease;border-radius:4px;text-transform:uppercase;font-size:0.85em;font-weight:bold;letter-spacing:0.5px;position:relative;overflow:hidden} .void-item-button::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient( 90deg, transparent, rgba(var(--neon-primary), 0.2), transparent );transition:left 0.5s ease} .void-item-button:hover{background:var(--neon-primary);color:var(--dark-bg);border-color:var(--neon-primary);transform:translateY(-1px)} .void-item-button:hover::before{left:100%} .void-item-button:disabled, .void-item-button[disabled]{pointer-events:none;box-shadow:none !important;opacity:0.6;cursor:not-allowed;filter:grayscale(1)} @media (max-width:768px){.void-shop-grid{grid-template-columns:1fr;gap:1.5rem} .void-shop-content h2{font-size:2rem} .void-shop-subtitle{font-size:1rem} .void-shop-item{padding:1.2rem} } .challenge-terminal-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0, 0, 0, 0.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:50000;animation:challenge-terminal-fadeIn 0.3s ease} .challenge-terminal-modal.show{display:flex;justify-content:center;align-items:center} .challenge-terminal-container{width:70%;height:70%;background:var(--dark-bg);border-radius:8px;box-shadow:0 0 20px var(--glow-color), 0 0 40px rgba(0, 255, 0, 0.1), inset 0 0 20px rgba(0, 0, 0, 0.8);display:flex;flex-direction:column;overflow:hidden;animation:challenge-terminal-slideIn 0.3s ease;border:2px solid var(--neon-border);font-family:'Courier New', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace} .challenge-terminal-header{background:linear-gradient(135deg, var(--terminal-bg), var(--darker-bg));padding:8px 12px;display:flex;align-items:center;border-bottom:1px solid var(--neon-border);box-shadow:0 2px 4px rgba(0, 0, 0, 0.5)} .challenge-terminal-buttons{display:flex;gap:6px;margin-right:12px} .challenge-terminal-btn{width:10px;height:10px;border-radius:50%;border:none;cursor:pointer;transition:all 0.2s ease} .challenge-terminal-close-btn{background:var(--neon-danger);box-shadow:0 0 4px var(--error-glow)} .challenge-terminal-close-btn:hover{background:#ff3366;box-shadow:0 0 8px var(--error-glow)} .challenge-terminal-minimize-btn{background:var(--neon-warning);box-shadow:0 0 4px var(--warning-glow)} .challenge-terminal-maximize-btn{background:var(--neon-primary);box-shadow:0 0 4px var(--glow-color)} .challenge-terminal-title{color:var(--neon-text);font-size:12px;font-weight:normal;text-shadow:0 0 5px var(--neon-text);font-family:'Courier New', monospace} .challenge-terminal-body{flex:1;background:var(--darker-bg);padding:12px;font-family:'Courier New', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;font-size:14px;color:var(--neon-text);overflow-y:auto;position:relative;line-height:1.4} .challenge-terminal-output{white-space:pre-wrap;word-wrap:break-word;margin-bottom:8px;color:var(--neon-text)} .challenge-terminal-input-line{display:flex;align-items:center;margin-top:8px;font-family:'Courier New', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace} .challenge-terminal-prompt{color:var(--neon-text);margin-right:8px;text-shadow:0 0 3px var(--neon-text);font-weight:bold} .challenge-terminal-input{background:transparent;border:none;color:var(--neon-text);font-family:'Courier New', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;font-size:14px;flex:1;outline:none;caret-color:var(--neon-text)} .challenge-terminal-cursor{display:inline-block;width:8px;height:16px;background:var(--neon-text);animation:challenge-terminal-blink 1s infinite;box-shadow:0 0 5px var(--neon-text)} .challenge-terminal-body::-webkit-scrollbar{width:12px} .challenge-terminal-body::-webkit-scrollbar-track{background:var(--terminal-bg);border-radius:0} .challenge-terminal-body::-webkit-scrollbar-thumb{background:var(--neon-primary);border-radius:0;border:2px solid var(--terminal-bg)} .challenge-terminal-body::-webkit-scrollbar-thumb:hover{background:var(--neon-secondary)} @keyframes challenge-terminal-fadeIn{from{opacity:0} to{opacity:1} } @keyframes challenge-terminal-slideIn{from{opacity:0;transform:scale(0.95) translateY(-10px)} to{opacity:1;transform:scale(1) translateY(0)} } @keyframes challenge-terminal-blink{0%, 50%{opacity:1} 51%, 100%{opacity:0} } @keyframes challenge-terminal-glitch{0%{transform:translate(0);text-shadow:0 0 5px var(--neon-danger)} 20%{transform:translate(-2px, 2px);text-shadow:2px 0 5px var(--neon-danger), -2px 0 5px var(--neon-info)} 40%{transform:translate(-2px, -2px);text-shadow:2px 0 5px var(--neon-danger), -2px 0 5px var(--neon-info)} 60%{transform:translate(2px, 2px);text-shadow:-2px 0 5px var(--neon-danger), 2px 0 5px var(--neon-info)} 80%{transform:translate(2px, -2px);text-shadow:-2px 0 5px var(--neon-danger), 2px 0 5px var(--neon-info)} 100%{transform:translate(0);text-shadow:0 0 5px var(--neon-danger)} } .challenge-terminal-line{margin-bottom:2px;line-height:1.4;font-family:'Courier New', 'Monaco', 'Menlo', 'Ubuntu Mono', monospace} .challenge-terminal-line.command{color:var(--neon-primary);font-weight:bold} .challenge-terminal-line.output{color:#ffffff} .challenge-terminal-line.error{color:var(--neon-danger);animation:challenge-terminal-glitch 0.3s ease-in-out;text-shadow:0 0 8px var(--neon-danger);font-weight:bold} .challenge-terminal-line.success{color:var(--neon-primary);font-weight:bold} .challenge-terminal-line.info{color:var(--neon-info)} .challenge-terminal-line.warning{color:var(--neon-warning);font-weight:bold} .challenge-terminal-line.hint{color:var(--neon-secondary);font-style:italic} .challenge-terminal-line.phase{color:var(--neon-primary);font-weight:bold;text-shadow:0 0 10px var(--neon-primary);border:1px solid var(--neon-primary);padding:4px 8px;margin:4px 0;background:var(--upgrade-hover)} .challenge-terminal-line.spacer{height:8px} @media (max-width:768px){.challenge-terminal-container{width:95%;height:80%} .challenge-terminal-body{padding:8px;font-size:12px} .challenge-terminal-title{font-size:10px} } .challenge-terminal-modal.show .challenge-terminal-container{animation:challenge-terminal-bootup 0.5s ease-out} @keyframes challenge-terminal-bootup{0%{opacity:0;transform:scale(0.8) translateY(-20px);filter:brightness(0.5)} 50%{opacity:0.8;transform:scale(1.02) translateY(-5px);filter:brightness(1.2)} 100%{opacity:1;transform:scale(1) translateY(0);filter:brightness(1)} } .challenge-terminal-modal.closing .challenge-terminal-container{animation:challenge-terminal-shutdown 0.5s ease-in forwards} @keyframes challenge-terminal-shutdown{0%{opacity:1;transform:scale(1) translateY(0);filter:brightness(1)} 50%{opacity:0.8;transform:scale(1.02) translateY(-5px);filter:brightness(1.2)} 100%{opacity:0;transform:scale(0.8) translateY(-20px);filter:brightness(0.5)} } .challenge-terminal-line.glitch-active{animation:challenge-terminal-glitch 0.3s ease-in-out;position:relative} .challenge-terminal-line.glitch-active::before{content:attr(data-text);position:absolute;left:0;top:0;width:100%;height:100%;background:var(--darker-bg);color:var(--neon-danger);animation:challenge-terminal-glitch-text 0.1s ease-in-out infinite;z-index:1} @keyframes challenge-terminal-glitch-text{0%, 100%{clip-path:inset(0 0 0 0)} 25%{clip-path:inset(0 0 50% 0)} 50%{clip-path:inset(50% 0 0 0)} 75%{clip-path:inset(0 50% 0 0)} } @keyframes hack-particles{0%{transform:translate(0, 0) scale(1);opacity:1} 100%{transform:translate(var(--random-x, 0), var(--random-y, 0)) scale(0);opacity:0} } @keyframes particle-burst{0%{transform:scale(0) rotate(0deg);opacity:1} 50%{transform:scale(1.5) rotate(180deg);opacity:0.8} 100%{transform:scale(0) rotate(360deg);opacity:0} } #hack-button{position:relative;overflow:visible} .particle{position:absolute;width:4px;height:4px;background:var(--neon-primary);border-radius:50%;pointer-events:none;z-index:1000;box-shadow:0 0 6px var(--neon-primary)} .particle.burst{animation:particle-burst 0.8s ease-out forwards} .particle.stream{animation:hack-particles 1.2s ease-out forwards} #hack-button .click-effect{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:100%;height:100%;border-radius:8px;border:2px solid var(--neon-primary);opacity:0;animation:click-ripple 0.6s ease-out;pointer-events:none} @keyframes click-ripple{0%{transform:translate(-50%, -50%) scale(0.8);opacity:1} 100%{transform:translate(-50%, -50%) scale(1.8);opacity:0} } .volume-container{margin-top:5px;margin-left:20px;padding:8px 0} .volume-container label{display:block;font-size:0.85em;color:var(--neon-secondary);margin-bottom:6px} #notification-volume-slider{width:100%;height:4px;background:rgba(255, 255, 255, 0.2);border:1px solid rgba(var(--neon-primary-rgb), 0.3);border:1px solid var(--neon-primary, #00ff99);border-radius:2px;outline:none;appearance:none;cursor:pointer;transition:all 0.3s ease} #notification-volume-slider::-webkit-slider-thumb{appearance:none;width:16px;height:16px;background:var(--neon-primary);border-radius:50%;cursor:pointer;box-shadow:0 0 8px var(--neon-glow);transition:all 0.3s ease} #notification-volume-slider::-moz-range-thumb{width:16px;height:16px;background:var(--neon-primary);border-radius:50%;cursor:pointer;border:none;box-shadow:0 0 8px var(--neon-glow);transition:all 0.3s ease} #notification-volume-slider::-webkit-slider-thumb:hover{box-shadow:0 0 15px var(--neon-glow), 0 0 25px var(--neon-glow)} #notification-volume-slider::-moz-range-thumb:hover{box-shadow:0 0 15px var(--neon-glow), 0 0 25px var(--neon-glow)} #notification-volume-slider:hover{background:rgba(255, 255, 255, 0.3);border-color:rgba(var(--neon-primary-rgb), 0.5);border-color:var(--neon-primary, #00ff99)} #notification-volume-display{color:var(--neon-primary);font-weight:bold} .unified-panel{position:fixed;background:rgba(17, 17, 17, 0.98);border:3px solid var(--neon-primary);border-radius:12px;backdrop-filter:blur(10px);z-index:1000;transform:translateX(-100%);transition:transform 0.3s ease-in-out, opacity 0.3s ease-in-out;opacity:0;overflow:hidden;margin-top:24px} @media (min-width:769px){.unified-panel{top:0;left:20px;width:400px;height:calc(100vh - 40px);border:3px solid var(--neon-primary);margin-top:24px} } @media (max-width:768px){.unified-panel{top:0;left:0;width:100vw;height:100vh;border-radius:0;border:none;margin-top:0} } .panel-nav{display:flex;background:rgba(0, 0, 0, 0.8);border-bottom:2px solid var(--neon-primary);padding:0;position:relative} .nav-tab{flex:1;background:transparent;border:none;color:rgba(255, 255, 255, 0.6);padding:15px 8px;cursor:pointer;transition:all 0.3s ease;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:14px;border-bottom:3px solid transparent} .nav-tab:hover{color:var(--neon-primary);background:rgba(var(--neon-secondary-rgb), 0.1)} .nav-tab.active{color:var(--neon-primary);border-bottom-color:var(--neon-primary);background:rgba(var(--neon-secondary-rgb), 0.15);box-shadow:0 0 15px rgba(var(--neon-glow), 0.3)} .nav-tab i{font-size:18px} .nav-tab span{font-size:12px;font-weight:500} .mobile-close-btn{position:absolute;right:20px;top:85px;background:transparent;border:2px solid var(--neon-primary);color:var(--neon-primary);width:40px;height:40px;border-radius:50%;cursor:pointer;transition:all 0.3s ease;display:flex;align-items:center;justify-content:center;z-index:10} .mobile-close-btn:hover{background:var(--neon-primary);color:#000;box-shadow:0 0 15px rgba(var(--neon-glow), 0.5);transform:scale(1.1)} .mobile-close-btn i{font-size:16px;transition:transform 0.3s ease} .mobile-close-btn:hover i{transform:rotate(90deg)} @media (min-width:769px){.mobile-close-btn{display:none !important} } .panel-content{height:100%;overflow:hidden;position:relative} @media (max-width:768px){.panel-content{height:calc(100% - 70px);overflow-y:auto} } .panel-section{position:absolute;top:0;left:0;width:100%;height:100%;padding:20px;overflow-y:auto;opacity:0;transform:translateX(30px);transition:all 0.3s ease;pointer-events:none} .panel-section.active{opacity:1;transform:translateX(0);pointer-events:all} @media (max-width:768px){.panel-section{padding:15px;height:auto;min-height:100%;position:relative} .panel-section:not(.active){display:none} } .section-header{margin-bottom:25px;padding-bottom:15px;border-bottom:2px solid var(--neon-primary)} .section-header h2{color:var(--neon-primary);font-size:24px;font-weight:700;margin:0;text-shadow:0 0 10px rgba(var(--neon-glow), 0.5)} .section-header i{margin-right:10px} .music-content{display:flex;flex-direction:column;gap:20px} .music-info{background:rgba(0, 0, 0, 0.5);padding:15px;border-radius:8px;border:1px solid var(--neon-primary);text-align:center} .music-info span{color:var(--neon-primary);font-weight:500} .progress-bar{position:relative;height:6px;background:rgba(255, 255, 255, 0.1);border-radius:3px;overflow:hidden} .progress{height:100%;background:linear-gradient(90deg, var(--neon-primary), #00ffcc);width:0%;transition:width 0.1s ease} .progress-bar input[type="range"]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer} .music-controls{display:flex;justify-content:center;align-items:center;gap:15px} .music-btn{background:transparent;border:2px solid var(--neon-primary);color:var(--neon-primary);padding:12px;border-radius:50%;cursor:pointer;transition:all 0.3s ease;width:50px;height:50px;display:flex;align-items:center;justify-content:center} .music-btn:hover{background:var(--neon-primary);color:#000;box-shadow:0 0 15px rgba(var(--neon-glow), 0.5)} .music-btn i{font-size:16px} .volume-control{display:flex;align-items:center;gap:10px;padding:0 20px} .volume-control i{color:var(--neon-primary);font-size:18px} .volume-control input[type="range"]{flex:1;height:4px;background:rgba(255, 255, 255, 0.1);outline:none;border-radius:2px} .leaderboard-content{} .leaderboard-header{margin-bottom:20px;text-align:center;padding-bottom:15px;border-bottom:2px solid var(--neon-primary)} .leaderboard-header h3{color:var(--neon-primary);font-size:20px;margin:0 0 8px 0;text-shadow:0 0 10px rgba(var(--neon-glow), 0.5)} #leaderboard-update-time{color:rgba(255, 255, 255, 0.6);font-size:12px} .profile-content{} .profile-header{margin-bottom:25px;text-align:center;padding-bottom:15px;border-bottom:2px solid var(--neon-primary)} .profile-header h3{color:var(--neon-primary);font-size:20px;margin:0 0 8px 0;text-shadow:0 0 10px rgba(var(--neon-glow), 0.5)} #profile-username{color:rgba(255, 255, 255, 0.8);font-size:14px} .profile-section{margin-bottom:25px} .profile-section h4{color:var(--neon-primary);font-size:16px;margin:0 0 15px 0;text-transform:uppercase;letter-spacing:1px} .profile-stats-grid{display:grid;grid-template-columns:1fr;gap:16px} .profile-stat{width:100%;box-sizing:border-box} @media (min-width:480px){.profile-stats-grid{grid-template-columns:1fr 1fr} } .profile-stat{background:rgba(0, 0, 0, 0.3);padding:12px;border-radius:6px;border:1px solid rgba(var(--neon-glow), 0.3)} .stat-label{display:block;color:rgba(255, 255, 255, 0.7);font-size:9px;margin-bottom:4px} .stat-value{display:block;color:var(--neon-primary);font-size:10px;font-weight:600} @media (max-width:480px){.panel-section{padding:12px} .section-header h2{font-size:20px} .music-controls{gap:10px} .music-btn{width:45px;height:45px} .volume-control{padding:0 15px} } @keyframes slideInLeft{from{transform:translateX(-100%);opacity:0} to{transform:translateX(0);opacity:1} } @keyframes slideInUp{from{transform:translateY(-100%);opacity:0} to{transform:translateY(0);opacity:1} } .unified-panel.opening{animation:slideInLeft 0.3s ease-in-out forwards} @media (max-width:768px){.unified-panel.opening{animation:slideInUp 0.3s ease-in-out forwards} } @keyframes slideOutLeft{from{transform:translateX(0);opacity:1} to{transform:translateX(-100%);opacity:0} } @keyframes slideOutUp{from{transform:translateY(0);opacity:1} to{transform:translateY(-100%);opacity:0} } .unified-panel.closing{animation:slideOutLeft 0.3s ease-in-out forwards} @media (max-width:768px){.unified-panel.closing{animation:slideOutUp 0.3s ease-in-out forwards} } .music-control-btn{background:#111;color:var(--neon-primary);border:2px solid var(--neon-border);border-radius:6px;box-shadow:none;transition:border-color 0.2s, box-shadow 0.2s, color 0.2s;font-size:1.2em;padding:10px 16px;cursor:pointer;outline:none} .music-control-btn:hover, .music-control-btn:focus, .music-control-btn:active{background:#111;color:var(--neon-primary);border-color:var(--neon-border);box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border)} .music-control-btn:disabled{opacity:0.5;cursor:not-allowed;filter:grayscale(1)} #music-panel .neon-button:hover, #music-panel .neon-button:focus, #music-panel .neon-button:active{background:#111 !important;color:var(--neon-primary) !important;box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border) !important} .profile-content, #profile-content{overflow:visible !important;height:auto !important;max-height:none !important} .settings-content, #settings-content, .music-content, #music-content, .leaderboard-content, #leaderboard-content, .profile-content, #profile-content{overflow:visible !important;height:auto !important;max-height:none !important} .music-control-btn, .music-btn, #music-panel .neon-button{background:#111 !important;color:var(--neon-primary) !important;border:2px solid var(--neon-border) !important;box-shadow:none !important;transition:border-color 0.2s, box-shadow 0.2s, color 0.2s} .music-control-btn:hover, .music-control-btn:focus, .music-control-btn:active, .music-btn:hover, .music-btn:focus, .music-btn:active, #music-panel .neon-button:hover, #music-panel .neon-button:focus, #music-panel .neon-button:active{background:#111 !important;color:var(--neon-primary) !important;box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border) !important} #shuffle-btn.active{background:#111 !important;color:var(--neon-primary) !important;border:2px solid var(--neon-border) !important;border-width:4px !important;box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border) !important} .music-control-btn i, .music-btn i, #music-panel .neon-button i{color:var(--neon-primary) !important;fill:var(--neon-primary) !important} .music-control-btn:hover i, .music-control-btn:focus i, .music-control-btn:active i, .music-btn:hover i, .music-btn:focus i, .music-btn:active i, #music-panel .neon-button:hover i, #music-panel .neon-button:focus i, #music-panel .neon-button:active i, #shuffle-btn.active i{color:var(--neon-primary) !important;fill:var(--neon-primary) !important;filter:drop-shadow(0 0 8px var(--neon-border))} #progress-slider{width:100%;height:8px;background:rgba(var(--neon-secondary)0.15);border-radius:4px;outline:none;appearance:none;cursor:pointer;margin:0;padding:0;z-index:2} #progress-slider::-webkit-slider-thumb{appearance:none;width:16px;height:16px;border-radius:50%;background:var(--neon-primary);box-shadow:0 0 8px var(--neon-border);border:2px solid var(--neon-border);cursor:pointer;transition:box-shadow 0.2s} #progress-slider:focus::-webkit-slider-thumb, #progress-slider:hover::-webkit-slider-thumb{box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border)} #progress-slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--neon-primary);box-shadow:0 0 8px var(--neon-border);border:2px solid var(--neon-border);cursor:pointer;transition:box-shadow 0.2s} #progress-slider:focus::-moz-range-thumb, #progress-slider:hover::-moz-range-thumb{box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border)} #progress-slider::-ms-thumb{width:16px;height:16px;border-radius:50%;background:var(--neon-primary);box-shadow:0 0 8px var(--neon-border);border:2px solid var(--neon-border);cursor:pointer;transition:box-shadow 0.2s} #progress-slider:focus::-ms-thumb, #progress-slider:hover::-ms-thumb{box-shadow:0 0 16px var(--neon-border), 0 0 4px var(--neon-border)} #progress-slider::-webkit-slider-runnable-track{height:8px;background:rgba(var(--neon-secondary)0.15);border-radius:4px} #progress-slider::-ms-fill-lower{background:rgba(var(--neon-secondary)0.15)} #progress-slider::-ms-fill-upper{background:rgba(var(--neon-secondary)0.15)} #progress-slider:focus{outline:none;box-shadow:0 0 8px var(--neon-border)} .skeleton{display:inline-block;height:1em;background:linear-gradient(90deg, rgba(var(--neon-primary-rgb), 0.15) 25%, rgba(var(--neon-secondary-rgb), 0.25) 50%, rgba(var(--neon-primary-rgb), 0.15) 75%);background-size:200% 100%;border-radius:6px;animation:skeleton-shimmer 1.2s infinite linear} .skeleton-text{min-height:1em;line-height:1em;border-radius:6px} @keyframes skeleton-shimmer{0%{background-position:200% 0} 100%{background-position:-200% 0} }