@layer theme,legacy,utilities;
@layer legacy{
/* Personal spaces. Scoped to member configuration, never a name or identity. */
body.child-mode[data-child-style=studio]{background:var(--surface)}
[data-child-style=studio] main{max-width:1120px}
[data-child-style=studio] header h1{font-size:1.05882rem;color:var(--muted);font-weight:500}
.studio-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;border-bottom:2px solid var(--ink);padding:12px 0 32px;margin-bottom:32px}
.studio-heading p{font-size:0.82353rem;color:var(--muted);margin:0 0 16px}
.game-view .studio-heading h2{font-size:clamp(2.3529411764705883rem,7vw,4.235294117647059rem);line-height:1.08;letter-spacing:-2px;font-weight:800;color:var(--ink);margin:0;overflow-wrap:anywhere}
.studio-heading h2 span{color:var(--accent)}
.studio-stamp{flex-shrink:0;border:1px solid var(--ink);border-radius:50%;width:112px;height:112px;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(-8deg);background:var(--surface-alt)}
.studio-stamp strong{font-size:1.76471rem;direction:ltr}.studio-stamp strong span{font-size:0.94118rem;color:var(--muted)}.studio-stamp small{font-size:0.8rem}
.studio-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:48px}.studio-section{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.studio-section h3{font-size:1.41176rem;margin:0}.studio-section>span{font-size:0.8rem;color:var(--muted)}
.studio-list{border-top:1px solid var(--line)}.studio-task{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:14px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}
.studio-task h4{font-size:1.05882rem;font-weight:600;line-height:1.5;margin:0 0 6px;overflow-wrap:anywhere}.studio-task p{font-size:0.8rem;color:var(--muted);margin:0}.studio-task-mark{font-size:1.41176rem;color:var(--accent)}.studio-task button{font-size:0.82353rem;min-height:44px;padding:10px 16px;border-radius:8px}.studio-approved,.studio-pending{color:var(--success);font-size:0.8rem}.studio-pending{display:block;margin-top:8px}.is-complete h4{text-decoration:line-through;text-decoration-thickness:1px;color:var(--muted)}
.studio-week-link,.studio-reminders{display:block;min-height:44px;text-align:start;padding:10px 0;color:var(--accent);background:transparent;border:0;font-size:0.82353rem;text-decoration:underline;text-underline-offset:5px}
.studio-balance{background:var(--tint);padding:24px;border-radius:4px 24px 4px 4px}.studio-balance>span{font-size:0.8rem}.studio-balance strong{display:block;font-size:3.29412rem;line-height:1.3;margin:20px 0}.studio-balance strong small{display:block;font-size:0.8rem;font-weight:400}.studio-balance button{width:100%;min-height:44px;background:var(--accent);color:var(--on-action);border:0;border-radius:8px;font-size:0.82353rem}
.studio-wishlist{padding:24px 0;border-bottom:1px solid var(--line)}.studio-wishlist small{font-size:0.8rem;color:var(--muted)}.studio-wishlist h3{font-size:1.23529rem;line-height:1.4;margin:12px 0 18px}.studio-wishlist p,.studio-progress p{font-size:0.8rem;line-height:1.7;color:var(--muted)}.studio-view .g-track{height:6px;background:var(--line);border-radius:0}.studio-view .g-track i{background:var(--accent);border-radius:0}
.studio-progress{padding:12px 0;border-bottom:1px solid var(--line)}.studio-progress summary{min-height:44px;align-content:center;cursor:pointer;font-size:0.82353rem}.studio-progress ul{list-style:none;padding:0}.studio-progress li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;font-size:0.8rem}.studio-progress li span{color:var(--muted)}.studio-empty{padding:40px 0}.studio-empty h4{font-size:1.41176rem;margin:0}.studio-empty p{color:var(--muted)}
[data-child-style=studio] .g-bottom-nav{border-radius:12px;box-shadow:0 6px 24px var(--line)}.preview-profile-summary{font-size:0.82353rem;color:var(--muted);margin-block:20px}.member-screen-profile{font-size:0.82353rem;color:var(--muted)}
/* Younger space: character and journey are front-and-centre. */
.quest-view .g-player{background:var(--surface);color:var(--ink);border:2px solid var(--line);box-shadow:5px 6px 0 var(--line);border-radius:28px 28px 8px 28px;margin-bottom:20px;isolation:isolate}
.quest-view .g-player:after{content:'✳';font-size:5.88235rem;color:var(--ink);opacity:.10;transform:rotate(12deg);border:0;right:auto;left:15px;top:0;z-index:-1}
.quest-view .g-player-info>small,.quest-view .g-player-info>p,.quest-view .g-player-info h2,.quest-view .g-xp-label{color:var(--ink)}.quest-view .g-player-info h2{font-size:clamp(1.6470588235294117rem,5vw,2.4705882352941178rem);line-height:1.2;max-width:420px}.quest-view .g-player .g-track{background:var(--surface)}.quest-view .g-player .g-track i{background:var(--surface)}
.quest-view .g-avatar{background:var(--surface);border-radius:50%;transform:rotate(-8deg)}.quest-view .g-mission,.quest-view .g-mission:nth-child(n){border:1px solid var(--ink);border-radius:18px 18px 6px 18px;box-shadow:0 3px 0 var(--line)}.quest-view .g-mission-icon{border-radius:50%}.quest-view .g-go{border-radius:24px}.quest-view .g-map{background:var(--tint);border:0}.quest-view .g-stop.current>span{background:var(--surface);border-color:var(--line);color:var(--ink);transform:rotate(-8deg)}
[data-child-style=quest] .g-bottom-nav{border-radius:24px 24px 8px 8px}
@media(max-width:760px){.studio-layout{grid-template-columns:minmax(0,1fr);gap:28px}.studio-heading{padding-bottom:24px;margin-bottom:28px}.studio-stamp{width:92px;height:92px}.studio-stamp strong{font-size:1.52941rem}.studio-rail{display:grid;grid-template-columns:minmax(0,1fr);gap:0}.studio-balance{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.studio-balance>span{grid-column:1/-1}.studio-balance strong{font-size:2.35294rem;margin:0}.studio-balance button{padding:12px;width:auto}.studio-task{gap:10px;padding:20px 0}.studio-task h4{font-size:1rem}.studio-task button{padding:10px 12px}.quest-view .g-player{padding:24px 18px;gap:20px}.quest-view .g-avatar{width:76px;height:82px;font-size:2.58824rem}.quest-view .g-player-info>p{font-size:0.8rem}.quest-view .g-mission-icon{width:40px;height:40px}.quest-view .g-mission,.quest-view .g-mission:nth-child(n){grid-template-columns:40px minmax(0,1fr);padding:16px;gap:12px}.quest-view .g-mission>button{grid-column:2;justify-self:start}.quest-view .g-completed-mark{grid-column:2;justify-self:start}}
@media(max-width:360px){.studio-heading{gap:8px}.game-view .studio-heading h2{font-size:2.23529rem}.studio-stamp{width:78px;height:78px}.studio-stamp small{font-size:0.8rem}.studio-task{grid-template-columns:20px minmax(0,1fr)}.studio-task button,.studio-approved{grid-column:2;justify-self:start}.quest-view .g-player{flex-direction:column;align-items:flex-start}}
[data-child-style=studio] #date{display:none}
/* Profile studio: one sticker sheet, shared by all child themes. */
.profile-picture{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;aspect-ratio:1}
.g-avatar{padding:0!important;overflow:visible;aspect-ratio:1;height:auto!important}.g-avatar .profile-picture{width:100%;height:100%;border-radius:inherit}.g-stop .profile-picture{width:40px;height:40px}
.studio-portrait{width:110px;height:110px;flex-shrink:0;transform:rotate(5deg);border:2px solid var(--ink);border-radius:50%;padding:4px;background:var(--surface)}.studio-heading .studio-stamp{display:none}
.avatar-picker{margin:18px 0 30px;border-block:1px solid var(--line);color:var(--ink);text-align:start}.avatar-picker>summary{cursor:pointer;min-height:52px;padding:14px 0;font-weight:600;font-size:0.88235rem}.avatar-picker>summary span{font-size:0.8rem;font-weight:400;color:var(--muted);margin-inline-start:12px}.avatar-workspace{padding:8px 0 24px;max-width:600px}.avatar-preview{display:flex;align-items:center;gap:22px;margin-bottom:24px}.avatar-preview .profile-picture{width:88px;height:88px;border:2px solid var(--ink);padding:4px;background:var(--surface)}.game-view .avatar-preview h3{font-size:1.41176rem;margin:0 0 6px;color:var(--ink)}.avatar-preview p{font-size:0.82353rem;line-height:1.6;color:var(--muted);margin:0}
.avatar-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.avatar-options button{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 6px;border:2px solid transparent;border-radius:18px;background:var(--surface);color:var(--ink);min-height:110px;box-shadow:none}.avatar-options button img{width:72px;height:72px;border-radius:50%;transition:transform .18s}.avatar-options button span{font-size:0.8rem}.avatar-options button[aria-pressed=true]{border-color:var(--accent);background:var(--tint)}.avatar-options button[aria-pressed=true] img{transform:rotate(-8deg)}.avatar-options button:focus-visible,.avatar-picker summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.avatar-upload{display:block;position:relative;min-height:48px;padding:14px;margin:20px 0 10px;border:1px dashed var(--accent);border-radius:10px;text-align:center;color:var(--accent);font-size:0.82353rem;cursor:pointer}.avatar-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.avatar-upload:focus-within{outline:3px solid var(--accent);outline-offset:3px}.avatar-help,.avatar-status{font-size:0.8rem;line-height:1.7;color:var(--muted)}.avatar-status{min-height:22px;color:var(--ink)}.avatar-crop{font-size:0.82353rem}.avatar-crop input{display:block;width:100%;height:44px;accent-color:var(--accent)}.avatar-crop[hidden]{display:none}.avatar-actions{display:flex;gap:12px}.avatar-actions button{min-height:48px;font-size:0.82353rem}.avatar-actions .primary{flex:1}.avatar-picker input:disabled{cursor:wait}
@media(max-width:360px){.studio-portrait{width:78px;height:78px}.avatar-options{gap:8px}.avatar-options button img{width:60px;height:60px}.avatar-options button span{font-size:0.8rem}.game-view .avatar-preview h3{font-size:1.23529rem}.avatar-preview{gap:14px}}
@media(prefers-reduced-motion:reduce){.avatar-options button img{transition:none}}

/* Task-first proportions: shared by configured themes, never personal identities. */
.child-mode main{margin-inline:auto}
.child-mode[data-page=today] header{align-items:center;margin-bottom:16px;min-height:44px}
.child-mode[data-page=today] header>div:first-child{min-width:0}
.child-mode[data-page=today] header h1{font-size:0.94118rem;font-weight:500;line-height:1.4;color:var(--muted);margin:0}
.child-mode[data-page=today][data-child-style=studio] header h1{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.child-mode[data-page=today][data-child-style=studio] main>header:not(:has(.profile)){display:none}
.child-mode .studio-heading{align-items:center;gap:20px;padding:4px 0 24px;margin-bottom:20px}
.game-view .studio-heading h2{font-size:clamp(1.8823529411764706rem,4.5vw,2.823529411764706rem);line-height:1.15;letter-spacing:-1px}
.studio-heading>div:first-child{min-width:0}
.studio-heading p{font-size:0.8rem;margin-bottom:10px}
.studio-heading .studio-portrait{width:84px;height:84px;padding:3px;transform:rotate(3deg)}
.studio-layout{gap:32px;grid-template-columns:minmax(0,1fr) 240px}
.studio-section h3{font-size:1.23529rem}.studio-task{padding:18px 0;gap:12px}
.studio-task h4{font-size:1rem;margin-bottom:4px}.studio-balance{padding:20px}
.studio-balance strong{font-size:2.35294rem;margin:12px 0}.studio-wishlist{padding:20px 0}
.child-mode .avatar-picker{margin:0 0 20px}.avatar-picker>summary{font-size:0.82353rem;min-height:44px;padding:12px 0}
.game-view.quest-view .g-player{gap:20px;padding:24px;margin-bottom:20px;align-items:center}
.game-view.quest-view .g-player-info h2{font-size:clamp(1.411764705882353rem,3vw,1.8823529411764706rem);line-height:1.3;margin:6px 0 14px;color:var(--ink)}
.game-view.quest-view .g-player-info>p{font-size:0.8rem;color:var(--ink);line-height:1.5;margin-top:10px}
.quest-view .g-avatar{width:84px;height:84px!important;margin:0 0 10px;aspect-ratio:1}
.quest-view .g-avatar>span{white-space:nowrap}
.quest-view .g-loot{padding:20px}.quest-view .g-treasure{height:72px;font-size:2.82353rem;margin:12px 0}
.quest-view .g-map{margin-top:24px}.quest-view .g-badges{margin-top:24px}
.child-mode .game-view button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:760px){
 .child-mode main{padding-inline:16px;padding-top:16px}
 .studio-layout{grid-template-columns:minmax(0,1fr);gap:24px}
 .child-mode .studio-heading{padding-bottom:18px;margin-bottom:16px;gap:16px}
 .studio-heading .studio-portrait{width:68px;height:68px}
 .game-view .studio-heading h2{font-size:2rem;letter-spacing:-.6px}
 .studio-section{margin-bottom:10px}.studio-section h3{font-size:1.17647rem}
 .studio-task{grid-template-columns:18px minmax(0,1fr) auto;padding:16px 0;gap:8px}
 .studio-task h4{font-size:0.94118rem}.studio-task p{font-size:0.8rem;line-height:1.6}
 .studio-task button{padding:10px 12px;font-size:0.8rem;grid-column:auto}
 .studio-approved{grid-column:auto}.studio-task-mark{font-size:1.17647rem}
 .studio-balance{padding:18px}.studio-balance strong{font-size:1.88235rem;margin:0}
 .game-view.quest-view .g-player{padding:18px 16px;gap:16px;border-radius:22px 22px 8px 22px;flex-direction:row}
 .quest-view .g-avatar{width:64px;height:64px!important;box-shadow:2px 3px 0 var(--ink)}
 .game-view.quest-view .g-player-info h2{font-size:1.41176rem;margin:4px 0 12px}
 .quest-view .g-player-info>small{font-size:0.8rem}.game-view.quest-view .g-player-info>p{font-size:0.8rem}
 .quest-view .g-xp-label{font-size:0.8rem}
 .quest-view .g-mission,.quest-view .g-mission:nth-child(n){grid-template-columns:36px minmax(0,1fr) auto;gap:10px;padding:14px 12px}
 .quest-view .g-mission-icon,.quest-view .g-mission:nth-child(n) .g-mission-icon{width:36px;height:36px;font-size:1.29412rem}
 .quest-view .g-mission>button{grid-column:auto;width:auto;min-width:64px;padding:10px;font-size:0.8rem}
 .quest-view .g-completed-mark{grid-column:auto}.quest-view .g-mission-info h4{font-size:0.94118rem}
 .quest-view .g-section-title h3{font-size:1.17647rem}.quest-view .g-section-title>span{font-size:0.8rem}
 .quest-view .g-top{flex-wrap:wrap;gap:8px}.quest-view .g-tools{margin-inline-start:auto}
 .quest-view .g-loot{margin:24px 0}.quest-view .g-treasure{height:60px;font-size:2.47059rem}
}
@media(max-width:360px){
 .game-view .studio-heading h2{font-size:1.76471rem}.studio-heading .studio-portrait{width:60px;height:60px}
 .studio-task,.quest-view .g-mission,.quest-view .g-mission:nth-child(n){grid-template-columns:28px minmax(0,1fr)}
 .studio-task button,.studio-approved,.quest-view .g-mission>button,.quest-view .g-completed-mark{grid-column:2;justify-self:start}
 .game-view.quest-view .g-player{gap:12px;align-items:flex-start}.quest-view .g-avatar{width:52px;height:52px!important;margin-top:6px}
 .game-view.quest-view .g-player-info h2{font-size:1.29412rem}
}

}