.pet-avatar[data-v-4fa88707]{display:inline-grid;place-items:center;flex-shrink:0;overflow:hidden;border-radius:50%;background:var(--primary-soft, rgba(120, 200, 160, .18));border:1px solid var(--line, rgba(0, 0, 0, .08))}.pet-avatar__img[data-v-4fa88707]{width:88%;height:88%;object-fit:contain}.pet-avatar__fallback[data-v-4fa88707]{display:grid;place-items:center;width:100%;height:100%;color:var(--on-primary, #fff);background:var(--primary, #5bb98c);font-family:var(--font-display, inherit);font-weight:700;line-height:1}.header-right[data-v-d993bf78]{display:flex;align-items:center;gap:14px}.header-nav[data-v-d993bf78]{display:flex;gap:6px;flex-wrap:wrap}.header-nav__link[data-v-d993bf78]{display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;color:var(--ink);text-decoration:none;border:1px solid transparent;border-radius:999px;opacity:.78;font-weight:600}.header-nav__link[data-v-d993bf78]:hover{opacity:1}.header-nav__link.active[data-v-d993bf78]{color:var(--primary);background:var(--primary-soft);border-color:var(--line);opacity:1;font-weight:800}.user-menu[data-v-d993bf78]{position:relative}.user-chip[data-v-d993bf78]{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;color:var(--ink);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-weight:700}.user-chip__avatar[data-v-d993bf78]{display:grid;place-items:center;width:30px;height:30px;color:var(--on-primary);background:var(--primary);border-radius:50%;font-family:var(--font-display)}.user-chip__caret[data-v-d993bf78]{color:var(--muted);font-size:12px}.user-pop[data-v-d993bf78]{position:absolute;right:0;top:calc(100% + 8px);z-index:30;display:flex;flex-direction:column;min-width:168px;padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 32px #00000029}.user-pop button[data-v-d993bf78]{display:flex;align-items:center;gap:8px;padding:10px 12px;color:var(--ink);background:transparent;border:0;border-radius:10px;font-weight:600;text-align:left}.user-pop button[data-v-d993bf78]:hover{background:var(--primary-soft)}.user-pop button.danger[data-v-d993bf78]{color:#c0392b}@media(max-width:760px){.header-nav[data-v-d993bf78]{display:none}.user-chip[data-v-d993bf78]{padding:4px}.user-chip__name[data-v-d993bf78],.user-chip__caret[data-v-d993bf78]{display:none}}.mobile-tabbar[data-v-f90239af]{display:none}@media(max-width:760px){.mobile-tabbar[data-v-f90239af]{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--surface) 92%,transparent);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}.mobile-tab[data-v-f90239af]{display:flex;flex-direction:column;align-items:center;gap:2px;padding:5px 2px;color:var(--muted);text-decoration:none;border-radius:12px}.mobile-tab__icon[data-v-f90239af]{font-size:20px;line-height:1}.mobile-tab__label[data-v-f90239af]{font-size:11px;font-weight:700}.mobile-tab.active[data-v-f90239af]{color:var(--primary);background:var(--primary-soft)}@media(max-width:760px){.app-shell[data-v-9a8b35e2]{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}}.page-heading[data-v-96c96763]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px 14px;margin-bottom:14px}.page-heading__main[data-v-96c96763]{display:flex;align-items:center;gap:12px;min-width:0}.page-heading__back[data-v-96c96763]{display:inline-flex;flex:none;align-items:center;justify-content:center;gap:5px;min-height:36px;max-width:148px;padding:0 12px;color:var(--primary);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap}.page-heading__back span[data-v-96c96763]:last-child{overflow:hidden;text-overflow:ellipsis}.page-heading__text[data-v-96c96763]{min-width:0}.page-heading h1[data-v-96c96763]{margin:0;font-size:22px;line-height:1.2}.page-heading__sub[data-v-96c96763]{margin:2px 0 0;color:var(--muted);font-weight:600;overflow-wrap:anywhere}.page-heading__stats[data-v-96c96763]{display:flex;flex-wrap:wrap;gap:8px}@media(max-width:520px){.page-heading[data-v-96c96763]{align-items:flex-start;flex-direction:column}.page-heading__main[data-v-96c96763]{width:100%;align-items:flex-start;flex-direction:column}.page-heading__back[data-v-96c96763]{max-width:100%}.page-heading--flat[data-v-96c96763]{align-items:center;flex-direction:row;gap:8px;margin-bottom:8px}.page-heading--flat .page-heading__main[data-v-96c96763]{flex:1 1 auto;width:auto;min-width:0;align-items:center;flex-direction:row}.page-heading h1[data-v-96c96763]{font-size:20px}.page-heading__sub[data-v-96c96763]{font-size:13px;line-height:1.25}.page-heading__stats[data-v-96c96763]{flex:0 0 auto;gap:5px}}.appearance-page[data-v-d507c123]{max-width:460px;margin:0 auto;width:100%;padding:0 16px 40px;color:var(--ink)}.ap-error[data-v-d507c123]{margin:0 0 12px;padding:8px 12px;border-radius:10px;background:color-mix(in srgb,var(--danger, #c0392b) 12%,transparent);color:var(--danger, #c0392b);font-size:13px;font-weight:700}.ap-head[data-v-d507c123]{display:flex;align-items:center;gap:12px;margin-bottom:8px}.ap-head h1[data-v-d507c123]{font-family:var(--font-display);font-size:20px;margin:0}.ap-head p[data-v-d507c123]{margin:2px 0 0;font-size:12px;color:var(--muted)}.ap-status[data-v-d507c123]{margin-top:24px;padding:16px;border-radius:var(--radius-sm);background:var(--surface2);color:var(--muted);text-align:center}.ap-sec[data-v-d507c123]{margin-top:16px}.ap-sec-head[data-v-d507c123]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.ap-sec-head h2[data-v-d507c123]{font-family:var(--font-display);font-size:15px;margin:0}.ap-auto[data-v-d507c123]{font-size:11px;color:var(--muted)}.ap-follow[data-v-d507c123]{font-size:11px;font-weight:700;color:var(--primary);background:var(--surface);border:1px solid var(--primary);border-radius:999px;padding:4px 11px;cursor:pointer}.ap-swatches[data-v-d507c123]{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ap-sw[data-v-d507c123]{position:relative;text-align:left;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--radius-sm);padding:9px 11px 11px;cursor:pointer;box-shadow:var(--shadow-sm)}.ap-sw[data-v-d507c123]:disabled{cursor:not-allowed}.ap-sw.on[data-v-d507c123]{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.ap-sw .ap-bar[data-v-d507c123]{display:block;height:26px;border-radius:9px;margin-bottom:7px}.ap-sw.lock .ap-bar[data-v-d507c123]{filter:saturate(.45) opacity(.6)}.ap-sw strong[data-v-d507c123]{display:block;font-size:13px}.ap-sw small[data-v-d507c123]{display:block;font-size:10px;color:var(--muted);margin-top:2px;line-height:1.35}.ap-sw.lock strong[data-v-d507c123]{color:var(--muted)}.ap-chk[data-v-d507c123]{position:absolute;top:8px;right:8px;width:20px;height:20px;border-radius:50%;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700}.ap-lk[data-v-d507c123]{position:absolute;top:7px;right:8px;font-size:12px}.ap-seg[data-v-d507c123]{display:flex;gap:8px}.ap-seg button[data-v-d507c123]{flex:1;text-align:center;font-size:13px;font-weight:700;color:var(--muted);background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:9px 4px;cursor:pointer}.ap-seg button.on[data-v-d507c123]{background:var(--primary);color:var(--on-primary);border-color:transparent}.ap-seg button small[data-v-d507c123]{display:block;font-size:9px;font-weight:400;opacity:.85;margin-top:2px}.ap-dark[data-v-d507c123]{width:100%;display:flex;align-items:center;justify-content:space-between;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 14px;cursor:pointer;box-shadow:var(--shadow-sm)}.ap-dark strong[data-v-d507c123]{display:block;font-size:13px;color:var(--ink)}.ap-dark small[data-v-d507c123]{display:block;font-size:10px;color:var(--muted);margin-top:1px}.ap-switch[data-v-d507c123]{width:38px;height:22px;border-radius:999px;background:var(--surface2);border:1px solid var(--line);position:relative;flex:0 0 auto;transition:background .15s}.ap-switch[data-v-d507c123]:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--muted);transition:transform .15s,background .15s}.ap-switch.on[data-v-d507c123]{background:var(--primary)}.ap-switch.on[data-v-d507c123]:after{transform:translate(16px);background:#fff}.ap-note[data-v-d507c123]{margin:18px 0 0;font-size:11.5px;line-height:var(--lh-cjk);color:var(--muted);background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:11px 13px;list-style:none}.ap-note li+li[data-v-d507c123]{margin-top:4px}.weekly-task-list[data-v-df47d81b]{display:grid;gap:14px}.weekly-task-group[data-v-df47d81b]{display:grid;gap:10px}.weekly-task-group h2[data-v-df47d81b]{margin:0;color:var(--ink);font-size:15px;font-weight:900}.weekly-task-card[data-v-df47d81b]{display:grid;gap:10px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.weekly-task-head[data-v-df47d81b]{display:flex;align-items:start;justify-content:space-between;gap:12px}.weekly-task-title[data-v-df47d81b]{display:grid;gap:3px;min-width:0}.weekly-task-title span[data-v-df47d81b]{color:var(--muted);font-size:12px;font-weight:800}.weekly-task-title strong[data-v-df47d81b]{color:var(--ink);font-size:16px;font-weight:900;line-height:1.25}.weekly-task-head em[data-v-df47d81b]{flex:none;color:var(--primary);font-size:12px;font-style:normal;font-weight:900;white-space:nowrap}.weekly-task-detail[data-v-df47d81b]{margin:0;color:var(--ink);font-size:14px;font-weight:700;line-height:1.45}.weekly-task-meta[data-v-df47d81b]{display:grid;gap:4px;color:var(--muted);font-size:12px;font-weight:700;line-height:1.4}.weekly-chest[data-v-df47d81b]{display:grid;gap:4px;padding:9px 10px;color:var(--ink);background:color-mix(in srgb,var(--gold) 16%,var(--surface));border:1px solid color-mix(in srgb,var(--gold) 38%,var(--line));border-radius:10px}.weekly-chest strong[data-v-df47d81b]{font-size:13px;font-weight:900}.weekly-chest span[data-v-df47d81b]{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35}.weekly-task-links[data-v-df47d81b]{display:grid;gap:6px}.weekly-task-link[data-v-df47d81b]{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:9px 10px;color:var(--ink);text-decoration:none;background:color-mix(in srgb,var(--primary-soft) 68%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-radius:10px}.weekly-task-link span[data-v-df47d81b],.weekly-task-link em[data-v-df47d81b]{color:var(--muted);font-size:12px;font-style:normal;font-weight:800}.weekly-task-link strong[data-v-df47d81b]{min-width:0;overflow:hidden;font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.weekly-task-start[data-v-df47d81b]{justify-self:start;min-height:38px;padding:0 14px;color:#fff;background:var(--primary);border:0;border-radius:10px;font-weight:900}.weekly-task-start[data-v-df47d81b]:disabled{cursor:progress;opacity:.72}.weekly-task-action[data-v-df47d81b]{display:grid;justify-items:start;gap:6px}.weekly-task-note[data-v-df47d81b]{margin:0;color:var(--muted);font-size:12px;font-weight:800;line-height:1.4}.album-series[data-v-5598459a]{margin:0 0 1.25rem;padding:1rem;border-radius:18px;background:var(--surface, #fff);box-shadow:0 6px 20px #0000000d}.album-series.complete[data-v-5598459a]{outline:2px solid var(--amber, #f4b740);outline-offset:2px}.album-series-head[data-v-5598459a]{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.album-series-head strong[data-v-5598459a]{font-size:1.05rem}.album-series-head small[data-v-5598459a]{display:block;opacity:.7;margin-top:.15rem}.album-series-progress[data-v-5598459a]{min-width:140px;text-align:right}.album-progress-count[data-v-5598459a],.album-complete-badge[data-v-5598459a]{font-size:.85rem;font-weight:600}.album-complete-badge[data-v-5598459a]{color:var(--amber, #d9930a)}.album-progress-bar[data-v-5598459a]{margin-top:.35rem;height:8px;border-radius:999px;background:#00000014;overflow:hidden}.album-progress-bar i[data-v-5598459a]{display:block;height:100%;border-radius:999px;background:var(--amber, #f4b740);transition:width .4s ease}.album-outfit[data-v-5598459a]{display:grid;grid-template-columns:96px minmax(0,1fr);gap:.75rem;align-items:center;margin-bottom:.75rem;padding:.75rem;border:1px solid rgba(0,0,0,.08);border-radius:8px;background:#00000006}.album-outfit.owned[data-v-5598459a]{border-color:var(--amber, #f4b740)}.album-outfit.active[data-v-5598459a]{box-shadow:inset 0 0 0 2px #f4b74040}.album-outfit-thumb[data-v-5598459a]{display:grid;place-items:center;aspect-ratio:1 / 1}.album-outfit-thumb img[data-v-5598459a]{max-width:100%;max-height:100%;object-fit:contain}.album-outfit-copy[data-v-5598459a]{display:flex;flex-direction:column;gap:.2rem;min-width:0}.album-outfit-copy small[data-v-5598459a]{opacity:.68;font-size:.78rem;font-weight:700}.album-outfit-copy em[data-v-5598459a]{font-size:.82rem;font-style:normal;opacity:.86}.album-grid[data-v-5598459a]{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.album-card[data-v-5598459a]{position:relative;display:flex;flex-direction:column;gap:.5rem;padding:.75rem;border-radius:14px;background:#00000005}.album-card.locked[data-v-5598459a]{opacity:.92}.album-card.locked .album-thumb[data-v-5598459a]{filter:grayscale(.5);opacity:.7}.album-state[data-v-5598459a]{position:absolute;top:.4rem;right:.4rem;font-size:.7rem;font-weight:600;padding:.1rem .45rem;border-radius:999px;background:#00000014}.album-card.owned .album-state[data-v-5598459a]{background:var(--amber, #f4b740);color:#fff}.album-thumb[data-v-5598459a]{display:flex;align-items:center;justify-content:center;aspect-ratio:1 / 1}.album-thumb img[data-v-5598459a]{max-width:100%;max-height:100%;object-fit:contain}.album-thumb-placeholder[data-v-5598459a]{font-size:2rem}.album-copy[data-v-5598459a]{display:flex;flex-direction:column;gap:.15rem}.album-rarity[data-v-5598459a]{opacity:.6;font-size:.72rem}.album-hint[data-v-5598459a]{font-size:.78rem;font-style:normal;opacity:.85}.album-hint.owned[data-v-5598459a]{color:var(--amber, #d9930a)}.bonus-grid[data-v-c37fdaab]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.bonus-card[data-v-c37fdaab]{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:var(--radius, 18px);background:var(--surface, #fff);border:1px solid var(--line, rgba(0, 0, 0, .08));box-shadow:var(--shadow-sm, 0 4px 16px rgba(0, 0, 0, .04))}.bonus-card.is-teamwork[data-v-c37fdaab]{border-color:var(--green, #58c08a);background:var(--primary-soft, rgba(120, 200, 160, .12))}.bonus-card.is-daily-clear[data-v-c37fdaab]{border-color:var(--primary, #5bb98c);background:color-mix(in srgb,var(--primary, #5bb98c) 12%,var(--surface, #fff))}.bonus-card.is-comeback[data-v-c37fdaab]{border-color:var(--gold, #f1b24a);background:var(--gold-soft, rgba(241, 178, 74, .12))}.bonus-card.is-weekly[data-v-c37fdaab]{border-color:var(--amber, #f0a83a);background:color-mix(in srgb,var(--amber, #f0a83a) 14%,var(--surface, #fff))}.bonus-card.is-chest[data-v-c37fdaab]{border-color:var(--gold, #f1b24a);background:linear-gradient(135deg,color-mix(in srgb,var(--gold, #f1b24a) 20%,transparent),transparent 58%),var(--surface, #fff)}.bonus-tag[data-v-c37fdaab]{align-self:flex-start;font-family:var(--font-display, inherit);font-size:.78rem;font-weight:700;padding:2px 10px;border-radius:999px;color:var(--on-primary, #fff);background:var(--primary, #5bb98c)}.bonus-card.is-comeback .bonus-tag[data-v-c37fdaab]{background:var(--gold, #f1b24a)}.bonus-card.is-daily-clear .bonus-tag[data-v-c37fdaab]{background:var(--primary, #5bb98c)}.bonus-card.is-weekly .bonus-tag[data-v-c37fdaab]{background:var(--amber, #f0a83a)}.bonus-card.is-chest .bonus-tag[data-v-c37fdaab]{color:var(--ink, #2b2b2b);background:var(--gold, #f1b24a)}.bonus-card strong[data-v-c37fdaab]{font-size:.98rem;color:var(--ink, #2b2b2b)}.bonus-card small[data-v-c37fdaab]{color:var(--muted, #777);line-height:1.5}.settlement-hero.is-progress .lead[data-v-c37fdaab]{font-family:var(--font-display, inherit);font-size:1.18rem;font-weight:700;color:var(--ink, #2b2b2b)}.settlement-pet[data-v-c37fdaab]{align-self:center}.landing[data-v-0cf16ace]{padding-top:clamp(24px,5vw,56px)}.landing-hero[data-v-0cf16ace]{position:relative;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(20px,5vw,56px);padding:clamp(26px,5vw,52px);overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.landing-hero[data-v-0cf16ace]:before{content:"";position:absolute;inset:auto -12% -45% auto;width:62%;height:130%;background:radial-gradient(circle,var(--primary-soft),transparent 70%);opacity:.65;pointer-events:none}.landing-hero__copy[data-v-0cf16ace]{position:relative;z-index:1}.landing-title[data-v-0cf16ace]{margin:6px 0 0;font-size:clamp(28px,4.4vw,44px);line-height:1.16}.landing .lead[data-v-0cf16ace]{max-width:46ch;margin-top:14px;font-size:clamp(15px,1.6vw,18px)}.landing-cta[data-v-0cf16ace]{margin-top:26px}.primary-action.lg[data-v-0cf16ace],.secondary-action.lg[data-v-0cf16ace]{min-height:52px;padding:0 28px;font-size:17px}.landing-hero__art[data-v-0cf16ace]{position:relative;z-index:1;display:grid;place-items:center}.landing-hero__art img[data-v-0cf16ace]{width:min(320px,82%);height:auto;filter:drop-shadow(0 18px 30px rgba(0,0,0,.16));animation:landing-float-0cf16ace 5s ease-in-out infinite}@keyframes landing-float-0cf16ace{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.landing-features[data-v-0cf16ace]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.feature-card[data-v-0cf16ace]{padding:20px 18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.feature-card__icon[data-v-0cf16ace]{display:inline-grid;place-items:center;width:44px;height:44px;font-size:24px;background:var(--primary-soft);border-radius:14px}.feature-card h2[data-v-0cf16ace]{margin:12px 0 4px;font-size:18px}.feature-card p[data-v-0cf16ace]{margin:0;color:var(--muted);font-size:14px;line-height:1.5}body[data-tone=soft]{border-style:dashed}@media(prefers-reduced-motion:reduce){.landing-hero__art img[data-v-0cf16ace]{animation:none}}@media(max-width:760px){.landing-hero[data-v-0cf16ace]{grid-template-columns:1fr;text-align:center}.landing-hero__art[data-v-0cf16ace]{order:-1}.landing-hero__art img[data-v-0cf16ace]{width:min(220px,60%)}.landing .lead[data-v-0cf16ace]{margin-inline:auto}.landing-cta[data-v-0cf16ace]{justify-content:center}.landing-features[data-v-0cf16ace]{grid-template-columns:repeat(2,1fr)}}.media-lightbox[data-v-976aa87a]{position:fixed;inset:0;z-index:2000;display:grid;padding:58px 14px 38px;background:#101828e0}.media-lightbox-stage[data-v-976aa87a]{display:flex;align-items:flex-start;justify-content:center;min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain}.media-lightbox-image[data-v-976aa87a]{width:auto;max-width:min(100%,1200px);height:auto;max-height:none;object-fit:contain;border-radius:6px;box-shadow:0 18px 60px #00000057}.media-lightbox-close[data-v-976aa87a],.media-lightbox-nav[data-v-976aa87a]{position:fixed;display:grid;place-items:center;border:1px solid rgba(255,255,255,.28);color:#fff;background:#0f172ab8;box-shadow:0 10px 30px #00000047}.media-lightbox-close[data-v-976aa87a]{top:16px;right:16px;width:42px;height:42px;border-radius:999px;font-size:28px;line-height:1}.media-lightbox-nav[data-v-976aa87a]{top:50%;width:44px;height:58px;border-radius:6px;transform:translateY(-50%);font-size:40px;line-height:1}.media-lightbox-nav.previous[data-v-976aa87a]{left:12px}.media-lightbox-nav.next[data-v-976aa87a]{right:12px}.media-lightbox-failed[data-v-976aa87a]{display:grid;gap:14px;place-items:center;align-content:center;padding:32px;color:#fff;text-align:center}.media-lightbox-retry[data-v-976aa87a]{padding:10px 20px;min-height:44px;border:1px solid rgba(255,255,255,.4);border-radius:999px;color:#fff;background:#0f172ab8;font-size:15px;font-weight:700}.media-lightbox-count[data-v-976aa87a]{position:fixed;bottom:12px;left:50%;padding:6px 10px;border-radius:999px;color:#fff;background:#0f172ab8;font-size:13px;font-weight:800;transform:translate(-50%)}@media(max-width:640px){.media-lightbox[data-v-976aa87a]{padding-inline:6px}.media-lightbox-nav[data-v-976aa87a]{width:44px;height:56px}}.ocr-overlay[data-v-ee60b54e]{display:grid;gap:8px}.ocr-overlay-stage[data-v-ee60b54e]{position:relative;line-height:0;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--line)}.ocr-overlay-stage img[data-v-ee60b54e]{display:block;width:100%;height:auto}.ocr-overlay-box[data-v-ee60b54e]{position:absolute;border:2.5px solid;border-radius:4px;background:transparent;padding:0;cursor:pointer;box-sizing:border-box}.ocr-overlay-box.mark-wrong[data-v-ee60b54e]{border-color:#e5484d}.ocr-overlay-box.mark-unclear[data-v-ee60b54e]{border-color:#f5a623}.ocr-overlay-box.mark-correct[data-v-ee60b54e]{border-color:#2fae5b}.ocr-overlay-box.is-active[data-v-ee60b54e]{border-width:3.5px;box-shadow:0 0 0 2px #ffffffa6;z-index:4}.ocr-overlay-badge[data-v-ee60b54e]{position:absolute;top:-12px;left:-12px;width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;background:var(--surface);box-shadow:0 1px 4px #00000059}.ocr-overlay-note[data-v-ee60b54e]{position:absolute;z-index:6;transform:translateY(-50%);box-sizing:border-box;padding:8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:0 6px 20px #00000047;font-size:13px;line-height:1.5;color:var(--muted);pointer-events:none}.ocr-overlay-note strong[data-v-ee60b54e]{color:var(--ink)}.ocr-overlay-note p[data-v-ee60b54e]{margin:4px 0 0}.ocr-overlay-answer[data-v-ee60b54e]{font-weight:800;color:var(--ink)}.ocr-overlay-toggle[data-v-ee60b54e]{justify-self:start;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:12.5px;font-weight:800;cursor:pointer}.pet-name-editor[data-v-6463a119]{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;vertical-align:middle}.pet-name-editor__text[data-v-6463a119]{font:inherit;color:inherit}.pet-name-editor__edit[data-v-6463a119]{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;font-size:.95rem;line-height:1;color:var(--primary);background:var(--primary-soft);border:1px solid var(--line);border-radius:999px;cursor:pointer}.pet-name-editor__edit[data-v-6463a119]:hover{filter:brightness(.97)}.pet-name-editor__input[data-v-6463a119]{font:inherit;font-size:1.15rem;font-weight:600;max-width:9em;padding:6px 12px;color:var(--ink);background:var(--surface);border:1px solid var(--primary);border-radius:12px}.pet-name-editor__btn[data-v-6463a119]{display:inline-grid;place-items:center;min-width:40px;height:40px;padding:0 10px;font-size:1rem;font-weight:800;border-radius:12px;border:1px solid var(--line);cursor:pointer}.pet-name-editor__btn.save[data-v-6463a119]{color:var(--on-primary, #fff);background:var(--primary);border-color:var(--primary)}.pet-name-editor__btn.cancel[data-v-6463a119]{color:var(--muted);background:var(--surface2, #f3f3f3)}.pet-name-editor__btn[data-v-6463a119]:disabled{opacity:.6;cursor:default}.pet-name-editor__error[data-v-6463a119]{flex-basis:100%;font-size:.82rem;font-weight:600;color:#c0392b}:root{--font-display: "ZCOOL KuaiLe", "Baloo 2", "PingFang SC", "Yuanti SC", "Noto Sans SC", sans-serif;--font-body: -apple-system, BlinkMacSystemFont, "PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif;--lh-cjk: 1.75;--bg: #fff6e9;--bg2: #ffefdd;--surface: #ffffff;--surface2: #fff3e8;--ink: #4c3a2b;--muted: #a8937e;--line: #f0dec9;--primary: #ff8a4c;--primary-soft: #ffe3ce;--on-primary: #ffffff;--green: #7cc56b;--blue: #5fb6e6;--pink: #ff9fb1;--gold: #ffc24b;--red: #ec7a6a;--amber: #ee9f5b;--radius: 24px;--radius-sm: 16px;--shadow: 0 8px 20px rgb(214 150 90 / 18%);--shadow-sm: 0 3px 10px rgb(214 150 90 / 14%);--node-done: #7cc56b;--node-today: #ff8a4c;--node-soon: #f0dec9;--path: #ffd9b0;--btn-lift: 0 0 0 transparent}body[data-kid=colin]{--bg: #eaf7f4;--bg2: #ddf0ed;--surface: #ffffff;--surface2: #f2fbf9;--ink: #22384a;--muted: #7c93a2;--line: #d6eae7;--primary: #27c0ae;--primary-soft: #cff1ec;--on-primary: #ffffff;--gold: #ffc857;--node-done: #52c46f;--node-today: #27c0ae;--node-soon: #d6eae7;--path: #bfe7e0;--btn-lift: 0 3px 0 rgb(20 120 108 / 22%)}body[data-kid=ethon]{--bg: #f5efe2;--bg2: #eee6d4;--surface: #fbf7ee;--surface2: #f5efe1;--ink: #4e4636;--muted: #9c927f;--line: #e4d9c2;--primary: #e08a5b;--primary-soft: #f3e0cd;--on-primary: #ffffff;--green: #90a86e;--pink: #ffb3a0;--gold: #d7a24c;--node-done: #90a86e;--node-today: #e08a5b;--node-soon: #e4d9c2;--path: #e6d2ac;--btn-lift: 0 0 0 transparent}body[data-tone=soft]{--font-display: "ZCOOL KuaiLe", "Baloo 2", "PingFang SC", "Yuanti SC", "Noto Sans SC", sans-serif;--radius: 24px;--radius-sm: 16px}body[data-tone=steady]{--font-display: "Baloo 2", "PingFang SC", "Noto Sans SC", sans-serif;--radius: 15px;--radius-sm: 12px}body[data-tone=clean]{--font-display: "Inter", "PingFang SC", "Noto Sans SC", sans-serif;--radius: 11px;--radius-sm: 9px}body[data-theme=dark]{--bg: #241e1a;--bg2: #2c2521;--surface: #322a25;--surface2: #3a322c;--ink: #f3e9dd;--muted: #b3a493;--line: #463c34;--shadow: 0 8px 20px rgb(0 0 0 / 35%);--shadow-sm: 0 3px 10px rgb(0 0 0 / 30%);--primary-soft: #4a3624;--node-soon: #463c34}body[data-kid=colin][data-theme=dark]{--bg: #16211f;--bg2: #1b2a28;--surface: #1f2d2b;--surface2: #243432;--ink: #e8f4f1;--muted: #8fa8a2;--line: #314543;--primary-soft: #1d3a35}body[data-kid=aero]{--bg: #f2e9da;--bg2: #e9ddc8;--surface: #fbf6ec;--surface2: #f2e8d6;--ink: #43372a;--muted: #9c8b73;--line: #e0cfb2;--primary: #c2742e;--primary-soft: #f1e0c8;--on-primary: #ffffff;--green: #8b9f5b;--blue: #3e8bc4;--gold: #e0a23c;--red: #d9744e;--pink: #e89b86;--node-done: #8b9f5b;--node-today: #c2742e;--node-soon: #e0cfb2;--path: #e8d2ac;--btn-lift: 0 3px 0 rgb(150 96 38 / 28%)}body[data-kid=mecha]{--bg: #e8edf3;--bg2: #dae1eb;--surface: #f6f8fb;--surface2: #e6ecf3;--ink: #27313f;--muted: #7e8aa0;--line: #d0d9e6;--primary: #3d6fb0;--primary-soft: #d9e4f2;--on-primary: #ffffff;--green: #4e9e8a;--blue: #3d6fb0;--gold: #c8902f;--red: #d9744e;--pink: #e0879a;--node-done: #4e9e8a;--node-today: #3d6fb0;--node-soon: #d0d9e6;--path: #c3d2e6;--btn-lift: 0 3px 0 rgb(30 64 112 / 30%)}body[data-kid=nezha]{--bg: #fcefe5;--bg2: #f7e1cf;--surface: #fff8f1;--surface2: #fdeada;--ink: #4a2b1e;--muted: #ab8270;--line: #f1d4bd;--primary: #dd4f2a;--primary-soft: #fbdac6;--on-primary: #ffffff;--gold: #f0a838;--node-done: #e08a3c;--node-today: #dd4f2a;--node-soon: #f1d4bd;--path: #f3d9bd;--btn-lift: 0 3px 0 rgb(176 56 24 / 26%)}body[data-kid=aobing]{--bg: #e9f3f7;--bg2: #d9ebf2;--surface: #f5fbfd;--surface2: #e4f1f6;--ink: #1f3a44;--muted: #6f8e9a;--line: #cae2ea;--primary: #2f9bc4;--primary-soft: #d2ecf4;--on-primary: #ffffff;--gold: #6fc7d4;--node-done: #4bb0a6;--node-today: #2f9bc4;--node-soon: #cae2ea;--path: #c2e4ec;--btn-lift: 0 3px 0 rgb(28 110 140 / 26%)}body[data-kid=heimao]{--bg: #eceef3;--bg2: #dde1ec;--surface: #f7f8fc;--surface2: #e7eaf3;--ink: #232838;--muted: #757d92;--line: #d2d7e4;--primary: #2f4a78;--primary-soft: #d6deec;--on-primary: #ffffff;--gold: #d4a32f;--node-done: #4a86c0;--node-today: #2f4a78;--node-soon: #d2d7e4;--path: #ccd4e6;--btn-lift: 0 3px 0 rgb(24 38 68 / 30%)}body[data-kid=aero][data-theme=dark]{--bg: #221c14;--bg2: #2a2218;--surface: #2c241a;--surface2: #352b1f;--ink: #f0e4d0;--muted: #b6a488;--line: #473a28;--primary: #d6924a;--primary-soft: #3a2c19;--node-soon: #473a28}body[data-kid=mecha][data-theme=dark]{--bg: #121922;--bg2: #18202b;--surface: #1c2530;--surface2: #243040;--ink: #e6eef8;--muted: #8fa0b6;--line: #32404f;--primary: #5a8fd6;--primary-soft: #1f3047;--node-soon: #32404f}body[data-kid=ethon][data-theme=dark]{--bg: #241d15;--bg2: #2c241a;--surface: #322a1f;--surface2: #3a3125;--ink: #f4e9da;--muted: #b3a48f;--line: #473b2c;--primary-soft: #3c2c1c}body[data-kid=nezha][data-theme=dark]{--bg: #241510;--bg2: #2c1a13;--surface: #2f1d15;--surface2: #38241a;--ink: #f5e2d4;--muted: #c09b86;--line: #4a3124;--primary: #ef6c43;--primary-soft: #3c2117;--node-soon: #4a3124}body[data-kid=aobing][data-theme=dark]{--bg: #0f1d24;--bg2: #13242d;--surface: #172a33;--surface2: #1f3742;--ink: #e3f1f6;--muted: #88a6b2;--line: #2c454f;--primary: #4cb6dc;--primary-soft: #18313d;--node-soon: #2c454f}body[data-kid=heimao][data-theme=dark]{--bg: #10131c;--bg2: #151926;--surface: #1a1f2e;--surface2: #232a3c;--ink: #e8ecf6;--muted: #8b94ab;--line: #2e3650;--primary: #5277b3;--primary-soft: #1b2336;--node-soon: #2e3650}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;color:var(--ink);background:radial-gradient(circle at top left,var(--bg2),transparent 34rem),linear-gradient(180deg,var(--bg),var(--surface2));font-family:var(--font-body);line-height:var(--lh-cjk);overflow-y:scroll}button,a{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px clamp(18px,4vw,44px);background:color-mix(in srgb,var(--surface) 88%,transparent);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.brand-mark{display:grid;width:38px;height:38px;place-items:center;color:var(--on-primary);background:var(--primary);border-radius:50%;box-shadow:var(--btn-lift);font-family:var(--font-display);font-weight:700}.brand strong,h1,h2{font-family:var(--font-display)}.brand small{display:block;margin-top:1px;color:var(--muted);font-size:12px;line-height:1.2}.topnav{display:flex;gap:8px;flex-wrap:wrap}.topnav a{min-height:36px;padding:6px 12px;color:var(--ink);text-decoration:none;border:1px solid transparent;border-radius:999px;opacity:.76}.topnav a.router-link-active{color:var(--primary);background:var(--primary-soft);border-color:var(--line);font-weight:700}.page{width:min(1080px,calc(100% - 32px));margin:0 auto;padding:28px 0 56px}.hero-panel,.control-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}body[data-tone=soft] .hero-panel,body[data-tone=soft] .control-panel,body[data-tone=soft] .status-card,body[data-tone=soft] .task-card,body[data-tone=soft] .map-card,body[data-tone=soft] .bubble{border-style:dashed}.eyebrow{margin:0 0 4px;color:var(--primary);font-size:12px;font-weight:800;text-transform:uppercase}h1{margin:0;font-size:28px;line-height:1.2}.lead{max-width:560px;margin:8px 0 0;color:var(--muted)}.primary-action,.secondary-action,.task-card button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;color:var(--on-primary);background:var(--primary);border:0;border-radius:999px;box-shadow:var(--btn-lift);font-weight:800;text-decoration:none;white-space:nowrap}.secondary-action{color:var(--primary);background:var(--surface2);border:1px solid var(--line);box-shadow:none}.action-row{display:flex;gap:10px;flex-wrap:wrap}.status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}.block{padding:16px;margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.status-card{display:flex;gap:12px;min-height:112px;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.status-card h2{margin:0;font-size:17px}.nav-error-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:10px 14px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--danger, #c0392b) 12%,transparent);color:var(--danger, #c0392b);font-size:13px;font-weight:700}.nav-error-banner button{flex-shrink:0;min-height:36px;padding:0 14px;border:1px solid currentColor;border-radius:999px;color:inherit;background:transparent;font-weight:800}.status-card p{margin:3px 0 0;color:var(--muted);word-break:break-word}.task-detail-page .submit.secondary{color:var(--ink);background:var(--surface2);border:1px solid var(--line);box-shadow:none}.task-detail-page .submit.secondary:hover{background:color-mix(in srgb,var(--primary-soft) 58%,var(--surface2));border-color:color-mix(in srgb,var(--primary) 24%,var(--line));box-shadow:none}.task-detail-page .submit.full{width:100%;margin-inline:0}.pending-review-block{display:grid;gap:14px}.pending-review-head{display:flex;align-items:center;gap:12px}.pending-spinner{width:30px;height:30px;flex:0 0 auto;border:3px solid var(--line);border-top-color:var(--primary);border-radius:50%;animation:pending-spin .9s linear infinite}@keyframes pending-spin{to{transform:rotate(360deg)}}.status-dot{width:12px;height:12px;margin-top:10px;border-radius:50%;background:var(--amber)}.status-dot.ok{background:var(--green)}.token-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:18px;align-items:start}.control-panel{position:sticky;top:84px;flex-direction:column;align-items:stretch}.seg-groups{display:grid;gap:12px}.seg-group{display:flex;flex-wrap:wrap;gap:8px;padding:5px;background:var(--surface2);border:1px solid var(--line);border-radius:999px}.seg-group button{min-height:38px;padding:0 14px;color:var(--ink);background:transparent;border:0;border-radius:999px;font-weight:800;opacity:.72}.seg-group button.on{color:var(--on-primary);background:var(--primary);opacity:1}.preview-phone{padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:38px;box-shadow:var(--shadow)}.phone-screen{min-height:720px;padding:20px 16px;overflow:hidden;background:linear-gradient(180deg,var(--surface2),var(--surface) 28%);border-radius:28px}body[data-kid=ethon] .phone-screen{background-image:repeating-linear-gradient(0deg,transparent 0 27px,rgb(160 140 100 / 5%) 27px 28px),linear-gradient(180deg,var(--surface2),var(--surface) 28%)}.child-bar{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}.avatar{display:grid;width:42px;height:42px;place-items:center;color:var(--primary);background:radial-gradient(circle at 35% 30%,#fff,var(--primary-soft));border:2px solid var(--primary);border-radius:50%;font-family:var(--font-display);font-weight:800}.child-bar strong,.child-bar small{display:block}.child-bar small{color:var(--muted);font-size:12px;line-height:1.35}.coin{padding:6px 10px;background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-weight:800}.buddy-row{display:grid;grid-template-columns:86px 1fr;gap:12px;align-items:end;margin-top:22px}.daily-goal-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.daily-goal-card{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;min-height:74px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.daily-goal-card span{grid-row:span 2;display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:34px;padding:0 10px;border-radius:999px;color:var(--primary);background:var(--primary-soft);font-weight:900;white-space:nowrap}.daily-goal-card strong{color:var(--ink);font-size:15px}.daily-goal-card small{color:var(--muted);line-height:1.35}.daily-goal-card.done{border-color:color-mix(in srgb,var(--green) 50%,var(--line));background:color-mix(in srgb,var(--green) 10%,var(--surface))}.daily-goal-card.done span{color:#fff;background:var(--green)}.pet-face{position:relative;width:84px;height:84px;border-radius:46% 46% 44% 44%/52% 52% 40% 40%;background:radial-gradient(circle at 38% 32%,rgb(255 255 255 / 55%),transparent 42%),linear-gradient(160deg,#ffb36b,var(--primary));box-shadow:var(--shadow-sm)}.ear{position:absolute;top:-6px;width:21px;height:25px;background:linear-gradient(160deg,#ffb36b,var(--primary));border-radius:60% 60% 30% 30%}.ear.left{left:9px;transform:rotate(-16deg)}.ear.right{right:9px;transform:rotate(16deg)}.eye{position:absolute;top:41px;width:9px;height:11px;background:#3a2a1d;border-radius:50%}.eye.left{left:28px}.eye.right{right:28px}.bubble{position:relative;padding:12px 13px;margin-bottom:10px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-sm)}.bubble strong,.bubble small{display:block}.bubble small{margin-top:3px;color:var(--muted);font-size:12px}.map-card{margin-top:18px;padding:10px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius)}.map-card svg{display:block;width:100%}.task-list{display:grid;gap:10px;margin-top:14px}.task-card{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.subject{display:grid;width:36px;height:36px;place-items:center;color:#fff;border-radius:11px;font-family:var(--font-display);font-weight:800}.subject.math{background:var(--primary)}.subject.chinese{background:var(--pink)}.task-card h2,.task-card p{margin:0}.task-card h2{font-size:15px}.task-card p{color:var(--muted);font-size:12px;line-height:1.45}.task-card .task-reward{width:fit-content;margin-top:5px;padding:4px 8px;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));border-radius:999px;font-weight:900}.task-card.done button{color:var(--green);background:var(--surface2);border:1px solid var(--line);box-shadow:none}.task-card.reviewing{border-color:color-mix(in srgb,var(--amber) 42%,var(--line));background:color-mix(in srgb,var(--amber) 10%,var(--surface))}.task-card.reviewing button{color:#7a4a00;background:color-mix(in srgb,var(--amber) 18%,var(--surface));border:1px solid color-mix(in srgb,var(--amber) 42%,var(--line));box-shadow:none}.auth-page{display:grid;width:min(960px,calc(100% - 32px));min-height:calc(100vh - 84px);margin:0 auto;padding:32px 0;place-items:center}.auth-panel{display:grid;grid-template-columns:minmax(0,.8fr) minmax(280px,1fr);gap:22px;width:100%;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.auth-copy{align-self:center}.kid-picker{display:grid;gap:10px}.session-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.session-card strong,.session-card small{display:block}.session-card small{color:var(--muted)}.kid-option{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;min-height:74px;padding:12px;color:var(--ink);background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm);text-align:left}.kid-option.on{border-color:var(--primary);background:var(--primary-soft)}.kid-avatar{display:grid;width:48px;height:48px;place-items:center;color:var(--on-primary);background:var(--primary);border-radius:50%;font-family:var(--font-display);font-weight:800}.kid-option strong,.kid-option small{display:block}.kid-option small{color:var(--muted)}.login-form{display:grid;gap:14px;align-content:start}.login-form label{display:grid;gap:6px;color:var(--muted);font-weight:700}.login-form input{min-height:48px;padding:0 14px;color:var(--ink);background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm);font-size:18px}.login-form input:focus{border-color:var(--primary);outline:3px solid color-mix(in srgb,var(--primary) 24%,transparent)}.login-form button:disabled{cursor:not-allowed;opacity:.55}.form-error{margin:0;color:var(--amber);font-weight:800}.app-view .hero-panel{margin-bottom:16px}.dashboard-grid{display:grid;gap:14px}.status-card.full,.task-surface{grid-column:1 / -1}.task-surface{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.parent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.child-map-page{max-width:960px}.child-dashboard{display:grid;gap:16px}.manager-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0;padding:14px 18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.kid-avatar.small{width:42px;height:42px}.toolbar-stats{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.toolbar-stats span{padding:5px 9px;color:var(--muted);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-size:13px;font-weight:700}.section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:4px}.section-title h1{font-size:24px}.section-title span{color:var(--muted);font-weight:800}.adventure-map{margin-top:0;padding:12px}.adventure-map svg{display:block;width:100%;min-height:340px}.map-summary-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.map-summary-card strong{min-width:0;font-size:15px;overflow-wrap:anywhere}.map-summary-card small{color:var(--muted);font-weight:700;text-align:right;overflow-wrap:anywhere}.node-hit{cursor:pointer;outline:none}.node-hit circle:not(.pulse){fill:var(--node-soon);stroke:var(--line);stroke-width:2}.node-hit.is-done circle:not(.pulse){fill:var(--node-done);stroke:transparent}.node-hit.is-today circle:not(.pulse){fill:var(--node-today);stroke:color-mix(in srgb,var(--node-today) 55%,white)}.node-hit.is-rest circle:not(.pulse){fill:var(--surface)}.node-hit.is-makeup circle:not(.pulse){fill:var(--amber);stroke:color-mix(in srgb,var(--amber) 55%,white)}.node-hit.is-selected circle:not(.pulse):not(.select-ring){stroke:var(--primary);stroke-width:3.5}.node-hit text{fill:var(--muted);font-size:10px;font-weight:800;pointer-events:none}.node-hit .node-glyph{fill:#fff;font-size:8.5px;font-weight:900}.node-hit.is-upcoming .node-glyph,.node-hit.is-rest .node-glyph{fill:var(--muted)}.node-date-label{font-size:10px;fill:var(--ink)}.node-weekday-label,.node-state-label{font-size:8.5px}.node-state-label{fill:var(--primary)}.node-hit.is-selected .node-date-label,.node-hit.is-selected .node-weekday-label{fill:var(--primary);font-weight:900}.pulse{fill:none;stroke:var(--node-today);stroke-width:2;opacity:.42}.pet-pin circle:first-child{fill:var(--surface);stroke:var(--primary);stroke-width:2}.pet-pin circle:not(:first-child){fill:var(--ink);stroke:none}.select-ring{fill:none;stroke:var(--primary);stroke-width:3;stroke-dasharray:4 3;opacity:.92}.camp-flag{font-size:13px}.map-node-legend{display:flex;flex-wrap:wrap;gap:7px;margin:-8px 2px 0;color:var(--muted);font-size:12px;font-weight:700}.map-node-legend span{padding:3px 8px;background:var(--surface2);border:1px solid var(--line);border-radius:999px}.map-node-cards{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.map-node-card{display:flex;min-width:0;min-height:92px;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:5px;padding:10px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);text-align:left;box-shadow:none}.map-node-card span,.map-node-card small{color:var(--muted);font-size:12px;font-weight:700;line-height:1.25}.map-node-card strong{font-size:15px;line-height:1.2}.map-node-card.selected{border-color:color-mix(in srgb,var(--primary) 62%,var(--line));outline:2px solid var(--primary-soft)}.map-node-card.is-done{background:color-mix(in srgb,var(--node-done) 18%,var(--surface))}.map-node-card.is-today{background:color-mix(in srgb,var(--node-today) 18%,var(--surface))}.map-node-card.is-makeup{background:color-mix(in srgb,var(--amber) 18%,var(--surface))}.map-node-card.is-upcoming{background:var(--surface2)}.map-view-tabs{display:inline-flex;gap:4px;padding:4px;background:var(--primary-soft);border-radius:999px;align-self:flex-start}.map-view-tabs button{border:none;background:transparent;padding:6px 20px;border-radius:999px;font-weight:800;color:var(--muted);cursor:pointer}.map-view-tabs button.active{background:var(--surface);color:var(--ink);box-shadow:0 1px 5px #0f172a1a}.map-week-head{align-items:center}.map-week-title{display:flex;flex-direction:column;gap:2px;text-align:center}.map-week-title strong{font-size:16px;font-weight:800}.map-week-title small{color:var(--muted);font-weight:700}.week-nav{width:40px;height:40px;flex:none;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:14px;cursor:pointer}.week-nav:disabled{opacity:.35;cursor:default}.overview-card{display:grid;gap:12px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:18px}.overview-week{display:grid;gap:6px}.overview-week.current .overview-week-label{color:var(--primary)}.overview-week-label{font-size:12px;font-weight:800;color:var(--muted)}.overview-week-days{display:flex;flex-wrap:wrap;gap:6px}.overview-cell{position:relative;width:52px;height:60px;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:12px;border:1px solid var(--line);background:var(--node-soon);cursor:pointer}.overview-cell:disabled{cursor:default}.overview-cell-date{font-size:11px;font-weight:700;color:var(--muted)}.overview-cell-weekday,.overview-cell-count{font-size:10px;font-weight:800;line-height:1;color:var(--muted)}.overview-cell-mark{font-size:14px;font-weight:800;line-height:1}.overview-cell.is-done{background:var(--node-done);border-color:transparent}.overview-cell.is-today{background:var(--node-today);border-color:color-mix(in srgb,var(--node-today) 55%,white)}.overview-cell.is-makeup{background:var(--amber);border-color:transparent}.overview-cell.is-done .overview-cell-date,.overview-cell.is-done .overview-cell-mark,.overview-cell.is-today .overview-cell-date,.overview-cell.is-today .overview-cell-mark,.overview-cell.is-makeup .overview-cell-date,.overview-cell.is-makeup .overview-cell-mark,.overview-cell.is-done .overview-cell-weekday,.overview-cell.is-done .overview-cell-count,.overview-cell.is-today .overview-cell-weekday,.overview-cell.is-today .overview-cell-count,.overview-cell.is-makeup .overview-cell-weekday,.overview-cell.is-makeup .overview-cell-count{color:#fff}.overview-cell.is-rest{background:var(--surface)}.overview-cell.is-rest .overview-cell-mark{color:var(--blue)}.overview-cell.is-upcoming{background:var(--node-soon);opacity:.65}.overview-cell.selected{outline:2px solid var(--primary);outline-offset:1px}.overview-cell.camp:after{content:"⛺";position:absolute;top:-7px;right:-4px;font-size:11px}.overview-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:2px 0 0;font-size:12px;font-weight:700;color:var(--muted)}.overview-legend .dot{display:inline-block;width:12px;height:12px;margin-right:2px;border-radius:4px;border:1px solid var(--line);vertical-align:-1px}.overview-legend .dot.is-done{background:var(--node-done);border-color:transparent}.overview-legend .dot.is-today{background:var(--node-today)}.overview-legend .dot.is-makeup{background:var(--amber)}.overview-legend .dot.is-rest{background:var(--surface)}.overview-legend .dot.is-upcoming{background:var(--node-soon)}.subject-strip{display:flex;gap:8px;flex-wrap:wrap}.subject-strip span{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 12px;background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 40%,var(--line));border-radius:999px;color:var(--primary);font-weight:800}.subject-strip span.ok{color:var(--green);background:var(--surface2);border-color:var(--line)}.subject-strip i{width:7px;height:7px;background:currentColor;border-radius:50%}.today-task-list{margin-top:0}.parent-schedule-page{max-width:1180px}.manager-notice{margin:12px 0 0}.manager-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start;margin-top:16px}.schedule-list{display:grid;gap:10px}.schedule-row{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:12px;align-items:start;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.schedule-row.is-rest{background:var(--surface2)}.schedule-row.is-done{border-color:color-mix(in srgb,var(--green) 45%,var(--line))}.schedule-date strong,.schedule-date span{display:block}.schedule-date strong{font-family:var(--font-display);font-size:20px}.schedule-date span{color:var(--muted);font-size:12px;font-weight:800}.schedule-main h2,.schedule-main p{margin:0}.schedule-main h2{font-size:17px}.schedule-main p{color:var(--muted);font-size:13px}.task-mini-list{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.task-mini-list span{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;background:var(--surface2);border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:12px;font-weight:700}.task-mini-list button{position:relative;min-height:24px;padding:0 7px;color:var(--amber);background:var(--surface);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:800}.task-mini-list button:before{content:"";position:absolute;inset:-12px -10px}.manager-panel{display:grid;gap:12px;position:sticky;top:88px}.spotcheck-list{display:grid;gap:14px;margin-top:16px}.spotcheck-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,340px);gap:12px;align-items:start;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.spotcheck-main{display:grid;min-width:0;gap:12px}.spotcheck-head{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:center}.spotcheck-head h2,.spotcheck-head p,.spotcheck-encouragement{margin:0}.spotcheck-head h2{font-size:17px}.spotcheck-head p,.spotcheck-encouragement{color:var(--muted)}.spotcheck-head>div{min-width:0}.spotcheck-head h2,.spotcheck-head p{overflow-wrap:anywhere}.spotcheck-rail{display:flex;flex-wrap:wrap;gap:6px;padding:8px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.spotcheck-rail span{min-width:0;padding:5px 8px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:800;line-height:1.2;overflow-wrap:anywhere}.spotcheck-rail.hot{background:color-mix(in srgb,var(--red) 8%,var(--surface));border-color:color-mix(in srgb,var(--red) 34%,var(--line))}.spotcheck-rail.next{background:color-mix(in srgb,var(--amber) 10%,var(--surface));border-color:color-mix(in srgb,var(--amber) 34%,var(--line))}.spotcheck-form{display:grid;gap:12px;min-width:0}.spotcheck-form label{display:grid;gap:5px;color:var(--muted);font-size:13px;font-weight:800}.spotcheck-form input,.spotcheck-form textarea{width:100%;min-height:42px;padding:8px 10px;color:var(--ink);background:var(--surface2);border:1px solid var(--line);border-radius:10px;font:inherit}.spotcheck-form textarea{min-height:88px;resize:vertical}.spotcheck-form .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.decision-panel{position:sticky;top:88px;padding:14px;background:color-mix(in srgb,var(--surface) 92%,var(--surface2));border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.decision-head,.evidence-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.decision-head h3,.evidence-section-head h3{margin:0;font-size:16px}.evidence-section-head span{flex:0 0 auto;padding:3px 9px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:900}.settlement-stack{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:6px}.settlement-row{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;align-content:start;min-height:72px;padding:9px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.settlement-row strong,.settlement-row span{display:block;min-width:0;overflow-wrap:anywhere}.settlement-row strong{font-size:12px;line-height:1.25}.settlement-row span{color:var(--muted);font-size:11px;font-weight:800;line-height:1.35}.settlement-row output{justify-self:end;font-size:19px;font-weight:900;line-height:1}.settlement-row.final{color:var(--on-primary);background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 72%,var(--blue)));border-color:transparent}.settlement-row.final span{color:color-mix(in srgb,var(--on-primary) 82%,transparent)}.policy-note{margin:0;padding:9px 10px;color:var(--muted);background:color-mix(in srgb,var(--blue) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--blue) 20%,var(--line));border-radius:10px;font-size:12px;line-height:1.45}.suggestion-note{margin:0;color:var(--primary);font-size:12px;font-weight:700;line-height:1.45}.status-chip{display:inline-flex;align-items:center;padding:2px 10px;margin-right:6px;color:var(--on-primary);border-radius:999px;font-size:12px;font-weight:800}.status-chip.tone-danger{background:var(--red)}.status-chip.tone-warn{background:var(--amber)}.status-chip.tone-info{background:var(--blue)}.status-chip.tone-ok{background:var(--green)}.requeue-action{color:var(--amber)}.danger-action{color:var(--red)}.fraud-action{color:var(--red);border-color:color-mix(in srgb,var(--red) 55%,var(--line));font-weight:800}.correction-audit-panel.outcome-hold{border-color:color-mix(in srgb,var(--red) 45%,var(--line))}.correction-audit-panel.outcome-parent_review{border-color:color-mix(in srgb,var(--amber, #d9a441) 55%,var(--line))}.spotcheck-evidence,.ai-evidence,.evidence-text{display:grid;gap:10px;min-width:0}.spotcheck-evidence,.ai-evidence{padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.evidence-media,.correction-evidence{display:grid;grid-template-columns:repeat(auto-fit,minmax(116px,160px));gap:10px}.evidence-shot{display:grid;gap:6px;min-width:0;margin:0}.evidence-shot.audio-shot{grid-column:1 / -1;max-width:520px}.evidence-shot img,.evidence-shot audio,.evidence-shot>span{width:100%;min-height:92px;max-height:180px;object-fit:contain;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.evidence-shot .media-thumb-button{position:relative;width:100%;height:132px;min-height:0;overflow:hidden}.evidence-shot .media-thumb-button img{width:100%;height:100%;max-height:none}.review-overlay-image{position:relative;display:block;width:100%;height:100%}.review-overlay-marker{position:absolute;z-index:2;min-width:18px;min-height:18px;border:2px solid var(--accent);border-radius:7px;background:color-mix(in srgb,var(--surface) 18%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,white 55%,transparent),0 8px 18px #0f172a2e;pointer-events:none}.review-overlay-marker.mark-wrong{border-color:var(--red);background:color-mix(in srgb,var(--red) 10%,transparent)}.review-overlay-marker.mark-correct{border-color:var(--green);background:color-mix(in srgb,var(--green) 10%,transparent)}.review-overlay-marker.mark-needs_review{border-color:var(--amber);background:color-mix(in srgb,var(--amber) 12%,transparent)}.review-overlay-badge{position:absolute;top:-11px;left:-11px;display:grid;place-items:center;width:22px;height:22px;color:#fff;background:var(--accent);border:2px solid white;border-radius:999px;font-size:15px;font-weight:1000;line-height:1}.review-overlay-marker.mark-wrong .review-overlay-badge{background:var(--red)}.review-overlay-marker.mark-correct .review-overlay-badge{background:var(--green)}.review-overlay-marker.mark-needs_review .review-overlay-badge{color:var(--ink);background:var(--amber)}.review-overlay-label{position:absolute;left:14px;bottom:calc(100% + 4px);display:none;max-width:150px;padding:4px 6px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow-sm);font-size:11px;font-weight:900;line-height:1.35;text-align:left}.media-thumb-button:hover .review-overlay-label,.media-thumb-button:focus-visible .review-overlay-label{display:block}.evidence-shot audio{min-height:44px;max-height:44px}.evidence-shot.audio-shot audio{min-height:52px;max-height:52px}.evidence-shot>span{display:grid;place-items:center;font-weight:900}.evidence-shot figcaption,.evidence-shot .audio-timeline,.ai-evidence h3,.writing-evidence h3{margin:0;color:var(--muted);font-size:12px;font-weight:900}.evidence-shot .audio-timeline{color:var(--text);font-size:13px}.evidence-text p,.ai-evidence p,.ai-evidence ol{margin:0;overflow-wrap:anywhere}.evidence-text strong,.ai-evidence strong{margin-right:8px}.ai-evidence ol{display:grid;gap:7px;padding:0;list-style:none}.ai-evidence li{display:grid;gap:3px;padding:10px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:10px}.ai-evidence li strong{color:var(--ink)}.ai-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:11px;background:color-mix(in srgb,var(--red) 8%,var(--surface));border:1px solid color-mix(in srgb,var(--red) 26%,var(--line));border-radius:var(--radius-sm)}.ai-note>span{display:grid;width:34px;height:34px;place-items:center;color:var(--on-primary);background:var(--red);border-radius:50%;font-weight:900}.ai-note.ok{background:color-mix(in srgb,var(--green) 10%,var(--surface));border-color:color-mix(in srgb,var(--green) 28%,var(--line))}.ai-note.ok>span{background:var(--green)}.ai-note strong,.ai-note p{display:block;min-width:0;overflow-wrap:anywhere}.ai-note p{color:var(--muted);font-weight:800}.review-lines{display:grid;gap:8px}.suspected-list{display:grid;gap:10px}.suspected-card{display:grid;gap:8px;padding:11px 12px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px}.suspected-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.suspected-card-head strong{color:var(--ink);font-size:14px;font-weight:900}.suspected-confidence{margin-left:auto;color:var(--muted);font-size:12px;font-weight:800}.suspected-reason{margin:0;color:var(--ink);font-size:14px;font-weight:700;line-height:1.6;overflow-wrap:anywhere}.suspected-card-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.suspected-tag{padding:2px 9px;background:var(--surface2);border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:12px;font-weight:800}.suspected-evidence-link{margin-left:auto;padding:4px 12px;background:transparent;border:1px solid var(--accent);border-radius:999px;color:var(--accent);font-size:13px;font-weight:900;cursor:pointer}.suspected-empty{margin:0;padding:10px;background:var(--surface);border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:13px;font-weight:800;line-height:1.6}.self-corrected-note{margin:0;padding:8px 11px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:10px;color:var(--ink);font-size:13px;font-weight:800;line-height:1.5}.diagnosis-panel{display:grid;gap:8px;padding:10px 11px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.diagnosis-panel h3{margin:0;font-size:13px;font-weight:900;color:var(--muted)}.ocr-grading-panel{display:grid;gap:10px;padding:10px 11px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.ocr-grading-panel h3{margin:0;font-size:13px;font-weight:900;color:var(--muted)}.diagnosis-panel p{margin:0;font-size:13px;font-weight:700;line-height:1.6;color:var(--ink);overflow-wrap:anywhere}.diagnosis-tags{display:flex;flex-wrap:wrap;gap:7px}.suspected-tag.careless{background:color-mix(in srgb,#f0a000 16%,var(--surface2));border-color:color-mix(in srgb,#f0a000 40%,var(--line));color:var(--ink)}.audio-transcript-panel{display:grid;gap:7px;padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.audio-transcript-panel h3,.audio-transcript-panel p{margin:0}.audio-transcript-panel p{color:var(--ink);font-size:14px;font-weight:800;line-height:1.65;white-space:pre-wrap}.audio-transcript-panel small{color:var(--muted);font-weight:800;line-height:1.5}.transcript-fold{display:grid;gap:8px;min-width:0}.transcript-fold summary{cursor:pointer;color:var(--accent);font-size:13px;font-weight:900}.transcript-fold pre{max-height:320px;margin:0;padding:10px;overflow:auto;color:var(--ink);background:var(--surface2);border:1px solid var(--line);border-radius:8px;font-family:inherit;font-size:13px;font-weight:800;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.wrong-evidence,.writing-evidence{display:grid;gap:6px;padding:10px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.raw-evidence{padding-top:6px;border-top:1px solid var(--line)}.raw-evidence summary{color:var(--muted);cursor:pointer;font-size:12px;font-weight:900}.raw-evidence pre{max-height:220px;margin:8px 0 0;overflow:auto;padding:10px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:10px;font-size:12px;line-height:1.55;white-space:pre-wrap}.check-row{display:flex!important;align-items:center;grid-template-columns:auto 1fr;gap:8px!important}.check-row input{width:18px;min-height:18px}.tool-form{display:grid;gap:10px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.tool-form h2{margin:0;font-size:17px}.tool-form label{display:grid;gap:5px;color:var(--muted);font-size:13px;font-weight:800}.tool-form-warn{color:var(--danger, #c0392b);font-size:12px;font-weight:700}.tool-form input,.tool-form select,.tool-form textarea{width:100%;min-height:40px;padding:8px 10px;color:var(--ink);background:var(--surface2);border:1px solid var(--line);border-radius:10px;font:inherit}.tool-form textarea{min-height:76px;resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.task-detail-page{max-width:760px}.task-detail-head{padding-inline:0}.task-detail-head .back,.task-masthead .back{appearance:none;display:inline-grid;width:46px;height:46px;min-width:46px;min-height:46px;place-items:center;color:var(--ink);background:color-mix(in srgb,var(--surface) 88%,var(--primary-soft));border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-radius:50%;box-shadow:var(--shadow-sm);font-size:34px;font-weight:900;line-height:1;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease}.task-detail-head .back:hover,.task-masthead .back:hover{background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 34%,var(--line));transform:translateY(-1px)}.task-detail-head .back:focus-visible,.task-masthead .back:focus-visible,.upload-block .camera:focus-visible,.task-detail-page .submit:focus-visible,.audio-upload-link:focus-visible,.audio-upload-fallback:focus-visible,.record-button:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 28%,transparent);outline-offset:3px}.task-masthead{display:grid;gap:8px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.task-masthead-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;min-width:0}.task-masthead .back{width:34px;height:34px;min-width:34px;min-height:34px;font-size:27px}.task-masthead-kicker{display:flex;align-items:baseline;gap:7px;min-width:0;color:var(--muted);font-size:12px;line-height:1.25}.task-masthead-kicker strong{flex:0 1 auto;min-width:0;color:var(--ink);font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-masthead-kicker small{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-masthead-subject{width:32px;height:32px;border-radius:10px;font-size:15px}.task-masthead h1,.task-masthead p{margin:0}.task-masthead h1{min-width:0;font-size:19px;line-height:1.25;overflow-wrap:anywhere}.task-masthead-detail{display:-webkit-box;color:var(--muted);font-size:13px;font-weight:750;line-height:1.35;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.task-masthead-meta{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.task-masthead-meta span{display:inline-flex;min-height:24px;align-items:center;padding:3px 8px;color:var(--muted);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:900;line-height:1.2}.task-masthead-meta span:last-child{color:var(--primary);background:var(--primary-soft);border-color:color-mix(in srgb,var(--primary) 22%,var(--line))}.task-brief{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.task-brief h1,.task-brief p{margin:0}.task-brief h1{font-size:20px;line-height:1.3}.task-brief p:not(.eyebrow){margin-top:4px;color:var(--muted)}.task-brief .task-reward-line{width:fit-content;margin-top:8px;padding:7px 10px;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));border-radius:999px;font-size:13px;font-weight:900}.upload-block{display:grid;gap:12px;margin-inline:0}.upload-block .camera{appearance:none;display:grid;width:100%;min-height:112px;margin-top:2px;padding:18px 16px;place-items:center;color:var(--primary);background:linear-gradient(135deg,color-mix(in srgb,var(--primary-soft) 78%,var(--surface)) 0%,var(--surface) 72%),var(--surface);border:2px dashed color-mix(in srgb,var(--primary) 42%,var(--line));border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);font-weight:900;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease,transform .15s ease}.upload-block .camera span{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:0;overflow-wrap:anywhere;font-size:18px}.upload-block .camera span:before{content:"+";display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;color:var(--on-primary);background:var(--primary);border-radius:50%;box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 24%,transparent),inset 0 -2px #0000001a;font-size:28px;line-height:1}.upload-block .camera:hover{color:color-mix(in srgb,var(--primary) 86%,var(--ink));background:linear-gradient(135deg,color-mix(in srgb,var(--primary-soft) 92%,var(--surface)) 0%,var(--surface) 76%),var(--surface);border-color:color-mix(in srgb,var(--primary) 62%,var(--line));box-shadow:var(--shadow);transform:translateY(-1px)}.recorder-panel{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary-soft) 70%,var(--surface)) 0%,var(--surface) 72%),var(--surface);border:1px solid color-mix(in srgb,var(--primary) 22%,var(--line));border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.recorder-panel.recording{border-color:color-mix(in srgb,var(--pink) 58%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--pink) 20%,var(--surface)) 0%,var(--surface) 76%),var(--surface)}.recorder-panel.ready{border-color:color-mix(in srgb,var(--green) 42%,var(--line))}.recorder-main{display:flex;align-items:center;gap:12px;min-width:0}.record-button{position:relative;display:grid;flex:0 0 auto;width:62px;height:62px;place-items:center;color:var(--on-primary);background:var(--primary);border:0;border-radius:50%;box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 26%,transparent),inset 0 -3px #0000001f}.record-button span{width:19px;height:19px;background:currentColor;border-radius:50%}.recorder-panel.recording .record-button{background:var(--pink)}.recorder-panel.recording .record-button span{width:20px;height:20px;border-radius:6px}.record-button:disabled{cursor:not-allowed;opacity:.52}.recorder-copy{display:grid;gap:3px;min-width:0}.recorder-copy strong,.recorder-copy small{overflow-wrap:anywhere}.recorder-copy strong{color:var(--ink);font-size:18px}.recorder-copy small{color:var(--muted);font-size:13px;font-weight:800;line-height:1.45}.audio-upload-link{flex:0 0 auto;min-height:38px;padding:0 13px;color:var(--primary);background:color-mix(in srgb,var(--primary-soft) 74%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-radius:999px;font-weight:900}.audio-upload-link:disabled{cursor:not-allowed;opacity:.55}.audio-upload-fallback{width:fit-content;margin-top:8px;padding:0;border:0;color:var(--muted);background:transparent;font-size:13px;font-weight:900;text-decoration:underline;text-underline-offset:3px}.audio-upload-fallback:disabled{cursor:not-allowed;opacity:.55}.record-preview-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px}.audio-backup-link{display:grid;place-items:center;text-decoration:none}.pending-review-media{display:grid;gap:8px;padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.pending-review-media-label{color:var(--ink);font-size:12px;font-weight:900}.pending-review-media audio{width:100%}.record-preview{display:grid;gap:10px;margin-top:12px;padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.task-detail-page .submit{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 18px;color:var(--on-primary);background:var(--primary);border:0;border-radius:999px;box-shadow:var(--btn-lift),0 8px 18px color-mix(in srgb,var(--primary) 24%,transparent);font-weight:900;text-align:center;text-decoration:none;transition:background .15s ease,box-shadow .15s ease,opacity .15s ease,transform .15s ease}.task-detail-page .submit:hover{background:color-mix(in srgb,var(--primary) 88%,var(--ink));box-shadow:var(--btn-lift),0 10px 22px color-mix(in srgb,var(--primary) 28%,transparent);transform:translateY(-1px)}.upload-block .submit{width:100%;margin-inline:0}.upload-block .submit.secondary{color:var(--ink);background:var(--surface2);border:1px solid var(--line);box-shadow:none}.upload-block .submit.secondary:hover{background:color-mix(in srgb,var(--primary-soft) 58%,var(--surface2));border-color:color-mix(in srgb,var(--primary) 24%,var(--line));box-shadow:none}.audio-task-block audio,.audio-result-box audio,.tts-player{width:100%}.reference-block{display:grid;gap:12px}.material-block{padding:11px 14px}.reference-block audio,.reference-block video{width:100%}.reference-block video{max-height:360px;border-radius:var(--radius-sm);background:#111827}.material-title{display:flex;align-items:start;justify-content:space-between;gap:12px}.material-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:0;text-align:left;background:transparent;border:none;cursor:pointer}.material-summary-text{display:flex;flex:1 1 auto;align-items:center;gap:10px;min-width:0}.material-summary-head{display:flex;flex:0 1 auto;flex-wrap:nowrap;align-items:center;gap:8px;min-width:0}.material-summary-head .bt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-summary-text .bd{display:none;min-width:0;color:var(--muted);font-size:13px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.material-kind-tag{flex:0 0 auto;padding:2px 10px;color:var(--primary);background:var(--primary-soft);border-radius:999px;font-size:12px;font-weight:900}.material-summary:disabled{cursor:default;opacity:.62}.material-tabs{display:flex;gap:8px;padding:5px;overflow-x:auto;background:var(--surface2);border:1px solid var(--line);border-radius:999px}.material-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:0 13px;color:var(--muted);background:transparent;border:0;border-radius:999px;font-size:13px;font-weight:900;white-space:nowrap}.material-tabs button.active{color:var(--primary);background:var(--surface);box-shadow:var(--shadow-sm)}.material-tabs button.listen .material-dot{color:var(--green)}.material-dot{width:8px;height:8px;flex:0 0 auto;background:currentColor;border-radius:50%}.material-preview{display:grid;gap:10px;min-width:0;padding:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary-soft) 55%,transparent),transparent 46%),var(--surface2);border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-radius:var(--radius-sm)}.material-title strong{min-width:0;overflow-wrap:anywhere}.material-step-label{display:inline-flex;margin-right:6px;color:var(--primary);font-size:12px;font-weight:900;white-space:nowrap}.material-title>span{flex:0 0 auto;padding:2px 8px;color:var(--primary);background:var(--surface);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:900}.material-loading{display:grid;min-height:180px;place-items:center;color:var(--muted);background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius-sm);font-weight:900}.material-expand-chevron{flex:0 0 auto;color:var(--muted);font-size:20px;line-height:1;transition:transform .18s ease}.material-expand-chevron.open{transform:rotate(180deg)}.readalong-material-grid{display:grid;gap:8px;align-items:start}.readalong-panel{display:grid;gap:10px;min-width:0;padding:12px;background:var(--surface2);border:1px solid color-mix(in srgb,var(--primary) 16%,var(--line));border-radius:var(--radius-sm)}.listen-panel{gap:8px;padding:10px}.listen-panel audio{height:34px}.listen-panel video{max-height:180px}.listen-title{align-items:center}.compact-tabs{border-radius:var(--radius-sm)}.compact-tabs button{flex:1 0 auto}.readalong-pdf{height:min(74vh,720px);min-height:520px}.readalong-pages{max-height:min(74vh,720px);overflow:auto}.listen-empty{min-height:48px;text-align:center}.reference-pdf{width:100%;height:min(72vh,620px);min-height:420px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.reference-image{display:block;width:100%;max-height:420px;object-fit:contain;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface2)}.reference-pages{display:grid;gap:12px}.reference-page{display:grid;gap:6px;margin:0;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.reference-page img{display:block;width:100%;border-radius:10px}.reference-page figcaption{color:var(--muted);font-size:12px;font-weight:900;text-align:center}.reference-open{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:0 16px;margin-inline:0;color:var(--primary);background:color-mix(in srgb,var(--primary-soft) 74%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));border-radius:999px;font-weight:900}.reference-open:disabled{cursor:wait;opacity:.62}.reference-note{margin:0;color:var(--muted)}.document-fallback{display:grid;gap:10px;padding:14px;background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius-sm)}.document-fallback p{margin:0;color:var(--muted)}.audio-reference{display:grid;gap:9px;margin-top:12px;padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.audio-reference p{margin:0;color:var(--muted)}.audio-upload{margin-top:12px}@media(max-width:520px){.recorder-panel{align-items:stretch;flex-direction:column}.audio-upload-link{width:100%}.record-preview-actions{grid-template-columns:1fr}.readalong-pdf{height:66vh;min-height:360px}}.shots{display:grid;gap:9px}.shot{position:relative;min-width:0;border:1px solid var(--line);border-radius:12px}.upload-shots{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.upload-shots-note{grid-column:1 / -1;margin:0;color:var(--muted);font-size:13px}.shot.preview{display:block;aspect-ratio:3 / 4;margin:0;overflow:hidden;background:var(--surface2)}.shot.preview img{width:100%;height:100%;object-fit:contain}.media-thumb-button{display:block;padding:0;border:0;color:inherit;background:transparent;cursor:zoom-in}.shot.preview .media-thumb-button{width:100%;height:100%}.media-thumb-failed{display:grid;place-items:center;width:100%;height:100%;padding:8px;color:var(--muted);background:var(--surface2);font-size:12px;font-weight:700;line-height:1.4;text-align:center}.media-lightbox-open{overflow:hidden}.shot-remove{position:absolute;top:4px;right:4px;width:24px;height:24px;border:none;border-radius:999px;background:#0000008c;color:#fff;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer}.camera:disabled,.submit:disabled{cursor:not-allowed;opacity:.62;transform:none}.upload-block .camera:disabled:hover,.task-detail-page .submit:disabled:hover{box-shadow:var(--shadow-sm);transform:none}.review-result-page{display:grid;gap:14px}.review-loading{align-items:center}.review-buddy{margin-top:0}.review-buddy.feeding .review-buddy-avatar{animation:feed-bounce 1.1s ease-in-out 2}.review-buddy .bubble{padding-right:50px}.listen-btn{display:inline-grid;min-width:34px;min-height:34px;place-items:center;color:var(--primary);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-weight:900}.pet-feedback{animation:pet-feedback-pop .72s ease-in-out}.feedback-spark{position:absolute;z-index:3;width:12px;height:12px;pointer-events:none;background:var(--amber);border-radius:999px;box-shadow:18px -12px 0 var(--primary),-16px 10px 0 var(--green),8px 20px 0 var(--pink);animation:feedback-spark 1s ease-out forwards}.feedback-spark.one{top:26%;left:28%}.feedback-spark.two{top:18%;right:28%;animation-delay:.08s}.review-buddy .listen-btn{position:absolute;right:10px;bottom:10px}.review-buddy .bubble .tts-player{width:calc(100% - 44px);height:32px;margin-top:8px}.review-buddy .bubble .bubble-tts-error{margin:8px 44px 0 0;color:var(--muted);font-size:12px}.review-hero{display:grid;gap:10px;padding:16px;background:linear-gradient(165deg,var(--primary),color-mix(in srgb,var(--primary) 60%,#14171f));border:none;border-radius:var(--radius);box-shadow:var(--shadow);color:var(--on-primary)}.review-hero.manual{background:linear-gradient(165deg,color-mix(in srgb,var(--primary) 78%,var(--muted)),color-mix(in srgb,var(--primary) 45%,#14171f))}.review-hero-head{display:flex;align-items:center;justify-content:flex-end;gap:10px}.review-hero-points{display:grid;gap:2px}.review-hero-points strong{color:var(--on-primary);font-size:17px}.review-hero-points small{color:#ffffffad}.review-hero-points.muted strong{color:#ffffffe0}.review-hero .result-cta.full{width:100%;min-height:50px;margin-inline:0;padding:0 20px;background:#fff;color:var(--primary)}.review-hero .result-cta:hover{background:var(--surface2)}.review-stars{display:flex;gap:3px;color:#ffffff47;font-size:22px;line-height:1}.review-stars .on{color:var(--gold)}.point-arrival{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;color:var(--on-primary);background:var(--primary);border-radius:var(--radius-sm)}.point-arrival.muted{color:var(--muted);background:var(--surface2);border:1px solid var(--line)}.point-arrival strong,.point-arrival small{display:block}.audio-result-box{display:grid;gap:10px;margin-inline:0}.audio-meter{height:12px;overflow:hidden;background:var(--surface2);border:1px solid var(--line);border-radius:999px}.audio-meter span{display:block;height:100%;background:var(--green)}.audio-result-box p{margin:0;color:var(--muted)}.audio-result-box .audio-meta{color:var(--ink);font-size:13px;font-weight:800}.reference-text{padding:10px;color:var(--ink);background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm);line-height:1.8}.reference-text span{margin-right:4px;font-weight:800}.reference-text .missed{padding:0 3px;color:var(--amber);background:color-mix(in srgb,var(--amber) 18%,var(--surface));border-radius:4px}.audio-transcript{display:grid;gap:6px;padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.audio-transcript strong{color:var(--ink);font-size:13px}.audio-transcript p{color:var(--ink);overflow-wrap:anywhere;line-height:1.65}.reading-comment{display:grid;gap:6px;padding:12px;color:var(--ink);background:color-mix(in srgb,var(--green) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--green) 30%,var(--line));border-radius:var(--radius-sm)}.reading-comment strong{color:var(--green);font-size:13px}.reading-comment p{color:var(--ink);overflow-wrap:anywhere}.preview-only span:not(.missed){color:var(--green)}.preview-only .missed{color:var(--pink);background:color-mix(in srgb,var(--pink) 14%,var(--surface))}.audio-compare{display:grid;gap:8px;min-width:0}.audio-compare audio{width:100%;min-width:0}.audio-compare span,.audio-compare small{color:var(--muted);font-size:13px;font-weight:800}.audio-playback{padding:10px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.audio-compare-label{color:var(--ink);font-size:12px;font-weight:900}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.review-summary,.writing-box,.review-items{margin-inline:0}.review-summary{display:grid;gap:12px;align-content:start}.review-summary.compact{gap:10px}.review-summary-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.review-summary-title-row strong{color:var(--ink);font-size:18px;font-weight:900;line-height:1.2}.review-summary.manual{border-color:color-mix(in srgb,var(--amber) 34%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--amber) 10%,var(--surface)) 0%,var(--surface) 58%),var(--surface)}.manual-wait{display:grid;gap:12px;margin-inline:0;border-color:color-mix(in srgb,var(--amber) 30%,var(--line));background:linear-gradient(150deg,color-mix(in srgb,var(--amber) 12%,var(--surface)) 0%,var(--surface) 62%),var(--surface)}.manual-wait .eyebrow{margin:0}.manual-wait h2{margin:0;color:var(--ink);font-size:20px;line-height:1.25}.manual-wait .manual-wait-body{margin:0;color:var(--muted);font-size:14px;font-weight:800;line-height:1.65}.manual-wait-media{display:grid;gap:8px;padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.manual-wait-media-label{color:var(--ink);font-size:12px;font-weight:900}.manual-wait-media audio{width:100%}.manual-wait-media-note{margin:0;color:var(--muted);font-size:13px;font-weight:700;line-height:1.6}.manual-wait-reward{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;background:color-mix(in srgb,var(--amber) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--amber) 32%,var(--line));border-radius:var(--radius-sm)}.manual-wait-reward span{color:var(--muted);font-size:13px;font-weight:900}.manual-wait-reward strong{color:color-mix(in srgb,var(--amber) 88%,var(--ink));font-size:15px;font-weight:900}.manual-wait .result-cta.full{width:100%;min-height:50px;margin-inline:0}.review-summary .eyebrow,.review-section-head .eyebrow,.review-summary h2,.review-summary p,.review-section-head h2{margin:0}.review-summary h2,.review-section-head h2{color:var(--ink);font-size:20px;line-height:1.25}.review-summary>p:not(.eyebrow){color:var(--muted);font-size:14px;font-weight:800;line-height:1.65}.review-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.review-facts span{display:grid;gap:3px;min-width:0;padding:9px 10px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.review-facts small{color:var(--muted);font-size:11px;font-weight:900}.review-facts strong{color:var(--ink);font-size:13px;line-height:1.25;overflow-wrap:anywhere}.review-facts .tone-positive{background:color-mix(in srgb,var(--green) 12%,var(--surface));border-color:color-mix(in srgb,var(--green) 28%,var(--line))}.review-facts .tone-positive strong{color:var(--green)}.review-facts .tone-attention{background:color-mix(in srgb,var(--amber) 12%,var(--surface));border-color:color-mix(in srgb,var(--amber) 32%,var(--line))}.review-facts .tone-attention strong{color:color-mix(in srgb,var(--amber) 88%,var(--ink))}.review-summary.compact .review-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.review-summary.compact .review-facts span{padding:8px 9px}.review-summary.compact .review-facts small{font-size:10px}.review-summary.compact .review-facts strong{font-size:12px}.score-row,.writing-metrics{display:flex;gap:8px;flex-wrap:wrap}.score-row span,.writing-metrics span{padding:6px 9px;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 35%,var(--line));border-radius:999px;font-size:13px;font-weight:800}.score-row .stat-rate,.score-row .stat-positive{color:var(--green);background:color-mix(in srgb,var(--green) 16%,var(--surface));border-color:color-mix(in srgb,var(--green) 38%,var(--line))}.score-row .stat-confidence{color:var(--blue, var(--primary));background:color-mix(in srgb,var(--blue, var(--primary)) 14%,var(--surface));border-color:color-mix(in srgb,var(--blue, var(--primary)) 32%,var(--line))}.score-row .stat-attention{color:var(--amber);background:color-mix(in srgb,var(--amber) 16%,var(--surface));border-color:color-mix(in srgb,var(--amber) 38%,var(--line))}.coach-card{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;align-items:center;margin-inline:0;border-color:color-mix(in srgb,var(--primary) 36%,var(--line))}.coach-pet{display:grid;gap:8px;justify-items:center;min-width:0}.coach-pet img{width:92px;height:92px;object-fit:contain;filter:drop-shadow(0 12px 18px rgb(74 42 23 / 14%))}.coach-pet span{max-width:100%;color:var(--primary);font-size:12px;font-weight:900;line-height:1.25;text-align:center;overflow-wrap:anywhere}.coach-bubble{display:grid;gap:10px;min-width:0}.coach-bubble p{margin:0;font-weight:900}.thinkbox{display:grid;gap:6px;padding:11px;background:var(--surface2);border:1px dashed color-mix(in srgb,var(--primary) 40%,var(--line));border-radius:var(--radius-sm)}.thinkbox strong{display:inline-flex;align-items:center;gap:7px;color:var(--primary)}.thinkbox strong span{display:grid;width:22px;height:22px;place-items:center;color:var(--on-primary);background:var(--primary);border-radius:50%;font-size:13px;line-height:1}.thinkbox small{color:var(--ink);font-size:14px;font-weight:800;line-height:1.45}.coach-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.coach-foot small{color:var(--muted);font-size:12px;font-weight:900}.coach-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.coach-setting{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.coach-setting strong,.coach-setting small{display:block}.coach-setting small{color:var(--muted);font-size:12px;font-weight:800}.coach-audit-list{display:grid;gap:12px}.coach-audit-row{display:grid;gap:10px;padding:14px;background:var(--surface);border:1px solid color-mix(in srgb,var(--primary) 28%,var(--line));border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.coach-audit-row.muted{border-style:dashed;opacity:.78}.coach-audit-head{display:flex;align-items:center;gap:10px;min-width:0}.coach-audit-head h2,.coach-audit-head p,.coach-audit-copy{margin:0}.coach-audit-head h2{font-size:16px}.coach-audit-head p{color:var(--muted);font-size:13px;font-weight:800}.coach-audit-head .coach-audit-meta{font-size:12px;font-weight:700;word-break:break-all}.coach-audit-copy{font-weight:900}.coach-redlines{display:flex;gap:7px;flex-wrap:wrap}.coach-redlines span{padding:5px 8px;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line));border-radius:999px;font-size:12px;font-weight:900}.manual-reason,.writing-box p{margin:10px 0 0;color:var(--muted)}.correction-notice{margin:8px 0 0;padding:9px 12px;background:color-mix(in srgb,var(--amber, #d9a441) 14%,var(--surface));border:1px solid color-mix(in srgb,var(--amber, #d9a441) 40%,var(--line));border-radius:12px;color:var(--ink);font-size:13px;font-weight:700;line-height:1.55}.review-items{display:grid;gap:12px}.review-items.manual{border-color:color-mix(in srgb,var(--amber) 30%,var(--line))}.review-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.review-section-head span{flex:0 0 auto;padding:5px 9px;color:var(--muted);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:900}.review-items-intro{margin:0;color:var(--muted);font-size:14px;font-weight:800;line-height:1.6}.review-items-fold>summary{display:flex;align-items:center;gap:10px;cursor:pointer;list-style:none}.review-items-fold>summary::-webkit-details-marker{display:none}.review-items-fold>summary>div{flex:1 1 auto}.review-items-fold>summary h2{margin:0}.review-items-fold>summary>span{flex:0 0 auto;padding:5px 9px;color:var(--muted);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:900}.review-items-fold>summary:after{content:"▸";flex:0 0 auto;color:var(--muted);font-size:14px;font-weight:900;transition:transform .15s ease}.review-items-fold[open]>summary:after{transform:rotate(90deg)}.review-item{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:start;padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.review-item.ok{border-color:color-mix(in srgb,var(--green) 42%,var(--line))}.review-item:not(.ok){background:color-mix(in srgb,var(--amber) 12%,var(--surface2));border-color:color-mix(in srgb,var(--amber) 34%,var(--line))}.review-item small{display:inline-block;margin-top:6px;padding:2px 9px;color:var(--amber);background:color-mix(in srgb,var(--amber) 18%,var(--surface));border-radius:999px;font-size:12px;font-weight:900}.item-mark{display:grid;width:30px;height:30px;place-items:center;color:#fff;background:var(--amber);border-radius:50%;font-weight:900}.review-item.ok .item-mark{background:var(--green)}.review-item h2,.review-item h3,.review-item p{margin:0}.review-item h2,.review-item h3{font-size:15px;line-height:1.35}.review-item p{color:var(--muted);overflow-wrap:anywhere}.review-item-copy{display:grid;gap:7px;min-width:0}.review-item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}.review-item-head h3{min-width:0;color:var(--ink)}.review-item-head span{flex:0 0 auto;max-width:46%;padding:3px 8px;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));border-radius:999px;font-size:12px;font-weight:900;line-height:1.25;text-align:center}.review-item:not(.ok) .review-item-head span{color:color-mix(in srgb,var(--amber) 88%,var(--ink));background:color-mix(in srgb,var(--amber) 14%,var(--surface));border-color:color-mix(in srgb,var(--amber) 30%,var(--line))}.review-item-evidence{display:grid;gap:3px;padding:8px 10px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;font-size:13px;line-height:1.45}.child-diagnosis{display:grid;gap:10px}.self-corrected-child{margin:0;padding:10px 12px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 35%,var(--line));border-radius:12px;color:var(--ink);font-size:14px;font-weight:800;line-height:1.5}.child-diagnosis-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.knowledge-chip{padding:4px 12px;background:color-mix(in srgb,var(--primary) 10%,var(--surface2));border:1px solid color-mix(in srgb,var(--primary) 28%,var(--line));border-radius:999px;color:var(--ink);font-size:13px;font-weight:800}.careless-tip-child{margin:0;padding:9px 12px;background:color-mix(in srgb,var(--amber, #f0a000) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--amber, #f0a000) 32%,var(--line));border-radius:12px;color:var(--ink);font-size:13px;font-weight:800;line-height:1.55}.review-item-evidence strong{color:var(--muted);font-size:11px}.review-item small{display:inline-block;margin-top:5px;color:var(--primary);font-weight:800}.levelup-overlay{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:18px;background:color-mix(in srgb,#3b2f26 40%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.levelup-card{position:relative;width:min(440px,100%);max-height:calc(100vh - 36px);overflow:hidden auto;padding:20px 18px 18px;text-align:center;background:radial-gradient(120% 78% at 50% 30%,var(--primary-soft),var(--surface2));border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 26px 70px #462c1a3d}.levelup-rays{position:absolute;inset:-42%;pointer-events:none;background:repeating-conic-gradient(from 0deg at 50% 50%,rgb(255 194 75 / 16%) 0 7deg,transparent 7deg 16deg);animation:levelup-spin 26s linear infinite}.levelup-confetti{position:absolute;inset:0;pointer-events:none}.levelup-confetti span{position:absolute;width:8px;height:12px;background:var(--primary);border-radius:3px;transform:rotate(18deg);animation:confetti-float 2.6s ease-in-out infinite}.levelup-confetti span:nth-child(2n){background:var(--amber);animation-delay:.2s}.levelup-confetti span:nth-child(3n){background:var(--green);animation-delay:.35s}.levelup-confetti span:nth-child(4n){background:var(--blue);animation-delay:.5s}.levelup-inner{position:relative;z-index:1;display:grid;gap:12px;justify-items:center}.levelup-kicker{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:5px 12px;color:var(--primary);background:var(--surface);border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line));border-radius:999px;font-size:13px;font-weight:900}.levelup-kicker span{width:9px;height:9px;background:var(--amber);border-radius:50%;box-shadow:0 0 0 5px #ffc24b33}.levelup-jump{display:flex;align-items:center;justify-content:center;gap:11px;color:var(--muted);font-family:var(--font-display);font-size:23px;font-weight:900}.levelup-jump .next{color:var(--primary);font-size:30px}.levelup-jump .arrow{color:var(--amber);font-size:31px}.levelup-card h2{max-width:100%;margin:0;font-size:20px;line-height:1.28}.levelup-card h2 strong{color:var(--primary)}.levelup-pet{position:relative;display:grid;width:min(250px,72vw);aspect-ratio:1;place-items:center}.levelup-pet img{position:relative;z-index:2;width:78%;height:78%;object-fit:contain;filter:drop-shadow(0 18px 24px rgb(82 48 26 / 20%));animation:levelup-pop 1.2s ease-in-out infinite}.glow-ring{position:absolute;inset:12%;border:12px solid rgb(255 194 75 / 26%);border-radius:50%;box-shadow:0 0 0 18px #ffffff4d;animation:glow-pulse 1.7s ease-in-out infinite}.spark{position:absolute;z-index:3;width:14px;height:14px;background:var(--amber);clip-path:polygon(50% 0,64% 35%,100% 50%,64% 64%,50% 100%,36% 64%,0 50%,36% 35%)}.spark.one{top:18%;right:16%}.spark.two{bottom:22%;left:15%;background:var(--primary)}.levelup-speech{display:grid;gap:8px;width:100%;padding:12px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.levelup-speech p{margin:0;color:var(--ink);font-weight:900}.levelup-speech div{display:flex;align-items:center;justify-content:space-between;gap:10px}.levelup-speech small,.levelup-note{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35}.levelup-error{margin:0;color:var(--danger);font-size:13px;font-weight:900}.levelup-cta{min-width:min(240px,100%);min-height:46px;padding:0 18px;color:var(--on-primary);background:var(--primary);border:0;border-radius:999px;box-shadow:var(--btn-lift);font-weight:900}.levelup-note{max-width:300px}@keyframes feed-bounce{0%,to{transform:translateY(0) scale(1)}45%{transform:translateY(-7px) scale(1.04)}}@keyframes pet-feedback-pop{0%,to{transform:translateY(0) scale(1)}38%{transform:translateY(-5px) scale(1.018)}}@keyframes feedback-spark{0%{opacity:0;transform:translateY(8px) scale(.6)}22%{opacity:1}to{opacity:0;transform:translateY(-18px) scale(1.08)}}@keyframes levelup-spin{to{transform:rotate(360deg)}}@keyframes confetti-float{0%,to{transform:translateY(0) rotate(18deg)}50%{transform:translateY(8px) rotate(44deg)}}@keyframes levelup-pop{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.035)}}@keyframes glow-pulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}@media(prefers-reduced-motion:reduce){.review-buddy.feeding .review-buddy-avatar,.pet-feedback,.feedback-spark,.levelup-rays,.levelup-confetti span,.levelup-pet img,.glow-ring{animation:none}}.wrong-book-page{max-width:980px}.wrong-filter-bar{display:grid;grid-template-columns:minmax(240px,auto) minmax(150px,1fr) minmax(180px,1fr);gap:10px;align-items:center}.wrong-filter-bar select{width:100%;min-height:46px;padding:0 12px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);font:inherit;font-weight:800}.correction-dock{display:grid;gap:10px;margin-inline:0;border-color:color-mix(in srgb,var(--amber) 38%,var(--line))}.correction-dock .submit{width:100%;min-height:48px}.wrong-list{display:grid;gap:12px}.wrong-row{display:grid;grid-template-columns:116px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;background:var(--surface);border:1px solid color-mix(in srgb,var(--amber) 30%,var(--line));border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.wrong-row.corrected{border-color:color-mix(in srgb,var(--green) 36%,var(--line));background:color-mix(in srgb,var(--surface) 82%,var(--surface2))}.wrong-row.pending{border-color:color-mix(in srgb,var(--blue) 34%,var(--line))}.wrong-row.retry{border-color:color-mix(in srgb,var(--primary) 34%,var(--line))}.wrong-shot{position:relative;display:grid;width:116px;aspect-ratio:4 / 3;place-items:center;margin:0;overflow:hidden;color:var(--on-primary);background:var(--primary);border:1px solid var(--line);border-radius:14px;font-family:var(--font-display);font-size:30px;font-weight:900}.wrong-shot img{width:100%;height:100%;object-fit:cover}.wrong-shot.hinted img{transform:scale(1.16)}.wrong-shot figcaption{position:absolute;right:6px;bottom:6px;max-width:calc(100% - 12px);padding:3px 6px;color:var(--ink);background:color-mix(in srgb,var(--surface) 86%,transparent);border:1px solid var(--line);border-radius:999px;font-family:var(--font-body);font-size:11px;font-weight:900;line-height:1.25}.wrong-main{display:grid;gap:8px;min-width:0}.wrong-head{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}.wrong-head h2,.wrong-head p,.wrong-question{margin:0}.wrong-head h2{font-size:17px}.wrong-head p,.wrong-question{color:var(--muted)}.retry-note{margin:0;padding:8px 10px;color:var(--ink);background:color-mix(in srgb,var(--primary) 10%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 28%,var(--line));border-radius:var(--radius-sm);font-weight:800}.child-answer{background:var(--surface2)}.wrong-state{padding:5px 9px;color:var(--amber);background:color-mix(in srgb,var(--amber) 16%,var(--surface));border:1px solid color-mix(in srgb,var(--amber) 34%,var(--line));border-radius:999px;font-size:12px}.wrong-row.corrected .wrong-state{color:var(--green);background:color-mix(in srgb,var(--green) 14%,var(--surface));border-color:color-mix(in srgb,var(--green) 34%,var(--line))}.wrong-row.pending .wrong-state{color:var(--blue);background:color-mix(in srgb,var(--blue) 14%,var(--surface));border-color:color-mix(in srgb,var(--blue) 34%,var(--line))}.wrong-row.retry .wrong-state{color:var(--primary);background:color-mix(in srgb,var(--primary) 14%,var(--surface));border-color:color-mix(in srgb,var(--primary) 34%,var(--line))}.parent-correction-panel{display:grid;gap:10px;margin-top:14px;padding:14px;background:var(--surface);border:1px solid color-mix(in srgb,var(--blue) 32%,var(--line));border-radius:var(--radius);box-shadow:var(--shadow-sm)}.parent-correction-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.parent-correction-row h2,.parent-correction-row p,.parent-correction-row small{margin:0}.parent-correction-row h2{font-size:17px}.parent-correction-row p,.parent-correction-row small{color:var(--muted)}.correction-evidence,.answer-fold,.retry-comment{grid-column:1 / -1}.answer-fold{padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.answer-fold summary{cursor:pointer;font-weight:900}.answer-fold p{margin:8px 0 0;color:var(--muted)}.correction-verify-evidence{grid-column:1 / -1;margin:0;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--muted);font-size:13px}.correction-verify-evidence strong{color:var(--ink)}.retry-comment{display:grid;gap:6px;color:var(--muted);font-size:13px;font-weight:800}.retry-comment textarea{min-height:64px;padding:8px 10px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;font:inherit;resize:vertical}.wrong-tags{display:flex;gap:7px;flex-wrap:wrap}.wrong-tags span{padding:4px 8px;color:var(--muted);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:800}.parent-dashboard-page{max-width:1180px}.dashboard-note small{display:block;color:var(--muted);font-size:13px}.dashboard-list{display:grid;gap:14px;margin-top:16px}.dashboard-child-card{display:grid;gap:14px;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.dashboard-child-head{display:flex;gap:10px;align-items:center}.dashboard-child-head h2,.dashboard-child-head p,.dashboard-panel p{margin:0}.dashboard-child-head h2{font-size:18px}.dashboard-child-head p,.dashboard-panel p,.dashboard-panel small{color:var(--muted)}.dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.metric-box{min-width:0;padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.metric-box span,.metric-box strong,.metric-box small{display:block}.metric-box span{color:var(--muted);font-size:12px;font-weight:800}.metric-box strong{margin-top:2px;font-family:var(--font-display);font-size:22px;line-height:1.25}.metric-box small{color:var(--muted);line-height:1.35}.coin-cap-warning{margin-top:4px;color:var(--amber)}.dashboard-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.dashboard-panel{display:grid;gap:9px;padding:13px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.sparkline{display:flex;align-items:end;gap:6px;min-height:46px}.sparkline i{display:block;width:12px;background:var(--amber);border-radius:999px 999px 4px 4px}.habit-grid{display:flex;gap:7px;flex-wrap:wrap}.habit-grid span{padding:6px 9px;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 34%,var(--line));border-radius:999px;font-size:12px;font-weight:800}.gift-pet-hint{margin:0;font-size:12px;color:var(--muted)}.gift-pet-controls{display:flex;gap:8px;align-items:center}.gift-pet-controls select{flex:1;min-width:0}.pet-ranch-page{max-width:1040px}.ranch-hero{display:grid;grid-template-columns:minmax(300px,1fr) minmax(300px,.86fr);gap:16px;align-items:stretch}.ranch-stage-card,.ranch-info-panel,.diagnosis-row,.renderer-contract{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.ranch-stage-card{position:relative;min-height:430px;padding:16px;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--primary-soft) 46%,transparent),transparent 58%),var(--surface2)}.ranch-info-panel{display:grid;gap:13px;align-content:center;padding:18px}.ranch-info-panel h1{font-size:32px}.ranch-quick-actions{display:flex;gap:8px;flex-wrap:wrap}.ranch-worn{margin:-2px 0 0;color:var(--muted);font-size:12px;line-height:1.5;font-weight:800}.ranch-meter-head,.diagnosis-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.ranch-meter-head span,.diagnosis-head span,.ranch-next,.diagnosis-row small{color:var(--muted);font-weight:800}.ranch-meter,.diagnosis-meter{height:13px;overflow:hidden;background:var(--surface2);border:1px solid var(--line);border-radius:999px}.ranch-meter i,.diagnosis-meter i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--primary));border-radius:inherit}.ranch-next{margin:-5px 0 0}.stage-track{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:7px}.stage-track span{display:grid;min-width:0;aspect-ratio:1;place-items:center;color:var(--muted);background:var(--surface2);border:1px solid var(--line);border-radius:50%;font-weight:900}.stage-track span.on{color:var(--on-primary);background:var(--green);border-color:transparent}.stage-track span.active{background:var(--primary);box-shadow:var(--btn-lift)}.toggle-row{display:inline-flex;align-items:center;gap:8px;width:fit-content;color:var(--ink);font-weight:800}.toggle-row input{width:18px;height:18px;accent-color:var(--primary)}.dress-placeholder{padding:11px 12px;color:var(--muted);background:var(--surface2);border:1px dashed var(--line);border-radius:var(--radius-sm);font-weight:800}.adoption-panel,.rename-panel,.swap-panel,.pet-dex-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.adoption-panel{display:grid;gap:18px;padding:20px}.adoption-copy{display:grid;gap:6px;text-align:center}.adoption-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.adopt-card,.swap-card,.pet-card-actions button{color:var(--ink);background:var(--surface2);border:1px solid var(--line)}.adopt-card{display:grid;gap:8px;min-width:0;min-height:246px;padding:14px;border-radius:var(--radius-sm);text-align:center}.adopt-card.on{background:var(--primary-soft);border-color:var(--primary);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--primary) 30%,transparent)}.adopt-card img,.pet-dex-card img,.swap-card img{width:100%;min-width:0;object-fit:contain}.adopt-card img{height:138px}.adopt-card strong,.swap-card strong,.pet-dex-copy strong{font-family:var(--font-display);font-size:17px}.adopt-card small,.swap-card small,.pet-dex-copy small,.pet-dex-copy em,.swap-head span,.keepnote{color:var(--muted);font-size:12px;line-height:1.5}.adoption-name,.rename-panel{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center}.adoption-name input,.rename-panel input{min-height:44px;min-width:0;padding:0 13px;color:var(--ink);background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.swap-panel{display:grid;gap:11px;padding:13px;border-radius:var(--radius-sm)}.swap-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.swap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.swap-card{display:grid;gap:5px;min-height:150px;padding:9px;border-radius:var(--radius-sm);text-align:center}.swap-card.on{color:var(--on-primary);background:var(--primary);border-color:transparent}.swap-card img{height:88px}.swap-card.on small{color:var(--on-primary)}.keepnote{padding:10px 11px;background:var(--surface2);border:1px dashed var(--line);border-radius:var(--radius-sm);font-weight:800}.pet-dex-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.pet-dex-card{position:relative;display:grid;gap:9px;min-height:278px;padding:13px;border-radius:var(--radius-sm)}.pet-dex-card.active{border-color:var(--primary)}.pet-dex-card.locked{opacity:.72}.pet-dex-card.locked img{filter:saturate(.65)}.pet-dex-card img{height:132px}.pet-state{position:absolute;top:10px;right:10px;padding:4px 8px;color:var(--primary);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-size:11px;font-weight:900}.pet-dex-copy{display:grid;gap:3px}.pet-dex-copy em{font-style:normal;font-weight:800}.pet-card-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.pet-card-actions button{min-height:34px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:900}.rename-panel{padding:12px;border-radius:var(--radius-sm)}.wardrobe-panel{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:14px;align-items:start;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.wardrobe-preview,.wardrobe-shop{display:grid;min-width:0;gap:12px;align-content:start}.wardrobe-title{display:grid;gap:4px}.wardrobe-title h1{font-size:28px}.wardrobe-title small,.wardrobe-shop-head span,.wardrobe-hint,.scene-strip span,.cosmetic-copy small{color:var(--muted);font-size:12px;line-height:1.5;font-weight:800}.wardrobe-stage{position:relative;display:grid;place-items:center;height:302px;min-height:0;background:linear-gradient(180deg,color-mix(in srgb,var(--green) 20%,transparent),transparent 62%),var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.wardrobe-stage .pet-renderer{width:100%;height:100%;min-height:0}.wardrobe-stage .pet-render-canvas{width:min(300px,92%)}.wardrobe-guard{padding:10px 12px;color:var(--ink);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));border-radius:var(--radius-sm);font-size:12px;line-height:1.55;font-weight:900}.wardrobe-shop-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.wardrobe-shop-head strong{font-family:var(--font-display);font-size:22px}.wardrobe-slots{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;grid-auto-rows:36px}.wardrobe-slots button{display:inline-grid;width:100%;height:36px;min-width:0;min-height:0;place-items:center;color:var(--ink);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:900;line-height:1;white-space:nowrap}.wardrobe-slots button.on{color:var(--on-primary);background:var(--primary);border-color:transparent}.cosmetic-list{display:grid;gap:9px}.cosmetic-row{display:grid;grid-template-columns:56px minmax(0,1fr) minmax(84px,auto);gap:10px;align-items:center;min-height:76px;padding:9px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer}.cosmetic-row.on{border-color:var(--primary);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}.cosmetic-row.worn{background:color-mix(in srgb,var(--primary-soft) 72%,var(--surface2))}.cosmetic-thumb{display:grid;flex:0 0 56px;width:56px;height:56px;aspect-ratio:1;place-items:center;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.cosmetic-thumb img{width:100%;height:100%;object-fit:contain}.cosmetic-copy{display:grid;min-width:0;gap:3px}.cosmetic-copy strong{min-width:0;overflow-wrap:anywhere;font-family:var(--font-display);font-size:16px}.cosmetic-action{display:inline-grid;width:84px;height:36px;min-width:84px;min-height:0;place-items:center;padding:0 10px;color:var(--on-primary);background:var(--primary);border:0;border-radius:999px;font-size:12px;font-weight:900;line-height:1;white-space:nowrap}.cosmetic-action.buy{background:var(--green)}.cosmetic-action.worn,.cosmetic-action.ach{color:var(--primary);background:var(--surface);border:1px solid var(--line)}.cosmetic-action.lock{color:color-mix(in srgb,var(--ink) 55%,transparent);background:var(--surface);border:1px dashed var(--line)}.cosmetic-row.locked{opacity:.85}.set-banner{margin-top:8px;padding:8px 12px;color:var(--on-primary);text-align:center;background:linear-gradient(100deg,var(--primary),color-mix(in srgb,var(--gold) 60%,var(--primary)));border-radius:999px;font-family:var(--font-display);font-size:14px;font-weight:900}.set-banner-hint{font-weight:700;opacity:.92}.slot-dot{display:inline-grid;min-width:16px;height:16px;margin-left:4px;padding:0 4px;place-items:center;color:var(--on-primary);background:color-mix(in srgb,var(--primary) 80%,var(--ink));border-radius:999px;font-size:10px;font-weight:900}.wardrobe-empty{padding:18px 12px;color:color-mix(in srgb,var(--ink) 62%,transparent);text-align:center;background:var(--surface2);border:1px dashed var(--line);border-radius:var(--radius-sm);font-size:13px}.scene-section{display:grid;gap:9px;margin-top:4px}.scene-section-head{display:flex;align-items:center;justify-content:space-between}.scene-section-head strong{font-family:var(--font-display);font-size:15px}.scene-clear{padding:5px 11px;color:var(--primary);background:var(--surface);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:800}.scene-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:9px}.scene-card{display:grid;gap:6px;padding:8px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm);text-align:center}.scene-card.on{border-color:var(--primary);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--primary) 20%,transparent)}.scene-thumb{overflow:hidden;aspect-ratio:16 / 10;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.scene-thumb img{width:100%;height:100%;object-fit:cover}.scene-card strong{font-size:13px}.scene-action{padding:6px 0;color:var(--on-primary);background:var(--primary);border:0;border-radius:999px;font-size:12px;font-weight:900}.scene-action.buy{background:var(--green)}.outfit-section{display:grid;gap:9px;padding:10px;background:color-mix(in srgb,var(--primary-soft) 55%,var(--surface2));border:1px solid color-mix(in srgb,var(--primary) 20%,var(--line));border-radius:var(--radius-sm)}.outfit-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.outfit-section-head strong{font-family:var(--font-display);font-size:15px}.outfit-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:9px}.outfit-card{display:grid;gap:7px;min-width:0;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.outfit-card.on{border-color:var(--primary);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--primary) 20%,transparent)}.outfit-card.locked .outfit-thumb{filter:grayscale(.35);opacity:.78}.outfit-thumb{display:grid;aspect-ratio:1;place-items:center;overflow:hidden;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.outfit-thumb img{width:100%;height:100%;object-fit:contain}.outfit-copy{display:grid;gap:2px;min-width:0}.outfit-copy strong{overflow-wrap:anywhere;font-size:13px;line-height:1.25}.outfit-copy small{color:var(--muted);font-size:11px;line-height:1.35;font-weight:800}.scene-action.on,.scene-action.ach{color:var(--primary);background:var(--surface);border:1px solid var(--line)}.reward-shop-page,.parent-redeem-page{--reward-exp: color-mix(in srgb, var(--green) 18%, var(--surface));--reward-cash: color-mix(in srgb, var(--gold) 18%, var(--surface))}.reward-hero{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:14px;align-items:stretch;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.reward-hero h1{font-size:32px}.reward-balance{display:grid;place-items:center;min-width:0;padding:14px;text-align:center;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.reward-balance.is-button{width:100%;color:inherit}.reward-balance strong{font-family:var(--font-display);font-size:34px}.reward-balance span,.reward-balance small,.reward-card p,.redeem-status-row small,.redeem-status-row p,.approval-card p{color:var(--muted);font-size:12px;line-height:1.55;font-weight:800}.reward-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.reward-tabs button{min-height:42px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:999px;font-weight:900}.reward-tabs button.on{color:var(--on-primary);background:var(--primary);border-color:transparent}.reward-tabs.compact{grid-template-columns:repeat(auto-fit,minmax(64px,1fr))}.reward-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.reward-card{display:grid;min-width:0;min-height:210px;gap:12px;align-content:space-between;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.reward-card.type-experience{background:var(--reward-exp)}.reward-card.type-cash{background:var(--reward-cash)}.reward-card h2,.approval-card h2{margin:6px 0 4px;overflow-wrap:anywhere;font-size:21px}.reward-kind{display:inline-flex;width:fit-content;padding:5px 9px;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));border-radius:999px;font-size:11px;font-weight:900}.reward-price{font-family:var(--font-display);font-size:24px}.redeem-status-list,.approval-list{display:grid;gap:10px}.redeem-status-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 12px;align-items:center;padding:13px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm)}.redeem-status-row>p{grid-column:1 / -1;margin:0}.redeem-status-row>span{padding:5px 9px;color:var(--primary);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:900}.redeem-status-row.is-approved>span,.redeem-status-row.is-fulfilled>span{color:var(--on-primary);background:var(--green);border-color:transparent}.redeem-status-row.is-rejected>span,.redeem-status-row.is-expired>span{color:var(--ink);background:var(--gold-soft)}.settlement-page{max-width:1080px}.settlement-hero,.settlement-week,.settlement-date-strip,.arrival-card,.settlement-ledger-panel,.milestone-card,.makeup-panel,.softnote-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.settlement-hero{display:grid;grid-template-columns:72px minmax(0,1fr) 176px;gap:14px;align-items:center;padding:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--green) 18%,transparent),transparent 56%),var(--surface)}.settlement-copy{display:grid;align-content:center;gap:8px}.settlement-copy h1{font-size:30px;line-height:1.05}.settlement-meta{display:flex;gap:8px;flex-wrap:wrap}.settlement-meta span{padding:6px 10px;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 28%,var(--line));border-radius:999px;font-size:12px;font-weight:900}.settlement-stamp{display:grid;place-items:center;min-width:0;min-height:118px;padding:12px;text-align:center;color:var(--on-primary);background:var(--primary);border-radius:var(--radius-sm);box-shadow:var(--btn-lift)}.settlement-stamp.rest{color:var(--primary);background:var(--primary-soft);border:1px dashed color-mix(in srgb,var(--primary) 36%,var(--line));box-shadow:none}.settlement-stamp strong{font-family:var(--font-display);font-size:40px;line-height:1}.settlement-stamp span,.settlement-stamp small{font-weight:900}.settlement-stamp small{margin-top:8px;line-height:1.35}.settlement-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;padding:12px;border-radius:var(--radius-sm)}.settlement-date-strip{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;gap:8px;align-items:stretch;padding:10px;border-radius:var(--radius-sm)}.settlement-date-scroller{display:flex;min-width:0;gap:8px;overflow-x:auto;padding:2px;scroll-snap-type:x proximity;scrollbar-width:thin}.date-arrow{display:grid;min-width:0;min-height:100%;place-items:center;color:var(--primary);background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm);font-size:26px;font-weight:900;cursor:pointer}.date-arrow:hover{border-color:color-mix(in srgb,var(--primary) 38%,var(--line))}.settlement-day{display:grid;min-width:0;gap:5px;justify-items:center;padding:8px 4px;color:var(--muted);background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.settlement-dot{display:grid;width:34px;height:34px;place-items:center;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:50%;font-size:13px;font-weight:900}.settlement-day.is-done{color:var(--green);background:color-mix(in srgb,var(--green) 10%,var(--surface))}.settlement-day.is-done .settlement-dot{color:#fff;background:var(--green);border-color:transparent}.settlement-day.is-rest{color:var(--primary);border-style:dashed}.settlement-day.is-missed{color:var(--amber);background:color-mix(in srgb,var(--amber) 10%,var(--surface))}.settlement-day strong,.settlement-day small{min-width:0;overflow-wrap:anywhere;font-size:12px;line-height:1.2}.arrival-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.arrival-card{display:grid;gap:5px;min-width:0;padding:13px;border-radius:var(--radius-sm)}.arrival-card.is-clickable{cursor:pointer}.arrival-card span,.arrival-card small,.milestone-card p,.milestone-card small,.makeup-panel p,.makeup-panel small{color:var(--muted);font-size:12px;line-height:1.5;font-weight:800}.arrival-card strong{font-family:var(--font-display);font-size:30px}.ledger-hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ledger-hero article,.ledger-days article,.ledger-day-button,.ledger-row{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.ledger-hero article{display:grid;gap:6px;padding:16px}.ledger-hero span,.ledger-hero small,.ledger-days span,.ledger-days small,.ledger-row small{color:var(--muted);font-size:12px;line-height:1.5;font-weight:800}.ledger-hero strong{font-family:var(--font-display);font-size:34px}.ledger-toolbar{display:grid;gap:10px}.ledger-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.ledger-days article,.ledger-day-button{display:grid;gap:4px;padding:12px}.ledger-day-button{width:100%;border:1px solid var(--line);color:inherit;text-align:left;cursor:pointer}.ledger-day-button:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--line))}.ledger-day-button.is-selected{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 22%,transparent)}.ledger-day-button.is-none{color:color-mix(in srgb,var(--muted) 72%,transparent);background:color-mix(in srgb,var(--surface2) 70%,transparent);border-style:dashed;box-shadow:none}.ledger-day-button.is-today{border-color:color-mix(in srgb,var(--primary) 62%,var(--line));box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}.ledger-day-button.has-pending{background:color-mix(in srgb,var(--primary) 10%,var(--surface))}.settlement-date-chip{flex:0 0 148px;width:148px;min-height:104px;scroll-snap-align:center}.settlement-ledger-panel{display:grid;gap:12px;padding:14px;border-radius:var(--radius-sm)}.settlement-ledger-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.settlement-ledger-head h1{font-size:22px}.settlement-ledger-head>span{flex:0 0 auto;padding:6px 10px;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 24%,var(--line));border-radius:999px;font-size:12px;font-weight:900}.settlement-ledger-summary{display:grid;grid-template-columns:1.1fr 1.1fr 1fr;gap:10px}.settlement-ledger-summary article{display:grid;min-width:0;gap:5px;padding:12px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm)}.settlement-ledger-summary span,.settlement-ledger-summary small{color:var(--muted);font-size:12px;line-height:1.4;font-weight:800}.settlement-ledger-summary strong{font-family:var(--font-display);font-size:28px;line-height:1.05;overflow-wrap:anywhere}.settlement-tx-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ledger-day-date{display:flex;align-items:center;justify-content:space-between;gap:6px;color:var(--muted);font-size:12px;font-weight:900}.ledger-day-date em{padding:2px 6px;color:var(--on-primary);background:var(--primary);border-radius:999px;font-style:normal;font-size:11px}.ledger-list{display:grid;gap:10px}.ledger-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px}.ledger-row div{min-width:0}.ledger-row strong,.ledger-row small{display:block;overflow-wrap:anywhere}.ledger-row>span{flex:0 0 auto;color:var(--primary);font-weight:950;white-space:nowrap}.ledger-row>span.negative{color:var(--muted)}.ledger-row.is-penalty{border-left:3px solid var(--red);padding-left:9px}.ledger-row.is-penalty>span.negative{color:var(--red)}.ledger-link{width:fit-content}.ledger-bridge-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid rgba(15,23,42,.1);border-radius:var(--radius-sm);background:#ffffffdb}.ledger-bridge-card div{display:grid;min-width:0;gap:5px}.ledger-bridge-card strong{color:#111827;overflow-wrap:anywhere}.ledger-bridge-card small{color:var(--muted);line-height:1.45;overflow-wrap:anywhere}.ledger-bridge-card .secondary-action{flex:0 0 auto}.milestone-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.milestone-card{display:grid;min-width:0;min-height:190px;gap:9px;align-content:start;padding:13px;border-radius:var(--radius-sm)}.milestone-card.is-claimed{border-color:color-mix(in srgb,var(--green) 42%,var(--line));background:color-mix(in srgb,var(--green) 10%,var(--surface))}.milestone-card.is-available{border-color:color-mix(in srgb,var(--primary) 44%,var(--line));background:var(--primary-soft)}.milestone-days{width:fit-content;padding:6px 9px;color:var(--primary);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:900}.milestone-card h2,.milestone-card p{margin:0}.milestone-card h2{font-size:19px}.milestone-card>span{width:fit-content;padding:5px 9px;color:var(--primary);background:var(--surface2);border:1px solid var(--line);border-radius:999px;font-size:12px;font-weight:900}.milestone-card.is-claimed>span{color:#fff;background:var(--green);border-color:transparent}.makeup-panel{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border-radius:var(--radius-sm)}.makeup-icon{display:grid;width:48px;height:48px;place-items:center;color:var(--primary);background:var(--primary-soft);border:1px dashed color-mix(in srgb,var(--primary) 38%,var(--line));border-radius:14px;font-family:var(--font-display);font-weight:900}.makeup-panel strong,.makeup-panel p,.makeup-panel small{display:block;margin:0}.softnote-card{padding:13px 15px;color:var(--muted);background:var(--surface2);border-radius:var(--radius-sm);font-weight:900}.approval-card{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:12px;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.approval-main{display:grid;min-width:0;gap:6px}.approval-main textarea{min-height:72px;min-width:0;padding:10px 12px;color:var(--ink);background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm);resize:vertical}.approval-actions{display:grid;gap:14px;align-content:center}.approval-actions .primary-action,.approval-actions .secondary-action{min-height:44px}.approval-actions .approve-spend{border:2px solid var(--danger, #c0392b);box-shadow:0 6px 18px #c0392b3d}.pet-renderer{display:grid;min-height:100%;place-items:center}.pet-render-canvas{position:relative;width:min(94%,430px);aspect-ratio:1;isolation:isolate}.pet-render-canvas:before{position:absolute;right:13%;bottom:7%;left:13%;z-index:0;height:8%;content:"";background:color-mix(in srgb,var(--ink) 12%,transparent);border-radius:50%;filter:blur(6px)}.pet-layer{position:absolute;pointer-events:none;-webkit-user-select:none;user-select:none}.pet-base{inset:0;z-index:10;width:100%;height:100%;object-fit:contain;animation:pet-breathe 3.4s ease-in-out infinite}.pet-scene{inset:0;z-index:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}.pet-composite-full{inset:0;z-index:10;width:100%;height:100%;object-fit:contain;animation:pet-breathe 3.4s ease-in-out infinite}.pet-front-mask{inset:0;z-index:19;width:100%;height:100%;object-fit:contain;animation:pet-breathe 3.4s ease-in-out infinite}.pet-cosmetic{transform-origin:50% 50%}.pet-fx{position:absolute;z-index:30;display:block;pointer-events:none;border-radius:50%}.fx-one,.fx-two{width:14px;height:14px;background:var(--gold);animation:ranch-spark 2.8s ease-in-out infinite}.fx-one{top:20%;left:22%}.fx-two{top:27%;right:20%;animation-delay:.8s}.fx-soft{inset:11%;z-index:1;border:2px solid color-mix(in srgb,var(--primary) 24%,transparent);animation:ranch-pulse 3.6s ease-in-out infinite}.diagnosis-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.diagnosis-row{display:grid;gap:9px;padding:13px;border-radius:var(--radius-sm)}.diagnosis-head strong{font-size:15px}.diagnosis-meter i{background:linear-gradient(90deg,var(--blue),var(--green))}.renderer-contract{display:flex;gap:8px;flex-wrap:wrap;padding:12px;border-radius:var(--radius-sm)}.renderer-contract span{padding:6px 10px;color:var(--primary);background:var(--primary-soft);border:1px solid color-mix(in srgb,var(--primary) 32%,var(--line));border-radius:999px;font-size:12px;font-weight:900}@keyframes pet-breathe{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-2.5%) scale(1.012)}}@keyframes ranch-spark{0%,to{opacity:0;transform:translateY(12px) scale(.7)}45%{opacity:.9;transform:translateY(-8px) scale(1)}}@keyframes ranch-pulse{0%,to{opacity:.25;transform:scale(.96)}50%{opacity:.48;transform:scale(1.02)}}@media(max-width:760px){.page{width:min(1080px,calc(100% - 20px));padding-top:14px;padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}.hero-panel{align-items:flex-start;flex-direction:column}.topbar{align-items:center;flex-direction:row;gap:8px;padding:7px 10px}.brand{gap:8px;min-width:0}.brand-mark{flex:0 0 auto;width:30px;height:30px}.brand strong{font-size:16px;line-height:1.15;white-space:nowrap}.brand small{display:none}.topnav{flex:0 0 auto;flex-wrap:nowrap;gap:3px;width:auto;margin-left:auto}.topnav a{min-height:30px;padding:3px 6px;font-size:13px;white-space:nowrap}.status-grid,.parent-grid,.token-page{grid-template-columns:1fr}.auth-panel{grid-template-columns:1fr;gap:16px;padding:18px}.session-card{grid-template-columns:auto minmax(0,1fr)}.session-card .primary-action,.session-card .secondary-action{grid-column:1 / -1;width:100%}.control-panel{position:static}.task-card{grid-template-columns:auto 1fr}.task-card button{grid-column:1 / -1;width:100%}.manager-toolbar,.section-title:not(.map-week-head){align-items:flex-start;flex-direction:column}.map-summary-card{align-items:flex-start;flex-direction:column}.map-summary-card small{text-align:left}.map-node-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.kid-avatar.small{width:32px;height:32px}.manager-layout,.spotcheck-row{grid-template-columns:1fr}.spotcheck-form .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.decision-panel{position:static}.settlement-row{align-items:start}.spotcheck-form .action-row{display:grid;grid-template-columns:1fr}.spotcheck-form .action-row>button{width:100%}.manager-panel{position:static}.schedule-row,.task-brief,.review-grid,.review-facts{grid-template-columns:1fr}.review-summary.compact .review-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.review-section-head,.review-item-head{align-items:flex-start;flex-direction:column}.review-item-head span{max-width:100%}.coach-card,.coach-settings{grid-template-columns:1fr}.coach-card{align-items:start}.coach-pet{grid-template-columns:72px minmax(0,1fr);justify-items:start;align-items:center}.coach-pet img{width:72px;height:72px}.coach-pet span{text-align:left}.coach-setting,.coach-foot,.point-arrival{align-items:flex-start;flex-direction:column}.wrong-filter-bar,.wrong-row,.parent-correction-row{grid-template-columns:1fr}.wrong-filter-bar{gap:8px}.wrong-filter-bar .seg-group{display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;padding:3px;scrollbar-width:none}.wrong-filter-bar .seg-group::-webkit-scrollbar{display:none}.wrong-filter-bar .seg-group button{flex:0 0 auto;min-height:38px;padding:6px 13px;white-space:nowrap}.wrong-shot{width:100%}.wrong-row>button{width:100%}.dashboard-metrics,.dashboard-detail-grid,.ranch-hero,.wardrobe-panel,.settlement-hero,.milestone-grid,.reward-hero,.reward-grid,.approval-card,.diagnosis-grid,.adoption-options,.pet-dex-grid{grid-template-columns:1fr}.swap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.adoption-name,.rename-panel{grid-template-columns:1fr}.wardrobe-panel{gap:10px;padding:10px}.wardrobe-preview{position:static;z-index:auto;background:var(--surface);padding:8px;border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:none}.wardrobe-title{gap:2px}.wardrobe-title .eyebrow{display:none}.wardrobe-title h1{font-size:21px}.wardrobe-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wardrobe-stage{height:clamp(190px,29vh,250px)}.wardrobe-stage .pet-render-canvas{width:min(230px,86%)}.wardrobe-guard{display:none}.wardrobe-slots{display:flex;flex-wrap:nowrap;gap:6px;grid-auto-rows:auto;overflow-x:auto;scrollbar-width:none}.wardrobe-slots::-webkit-scrollbar{display:none}.wardrobe-slots button{flex:0 0 auto;width:auto;padding:0 14px}.reward-tabs{grid-template-columns:1fr}.ledger-days{grid-template-columns:repeat(2,minmax(0,1fr))}.settlement-date-strip{grid-template-columns:34px minmax(0,1fr) 34px;gap:6px;padding:8px}.settlement-date-chip{flex-basis:136px;width:136px}.settlement-ledger-head{align-items:flex-start;flex-direction:column}.settlement-ledger-summary,.settlement-tx-list{grid-template-columns:1fr}.settlement-copy h1{font-size:26px}.settlement-pet{display:none}.settlement-stamp{min-height:96px}.arrival-grid{grid-template-columns:1fr}.settlement-week{gap:5px;padding:8px}.settlement-day{gap:4px;padding:7px 1px}.settlement-dot{width:28px;height:28px;font-size:11px}.settlement-day strong,.settlement-day small{font-size:10.5px;white-space:nowrap}.milestone-card{grid-template-columns:auto minmax(0,1fr) auto;min-height:0;align-items:center}.milestone-card h2{font-size:17px}.milestone-card p{margin-top:2px}.milestone-card small{grid-column:2 / -1}.makeup-panel{grid-template-columns:48px minmax(0,1fr)}.makeup-panel .primary-action{grid-column:1 / -1;width:100%}.redeem-status-row{grid-template-columns:1fr}.cosmetic-row{grid-template-columns:46px minmax(0,1fr) auto;min-height:0;padding:8px}.cosmetic-thumb{width:46px;height:46px}.cosmetic-action{grid-column:auto;width:auto;padding:8px 12px}.ranch-stage-card{min-height:340px}.stage-track{gap:5px}}@media(max-width:520px){.child-map-page{padding-top:12px}.child-dashboard{gap:10px}.child-dashboard .page-heading__stats .coin{padding:5px 9px;font-size:13px}.buddy-row{grid-template-columns:44px minmax(0,1fr);gap:8px;align-items:center;margin-top:0}.buddy-row .pet-avatar{width:44px!important;height:44px!important}.wrong-book-page .section-title{gap:6px;margin-top:2px}.wrong-book-page .section-title h1{font-size:24px}.wrong-book-page .status-card.full{align-items:flex-start;padding:14px}.bubble{min-width:0;margin-bottom:0;padding:9px 11px;border-radius:13px}.bubble strong{overflow:hidden;font-size:14px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.bubble small{margin-top:1px;font-size:11px;line-height:1.25}.map-view-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding:3px}.map-view-tabs button{min-height:34px;padding:4px 10px}.map-week-head{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:8px;margin-top:-2px}.map-week-title strong{font-size:15px;line-height:1.2}.map-week-title small{font-size:12px;line-height:1.2}.week-nav{width:36px;height:36px;border-radius:11px}.adventure-map{padding:4px;overflow:hidden;border-radius:14px}.adventure-map svg{min-width:0;min-height:0;aspect-ratio:360 / 292}.map-node-legend{gap:5px;margin-top:-2px;font-size:11px}.map-node-legend span{padding:2px 6px}.child-map-page .section-title{gap:4px;margin-top:0}.child-map-page .section-title h1{font-size:20px}.subject-strip{gap:6px}.subject-strip span{min-height:30px;padding:0 9px;font-size:13px}}
