@charset "UTF-8";.fi{display:inline-block;width:1.33333em;line-height:1em;background-size:contain;background-position:50%;background-repeat:no-repeat}.grey-flag-placeholder{display:inline-block;width:1.33333em;height:1em;background:linear-gradient(135deg,#666,#888,#666);border:1px solid #444;opacity:.5;filter:grayscale(1)}:root{--color-purple: #7652cd;--color-dark-purple: #403c4c;--color-magenta: #a71349;--color-red: #ff0000;--color-black: #000000;--color-dark-bg: #302c3c;--color-gold: #a78511;--color-cyan: #3cb4f0;--color-white: #ffffff;--color-gray: #404040;--color-green: #00ff00;--bg-primary: var(--color-dark-bg);--bg-secondary: var(--color-dark-purple);--text-primary: var(--color-white);--text-secondary: var(--color-cyan);--accent-primary: var(--color-purple);--accent-secondary: var(--color-green);--accent-warning: var(--color-gold);--accent-danger: var(--color-magenta)}*{margin:0;padding:0;box-sizing:border-box}html,body{margin:0;padding:0;width:100%;height:100%;font-family:Courier New,monospace;font-size:16px;line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary);overflow:hidden}app-root{display:block;position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}body,html{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}input,textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text;cursor:text}img{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none;pointer-events:none}.game-area img,.puzzle-area img,.interactive img{pointer-events:auto}.game-interface-hub,.brain-map-container,.pentode-container,.memory-blocks-container,.puzzle-tiles-container,.logic-tower-container,.neural-maze-container{-webkit-touch-callout:none}.tech-text{font-family:Courier New,monospace;text-transform:uppercase;letter-spacing:2px}.glow-text{text-shadow:0 0 5px var(--accent-secondary),0 0 10px var(--accent-secondary)}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.btn{display:inline-block;padding:.5rem 1rem;border:2px solid var(--accent-secondary);border-radius:0;background-color:var(--bg-secondary);color:var(--accent-secondary);font-family:Courier New,monospace;font-size:1rem;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all .3s;text-decoration:none}.btn:hover{background-color:var(--accent-secondary);color:var(--bg-primary);box-shadow:0 0 10px var(--accent-secondary)}.btn:active{transform:scale(.98)}.btn:disabled{border-color:var(--color-gray);color:var(--color-gray);cursor:not-allowed}.btn-secondary{border-color:var(--color-cyan);color:var(--color-cyan)}.btn-secondary:hover{background-color:var(--color-cyan);color:var(--bg-primary);box-shadow:0 0 10px var(--color-cyan)}.btn-success{border-color:var(--accent-secondary);color:var(--accent-secondary)}.btn-success:hover{background-color:var(--accent-secondary);box-shadow:0 0 10px var(--accent-secondary)}.btn-danger{border-color:var(--accent-danger);color:var(--accent-danger)}.btn-danger:hover{background-color:var(--accent-danger);color:var(--text-primary);box-shadow:0 0 10px var(--accent-danger)}.card{background-color:var(--bg-secondary);border:2px solid var(--accent-primary);border-radius:0;padding:1.5rem;margin-bottom:1.5rem;box-shadow:inset 0 0 20px #00000080}.card .card-title{font-size:1.5rem;margin-bottom:1rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:2px}.card .card-content{margin-bottom:1rem}.card .card-footer{border-top:1px solid var(--accent-primary);padding-top:1rem;display:flex;justify-content:flex-end;gap:.5rem}.indicator-light{width:12px;height:12px;border-radius:50%;background-color:var(--color-gray);border:2px solid var(--bg-secondary)}.indicator-light.active{background-color:var(--accent-secondary);box-shadow:0 0 8px var(--accent-secondary)}.indicator-light.warning{background-color:var(--accent-warning);box-shadow:0 0 8px var(--accent-warning)}.indicator-light.danger{background-color:var(--color-red);box-shadow:0 0 8px var(--color-red)}.status-bar{background-color:var(--color-black);color:var(--accent-secondary);padding:.5rem 1rem;font-family:Courier New,monospace;text-transform:uppercase;letter-spacing:2px;border:1px solid var(--accent-primary)}.monitor-frame{background-color:var(--color-black);border:4px solid var(--color-gray);border-radius:4px;box-shadow:inset 0 0 30px #000c,0 0 10px #00000080;padding:1rem}.fade-in{animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.slide-in{animation:slideIn .5s ease-out}@keyframes slideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px var(--accent-secondary)}50%{box-shadow:0 0 15px var(--accent-secondary),0 0 25px var(--accent-secondary)}}.pulse-glow{animation:pulse-glow 2s infinite}.scanlines:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(transparent,transparent 2px,rgba(0,0,0,.1) 2px,rgba(0,0,0,.1) 4px);pointer-events:none}.dev-tools{position:fixed;bottom:10px;right:10px;z-index:9999;opacity:.3;transition:opacity .3s}.dev-tools:hover{opacity:1}.dev-tools button{font-size:.625rem;padding:.25rem .5rem;background-color:#000c;border:1px solid var(--color-gray);color:var(--color-gray)}.dev-tools button:hover{border-color:var(--accent-warning);color:var(--accent-warning)}:focus-visible{outline:3px solid #ffd700;outline-offset:2px;border-radius:4px}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;overflow:hidden}.confetti-container .dreamland-bg-animation{position:absolute;top:0;left:0;width:100%;height:100%;background:url(/assets/revamped/dreamland_animation.webp) center center no-repeat;background-size:cover;z-index:0;opacity:0;animation:dreamland-bg-fade-in .5s ease-out forwards}.confetti-container .dreamland-bg-final{position:absolute;top:0;left:0;width:100%;height:100%;background:url(/assets/revamped/dreamland.webp) center center no-repeat;background-size:cover;z-index:0;opacity:0;animation:dreamland-bg-transition 1s ease-in-out 3s forwards}.confetti-container .screen-flicker{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffff1a;animation:flicker .15s steps(1) infinite;z-index:1}.confetti-container .screen-static{position:absolute;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,.03) 2px,rgba(255,255,255,.03) 4px),repeating-linear-gradient(90deg,transparent,transparent 2px,rgba(255,255,255,.03) 2px,rgba(255,255,255,.03) 4px);animation:static-noise .2s steps(10) infinite;opacity:.5;z-index:1}.confetti-container .scan-glitch{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,transparent 0%,rgba(0,255,0,.05) 10%,transparent 20%,rgba(255,0,255,.05) 40%,transparent 60%,rgba(0,255,255,.05) 80%,transparent 100%);animation:scan-lines .3s linear infinite;z-index:1}.confetti-container .confetti{position:absolute;width:10px;height:10px;opacity:1;animation:confetti-explode linear forwards;z-index:5}.confetti-container .completion-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;animation:message-fade-in .5s ease-out;z-index:10000}.confetti-container .completion-message .message-title{font-family:Courier New,monospace;font-size:clamp(1.5rem,4vw,2.5rem);font-weight:700;color:gold;text-shadow:0 0 10px #ffd700,0 0 20px #ffd700,0 0 30px #ffd700,2px 2px 4px rgba(0,0,0,.8);margin-bottom:1rem;animation:title-pulse 1s ease-in-out infinite;letter-spacing:3px}.confetti-container .completion-message .message-subtitle{font-family:Courier New,monospace;font-size:clamp(4rem,12vw,8rem);font-weight:700;color:#6a5acd;text-shadow:0 0 15px rgba(106,90,205,.5),0 0 30px rgba(72,61,139,.4),0 0 45px rgba(25,25,112,.3),2px 2px 4px rgba(0,0,0,.8);letter-spacing:8px;animation:dreamland-breathe 3s ease-in-out infinite;position:relative;opacity:.95}.confetti-container .completion-message .dream-land-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:150%;height:150%;background:radial-gradient(circle,rgba(72,61,139,.15) 0%,rgba(106,90,205,.1) 30%,transparent 70%);animation:gentle-glow 4s ease-in-out infinite;z-index:-1}@keyframes confetti-explode{0%{opacity:1;transform:translate(0) rotate(0) scale(1)}to{opacity:0;transform:translate(calc(cos(var(--angle)) * var(--distance)),calc(sin(var(--angle)) * var(--distance))) rotate(720deg) scale(.5)}}@keyframes message-fade-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes title-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes flicker{0%,to{opacity:1}50%{opacity:.7}}@keyframes static-noise{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:.5;transform:translateY(2px)}}@keyframes scan-lines{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes dreamland-breathe{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}}@keyframes gentle-glow{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.2}50%{transform:translate(-50%,-50%) scale(1.05);opacity:.3}}@keyframes dream-universe{0%,to{filter:brightness(1.1) saturate(1.4) hue-rotate(0deg)}33%{filter:brightness(1.2) saturate(1.6) hue-rotate(10deg)}66%{filter:brightness(1.15) saturate(1.5) hue-rotate(-10deg)}}@keyframes star-twinkle{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}@keyframes nebula-drift{0%,to{transform:translate(0) rotate(0) scale(1);filter:blur(8px) brightness(1)}33%{transform:translate(5px,-3px) rotate(5deg) scale(1.1);filter:blur(10px) brightness(1.2)}66%{transform:translate(-3px,5px) rotate(-5deg) scale(.95);filter:blur(9px) brightness(1.1)}}@keyframes cosmic-rotation{0%{transform:rotate(0) hue-rotate(0deg)}to{transform:rotate(360deg) hue-rotate(360deg)}}@keyframes cosmic-star-twinkle{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:.9;transform:scale(1.1)}}@keyframes cosmic-planet-float{0%,to{transform:translate(-50%,-50%) translateY(0)}50%{transform:translate(-50%,-50%) translateY(-3px)}}@keyframes dreamland-flicker{0%,90%,to{opacity:1}93%{opacity:.7}}@keyframes dreamland-bg-fade-in{0%{opacity:0}to{opacity:.85}}@keyframes dreamland-bg-transition{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.admin-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .3s ease-out}.admin-popup-overlay .admin-popup-content{width:100%;height:100%;max-width:1600px;max-height:95vh;background:linear-gradient(135deg,#1a0a2e,#16213e,#0f3460);border:3px solid #7652cd;border-radius:8px;box-shadow:0 20px 60px #000000e6,0 0 40px #7652cd66;overflow:hidden;animation:scaleIn .3s ease-out;display:flex;flex-direction:column}.game-interface-hub.dream-state{background-color:#050510}.game-interface-hub.dream-state .top-bar{background:linear-gradient(90deg,#0a0a1a,#12123a,#0a0a1a);border-bottom-color:#6a5acd99;box-shadow:0 2px 15px #6a5acd4d}.game-interface-hub.dream-state .top-bar .label{color:#6a5acd}.game-interface-hub.dream-state .top-bar .value{color:gold;text-shadow:0 0 10px rgba(255,215,0,.5)}.game-interface-hub.dream-state .bottom-bar{background:linear-gradient(90deg,#0a0a1a,#12123a,#0a0a1a);border-top-color:#6a5acd99;box-shadow:0 -2px 15px #6a5acd4d}.game-interface-hub.dream-state .bottom-bar .puzzle-name{color:gold}.game-interface-hub.dream-state .monitor-display{border-color:#6a5acd80;box-shadow:inset 0 0 50px #000c,0 0 30px #6a5acd33}.game-interface-hub.dream-state .monitor-display .display-title{border-bottom-color:#6a5acd66}.game-interface-hub.dream-state .monitor-display .display-title .current-area{color:#6a5acd}@media(max-width:768px){.control-panel{width:80px}.left-panel .portrait-display .portrait-frame{width:60px;height:60px}.top-bar .label{font-size:.75rem}.right-panel .action-buttons .control-btn .btn-label{display:none}.confetti-container .completion-message .message-title{font-size:1.5rem}.confetti-container .completion-message .message-subtitle{font-size:3rem}.admin-popup-overlay{padding:0}.admin-popup-overlay .admin-popup-content{max-width:100%;max-height:100%;border-radius:0}}.instructions-card{background:#1a1033;color:#fff;border:2px solid rgba(118,82,205,.6);border-radius:14px;padding:1.5rem 1.75rem;max-width:560px;width:calc(100% - 2rem);max-height:80vh;overflow:auto;display:flex;flex-direction:column;gap:1rem}.instructions-card h2{margin:0;font-size:1.3rem;color:#d4b8ff}.instructions-card .instructions-body{margin:0;white-space:pre-wrap;line-height:1.5;font-size:1rem}.instructions-card .instructions-close{align-self:flex-end;border:none;border-radius:10px;padding:.6rem 1.2rem;background:#7652cd;color:#fff;font-size:1rem;cursor:pointer;min-height:44px}.closing-card .closing-score{margin:0;font-size:1.1rem;color:gold;font-weight:700}.closing-card .closing-facts{margin:0;font-size:.95rem;opacity:.9}.closing-card .closing-facts a{color:#d4b8ff;margin-left:.4rem;text-decoration:underline}.load-failure-banner{position:fixed;left:50%;bottom:calc(1rem + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:2000;max-width:min(92vw,560px);display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;background:#3c1414f2;color:#ffd6d6;border:1px solid rgba(255,120,120,.6);border-radius:12px;padding:.6rem .9rem;font-size:.9rem;box-shadow:0 6px 24px #0006}.load-failure-banner button{background:#ffffff24;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:8px;padding:.35rem .7rem;cursor:pointer;min-height:36px}.load-failure-banner .dismiss{background:transparent;border:none;opacity:.8}
