:root{--ink:#193e33;--muted:#60786e;--green:#147454;--mint:#e9f6ee;--border:#dce9df;--white:#fffdfa}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f0f7f1;color:var(--ink);font:16px/1.5 system-ui,-apple-system,sans-serif}
body.theme-child{background:linear-gradient(140deg,#dff8ef,#fff6df 70%,#dcedfa);--green:#207a70}
h1,h2,h3,h4{line-height:1.2;letter-spacing:-.03em}h1{font-size:clamp(1.9rem,4vw,3rem)}h2{font-size:clamp(1.35rem,2.7vw,1.8rem)}h3{margin:23px 0 10px}p,small{color:var(--muted)}a{color:var(--green)}
button,input,select,textarea{font:inherit}button{min-height:44px;padding:11px 16px;border-radius:12px;border:0;background:var(--green);color:white;font-weight:700;cursor:pointer}button:hover:not(:disabled){filter:brightness(.92)}button:disabled{opacity:.48;cursor:not-allowed}
button.secondary{background:var(--mint);color:var(--green)}button.danger{background:#fff1eb;color:#a34033}button.ghost{background:var(--white);color:var(--ink);border:1px solid var(--border)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #f9b35e;outline-offset:2px}
input:not([type=checkbox]),select,textarea{width:100%;min-height:46px;padding:11px 13px;border:1px solid #b9cec1;border-radius:12px;background:white;color:var(--ink);margin:5px 0 12px}
input[type=checkbox]{width:19px;height:19px;vertical-align:middle;accent-color:var(--green)}label{display:block;margin:12px 0 2px;font-weight:600}label.check{display:flex;gap:10px;align-items:center;font-weight:500}
[hidden]{display:none!important}.page{max-width:1150px;margin:auto;padding:0 18px 50px}.hero{margin:20px 0 23px;padding:28px 34px;border-radius:28px;background:linear-gradient(120deg,#184d40,#168365);color:white;display:flex;justify-content:space-between;align-items:center;gap:16px}.hero h1{color:white;margin:4px 0}.hero p{color:#daf4e7}.hero-art{font-size:clamp(3rem,8vw,6rem)}
.surface{background:var(--white);border-radius:22px;border:1px solid #e1ede5;padding:24px;margin-bottom:18px;box-shadow:0 12px 30px #1a644812}
.nav{position:sticky;top:6px;z-index:4;display:flex;flex-wrap:wrap;gap:7px;padding:8px;margin-bottom:20px;border-radius:17px;background:white;box-shadow:0 5px 20px #21584214}
.nav button{background:transparent;color:var(--ink);flex:1 0 auto;min-height:42px}.nav button[aria-selected=true]{background:var(--green);color:white}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:15px}.tile{padding:18px;border:1px solid var(--border);border-radius:17px;background:#f9fdf9}.tile p{margin-bottom:0}
.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,155px),1fr));gap:10px;margin:16px 0}.stat{background:var(--mint);padding:16px;border-radius:15px}.stat strong{display:block;font-size:1.8rem}.stat span{display:block;font-size:.88rem;color:var(--muted)}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:0 16px}.actions{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0}.actions button{flex:1 0 140px}
ul{padding-left:20px}li{margin:9px 0;overflow-wrap:anywhere}li button{font-size:.87rem;min-height:36px;margin:5px 7px 5px 0;padding:8px 10px}li small{display:block}
.stack{list-style:none;padding:0}.stack>li{padding:13px 0;border-bottom:1px solid var(--border)}.stack>li:last-child{border:0}.cards{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,275px),1fr));gap:12px}.cards>li{padding:15px;border:1px solid var(--border);border-radius:15px;background:#f8fcf7;margin:0}
.more{border-top:1px solid var(--border);margin-top:20px;padding-top:10px}.more summary{font-weight:700;cursor:pointer;color:var(--green);padding:10px}.status{background:var(--mint);border-radius:13px;padding:14px 17px;margin:12px 0;white-space:pre-wrap}.status:empty{display:none}.badge{display:inline-block;background:#fff0d3;color:#825822;border-radius:30px;padding:4px 9px;font-size:.8rem;font-weight:800}.note{background:#fff5e4;color:#7f5a30;border-radius:13px;padding:12px 15px}.empty{padding:16px;background:#f6fbf7;border-radius:14px;color:var(--muted)}
.child-stage{text-align:center;background:radial-gradient(circle at 50% 0%,#beece0,#53b69e 70%,#2b9189);padding:28px 18px;border-radius:24px}.child-stage #island{font-size:clamp(5rem,15vw,9rem)}.child-stage p{color:#1a5146}
.child-head{display:flex;justify-content:space-between;gap:15px;align-items:center}.child-head .actions{margin:0}.child-head button{min-width:100px}
.child-nav{display:flex;gap:8px;overflow:auto;position:sticky;top:5px;z-index:5;padding:8px;background:#fffc;border-radius:17px;margin:14px 0}.child-nav button{white-space:nowrap;flex:1 0 auto;background:transparent;color:var(--ink)}.child-nav button[aria-selected=true]{background:var(--green);color:white}
.progress-track{height:11px;background:#cce8d7;border-radius:20px;overflow:hidden}.progress-track>span{height:100%;display:block;background:linear-gradient(90deg,#52b99d,#f3c66d)}

footer{text-align:center;color:var(--muted);font-size:.85rem;padding:10px 0 25px}
@media(max-width:650px){.page{padding:0 12px 45px}.surface{padding:17px;border-radius:18px}.hero{padding:23px 20px}.hero-art{display:none}.nav,.child-nav{flex-wrap:nowrap;overflow:auto;top:0;border-radius:0;margin:0 -12px 15px;padding:7px 12px}.nav button{flex:0 0 auto;font-size:.9rem}.actions button{flex:1 0 100%}.child-head{flex-direction:column;align-items:stretch}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

#message:not(:empty){position:fixed;z-index:20;bottom:14px;left:50%;transform:translateX(-50%);max-width:90vw;width:max-content;box-shadow:0 12px 35px #163b302b}
