/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.table{display:table}.grow{flex-grow:1}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}:root{--paper:#fff9ec;--paper-deep:#fff0d2;--white:#fff;--ink:#29434a;--navy:#315d72;--navy-deep:#2b7180;--teal:#2fa79e;--teal-soft:#dff8ef;--blue:#62b6e2;--sky:#a9def7;--coral:#f27968;--coral-soft:#ffe6df;--amber:#ffc84b;--amber-soft:#fff3bd;--sand:#e2ae73;--green:#72bd7a;--lavender:#a99bea;--lavender-soft:#efebff;--muted:#63777c;--line:#eadfc9;--shadow:0 18px 48px #46889b24;--shadow-small:0 8px 22px #46889b1c;--rounded-font:"Arial Rounded MT Bold", "PingFang SC", "Microsoft YaHei", sans-serif;--radius:22px;--radius-small:14px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:#eefaff;min-width:320px}body{background:linear-gradient(180deg, #eaf9ff 0, var(--paper) 420px);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;font-size:16px;line-height:1.55}button,select,textarea,input{font:inherit}button,label,select{-webkit-tap-highlight-color:transparent}button{color:inherit}button:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #11827d52}button:disabled{cursor:not-allowed;opacity:.48}.profile-gate{background:radial-gradient(circle at 14% 18%,#ffd24e80 0 92px,#0000 94px),radial-gradient(circle at 88% 12%,#a9def7a6 0 130px,#0000 132px),linear-gradient(145deg,#e7faff,#fff8db 58%,#ffece7);place-items:center;min-height:100vh;padding:clamp(22px,5vw,64px);display:grid}.profile-card{background:#fffffff0;border:1px solid #62b6e252;border-radius:30px;width:min(790px,100%);padding:clamp(26px,5vw,48px);overflow:hidden;box-shadow:0 28px 80px #315d722e}.profile-card.loading{text-align:center;max-width:520px}.profile-card.loading h1{color:var(--navy);font-family:var(--rounded-font);margin:10px 0 4px}.profile-sun{font-size:64px;animation:2.5s ease-in-out infinite iconFloat;display:block}.profile-brand{grid-template-columns:54px 1fr auto;align-items:center;gap:18px;display:grid}.profile-brand p{color:var(--teal);letter-spacing:.16em;margin:0;font-size:11px;font-weight:900}.profile-brand h1{color:var(--navy);font-family:var(--rounded-font);margin:1px 0;font-size:clamp(30px,5vw,44px);line-height:1.2}.profile-brand span{color:var(--muted)}.profile-brand>b{color:var(--amber);font-size:58px}.profile-label{color:var(--navy);margin:0 0 10px;font-size:14px;font-weight:900}.profile-list{margin-top:30px}.profile-list>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.profile-choice{border:1px solid var(--line);cursor:pointer;text-align:left;background:linear-gradient(145deg,#fff,#eefaff);border-radius:18px;grid-template-columns:48px 1fr;align-items:center;min-height:72px;padding:11px 15px;display:grid}.profile-choice:hover{border-color:var(--teal);transform:translateY(-2px)}.profile-choice>span{grid-row:1/3;font-size:35px}.profile-choice strong{color:var(--navy);font-family:var(--rounded-font);font-size:17px}.profile-choice small{color:var(--teal);font-weight:800}.profile-create{background:linear-gradient(145deg,#fff9d8,#e9faf4);border-radius:22px;margin-top:28px;padding:22px}.avatar-picker{flex-wrap:wrap;gap:8px;display:flex}.avatar-picker button{cursor:pointer;background:#fff;border:2px solid #fff;border-radius:50%;width:48px;height:48px;font-size:27px;box-shadow:0 4px #62b6e224}.avatar-picker button.active{border-color:var(--teal);background:var(--teal-soft);transform:translateY(-2px)}.nickname-row{grid-template-columns:1fr auto;align-items:end;gap:12px;margin-top:15px;display:grid}.nickname-row label{color:var(--muted);flex-direction:column;gap:5px;font-size:12px;font-weight:800;display:flex}.nickname-row input{border:1px solid var(--line);min-height:48px;color:var(--navy);background:#fff;border-radius:13px;padding:10px 14px;font-size:16px}.profile-error{color:#a54035;margin:12px 0 0;font-size:13px;font-weight:800}.profile-privacy{color:var(--muted);text-align:center;margin:18px 0 0;font-size:12px}.app-shell{background:radial-gradient(circle at 9% 11%, #ffd8684d 0 90px, transparent 92px), linear-gradient(180deg, #eaf9ff 0, var(--paper) 480px);min-height:100vh}.topbar{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe6;border-bottom:1px solid #62b6e23d;justify-content:space-between;align-items:center;height:78px;padding:0 clamp(22px,4vw,64px);display:flex;position:sticky;top:0}.brand{cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:12px;min-height:52px;padding:0;display:flex}.brand-mark{background:var(--amber);width:43px;height:48px;color:var(--navy);font-family:var(--rounded-font);box-shadow:3px 3px 0 var(--coral);border:2px solid #f4a93c;border-radius:9px 9px 14px 14px;place-items:center;font-size:24px;font-weight:800;display:grid;transform:rotate(-3deg)}.brand>span:last-child{flex-direction:column;line-height:1.2;display:flex}.brand strong{color:var(--navy);font-family:var(--rounded-font);letter-spacing:.02em;font-size:17px}.brand small{color:var(--muted);letter-spacing:.12em;margin-top:3px;font-size:12px;font-weight:650}.topbar-stats{align-items:center;gap:12px;display:flex}.profile-switch{background:var(--teal-soft);min-height:40px;color:var(--navy);cursor:pointer;border:1px solid #2fa79e47;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;display:inline-flex}.profile-switch>span{font-size:21px}.profile-switch strong{text-overflow:ellipsis;white-space:nowrap;max-width:88px;font-size:12px;overflow:hidden}.profile-switch small{color:var(--teal);font-size:10px;font-weight:850}.status-dot,.passport-pill,.reward-pill{border:1px solid var(--line);min-height:38px;color:var(--muted);background:#ffffffd9;border-radius:999px;align-items:center;gap:8px;padding:7px 13px;font-size:13px;font-weight:700;display:inline-flex}.status-dot i{background:var(--green);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #3a8a6821}.status-dot.offline i{background:var(--amber);box-shadow:0 0 0 4px #e2a43a29}.passport-pill{background:var(--coral-soft);color:#7d3d33;border-color:#e36f5c47}.passport-pill strong{min-width:22px;color:var(--navy);text-align:center;font-size:16px}.reward-pill{min-height:38px;color:var(--navy);background:#fff8d7;border-color:#ffc84b85;padding:7px 11px}.reward-pill.gems{background:#eaf8ff;border-color:#62b6e26b}.reward-pill strong{font-size:15px}.main-nav{z-index:25;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border-bottom:1px solid #62b6e233;justify-content:center;align-items:stretch;gap:8px;height:62px;padding:0 clamp(22px,4vw,64px);display:flex;position:sticky;top:78px}.main-nav button{min-width:112px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:0 18px;font-size:14px;font-weight:750;transition:color .16s,border-color .16s,background-color .16s;position:relative}.main-nav button:hover,.main-nav button.active{border-bottom-color:var(--teal);color:var(--navy);background:#2fa79e1a}.main-nav button>span{color:var(--teal);margin-right:7px;font-size:17px}.main-nav button b{background:var(--coral);color:#fff;border-radius:10px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:11px;display:grid;position:absolute;top:8px;right:8px}.map-view,.mission-view,.standard-view{width:min(1280px,100% - 44px);margin:0 auto;padding:40px 0 72px}.hero-panel{min-height:390px;box-shadow:var(--shadow);color:var(--ink);background:linear-gradient(150deg,#ffffffeb,#effcffb8),linear-gradient(135deg,#bfeaff,#fff3bd);border:1px solid #62b6e259;border-radius:30px;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);align-items:center;gap:clamp(36px,6vw,84px);padding:clamp(32px,5vw,66px);display:grid;position:relative;overflow:hidden}.sunny-decor{pointer-events:none;position:absolute;inset:0;overflow:hidden}.sun-shape,.cloud-shape,.spark-shape{-webkit-user-select:none;user-select:none;display:block;position:absolute}.sun-shape{color:var(--amber);filter:drop-shadow(0 10px 18px #ffc84b40);font-size:116px;line-height:1;animation:5s ease-in-out infinite sunnyFloat;top:-34px;right:23%}.cloud-shape{color:#ffffffe0;filter:drop-shadow(0 8px 12px #46889b1a);line-height:1}.cloud-one{font-size:64px;top:24px;left:8%}.cloud-two{font-size:86px;bottom:18px;right:5%}.spark-shape{color:var(--coral);font-size:28px;animation:3.8s ease-in-out infinite reverse sunnyFloat;top:32%;right:44%}@keyframes sunnyFloat{50%{transform:translateY(-7px)rotate(3deg)}}.hero-copy{z-index:1;position:relative}.eyebrow,.game-kicker{color:var(--teal);letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:850}.hero-copy .eyebrow{color:#17877f}.hero-copy h1{max-width:740px;color:var(--navy);font-family:var(--rounded-font);letter-spacing:-.04em;margin:0 0 20px;font-size:clamp(38px,5.4vw,70px);font-weight:700;line-height:1.12}.hero-copy>p:not(.eyebrow){color:#527079;max-width:680px;margin:0;font-size:17px}.hero-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:30px;display:flex}.primary-button,.secondary-button,.danger-button,.sound-button,.text-button,.back-button,.next-link,.parent-actions button,.parent-actions label{cursor:pointer;border:1px solid #0000;border-radius:12px;min-height:48px;padding:11px 19px;font-weight:800;transition:transform .14s,box-shadow .14s,background-color .14s}.primary-button{background:var(--amber);color:var(--navy);border-color:#f0aa35;box-shadow:0 6px #eaa73a}.primary-button:hover:not(:disabled),.secondary-button:hover:not(:disabled),.danger-button:hover:not(:disabled),.sound-button:hover:not(:disabled){transform:translateY(-2px)}.primary-button:active:not(:disabled){transform:translateY(4px);box-shadow:0 2px #eaa73a}.secondary-button{background:var(--white);color:var(--navy);box-shadow:0 4px 0 var(--line);border-color:#0b3b4a38}.danger-button{background:var(--coral);color:#fff;border-color:#b95343}.text-button,.back-button,.next-link{color:var(--teal);box-shadow:none;background:0 0;border-color:#0000;padding-left:10px;padding-right:10px}.hero-copy .text-button{color:#16877e}.passport-card{color:var(--ink);background:linear-gradient(155deg,#fffef9,#fff7df);border:2px solid #ffffffe6;border-radius:18px;padding:28px;position:relative;transform:rotate(1.5deg);box-shadow:12px 14px #62b6e238}.passport-card:after{content:"KET";color:#e36f5cb3;border:3px double #e36f5c8f;border-radius:50%;place-items:center;width:64px;height:64px;font-family:Georgia,serif;font-weight:800;display:grid;position:absolute;bottom:20px;right:22px;transform:rotate(-14deg)}.passport-head{border-bottom:2px solid var(--navy);color:var(--navy);letter-spacing:.15em;justify-content:space-between;align-items:center;padding-bottom:17px;font-size:11px;font-weight:900;display:flex}.passport-head b{border:1px solid var(--navy);padding:4px 7px;font-size:15px}.passport-route{grid-template-columns:52px 1fr 52px;align-items:center;margin:25px 0;display:grid}.route-pin{border:2px solid var(--teal);background:var(--teal-soft);width:52px;height:52px;color:var(--navy);border-radius:50%;place-items:center;font-size:11px;font-weight:900;display:grid}.route-pin.muted{border-color:var(--line);background:var(--white);color:var(--muted)}.route-line{border-top:2px dashed var(--teal);height:2px}.route-line i{border-top:2px solid var(--teal);border-right:2px solid var(--teal);width:14px;height:14px;display:block;position:relative;top:-9px;left:48%;transform:rotate(45deg)}.passport-card dl{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;display:grid}.passport-card dl div{border-right:1px solid var(--line);padding-right:8px}.passport-card dl div:last-child{border-right:0}.passport-card dt{color:var(--muted);font-size:11px}.passport-card dd{color:var(--navy);margin:4px 0 0;font-size:15px;font-weight:850}.stamp-row{gap:9px;margin-top:24px;display:flex}.stamp-row span{color:#c7beaf;border:1px dashed #bcb2a3;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.stamp-row span.earned{border:2px solid var(--coral);color:var(--coral);transform:rotate(-8deg)}.reward-garden{border-radius:var(--radius);box-shadow:var(--shadow-small);background:linear-gradient(115deg,#e8fbf3,#fff8d9 62%,#f0edff);border:1px solid #2fa79e40;justify-content:space-between;align-items:center;gap:24px;margin-top:18px;padding:20px 24px;display:flex}.reward-buddy{align-items:center;gap:16px;display:flex}.reward-buddy>span{background:#fff;border:2px solid #ffc84ba6;border-radius:22px;place-items:center;width:68px;height:68px;font-size:38px;animation:4s ease-in-out infinite iconFloat;display:grid}.reward-buddy .eyebrow{margin-bottom:2px}.reward-buddy h3{color:var(--navy);font-family:var(--rounded-font);margin:0;font-size:22px}.reward-buddy p:last-child{color:var(--muted);margin:2px 0 0;font-size:13px}.reward-counters{gap:10px;display:flex}.reward-counters>div{background:#fffc;border:1px solid #62b6e233;border-radius:15px;grid-template-columns:auto 1fr;align-items:center;gap:0 8px;min-width:94px;padding:10px;display:grid}.reward-counters span{grid-row:1/3;font-size:25px}.reward-counters strong{color:var(--navy);font-size:20px;line-height:1}.reward-counters small{color:var(--muted);font-size:10px}.section-heading{justify-content:space-between;align-items:end;gap:28px;margin:54px 0 24px;display:flex}.section-heading h1,.section-heading h2,.mission-header h1{color:var(--navy);font-family:var(--rounded-font);letter-spacing:-.035em;margin:0;font-size:clamp(30px,4vw,48px);line-height:1.15}.section-heading h2{font-size:clamp(29px,3vw,40px)}.section-heading>p{max-width:440px;color:var(--muted);text-align:right;margin:0}.world-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.world-card{--world-color:var(--teal);--world-bg:#edfbf6;border:1px solid var(--line);border-top:5px solid var(--world-color);border-radius:var(--radius);background:linear-gradient(155deg, var(--white), var(--world-bg));min-height:318px;box-shadow:var(--shadow-small);flex-direction:column;padding:23px;transition:transform .18s,box-shadow .18s;display:flex}.world-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.world-card.blue{--world-color:var(--blue);--world-bg:#e4f5ff}.world-card.sky{--world-color:#55b5d9;--world-bg:#e8faff}.world-card.coral{--world-color:var(--coral);--world-bg:#fff0eb}.world-card.amber{--world-color:#e6aa22;--world-bg:#fff7d9}.world-card.sand{--world-color:#dc9660;--world-bg:#fff0df}.world-card.navy{--world-color:var(--lavender);--world-bg:var(--lavender-soft)}.world-card.locked{filter:saturate(.45)}.world-top{justify-content:space-between;align-items:center;display:flex}.world-number{color:var(--world-color);font-family:Georgia,serif;font-size:15px;font-weight:900}.world-icon{background:#ffffffdb;border:1px solid #0b3b4a1a;border-radius:15px;place-items:center;width:52px;height:52px;font-size:26px;animation:4s ease-in-out infinite iconFloat;display:grid;box-shadow:0 5px #62b6e21f}@keyframes iconFloat{50%{transform:translateY(-4px)rotate(2deg)}}.world-card>p{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin:25px 0 5px;font-size:11px;font-weight:800}.world-card h3{color:var(--navy);font-family:var(--rounded-font);margin:0 0 9px;font-size:24px}.world-focus{min-height:48px;color:var(--ink);font-size:14px}.world-card small{color:var(--muted);margin-top:10px;font-size:12px}.world-card .world-content-count{color:var(--world-color);margin-top:8px;font-weight:850}.world-level-path{color:#8a9a9d;align-items:center;gap:5px;margin-top:13px;font-size:10px;font-weight:850;display:flex}.world-level-path span{border:1px solid var(--line);background:#ffffffb3;border-radius:999px;padding:3px 7px}.world-level-path span.done{background:var(--teal-soft);color:var(--teal);border-color:#2fa79e4d}.world-level-path i{font-style:normal}.world-card-progress{background:#315d721a;border-radius:99px;height:5px;margin-top:11px;position:relative;overflow:visible}.world-card-progress>i{border-radius:inherit;background:var(--world-color);position:absolute;inset:0 auto 0 0}.world-card-progress>small{color:var(--muted);margin:0;font-size:9px;position:absolute;top:7px;right:0}.world-card>button{border:0;border-top:1px solid var(--line);min-height:46px;color:var(--world-color);cursor:pointer;text-align:left;background:0 0;justify-content:space-between;margin-top:auto;padding:10px 0 0;font-weight:850;display:flex}.mission-view{width:min(1160px,100% - 44px)}.environment-map{border-radius:var(--radius);box-shadow:var(--shadow-small);background:linear-gradient(145deg,#eefaff,#fff9e7);border:1px solid #62b6e24d;margin-top:18px;padding:22px}.environment-map-head{justify-content:space-between;align-items:end;gap:20px;display:flex}.environment-map-head .eyebrow{margin-bottom:3px}.environment-map-head h2{color:var(--navy);font-family:var(--rounded-font);margin:0;font-size:23px}.environment-meta{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.environment-meta>span{color:var(--muted);font-size:12px;font-weight:750}.music-toggle{background:var(--lavender-soft);color:#6659a7;cursor:pointer;border:1px solid #a99bea73;border-radius:999px;min-height:44px;padding:8px 13px;font-size:12px;font-weight:850}.music-toggle.playing{background:var(--teal-soft);color:#17776f;border-color:#2fa79e73;animation:1.8s ease-in-out infinite musicGlow}@keyframes musicGlow{50%{box-shadow:0 0 0 6px #2fa79e1a}}.scene-route{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px;display:grid;position:relative}.scene-route:before{content:"";z-index:0;border-top:3px dashed #2fa79e59;position:absolute;top:43px;left:12%;right:12%}.scene-route button{z-index:1;min-height:118px;color:var(--ink);cursor:pointer;text-align:left;background:#ffffffe0;border:2px solid #fff;border-radius:18px;grid-template-columns:34px 50px 1fr;align-items:center;padding:13px 14px;transition:transform .15s,border-color .15s;display:grid;position:relative;box-shadow:0 5px #62b6e221}.scene-route button:hover,.scene-route button.active{border-color:var(--teal);transform:translateY(-3px)}.scene-route button.complete{background:linear-gradient(145deg,#fff,#e9faef)}.scene-route button:disabled{filter:grayscale(.45);transform:none}.scene-route-index{background:var(--amber);width:26px;height:26px;color:var(--navy);border-radius:50%;place-items:center;font-size:12px;font-weight:900;display:grid}.scene-route button>b{text-align:center;font-size:34px}.scene-route button>strong{color:var(--navy);font-family:var(--rounded-font);justify-content:space-between;align-items:center;gap:8px;display:flex}.scene-route button>small{color:var(--muted);grid-column:2/-1}.scene-route button>i{color:var(--green);grid-column:2/-1;font-size:11px;font-style:normal;font-weight:850}.scene-route button>i.scene-lock{color:#8b7182}.scene-stage-badge{background:var(--amber-soft);color:#986b00;white-space:nowrap;border-radius:999px;padding:3px 7px;font-family:inherit;font-size:9px;font-style:normal}.scene-difficulty{color:#d89812;letter-spacing:.05em}.progressive-panel{border-radius:var(--radius);box-shadow:var(--shadow-small);background:linear-gradient(135deg,#fff,#eafaf5);border:1px solid #2fa79e45;grid-template-columns:minmax(270px,.85fr) minmax(390px,1.15fr);gap:28px;margin-top:16px;padding:22px;display:grid}.progressive-panel.practice{background:linear-gradient(135deg,#fff,#eaf7ff);border-color:#62b6e259}.progressive-panel.challenge{background:linear-gradient(135deg,#fff,#f1edff);border-color:#a99bea61}.progressive-copy h2{color:var(--navy);font-family:var(--rounded-font);margin:2px 0 6px;font-size:22px}.progressive-copy>p:last-of-type{color:var(--muted);margin:0;font-size:13px}.stage-track{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px;display:grid}.stage-track>span{border:1px solid var(--line);color:#809094;background:#ffffffc2;border-radius:12px;align-items:center;gap:6px;padding:7px;display:flex}.stage-track b{background:#e5ecec;border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.stage-track small{font-size:10px;font-weight:850}.stage-track span.active{border-color:var(--teal);color:var(--navy);box-shadow:inset 0 -3px #2fa79e26}.stage-track span.done b{background:var(--teal);color:#fff}.category-progress-head{color:var(--navy);justify-content:space-between;align-items:center;display:flex}.category-progress-head>span{color:#d99c18;letter-spacing:.08em}.category-chips{grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0;display:grid}.category-chips button{border:1px solid var(--line);min-height:46px;color:var(--muted);cursor:pointer;background:#fff;border-radius:12px;padding:6px;font-size:10px;font-weight:800}.category-chips button span{color:var(--teal);font-size:14px;display:block}.category-chips button.done{color:var(--green);background:#eefaf0;border-color:#72bd7a61}.progress-meter{background:#315d721a;border-radius:99px;height:9px;overflow:hidden}.progress-meter i{border-radius:inherit;background:linear-gradient(90deg, var(--amber), var(--teal));height:100%;transition:width .25s;display:block}.scene-finish{background:var(--amber);width:100%;min-height:44px;color:var(--navy);cursor:pointer;border:0;border-radius:13px;margin-top:11px;font-size:13px;font-weight:900;box-shadow:0 5px #e7a82d}.scene-finish:disabled{box-shadow:none}.mission-header{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(120deg, var(--white), #effbff);min-height:148px;box-shadow:var(--shadow-small);align-items:center;padding:26px 118px 26px 150px;display:flex;position:relative}.mission-header .back-button{position:absolute;top:18px;left:20px}.mission-header h1{font-size:39px}.mission-header div>p:last-child{color:var(--muted);margin:7px 0 0}.large-world-icon{border:2px solid var(--blue);background:linear-gradient(145deg, var(--teal-soft), #e8f7ff);border-radius:50%;place-items:center;width:76px;height:76px;font-size:38px;display:grid;position:absolute;right:26px}.game-tabs{grid-template-columns:repeat(6,1fr);gap:8px;margin:22px 0;display:grid}.game-tabs button{border:1px solid var(--line);border-radius:var(--radius-small);min-height:70px;color:var(--muted);cursor:pointer;background:#ffffffdb;padding:9px 8px;font-size:13px;font-weight:780}.game-tabs button span{color:var(--teal);font-family:Georgia,serif;font-size:21px;display:block}.game-tabs button small{color:#91a0a3;margin-top:2px;font-size:9px;display:block}.game-tabs button.done{border-color:#72bd7a59}.game-tabs button.done span{color:var(--green)}.game-tabs button:hover,.game-tabs button.active{border-color:var(--teal);background:linear-gradient(145deg, var(--teal-soft), #effbff);color:var(--navy)}.game-stage{min-height:480px}.play-card{border:1px solid var(--line);background:linear-gradient(150deg, var(--white), #fffdf8);min-height:480px;box-shadow:var(--shadow);border-radius:26px;overflow:hidden}.scene-combination,.official-word-card{grid-template-columns:minmax(330px,.88fr) minmax(420px,1.12fr);display:grid}.scene-story-panel,.knowledge-challenge,.word-environment,.word-challenge-panel{min-width:0;padding:clamp(28px,4vw,52px)}.scene-story-panel{border-right:1px solid var(--line);background:linear-gradient(165deg,#e8f8ff,#e8fbf3 58%,#fff5d2);flex-direction:column;justify-content:center;display:flex}.scene-combination.coral .scene-story-panel{background:linear-gradient(165deg,#fff0e8,#fff7d7)}.scene-combination.amber .scene-story-panel{background:linear-gradient(165deg,#fff7cf,#eaf9f4)}.scene-combination.lavender .scene-story-panel{background:linear-gradient(165deg,#f0edff,#e9f8ff)}.scene-sky{background:radial-gradient(circle at 82% 20%, var(--amber) 0 28px, transparent 29px), linear-gradient(180deg, #c9eeff 0 64%, #bfe7bf 65%);border-radius:26px;justify-content:center;align-items:end;gap:24px;min-height:150px;display:flex;overflow:hidden}.scene-landmark{filter:drop-shadow(0 7px #315d7214);font-size:76px}.animal-guide{transform-origin:bottom;font-size:88px;animation:2.8s ease-in-out infinite animalWave}@keyframes animalWave{50%{transform:rotate(4deg)translateY(-5px)}}.scene-story-panel h2,.knowledge-challenge h3,.word-challenge-panel h3{color:var(--navy);font-family:var(--rounded-font);margin:7px 0}.scene-story-panel h2{font-size:34px}.scene-story-panel>p:not(.game-kicker){color:var(--muted);margin:0}.scene-story-panel blockquote{border-left:5px solid var(--coral);color:var(--ink);background:#ffffffb3;border-radius:0 14px 14px 0;margin:20px 0 0;padding:15px 17px}.scene-story-panel blockquote strong{color:var(--navy)}.combo-flow{grid-template-columns:repeat(2,1fr);gap:7px;margin-top:18px;display:grid}.combo-flow span{color:var(--muted);text-align:center;background:#ffffffbf;border:1px solid #2fa79e33;border-radius:999px;padding:7px 9px;font-size:11px}.knowledge-challenge{flex-direction:column;justify-content:center;display:flex}.challenge-meta{justify-content:space-between;align-items:center;gap:12px;display:flex}.challenge-meta>b{color:var(--muted);font-size:12px}.knowledge-challenge>h3{font-size:clamp(27px,3vw,38px)}.knowledge-challenge>small{color:var(--muted)}.pattern-card{background:var(--lavender-soft);border:1px solid #a99bea59;border-radius:16px;margin:20px 0 14px;padding:16px 18px}.pattern-card span{color:#7465bd;letter-spacing:.08em;font-size:11px;font-weight:850}.pattern-card strong{color:var(--navy);margin:4px 0;font-size:18px;display:block}.pattern-card p{color:var(--muted);margin:0;font-size:13px}.mission-line{color:var(--ink);margin:0 0 18px}.combo-options{margin-top:8px}.combo-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:18px;display:flex}.combo-progress-note{max-width:250px;color:var(--muted);text-align:right;margin:0;font-size:11px}.knowledge-nav{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.auto-advance-note{color:#367b50;background:#e8f8ec;border-radius:10px;margin:10px 0 0;padding:9px 12px;font-size:13px;font-weight:850}.word-environment{border-right:1px solid var(--line);background:linear-gradient(150deg,#eaf9ff,#e6fbf3);flex-direction:column;justify-content:center;display:flex}.word-scene-icon{background:linear-gradient(#c9eeff 0 65%,#fff0bd 66%);border-radius:28px;justify-content:center;align-items:end;gap:15px;min-height:145px;display:flex}.word-scene-icon span{font-size:72px}.word-scene-icon b{font-size:78px;animation:3s ease-in-out infinite animalWave}.word-environment h2{color:var(--navy);font-family:var(--rounded-font);overflow-wrap:anywhere;margin:10px 0 0;font-size:clamp(36px,5vw,58px)}.word-environment>p:not(.game-kicker){color:var(--muted);margin:3px 0 18px}.word-environment .sound-button{align-self:flex-start}.word-environment>small{color:var(--muted);margin-top:16px}.word-meaning{background:linear-gradient(135deg,#fff7d9,#fff0ea);border:1px solid #f2796847;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:2px 12px;margin:12px 0 8px;padding:13px 15px;display:grid}.word-meaning.concealed{background:0 0;border:0;padding:0;display:block}.word-meaning>span{background:var(--coral);color:#fff;border-radius:999px;grid-row:1/3;padding:5px 8px;font-size:11px;font-weight:850}.word-meaning strong{color:var(--navy);font-family:var(--rounded-font);font-size:22px}.word-meaning small{color:var(--muted);font-size:10px}.meaning-reveal{width:100%;min-height:62px;color:var(--navy);text-align:left;cursor:pointer;background:#ffffffb8;border:1px dashed #267b9a59;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:1px 11px;padding:10px 15px;transition:transform .16s,border-color .16s,background .16s;display:grid}.meaning-reveal:hover,.meaning-reveal:focus-visible{border-color:var(--teal);background:#fff;transform:translateY(-1px)}.meaning-reveal>span{grid-row:1/3;font-size:25px}.meaning-reveal strong{font-family:var(--rounded-font);font-size:15px}.meaning-reveal small{color:var(--muted);font-size:11px}.meaning-hide{color:var(--teal);font:inherit;cursor:pointer;background:0 0;border:0;grid-column:2;justify-self:start;padding:3px 0;font-size:11px;font-weight:800}.meaning-hide:hover,.meaning-hide:focus-visible{text-decoration:underline}.chinese-mini{color:var(--coral);margin-left:9px;font-size:12px;font-style:normal;font-weight:750;display:inline-block}.word-facts{gap:7px;margin-top:20px;display:grid}.word-facts span{color:var(--muted);background:#ffffffbf;border-radius:10px;padding:8px 11px;font-size:12px}.word-facts b{color:var(--navy)}.word-challenge-panel{flex-direction:column;justify-content:center;display:flex}.word-challenge-panel h3{margin:10px 0 20px;font-size:clamp(25px,3vw,35px)}.word-learning-note{border-left:5px solid var(--amber);background:var(--amber-soft);color:var(--muted);border-radius:0 12px 12px 0;padding:15px;font-size:13px}.word-challenge-panel>.primary-button{align-self:flex-start;margin-top:12px}.word-challenge-panel>.next-link{align-self:flex-end;margin-top:18px}.word-input{border:2px solid var(--blue);width:100%;min-height:64px;color:var(--navy);background:#fff;border-radius:15px;padding:13px 17px;font-size:22px;font-weight:750}.parent-rewards{grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0;display:grid}.parent-rewards>span{border:1px solid var(--line);background:#ffffffb8;border-radius:14px;flex-direction:column;align-items:center;padding:12px 6px;font-size:24px;display:flex}.parent-rewards b{color:var(--navy);font-size:19px}.parent-rewards small{color:var(--muted);font-size:10px}.reward-parent-card{background:linear-gradient(145deg,#fff9db,#e8fbf3)}.two-column,.listening-card,.expression-layout,.writing-layout{grid-template-columns:.9fr 1.1fr;display:grid}.visual-question,.answer-panel,.audio-console,.prompt-panel,.record-panel,.writing-prompt,.writing-editor{min-width:0;padding:clamp(28px,5vw,60px)}.visual-question{background:linear-gradient(150deg, var(--teal-soft), #e8f8ff);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.picture-emoji{background:var(--white);border:2px solid #ffc84bb8;border-radius:36px;place-items:center;width:122px;height:122px;font-size:62px;display:grid;box-shadow:8px 8px #ffc84b40}.visual-question h2,.audio-console h2,.prompt-panel h2,.writing-prompt h2,.sentence-intro h2{color:var(--navy);font-family:var(--rounded-font);margin:20px 0 2px;font-size:clamp(30px,4vw,46px);line-height:1.18}.visual-question>p:not(.game-kicker){color:var(--muted);margin:0 0 15px}.sound-button{background:var(--white);color:var(--navy);border-color:#0b3b4a29;box-shadow:0 4px #0b3b4a1f}.visual-question blockquote{max-width:380px;color:var(--ink);margin:22px 0 0;font-family:Georgia,serif;font-size:17px;font-style:italic}.answer-panel{flex-direction:column;justify-content:center;display:flex}.step-label{color:var(--coral);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:850}.answer-panel h3{color:var(--navy);font-family:var(--rounded-font);margin:13px 0 26px;font-size:clamp(25px,3vw,36px);line-height:1.3}.option-list{gap:12px;display:grid}.option-list button{border:1px solid var(--line);background:var(--white);min-height:64px;color:var(--ink);cursor:pointer;text-align:left;border-radius:13px;align-items:center;gap:14px;padding:12px 16px;font-weight:700;transition:border-color .14s,transform .14s,background-color .14s;display:flex}.option-list button:hover{border-color:var(--teal);background:#edfbf7;transform:translate(4px)}.option-list button span{border:1px solid var(--line);width:34px;height:34px;color:var(--teal);border-radius:50%;flex:0 0 34px;place-items:center;font-family:Georgia,serif;font-weight:900;display:grid}.feedback-card{border-radius:var(--radius-small);border:1px solid;grid-template-columns:44px 1fr auto;align-items:center;gap:15px;min-height:84px;margin-top:18px;padding:17px 20px;display:grid}.feedback-card.success{background:#e8f8ec;border-color:#3a8a6859}.feedback-card.retry{background:var(--amber-soft);border-color:#e2a43a73}.feedback-card>span{background:var(--white);width:42px;height:42px;color:var(--green);border-radius:50%;place-items:center;font-size:24px;font-weight:900;display:grid}.feedback-card strong{color:var(--navy)}.feedback-card p{color:var(--muted);margin:2px 0 0;font-size:14px}.feedback-card button{background:var(--teal);color:#fff;cursor:pointer;border:0;border-radius:10px;min-height:44px;padding:9px 15px;font-weight:800}.sentence-card{padding:clamp(30px,5vw,62px)}.sentence-intro{max-width:760px}.sentence-intro h2{margin-top:0;font-size:clamp(28px,3vw,40px)}.sentence-intro>p:last-child{color:var(--muted)}.rail-track{border-top:5px double var(--blue);border-bottom:5px double var(--blue);background:#eaf8ff;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:104px;margin:34px 0;padding:16px;display:grid}.rail-track>span{color:var(--muted);letter-spacing:.08em;font-size:10px;font-weight:900}.chosen-tokens,.token-bank{flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;display:flex}.chosen-tokens em{color:#8d958f;font-style:normal}.chosen-tokens button,.token-bank button{border:1px solid var(--line);background:var(--white);min-height:46px;color:var(--navy);cursor:pointer;box-shadow:0 3px 0 var(--line);border-radius:13px;padding:9px 15px;font-weight:760}.chosen-tokens button{border-color:var(--teal);background:var(--teal-soft)}.token-bank{border-radius:var(--radius-small);border:1px dashed #afa799;min-height:94px;padding:18px}.game-actions{justify-content:flex-end;gap:12px;margin-top:28px;display:flex}.notice-paper{border-right:1px solid var(--line);background:linear-gradient(155deg,#fff9d8,#fff0d6);flex-direction:column;justify-content:center;min-height:480px;margin:0;padding:clamp(34px,7vw,84px);display:flex}.notice-paper span{border:2px solid var(--coral);color:var(--coral);letter-spacing:.12em;text-transform:uppercase;align-self:flex-start;padding:7px 10px;font-size:11px;font-weight:900;transform:rotate(-2deg)}.notice-paper p{color:var(--navy);font-family:var(--rounded-font);margin:30px 0 0;font-size:clamp(25px,3.4vw,42px);font-weight:700;line-height:1.38}.audio-console{color:var(--ink);background:linear-gradient(145deg,#dff5ff,#e5fbf4);flex-direction:column;justify-content:center;display:flex}.audio-console .game-kicker{color:#188b83}.audio-console h2{color:var(--navy)}.audio-console>p:not(.game-kicker){color:var(--muted)}.audio-icon{border:2px solid var(--blue);background:var(--white);width:86px;height:86px;color:var(--teal);border-radius:50%;place-items:center;font-size:24px;display:grid;box-shadow:0 7px #62b6e22e}.audio-console>div{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.audio-console small{color:var(--muted);margin-top:18px}.expression-switch{border-bottom:1px solid var(--line);background:#fff9df;justify-content:center;gap:8px;padding:16px;display:flex}.expression-switch button{min-height:43px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;padding:8px 18px;font-weight:800}.expression-switch button.active{border-color:var(--teal);background:var(--teal-soft);color:var(--navy)}.prompt-panel,.writing-prompt{border-right:1px solid var(--line);background:linear-gradient(145deg,#fff2ea,#fff9d9);flex-direction:column;justify-content:center;display:flex}.guide-lines{gap:10px;margin-top:26px;display:grid}.guide-lines span{color:var(--muted);border-bottom:1px dashed #b8ad9e;padding:10px 0}.record-panel{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.record-orb{border:2px solid var(--coral);background:var(--coral-soft);width:86px;height:86px;color:var(--coral);border-radius:50%;place-items:center;font-size:35px;display:grid}.record-orb.recording{animation:1.2s ease-in-out infinite recordPulse}@keyframes recordPulse{50%{box-shadow:0 0 0 14px #e36f5c1f}}.record-panel h3{color:var(--navy);margin:16px 0 0;font-size:23px}.record-panel>p{color:var(--muted);margin:7px 0 20px}.record-panel audio{width:min(100%,360px);margin:16px 0}.self-check{border-bottom:1px solid var(--line);width:min(100%,360px);min-height:42px;color:var(--ink);text-align:left;align-items:center;gap:10px;padding:8px 0;display:flex}.self-check input,.writing-checks input,.switch-row input{width:21px;height:21px;accent-color:var(--teal)}.full{width:min(100%,360px);margin-top:18px}.error-text{color:#a84134;max-width:420px;margin:10px 0}.writing-prompt p:not(.game-kicker){white-space:pre-line;color:var(--ink);font-size:17px}.writing-editor{flex-direction:column;display:flex}.writing-editor textarea{resize:vertical;border-radius:var(--radius-small);min-height:235px;color:var(--navy);background:#fffef9;border:1px solid #bcb4a8;padding:20px;font-family:Georgia,serif;font-size:18px;line-height:1.7}.writing-status{color:var(--muted);justify-content:space-between;gap:12px;margin:10px 0 18px;font-size:12px;display:flex}.writing-status span:first-child{color:var(--coral);font-weight:900}.writing-status span.ready{color:var(--green)}.writing-checks{gap:7px;margin-bottom:20px;display:grid}.writing-checks label{align-items:center;gap:9px;min-height:40px;display:flex}.standard-view{min-height:calc(100vh - 140px)}.standard-view>.section-heading{margin-top:10px}.review-layout{grid-template-columns:280px 1fr;gap:18px;display:grid}.review-summary,.review-list,.ledger-card,.parent-card,.metric-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:var(--shadow-small)}.review-summary{min-height:310px;color:var(--navy);background:linear-gradient(145deg,#fff1b8,#dff6ff);flex-direction:column;justify-content:center;align-items:flex-start;padding:30px;display:flex}.review-summary>span{color:#3c7c86;letter-spacing:.1em;font-size:13px;font-weight:800}.review-summary>strong{color:var(--coral);font-family:var(--rounded-font);font-size:78px;line-height:1.1}.review-summary p{color:var(--muted);margin:6px 0 24px}.review-list{min-height:310px;padding:12px 22px}.review-row{border-bottom:1px solid var(--line);grid-template-columns:86px 1fr auto;align-items:center;gap:15px;min-height:78px;padding:13px 0;display:grid}.review-row:last-child{border-bottom:0}.review-row div{flex-direction:column;display:flex}.review-row small{color:var(--muted)}.review-row>b{color:var(--muted);font-size:13px}.review-row>b.due{color:var(--coral)}.empty-panel{min-height:285px;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-panel>span{color:var(--teal);font-size:44px}.empty-panel h3{color:var(--navy);margin:10px 0 2px}.empty-panel p{margin:0}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.metric-card{border-top:5px solid var(--teal);background:linear-gradient(150deg, var(--white), #f4fffb);min-height:152px;padding:22px}.metric-card.amber{border-top-color:var(--amber)}.metric-card.coral{border-top-color:var(--coral)}.metric-card.navy{border-top-color:var(--lavender)}.metric-card.green{border-top-color:var(--green)}.metric-card>span{color:var(--muted);font-size:13px;font-weight:750}.metric-card strong{color:var(--navy);margin:6px 0 3px;font-family:Georgia,serif;font-size:38px;line-height:1;display:block}.metric-card p{color:var(--muted);margin:0;font-size:12px}.ledger-card{overflow:hidden}.ledger-mode-tabs{gap:8px;margin:4px 0 14px;display:flex}.ledger-mode-tabs button{border:1px solid var(--line);background:var(--white);min-height:48px;color:var(--muted);cursor:pointer;border-radius:11px;padding:10px 16px;font-weight:800}.ledger-mode-tabs button.active{border-color:var(--teal);background:var(--teal-soft);color:var(--navy)}.ledger-mode-tabs button span{color:var(--teal);margin-left:6px;font-family:Georgia,serif}.ledger-note{border-left:5px solid var(--amber);background:var(--amber-soft);min-height:58px;color:var(--muted);align-items:center;gap:18px;margin-bottom:14px;padding:13px 18px;font-size:13px;display:flex}.ledger-note strong{color:var(--navy);flex:none}.ledger-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:86px;padding:18px 22px;display:flex}.ledger-toolbar>div{flex-direction:column;display:flex}.ledger-toolbar span{color:var(--muted);font-size:13px}.ledger-toolbar select{border:1px solid var(--line);background:var(--white);min-width:150px;min-height:44px;color:var(--navy);border-radius:10px;padding:8px 34px 8px 12px}.vocabulary-tools{align-items:center;gap:8px;display:flex}.vocabulary-tools input{border:1px solid var(--line);background:var(--white);width:210px;min-height:44px;color:var(--navy);border-radius:10px;padding:8px 12px}.ledger-table-wrap{max-height:620px;overflow:auto}.ledger-table{border-collapse:collapse;width:100%;min-width:850px;font-size:13px}.ledger-table th{z-index:2;border-bottom:1px solid var(--line);background:var(--paper-deep);color:var(--muted);letter-spacing:.05em;text-align:center;padding:13px 12px;font-size:11px;position:sticky;top:0}.ledger-table th:first-child{text-align:left}.ledger-table td{text-align:center;border-bottom:1px solid #ebe5da;padding:11px 12px}.ledger-table td:first-child{text-align:left;min-width:300px}.ledger-table td:first-child strong,.ledger-table td:first-child small{display:block}.ledger-table td:first-child strong{color:var(--navy);margin-top:5px}.ledger-table td:first-child small{color:var(--muted)}.vocab-ledger-table{min-width:1180px}.vocab-ledger-table td:first-child{min-width:240px}.vocab-ledger-table .topic-cell{min-width:230px;max-width:300px;color:var(--muted);text-align:left;font-size:11px}.ledger-pagination{border-top:1px solid var(--line);min-height:64px;color:var(--muted);justify-content:space-between;align-items:center;gap:16px;padding:11px 18px;font-size:13px;display:flex}.ledger-pagination div{gap:8px;display:flex}.ledger-pagination button{border:1px solid var(--line);background:var(--white);min-height:42px;color:var(--navy);cursor:pointer;border-radius:9px;padding:8px 13px;font-weight:750}.domain-tag{background:var(--teal-soft);color:#17635f;border-radius:5px;justify-content:center;align-items:center;min-width:58px;padding:3px 7px;font-size:10px;font-weight:850;display:inline-flex}.domain-tag.grammar{color:#315d80;background:#dde9f4}.domain-tag.function{background:var(--amber-soft);color:#805c1d}.domain-tag.exam{background:var(--coral-soft);color:#8f493e}.ledger-table i{border-radius:50%;place-items:center;width:24px;height:24px;font-style:normal;font-weight:900;display:inline-grid}.ledger-table i.done{color:var(--green);background:#dff1e7}.ledger-table i.pending{color:#a69f94;background:#eee9df}.parent-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.parent-card{min-height:250px;padding:clamp(24px,4vw,38px)}.parent-card h3{color:var(--navy);font-family:var(--rounded-font);margin:0 0 10px;font-size:26px}.parent-card>p:not(.eyebrow){color:var(--muted)}.parent-card ol{gap:10px;margin:18px 0 0;padding:0;list-style:none;display:grid}.parent-card li{grid-template-columns:45px 1fr;align-items:center;gap:12px;display:grid}.parent-card li>span{border:1px solid var(--teal);width:42px;height:42px;color:var(--teal);border-radius:50%;place-items:center;font-family:Georgia,serif;font-weight:900;display:grid}.parent-card li div{flex-direction:column;display:flex}.parent-card li small{color:var(--muted)}.parent-actions{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.parent-actions button,.parent-actions label{border-color:var(--line);color:var(--navy);background:#f5fbff;position:relative;overflow:hidden}.parent-actions input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.switch-row{border:1px solid var(--line);cursor:pointer;background:#f5fbff;border-radius:10px;align-items:center;gap:11px;min-height:52px;margin-top:22px;padding:10px 14px;font-weight:750;display:flex}.danger-card{background:#fff5f1;border-color:#e36f5c57}footer{min-height:76px;color:var(--muted);background:linear-gradient(100deg,#dff8ef,#e6f7ff);border-top:1px solid #2fa79e33;justify-content:space-between;align-items:center;gap:30px;padding:20px clamp(22px,4vw,64px);font-size:11px;display:flex}footer span:first-child{color:var(--navy);white-space:nowrap;font-weight:800}footer a{color:var(--muted);text-decoration:none}footer a:hover{color:var(--teal);text-decoration:underline}@media (width<=1050px){.world-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-panel{grid-template-columns:1.15fr .85fr;gap:34px}.metric-grid{grid-template-columns:repeat(2,1fr)}.main-nav button{min-width:100px;padding:0 12px}}@media (width<=820px){.topbar{height:68px;padding:0 20px}.status-dot,.profile-switch small{display:none}.reward-garden{flex-direction:column;align-items:stretch}.reward-counters{justify-content:stretch}.reward-counters>div{flex:1}.main-nav{z-index:40;height:72px;padding:0 max(8px, env(safe-area-inset-left)) env(safe-area-inset-bottom) max(8px, env(safe-area-inset-right));gap:0;position:fixed;inset:auto 0 0;box-shadow:0 -8px 28px #0b3b4a1f}.main-nav button{border-top:3px solid #0000;border-bottom:0;flex:1;min-width:0;padding:5px 2px;font-size:11px}.main-nav button:hover,.main-nav button.active{border-top-color:var(--teal);border-bottom-color:#0000}.main-nav button>span{margin:0;font-size:19px;display:block}.main-nav button b{top:4px;right:15%}.map-view,.mission-view,.standard-view{width:min(100% - 28px,720px);padding-top:22px;padding-bottom:104px}.hero-panel{grid-template-columns:1fr;padding:36px}.passport-card{max-width:420px;transform:none}.mission-header{padding:78px 96px 26px 26px}.mission-header .back-button{left:16px}.large-world-icon{width:66px;height:66px;font-size:32px;bottom:25px;right:20px}.environment-map-head{flex-direction:column;align-items:flex-start;gap:10px}.environment-meta{align-items:flex-start;width:100%}.progressive-panel{grid-template-columns:1fr;gap:18px}.game-tabs{scrollbar-width:none;scroll-snap-type:x proximity;grid-template-columns:repeat(6,minmax(106px,1fr));padding-bottom:4px;overflow-x:auto}.game-tabs::-webkit-scrollbar{display:none}.game-tabs button{scroll-snap-align:start}.scene-combination,.official-word-card{grid-template-columns:1fr}.scene-story-panel,.word-environment{border-right:0;border-bottom:1px solid var(--line)}.two-column,.listening-card,.expression-layout,.writing-layout{grid-template-columns:1fr}.notice-paper{border-right:0;border-bottom:1px solid var(--line);min-height:310px}.visual-question{min-height:390px}.prompt-panel,.writing-prompt{border-right:0;border-bottom:1px solid var(--line)}.review-layout{grid-template-columns:1fr}.review-summary{min-height:230px}.parent-grid{grid-template-columns:1fr}footer{flex-direction:column;align-items:flex-start;gap:7px;margin-bottom:72px}}@media (width<=560px){.profile-gate{padding:14px}.profile-card{border-radius:23px;padding:24px 18px}.profile-brand{grid-template-columns:48px 1fr;gap:12px}.profile-brand>b{display:none}.profile-list>div{grid-template-columns:1fr}.profile-create{padding:17px}.nickname-row{grid-template-columns:1fr}.nickname-row .primary-button{width:100%}.brand strong{font-size:14px}.brand small{font-size:10px}.profile-switch{padding:4px 7px}.profile-switch>span{font-size:19px}.profile-switch strong{max-width:54px;font-size:10px}.passport-pill{display:none}.topbar-stats{gap:5px}.reward-pill{min-height:34px;padding:5px 8px;font-size:12px}.hero-panel{border-radius:22px;padding:30px 24px}.hero-copy h1{font-size:39px}.hero-copy>p:not(.eyebrow){font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.passport-card{padding:23px}.passport-card dl{grid-template-columns:1fr}.passport-card dl div{border-right:0;border-bottom:1px solid var(--line);justify-content:space-between;padding:5px 0;display:flex}.world-grid{grid-template-columns:1fr}.world-card{min-height:284px}.section-heading{flex-direction:column;align-items:flex-start}.section-heading>p{text-align:left}.mission-header{padding-right:24px}.large-world-icon{display:none}.play-card{border-radius:20px}.reward-garden{padding:18px}.reward-buddy>span{width:58px;height:58px;font-size:32px}.reward-buddy h3{font-size:19px}.reward-counters{grid-template-columns:repeat(3,1fr);display:grid}.reward-counters>div{min-width:0}.scene-route{grid-template-columns:1fr}.scene-route:before{border-top:0;border-left:3px dashed #2fa79e59;inset:12% auto 12% 30px}.scene-route button{min-height:100px}.progressive-panel{padding:18px}.stage-track small{font-size:9px}.category-chips{grid-template-columns:repeat(2,1fr)}.scene-sky,.word-scene-icon{min-height:125px}.animal-guide{font-size:72px}.scene-landmark{font-size:60px}.combo-actions{flex-direction:column;align-items:stretch}.combo-actions button{width:100%}.combo-progress-note{text-align:left;max-width:none}.visual-question,.answer-panel,.audio-console,.prompt-panel,.record-panel,.writing-prompt,.writing-editor,.sentence-card{padding:28px 22px}.rail-track{text-align:center;grid-template-columns:1fr}.rail-track>span{display:none}.feedback-card{grid-template-columns:38px 1fr}.feedback-card button{grid-column:1/-1}.metric-grid{grid-template-columns:1fr 1fr}.metric-card{min-height:136px;padding:18px}.metric-card strong{font-size:31px}.review-row{grid-template-columns:70px 1fr}.review-row>b{grid-column:2}.ledger-toolbar{flex-direction:column;align-items:stretch}.ledger-note{flex-direction:column;align-items:flex-start;gap:4px}.vocabulary-tools{flex-direction:column;align-items:stretch}.vocabulary-tools input{width:100%}.ledger-pagination{flex-direction:column;align-items:stretch}.parent-rewards{grid-template-columns:repeat(2,1fr)}footer span:first-child{white-space:normal}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
