html:has(#intro-stage),body:has(#intro-stage){min-height:100%}body:has(#intro-stage){margin:0}body.intro-playing{overflow:hidden}body.intro-playing #root{visibility:hidden;opacity:0;pointer-events:none}body.intro-ended #root{position:relative;z-index:10}#intro-stage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;overflow:hidden;background:#030811}#intro-stage.intro-finished{pointer-events:none}#intro-stage canvas{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%}#intro-chrome{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;color:#effaff;font:11px ui-monospace,SFMono-Regular,Menlo,monospace;-webkit-user-select:none;user-select:none;pointer-events:none}#intro-chrome .intro-edition{position:absolute;top:max(22px,env(safe-area-inset-top));left:max(24px,env(safe-area-inset-left));display:flex;align-items:center;gap:7px;color:#effaff;font:800 11px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.15em;text-shadow:0 1px 12px #000;pointer-events:auto}#intro-chrome .intro-edition select{width:59px;min-height:34px;padding:0 2px;border:0;border-bottom:1px solid #8addff60;border-radius:0;color:#8de6ff;background:#02050d44;font:inherit;letter-spacing:.1em;cursor:pointer}#intro-chrome .intro-edition option{color:#e8faff;background:#09101d}#intro-chrome .intro-player{position:absolute;bottom:0;left:0;right:0;padding:24px max(24px,env(safe-area-inset-right)) max(13px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));background:linear-gradient(transparent,#01040dbb);pointer-events:auto}#intro-chrome .intro-timeline{display:flex;align-items:center;gap:16px;height:22px}#intro-chrome .intro-time{flex:none;width:82px;font:10px ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;color:#cdd8df;text-align:right}#intro-chrome input[type=range]{--progress: 0%;flex:1;-moz-appearance:none;appearance:none;-webkit-appearance:none;min-width:0;width:100%;height:3px;min-height:0;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:linear-gradient(to right,#87e4ff var(--progress),#cad8eb40 var(--progress));cursor:pointer}#intro-chrome input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:10px;height:10px;border-radius:50%;background:#fff;border:0;box-shadow:0 0 12px #7be7ff70}#intro-chrome input[type=range]::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#fff;border:0}#intro-chrome .intro-transport{display:flex;align-items:center;gap:7px}#intro-chrome .intro-transport button{display:grid;place-items:center;flex:none;width:36px;min-height:36px;padding:7px;border:0;border-radius:50%;background:transparent;color:#eef7ff;cursor:pointer}#intro-chrome .intro-transport button:hover{background:#c0e7ff20}#intro-chrome .intro-transport button[aria-pressed=true]{color:#8de6ff}#intro-chrome .intro-transport button[aria-busy=true]{opacity:.5}#intro-chrome .intro-transport svg{width:22px;height:22px}#intro-chrome :is(button,select,input):focus-visible{outline:2px solid #9be8ff;outline-offset:4px}#intro-chrome .intro-bytes{margin-left:auto;font-size:9px;letter-spacing:.045em;color:#b1becd;white-space:nowrap}#intro-chrome .intro-error{margin:0 0 10px;color:#ffd2a8;font:12px system-ui,sans-serif}.intro-load-error{position:relative;z-index:30;min-height:100vh;display:grid;place-content:center;gap:10px;color:#fff;background:#071525;font:16px system-ui,sans-serif}.intro-load-error button{padding:10px 15px;border:1px solid #9be4fa;background:#12384d;color:#fff;cursor:pointer}body.intro-ended .login-card{animation:intro-materialize 1.2s cubic-bezier(.16,1,.3,1) both}@keyframes intro-materialize{0%{opacity:0;transform:perspective(900px) translateZ(-600px) rotate(-14deg) scale(.08);filter:blur(22px)}48%{opacity:1;filter:blur(2px)}to{opacity:1;transform:perspective(900px) translateZ(0) rotate(0) scale(1);filter:blur(0)}}@media(max-width:640px){#intro-chrome .intro-edition{left:17px;top:max(13px,env(safe-area-inset-top));font-size:10px}#intro-chrome .intro-player{padding-right:14px;padding-left:14px}#intro-chrome .intro-transport{gap:3px}#intro-chrome .intro-transport button{width:34px}#intro-chrome .intro-bytes{font-size:8px;letter-spacing:0}}@media(max-width:350px){#intro-chrome .intro-transport{gap:0}#intro-chrome .intro-transport button{width:30px;padding:4px}}@media(prefers-reduced-motion:reduce){body.intro-ended .login-card{animation:none}}
