.boot-shell{position:fixed;inset:0;z-index:100;background:#263e35;display:grid;place-items:center}
.boot-shell>.wedding-loading{position:relative;width:min(100vw,56.25svh);height:min(100svh,177.7778vw)}
.loading-layer{position:absolute;inset:0;z-index:9}
.loading-layer[hidden]{display:none}
.wedding-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff2d6;color:#17272d;text-align:center;font-family:"Microsoft YaHei","PingFang SC",sans-serif;padding:24px;box-sizing:border-box}
.wedding-loading::before,.wedding-loading::after{content:"";position:absolute;inset:16px;border:1px solid #b6803b;pointer-events:none;border-radius:16px}
.wedding-loading::after{inset:20px;border-color:#d7b57b;border-radius:12px}
.loading-picture{position:relative;width:224px;height:130px;overflow:hidden}
.loading-car{position:absolute;left:16px;bottom:14px;width:192px;height:108px;background:url('./assets/loading-v1/wedding-car.webp') 0 0/768px 108px no-repeat;image-rendering:pixelated;animation:loading-drive .7s steps(4,end) infinite}
.loading-road{position:absolute;bottom:11px;left:8px;right:8px;height:3px;background:#b6803b}
.wedding-loading h2{font-size:20px;line-height:1.5;margin:12px 0 6px;font-weight:700}
.wedding-loading p{max-width:260px;font-size:14px;line-height:1.7;margin:0;color:#68553e}
.loading-invite{position:relative;z-index:1;margin-top:32px;padding:12px 16px;color:#99432e;font-size:14px;text-underline-offset:5px;min-height:44px;box-sizing:border-box}
@keyframes loading-drive{to{background-position-x:-768px}}
@media(prefers-reduced-motion:reduce){.loading-car{animation:none}}
html[data-app-hidden="true"] .loading-car{animation-play-state:paused}
