@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Nunito:wght@700;800;900&display=swap";:root{color:#40315f;font-synthesis:none;--ink:#40315f;--muted:#776a91;--cream:#fff7e8;--paper:#fff;--plum:#40315f;--purple:#8264e8;--coral:#ff686c;--mint:#2cc7b3;--line:#40315f;--shadow:0 8px 0 #40315f;background:#fff7e8;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--cream);min-height:100%}body{background:var(--cream);min-width:320px;min-height:100dvh;margin:0}button,input,select{font:inherit}button{color:inherit}button:focus-visible{outline-offset:3px;outline:4px solid #7857d740}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Nunito,system-ui,sans-serif}.eyebrow{color:#7f6aad;text-transform:uppercase;letter-spacing:.16em;margin-bottom:6px;font-size:11px;font-weight:800}.primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#7653d8,#9c63dc);border:0;border-radius:18px;min-height:54px;padding:14px 24px;font-weight:800;box-shadow:0 10px 24px #684bc247}.primary:disabled{opacity:.5;cursor:wait}.primary.full{width:100%}.app-shell{width:min(1420px,100% - 64px);margin:0 auto;padding:30px 0 130px}.topbar{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px;display:flex}.topbar h1{letter-spacing:-.045em;margin:0;font-size:clamp(38px,5vw,60px);line-height:.96}.greeting-row{align-items:center;gap:13px;display:flex}.day-voice{border:3px solid var(--plum);width:53px;height:53px;box-shadow:0 4px 0 var(--plum);cursor:pointer;background:#fff1c9;border-radius:50%;place-items:center;font-size:24px;display:grid}.day-voice:active{box-shadow:0 2px 0 var(--plum);transform:translateY(2px)}.today{color:var(--muted);margin:9px 0 0;font-weight:600}.top-actions{align-items:center;gap:10px;padding-top:10px;display:flex}.preview-pill,.sync-state{border:1px solid var(--line);background:#ffffffb8;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}.preview-pill{color:#8a4e78;background:#fff0f8}.sync-state{color:#41846b}.sync-state.saving{color:#866221}.quiet-button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:10px;font-size:12px}.date-eyebrow{color:var(--coral);font-size:15px}.header-right{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.kid-pills{gap:14px;display:flex}.kid-pills>button{border:3px solid var(--plum);min-width:132px;box-shadow:0 5px 0 var(--plum);cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:9px 16px 11px;font-family:Nunito;font-size:18px;font-weight:900;display:flex}.kid-pills>button.active{background:var(--plum);color:#fff;box-shadow:0 3px 0 var(--plum);transform:translateY(2px)}.kid-pills b{background:var(--cream);border-radius:50%;place-items:center;width:42px;height:42px;font-size:23px;display:grid}.notice{color:#84472f;background:#fff0e7;border-radius:15px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:13px 16px;font-weight:700;display:flex}.notice button{cursor:pointer;background:0 0;border:0;font-size:22px}.family-banner{border:3px solid var(--plum);min-height:116px;color:var(--ink);box-shadow:var(--shadow);background:#fff;border-radius:26px;justify-content:space-between;align-items:center;gap:24px;padding:22px 26px;display:flex;position:relative;overflow:hidden}.family-banner:after{content:"✦　·　✧　·　✦";color:#e9e0ff;pointer-events:none;font-size:25px;position:absolute;top:8%;right:29%;transform:rotate(-8deg)}.family-banner>div{z-index:1;align-items:center;gap:18px;display:flex;position:relative}.family-banner .eyebrow{color:var(--purple)}.family-banner h2{margin:0;font-size:clamp(23px,3.5vw,37px)}.banner-icon{border:3px solid var(--plum);background:#fff1c9;border-radius:19px;place-items:center;width:66px;height:66px;font-size:33px;display:grid}.fun-button{z-index:1;text-align:left;border:3px solid var(--plum);background:var(--purple);color:#fff;cursor:pointer;min-width:270px;box-shadow:0 5px 0 var(--plum);border-radius:20px;grid-template-columns:48px 1fr;padding:14px 18px;display:grid;position:relative}.fun-button>span{grid-row:1/3;align-self:center;font-size:30px}.fun-button strong{font-family:Nunito;font-size:16px}.fun-button small{color:#ffffffb8}.dashboard-layout{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:24px;margin-top:24px;display:grid}.family-board{grid-template-columns:1fr 1fr;gap:20px;margin:0;display:grid}.family-board.focused{grid-template-columns:minmax(0,1fr)}.kid-lane{border:3px solid var(--plum);box-shadow:var(--shadow);background:#fff;border-radius:28px;overflow:hidden}.kid-lane.ivy{background:linear-gradient(#fff0f7,#fff 25%)}.kid-lane.oliver{background:linear-gradient(#edf8ff,#fff 25%)}.kid-header{justify-content:space-between;align-items:center;padding:24px 26px 18px;display:flex}.kid-title{align-items:center;gap:15px;display:flex}.kid-avatar{border:3px solid var(--plum);background:#fff;border-radius:18px;place-items:center;width:58px;height:58px;font-size:30px;display:grid}.kid-title span:not(.kid-avatar){color:var(--muted);font-size:12px;font-weight:700}.kid-title h2{margin:0;font-size:31px;line-height:1}.star-count{border:3px solid var(--plum);background:var(--cream);min-width:72px;min-height:58px;box-shadow:0 4px 0 var(--plum);border-radius:20px;justify-content:center;align-items:center;gap:5px;padding:8px 11px;display:flex}.star-count strong{font-family:Nunito;font-size:24px}.star-count span{color:#ffbd2e;text-shadow:0 1px #b87700;font-size:22px}.skill-list{gap:10px;padding:0 16px 16px;display:grid}.skill-card{border:3px solid var(--plum);text-align:left;cursor:pointer;min-height:96px;box-shadow:0 6px 0 var(--plum);background:#fff;border-radius:22px;grid-template-columns:58px 1fr auto;align-items:center;gap:14px;padding:13px 15px;transition:transform .16s,box-shadow .16s;display:grid}.skill-card:active{transform:scale(.985)}.skill-card:hover{border-color:color-mix(in srgb, var(--kid) 44%, white)}.skill-card.complete{border-color:var(--plum);background:color-mix(in srgb, var(--kid) 10%, white);box-shadow:0 4px 0 var(--plum);transform:translateY(2px)}.skill-card.bonus{border-style:dashed}.skill-icon{border:3px solid var(--plum);background:color-mix(in srgb, var(--kid) 13%, white);width:56px;height:56px;color:var(--kid);border-radius:17px;place-items:center;font-size:29px;font-weight:900;display:grid}.skill-copy{gap:2px;display:grid}.skill-copy strong{font-family:Nunito;font-size:16px}.skill-copy small{color:var(--muted)}.mission-stars{gap:3px;margin-top:5px;display:flex}.mission-stars b{color:#ddd3ed;font-size:17px;line-height:1}.mission-stars b.earned{color:#ffbd2e;text-shadow:0 1px #b87700}.mission-check{border:3px solid var(--plum);color:#fff;background:#efe8ff;border-radius:50%;place-items:center;width:48px;height:48px;font-family:Nunito;font-size:28px;font-weight:900;display:grid}.skill-card.complete .mission-check{background:var(--purple)}.lane-foot{color:var(--muted);text-align:center;padding:12px 20px 16px;font-size:12px;font-weight:600}.kid-collection{border:3px solid var(--plum);background:color-mix(in srgb, var(--kid) 8%, #fffaf0);box-shadow:0 5px 0 var(--plum);border-radius:22px;gap:11px;margin:0 16px 17px;padding:13px;display:grid}.collection-today{grid-template-columns:78px 1fr auto;align-items:center;gap:12px;min-width:0;display:grid}.mystery-orb{border:3px solid var(--plum);background:radial-gradient(circle,#fff 25%,#e7ddff);border-radius:50%;width:76px;height:76px;position:relative;overflow:hidden}.character-shadow,.character-reveal{place-items:center;font-size:45px;display:grid;position:absolute;inset:0}.character-shadow{filter:grayscale()brightness(.35);opacity:.2}.character-reveal{clip-path:inset(calc(100% - var(--reveal)) 0 0 0);filter:drop-shadow(0 5px 6px #40315f38);transition:clip-path .6s cubic-bezier(.2,.8,.2,1)}.collection-copy{min-width:0}.collection-copy .eyebrow{margin-bottom:2px}.collection-copy h3{margin:0 0 6px;font-size:18px}.collection-copy small{color:var(--muted);margin-top:6px;font-size:10px;line-height:1.25;display:block}.reveal-meter{border:2px solid var(--plum);background:#fff;border-radius:999px;height:10px;overflow:hidden}.reveal-meter span{background:linear-gradient(90deg,#ff7eb6,#8365e8,#36b9d7);height:100%;transition:width .55s;display:block}.character-voice{border:2px solid var(--plum);cursor:pointer;background:#fff;border-radius:14px;place-items:center;width:42px;height:42px;display:grid}.collection-shelf{border-top:2px dashed #cfc2df;grid-template-columns:auto 1fr;align-items:center;gap:10px;padding-top:9px;display:grid}.collection-shelf>div:first-child{min-width:75px}.collection-shelf .eyebrow{margin:0;font-size:8px}.collection-shelf strong{font-size:11px}.collection-friends{justify-content:flex-end;gap:5px;min-width:0;display:flex}.collection-friends>span{border:2px solid var(--plum);background:#fff;border-radius:11px;place-items:center;width:34px;height:34px;font-size:20px;display:grid}.collection-friends small{color:var(--muted);font-size:10px}.kid-collection.large{grid-template-columns:minmax(0,1.15fr) minmax(250px,.85fr);padding:17px}.kid-collection.large .collection-shelf{border-top:0;border-left:2px dashed #cfc2df;grid-template-columns:1fr;align-content:center;padding:0 0 0 17px}.kid-collection.large .collection-friends{justify-content:flex-start}.kid-collection.finished .mystery-orb{background:radial-gradient(circle,#fff8c9 10%,#f0e6ff 70%);box-shadow:0 0 0 7px #ffc8382e}.kid-collection.finished .character-reveal{animation:.8s cubic-bezier(.2,.9,.3,1.25) character-hello}@keyframes character-hello{0%{transform:scale(.35)rotate(-14deg)}55%{transform:scale(1.2)rotate(8deg)}75%{transform:scale(.95)rotate(-4deg)}to{transform:scale(1)rotate(0)}}.dashboard-rail{gap:18px;display:grid;position:sticky;top:18px}.kindness-garden{border:3px solid var(--plum);box-shadow:var(--shadow);background:#fffdf3;border-radius:27px;padding:18px;overflow:hidden}.kindness-garden>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.kindness-garden h2{margin:0;font-size:23px}.kindness-garden>header>strong{border:2px solid var(--plum);white-space:nowrap;background:#fff;border-radius:999px;padding:7px 9px;font-size:11px}.garden-scene{border:3px solid var(--plum);background:url(/lifeskills/characters/kindness-pond-world.jpg) 50% 68%/cover no-repeat;border-radius:20px;height:145px;margin:13px 0;position:relative;overflow:hidden}.garden-sun{filter:drop-shadow(0 3px 4px #ffb4004d);font-size:28px;position:absolute;top:12px;right:17px}.garden-ground{border-top:3px solid var(--plum);background:linear-gradient(#76bf68,#498c49);height:35%;position:absolute;inset:auto 0 0}.garden-preview .garden-sun,.garden-preview .garden-ground{display:none}.garden-blooms{z-index:2;flex-wrap:wrap-reverse;justify-content:center;align-items:end;gap:0 2px;display:flex;position:absolute;inset:auto 8px 19px}.garden-blooms>span{text-align:center;transform-origin:bottom;filter:drop-shadow(0 3px 2px #26532a38);width:30px;font-size:25px;line-height:1;animation:.55s cubic-bezier(.2,.9,.2,1.2) both flower-grow;display:inline-block}.garden-blooms>span:nth-child(3n){transform:translateY(8px)rotate(5deg)}.garden-blooms>span:nth-child(4n){transform:translateY(3px)rotate(-6deg)scale(.88)}.garden-seed{font-size:32px!important}@keyframes flower-grow{0%{opacity:0;translate:0 14px;scale:.15}to{opacity:1;translate:0;scale:1}}.kindness-garden>button{border:3px solid var(--plum);text-align:left;cursor:pointer;background:#fff;border-radius:17px;grid-template-columns:36px 1fr;width:100%;min-height:65px;padding:9px 11px;display:grid}.kindness-garden>button>span{grid-row:1/3;align-self:center;font-size:23px}.kindness-garden>button strong{font-family:Nunito;font-size:13px}.kindness-garden>button small{color:var(--muted);font-size:10px}.kindness-garden>button.planted{background:#f2ffe9}footer{color:#9a94a5;text-align:center;padding:26px 0 0;font-size:12px;font-weight:700}.kid-schedule{border:3px solid var(--plum);box-shadow:var(--shadow);background:#fff;border-radius:28px;grid-template-columns:320px minmax(0,1fr);gap:18px;margin-top:24px;padding:18px;display:grid}.next-card{border:3px solid var(--plum);background:color-mix(in srgb, var(--kid) 13%, white);min-height:176px;box-shadow:0 5px 0 var(--plum);border-radius:22px;grid-row:1/3;grid-template-columns:64px 1fr;align-content:center;gap:4px 14px;padding:21px;display:grid}.next-card .eyebrow{color:var(--kid);grid-column:1/-1}.next-card>span{border:3px solid var(--plum);background:#fff;border-radius:18px;grid-row:2/4;place-items:center;width:62px;height:62px;font-size:32px;display:grid}.next-card h2{margin:2px 0 0;font-size:24px}.next-card p:last-child{color:var(--muted);margin:3px 0 0;font-weight:700}.schedule-heading{justify-content:space-between;align-items:end;gap:15px;display:flex}.schedule-heading h2{margin:0}.schedule-heading small{color:var(--muted);text-align:right}.schedule-strip{scrollbar-color:#a995cf transparent;gap:10px;min-width:0;padding:3px 3px 10px;display:flex;overflow-x:auto}.schedule-strip article{opacity:.7;background:#fff;border:2px solid #d9d0e6;border-radius:17px;flex:0 0 145px;grid-template-columns:36px 1fr;align-content:center;min-height:92px;padding:11px;display:grid}.schedule-strip article>span{grid-row:1/3;align-self:center;font-size:26px}.schedule-strip article strong{font-family:Nunito;font-size:13px;line-height:1.1}.schedule-strip article small{color:var(--muted);margin-top:3px;font-size:10px}.schedule-strip article.current{border:3px solid var(--plum);opacity:1;box-shadow:0 4px 0 var(--plum);background:#fff6d7}.schedule-strip article.past{opacity:.42}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#241d3699;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal{background:#fffaf4;border-radius:28px;width:min(650px,100%);max-height:calc(100dvh - 36px);padding:24px;overflow:auto;box-shadow:0 30px 90px #1a132e61}.modal.wide{width:min(1000px,100%)}.modal-head{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#fffaf4f5;justify-content:space-between;align-items:flex-start;gap:20px;margin:-24px -24px 18px;padding:22px 24px 16px;display:flex;position:sticky;top:-24px}.modal-head h2{margin:0;font-size:27px}.icon-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:16px;place-items:center;width:48px;height:48px;font-size:27px;display:grid}.grownup-lock{text-align:center;gap:13px;display:grid}.grownup-lock>p{color:var(--muted);margin:0 0 4px}.grownup-lock-word{justify-content:center;gap:6px;display:flex}.grownup-lock-word span{border:3px solid var(--plum);width:42px;height:48px;box-shadow:0 4px 0 var(--plum);color:var(--plum);background:#fff3bd;border-radius:12px;place-items:center;font-family:Nunito;font-size:22px;font-weight:1000;display:grid}.grownup-lock label{text-align:left;font-weight:900}.grownup-lock input{width:100%;height:58px;color:var(--plum);letter-spacing:.14em;text-align:center;text-transform:uppercase;background:#fff;border:3px solid #d8cee7;border-radius:16px;padding:10px 15px;font-family:Nunito;font-size:24px;font-weight:1000}.grownup-lock input:focus{border-color:#8160e0;outline:4px solid #8160e033}.grownup-lock .lock-error{color:#b5485c;margin:-3px 0 0;font-weight:900}.checkin-steps{gap:12px;margin-bottom:18px;display:grid}.checkin-step{border:1px solid var(--line);background:#fff;border-radius:20px;padding:16px}.step-name{grid-template-columns:42px 1fr 48px;align-items:center;gap:10px;margin-bottom:13px;display:grid}.step-name>span{font-size:28px}.step-name strong{font-family:Nunito;font-size:18px}.listen{border:1px solid var(--line);cursor:pointer;background:#f7f4fb;border-radius:15px;width:48px;min-width:48px;height:48px}.status-buttons{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.status-buttons button{border:1px solid var(--line);color:#655f70;cursor:pointer;background:#fbfafc;border-radius:14px;min-height:53px;padding:8px;font-size:12px;font-weight:700}.status-buttons button span{margin-bottom:2px;font-size:18px;display:block}.status-buttons button.selected{color:#523d98;background:#eee8ff;border-color:#8b6ddb;box-shadow:inset 0 0 0 1px #8b6ddb}.bonus-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.bonus-grid button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#ffffffd9;border-radius:15px;grid-template-columns:35px 1fr;min-height:65px;padding:9px;display:grid}.bonus-grid button>span{grid-row:1/3;align-self:center;font-size:22px}.bonus-grid strong{font-size:12px}.bonus-grid small{color:var(--muted);font-size:10px}.bonus-grid button.selected{border-color:color-mix(in srgb, var(--kid) 60%, white);background:color-mix(in srgb, var(--kid) 10%, white);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--kid) 50%, white)}.machine{gap:16px;display:grid}.machine-controls{grid-template-columns:1fr 1fr;gap:10px;display:grid}.machine fieldset{border:1px solid var(--line);background:#fff;border-radius:17px;min-width:0;margin:0;padding:12px}.machine legend{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;padding:0 6px;font-size:11px;font-weight:800}.machine fieldset>div{flex-wrap:wrap;gap:6px;display:flex}.machine fieldset button{border:1px solid var(--line);cursor:pointer;background:#faf9fc;border-radius:12px;flex:1;min-width:70px;min-height:46px;padding:8px;font-size:12px;font-weight:700}.machine fieldset button.selected{color:#563f99;background:#eee8ff;border-color:#8a6ed5}.slot-lever{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f064a7,#8a5ade 55%,#3d91cf);border:0;border-radius:23px;width:100%;min-height:73px;font-family:Nunito;font-size:20px;font-weight:900;box-shadow:0 14px 30px #6f4bb847}.slot-lever span{margin-right:10px;font-size:26px;display:inline-block}.slot-lever.spinning span{animation:.5s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.activity-results{grid-template-columns:1fr 1fr;gap:12px;min-height:0;display:grid}.activity-results.is-spinning{min-height:148px;display:block}.reels{background:#f4efff;border:2px dashed #baa9e6;border-radius:22px;justify-content:center;align-items:center;gap:28px;height:148px;font-size:46px;display:flex;overflow:hidden}.reels span{animation:.35s ease-in-out infinite alternate bob}.reels span:nth-child(2){animation-delay:.12s}.reels span:nth-child(3){animation-delay:.24s}@keyframes bob{to{transform:translateY(-18px)rotate(8deg)}}.activity-card{border:1px solid var(--line);background:#fff;border-radius:22px;grid-template-columns:58px 1fr 48px;gap:10px;min-height:150px;padding:16px;display:grid;box-shadow:0 8px 20px #35264e12}.activity-icon{background:#f3edff;border-radius:18px;place-items:center;width:56px;height:56px;font-size:32px;display:grid}.activity-card h3{margin:3px 0 4px}.activity-card p{color:#595466;margin-bottom:8px;font-size:13px;line-height:1.4}.activity-card small{color:#867f91;font-weight:700}.activity-card .listen{align-self:start}.machine-note{color:var(--muted);text-align:center;margin:0;font-size:13px;font-weight:700}.signin,.loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100dvh;padding:30px;display:flex}.signin-art{gap:0;margin-bottom:18px;display:flex}.signin-art span{width:84px;height:84px;box-shadow:var(--shadow);background:#fff;border:5px solid #fff9f1;border-radius:50%;place-items:center;margin:0 -5px;font-size:44px;display:grid}.signin-art span:nth-child(2){transform:translateY(-15px)}.signin h1{letter-spacing:-.05em;margin:0;font-size:clamp(42px,9vw,72px)}.signin>p:not(.eyebrow){color:var(--muted);font-size:18px}.signin .primary{min-width:260px;margin:12px 0}.signin>small{color:#928c98}.private-lock{border:5px solid var(--plum);width:96px;height:96px;box-shadow:0 7px 0 var(--plum);background:#fff4bb;border-radius:30px;place-items:center;margin-bottom:18px;font-size:45px;display:grid;transform:rotate(-2deg)}.private-family-space>small{margin:4px 0 8px}.loading span{font-size:38px;animation:1.2s linear infinite spin}.loading p{color:var(--muted);margin-top:12px;font-weight:700}.toast.error{color:#fff;background:#8a3e3e;border-radius:14px;padding:12px 18px;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.modal{border:3px solid var(--plum);box-shadow:0 10px 0 var(--plum), 0 30px 90px #1a132e61}.modal-head{border-bottom:3px solid var(--plum)}.icon-button,.listen{border:3px solid var(--plum)}.mission-done-toggle{border:3px solid var(--plum);text-align:left;cursor:pointer;width:100%;min-height:88px;box-shadow:0 5px 0 var(--plum);background:#fff;border-radius:21px;grid-template-columns:58px 1fr;align-items:center;gap:14px;padding:14px;display:grid}.mission-done-toggle>span{border:3px solid var(--plum);color:#fff;background:#efe8ff;border-radius:50%;place-items:center;width:52px;height:52px;font-family:Nunito;font-size:29px;display:grid}.mission-done-toggle.complete{background:#f0ecff}.mission-done-toggle.complete>span{background:var(--purple)}.mission-done-toggle strong{font-family:Nunito;font-size:20px;display:block}.mission-done-toggle small{color:var(--muted)}.mission-includes{gap:8px;margin:22px 0;display:grid}.mission-includes>div{background:#fff;border:2px solid #ded4eb;border-radius:16px;grid-template-columns:46px 34px 1fr 48px;align-items:center;gap:10px;padding:10px 12px;display:grid}.mission-includes>div.complete{border-color:var(--purple);background:#f0ecff}.mission-includes>div>span{font-size:23px}.subtask-check{border:3px solid var(--plum);color:#fff;cursor:pointer;background:#efe8ff;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;font-family:Nunito;font-size:24px;font-weight:1000;display:grid}.subtask-check[aria-pressed=true]{background:var(--purple);box-shadow:0 3px 0 var(--plum)}.mission-bonuses{border:3px solid var(--plum);background:#fff8dc;border-radius:21px;margin-bottom:20px;padding:16px}.mission-bonuses.disabled{opacity:.48}.mission-bonuses h3{margin:0 0 12px}.mission-bonus-grid{grid-template-columns:repeat(3,1fr)}.mission-bonus-grid button{border:2px solid var(--plum)}.mission-bonus-grid button.selected{border-color:var(--plum);box-shadow:0 3px 0 var(--plum);background:#eae3ff}.bonus-grid button{border-width:2px;border-color:var(--plum)}.primary{border:3px solid var(--plum);background:var(--purple);box-shadow:0 5px 0 var(--plum)}.family-dock{z-index:20;border:3px solid var(--plum);background:var(--plum);border-radius:28px;gap:8px;padding:10px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #40315f47}.family-dock button{color:#d9cfee;cursor:pointer;background:0 0;border:0;border-radius:18px;min-width:125px;min-height:54px;padding:10px 16px;font-weight:800}.family-dock button.active{background:var(--purple);color:#fff}.family-dock span{margin-left:5px}.admin-page{width:min(1180px,100% - 48px);margin:0 auto;padding:34px 0 70px}.admin-head{border:3px solid var(--plum);box-shadow:var(--shadow);background:#fff;border-radius:28px;justify-content:space-between;align-items:center;gap:22px;margin-bottom:24px;padding:24px 26px;display:flex}.admin-head h1{margin:0;font-size:clamp(34px,5vw,54px)}.admin-head p:last-child{color:var(--muted);margin:7px 0 0}.admin-head>div:last-child{align-items:center;gap:8px;display:flex}.admin-head .quiet-button{border:2px solid var(--plum);background:#fff;border-radius:15px;min-height:48px;padding:10px 15px;font-weight:800}.admin-section{border:3px solid var(--plum);box-shadow:0 6px 0 var(--plum);background:#fff;border-radius:26px;margin-top:20px;padding:22px}.admin-title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.admin-title h2{margin:0;font-size:28px}.admin-title>select,.admin-tabs button,.add-button{border:2px solid var(--plum);cursor:pointer;background:#fff;border-radius:14px;min-height:45px;padding:9px 13px;font-weight:800}.admin-tabs{gap:7px;display:flex}.admin-tabs button.selected{background:var(--plum);color:#fff}.admin-help{color:var(--muted);font-size:13px}.admin-mission-list,.admin-schedule-list,.exception-list,.special-list{gap:9px;display:grid}.admin-mission-row{grid-template-columns:62px 1fr 1.5fr 86px 105px;gap:8px;display:grid}.admin-mission-row input,.admin-schedule-row input,.admin-schedule-row select,.special-list input,.special-list select,.exception-list select{min-width:0;height:47px;color:var(--ink);background:#fff;border:2px solid #d8cee7;border-radius:13px;padding:9px 11px}.admin-mission-row>input:first-child,.admin-schedule-row>input:first-child,.special-list input[aria-label="Special mission icon"]{text-align:center;font-size:22px}.admin-mission-row label{border:2px solid #d8cee7;border-radius:13px;justify-content:center;align-items:center;gap:5px;min-height:47px;font-weight:800;display:flex}.admin-mission-row label input{width:18px;height:18px}.admin-schedule-row{grid-template-columns:62px 1.35fr 125px 1fr 110px 47px;gap:8px;display:grid}.remove-button{color:#aa4c57;cursor:pointer;background:#fff4f4;border:2px solid #e5a8ae;border-radius:13px;width:47px;height:47px;font-size:24px}.add-button{color:var(--purple)}.care-alert{background:#fff8dc;border:2px solid #f1c561;border-radius:16px;grid-template-columns:48px 1fr;gap:11px;margin-bottom:13px;padding:13px;display:grid}.care-alert>span{font-size:28px}.care-alert strong,.care-alert small{display:block}.care-alert small{color:var(--muted);margin-top:2px}.exception-list article{border:2px solid #e0d7ea;border-radius:15px;justify-content:space-between;align-items:center;gap:15px;padding:12px 14px;display:flex}.exception-list strong,.exception-list small{display:block}.exception-list small{color:var(--muted);margin-top:3px}.special-list article{grid-template-columns:150px 110px 62px 1fr 1fr 47px;gap:8px;display:grid}@media (width<=820px){.app-shell{width:min(100% - 24px,680px);padding-top:20px}.dashboard-layout,.family-board{grid-template-columns:1fr}.dashboard-rail{position:static}.family-banner{flex-direction:column;align-items:stretch}.fun-button{width:100%;min-width:0}.machine-controls,.activity-results,.kid-schedule,.kid-collection.large{grid-template-columns:1fr}.kid-collection.large .collection-shelf{border-top:2px dashed #cfc2df;border-left:0;padding:10px 0 0}.next-card{grid-row:auto}.admin-head{flex-direction:column;align-items:stretch}.admin-head>div:last-child{justify-content:flex-end}.admin-schedule-row{grid-template-columns:58px 1fr 115px 47px}.admin-schedule-row input[aria-label="Schedule time label"],.admin-schedule-row select{grid-column:span 2}.special-list article{grid-template-columns:1fr 1fr 58px 47px}.special-list input[aria-label="Special mission title"],.special-list input[aria-label="Special mission note"]{grid-column:span 2}}@media (width<=540px){.topbar{flex-direction:column;align-items:stretch}.header-right{align-items:stretch}.kid-pills{gap:6px;width:100%}.kid-pills>button{flex:1;gap:4px;min-width:0;padding:7px 5px 9px;font-size:13px}.kid-pills b{width:32px;height:32px;font-size:17px}.top-actions{flex-direction:column;align-items:flex-end}.sync-state{display:none}.family-banner{border-radius:24px;padding:22px 20px}.family-banner>div{align-items:flex-start}.banner-icon{border-radius:18px;width:55px;height:55px;font-size:28px}.kid-header{padding:20px 18px 15px}.day-voice{width:46px;height:46px;font-size:20px}.kid-lane{border-radius:24px}.skill-list{padding:0 10px 12px}.kid-collection{margin:0 10px 16px;padding:11px}.collection-today{grid-template-columns:66px 1fr auto;gap:9px}.mystery-orb{width:64px;height:64px}.character-shadow,.character-reveal{font-size:38px}.collection-copy small{display:none}.collection-friends>span{width:31px;height:31px;font-size:18px}.skill-card{grid-template-columns:48px 1fr auto;padding:10px}.skill-icon{width:46px;height:46px;font-size:24px}.mission-check{width:42px;height:42px}.modal-backdrop{align-items:end;padding:0}.modal,.modal.wide{border-radius:26px 26px 0 0;width:100%;max-height:94dvh;padding:18px}.modal-head{margin:-18px -18px 14px;padding:18px;top:-18px}.status-buttons{gap:5px}.status-buttons button{padding:6px 3px}.bonus-grid{grid-template-columns:1fr}.activity-card{grid-template-columns:50px 1fr 48px}.mission-bonus-grid{grid-template-columns:1fr}.family-dock{width:calc(100% - 24px);bottom:10px}.family-dock button{flex:1;min-width:0;padding:8px 6px}.family-dock span{margin:2px 0 0;font-size:10px;display:block}.admin-page{width:min(100% - 24px,520px);padding-top:16px}.admin-head,.admin-section{border-radius:22px;padding:16px}.admin-head>div:last-child,.admin-title{flex-direction:column;align-items:stretch}.admin-mission-row{grid-template-columns:55px 1fr 80px}.admin-mission-row input[aria-label=Mission\ description]{grid-column:1/-1}.admin-schedule-row{grid-template-columns:55px 1fr 47px}.admin-schedule-row input[aria-label=Schedule\ time],.admin-schedule-row input[aria-label="Schedule time label"],.admin-schedule-row select{grid-column:span 1}.admin-schedule-row input[aria-label="Schedule time label"]{grid-column:1/3}.exception-list article{flex-direction:column;align-items:stretch}.special-list article{grid-template-columns:1fr 1fr 47px}.special-list input[aria-label="Special mission icon"]{grid-area:1/3}.special-list .remove-button{grid-area:2/3}.special-list input[aria-label="Special mission title"],.special-list input[aria-label="Special mission note"]{grid-column:1/3}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.personal-dashboard{grid-template-columns:minmax(0,1fr) 390px}.together-dashboard{grid-template-columns:minmax(0,1fr) 340px}.task-column{gap:20px;min-width:0;display:grid}.task-column>.kid-schedule{margin-top:0}.delight-column{width:100%}.mission-count{border:3px solid var(--plum);background:var(--cream);text-align:center;min-width:76px;box-shadow:0 4px 0 var(--plum);border-radius:18px;padding:8px 12px;display:grid}.mission-count strong{font-family:Nunito;font-size:23px;line-height:1}.mission-count span{color:var(--muted);margin-top:3px;font-size:10px;font-weight:800}.friend-card{border:3px solid var(--plum);background:color-mix(in srgb, var(--kid) 7%, white);box-shadow:var(--shadow);border-radius:28px;margin:0;padding:18px;display:block}.friend-card>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.friend-card>header h2{margin:0;font-size:28px}.friend-card>header>strong{border:3px solid var(--plum);background:#fff;border-radius:999px;place-items:center;min-width:58px;height:42px;padding:0 9px;font-family:Nunito;font-size:17px;display:grid}.friend-stage{aspect-ratio:1/.92;border:3px solid var(--plum);background:radial-gradient(circle at 50% 45%,#fffbe5 0 31%,#e9deff 73%,#d8c8fa);border-radius:23px;width:100%;margin:14px 0 12px;position:relative;overflow:hidden}.friend-art{filter:drop-shadow(0 12px 8px #40315f38);background-repeat:no-repeat;background-size:200% 200%;position:absolute;inset:5%}.reveal-cover{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(3,1fr);display:grid;position:absolute;inset:0}.reveal-cover span{background:linear-gradient(145deg,#64517b,#3d315a);border:1px solid #ffffff1c;margin:-1px;transition:opacity .55s,transform .55s cubic-bezier(.2,.85,.25,1)}.reveal-cover span:nth-child(3n+1){background:linear-gradient(145deg,#705b87,#453763)}.reveal-cover span.gone{opacity:0;pointer-events:none;transform:scale(.25)rotate(10deg)}.reveal-sparkles{color:#ffffffbf;letter-spacing:.55em;text-align:center;text-shadow:0 2px 0 var(--plum);pointer-events:none;font-size:25px;position:absolute;inset:15px 18px auto}.friend-talk{border:3px solid var(--plum);width:auto;height:46px;box-shadow:0 4px 0 var(--plum);background:#fff4bb;border-radius:15px;align-items:center;gap:6px;padding:0 12px;font-weight:900;display:flex;position:absolute;bottom:13px;right:13px}.friend-talk span{font-size:11px}.friend-card.finished .friend-stage{background:radial-gradient(circle at 50% 45%,#fffbe5 0 28%,#f6d7ff 68%,#d7f5ff);box-shadow:0 0 0 7px #ffbe2d2e}.friend-card.finished .friend-art{animation:1s cubic-bezier(.2,.9,.25,1.2) friend-arrives}@keyframes friend-arrives{0%{opacity:.25;transform:scale(.45)rotate(-9deg)}55%{transform:scale(1.08)rotate(4deg)}75%{transform:scale(.96)rotate(-2deg)}to{opacity:1;transform:scale(1)}}.friend-hint{color:var(--muted);margin:7px 2px 14px;font-size:11px;font-weight:700;display:block}.friend-card .collection-shelf{padding-top:13px}.friend-card .collection-friends{flex-wrap:wrap}.friend-thumb,.legacy-friend{border:2px solid var(--plum);background-color:#fff;background-repeat:no-repeat;background-size:200% 200%;border-radius:14px;place-items:center;width:46px;height:46px;font-size:19px;display:grid;overflow:hidden}.collection-friends>.friend-thumb{background-color:#fff;background-repeat:no-repeat;background-size:200% 200%;border-radius:14px;width:46px;height:46px;font-size:0}.bright-spots{border:3px solid var(--plum);box-shadow:var(--shadow);background:#fffaf0;border-radius:27px;padding:18px}.bright-spots>header{justify-content:space-between;align-items:center;display:flex}.bright-spots h2{margin:0;font-size:26px}.bright-spots>header>span{font-size:28px}.bright-spots>p{color:var(--muted);margin:7px 0 13px;font-size:12px;line-height:1.4}.bright-spot-list{gap:8px;display:grid}.bright-spot-list button{border:3px solid var(--plum);text-align:left;cursor:pointer;background:#fff;border-radius:17px;grid-template-columns:44px 1fr;align-items:center;width:100%;min-height:62px;padding:9px 11px;display:grid}.bright-spot-list button>span{background:color-mix(in srgb, var(--kid) 12%, white);border-radius:12px;place-items:center;width:38px;height:38px;font-size:21px;display:grid}.bright-spot-list strong,.bright-spot-list small{display:block}.bright-spot-list small{color:var(--muted);font-size:10px}.bright-spot-list button.selected{background:color-mix(in srgb, var(--kid) 12%, white);box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--kid) 35%, white)}.family-missions{border:3px solid var(--plum);box-shadow:var(--shadow);background:#fff;border-radius:26px;grid-template-columns:minmax(200px,.65fr) 1fr;gap:14px;padding:18px;display:grid}.family-missions>header{justify-content:space-between;align-items:center;gap:15px;padding:7px 9px;display:flex}.family-missions h2{margin:0}.family-missions>header>span{font-size:28px}.family-missions>button{border:3px solid var(--plum);text-align:left;cursor:pointer;background:#fff;border-radius:19px;grid-template-columns:48px 1fr;align-items:center;min-height:77px;padding:11px 14px;display:grid}.family-missions>button>span{background:#f0e9ff;border-radius:14px;place-items:center;width:42px;height:42px;font-size:23px;display:grid}.family-missions>button strong,.family-missions>button small{display:block}.family-missions>button small{color:var(--muted)}.family-missions>button.complete{background:#edf9f4}.finish-day{border:3px solid var(--plum);background:var(--coral);color:#fff;text-align:left;width:100%;min-height:84px;box-shadow:0 6px 0 var(--plum);cursor:pointer;border-radius:22px;grid-template-columns:48px 1fr auto;align-items:center;gap:11px;padding:15px 18px;display:grid}.finish-day>span{font-size:29px}.finish-day strong,.finish-day small{display:block}.finish-day strong{font-family:Nunito;font-size:19px}.finish-day small{color:#fffc}.finish-day>b{font-size:26px}.family-finish{background:var(--purple)}.celebration-toast{z-index:80;border:3px solid var(--plum);box-shadow:0 6px 0 var(--plum);background:#fff4ba;border-radius:17px;padding:14px 22px;font-family:Nunito;font-weight:900;animation:.45s cubic-bezier(.2,.9,.3,1.2) toast-pop;position:fixed;top:24px;left:50%;transform:translate(-50%)}@keyframes toast-pop{0%{opacity:0;transform:translate(-50%,-20px)scale(.8)}}.garden-preview{width:100%;color:var(--ink);text-align:left;cursor:pointer}.garden-preview>header{pointer-events:none}.garden-open{border:3px solid var(--plum);background:#fff;border-radius:17px;grid-template-columns:36px 1fr auto;align-items:center;width:100%;min-height:64px;padding:9px 11px;display:grid}.garden-open>span{grid-row:1/3;font-size:23px}.garden-open strong,.garden-open small{display:block}.garden-open small{color:var(--muted);font-size:10px}.garden-open b{grid-area:1/3/3;font-size:22px}.family-note{border:3px solid var(--plum);box-shadow:var(--shadow);background:linear-gradient(150deg,#ede5ff,#fff 65%);border-radius:27px;padding:22px}.family-note>span{float:right;font-size:31px}.family-note h2{margin:0 0 8px}.family-note>p:last-of-type{color:var(--muted);line-height:1.45}.family-note button{border:3px solid var(--plum);cursor:pointer;background:#fff;border-radius:15px;width:100%;min-height:48px;margin-top:8px;font-weight:900}.garden-page{width:min(1180px,100% - 48px);margin:0 auto;padding:28px 0 70px}.garden-page-head{border:3px solid var(--plum);box-shadow:var(--shadow);background:#fff;border-radius:28px;grid-template-columns:120px 1fr auto;align-items:center;gap:22px;margin-bottom:20px;padding:22px;display:grid}.garden-page-head h1{margin:0;font-size:clamp(36px,5vw,58px)}.garden-page-head p:last-child{color:var(--muted);margin:5px 0 0}.garden-page-head>strong{border:3px solid var(--plum);background:#fff4bb;border-radius:999px;padding:10px 14px}.garden-back{border:3px solid var(--plum);min-height:48px;box-shadow:0 4px 0 var(--plum);cursor:pointer;background:#fff;border-radius:16px;font-weight:900}.garden-world{border:3px solid var(--plum);height:470px;box-shadow:var(--shadow);background:linear-gradient(#afe3ff 0 67%,#9ed97f 67%);border-radius:32px;position:relative;overflow:hidden}.garden-sky{position:absolute;inset:0}.big-sun{filter:drop-shadow(0 7px 5px #ad6c002e);font-size:72px;position:absolute;top:7%;right:7%}.cloud{color:#fff;opacity:.82;filter:drop-shadow(0 4px #40315f1f);font-size:70px;position:absolute}.cloud.one{top:12%;left:8%}.cloud.two{top:25%;right:26%;scale:.72}.garden-tree{z-index:2;width:560px;height:390px;position:absolute;bottom:44px;left:50%;transform:translate(-50%)}.tree-crown{z-index:2;border:3px solid var(--plum);box-shadow:inset -18px -20px 0 #266a3521, 0 8px 0 var(--plum);background:radial-gradient(circle at 35% 32%,#bce989,#58aa54 68%,#368a48);border-radius:48% 52% 46% 54%;position:absolute;inset:0 0 90px}.tree-crown:before,.tree-crown:after{content:"";border:3px solid var(--plum);background:#6ab85a;border-radius:50%;width:58%;height:58%;position:absolute}.tree-crown:before{top:26%;left:-17%}.tree-crown:after{top:22%;right:-16%}.tree-crown button{z-index:4;left:var(--x);top:var(--y);filter:drop-shadow(0 3px 2px #224b2647);cursor:pointer;width:48px;height:48px;animation:bloom-in .6s var(--delay) both cubic-bezier(.2,.9,.2,1.2);background:0 0;border:0;padding:0;font-size:39px;position:absolute;transform:translate(-50%,-50%)}.tree-crown button.selected{filter:drop-shadow(0 0 6px #fff)drop-shadow(0 4px 2px #224b2647);scale:1.25}@keyframes bloom-in{0%{opacity:0;transform:translate(-50%,-30%)scale(.2)rotate(-18deg)}}.tree-trunk{z-index:1;border:3px solid var(--plum);background:linear-gradient(90deg,#9b6538,#c98a4c 45%,#8c5a35);border-radius:40% 40% 18px 18px;width:88px;height:150px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.garden-meadow{border-top:3px solid var(--plum);background:linear-gradient(#74bd5b,#3e934d);height:29%;position:absolute;inset:auto 0 0}.garden-panels{grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;display:grid}.kindness-memory,.plant-kindness{border:3px solid var(--plum);min-height:300px;box-shadow:var(--shadow);background:#fff;border-radius:27px;padding:23px}.kindness-memory blockquote{color:var(--plum);margin:28px 0;font-family:Nunito;font-size:clamp(23px,3vw,34px);font-weight:800;line-height:1.25}.memory-cluster-bar{background:#f8f4ff;border:2px solid #d8c8fa;border-radius:15px;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:9px 10px;display:flex}.memory-cluster-bar>div{justify-items:start;gap:3px;display:grid}.memory-cluster-bar small{color:var(--muted);font-size:10px;font-weight:800}.memory-cluster-bar nav{gap:6px;display:flex}.memory-cluster-bar nav button{border:2px solid var(--plum);width:38px;height:38px;color:var(--plum);cursor:pointer;background:#fff;border-radius:12px;font-weight:900}.memory-meta{grid-template-columns:46px 1fr 52px;align-items:center;gap:10px;display:grid}.memory-meta>span{grid-row:1/3;font-size:31px}.kindness-memory strong,.kindness-memory small{display:block}.kindness-memory small{color:var(--muted)}.memory-meta>button{border:3px solid var(--plum);cursor:pointer;background:#fff4bb;border-radius:15px;grid-area:1/3/3;width:50px;height:50px}.plant-kindness h2{margin-bottom:16px}.plant-kindness label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;gap:5px;font-size:11px;font-weight:900;display:grid}.plant-kindness select{border:3px solid var(--plum);height:48px;color:var(--ink);background:#fff;border-radius:14px;padding:8px 12px}.kindness-input{margin:12px 0;position:relative}.kindness-input textarea{resize:vertical;border:3px solid var(--plum);width:100%;min-height:104px;color:var(--ink);font:inherit;border-radius:17px;padding:13px 58px 13px 13px}.kindness-input button{border:3px solid var(--plum);cursor:pointer;background:#efe7ff;border-radius:13px;width:42px;height:42px;position:absolute;top:9px;right:9px}.kindness-input button.listening{background:#ffced7;animation:1s infinite alternate listening}.mic-status{min-height:18px;color:var(--muted);margin:-4px 2px 10px;font-size:11px;line-height:1.35;display:block}.mic-status.listening{color:#b52d56;font-weight:900}@keyframes listening{to{transform:scale(1.1);box-shadow:0 0 0 6px #ff5b7629}}@media (width<=980px){.personal-dashboard,.together-dashboard{grid-template-columns:1fr}.delight-column{position:static}.garden-page-head{grid-template-columns:105px 1fr}.garden-page-head>strong{grid-column:2;width:fit-content}}@media (width<=680px){.family-missions,.garden-panels{grid-template-columns:1fr}.friend-stage{aspect-ratio:1/.9}.garden-page{width:min(100% - 24px,560px);padding-top:16px}.garden-page-head{grid-template-columns:1fr;padding:17px}.garden-page-head>strong{grid-column:1}.garden-world{height:390px}.garden-tree{width:390px;height:320px}.tree-crown button{width:42px;height:42px;font-size:33px}.big-sun{font-size:54px}.cloud{font-size:48px}}.visit-world{border:2px solid var(--plum);width:100%;min-height:50px;color:var(--plum);text-align:left;cursor:pointer;background:#f0e8ff;border-radius:15px;grid-template-columns:32px 1fr auto;align-items:center;padding:9px 12px;display:grid}.visit-world span{font-size:20px}.visit-world strong{font-family:Nunito;font-size:13px}.visit-world b{font-size:20px}.friend-world-page{background:#f8f0e3;min-height:100dvh;padding:28px max(24px,50vw - 620px) 60px}.friend-world-head{border:3px solid var(--plum);box-shadow:var(--shadow);background:#fffffff0;border-radius:27px;grid-template-columns:120px 1fr auto;align-items:center;gap:22px;margin-bottom:18px;padding:20px 22px;display:grid}.friend-world-head h1{margin:0;font-size:clamp(34px,5vw,56px)}.friend-world-head p:last-child{color:var(--muted);margin:5px 0 0}.friend-world-head>strong{border:3px solid var(--plum);background:#fff4bb;border-radius:999px;padding:9px 13px}.friend-world-scene{aspect-ratio:16/9;border:4px solid var(--plum);width:100%;box-shadow:0 9px 0 var(--plum), 0 24px 50px #40315f33;background-position:50%;background-size:cover;border-radius:32px;position:relative;overflow:hidden}.world-friend{z-index:2;aspect-ratio:1;transform-origin:50% 85%;cursor:pointer;filter:drop-shadow(0 10px 7px #2d263940);background:0 0;border:0;width:17%;padding:0;position:absolute;transform:translate(-50%,-50%)}.world-friend-sprite{background-color:#0000;background-repeat:no-repeat;background-size:200% 200%;position:absolute;inset:0}.world-friend strong{border:2px solid var(--plum);color:var(--plum);white-space:nowrap;background:#ffffffeb;border-radius:999px;padding:5px 10px;font-family:Nunito;font-size:clamp(11px,1.4vw,18px);position:absolute;bottom:-4%;left:50%;transform:translate(-50%)}.world-friend i{border:2px solid var(--plum);opacity:0;background:#fff;border-radius:50%;place-items:center;width:30px;height:30px;font-style:normal;transition:opacity .2s;display:grid;position:absolute;top:6%;right:4%}.world-friend:hover i,.world-friend:focus-visible i{opacity:1}.ivy .world-friend.spot-1{top:56%;left:35%}.ivy .world-friend.spot-2{top:56%;left:67%}.ivy .world-friend.spot-3{top:82%;left:21%}.ivy .world-friend.spot-4{top:82%;left:80%}.oliver .world-friend.spot-1{top:78%;left:14%}.oliver .world-friend.spot-2{top:78%;left:38%}.oliver .world-friend.spot-3{top:78%;left:62%}.oliver .world-friend.spot-4{top:78%;left:86%}.world-friend.talking{z-index:8;animation:2.6s cubic-bezier(.2,.75,.3,1) both friend-talk-trip}.world-friend.talking i{opacity:1}@keyframes friend-talk-trip{0%{transform:translate(-50%,-50%)scale(1)}12%{transform:translate(-50%,-72%)scale(1.45)rotate(-3deg)}25%{transform:translate(-50%,-56%)scale(1.55)rotate(3deg)}66%{transform:translate(-50%,-58%)scale(1.55)}78%{transform:translate(-50%,-85%)scale(1.28)rotate(-4deg)}90%{transform:translate(-50%,-43%)scale(1.08)rotate(2deg)}to{transform:translate(-50%,-50%)scale(1)}}.empty-world{border:3px solid var(--plum);text-align:center;background:#ffffffe6;border-radius:22px;justify-items:center;gap:4px;padding:18px 24px;display:grid;position:absolute;bottom:10%;left:50%;transform:translate(-50%)}.empty-world>span{font-size:34px}.empty-world small{color:var(--muted)}.world-pages{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:24px;display:flex}.world-pages button{border:3px solid var(--plum);min-width:130px;color:var(--plum);cursor:pointer;background:#fff;border-radius:16px;padding:9px 13px;font-weight:900}.world-pages button span{color:var(--muted);text-transform:uppercase;font-size:9px;display:block}.world-pages button.active{background:var(--purple);color:#fff;box-shadow:0 4px 0 var(--plum)}.garden-world{background:url(/lifeskills/characters/kindness-pond-world.jpg) 50% 68%/cover no-repeat}.garden-hills{background:#91c873;border:3px solid #40315f80;border-radius:50% 50% 0 0;width:70%;height:42%;position:absolute}.garden-hills.one{bottom:0;left:-12%;transform:rotate(5deg)}.garden-hills.two{background:#79b760;bottom:-3%;right:-13%;transform:rotate(-6deg)}.garden-clusters{z-index:3;justify-content:space-evenly;align-items:flex-end;gap:2px;display:flex;position:absolute;inset:80px 18px 12px;overflow:auto hidden}.garden-plant{transform-origin:50% 100%;width:138px;height:190px;animation:plant-grow .7s calc(var(--plant-index) * 60ms) both cubic-bezier(.2,.8,.25,1.2);background:0 0;border:0;flex:0 0 138px;padding:0;position:relative}.garden-plant:hover,.garden-plant.selected{transform:translateY(-8px)scale(1.08)}.garden-plant.selected>strong{box-shadow:0 3px 0 var(--plum);background:#fff4bb}.garden-plant:after{content:"";border:2px solid #d7f5ff52;border-radius:50%;height:28px;position:absolute;bottom:29px;left:8%;right:8%;transform:scaleY(.34);box-shadow:0 0 0 7px #296a7414}.plant-leaves{z-index:1;background:radial-gradient(circle at 36% 28%,#b5cf87 0 12%,#6e9a65 46%,#315f54 100%);border:1px solid #1d5243a6;border-radius:50%;width:112px;height:57px;position:absolute;bottom:34px;left:50%;transform:translate(-50%)rotate(-4deg);box-shadow:inset 0 -9px 16px #18484152,0 6px 10px #11424c47}.plant-leaves:before{content:"";transform-origin:0;background:#e0efa875;border-radius:999px;width:49%;height:3px;position:absolute;top:49%;left:49%;transform:rotate(-18deg);box-shadow:-12px -12px 0 -1px #e0efa824,-8px 12px 0 -1px #e0efa824}.plant-leaves:after{content:"";clip-path:polygon(0 0,100% 0,0 100%);opacity:.78;background:#7da26a;width:42%;height:50%;position:absolute;top:-11%;right:4%}.plant-bloom{z-index:3;filter:drop-shadow(0 7px 4px #1b3e4b4d);cursor:pointer;background:url(/lifeskills/characters/kindness-lotus-atlas.png) 0 0/200% 300% no-repeat;border:0;border-radius:50%;width:72px;height:72px;padding:0;transition:filter .15s,outline-offset .15s,transform .18s;position:absolute;bottom:68px;left:50%;transform:translate(-50%)}.plant-bloom:hover,.plant-bloom:focus-visible{z-index:6;outline-offset:2px;filter:brightness(1.08)drop-shadow(0 9px 5px #1b3e4b6b);outline:4px solid #fffffff2;transform:translate(-50%)scale(1.12)}.plant-bloom.selected{z-index:7;outline-offset:3px;filter:drop-shadow(0 0 7px #fff)drop-shadow(0 8px 4px #1b3e4b66);outline:4px solid #fff4bb}.plant-bloom.bloom-2{bottom:52px;left:25%;scale:.72}.plant-bloom.bloom-3{bottom:56px;left:76%;scale:.78}.plant-bloom.bloom-4{bottom:91px;left:18%;scale:.56}.plant-bloom.bloom-5{bottom:96px;left:83%;scale:.6}.plant-bloom.bloom-6{bottom:117px;left:40%;scale:.5}.plant-bloom.bloom-7{bottom:123px;left:64%;scale:.46}.plant-bloom.sprite-2{background-position:100% 0}.plant-bloom.sprite-3{background-position:0}.plant-bloom.sprite-4{background-position:100%}.plant-bloom.sprite-5{background-position:0 100%}.plant-bloom.sprite-6{background-position:100% 100%}.kind-spike .plant-leaves{transform:translate(-50%)rotate(7deg)scale(.86)}.kind-poppy .plant-leaves{transform:translate(-50%)rotate(-9deg)scale(1.06)}.kind-mound .plant-leaves{transform:translate(-50%)rotate(3deg)scale(.94)}.garden-plant>strong{z-index:5;border:2px solid var(--plum);min-width:95px;color:var(--plum);background:#fffffff0;border-radius:11px;padding:5px 8px;font-family:Nunito;font-size:11px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.garden-plant>strong small{color:var(--muted);font-family:inherit;font-size:8px;display:block}.garden-plant.compact{pointer-events:none;flex-basis:58px;width:58px;height:78px}.garden-plant.compact .plant-leaves{border-width:1px;width:54px;height:26px;bottom:3px}.garden-plant.compact .plant-leaves:before{height:1px}.garden-plant.compact .plant-bloom{width:37px;height:37px;bottom:20px}.garden-plant.compact .bloom-2{bottom:13px;left:24%}.garden-plant.compact .bloom-3{bottom:15px;left:77%}.garden-plant.compact .bloom-4{bottom:33px;left:20%}.garden-plant.compact:after{bottom:0}.garden-blooms{flex-wrap:nowrap;align-items:flex-end;bottom:10px}.planting-bloom{z-index:10;color:var(--plum);justify-items:center;gap:12px;font-family:Nunito;font-size:25px;animation:1.7s cubic-bezier(.2,.8,.25,1) both plant-memory;display:grid;position:absolute;top:50%;left:50%}.planting-bloom i{filter:drop-shadow(0 0 18px #fffffff2)drop-shadow(0 12px 8px #1b3e4b59);background:url(/lifeskills/characters/kindness-lotus-atlas.png) 100% 0/200% 300% no-repeat;border-radius:50%;width:130px;height:130px}.planting-bloom strong{background:#fff;border-radius:999px;padding:6px 11px}.empty-garden{border:3px solid var(--plum);background:#ffffffe6;border-radius:20px;align-self:center;justify-items:center;gap:5px;padding:18px;display:grid}.empty-garden span{font-size:44px}.memory-theme{color:var(--purple);text-transform:uppercase;letter-spacing:.08em;background:#ece2ff;border-radius:999px;margin-top:14px;padding:5px 9px;font-size:11px;font-weight:900;display:inline-block}.memory-cluster-bar .memory-theme{margin-top:0}.friend-accessories{z-index:4;pointer-events:none;position:absolute;inset:5%}.friend-accessory{aspect-ratio:1;filter:drop-shadow(0 3px 2px #40315f4d);width:24%;display:block;position:absolute}.friend-accessory:before{place-items:center;font-size:clamp(22px,6vw,46px);font-style:normal;display:grid;position:absolute;inset:0}.friend-accessory.kindness-crown{top:2%;left:38%}.friend-accessory.kindness-crown:before{content:"🌸";text-shadow:-15px 4px #ff9ec7,15px 4px #ff9ec7}.friend-accessory.helper-star{width:19%;top:42%;right:17%}.friend-accessory.helper-star:before{content:"⭐"}.friend-accessory.play-sparkles{top:26%;left:11%}.friend-accessory.play-sparkles:before{content:"✨"}.world-friend .friend-accessories{inset:0}.world-friend .friend-accessory:before{font-size:clamp(15px,3vw,32px)}@keyframes plant-grow{0%{opacity:0;transform:translateY(80px)scale(.3)}}@keyframes plant-memory{0%{opacity:0;transform:translate(-50%,-25%)scale(.15)rotate(-20deg)}25%,58%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,80%)scale(.25)rotate(12deg)}}@media (width<=680px){.friend-world-page{padding:14px 12px 40px}.friend-world-head{grid-template-columns:1fr;padding:16px}.friend-world-head>strong{width:fit-content}.friend-world-scene{aspect-ratio:auto;background-position:50%;min-height:430px}.world-friend{width:35%}.ivy .world-friend.spot-1,.oliver .world-friend.spot-1{top:62%;left:25%}.ivy .world-friend.spot-2,.oliver .world-friend.spot-2{top:62%;left:75%}.ivy .world-friend.spot-3,.oliver .world-friend.spot-3{top:84%;left:25%}.ivy .world-friend.spot-4,.oliver .world-friend.spot-4{top:84%;left:75%}.garden-clusters{justify-content:flex-start}.admin-mission-row{grid-template-columns:55px 1fr 90px 105px}.admin-mission-row input[aria-label=Mission\ description]{grid-column:1/-1}}
