body{background:#0b1828;isolation:isolate}body::before{content:"";position:fixed;inset:0 0 auto;height:100vh;height:100lvh;z-index:-2;background:linear-gradient(#071625b8,#071625e8),url('/art/landscape.webp?rev=d5e16fd6b97ed72d') center/cover no-repeat;pointer-events:none}header{background:#0b192acc}.brand{letter-spacing:normal}.brand-logo{width:168px;height:63px;object-fit:contain}.brand .edition{margin-left:4px}main{position:relative}footer{background:#091827db}.panel,.mode-card,.account-history{background:#11243aee}.adventure-menu::before,.adventure-welcome::before{background:linear-gradient(#07162538,#0716258a 65%,#071625f0),url('/art/landscape.webp?rev=d5e16fd6b97ed72d') center/cover no-repeat}.adventure-welcome>header,.adventure-welcome>.account-bar,.adventure-welcome>.account-notice{display:none}.adventure-welcome main{max-width:1100px;margin:0 auto;padding-top:22px}.welcome-screen{text-align:center;min-height:calc(100dvh - 120px);display:flex;flex-direction:column;align-items:center}.welcome-logo{width:min(590px,90vw);height:auto;max-height:210px;object-fit:contain;filter:drop-shadow(0 5px 12px #00182c)}.welcome-card{margin-top:14px;max-width:480px;width:100%;padding:28px 35px;border:1px solid #8acac17d;border-radius:20px;background:#091c30ed;box-shadow:0 20px 80px #0005}.welcome-card h1{font-family:Georgia,serif;font-size:38px;line-height:1.12;margin:16px 0}.welcome-card p{font-size:15px;line-height:1.65;color:#cfdfeb}.welcome-card .eyebrow{font-size:10px;letter-spacing:2px}.welcome-card .account-google{display:flex;justify-content:center;min-height:42px;margin-top:22px}.welcome-card #welcome-status:empty{display:none}.welcome-login-link{display:inline-block;color:#a2ebdc;font-size:13px;margin-top:12px}.welcome-divider{display:flex;align-items:center;gap:12px;color:#b3c3ce;font-size:12px;margin:18px 0}.welcome-divider::before,.welcome-divider::after{content:"";height:1px;flex:1;background:#64839466}.welcome-card #welcome-guest{width:100%;background:#d9fbf010;color:#edfff9;border-color:#8abbb7}.welcome-card .welcome-note{font-size:11px;line-height:1.6;margin:16px 0 0}.welcome-party{display:flex;justify-content:center;gap:15px;margin-top:12px;filter:drop-shadow(0 6px 2px #0004)}
.adventure-menu-hero{text-align:center;margin:0 auto 26px}.menu-logo{width:min(380px,78vw);height:auto}.adventure-menu-hero h1{font-family:Georgia,serif;font-size:clamp(27px,4vw,42px);line-height:1.18;margin:12px 0}.adventure-menu-hero>p{color:#d3e5ed;font-size:16px}.menu-character{display:flex;align-items:center;justify-content:center;padding:10px 0 14px}.menu-portrait{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px;max-width:100%}.menu-character-button>.roo-avatar{width:180px;height:180px;min-width:180px;border-width:5px;font-size:90px}.menu-portrait figcaption{font-size:16px;font-weight:650;line-height:1.4;color:#eff7f2;overflow-wrap:anywhere;max-width:min(380px,85vw);text-shadow:0 2px 8px #071625}.menu-character .pixel-avatar{--sprite-width:160px;display:inline-block;width:var(--sprite-width);height:var(--sprite-width);vertical-align:middle;flex:none;line-height:1}.pixel-avatar img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.animal-avatar{display:inline-flex;align-items:center;justify-content:center;font-size:2em;line-height:1.2;vertical-align:middle}.team-avatar .pixel-avatar,.score .pixel-avatar{--sprite-width:44px}.team-avatar .roo-avatar{width:auto;height:auto;display:inline-block;background:transparent}.account-bar .animal-avatar{font-size:24px}.wardrobe-preview .animal-avatar{font-size:85px}.menu-character .animal-avatar{font-size:96px}.wardrobe-animals{display:flex;flex-wrap:wrap;gap:10px}.wardrobe-animals label{display:flex;align-items:center;gap:6px;border:1px solid #536f85;border-radius:8px;padding:10px;cursor:pointer}.wardrobe-animals label:has(:checked){border-color:#91ffdc;background:#1b4b54}.wardrobe-animals span{font-size:30px}.roo-avatar-large .pixel-avatar{--sprite-width:100px}.roo-avatar .pixel-avatar{max-width:100%;max-height:100%}
.adventurer-dialog{background:#0d2034;color:#eef7ff;border:1px solid #82c6b6;border-radius:20px;padding:30px;max-width:850px;width:calc(100% - 32px);max-height:92dvh;overflow:auto;box-shadow:0 25px 90px #0009}.adventurer-dialog::backdrop{background:#020b18c9;backdrop-filter:blur(4px)}.wardrobe-close{position:absolute;right:16px;top:10px;font-size:30px;color:#d7f5ee;background:none;border:0;min-width:40px}.adventurer-dialog h2{font-family:Georgia,serif;font-size:30px;margin:12px 0}.wardrobe-layout{display:grid;grid-template-columns:200px 1fr;gap:24px}.wardrobe-preview{border-radius:14px;background:linear-gradient(#10274722,#0b213bad),url('/art/landscape.webp?rev=d5e16fd6b97ed72d') 35% 75%/auto 100%;min-height:270px;display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:start;position:sticky;top:0}.wardrobe-preview .pixel-avatar{--sprite-width:156px}.wardrobe-preview>span{font-size:11px;padding:6px 12px;background:#09283cce;border-radius:12px}.wardrobe-looks{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.wardrobe-looks label{display:flex;flex-direction:column;align-items:center;text-align:center;padding:6px 3px;border:1px solid #536f85;border-radius:8px;background:#102c43;cursor:pointer;font-size:10px;line-height:1.3}.wardrobe-looks label:has(:checked){border-color:#91ffdc;background:#1b4b54}.wardrobe-looks .pixel-avatar{--sprite-width:65px}.wardrobe-colours{display:flex;flex-wrap:wrap;gap:10px}.wardrobe-colours label{display:flex;align-items:center;gap:5px;font-size:12px;cursor:pointer;border:1px solid #536f85;padding:8px;border-radius:7px}.wardrobe-colours label:has(:checked){border-color:#91ffdc}.adventurer-dialog input[type=radio]{width:15px;height:15px;accent-color:#64ebc7;margin:0}.adventurer-dialog fieldset{border:0;padding:0;margin:18px 0}.adventurer-dialog legend{font-weight:650;font-size:13px;margin-bottom:10px}.colour-swatch{width:15px;height:15px;border-radius:50%;display:inline-block}.colour-0{background:#d74945}.colour-1{background:#3977cd}.colour-2{background:#348652}.colour-3{background:#e6b832}#wardrobe-status{font-size:13px;color:#aeefdb}.avatar-profile-entry{padding:18px;border:1px solid #588d98;border-radius:12px;margin:18px 0}.avatar-profile-entry .pixel-avatar{--sprite-width:70px}.avatar-profile-entry p{font-size:13px}.avatar-profile-entry .secondary{margin:8px}
@media(max-width:760px){header{padding:12px 18px}.brand-logo{width:130px;height:48px}.brand .edition{display:none}.welcome-card{padding:24px;max-width:420px}.welcome-logo{max-height:155px}.welcome-party .pixel-avatar{--sprite-width:62px}.welcome-party{gap:8px}.welcome-card h1{font-size:32px}.wardrobe-layout{grid-template-columns:1fr}.wardrobe-preview{position:static;min-height:150px}.wardrobe-preview .pixel-avatar{--sprite-width:108px}.adventurer-dialog{padding:22px 16px}.wardrobe-looks .pixel-avatar{--sprite-width:56px}.wardrobe-looks{gap:4px}.adventure-menu-hero>p{font-size:14px}.adventure-menu-hero h1{font-size:29px}}@media(prefers-reduced-motion:reduce){.mode-card{transition:none!important}}

.team-choice-summary .pixel-avatar{--sprite-width:36px}.team-choice-summary .roo-avatar{width:auto;height:auto;background:transparent}.roo-preview .roo-avatar{overflow:visible}

.roo-avatar .animal-avatar{font-size:inherit}.roo-costumes{margin:16px 0}.roo-costumes h3{margin-top:0}

/* A stable large viewport prevents browser-toolbar changes from recropping the scenery. */
.menu-character-button{display:flex;align-items:center;justify-content:center;padding:0;margin:0;border:0;border-radius:50%;background:transparent;color:inherit;line-height:1;box-shadow:none;cursor:pointer}
.menu-character-button:hover{background:transparent;box-shadow:0 0 0 4px #a2efd52e}
.menu-badges{display:flex;align-items:center;justify-content:center;width:180px;max-width:100%;min-height:44px;border-radius:6px;color:#b6eedf;text-decoration:none}
.menu-badges .badge-showcase{width:100%;max-width:none}
.menu-badges:hover{box-shadow:0 0 0 3px #a2efd52e;text-decoration:none}
.menu-badges-empty{padding:8px 14px;font-size:12px;line-height:1.5;border:1px dashed #a2efd559;border-radius:8px;background:#102b3ecc}
.menu-character-button:focus-visible,.menu-badges:focus-visible{outline:3px solid #ffd276;outline-offset:5px}

.team-avatar .roo-avatar.roo-illustrated{display:inline-flex;width:48px;height:48px;background-color:#1c3048}
.team-choice-summary .roo-avatar.roo-illustrated{display:inline-flex;width:40px;height:40px;background-color:#1c3048}
