:root{--fs-caption:12px;--fs-small:13px;--fs-body:15px;--fs-body-lg:16px;--fs-title-sm:17px;--fs-lead:17px;--fs-title:19px;--fs-h2:clamp(20px,2.2vw,24px);--fs-h1:clamp(24px,3vw,30px);--fs-display:clamp(30px,4vw,40px);--e0-bg:var(--surface-tint);--hatch-pending:repeating-linear-gradient(135deg,rgba(255,255,255,0.55) 0 2px,rgba(255,255,255,0) 2px 5px);--radius-card:0px}.parent-status-progress>i{background:#ffffff}.benchmark-progress>i{background:var(--benchmark)}:is(.child-page-head,.parent-page-header,.benchmark-page-head,.report-page-head){gap:14px}:is(.child-page-head,.parent-page-header,.benchmark-page-head,.report-page-head)>:first-child:not(.page-head-art){flex:1 1 auto;min-width:0}:is(.child-page-head,.parent-page-header,.benchmark-page-head,.report-page-head)>.page-head-art+*{flex:1 1 auto;min-width:0}:is(.child-page-head,.parent-page-header,.benchmark-page-head,.report-page-head)>.page-head-art{order:-1;align-self:center}.page-head-action{flex-shrink:0}.report-page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.report-page-head h1{margin:2px 0 0;font-size:var(--fs-h2);line-height:1.35}:is(.child-eyebrow,.parent-eyebrow,.benchmark-eyebrow){font-feature-settings:"palt" 1}.page-head-art{flex-shrink:0;width:64px;height:64px;border-radius:14px;background-image:url(/brand/screen-motifs.webp);background-size:300% 200%;background-repeat:no-repeat;background-color:transparent;box-shadow:0 1px 3px rgba(22,40,79,.1)}.page-head-art.screening{background-position:0 0}.page-head-art.plan{background-position:50% 0}.page-head-art.lessons{background-position:100% 0}.page-head-art.exam{background-position:0 100%}.page-head-art.results{background-position:50% 100%}@media (min-width:768px){.page-head-art{width:76px;height:76px;border-radius:16px}}:is(.section-heading,.lesson-subject-heading) h2{font-feature-settings:"palt" 1;letter-spacing:-.01em}h1,h2{text-wrap:balance}h1,h2,h3{font-feature-settings:"palt" 1}ruby{white-space:nowrap}.brand-hero-lead,.child-subject-card .child-subject-meta{text-wrap:pretty}.big,.child-next-progress b,.legend,.parent-chart .sub{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.card,.child-subject-card,.formula,.lesson-recommend-card,.qpassage,.task{border-radius:var(--radius-card)}.daydetail,.parent-chart,.parent-mastery-kpis>div,.results-disclosure-body>.card{box-shadow:none;background-color:var(--e0-bg);border-radius:var(--radius-card)}.card .card{box-shadow:none;background-color:var(--e0-bg)}.parent-mastery-card{border-radius:0}.lesson-recommend-card,.parent-action-card{box-shadow:var(--shadow-md)}.card.parent-action-card,.parent-shell .account-delete-warning,.parent-shell .account-learner-note,.parent-shell .note,.parent-shell .parent-action-ok,.parent-shell .parent-area-portfolio>.card,.parent-shell .parent-area-recent>.card,.parent-shell .parent-dashboard>.card,.parent-shell .parent-status-stats>div{border-radius:var(--radius-card)}.chat-sheet,.worldmap-sheet{box-shadow:var(--shadow-lg)}.celebrate-art{display:block;width:100%;max-width:320px;height:auto;margin:2px auto 8px;border-radius:var(--radius);background-color:#f5f8fe}@media (min-width:768px){.celebrate-art{max-width:380px}}.map-coach{display:grid;grid-gap:12px;gap:12px;margin:0 0 16px;padding:14px;border:1px solid var(--line-strong);border-radius:var(--radius);background-color:var(--card);color:var(--ink);box-shadow:var(--shadow-sm)}.map-coach h2{margin:0;font-size:var(--fs-title)}.map-coach p{margin:0;color:var(--sub);font-size:var(--fs-small);line-height:1.9}.map-coach-art{display:block;width:100%;max-width:340px;height:auto;justify-self:center;border-radius:var(--radius-sm);background-color:#f5f7fd}@media (min-width:768px){.map-coach{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);align-items:center;gap:8px 20px;padding:18px 22px}.map-coach-art{grid-row:1/3;grid-column:2;max-width:100%}.map-coach>:not(.map-coach-art){grid-column:1}.map-coach>h2{align-self:end}.map-coach>p{align-self:start}}.account-intro-art{display:block;width:100%;max-width:420px;height:auto;margin:0 auto 14px;border-radius:var(--radius);background-color:#f5f7fd;box-shadow:var(--shadow-sm)}@media (min-width:768px){.account-intro-art{max-width:480px}}.report-banner{display:block;width:100%;height:auto;max-height:132px;object-fit:cover;object-position:center;margin:0 0 16px;border:1px solid var(--line);border-radius:var(--radius);background-color:#f4f7fd}.report-lines{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.spark text{fill:var(--sub);font-size:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.parent-mastery-stack>i.pending{background-image:var(--hatch-pending)}.child-home-extra{display:grid;grid-gap:12px;gap:12px;grid-column:1/-1;min-width:0}.child-subject-grid{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px}.child-subject-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;grid-gap:4px 12px;gap:4px 12px;min-height:44px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-card);background-color:var(--card);box-shadow:var(--shadow-sm);color:inherit;text-decoration:none;transition:transform var(--dur-fast) ease,box-shadow var(--dur-fast) ease,border-color var(--dur-fast) ease}.child-subject-card:focus-visible,.child-subject-card:hover{transform:translateY(-2px);border-color:var(--line-strong);box-shadow:var(--shadow-md)}.child-subject-card>.subject-art{grid-row:1/3;width:44px;height:44px;border-radius:12px}.child-subject-card b{font-size:var(--fs-body-lg);line-height:1.4}.child-subject-card .child-subject-meta{display:flex;flex-direction:column;margin:0;color:var(--sub);font-size:var(--fs-caption);line-height:1.6;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.child-subject-card .bar{grid-column:2;margin-top:2px}.child-streak-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;grid-gap:6px;gap:6px;margin-top:10px}.child-streak-day{display:grid;align-content:end;justify-items:center;grid-gap:4px;gap:4px;min-height:44px}.child-streak-bar{width:100%;min-height:6px;border-radius:8px 8px 4px 4px;background-color:var(--primary-light)}.child-streak-bar.is-active{background-image:linear-gradient(180deg,#22a175 0,var(--ok) 100%)}.child-streak-label{color:var(--sub);font-size:11px;line-height:1}.child-streak-day.is-today .child-streak-label{color:var(--primary-text);font-weight:800}.child-title-card .child-title-label{margin:2px 0 0;font-size:var(--fs-h2);font-weight:800;letter-spacing:-.01em;line-height:1.35}.child-title-card .child-title-next{margin:6px 0 8px;color:var(--sub);font-size:var(--fs-small);line-height:1.8}.child-level-card.is-top{padding:10px 14px;margin-bottom:12px}.child-level-row{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center}.child-level-body{display:grid;grid-gap:6px;gap:6px;min-width:0}.child-level-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.child-level-line .child-eyebrow{margin:0}.child-level-band{font-size:12px;font-weight:800;color:var(--primary-text)}.child-level-today{margin-left:auto;font-size:12px;color:var(--sub)}.child-level-card .child-level-next{margin:0;color:var(--sub);font-size:12px;line-height:1.6}.child-level-card .child-level-bar{height:12px}.child-level-card .child-level-ticket{margin-top:6px}@media (max-width:559px){.child-level-today{margin-left:0;flex-basis:100%}}.level-badge{position:fixed;top:10px;right:12px;z-index:12;display:inline-grid;gap:3px;justify-items:stretch;padding:5px 7px 6px;border-radius:999px;background:rgba(255,255,255,.92);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border:1px solid var(--line);box-shadow:0 2px 10px rgba(22,40,79,.1);pointer-events:none}.level-badge .xp-badge{min-width:46px;height:28px;font-size:15px;box-shadow:none}.level-badge .xp-badge small{font-size:9px}.level-badge-bar{position:relative;overflow:hidden;height:4px;border-radius:999px;background:#e3ebfa}.level-badge-bar>i{position:absolute;inset:0 auto 0 0;border-radius:999px;background:linear-gradient(90deg,#4f8cff 0,var(--primary) 100%)}@media (min-width:960px) and (max-width:1279px){.level-badge{top:76px;right:24px}}@media (min-width:1280px){.level-badge{top:14px;right:18px}}.xp-badge.band-wood{background:linear-gradient(135deg,#a5764f,#7a4f2e);box-shadow:0 2px 0 rgba(90,58,30,.35)}.xp-badge.band-bronze{background:linear-gradient(135deg,#d08a4b,#a3602a);box-shadow:0 2px 0 rgba(120,70,25,.4),inset 0 0 0 1px rgba(255,255,255,.35)}.xp-badge.band-silver{background:linear-gradient(135deg,#cfd6df,#8e99a6);color:#2b3440;box-shadow:0 2px 0 rgba(90,100,115,.35),inset 0 0 0 1px rgba(255,255,255,.7)}.xp-badge.band-gold{background:linear-gradient(135deg,#ffe08a,#F2B04C 55%,#d08f1f);color:#5a3d00;box-shadow:0 2px 0 rgba(160,110,20,.4),0 0 10px rgba(242,176,76,.45),inset 0 0 0 1px rgba(255,255,255,.7)}.xp-badge.band-rainbow{background:linear-gradient(135deg,#7fb0ff,#b48cff 30%,#F2B04C 60%,#4fd1a5);color:#1d2a3a;box-shadow:0 2px 0 rgba(60,60,120,.35),0 0 12px rgba(180,140,255,.5),inset 0 0 0 1px rgba(255,255,255,.75)}.xp-meter{display:grid;grid-gap:8px;gap:8px;margin-top:12px;padding:12px 14px;border:1px solid #c9d9f6;border-radius:var(--radius);background:linear-gradient(180deg,#ffffff,#f4f8ff);text-align:left}.xp-meter-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:10px;gap:10px}.xp-badge{display:inline-grid;place-items:center;min-width:52px;height:36px;padding:0 10px;border-radius:999px;background:linear-gradient(135deg,var(--primary) 0,var(--primary-deep,#1a4bb0) 100%);color:#fff;font-weight:800;font-size:18px;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;box-shadow:0 2px 0 rgba(26,75,176,.35);transform-origin:center}.xp-badge small{font-size:10px;font-weight:800;opacity:.85;margin-right:2px}.xp-badge.is-pop{animation:xp-badge-pop .42s var(--ease-spring) both}.xp-meter-title{font-weight:800;color:var(--primary-text);font-size:14px}.xp-meter-count{min-width:3ch;text-align:right;font-weight:800;font-size:20px;line-height:1;color:var(--ok);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.xp-meter.is-running .xp-meter-count{animation:xp-count-bob .6s ease-in-out infinite alternate}.xp-bar{position:relative;overflow:hidden;height:16px;border-radius:999px;background:#e3ebfa;box-shadow:inset 0 1px 2px rgba(29,85,189,.18)}.xp-bar-fill{position:absolute;inset:0 auto 0 0;border-radius:999px;background:linear-gradient(90deg,#4f8cff 0,var(--primary) 60%,#7fb0ff 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);transition:none}.xp-meter.is-flash .xp-bar-fill{background:linear-gradient(90deg,#ffd66b,#F2B04C 60%,#ffe9a8);box-shadow:0 0 12px 2px rgba(242,176,76,.55)}.xp-meter.is-flash .xp-bar{box-shadow:0 0 0 2px rgba(242,176,76,.45),inset 0 1px 2px rgba(29,85,189,.18)}.xp-bar-shine{position:absolute;top:0;bottom:0;width:40%;left:-40%;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.55) 50%,rgba(255,255,255,0));opacity:0;pointer-events:none}.xp-meter.is-running .xp-bar-shine{opacity:1;animation:xp-shine 1.1s linear infinite}.xp-meter-foot{margin:0;color:var(--sub);font-size:13px;line-height:1.7}.xp-levelup{margin:2px 0 0;padding:8px 10px;border-radius:var(--radius-sm,11px);background:#fff6df;color:#7a4d00;font-weight:800;font-size:15px;text-align:center}.xp-levelup.anim-pop{animation-name:pop-in-lift}.xp-band-up{font-weight:800;color:var(--primary-text)}.xp-band-up,.xp-milestone{text-align:center}.xp-ticket{justify-self:center}.child-level-record-list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-gap:6px;gap:6px}.child-level-record-list li{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:6px 0;border-bottom:1px solid var(--primary-light)}.child-level-record-list li:last-child{border-bottom:0}@keyframes xp-shine{0%{left:-40%}to{left:100%}}@keyframes xp-badge-pop{0%{transform:scale(1)}45%{transform:scale(1.22)}to{transform:scale(1)}}@keyframes xp-count-bob{0%{transform:translateY(0)}to{transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.xp-badge.is-pop,.xp-levelup.anim-pop,.xp-meter.is-running .xp-bar-shine,.xp-meter.is-running .xp-meter-count{animation:none}.xp-bar-shine{opacity:0}}@media (min-width:560px){.child-subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:960px){.child-home-extra{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.child-home-extra>.child-subject-section{grid-column:1/-1}.child-home-extra>.child-streak-section{grid-column:1}.child-home-extra>.child-title-card{grid-column:2}.child-subject-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:1280px){.child-subject-card{grid-template-columns:48px minmax(0,1fr)}.child-subject-card>.subject-art{width:48px;height:48px}}.child-today-headline{margin:0 0 8px;font-size:var(--fs-body-lg);font-weight:800;letter-spacing:-.01em;color:var(--primary-text)}.chip-card-pill{color:#8a6508;border-color:#e3cf9a;background-color:#fdf6e3}.chip-card-note{display:inline-flex;align-items:center;gap:3px;margin-left:6px;color:#8a6508;font-weight:700}.plan-waiting{margin-top:14px}.plan-waiting-head{margin:0 0 6px}.parent-action-ok:before,.sum-list li:before,button.choice[aria-pressed=true]:after{content:"";background-repeat:no-repeat;background-position:50%}.sum-list li:before{background-color:var(--ok-bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23157a52' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5l4 4 8-9'/%3E%3C/svg%3E");background-size:12px 12px}.parent-action-ok:before{background-color:var(--ok);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5l4 4 8-9'/%3E%3C/svg%3E");background-size:13px 13px}button.choice[aria-pressed=true]:after{background-color:var(--primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23ffffff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5l4 4 8-9'/%3E%3C/svg%3E");background-size:13px 13px}.nav-icon>svg{width:18px;height:18px}.parent-nav-logo-mark,.parent-nav-logo-name,.parent-nav-toggle{display:none}.parent-nav-menu{display:contents}@media (max-width:959px){html:has(.parent-nav){scroll-padding-top:calc(76px + env(safe-area-inset-top));scroll-padding-bottom:0}main.parent-shell{padding-top:calc(84px + env(safe-area-inset-top));padding-bottom:32px}.parent-nav{top:0;bottom:auto;left:0;right:0;width:100%;height:calc(64px + env(safe-area-inset-top));flex-direction:row;align-items:center;justify-content:space-between;gap:10px;padding:env(safe-area-inset-top) max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));border-top:0;border-right:0;border-bottom:1px solid var(--line);background:rgba(255,255,255,.97);box-shadow:0 5px 20px rgba(23,53,95,.1);z-index:40}.parent-nav .parent-nav-brand{display:flex;align-items:center;gap:8px;min-width:0;margin:0 auto 0 0;padding:6px 0;color:var(--ink);font-size:17px;font-weight:850}.parent-nav-logo-mark,.parent-nav-logo-name{display:inline-flex;align-items:center}.parent-nav-logo-mark{flex:0 0 36px}.parent-nav-logo-mark,.parent-nav-logo-mark svg{width:36px;height:36px}.parent-nav-desktop-label{display:none}.parent-nav-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:9px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--parent-navy,var(--ink));font:inherit;cursor:pointer}.parent-nav-toggle:hover{background:var(--primary-light)}.parent-nav-toggle svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.parent-nav-menu{display:none;position:absolute;top:100%;left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));max-height:calc(100dvh - 72px - env(safe-area-inset-top));overflow-y:auto;padding:8px;border:1px solid var(--line);border-radius:12px;background:var(--card);box-shadow:0 12px 30px rgba(23,53,95,.18)}.parent-nav-menu.is-open{display:grid;grid-gap:4px;gap:4px}.parent-nav .parent-nav-menu a{flex:none;width:100%;min-width:44px;min-height:44px;justify-content:flex-start;padding:10px 12px;border-radius:9px;color:var(--sub);font-size:14px;text-align:left}.parent-nav .parent-nav-menu a.active,.parent-nav .parent-nav-menu a[aria-current=page]{background:var(--primary-light);color:var(--primary-deep,var(--primary-text))}}@media (prefers-reduced-motion:reduce){.child-subject-card{transition:none}.child-subject-card:focus-visible,.child-subject-card:hover{transform:none}.qchip{transition:none}.qchip.sel{transform:none}.task{transition:none}}.fukumaru-say{display:flex;align-items:flex-start;gap:10px;margin-top:10px;text-align:left}.fukumaru-say-mascot{flex-shrink:0;line-height:0}.fukumaru-say-bubble{flex:1 1;min-width:0;padding:10px 12px;border-radius:12px;background-color:var(--primary-light);color:var(--primary-text);font-size:var(--fs-body);line-height:1.95}.fukumaru-say-title{display:block;margin-bottom:2px;color:var(--primary-deep);font-size:var(--fs-body-lg);letter-spacing:-.01em}.fukumaru-say.is-tale .fukumaru-say-bubble{border-radius:var(--radius-sm);background-color:var(--surface-tint);border:1px solid var(--line);color:var(--ink)}.fukumaru-say-source{display:block;margin-top:6px;color:var(--sub);font-size:var(--fs-caption)}.exam-section-icon.subject-art{width:34px;height:34px;border-radius:10px;background-color:transparent;font-size:0}.assessment-subject-scores .subject-art{width:28px;height:28px;border-radius:9px}.learning-visual{margin:14px 0 10px;padding:12px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-tint);text-align:center}.learning-visual img{display:block;width:100%;height:auto;max-height:min(52vh,520px);margin:0 auto;border-radius:var(--radius-sm);object-fit:contain}.learning-visual figcaption{margin-top:9px;color:var(--ink);font-size:var(--fs-body);font-weight:700;line-height:1.8;text-align:left}.learning-visual-source{display:block;margin:4px 0 0;color:var(--sub);font-size:var(--fs-caption);line-height:1.7;text-align:left}@media (min-width:768px){.learning-visual{padding:16px}}