/* LOADER-RACE-MVP01. Independently displayed before main scene. */
#pergy-loading-racer{position:fixed;inset:0;z-index:900;box-sizing:border-box;background:radial-gradient(ellipse at 52% 18%,#163747 0%,#071620 65%,#050d16 100%);color:#ebf5fa;font-family:system-ui,Arial,sans-serif;display:flex;align-items:center;justify-content:center;overflow-y:auto;overscroll-behavior:contain;touch-action:manipulation}
#pergy-loading-racer *{box-sizing:border-box}
#pergy-loading-racer .lr-shell{width:min(1080px,calc(100% - 26px));max-height:100dvh;display:flex;flex-direction:column;gap:clamp(6px,1.3vh,13px);padding:clamp(8px,2vh,22px) 0;align-self:center}
#pergy-loading-racer .lr-head{display:flex;justify-content:space-between;align-items:flex-end;gap:10px}
#pergy-loading-racer .lr-kicker{font-size:10px;letter-spacing:.19em;font-weight:800;color:#8bbed1}
#pergy-loading-racer h1{font:italic 900 clamp(27px,5vw,56px)/1.05 Arial,system-ui,sans-serif;letter-spacing:-.035em;margin:4px 0 0}
#pergy-loading-racer h1 em{color:#86d5e8;font-style:inherit}
#pergy-loading-racer .lr-world-badge{color:#a8cad6;font-size:12px;letter-spacing:.065em;text-align:right;font-weight:700}
#pergy-loading-racer .lr-world-badge span{color:#668795}
#pergy-loading-racer .lr-stage{position:relative;background:#102a36;overflow:hidden;border:1px solid #4d788a;box-shadow:0 15px 40px #0008;aspect-ratio:16/9;max-height:min(53dvh,590px);min-height:120px}
#pergy-loading-racer .lr-canvas{display:block;width:100%;height:100%;object-fit:cover}
#pergy-loading-racer .lr-hud{position:absolute;left:2%;right:2%;top:2%;display:flex;justify-content:space-between;gap:8px;color:#e5f7fb;text-shadow:0 2px 5px #000;letter-spacing:.05em;font:900 clamp(10px,1.6vw,17px) Arial,sans-serif;pointer-events:none}
#pergy-loading-racer .lr-instructions{position:absolute;bottom:4%;left:2%;transform:none;padding:7px 12px;color:#e4eef1;background:#071a2499;font:700 clamp(9px,1.15vw,12px) system-ui;text-align:center;white-space:nowrap;letter-spacing:.06em;pointer-events:none}
#pergy-loading-racer .lr-load-bottom{border:1px solid #3e6577;background:#0c202bcc;padding:clamp(10px,2vh,16px);display:flex;flex-direction:column;gap:9px}
#pergy-loading-racer .lr-progress-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;color:#c7e1ea;font-size:clamp(10px,1.2vw,13px);font-weight:800;letter-spacing:.06em}
#pergy-loading-racer .lr-progress-heading strong{font-size:clamp(15px,2vw,22px);color:#b6e8f5;white-space:nowrap;font-variant-numeric:tabular-nums}
#pergy-loading-racer .lr-progress-track{height:12px;background:#1a3846;border:1px solid #4a7180;border-radius:10px;overflow:hidden}
#pergy-loading-racer .lr-progress-fill{width:0;height:100%;border-radius:10px;background:linear-gradient(90deg,#4d8297,#97d8e7);transition:width .18s ease}
#pergy-loading-racer .lr-detail{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#95b6c3;line-height:1.35}
#pergy-loading-racer .lr-detail>span:first-child{display:flex;gap:7px;align-items:center;min-width:0}
#pergy-loading-racer .lr-heartbeat{flex:none;width:7px;height:7px;border-radius:100%;background:#84d1e2;box-shadow:0 0 0 4px #84d1e225;animation:lr-pulse 1.3s ease-in-out infinite}
@keyframes lr-pulse{50%{opacity:.3;transform:scale(.6)}}
#pergy-loading-racer .lr-bottom-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:45px}
#pergy-loading-racer .lr-ready-label{font-size:clamp(11px,1.3vw,13px);color:#a6bfcb;line-height:1.3}
#pergy-loading-racer .lr-enter{border:1px solid #b3e8f3;box-shadow:0 2px 15px #50bedd48;background:linear-gradient(90deg,#2b637b,#1b4358);color:#fff;padding:12px clamp(10px,2vw,24px);min-height:47px;font:900 clamp(11px,1.5vw,16px)/1.2 system-ui,sans-serif;letter-spacing:.04em;cursor:pointer;text-align:center}
#pergy-loading-racer .lr-enter[hidden]{display:none!important}
#pergy-loading-racer .lr-enter:hover,#pergy-loading-racer .lr-enter:focus-visible{background:#367f96;outline:2px solid #c4f2fc;outline-offset:2px}
#pergy-loading-racer.lr-world-ready .lr-progress-fill{background:linear-gradient(90deg,#54acaa,#93e7ba)}
#pergy-loading-racer .lr-touch{display:none;justify-content:center;gap:12px;flex-wrap:nowrap}
#pergy-loading-racer .lr-touch button{width:24%;max-width:140px;min-height:44px;border:1px solid #85b6c8;background:#153849c9;color:#e7f7fd;font-size:17px;font-weight:900;touch-action:none;user-select:none;cursor:pointer}
#pergy-loading-racer .lr-touch button.pressed{background:#468ea7}
#pergy-loading-racer .lr-credits{font-size:9px;letter-spacing:.07em;text-align:right;color:#66828e}
@media(pointer:coarse){#pergy-loading-racer .lr-touch{display:flex}#pergy-loading-racer .lr-instructions{display:none}}
@media(max-width:650px){#pergy-loading-racer .lr-head{align-items:flex-start}#pergy-loading-racer .lr-world-badge{font-size:9px;max-width:35%}#pergy-loading-racer .lr-hud{font-size:10px}#pergy-loading-racer .lr-bottom-actions{flex-direction:column;align-items:stretch}#pergy-loading-racer .lr-enter{width:100%}#pergy-loading-racer .lr-detail{font-size:10px}}
@media(max-height:600px) and (orientation:landscape){#pergy-loading-racer .lr-shell{gap:5px;padding:5px 0}#pergy-loading-racer h1{font-size:24px}#pergy-loading-racer .lr-kicker,#pergy-loading-racer .lr-credits{display:none}#pergy-loading-racer .lr-stage{max-height:43dvh}#pergy-loading-racer .lr-load-bottom{padding:5px 10px;gap:4px}#pergy-loading-racer .lr-touch button{min-height:31px;font-size:13px}#pergy-loading-racer .lr-enter{min-height:35px;padding:7px}#pergy-loading-racer .lr-bottom-actions{min-height:27px}}
@media(max-aspect-ratio:5/6){#pergy-loading-racer .lr-shell{width:calc(100% - 18px)}#pergy-loading-racer .lr-stage{aspect-ratio:4/3;max-height:42dvh}#pergy-loading-racer .lr-hud{flex-wrap:wrap;justify-content:space-between}#pergy-loading-racer .lr-head{align-items:center}}
@media(prefers-reduced-motion:reduce){#pergy-loading-racer .lr-heartbeat{animation:none}}
