/* Original Riven model and animations, pre-rendered to a 149 KB loop. No extra game engine. */
#boot{background:#0b1c23;padding:28px 20px;overflow:auto}
#boot::before{content:'';position:absolute;inset:20px;border:1px solid #b5964f1c;pointer-events:none;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}
#boot .boot-brand{display:flex;align-items:center;justify-content:center;gap:20px}
#boot .boot-brand img{display:block;width:88px;height:auto;filter:drop-shadow(0 2px 4px #0006)}
#boot .boot-brand h1{margin:0;color:#f3e8cd;font:700 clamp(30px,4vw,46px)/1 Beaufort,LocalSerif,serif;letter-spacing:2px;text-shadow:0 2px 2px #000}
#boot .boot-brand h1 span{font:inherit;letter-spacing:inherit;color:#d9b56a}
#boot .boot-duel{width:min(640px,94vw);margin:12px 0 26px;position:relative}
#boot .boot-animation{position:relative;width:100%;aspect-ratio:16/9;mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent),linear-gradient(transparent,#000 10%,#000 86%,transparent);mask-composite:intersect}
#boot .boot-animation video,#boot .boot-poster{display:block;width:100%;height:100%;object-fit:contain}
#boot .boot-animation video{position:absolute;inset:0;opacity:0;transition:opacity .25s ease}
#boot .boot-animation.playing video{opacity:1}
#boot .boot-duel-caption{display:flex;align-items:center;justify-content:center;gap:15px;margin-top:3px;color:#99b7bd;font:700 10px/1.2 Spiegel,sans-serif;letter-spacing:3px}
#boot .boot-duel-caption i{height:1px;width:38px;background:linear-gradient(90deg,transparent,#a58b51)}
#boot .boot-duel-caption i:last-child{transform:rotate(180deg)}
#boot .boot-welcome{font:500 clamp(20px,3vw,26px)/1.35 LocalSerif,serif!important;letter-spacing:.2px;color:#f1dfbb!important;margin:0 0 12px!important}
#boot #bootText{font:400 14px/1.4 Spiegel,sans-serif;letter-spacing:.3px;color:#9db5bd;margin:0 0 18px}
#boot .loading-track{width:min(320px,76vw);height:3px;background:#203743;border-radius:3px;margin:0 0 11px;overflow:hidden}
#bootProgress{height:100%;background:linear-gradient(90deg,#947139,#edcf8a,#92e5df);box-shadow:0 0 12px #d5c37666}
#boot #bootDetail{font:400 11px/1.4 Spiegel,sans-serif;color:#78939f;letter-spacing:.2px;min-height:16px}
#boot #retryBoot{margin-top:14px;cursor:pointer}
#boot #retryBoot:hover,#boot #retryBoot:focus-visible{border-color:#e3c781;color:#fff0c6;outline:2px solid #65c9d0;outline-offset:3px}
@media(max-height:740px){#boot .boot-duel{width:min(520px,88vw);margin:8px 0 18px}#boot .boot-brand img{width:70px}#boot .boot-brand h1{font-size:34px}}
@media(max-height:620px){#boot .boot-duel{width:min(400px,75vw);margin:4px 0 12px}#boot .boot-brand img{width:60px}#boot .boot-brand h1{font-size:30px}}
@media(max-width:480px){#boot .boot-brand{gap:12px}#boot .boot-brand img{width:66px}#boot .boot-brand h1{font-size:27px;letter-spacing:1px}#boot .boot-duel{margin:20px 0}#boot .boot-duel-caption{letter-spacing:2px}}
@media(prefers-reduced-motion:reduce){#boot .boot-animation video{display:none}#boot.preparing #bootProgress{width:45%!important;transform:none;animation:none!important}}
