:root{color:#173c42;background:#f4f8f7;font-family:"Segoe UI",system-ui,sans-serif;line-height:1.55;--green:#19775e;--ink:#173c42;--muted:#637d80;--line:#e3ece9}
body{background:radial-gradient(ellipse at 85% 0,#e7f5ef 0,transparent 45%),#f6f9f8}
h1{font-size:clamp(1.65rem,3vw,2.3rem);letter-spacing:-.04em;margin-bottom:10px;line-height:1.2;color:var(--ink)}
h2{font-size:1.3rem;color:var(--ink)}h3{font-size:1.05rem;color:var(--ink)}p{color:#577174;font-size:.94rem}
.shell{max-width:1440px;padding:0 32px}.topbar{height:86px;padding:18px 0;border-color:var(--line)}
.brand{color:#123e45;letter-spacing:-.05em}.brand-icon{position:relative;display:block;background:transparent;width:28px;height:40px}
.brand-icon span{position:absolute;width:10px;height:21px;border-radius:60%;background:linear-gradient(160deg,#83c959,#28a26a);transform:rotate(24deg);left:1px;top:12px}
.brand-icon span:nth-child(2){left:15px;top:2px}.brand-icon span:nth-child(3){left:14px;top:27px;height:12px;width:7px}
.topbar .tag{background:transparent;color:#638080}.workspace main{margin-left:236px;padding:30px 8px 64px;min-width:0}.workspace:before{content:"";position:fixed;top:86px;bottom:0;width:216px;background:linear-gradient(180deg,#edf5f2,transparent);border-right:1px solid var(--line);pointer-events:none}
.workspace footer{margin-left:236px}.page-heading{margin-bottom:24px}.page-heading h1{font-size:2rem}.page-heading p{margin-bottom:0}
.eyebrow{font-size:.65rem;letter-spacing:.12em;margin-bottom:8px;color:#63807b}.card{border:1px solid #e5eeeb;border-radius:18px;padding:24px;background:#ffffffed;box-shadow:0 5px 20px #234e3e05;margin-bottom:20px}
button{min-height:44px;font-size:.9rem;border-radius:10px;transition:background .15s,box-shadow .15s,transform .15s}button:not(:disabled):active{transform:translateY(1px)}
.primary{background:linear-gradient(110deg,#166b5b,#29a773);box-shadow:0 3px 8px #19775e14;color:white}.primary:hover{background:#176c56}
.secondary{background:#edf6f3;border-color:#daeae2;color:#246650}.text-button{color:#446b67}.tag{background:#e5f5ec;color:#257253;border-radius:8px}
input,select,textarea{border-color:#d8e5e0;background:#fcfefd;min-width:0}input[type=checkbox],input[type=radio]{display:inline-block;width:19px;min-height:19px;height:19px;accent-color:var(--green);vertical-align:middle;margin-right:7px}
fieldset{min-width:0;border:1px solid var(--line);border-radius:12px;padding:16px}details{border-radius:12px}summary{cursor:pointer;padding:12px 0;font-weight:600;color:#365f5b}
form>button{margin-top:18px}.two-columns{gap:20px}.section-heading{flex-wrap:wrap}.section-heading h2{margin:0}
.child-space{max-width:none;text-align:left}.child-greeting{display:flex;gap:14px;align-items:center;margin:0 0 24px}.child-greeting h1{font-size:1.65rem;margin:0 0 4px}.child-greeting p{margin:0;font-size:.85rem}
.child-avatar{width:58px;height:58px;font-size:2.25rem;border-radius:50%;background:#dff1e8;display:grid;place-items:center}
.profiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:14px}.profile{background:#fff;box-shadow:0 4px 12px #244b3d07;border-color:#e2ece8;min-width:0;padding:20px 12px}
.avatar{display:grid;place-items:center;background:#eaf5f0;width:64px;height:64px;border-radius:50%;font-size:2.3rem}.profile:nth-child(3n + 2) .avatar{background:#fff0e3}.profile:nth-child(3n) .avatar{background:#e9f3ff}
.unlock{margin:25px 0;max-width:440px;background:#edf3f1;border:1px solid var(--line)}.unlock summary{text-align:left;padding:14px 18px}
.sound-settings{margin-bottom:16px;color:#68807b}.sound-settings>summary{font-size:.78rem;font-weight:500;text-align:right;padding:0 0 8px}.sound-settings[open]{padding:14px;background:white;border:1px solid var(--line)}
.sound-settings .voice-controls{margin:0}.sound-settings small{font-size:.75rem;color:#64807a}
.welcome-grid{max-width:1060px;margin:auto;gap:70px}.intro h1{font-size:clamp(2.4rem,4.5vw,3.7rem);color:#173f43}.intro em{color:#249a70}.intro .illustration{background:linear-gradient(155deg,#e0f5f0,#b7ddc4);height:180px;border-radius:60% 60% 20px 20px}.auth-card{padding:36px;box-shadow:0 16px 50px #19513e0a}
.skip-link{position:fixed;left:12px;top:-80px;padding:12px;background:white;z-index:200}.skip-link:focus{top:12px}
.card article{border:1px solid var(--line);border-radius:14px;background:#fff;padding:18px;margin:14px 0}.card article h3{margin-top:0}
.card article p:last-child{margin-bottom:0}.card article button{margin:4px 4px 4px 0}
progress{accent-color:#2ca578;border-radius:12px;overflow:hidden;height:8px}progress::-webkit-progress-bar{background:#e3f2eb;border-radius:12px}progress::-webkit-progress-value{background:#2ba677;border-radius:12px}
.help-reasons{display:grid;gap:10px;margin:16px 0}.reason-choice{display:flex;align-items:center;gap:14px;text-align:left;background:#edf6ff;color:#224f76;border:2px solid transparent;padding:15px}
.reason-choice:nth-child(2){background:#f2edff;color:#6249a1}.reason-choice:nth-child(3){background:#fff0f1;color:#a74352}.reason-choice:nth-child(4){background:#fff5df;color:#86641e}.reason-choice:nth-child(5){background:#edf3f5;color:#466672}.reason-choice[aria-pressed=true]{border-color:currentColor}.reason-symbol{font-size:1.4rem;min-width:32px;text-align:center}
.reward-panel article{border-top:4px solid #f3c969;background:linear-gradient(160deg,#fffbf0,#fff 35%)}.reward-panel article h3:before{content:"★";display:inline-grid;place-items:center;width:38px;height:38px;margin-right:10px;background:#fff2cf;color:#e6a51a;border-radius:12px;font-size:24px}
.family-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:16px 0 24px}.family-overview>div{display:flex;gap:12px;align-items:center;padding:16px;background:#edf8f3;border:1px solid #deeee6;border-radius:14px}.family-overview>div:nth-child(2n){background:#fdf2ee}.family-overview .avatar{width:44px;height:44px;font-size:1.7rem}.family-overview small{display:block;color:#607b73;font-size:.75rem}
@media(min-width:1100px){.reward-panel{display:flow-root}.reward-panel>article{float:left;width:calc(50% - 12px);margin:12px 6px}.reward-panel>button:last-child{clear:both;display:block}.two-columns>.card{height:fit-content}}
@media(max-width:1000px) and (min-width:761px){.two-columns{grid-template-columns:1fr}.workspace main{margin-left:216px;padding-left:12px}.workspace footer{margin-left:228px}.workspace:before{width:200px}}
@media(min-width:761px){
    body:has(.shell.workspace){overflow:hidden}
    .shell.workspace{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden}
    .workspace .topbar{flex:0 0 86px;position:relative;z-index:40;background:var(--surface,#f2f7f5)}
    .workspace main{flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-gutter:stable;padding-bottom:32px}
    .workspace footer{flex:0 0 58px;align-items:center;padding:12px 0;background:var(--surface,#f2f7f5)}
    .workspace:before{bottom:58px}
}
@media(max-width:760px){.shell{padding:0 16px}.topbar{height:70px;padding:14px 0}.brand{font-size:1.25rem}.workspace:before{display:none}.workspace main{margin:0;padding:20px 0 110px}.workspace footer{margin:0;padding-bottom:110px}.workspace .page-heading h1{font-size:1.7rem}.card{padding:18px;border-radius:16px}.card article{padding:16px}.child-greeting{margin-bottom:20px}.child-greeting h1{font-size:1.4rem}.sound-settings>summary{text-align:left}.profiles{grid-template-columns:repeat(2,minmax(0,1fr))}.two-columns{grid-template-columns:1fr}.welcome-grid{gap:24px}.auth-card{padding:24px}.intro h1{font-size:2.4rem}.intro>p{font-size:.94rem}.family-overview{grid-template-columns:1fr}.workspace footer{display:none}h2{font-size:1.2rem}.help-reasons{gap:8px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.points-balance{display:flex;align-items:center;gap:18px;border:1px solid #f1e8ce;background:linear-gradient(110deg,#fff8e6,#fff);border-radius:16px;padding:20px;margin:20px 0}.points-balance>span{font-size:44px;color:#f5b52a;line-height:1}.points-balance small{display:block;color:#6d7975;font-size:.8rem}.points-balance strong{display:block;color:#193e43;font-size:1.8rem;line-height:1.3}
:root .item-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.item-card-header>h3,.item-card-header>h4{flex:1 1 160px;margin:0}.item-card-header>.member-badge,.item-card-header>.member-tags{margin-left:auto}.member-tags{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:65%}
:root summary.secondary{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid #c9d9c7;border-radius:12px;background:#edf3e9;color:#295e48;font-weight:650;cursor:pointer;list-style:none}summary.secondary::-webkit-details-marker{display:none}summary.secondary::before{content:"▸"}details[open]>summary.secondary::before{content:"▾"}summary.secondary:hover{background:#e0ebdb}.step-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid #d3e6dc}.step-actions>p,.step-actions>.step-label,.step-actions>.notice{flex-basis:100%}
@media(max-width:760px){.topbar .brand{font-size:1.05rem;gap:6px}.topbar>.text-button{padding:8px 10px}.topbar{gap:8px}}
.block-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;padding:16px;background:#f1f5fa;border:1px solid #d7e3ee;border-radius:14px}.block-actions>.step-label,.block-actions>.notice{flex-basis:100%}
.header-greeting{display:none}
@media(min-width:761px){.profile-header>.brand{width:216px;flex-shrink:0}.header-greeting{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.header-avatar{font-size:2.5rem;line-height:1;flex-shrink:0}.header-greeting h1{font-size:1.3rem;line-height:1.2;margin:0 0 3px;overflow-wrap:anywhere}.header-greeting p{font-size:.8rem;margin:0}.child-greeting.mobile-greeting{display:none}}
@media(min-width:761px) and (max-width:1000px){.profile-header>.brand{width:192px}.header-greeting h1{font-size:1.12rem}.profile-header{gap:12px}.header-avatar{font-size:2.1rem}}
.header-profile-switch{padding:8px 12px;white-space:nowrap;font-size:.85rem;flex-shrink:0}
@media(max-width:760px){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.topbar{padding-top:env(safe-area-inset-top)}main{padding-bottom:max(16px,env(safe-area-inset-bottom))}}
@media(max-width:760px){.topbar{height:auto;min-height:70px;flex-wrap:wrap}.header-profile-switch{order:5;width:100%;margin-bottom:8px}.topbar>.text-button{margin-left:auto}}

.header-eyebrow{display:block;font-size:.65rem;color:#638080;letter-spacing:.06em;margin-bottom:2px}@media(min-width:761px){.mobile-parent-greeting{display:none}.parent-header-greeting h1{font-size:1.2rem}.parent-header-greeting p{font-size:.75rem}}
