/* PC game composition: one live world, floating navigation and bounded windows. */
/* One continuous camera entrance; game controls arrive gently after the scene. */
html[data-ac-world-entering=true] .ac-world-shell[data-ac-route=play] :is(.ac09-hud,.ac09-dock,.ac09-tools){animation:ac-campus-arrive 440ms 90ms cubic-bezier(.22,1,.36,1) both}
@keyframes ac-campus-arrive{from{opacity:0;translate:0 7px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){html[data-ac-world-entering=true] .ac-world-shell[data-ac-route=play] :is(.ac09-hud,.ac09-dock,.ac09-tools){animation:none}}
.ac09-part-image{width:100%;height:100px;object-fit:contain;filter:drop-shadow(0 4px 3px #35234428)}
.ac-world-shell :is(h1,h2)[tabindex="-1"]:focus{outline:none}
.ac-world-shell{padding:0;width:100%;height:100dvh;overflow:hidden;background:#18233e}
.ac-world-shell #app-root{width:100%;height:100%;max-width:none;margin:0;padding:0}
.ac-world-shell #navigation-host{position:fixed;left:18px;top:18px;z-index:35;width:max-content;max-width:calc(100vw - 36px);pointer-events:none}
.ac-world-shell .ac10-nav{gap:8px;flex-wrap:nowrap;padding:0;margin:0}
.ac-world-shell .ac10-brand{font-size:0;width:46px;min-height:48px;display:grid;place-items:center;padding:5px;background:var(--ac-paper);border:3px solid var(--ac-berry-shade);border-radius:12px;box-shadow:0 4px 0 var(--ac-frame-edge);pointer-events:auto}
.ac-world-shell .ac10-brand .ac-icon{width:28px;height:28px}
.ac-world-shell .ac10-nav__links{flex-wrap:nowrap;gap:7px}
.ac-world-shell .ac10-nav .ac-button{min-height:48px;padding:9px 12px;border:3px solid var(--ac-berry-shade);border-radius:10px;font-family:var(--ac-font-display);font-size:12px;gap:7px;box-shadow:0 4px 0 var(--ac-frame-edge),inset 0 2px 0 var(--ac-paper-raised);pointer-events:auto;transition:transform 160ms ease-out,background-color 160ms ease-out}
.ac-world-shell .ac10-nav .ac-button:hover{transform:translateY(-2px)}
.ac-world-shell .ac10-nav :is([data-route=profile],[data-route=settings]){font-size:0;width:46px;padding:8px}
.ac-world-shell .ac10-nav .ac-icon{width:20px;height:20px}
.ac-world-shell .ac10-menu{display:block;position:relative;pointer-events:auto}
.ac-world-shell .ac10-menu>summary{display:flex;min-height:48px;cursor:pointer;align-items:center;justify-content:center;font-family:var(--ac-font-display);font-size:12px;padding:9px 12px;background:var(--ac-paper);border:3px solid var(--ac-berry-shade);border-radius:10px;box-shadow:0 4px 0 var(--ac-frame-edge)}
.ac-world-shell .ac10-menu__links{display:none}
.ac-world-shell .ac10-menu[open] .ac10-menu__links{display:grid;grid-template-columns:1fr 1fr;position:absolute;top:58px;left:0;width:310px;gap:8px;padding:12px;background:var(--ac-space);border:3px solid var(--ac-berry);border-radius:12px;box-shadow:0 10px 25px #11152c80}
.ac-world-shell #screen-host{max-width:none;margin:0;padding:0;border:0;display:block}
.ac-world-shell:is([data-ac-route=home],[data-ac-route=play]) #screen-host{position:fixed;inset:0;z-index:20;pointer-events:none}
.ac-world-shell .ac10-home{display:block;min-height:0;padding:0;gap:0}
.ac-world-shell .ac10-home-frame{position:absolute;left:4vw;top:24vh;width:370px;pointer-events:auto}
.ac-world-shell .ac10-home__body{display:block;min-height:0}
.ac-world-shell .ac10-home__scene{display:none}
.ac-world-shell .ac10-home h1{font-size:30px}
.ac-world-shell .ac10-home h2{font-size:25px}
.ac-world-shell .ac10-home__welcome{font-size:15px}
.ac-world-shell .ac10-home__welcome .ac-button{font-family:var(--ac-font-display);font-size:21px;min-height:60px;width:100%}
.ac-world-shell .ac10-launch-frame{position:absolute;right:24px;bottom:24px;width:320px;pointer-events:auto}
.ac-world-shell .ac10-launch-frame .ac-frame__header{display:none}
.ac-world-shell .ac10-launch-frame .ac-frame__surface{padding:15px 20px}
.ac-world-shell .ac10-launch-frame .ac-frame__body{display:block}
.ac-world-shell .ac10-launch-frame .ac-button{min-height:40px;font-size:14px}
.ac-world-shell:not([data-ac-route=home]):not([data-ac-route=play]) #screen-host{position:fixed;z-index:25;left:50%;top:95px;bottom:28px;transform:translateX(-50%);width:min(960px,calc(100vw - 100px));overflow:auto;padding:0 6px 8px;scrollbar-width:thin;scrollbar-color:var(--ac-lilac) var(--ac-space)}
.ac-world-shell .ac-world-close{position:sticky;top:0;z-index:5;display:flex;margin:0 0 8px auto;min-height:44px;box-shadow:0 3px 8px #17172f66}
.ac-world-shell .ac10-session-status{position:fixed;z-index:90;left:50%;top:85px;transform:translateX(-50%);width:min(680px,90vw);background:var(--ac-paper);color:var(--ac-ink);display:flex;align-items:center;gap:16px;box-shadow:0 8px 24px #17142766}
.ac-world-shell .ac10-session-status p{flex:1;min-width:0;margin:0;line-height:1.5}
.ac-world-shell .ac10-session-status>.ac-button{flex-shrink:0}
@media(max-width:600px){.ac-world-shell .ac10-session-status{align-items:flex-start;flex-direction:column;gap:12px}}
.ac-world-shell #modal-host{position:relative;z-index:100}
.ac-world-shell .ac10-skip{z-index:200}
@media(max-width:1200px){.ac-world-shell .ac10-nav{gap:6px}.ac-world-shell .ac10-nav .ac-button{padding:8px;font-size:11px}.ac-world-shell .ac10-brand{width:40px}.ac-world-shell .ac10-nav :is([data-route=profile],[data-route=settings]){width:40px;font-size:0}}
@media(max-width:900px){.ac-world-shell .ac10-nav :is([data-route=leaderboard],[data-route=referrals]){font-size:0;width:44px}.ac-world-shell .ac10-home-frame{width:340px;left:22px;top:22vh}}
@media(max-width:600px){.ac-world-shell #navigation-host{left:10px;top:10px;max-width:calc(100vw - 20px)}.ac-world-shell .ac10-nav{gap:5px}.ac-world-shell .ac10-nav .ac-button{width:38px;min-height:40px;font-size:0;padding:5px}.ac-world-shell .ac10-brand{width:38px;min-height:40px}.ac-world-shell .ac10-menu>summary{min-height:40px;padding:7px}.ac-world-shell .ac10-menu__links{left:auto;right:0}.ac-world-shell .ac10-menu__links .ac-button{width:auto;font-size:12px}.ac-world-shell:not([data-ac-route=home]):not([data-ac-route=play]) #screen-host{width:calc(100vw - 16px);top:62px;bottom:8px;padding:0}.ac-world-shell .ac10-home-frame{left:16px;top:auto;bottom:135px;width:calc(100vw - 32px)}.ac-world-shell .ac10-home h2{font-size:20px}.ac-world-shell .ac10-launch-frame{right:16px;bottom:16px;width:calc(100vw - 32px)}}
@media(prefers-reduced-motion:reduce){.ac-world-shell .ac10-nav .ac-button{transition:none}}

.ac-world-shell .ac10-brand{color:var(--ac-berry-shade);margin:0;flex-basis:auto}.ac-world-shell .ac10-menu[open]{flex-basis:auto}.ac-world-shell .ac10-launch{position:static;display:block;width:auto}.ac-world-shell .ac10-launch-frame .ac10-launch__status{font-size:15px}.ac-world-shell .ac10-launch-frame p{font-size:13px}.ac-world-shell .ac10-launch-frame .ac10-actions{gap:8px}.ac-world-shell .ac10-menu:not([open])>.ac10-menu__links{display:none}.ac-world-shell .ac10-menu .ac10-menu__links .ac-button{width:auto;font-size:12px}
