@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=Nunito+Sans:wght@400;600;700;800;900&display=swap');

/* Leul isteț: an original illustrated children's activity book, not a generic AI admin UI.
   Inspired by guided educational paths, without reproducing third-party branding/assets. */
.kid-world{--ink:#263b46;--display:'Fredoka','Nunito Sans',system-ui,sans-serif;--body:'Nunito Sans',system-ui,sans-serif;--moss:#317d72;--sand:#fff7e9;--sun:#efaa50;--line:#ddd2bf;--paper:#fffdfa; color:var(--ink);font-family:var(--body);background:var(--sand);border-radius:30px;padding:18px 24px 36px;overflow:hidden;position:relative}
.kid-world.world-rabbit{--moss:#9f5c7e;--sun:#edaf75;--sand:#fff8f0;--line:#eed2cc}
.kid-world::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;background-image:radial-gradient(#bdb39f 0.8px, transparent 0.8px);background-size:23px 23px}
.kid-world>*{position:relative}
.kid-world h1,.kid-world h2,.kid-world h3,.kid-world strong{font-family:var(--display)}
.kid-world button{font-family:var(--body)}
.kid-world h1{font-size:clamp(35px,5vw,62px);font-weight:600;line-height:1.07;letter-spacing:-1.1px}
.kid-world h2{font-size:clamp(22px,2.5vw,32px);font-weight:600;letter-spacing:-.5px}
.kid-world h3{font-size:22px;line-height:1.16}
.kid-world p{color:#59646a}
.kid-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.kid-exit{padding:10px 17px;font-size:13px;font-weight:900;background:#fffdf8;color:var(--ink);border-radius:13px;border:2px solid #d9cebe;box-shadow:0 3px #d9cebe}
.kid-topnote{font-size:12px;font-weight:800;letter-spacing:.4px;color:#697473}
.kid-cover{border-radius:28px 28px 43px 28px;padding:33px 39px;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,260px);gap:13px;align-items:center;box-shadow:inset 0 -9px 0 #163d3c25;overflow:hidden;background:linear-gradient(118deg,#225765,#316c68 66%,#599985);color:#fff}
.world-rabbit .kid-cover{background:linear-gradient(118deg,#925273,#b76e88 67%,#dc9d9e);box-shadow:inset 0 -9px 0 #793d5725}
.kid-cover::before{content:"✦     ◌       ✧";position:absolute;right:2%;top:12%;font-size:39px;color:#ffffff45;word-spacing:24px;transform:rotate(-13deg)}
.kid-cover-content{position:relative;z-index:1}
.kid-eyebrow{font-weight:900;text-transform:uppercase;letter-spacing:2px;font-size:11px;color:var(--moss)}
.kid-cover .kid-eyebrow{color:#dff8e6}
.world-rabbit .kid-cover .kid-eyebrow{color:#ffe7db}
.kid-cover p{font-size:16px;color:#f3f6f0;margin:13px 0 23px;max-width:420px;font-weight:600}
.wave{color:#ffd877}
.kid-stats{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:21px}
.kid-stats span{background:#ffffff24;padding:9px 12px;border-radius:12px;color:#fff;font-size:13px;font-weight:700;backdrop-filter:blur(2px);border:1px solid #ffffff25}
.kid-stats b{font-weight:900;font-size:16px}
.level-progress{max-width:430px;background:#ffffff1f;border:1px solid #ffffff29;padding:13px 15px;border-radius:14px}
.level-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:13px;margin-bottom:8px}
.level-progress b{font-weight:700}
.level-progress small{font-size:11px;color:#e4f3ec}
.level-track,.goal-track,.map-meter{height:12px;border-radius:99px;background:#ffffff50;overflow:hidden;display:block}
.level-track i,.goal-track i,.map-meter i{display:block;height:100%;background:#ffd56b;border-radius:inherit;transition:width .4s ease}
.cover-mascot{position:relative;justify-self:center;display:grid;justify-items:center;filter:drop-shadow(0 8px 0 #1d2e3650)}
.cover-mascot::before{content:"";position:absolute;background:#f9e5bc;border-radius:50%;width:225px;height:225px;z-index:-1;top:22px;box-shadow:0 0 0 12px #ffffff21}
.world-rabbit .cover-mascot::before{background:#ffe0b5}
.cover-mascot .animal-bank-svg{width:220px;height:235px;transform:rotate(-7deg)}
.cover-name{position:absolute;top:-6px;z-index:2;font-family:var(--display);font-size:16px;font-weight:600;background:#fff6db;color:#5b4856;padding:8px 13px;border-radius:10px;transform:rotate(5deg);box-shadow:2px 4px #0000001c}
.world-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;align-items:start;margin-top:25px}
.kid-section{margin-bottom:25px}
.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:end;margin-bottom:16px}
.section-heading h2{margin-top:6px}
.money-total{font-weight:1000;background:#fef1c3;border-radius:12px;padding:10px 12px;color:#80601d;white-space:nowrap;font-size:12px}
.banks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.creature-bank{background:#fffdfb;border:2px solid #e7d9c9;border-radius:25px;padding:9px 9px 16px;box-shadow:0 6px 0 #e7d9c9;min-width:0;text-align:center}
.bank-spend{background:#fff9ed;border-color:#f2d7ab;box-shadow:0 6px #f2d7ab}
.bank-save{background:#f2faf4;border-color:#c6e6d3;box-shadow:0 6px #c6e6d3}
.bank-give{background:#f8f2fe;border-color:#dfcdec;box-shadow:0 6px #dfcdec}
.bank-illustration{display:grid;place-items:center;height:175px;overflow:visible}
.animal-bank-svg{max-width:100%;filter:drop-shadow(1px 4px 0 #2f354626)}
.bank-copy{display:grid;justify-items:center;gap:3px}
.bank-kind{font-size:13px;font-weight:900;color:#635a65}
.bank-copy strong{font-size:clamp(19px,2.1vw,29px);font-weight:600;color:#333f40}
.bank-copy small{color:#7c8583;font-size:11px;font-weight:700}
.bank-disclaimer{font-size:11px;margin:14px 3px 0;color:#7d817c}
.goal-section{display:flex;align-items:center;gap:17px;padding:22px 25px;background:#fff;box-shadow:0 5px 0 #e7d9c9;border-radius:23px;border:2px solid #eee1d0}
.goal-illustration{font-size:49px;transform:rotate(-10deg)}
.goal-text{min-width:0;flex:1}
.goal-text h2{font-size:25px}
.goal-text p{margin:8px 0}
.goal-track{background:#f0e6d7;height:12px}
.goal-track i{background:#6bae87}
.goal-percent{color:var(--moss);font-size:22px;font-family:var(--display);font-weight:600}
.map-section{margin-top:28px}
.lesson-count{background:#e1eee8;border:1px solid #b4d2c5;color:#397a65;font-size:12px;font-weight:900;padding:8px 12px;border-radius:12px}
.map-meter{background:#e7ddd2;margin-bottom:18px}
.map-meter i{background:var(--moss)}
.journey-map{padding:0 12px 12px;position:relative;background:#fffcf6;border:2px solid #eadfcd;border-radius:27px;box-shadow:0 6px 0 #e9ddcc;overflow:hidden}
.path-intro{margin:0 -12px}
.path-banner{padding:19px 22px;border-radius:23px 23px 6px 6px;background:#e6f0e8;color:#2e7164}
.world-rabbit .path-banner{background:#f9e4eb;color:#9b4d74}
.path-banner span{font-size:11px;font-weight:1000;letter-spacing:1.6px}
.path-banner h2{font-size:26px;margin:5px 0}
.path-banner p{font-size:13px;max-width:500px;color:inherit}
.trail{position:relative;padding:17px 7px 18px}
.trail::before{content:"";position:absolute;top:30px;bottom:35px;left:47%;width:0;border-left:7px dotted #dcd3c0;transform:rotate(0deg);opacity:.85}
.chapter-flag{font-family:var(--display);font-weight:600;text-align:center;position:relative;z-index:1;background:#fce3ad;color:#8b5817;padding:10px 18px;border-radius:14px;max-width:260px;margin:15px auto 25px;transform:rotate(-2deg);box-shadow:0 4px 0 #e9c389}
.world-rabbit .chapter-flag{background:#ffe0dc;color:#9c5877;box-shadow:0 4px 0 #efc5c7}
.trail-row{display:flex;align-items:center;gap:13px;position:relative;min-height:105px}
.trail-row.left{margin-left:6%}
.trail-row.right{margin-left:35%}
.trail-node{flex:0 0 auto;width:70px;height:70px;border-radius:50%;font-size:27px;border:4px solid #faf5e9;box-shadow:0 7px 0 #9a88804d,0 0 0 4px var(--moss);background:var(--moss);color:#fff;position:relative;z-index:2;transition:transform .15s ease}
.trail-node:hover:not(:disabled){transform:translateY(-3px)}
.trail-node:focus-visible{outline:3px solid #172e36;outline-offset:7px}
.is-complete .trail-node{background:#e7b94f;box-shadow:0 7px 0 #c6a260,0 0 0 4px #e7b94f;color:#6a461e;font-weight:1000}
.is-next .trail-node{animation:kid-pulse 2.2s ease-in-out infinite}
.is-locked .trail-node{background:#e1dcd4;color:#9a958d;box-shadow:0 5px 0 #d4cabf,0 0 0 3px #e1dcd4}
.trail-label{display:flex;flex-direction:column;gap:3px;max-width:200px}
.trail-label b{font-family:var(--display);font-size:17px;font-weight:600;line-height:1.15}
.trail-label small{font-size:12px;color:#7d807a}
.next-tag,.done-tag{font-weight:1000;font-size:10px;letter-spacing:.4px;color:#337663;margin-top:4px}
.done-tag{color:#b28432}
.is-locked .trail-label{opacity:.58}
.mini-lesson{position:relative;z-index:4;background:#fff;border:3px solid #96c6ac;box-shadow:0 7px 0 #b9ddc9;padding:21px;margin:12px 4px 22px;border-radius:22px;animation:lesson-in .25s ease}
.world-rabbit .mini-lesson{border-color:#e7b3c4;box-shadow:0 7px 0 #f1d1dd}
.mini-lesson h3{margin:8px 0 16px}
.lesson-options{display:grid;gap:9px}
.lesson-options button{background:#fff8ec;border:2px solid #e9dccb;border-radius:13px;padding:13px 15px;text-align:left;color:#39464b;font-weight:800;transition:background .12s ease}
.lesson-options button:hover{background:#dff3e9}
.lesson-options button:focus-visible{outline:3px solid var(--moss)}
.lesson-feedback{font-size:12px;margin:12px 0 0;color:#697569}
.journey-finish{text-align:center;margin:20px 0;padding:20px;background:#fff3d6;border-radius:20px}
.journey-finish>span{font-size:52px}
.journey-finish h3{margin:10px 0}
.world-aside{display:grid;gap:17px}
.aside-paper{padding:22px;background:#fffef9;border:2px solid #eadcc4;box-shadow:0 5px 0 #e5d7c0;border-radius:20px;transform:rotate(.5deg)}
.aside-paper h3{margin:8px 0 13px}
.aside-paper p{font-size:12px;line-height:1.65;margin-top:12px}
.aside-paper.notebook{background:#fff7d9;transform:rotate(-1deg)}
.sticker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.sticker{border:2px dashed #e8d4b0;border-radius:14px;min-height:86px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:9px;gap:6px;text-align:center;background:#fffbf1}
.sticker span{font-size:29px}
.sticker small{font-size:11px;font-weight:800}
.sticker.unearned{filter:grayscale(1);opacity:.46}
.sticker.earned{background:#fff6cd;border:2px solid #f2d382;transform:rotate(-3deg)}
.kid-side-link{border:0;background:none;color:#8c5c30;font-weight:900;text-decoration:underline;padding:8px 0}
.parent-help{border:1px dashed #d6cec0;background:#f7f6f0;box-shadow:none}
@keyframes kid-pulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes lesson-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1060px){.world-layout{grid-template-columns:minmax(0,1fr)}.world-aside{grid-template-columns:repeat(2,minmax(0,1fr))}.world-aside .parent-help{grid-column:1/-1}}
@media(max-width:740px){.kid-world{padding:13px 12px 22px;border-radius:20px}.kid-topnote{display:none}.kid-cover{padding:26px 20px;grid-template-columns:minmax(0,1fr) 115px;border-radius:22px}.kid-cover h1{font-size:35px}.kid-cover p{font-size:13px}.cover-mascot .animal-bank-svg{width:135px;height:145px}.cover-mascot::before{width:135px;height:135px;top:19px}.cover-name{font-size:10px;white-space:nowrap}.kid-stats span{font-size:12px;padding:6px}.kid-stats b{font-size:13px}.level-progress small{font-size:10px}.world-layout{margin-top:20px}.banks{gap:5px}.creature-bank{padding:6px 3px 12px;border-radius:16px}.bank-illustration{height:129px}.bank-illustration svg{width:115px;height:123px}.bank-kind{font-size:10px}.bank-copy strong{font-size:17px}.bank-copy small{font-size:10px}.section-heading h2{font-size:23px}.money-total,.lesson-count{font-size:10px;padding:7px}.goal-section{padding:16px;gap:8px}.goal-illustration{font-size:36px}.goal-text h2{font-size:19px}.goal-percent{font-size:17px}.trail-row.right{margin-left:23%}.trail-row.left{margin-left:0}.trail-node{width:60px;height:60px;font-size:22px}.trail-label b{font-size:14px}.trail-label small{font-size:11px}.world-aside{grid-template-columns:1fr}.aside-paper{transform:none}.world-aside .parent-help{grid-column:auto}}
@media(max-width:420px){.kid-cover{grid-template-columns:1fr}.cover-mascot{display:none}.kid-cover h1{font-size:37px}.kid-cover p{font-size:14px}.banks{gap:4px}.bank-illustration{height:112px}.bank-illustration svg{width:100px;height:110px}.bank-kind{font-size:9px}.bank-copy strong{font-size:15px}.bank-copy small{font-size:9px}.creature-bank{border-width:1px;box-shadow:0 3px #e5ddcc}.kid-world h2{font-size:21px}.goal-illustration{font-size:29px}}
@media(prefers-reduced-motion:reduce){.kid-world *{animation:none!important;transition:none!important}}

/* Shared parent shell: crafted editorial look rather than default purple card dashboard */
body{font-family:'Nunito Sans',system-ui,-apple-system,sans-serif;background:#fffaf2;color:#293b42}
.layout{max-width:1250px}
.header{padding:5px 0 10px;border-bottom:2px solid #efe3d0;margin-bottom:25px}
.brand{font-family:'Fredoka','Nunito Sans',system-ui,sans-serif;font-weight:600;letter-spacing:-.6px;color:#243c42}
.brand b{color:#cd8650}
.status{font-family:'Fredoka',system-ui,sans-serif;color:#7a927a}
h1,h2,h3{font-family:'Fredoka','Nunito Sans',system-ui,sans-serif;font-weight:600}
.card{background:#fffdf8;border:2px solid #ecdfca;box-shadow:0 5px 0 #ebdfce}
.tab{background:#fffdf8;border:2px solid #ebdfce;color:#526465}
.tab.active{background:#e7f1e9;color:#2c705e;border-color:#bdd8c6}
.btn{background:#397967;box-shadow:0 4px 0 #2a594a}
.btn.secondary{background:#fff7e8;border:2px solid #e4c9aa;color:#7b5a36;box-shadow:0 3px 0 #e5d2ba}
.card.hero{background:linear-gradient(120deg,#e6f0e8,#fff2d6 74%,#f7e7d7);border:2px solid #dcdcc9}
.hero .art{filter:drop-shadow(2px 4px 0 #846d5440)}
.eyebrow{color:#3f7966}
.profile{border:2px solid #d8e3d9;background:#ecf5f0;border-radius:26px;box-shadow:0 5px 0 #d2e2d4;transition:transform .2s ease,box-shadow .2s ease}
.profile.rabbit{background:#fff0eb;border-color:#f0d9d2;box-shadow:0 5px 0 #f0d9d2}
.profile:hover{transform:translateY(-4px);box-shadow:0 9px 0 #d2e2d4}
.profile.rabbit:hover{box-shadow:0 9px 0 #f0d9d2}
.profile h2{font-weight:600}
.profile .tag{background:#fff9db;color:#496f5b;border:2px solid #e4deb8}
.profile-progress{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap;font-size:13px;color:#486457}
.profile-progress strong{font-weight:900}
.profile-progress span{color:#857661;font-weight:700}
.parent-mode-intro{margin:18px 0}
.parent-mode-intro h2{margin:8px 0}
.parent-mode-intro p{margin:6px 0 14px}
.kid-celebration{margin:14px 0 20px;border:3px dashed #e9c56c;background:#fff3c4;padding:19px 23px;border-radius:17px;font-family:'Fredoka',system-ui,sans-serif;font-size:19px;color:#7d5c24;animation:lesson-in .25s ease}
@media(prefers-reduced-motion:reduce){.profile,.kid-celebration{animation:none;transition:none}}
