:root{--bg-color: #000000;--text-color: #e0e0e0;--accent-red: #ff2200;--hal-core-yellow: #ffee55;--hal-glow-red: #e60000}*{box-sizing:border-box;margin:0;padding:0;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}html,body{width:100vw;height:100vh;height:100dvh;overflow:hidden;background-color:var(--bg-color);color:var(--text-color);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Helvetica,Arial,sans-serif;position:fixed}#app{width:100%;height:100%;position:relative;display:flex;justify-content:center;align-items:center;background-color:#000}#hal-stage{width:100%;height:100%;display:flex;justify-content:center;align-items:center;position:relative;overflow:hidden;touch-action:manipulation}#hal-container{position:relative;display:flex;justify-content:center;align-items:center;width:100vw;height:100vh;transform:translateY(-146.67px)}#hal-2026-assembly{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(89.65vw,55.5vh);height:min(89.65vw,55.5vh);display:flex;justify-content:center;align-items:center;pointer-events:none}.hal2026-layer{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;pointer-events:none;will-change:opacity;transform:translateZ(0)}#layer-everything-off{z-index:1;opacity:1;transition:opacity .35s ease-out}#layer-3-led-on{z-index:2;opacity:0;transition:opacity .15s ease-out}#layer-3-led-on.led-anim-chuckle,#layer-3-led-on.led-anim-laugh{animation:anim-led-chuckle .7s cubic-bezier(.25,1,.5,1) forwards}#layer-3-led-on.led-anim-wink{animation:anim-led-wink .4s ease-out forwards}#layer-3-led-on.led-anim-ponder,#layer-3-led-on.led-anim-breathe{animation:anim-led-breathe 1.8s ease-in-out forwards}#layer-3-led-on.led-anim-warm{animation:anim-led-warm 2.4s ease-in-out forwards}#layer-3-led-on.led-anim-alert{animation:anim-led-alert .5s ease-out forwards}#layer-3-led-on.led-anim-heartbeat{animation:anim-led-heartbeat .9s ease-out forwards}#layer-3-led-on.led-anim-listen-done{animation:anim-led-listen-done .4s ease-out forwards}#layer-3-led-on.led-anim-search{animation:anim-led-search 1.6s ease-in-out forwards}#layer-3-led-on.led-anim-api{animation:anim-led-api .55s ease-out forwards}#layer-3-led-on.led-anim-grace{transition:none!important;animation:anim-led-grace 20s cubic-bezier(.45,.05,.55,.95) forwards}@keyframes anim-led-grace{0%{opacity:0}15%{opacity:.3}30%{opacity:.2}45%{opacity:.3}60%{opacity:.2}75%{opacity:.3}90%{opacity:.2}to{opacity:0}}@keyframes anim-led-listen-done{0%{opacity:0}25%{opacity:1}45%{opacity:.15}70%{opacity:1}to{opacity:var(--persistent-led, 0)}}@keyframes anim-led-search{0%{opacity:.1}25%{opacity:.95}50%{opacity:.2}75%{opacity:.95}to{opacity:var(--persistent-led, 0)}}@keyframes anim-led-api{0%{opacity:0}15%{opacity:1}30%{opacity:.1}45%{opacity:1}60%{opacity:.1}75%{opacity:1}90%{opacity:.1}to{opacity:var(--persistent-led, 0)}}@keyframes anim-led-chuckle{0%{opacity:0}18%{opacity:1}32%{opacity:.15}50%{opacity:1}68%{opacity:.2}82%{opacity:.9}to{opacity:var(--persistent-led, 0)}}@keyframes anim-led-wink{0%{opacity:0}30%{opacity:1}70%{opacity:1}to{opacity:var(--persistent-led, 0)}}@keyframes anim-led-breathe{0%{opacity:.1}45%{opacity:1}to{opacity:var(--persistent-led, 0)}}@keyframes anim-led-warm{0%{opacity:0}15%{opacity:.5}85%{opacity:.5}to{opacity:var(--persistent-led, 0)}}@keyframes anim-led-alert{0%{opacity:0}20%{opacity:1}35%{opacity:0}55%{opacity:1}70%{opacity:0}to{opacity:var(--persistent-led, 0)}}@keyframes anim-led-heartbeat{0%{opacity:.1}22%{opacity:1}38%{opacity:.2}55%{opacity:.85}75%{opacity:.1}to{opacity:var(--persistent-led, 0)}}#layer-center-on{z-index:3;opacity:1;transition:opacity .08s ease-out}#layer-center-on.eye-waking{animation:anim-eye-wake-ignite 2.5s ease-out forwards!important}@keyframes anim-eye-wake-ignite{0%{opacity:1;filter:drop-shadow(0 0 20px rgba(255,30,0,1)) brightness(1.3)}20%{opacity:.85;filter:drop-shadow(0 0 10px rgba(255,20,0,.7)) brightness(1.1)}60%{opacity:.95;filter:drop-shadow(0 0 8px rgba(255,10,0,.6))}to{opacity:1;filter:drop-shadow(0 0 4px rgba(255,0,0,.4))}}body.state-thinking #layer-center-on:not(.eye-waking){animation:anim-eye-thinking 1.8s ease-in-out infinite}@keyframes anim-eye-thinking{0%,to{opacity:.82;filter:drop-shadow(0 0 4px rgba(255,0,0,.35))}50%{opacity:1;filter:drop-shadow(0 0 12px rgba(255,30,0,.8)) brightness(1.15)}}#layer-ring-on{z-index:4;opacity:0;transition:opacity .08s ease-out}body.mode-enclosure #hal-container,body.mode-enclosure #hal-2026-assembly,body.mode-enclosure #hal-stage{border:none!important;outline:none!important;box-shadow:none}#init-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;background-color:#000000d6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:99999;display:flex;justify-content:center;align-items:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity .4s ease-out}#init-overlay.fade-out{opacity:0;pointer-events:none}.init-modal-card{position:relative;transform:translateY(-100px);display:flex;flex-direction:column;align-items:center;text-align:center;background:#0e0e12eb;border:1px solid rgba(255,34,0,.4);box-shadow:0 0 35px #ff220047,inset 0 0 20px #ff220014;border-radius:20px;padding:34px 26px;max-width:86vw;width:330px;pointer-events:auto}.init-scanner-ring{position:relative;width:60px;height:60px;margin-bottom:20px;display:flex;justify-content:center;align-items:center}.init-scanner-pulse{position:absolute;width:100%;height:100%;border-radius:50%;border:2px solid rgba(255,34,0,.75);box-shadow:0 0 16px #ff220080;animation:anim-init-pulse 2.2s cubic-bezier(.2,.8,.2,1) infinite}.init-scanner-core{width:24px;height:24px;border-radius:50%;background:radial-gradient(circle,#fe5,#f20 65%,#900);box-shadow:0 0 16px #ff2200f2}@keyframes anim-init-pulse{0%{transform:scale(.85);opacity:.9}50%{transform:scale(1.35);opacity:.2}to{transform:scale(.85);opacity:.9}}.init-text-container{transform:rotate(180deg);display:flex;flex-direction:column;align-items:center;text-align:center}.init-title{font-size:13px;font-weight:600;letter-spacing:.22em;color:#f31;text-transform:uppercase;margin-bottom:12px}.init-action{font-size:17px;font-weight:700;letter-spacing:.06em;color:#fff;text-transform:uppercase;margin-bottom:12px;animation:anim-init-glow 2s ease-in-out infinite alternate}@keyframes anim-init-glow{0%{text-shadow:0 0 6px rgba(255,255,255,.3);opacity:.92}to{text-shadow:0 0 14px rgba(255,68,34,.8),0 0 22px rgba(255,34,0,.5);opacity:1}}.init-desc{font-size:13px;font-weight:400;color:#a0a0ab;line-height:1.48;max-width:270px}body.sleep-mode{background-color:#000}body.sleep-mode #layer-everything-off{opacity:.5!important;transition:opacity .5s ease-out 3s!important}body.sleep-mode #layer-center-on{opacity:0!important;transition:opacity 3s cubic-bezier(.4,0,.2,1)!important}body.sleep-mode #layer-ring-on{opacity:0!important;transition:opacity .15s ease-out!important}body.sleep-mode #layer-3-led-on:not([class*=led-anim-]){opacity:0!important;transition:opacity .15s ease-out!important}
