.splash-screen{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:max(28px,calc(env(safe-area-inset-top,0px) + 12px)) 16px max(24px,env(safe-area-inset-bottom,0px)) 16px;overflow:hidden;background-color:#080a0f;color:#ffffff;font-family:var(--font-racing,-apple-system,sans-serif);perspective:1000px;transition:opacity 0.55s cubic-bezier(0.4,0,0.2,1),transform 0.6s cubic-bezier(0.4,0,0.2,1),visibility 0.55s;}:fullscreen .splash-screen,:-webkit-full-screen .splash-screen,.is-fullscreen .splash-screen,.is-standalone .splash-screen,@media (display-mode:standalone),(display-mode:fullscreen){.splash-screen{padding-top:max(38px,calc(env(safe-area-inset-top,0px) + 16px));}}.splash-screen.dismissed{opacity:0;transform:scale(1.14) translateY(-15px);pointer-events:none;visibility:hidden;}.splash-backdrop{position:absolute;inset:-15px;z-index:1;background-image:url('../img/splash-bg.jpg');background-size:cover;background-position:center bottom;filter:brightness(1.05) contrast(1.15);animation:bgSubtleDrift 16s ease-in-out infinite alternate;pointer-events:none;}@keyframes bgSubtleDrift{0%{transform:scale(1.0) translateY(0);}100%{transform:scale(1.04) translateY(-8px);}}.splash-particles{position:absolute;inset:0;z-index:2;pointer-events:none;background-image:radial-gradient(2px 2px at 20% 30%,rgba(255,180,50,0.8),transparent),radial-gradient(2px 2px at 75% 45%,rgba(255,80,20,0.9),transparent),radial-gradient(3px 3px at 45% 70%,rgba(255,210,80,0.7),transparent),radial-gradient(2px 2px at 85% 25%,rgba(255,255,255,0.8),transparent),radial-gradient(2px 2px at 30% 85%,rgba(255,100,30,0.6),transparent);background-size:100% 100%;animation:particlesFloat 4s ease-in-out infinite alternate;}@keyframes particlesFloat{0%{opacity:0.4;transform:translateY(0);}100%{opacity:0.9;transform:translateY(-12px);}}.f1-starting-gantry{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;gap:6px;background:rgba(14,18,26,0.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,0.12);border-radius:14px;padding:10px 22px;box-shadow:0 10px 30px rgba(0,0,0,0.6),inset 0 1px 1px rgba(255,255,255,0.2);max-width:90vw;animation:gantryDrop 0.6s cubic-bezier(0.16,1,0.3,1) forwards;}@keyframes gantryDrop{0%{opacity:0;transform:translateY(-30px);}100%{opacity:1;transform:translateY(0);}}.gantry-header{font-size:0.65rem;font-weight:800;letter-spacing:2px;color:#94a3b8;text-transform:uppercase;}.gantry-lights-box{display:flex;align-items:center;gap:12px;background:#080a0f;padding:8px 14px;border-radius:10px;border:1px solid #1f2937;box-shadow:inset 0 3px 8px rgba(0,0,0,0.8);}.gantry-light-pod{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#11141c;border:2px solid #262e3d;box-shadow:inset 0 2px 4px rgba(0,0,0,0.9);}.light-bulb{width:18px;height:18px;border-radius:50%;background:#200808;border:1px solid rgba(0,0,0,0.6);transition:all 0.12s ease-out;}.light-bulb.red{background:#ff1e00;box-shadow:0 0 14px #ff1e00,0 0 28px #ff5500,inset 0 0 6px #ffffff;}.light-bulb.green{background:#00e676;box-shadow:0 0 16px #00e676,0 0 32px #00ff88,inset 0 0 6px #ffffff;}.gantry-status{font-size:0.72rem;font-weight:700;letter-spacing:1px;color:#e2e8f0;text-transform:uppercase;transition:color 0.2s ease;}.gantry-status.ready{color:#ffb800;}.gantry-status.go{color:#00e676;text-shadow:0 0 10px rgba(0,230,118,0.6);}.splash-logo-stage{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;width:100%;max-width:680px;padding:10px 0;user-select:none;}.logo-glow-halo{position:absolute;width:320px;height:200px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(255,90,0,0.45) 0%,rgba(225,6,0,0.15) 55%,transparent 75%);filter:blur(40px);pointer-events:none;animation:haloPulse 3.2s ease-in-out infinite alternate;}@keyframes haloPulse{0%{transform:scale(0.9);opacity:0.65;}100%{transform:scale(1.15);opacity:0.95;}}.splash-logo-wrapper{position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer;transform-style:preserve-3d;transition:transform 0.15s ease-out;animation:logoSlamIn 0.85s cubic-bezier(0.16,1,0.3,1) forwards;}@keyframes logoSlamIn{0%{opacity:0;transform:scale(2.2) translateY(-40px);filter:blur(14px) brightness(1.8);}60%{opacity:1;transform:scale(0.96) translateY(4px);filter:blur(0px) brightness(1.0);}80%{transform:scale(1.03) translateY(-2px);}100%{opacity:1;transform:scale(1.0) translateY(0);filter:blur(0px) brightness(1.0);}}.splash-logo-img{width:100%;max-width:min(88vw,540px);max-height:42vh;object-fit:contain;filter:drop-shadow(0 14px 26px rgba(0,0,0,0.9)) drop-shadow(0 0 35px rgba(255,80,0,0.35));transition:filter 0.25s ease;pointer-events:none;}.splash-logo-wrapper:hover .splash-logo-img{filter:drop-shadow(0 18px 32px rgba(0,0,0,0.95)) drop-shadow(0 0 50px rgba(255,120,0,0.65)) brightness(1.08);}.splash-logo-wrapper.rumble{animation:logoV10Rumble 0.12s linear infinite alternate;}@keyframes logoV10Rumble{0%{transform:scale(1.0) translate(0,0);}50%{transform:scale(1.003) translate(0.8px,-0.6px);}100%{transform:scale(0.998) translate(-0.6px,0.7px);}}.logo-sheen-sweep{position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient( 105deg,transparent 0%,rgba(255,255,255,0.05) 35%,rgba(255,255,255,0.4) 50%,rgba(255,255,255,0.05) 65%,transparent 100% );transform:skewX(-20deg);pointer-events:none;animation:sheenLoop 4s 1.2s infinite ease-in-out;}@keyframes sheenLoop{0%{left:-120%;}35%{left:160%;}100%{left:160%;}}.logo-subtitle-banner{margin-top:12px;background:rgba(10,14,20,0.85);border:1px solid rgba(255,184,0,0.4);padding:6px 16px;border-radius:9999px;box-shadow:0 4px 15px rgba(0,0,0,0.5);text-align:center;animation:bannerFade 0.8s 0.6s ease-out forwards;opacity:0;}@keyframes bannerFade{0%{opacity:0;transform:translateY(12px);}100%{opacity:1;transform:translateY(0);}}.logo-subtitle-banner span{font-size:0.7rem;font-weight:800;letter-spacing:1.5px;color:#ffb800;text-transform:uppercase;}.splash-actions-panel{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:380px;animation:actionsSlideUp 0.8s 0.4s cubic-bezier(0.16,1,0.3,1) forwards;opacity:0;}@keyframes actionsSlideUp{0%{opacity:0;transform:translateY(24px);}100%{opacity:1;transform:translateY(0);}}.splash-driver-pill{display:flex;align-items:center;gap:8px;background:rgba(19,23,31,0.85);border:1px solid #273142;padding:6px 14px;border-radius:9999px;font-size:0.75rem;font-weight:600;color:#94a3b8;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}.btn-start-engine{position:relative;display:flex;align-items:center;justify-content:center;width:100%;max-width:310px;padding:15px 28px;border-radius:9999px;border:none;cursor:pointer;background:linear-gradient(135deg,#e10600 0%,#b30000 60%,#ff2a1c 100%);box-shadow:0 8px 24px rgba(225,6,0,0.5),inset 0 1px 2px rgba(255,255,255,0.35);transition:transform 0.15s ease,box-shadow 0.15s ease;overflow:visible;}.btn-start-engine:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 12px 32px rgba(225,6,0,0.7),0 0 25px rgba(255,80,0,0.5),inset 0 1px 2px rgba(255,255,255,0.5);}.btn-start-engine:active{transform:translateY(1px) scale(0.98);box-shadow:0 4px 14px rgba(225,6,0,0.6);}.engine-btn-ring{position:absolute;inset:-6px;border-radius:9999px;border:2px solid rgba(225,6,0,0.7);pointer-events:none;animation:enginePulse 2s cubic-bezier(0.25,1,0.5,1) infinite;}@keyframes enginePulse{0%{transform:scale(0.96);opacity:0.9;}100%{transform:scale(1.18);opacity:0;}}.engine-btn-core{display:flex;align-items:center;gap:10px;color:#ffffff;font-weight:900;font-size:0.95rem;letter-spacing:1.2px;text-transform:uppercase;}.engine-btn-icon{font-size:1.25rem;filter:drop-shadow(0 0 6px #ffea00);}.splash-tap-hint{font-size:0.7rem;color:#94a3b8;letter-spacing:0.5px;text-align:center;}.splash-build-tag{font-family:var(--font-mono);font-size:0.65rem;font-weight:600;letter-spacing:1px;color:rgba(255,255,255,0.35);text-transform:uppercase;margin-top:-2px;text-align:center;}.splash-install-banner{display:flex;align-items:center;gap:12px;background:rgba(10,17,30,0.94);border:1px solid rgba(52,211,153,0.65);border-radius:var(--radius-md);padding:9px 14px;max-width:340px;width:100%;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 24px rgba(0,0,0,0.75),0 0 16px rgba(16,185,129,0.25);animation:bannerSlideUp 0.4s ease-out;margin:2px 0 4px 0;z-index:15;}@keyframes bannerSlideUp{0%{transform:translateY(12px);opacity:0;}100%{transform:translateY(0);opacity:1;}}.splash-install-icon{font-size:1.5rem;line-height:1;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.6));}.splash-install-text{display:flex;flex-direction:column;text-align:left;flex:1;gap:2px;}.splash-install-text strong{font-size:0.85rem;font-weight:800;color:#4ade80;letter-spacing:0.3px;text-shadow:0 1px 3px rgba(0,0,0,0.9);}.splash-install-text small{font-size:0.72rem;font-weight:500;color:#f1f5f9;line-height:1.3;text-shadow:0 1px 3px rgba(0,0,0,0.9);}.btn-splash-install{background:linear-gradient(135deg,#10b981 0%,#059669 100%);color:#ffffff;border:1px solid rgba(255,255,255,0.35);border-radius:var(--radius-sm);padding:8px 14px;font-size:0.82rem;font-weight:900;letter-spacing:0.5px;cursor:pointer;white-space:nowrap;box-shadow:0 3px 10px rgba(16,185,129,0.5);transition:transform 0.15s ease,filter 0.15s ease;}.btn-splash-install:active{transform:scale(0.94);filter:brightness(1.15);}@media (orientation:landscape) and (max-height:540px){.splash-screen{padding:8px 16px 12px;}.f1-starting-gantry{padding:4px 14px;gap:4px;}.gantry-lights-box{padding:4px 10px;gap:8px;}.gantry-light-pod{width:20px;height:20px;}.light-bulb{width:12px;height:12px;}.splash-logo-stage{padding:0;}.splash-logo-img{max-height:44vh;max-width:440px;}.logo-subtitle-banner{display:none;}.splash-actions-panel{gap:6px;}.btn-start-engine{padding:10px 20px;max-width:270px;}.engine-btn-core{font-size:0.82rem;}.splash-tap-hint{display:none;}}