/* Based on the original site stylesheet, extended for v2 */

:root{--ink:#22314a;--muted:#66738a;--paper:#fffcf4;--peach:#fff1e3;--violet:#7766d7;--blue:#e7e7ff;--green:#e5f7e8;--yellow:#ffe49d;--coral:#ff857a;--line:#e8e5e3;--shadow:0 18px 45px rgba(48,53,84,.10);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink)}button,select{font:inherit}button{cursor:pointer}a{color:inherit}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #5b50c8;outline-offset:3px}.container{max-width:1110px;margin:auto;padding:0 24px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:22px 0;gap:12px}.brand{display:flex;gap:10px;align-items:center;font-weight:900;font-size:21px;letter-spacing:-.06em;text-decoration:none}.brand-icon{background:#ffe9c8;width:42px;height:42px;display:grid;place-items:center;border-radius:14px;font-size:26px;transform:rotate(-8deg)}.toplinks{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:800;color:#5c6781}.toplinks a{text-decoration:none}.navpill{padding:10px 14px;background:#fff;border:1px solid #e9e1d3;border-radius:999px;box-shadow:0 4px 10px #f5e9db}.hero{position:relative;overflow:hidden;margin-top:7px;border-radius:35px;background:linear-gradient(112deg,#fff0d9 0%,#ffe1df 58%,#e9e6ff 100%);padding:56px 57px;min-height:330px;display:grid;grid-template-columns:1.13fr .87fr;align-items:center;box-shadow:0 10px 0 #f4f0e7}.hero:before,.hero:after{content:"";position:absolute;border:3px dashed #ffffff90;border-radius:50%;width:250px;height:250px;right:-100px;top:-100px}.hero:after{width:160px;height:160px;left:48%;top:auto;bottom:-100px}.eyebrow{display:inline-flex;align-items:center;gap:7px;border-radius:100px;background:#fff;padding:9px 14px;font-weight:900;color:#7969d5;font-size:12px;box-shadow:0 4px 12px #edcac585}.hero h1{font-size:clamp(32px,4.1vw,53px);letter-spacing:-.06em;line-height:1.42;margin:20px 0 12px;font-weight:950}.hero h1 em{font-style:normal;color:#745ad3}.hero p{font-size:15px;line-height:1.9;font-weight:650;color:#576079;margin:0 0 23px}.hero-art{height:250px;display:grid;place-items:center;position:relative;user-select:none}.hero-art .island{font-size:138px;filter:drop-shadow(0 17px 8px rgba(77,70,83,.13));transform:rotate(-7deg)}.floaty{position:absolute;background:#fff;border-radius:19px;box-shadow:0 13px 20px #a9959a35;padding:12px 16px;font-weight:900;font-size:17px;animation:bob 3s ease-in-out infinite}.floaty.one{top:4px;left:7%;transform:rotate(-10deg)}.floaty.two{right:0;bottom:4px;animation-delay:.7s;transform:rotate(6deg)}.floaty.three{right:13%;top:10px;animation-delay:1.2s;background:#fff6c8}.hero-btn{display:inline-block;text-decoration:none;border:0;border-radius:18px;padding:15px 26px;background:#6c5bc8;color:white;font-weight:900;box-shadow:0 7px 0 #5144a3;font-size:15px}.hero-btn:hover{background:#5d4cb7}.hero-btn:active{transform:translateY(4px);box-shadow:0 3px 0 #5144a3}@keyframes bob{50%{translate:0 -8px}}.micro{margin-top:13px;font-size:12px;color:#6d708b;font-weight:650}.mini-perks{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 8px}.perk{display:inline-flex;align-items:center;gap:7px;border-radius:99px;padding:11px 14px;font-size:12px;font-weight:850;background:white;border:1px solid #f0eae2}.section{margin-top:73px}.section-header{text-align:center;margin-bottom:28px}.section-header .little{font-size:12px;letter-spacing:.12em;color:#8976df;font-weight:900}.section-header h2{font-size:30px;line-height:1.45;margin:8px 0 10px;letter-spacing:-.045em}.section-header p{color:#69758b;font-size:14px;line-height:1.8;margin:0}.game-card{background:#fff;border:1px solid #f3e9de;box-shadow:var(--shadow);border-radius:30px;overflow:hidden}.game-top{padding:27px 30px 23px;background:#fbfaff;border-bottom:1px solid #eee9fa;display:flex;justify-content:space-between;align-items:center;gap:15px}.game-top h3{margin:0;font-size:20px;letter-spacing:-.04em}.game-top p{color:#64718e;font-size:12px;margin:7px 0 0}.counter{background:#fff;border-radius:99px;padding:10px 14px;color:#6f5ed1;font-weight:900;font-size:12px;border:1px solid #e7e2fb;white-space:nowrap}.controls{padding:27px 30px}.control-title{font-weight:900;font-size:13px;margin-bottom:13px}.choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.choice{border:2px solid transparent;padding:19px 10px 15px;border-radius:21px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;background:#fff4e4;min-height:123px;color:var(--ink);transition:transform .15s,border-color .15s;position:relative}.choice:hover{transform:translateY(-3px)}.choice:nth-child(2){background:#f0eaff}.choice:nth-child(3){background:#e6f7ed}.choice.selected{border-color:#7664d7;box-shadow:0 0 0 3px #7664d71c}.choice .em{font-size:42px}.choice strong{font-size:15px}.choice small{font-size:11px;font-weight:750;color:#657082}.choice.selected:after{content:'✓';position:absolute;top:7px;right:9px;color:#fff;background:#7868d9;border-radius:50%;width:23px;height:23px;display:grid;place-items:center;font-size:13px}.filter-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}.field{display:flex;flex-direction:column;gap:9px;font-size:13px;font-weight:900}.field select{width:100%;background:#fff;border:1.5px solid #e3dfe8;border-radius:14px;padding:13px 15px;color:#243451;font-weight:800}.main-cta{border:none;background:#7766d7;color:white;padding:17px 20px;border-radius:17px;font-weight:950;box-shadow:0 6px 0 #5948b0;font-size:17px;width:100%;margin-top:23px}.main-cta:hover{background:#6857cb}.main-cta:active{transform:translateY(3px);box-shadow:0 3px 0 #5948b0}.game-note{margin:15px 0 0;text-align:center;color:#718097;font-size:12px;line-height:1.6}.mission-panel{margin:0 30px 29px;padding:23px;background:#fcf9ef;border:2px dashed #eddb9e;border-radius:23px;scroll-margin-top:18px}.hidden{display:none!important}.mission-heading{display:flex;align-items:center;gap:15px}.mission-icon{width:72px;height:72px;border-radius:22px;background:#fff;display:grid;place-items:center;font-size:43px;box-shadow:0 6px 11px #e7d5b44a}.mission-panel h3{font-size:24px;line-height:1.4;margin:0;letter-spacing:-.05em}.mission-caption{font-size:12px;color:#7c8499;margin:8px 0 0;font-weight:750}.mission-desc{line-height:1.8;color:#4e5b72;margin:17px 0;font-size:14px;font-weight:650}.stuff{background:white;padding:13px 15px;border-radius:13px;color:#52617b;font-weight:750;font-size:13px;line-height:1.6}.steps{margin-top:22px;display:grid;gap:10px}.steps-head{font-size:13px;font-weight:900;margin:0 0 2px}.step{width:100%;border:2px solid #e8e3e0;background:#fff;border-radius:15px;text-align:left;padding:16px;display:flex;align-items:center;gap:13px;color:#30415d;font-weight:800;line-height:1.6;font-size:14px}.step .tick{flex-shrink:0;border:2px solid #b0afc5;width:29px;height:29px;border-radius:10px;display:grid;place-items:center;font-size:15px;color:transparent}.step.done{border-color:#91cda3;background:#edfbef}.step.done .tick{background:#42a269;color:white;border-color:#42a269}.progress{height:12px;background:#fff;border-radius:99px;overflow:hidden;margin:14px 0 5px;border:1px solid #eae3d2}.progress>span{display:block;height:100%;width:0%;background:linear-gradient(90deg,#76cc91,#a7d878);transition:width .25s;border-radius:99px}.progress-label{font-size:12px;color:#70806f;font-weight:850;text-align:right}.safety{background:#fff8e9;border-left:4px solid #eab85c;padding:11px 13px;font-size:12px;color:#6c6348;line-height:1.8;border-radius:8px;margin:17px 0}.mission-actions{display:flex;gap:10px;margin-top:20px}.secondary-btn{border:1.5px solid #dad4e7;background:#fff;color:#6256a9;border-radius:13px;padding:13px 16px;font-size:13px;font-weight:900;flex:1}.celebration{margin-top:18px;padding:21px;border-radius:17px;background:linear-gradient(120deg,#fff2c3,#ecffd9);text-align:center}.celebration strong{font-size:22px;display:block}.celebration p{font-size:13px;color:#68744f;line-height:1.7}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:22px}.stat{border:1px solid #eee5d6;background:#fff;border-radius:20px;padding:23px 18px;text-align:center}.stat em{display:block;font-size:30px;font-style:normal}.stat strong{display:block;margin-top:7px;font-size:15px}.stat small{display:block;margin-top:6px;color:#788296;font-size:11px;font-weight:750}.intro-box{border-radius:27px;padding:30px;background:#eaf5f1;display:grid;grid-template-columns:70px 1fr;gap:16px;align-items:center}.intro-box .ico{font-size:55px}.intro-box strong{font-size:19px}.intro-box p{margin:7px 0 0;font-size:13px;line-height:1.85;color:#4b6b66}.faq{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.faq article{padding:22px;border-radius:18px;background:#fff;border:1px solid #f0e7da}.faq h3{font-size:15px;margin:0 0 9px}.faq p{font-size:13px;color:#667186;line-height:1.8;margin:0}.end{border-top:1px solid #ede6dc;margin-top:75px;padding:25px 0 40px;display:flex;justify-content:space-between;gap:12px;color:#8590a0;font-size:12px;line-height:1.8}.end strong{color:#42506a}.seo-footer{font-size:12px;color:#667186;line-height:1.9}.seo-footer h2{font-size:22px;color:#243451;letter-spacing:-.04em}@media(max-width:750px){.container{padding:0 15px}.topbar{padding:14px 0}.brand{font-size:17px}.brand-icon{width:36px;height:36px;font-size:22px}.toplinks{gap:8px;font-size:11px}.toplinks a:first-child{display:none}.navpill{padding:8px 11px}.hero{padding:32px 24px 19px;display:flex;flex-direction:column;min-height:0;border-radius:24px}.hero-text{width:100%;position:relative;z-index:2}.hero h1{font-size:35px;line-height:1.47;margin-top:15px}.hero p{font-size:13px}.hero-art{height:173px;width:100%;margin-top:8px}.hero-art .island{font-size:110px}.floaty{font-size:13px;padding:8px 10px}.floaty.one{left:10px;top:8px}.floaty.two{right:3px;bottom:6px}.floaty.three{top:4px;right:22px}.section{margin-top:53px}.section-header h2{font-size:25px}.section-header p{font-size:12px}.game-card{border-radius:22px}.game-top{padding:20px 18px;align-items:flex-start}.game-top h3{font-size:17px}.counter{font-size:10px;padding:9px}.controls{padding:20px 16px}.choices{gap:7px}.choice{padding:15px 2px;min-height:110px;border-radius:14px}.choice .em{font-size:36px}.choice strong{font-size:12px}.choice small{font-size:10px}.filter-row{gap:9px}.field select{padding:12px 10px}.mission-panel{margin:0 16px 20px;padding:17px;border-radius:18px}.mission-heading{gap:11px}.mission-icon{width:59px;height:59px;font-size:33px}.mission-panel h3{font-size:20px}.stats-grid{grid-template-columns:1fr;gap:10px}.stat{display:flex;align-items:center;gap:10px;text-align:left;padding:12px 17px}.stat em{font-size:27px}.stat strong{margin:0}.stat small{margin:0 0 0 auto}.faq{grid-template-columns:1fr}.intro-box{grid-template-columns:1fr;text-align:center}.intro-box .ico{font-size:47px}.end{display:block}}@media print{body{background:#fff}.topbar,.hero,.mini-perks,.section-header,.controls,.game-top,.stats-grid,.intro-box,.faq,.end,.seo-footer,.mission-actions,.step .tick,#game-status{display:none!important}.section{margin:0}.game-card{box-shadow:none;border:0}.mission-panel{display:block!important;border:0;margin:0;padding:0;background:#fff}.mission-panel .steps .step{border:1px solid #ddd;break-inside:avoid;padding:12px}.celebration{display:none!important}}


/* v2: parent landing page and child-friendly separate game screen */
:root{color-scheme:light}
body{min-width:280px}
.topbar{min-width:0}
.brand{min-width:0;white-space:nowrap;flex-shrink:1;letter-spacing:-.065em}
.brand-icon{flex-shrink:0}
.toplinks{flex-shrink:0}
.hero-btn,.main-cta,.secondary-btn,.navpill{transition:background .15s,transform .15s,box-shadow .15s}
.hero-btn:focus-visible,.main-cta:focus-visible,.secondary-btn:focus-visible,.choice:focus-visible,.step:focus-visible{outline:3px solid #3431aa;outline-offset:3px}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.game-preview{margin-top:20px;border:1px solid #eee1ca;background:#fffaf0;border-radius:18px;padding:18px 20px;display:flex;align-items:center;gap:18px}
.preview-em{font-size:43px;line-height:1.25;flex-shrink:0}
.game-preview strong{font-size:16px}
.game-preview p{color:#596982;font-size:12px;line-height:1.8;margin:5px 0 0}
.category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.category-card{border:1px solid #eee5d6;border-radius:22px;padding:23px 18px;background:#fff;text-align:center}
.category-card:nth-child(2){background:#f8f5ff;border-color:#e7e1fb}
.category-card:nth-child(3){background:#f2fbf5;border-color:#d9eee1}
.category-card .symbol{font-size:45px;display:block;margin-bottom:10px}
.category-card h3{margin:0 0 7px;font-size:17px}
.category-card p{font-size:13px;line-height:1.7;color:#69758b;margin:0}
.bottom-cta{text-align:center;margin-top:30px}
.bottom-cta .hero-btn{display:inline-block}
.parent-note{padding:14px 19px;margin:25px auto 0;max-width:730px;background:#fff7e9;border-radius:17px;color:#6b604f;font-size:13px;line-height:1.8}
.parent-note strong{color:#634e30}
.game-page{background:linear-gradient(180deg,#faf5ff 0,#fffcf4 380px)}
.game-container{max-width:850px}
.game-intro{padding:25px 0 22px;text-align:center}
.game-intro .little{font-size:12px;letter-spacing:.14em;color:#7664d7;font-weight:900}
.game-intro h1{font-size:clamp(26px,5vw,39px);line-height:1.35;letter-spacing:-.05em;margin:8px 0 9px}
.game-intro p{font-size:13px;line-height:1.8;color:#6c7690;margin:0}
.game-top{flex-wrap:wrap}
.game-top h2{margin:0;font-size:20px;letter-spacing:-.04em}
.game-top p{line-height:1.65}
.choices .choice{cursor:pointer}
.choices .choice[aria-pressed="true"]{border-color:#7664d7}
.filter-note{font-size:12px;color:#66758f;line-height:1.65;margin:10px 0 0}
.game-safety-intro{border:1px solid #f1e1b9;background:#fff8e9;border-radius:15px;padding:12px 15px;margin-top:18px;font-size:12px;line-height:1.8;color:#6c6048}
.game-safety-intro strong{color:#493d25}
.mission-panel{scroll-margin-top:15px}
.mission-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:900;letter-spacing:.03em;background:#fff;color:#715cc5;border-radius:100px;padding:6px 10px;margin-bottom:12px}
.mission-panel .mission-desc{font-size:15px}
.mission-steps-help{margin:0;color:#71798b;font-size:12px;line-height:1.6}
.step{min-height:64px}
.step:disabled{cursor:default;opacity:1}
.step.done .tick{color:#fff}
.progress{height:13px}
.celebration{position:relative;overflow:hidden;border:2px solid #f2d57d;padding:25px 15px 23px;animation:celebrate .45s ease-out both}
.celebration:before{content:'✨';position:absolute;top:18px;left:12%;font-size:23px}
.celebration:after{content:'✨';position:absolute;top:24px;right:11%;font-size:23px}
.celebration .medal{display:block;font-size:66px;line-height:1.1;animation:pop .55s ease-out both}
.celebration strong{margin-top:10px}
.celebration p{margin:10px 0 12px}
.achievement{font-weight:900;font-size:15px;color:#77591e;display:block;margin-top:8px}
.celebration .main-cta{width:auto;max-width:100%;margin-top:15px;padding:13px 23px;font-size:14px;box-shadow:0 5px 0 #5948b0}
@keyframes celebrate{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes pop{0%{transform:scale(.6) rotate(-12deg)}70%{transform:scale(1.13) rotate(5deg)}100%{transform:scale(1)}}
.game-footnote{text-align:center;color:#758097;font-size:12px;line-height:1.8;margin:26px 0 35px}
.game-footer{text-align:center;margin-top:20px;border-top:1px solid #eee7e0;padding:23px 0 35px;font-size:12px;color:#8a90a2}
.game-footer a{font-weight:800;color:#6156a2}
.home-link{font-weight:900;text-decoration:none;border-radius:50px;background:#fff;padding:10px 15px;border:1px solid #e5def3;font-size:12px;color:#6655a5;white-space:nowrap}
.home-link:hover{background:#f3ecff}
@media(max-width:750px){
  .toplinks a:not(.navpill){display:none}
  .brand{font-size:clamp(13px,3.85vw,17px);gap:7px}
  .game-preview{padding:15px}
  .category-grid{grid-template-columns:1fr;gap:10px}
  .category-card{display:flex;align-items:center;gap:13px;text-align:left;padding:13px 16px}
  .category-card .symbol{font-size:32px;margin:0}
  .category-card h3{font-size:15px}
  .category-card p{font-size:12px}
  .game-intro{padding:17px 4px 20px}
  .game-top{gap:11px;padding:18px 16px}
  .game-top h2{font-size:17px}
  .controls{padding:19px 16px}
  .mission-badge{margin-bottom:9px}
  .mission-heading{align-items:flex-start}
  .mission-panel h3{overflow-wrap:anywhere}
  .mission-actions{flex-wrap:wrap}
  .mission-actions>*{min-width:130px}
}
@media(max-width:360px){
  .container{padding:0 12px}
  .brand{font-size:13px}
  .brand-icon{width:30px;height:30px;font-size:19px}
  .toplinks{gap:5px}
  .navpill{font-size:10px;padding:8px 9px}
  .home-link{font-size:11px;padding:8px 10px}
  .choice strong{font-size:11px}
  .choice small{font-size:9px}
  .filter-row{grid-template-columns:1fr 1fr;gap:8px}
  .field select{padding:10px 4px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Print only the active mission: all web UI and parent content are hidden */
@media print{
  @page{margin:16mm}
  .game-intro,.game-safety-intro,.game-footnote,.game-footer,.mission-badge,.mission-steps-help,.counter{display:none!important}
  .game-top,.controls,.topbar{display:none!important}
  .game-page{background:#fff!important}
  .game-card{border:0!important;box-shadow:none!important}
  .mission-panel{display:block!important;border:0!important;margin:0!important;padding:0!important}
  .mission-panel .step{border:1px solid #ccc!important}
  .mission-panel .step.done{background:#fff!important}
  .mission-panel .step .tick{color:#000!important;background:#fff!important;border-color:#000!important}
  .mission-panel .progress,.mission-panel .progress-label{display:none!important}
  .celebration{display:none!important}
}

@media(max-width:420px){.mission-actions{flex-direction:column}.mission-actions .secondary-btn{width:100%}}


/* v3: parent contact and policy pages */
.parent-contact .contact-panel{background:linear-gradient(120deg,#fff4dc,#f2eaff);border:1px solid #eee2dc;border-radius:27px;padding:28px 32px;display:flex;gap:24px;align-items:center;justify-content:space-between}
.parent-contact .little{font-weight:900;font-size:12px;color:#7864cf;letter-spacing:.1em}
.parent-contact h2{font-size:24px;letter-spacing:-.045em;line-height:1.45;margin:7px 0 8px}
.parent-contact p{font-size:13px;color:#596983;line-height:1.9;margin:0}
.contact-button{display:inline-block;text-decoration:none;background:#6856c7;color:#fff;padding:14px 19px;border-radius:15px;font-size:14px;font-weight:850;box-shadow:0 5px 0 #50409f;white-space:nowrap;text-align:center}
.contact-button:hover{background:#5948b6}
.contact-button:active{transform:translateY(3px);box-shadow:0 2px 0 #50409f}
.footer-right{max-width:65%;text-align:right}
.footer-links,.game-footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px 18px;margin-bottom:9px}
.footer-links a,.game-footer-links a{color:#62549f;font-weight:750;text-decoration:underline;text-underline-offset:3px}
.game-footer-links{justify-content:center;margin-top:15px;margin-bottom:12px}
.info-page{background:linear-gradient(180deg,#fff8ef,#fffcf4 350px)}
.info-main{max-width:790px;margin:0 auto}
.info-heading{padding:34px 0 18px;text-align:center}
.info-heading h1{font-size:clamp(28px,5vw,39px);letter-spacing:-.05em;line-height:1.4;margin:13px 0 8px}
.info-heading p{font-size:14px;color:#657189;line-height:1.85;margin:0}
.info-card{background:#fff;border:1px solid #efe5dd;border-radius:24px;padding:29px 38px;box-shadow:0 12px 25px rgba(48,53,84,.06)}
.legal-content{font-size:14px;line-height:1.95;color:#43516c}
.legal-content h2{color:var(--ink);font-size:19px;letter-spacing:-.03em;margin:30px 0 9px}
.legal-content h2:first-child{margin-top:0}
.legal-content p{margin:0 0 13px;overflow-wrap:anywhere}
.legal-content a:not(.contact-button){color:#6151ad;text-underline-offset:3px;font-weight:750}
.legal-content code{font-size:.92em;background:#f5f2f8;padding:2px 5px;border-radius:5px}
.legal-content .policy-date{font-size:12px;color:#7a869c;margin:0 0 15px}
.legal-content .small-note{font-size:12px;color:#7c859a}
.info-definition{margin:20px 0;padding:0;border-top:1px solid #eee8e3}
.info-definition>div{display:grid;grid-template-columns:145px 1fr;gap:10px;border-bottom:1px solid #eee8e3;padding:11px 0}
.info-definition dt{font-weight:850;color:#56627a}
.info-definition dd{margin:0}
.inline-contact{margin:8px 0 10px}
@media(max-width:750px){.parent-contact .contact-panel{display:block;padding:22px 20px}.parent-contact h2{font-size:20px}.contact-button{margin-top:15px;white-space:normal;width:100%}.footer-right{text-align:left;max-width:100%;margin-top:14px}.footer-links{justify-content:flex-start}.info-heading{padding:23px 0 17px}.info-card{padding:23px 20px;border-radius:20px}.legal-content{font-size:13px}.legal-content h2{font-size:18px}.info-definition>div{grid-template-columns:105px 1fr}.inline-contact{width:100%}}
@media print{.parent-contact,.footer-right,.game-footer-links{display:none!important}}


/* v4: parent value / five developmental lenses / age navigation / practical articles */
.age-quick{margin:32px 0 0;padding:24px 27px;border:1px solid #e8e1f4;border-radius:23px;background:#fff;box-shadow:0 6px 25px rgba(48,53,84,.04)}
.age-quick h2{font-size:21px;margin:0 0 7px;letter-spacing:-.035em}
.age-quick p{font-size:13px;line-height:1.7;color:#65718a;margin:0 0 14px}
.age-quick-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.age-quick-links a{display:block;text-align:center;text-decoration:none;border:1px solid #d9cef8;background:#f5efff;border-radius:14px;padding:14px 6px;color:#5a46a3;font-size:14px;font-weight:900}
.age-quick-links a:hover{background:#eae0ff}
.age-quick .age-small{font-size:11px;margin:12px 0 0}
.area-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px}
.area-grid article{background:#fff;border:1px solid #ede5da;border-radius:20px;padding:19px 15px}
.area-grid article>span{display:block;font-size:30px;margin-bottom:7px}
.area-grid h3{font-size:14px;line-height:1.55;margin:0 0 8px}
.area-grid p{font-size:12px;line-height:1.8;color:#647188;margin:0}
.area-more{font-size:12px;text-align:center;color:#69768b;line-height:1.8;margin:17px 0 0}
.area-more a{font-weight:800;color:#6252ac}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.article-tile{display:block;padding:25px 22px;background:#fff;border:1px solid #eee6db;border-radius:21px;text-decoration:none;box-shadow:0 8px 15px rgba(48,53,84,.035)}
.article-tile:hover{transform:translateY(-2px);border-color:#bcb0ef}
.article-emoji{font-size:43px;display:block;margin-bottom:8px}
.article-meta{font-size:11px;color:#7660bb;font-weight:900}
.article-tile h3{font-size:19px;line-height:1.5;margin:8px 0}
.article-tile p{font-size:13px;color:#65738a;line-height:1.75}
.article-read{display:inline-block;margin-top:10px;font-size:13px;font-weight:900;color:#5f4bb3}
.learning-note{background:#f2f8f4;border:1px solid #d9ebdf;border-radius:20px;padding:18px 19px;margin-top:18px;color:#364e42}
.learning-note-head{display:flex;align-items:center;gap:7px;font-size:15px}
.learning-note>p{font-size:13px;line-height:1.85;margin:10px 0}
.area-tags{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}
.area-tag{font-size:11px;font-weight:800;background:#fff;color:#3f6252;border-radius:99px;padding:6px 10px;border:1px solid #cce2d5}
.age-tip{background:white;padding:12px 15px;border-radius:13px;border:1px solid #deece1;margin:12px 0}
.age-tip strong{font-size:12px;color:#3d7256}
.age-tip p{margin:5px 0 0;font-size:13px;line-height:1.75}
.learning-note .voice-tip{margin:10px 0;font-size:12px}
.learning-note .learning-disclaimer{font-size:10px;color:#6b8075;line-height:1.65;margin:8px 0 0}
.article-page .info-main{max-width:850px}
.article-content h2{border-top:1px solid #efe9e3;padding-top:21px;margin-top:25px}
.article-content h3{font-size:16px;color:#33405c;margin:20px 0 7px}
.article-content ol{padding-left:21px;line-height:2}
.article-content li{margin:9px 0}
.quick-facts{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 19px}
.quick-facts span{border:1px solid #e6dafa;border-radius:99px;padding:6px 11px;font-size:12px;background:#fbf7ff;color:#60569b;font-weight:800}
.age-table{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin:14px 0}
.age-table>div{background:#fffaf1;padding:14px 16px;border-radius:15px;border:1px solid #f5e7c9}
.age-table strong{color:#8255a7}
.age-table p{font-size:13px;line-height:1.7;margin:5px 0 0}
.area-guide>div{padding:8px 0 5px;border-bottom:1px solid #eee7db}
.area-guide h3{font-size:16px;margin:12px 0 3px}
.area-guide p{font-size:13px}
.safe-note{background:#fff8e9;border-left:4px solid #eab85c;padding:12px 16px;border-radius:7px}
.article-end-cta{margin-top:35px;padding:24px;border-radius:20px;background:linear-gradient(115deg,#fff1db,#ede8ff);text-align:center}
.article-end-cta strong{font-size:19px;color:#273451}
.article-end-cta p{font-size:13px;line-height:1.9;margin:8px 0 17px}
.article-end-cta .hero-btn{font-size:13px;padding:13px 19px}
@media(max-width:800px){.area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-grid{grid-template-columns:1fr}.article-tile{padding:18px 19px}.article-emoji{font-size:32px}.age-quick-links{grid-template-columns:repeat(2,minmax(0,1fr))}.age-quick{padding:19px}}
@media(max-width:400px){.age-table{grid-template-columns:1fr}.area-grid{grid-template-columns:1fr}.area-grid article{display:grid;grid-template-columns:36px 1fr;column-gap:7px}.area-grid article>span{grid-row:span 2}.area-grid h3{margin:0}.age-quick-links a{padding:12px 4px;font-size:12px}}
@media print{.age-quick,.age-quick-links,.article-end-cta{display:none!important}.learning-note{break-inside:avoid}}
