/* Client app loading screen (28 Oct 2026). Its own file: the site's security policy blocks inline <style>. */
#boot{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:var(--b-bg,#fff);color:var(--b-ink,#111);font:500 14px/1.4 "Inter","Helvetica Neue",Arial,sans-serif;padding:env(safe-area-inset-top,0px) max(24px,env(safe-area-inset-right,0px)) env(safe-area-inset-bottom,0px) max(24px,env(safe-area-inset-left,0px));transition:opacity .35s ease,visibility .35s}
#boot.out{opacity:0;visibility:hidden}
#boot .b-in{display:grid;justify-items:center;gap:18px;width:min(260px,70vw);transform:translateY(-4vh)}
#boot .b-mark{width:min(170px,44vw);height:auto;overflow:visible;fill:currentColor}
#boot .b-mark path{transform-box:fill-box;transform-origin:center}
#boot .b-k{animation:bIn .5s cubic-bezier(.2,.8,.2,1) both}
#boot .b-arm{animation:bIn .5s .12s cubic-bezier(.2,.8,.2,1) both}
#boot .b-leg{animation:bIn .5s .22s cubic-bezier(.2,.8,.2,1) both}
#boot .b-head{animation:bPop .45s .36s cubic-bezier(.3,1.6,.5,1) both}
#boot .b-s1{animation:bRun 1.1s .5s cubic-bezier(.4,0,.2,1) infinite}
#boot .b-s2{animation:bRun 1.1s .62s cubic-bezier(.4,0,.2,1) infinite}
@keyframes bIn{from{opacity:0;transform:translate(-18%,10%) skewX(-8deg)}to{opacity:1;transform:none}}
@keyframes bPop{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}
@keyframes bRun{0%{opacity:0;transform:translateX(35%)}30%{opacity:1}75%{opacity:1;transform:translateX(-25%)}100%{opacity:0;transform:translateX(-45%)}}
#boot .b-logo{max-width:min(200px,56vw);max-height:90px;object-fit:contain;animation:bPop .5s cubic-bezier(.3,1.4,.5,1) both}
#boot .b-name{font:400 44px/1 "Bebas Neue",Impact,sans-serif;letter-spacing:.02em;text-align:center}
#boot .b-bar{width:100%;height:4px;border-radius:4px;background:var(--b-line,#ebe8e2);overflow:hidden}
#boot .b-bar i{display:block;height:100%;width:8%;background:var(--b-acc,#c9a84c);border-radius:4px;transition:width .6s cubic-bezier(.2,.8,.2,1)}
#boot .b-st{min-height:2.8em;text-align:center;color:var(--b-soft,#5f5b54)}
#boot .b-brand{display:grid;justify-items:center;gap:16px}
#boot .b-word{width:min(230px,62vw);height:auto;animation:bFade .5s .55s ease both}
@keyframes bFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
#boot .b-tag{position:absolute;bottom:calc(28px + env(safe-area-inset-bottom,0px));left:0;right:0;text-align:center;font:600 10.5px/1 "Inter",Arial,sans-serif;letter-spacing:.24em;color:var(--b-faint,#a29d94)}
#boot .b-btn{font:600 15px "Inter",Arial,sans-serif;min-height:44px;padding:0 22px;border-radius:12px;border:0;background:var(--b-ink,#111);color:var(--b-bg,#fff);cursor:pointer}
@media (prefers-reduced-motion:reduce){#boot .b-mark path,#boot .b-logo,#boot .b-word{animation:none!important}#boot .b-bar i{transition:none}}
