/* Transparent artwork on one continuous application background. */
#entry-animation{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:24px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:auto;color:var(--ink)}
#entry-animation::backdrop{background:var(--paper);backdrop-filter:none}
#entry-animation[open]{display:grid;place-items:center}
#entry-animation .entry-scene{width:min(640px,100%);margin:auto;position:relative;text-align:center;background:transparent}
#entry-animation .entry-stage{width:100%;height:auto;display:block;overflow:visible;background:transparent}
#entry-animation .entry-word,#entry-animation .entry-circle,#entry-animation .entry-actor,#entry-animation .entry-shadow{animation:none;opacity:1;transform:none}
#entry-animation .entry-word{fill:none;letter-spacing:normal}
#entry-animation .entry-circle{fill:none;stroke:#f4c430;stroke-width:10;color:#f4c430}
#entry-animation .entry-rays{stroke-width:4;stroke-linecap:round;opacity:0}
#entry-animation .entry-tagline{font-size:clamp(18px,4vw,25px);font-weight:650;line-height:1.4;margin:0 0 22px;color:var(--deep);letter-spacing:-.3px}
#entry-animation #skip-entry{border:0;border-radius:4px;padding:10px 16px;min-height:44px;background:transparent;box-shadow:none;color:var(--muted);text-decoration:underline;text-underline-offset:4px;font-size:13px}
#entry-animation #skip-entry:hover{color:var(--deep)}
#entry-animation #skip-entry:focus-visible{outline:2px solid var(--forest);outline-offset:2px}
#entry-animation .entry-arm-left,#entry-animation .entry-arm-right,#entry-animation .entry-leg-left,#entry-animation .entry-leg-right,#entry-animation .entry-head{transform-box:fill-box;transform-origin:center;animation:none}
#entry-animation .entry-arm-left{transform-origin:right bottom}
#entry-animation .entry-arm-right{transform-origin:left top}
#entry-animation .entry-leg-left,#entry-animation .entry-leg-right{transform-origin:center top}
#entry-animation .entry-logo{opacity:0}
#entry-animation .is-running .entry-logo{animation:entry-logo-appear .7s ease-out both}
#entry-animation .entry-credit{stroke:none;letter-spacing:.2px}
.brand-mark{display:block;width:126px;height:auto;max-width:100%}
.login-card .login-brand{display:block;line-height:1;font-size:inherit}
.login-card .login-brand .brand-mark{width:220px;height:auto}
.login-card .login-identity{gap:3px;align-items:center;margin-bottom:18px}
.login-card .login-mascot{margin:0;width:92px;height:108px}
.login-welcome{font-weight:600;color:var(--deep)!important}
@keyframes entry-logo-appear{from{opacity:0}to{opacity:1}}
@media(max-width:420px){#entry-animation{padding:18px}.login-card .login-brand .brand-mark{width:185px}.login-card .login-mascot{width:72px;height:87px}.login-card .login-identity{min-height:87px}}
@media(max-width:340px){.login-card .login-brand .brand-mark{width:155px}.login-card .login-mascot{width:57px;height:70px}}
@media(max-height:420px){#entry-animation .entry-scene{width:min(480px,100%)}#entry-animation .entry-tagline{margin-bottom:8px;font-size:18px}}
@media(prefers-reduced-motion:reduce){#entry-animation .entry-scene *,#entry-animation,#entry-animation::backdrop{animation:none!important}#entry-animation .entry-logo{opacity:1}}
body.calm-mode #entry-animation .entry-scene *,body.calm-mode #entry-animation,body.calm-mode #entry-animation::backdrop{animation:none!important}body.calm-mode #entry-animation .entry-logo{opacity:1}
