:root{--ds-color-primary-50:#edeffe;--ds-color-primary-500:#4e61f6;--ds-color-text-primary:#131927;--ds-color-text-strong:#252525;--ds-color-text-white:#fff;--ds-color-surface-white:#fff;--ds-color-grey-50:#f9fafb;--ds-color-grey-200:#e5e7ea;--ds-color-black-100:#e5e5e5;--ds-color-black-200:#dedede;--ds-color-black-300:#d1d1d3;--ds-color-black-500:#b7b7b7;--ds-color-black-600:#979797;--ds-color-black-700:#777;--ds-color-black-800:#252525;--ds-color-black-900:#000;--ds-color-blue-100:#edf6fc;--ds-color-blue-200:#d3eaf9;--ds-color-blue-300:#9fd9f6;--ds-color-blue-500:#6cc0f8;--ds-color-blue-600:#1899d6;--ds-color-blue-700:#2f89e8;--ds-color-blue-800:#0045c3;--ds-color-blue-900:#245193;--ds-color-green-100:#e9f8d7;--ds-color-green-200:#dbefc0;--ds-color-green-300:#afd46d;--ds-color-green-500:#98d04e;--ds-color-green-600:#8cc43d;--ds-color-green-700:#59c162;--ds-color-green-800:#09a045;--ds-color-green-900:#00712d;--ds-color-red-100:#ffd5de;--ds-color-red-300:#ffb5bc;--ds-color-red-600:#ff6565;--ds-color-red-700:#ff4b4b;--ds-color-red-900:#d00416;--ds-color-purple-100:#f6f1ff;--ds-space-4:16px;--ds-space-6:24px;--ds-radius-button:8px;--ds-radius-xs:8px;--ds-radius-sm:12px;--ds-radius-xl:24px;--ds-radius-2xl:32px;--ds-radius-pill:999px;--ds-font-family-base:"Inter", "KoddiUDOnGothic", "Noto Sans KR", "Segoe UI", sans-serif;--ds-font-family-korean:"NanumGothic", "KoddiUDOnGothic", "Noto Sans KR", sans-serif;--ds-font-h1-size:48px;--ds-font-h1-line-height:58px;--ds-font-h5-size:24px;--ds-font-h5-line-height:28px;--ds-font-body-size:16px;--ds-font-body-line-height:24px;--ds-font-weight-regular:400;--ds-font-weight-semibold:600;--ds-font-weight-bold:700;--ds-font-weight-heavy:900;--ds-shadow-100:0 4px 4px -2px #13192714, 0 2px 4px -2px #1319271f;--ds-shadow-200:0 8px 8px -4px #13192714, 0 4px 6px -4px #1319271f;--ds-shadow-300:0 8px 16px -6px #13192714, 0 6px 8px -6px #1319271f;--ds-shadow-400:0 8px 24px -4px #13192714, 0 6px 12px -6px #1319271f;--ds-shadow-500:0 10px 32px -4px #1319271a, 0 6px 14px -6px #1319271f;--ds-shadow-600:0 12px 42px -4px #1319271f, 0 8px 18px -6px #1319271f;--ds-shadow-700:0 14px 64px -4px #1319271f, 0 8px 22px -6px #1319271f;--ds-shadow-800:0 18px 88px -4px #13192724, 0 8px 28px -6px #1319271f;--kumon-color-primary:var(--ds-color-primary-500);--kumon-color-primary-soft:var(--ds-color-primary-50);--kumon-color-text:var(--ds-color-text-primary);--kumon-color-text-strong:var(--ds-color-text-strong);--kumon-color-muted:var(--ds-color-black-600);--kumon-color-border:#1319271a;--kumon-color-border-strong:#13192729;--kumon-color-surface:var(--ds-color-surface-white);--kumon-color-surface-soft:var(--ds-color-grey-50);--kumon-color-success:var(--ds-color-green-800);--kumon-color-success-soft:var(--ds-color-green-100);--kumon-color-danger:var(--ds-color-red-600);--kumon-color-blue:var(--ds-color-blue-700);--kumon-color-week-accent:var(--ds-color-primary-500);--kumon-gradient-primary:linear-gradient(180deg, #6f7dff 0%, var(--ds-color-primary-500) 100%);--kumon-gradient-chinese:linear-gradient(180deg, var(--ds-color-green-500) 0%, var(--ds-color-green-800) 100%);--kumon-gradient-japanese:linear-gradient(180deg, #8d72ff 0%, var(--ds-color-primary-500) 100%);--kumon-gradient-hanja:linear-gradient(180deg, #ffe96d 0%, #ffe052 100%);--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--ds-font-family-base);color:var(--kumon-color-text);background-color:var(--kumon-color-surface-soft);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--page-bg:var(--kumon-color-surface-soft);--panel-bg:#ffffffe0;--panel-solid:var(--kumon-color-surface);--panel-soft:var(--kumon-color-primary-soft);--line-soft:var(--kumon-color-border);--line-strong:var(--kumon-color-border-strong);--text-main:var(--kumon-color-text);--text-subtle:#5f6b7a;--text-soft:var(--kumon-color-muted);--brand-navy:var(--kumon-color-text);--brand-green:var(--ds-color-green-600);--brand-orange:#f8a039;--brand-red:var(--kumon-color-danger);--brand-sky:var(--ds-color-blue-100);--shadow-soft:var(--ds-shadow-500);--shadow-card:var(--ds-shadow-400);--radius-xl:var(--ds-radius-2xl);--radius-lg:var(--ds-radius-xl);--radius-md:18px;--radius-sm:var(--ds-radius-sm);font-weight:400;line-height:1.5}*{box-sizing:border-box}html,body,#root{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;width:100%;min-height:100%}html[data-kumon-study-fullscreen=true],html[data-kumon-study-fullscreen=true] body,html[data-kumon-study-fullscreen=true] #root{overscroll-behavior:none;background:#fff;width:100%;height:100%;min-height:100%;margin:0;overflow:hidden}body{background:radial-gradient(circle at 100% 0,#f9b55247,#0000 18%),radial-gradient(circle at 20% 12%,#74bde02e,#0000 22%),linear-gradient(#dff1fb 0%,#eff5dd 36%,#f7f1e4 62% 100%);min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button,input,textarea,select{font:inherit}button{appearance:none}a{color:inherit;text-decoration:none}code,pre{font-family:Cascadia Code,Consolas,monospace}.app-shell{width:min(1240px,100vw - 32px);margin:0 auto;padding:22px 0 52px}.app-shell.app-shell-immersive{background:#fff;width:100vw;max-width:none;height:100dvh;min-height:0;margin:0;padding:0;overflow:hidden}.app-frame,.shell-main,.stack,.page-stack,.schedule-section,.subject-grid,.dashboard-summary{gap:18px;display:grid}.app-frame{margin-top:18px}.app-frame-immersive{margin-top:0}.shell-main-immersive{gap:0}.app-shell.app-shell-immersive .app-frame-immersive,.app-shell.app-shell-immersive .shell-main-immersive{width:100%;height:100%;min-height:0;margin:0;padding:0;display:block;overflow:hidden}.panel{border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:var(--panel-bg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:24px;position:relative}.panel-banner,.panel-state{background:linear-gradient(#ffffffeb,#faf5ebf0)}.shell-topbar{background:radial-gradient(circle at 84% 22%,#f8a0392e,#0000 18%),radial-gradient(circle at 10% 10%,#ffffffe6,#0000 16%),linear-gradient(#e8f7fff0,#f6fcebeb);overflow:hidden}.shell-topbar:after{content:"";pointer-events:none;background:linear-gradient(#bcdeaa4d,#a4ce8994);border-radius:50%;height:170px;position:absolute;inset:auto -8% -90px}.shell-topbar-row,.shell-toolbar,.section-header,.pill-row,.nav-row,.banner-row,.banner-actions,.subject-footer,.subject-card-top,.subject-progress-head,.schedule-meta-line,.set-card-header{align-items:center;gap:12px;display:flex}.shell-topbar-row,.shell-toolbar,.banner-row,.subject-footer,.subject-progress-head,.set-card-header{justify-content:space-between}.shell-brand,.shell-topbar-meta{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.shell-brand-mark{min-width:92px;color:var(--brand-navy);letter-spacing:.24em;background:#203b5c14;border-radius:999px;justify-content:center;align-items:center;padding:10px 16px;font-size:.82rem;font-weight:800;display:inline-flex}.shell-brand-copy{gap:2px;display:grid}.shell-brand-copy strong{color:var(--text-main);font-size:1.08rem}.shell-brand-copy span{color:var(--text-subtle);font-size:.92rem}.user-badge,.pill,.section-chip,.auth-hero-badge,.auth-subject-pill{border-radius:999px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.user-badge{min-height:36px;color:var(--brand-navy);background:#203b5c14;padding:0 16px}.pill{min-height:34px;color:var(--brand-navy);background:#ffffffb8;border:1px solid #203b5c14;padding:0 12px;font-size:.9rem}.shell-toolbar{z-index:1;align-items:flex-end;margin-top:18px;position:relative}.shell-title,.panel h2,.set-card h3{color:var(--text-main);letter-spacing:-.04em;margin:0}.shell-title{margin-top:10px;font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.08}.section-copy,.muted-text,.helper-card p,.auth-hero p,.set-card p,.thumbnail-pages,.thumbnail-state,.empty-state p,.callout-box p,.feature-list,.error-text,.inline-meta dt,.status-card small{color:var(--text-subtle)}.section-copy{margin:10px 0 0}.nav-row{z-index:1;flex-wrap:wrap;justify-content:flex-end;position:relative}.nav-link,.nav-button,.primary-button,.secondary-button,.ghost-button,.pill-button,.thumbnail-button{border:1px solid #0000;transition:transform .14s,border-color .14s,background-color .14s,box-shadow .14s,color .14s}.nav-link,.nav-button,.secondary-button,.ghost-button,.pill-button{min-height:44px;color:var(--brand-navy);cursor:pointer;background:#203b5c0f;border-radius:999px;justify-content:center;align-items:center;padding:0 16px;font-weight:700;display:inline-flex}.nav-link:hover,.nav-button:hover,.secondary-button:hover,.ghost-button:hover,.pill-button:hover{background:#203b5c1a;transform:translateY(-1px)}.nav-link-active,.pill-button-active{background:var(--brand-navy);color:#fff}.primary-button{background:linear-gradient(135deg, var(--brand-orange), #ef8642);color:#fff;cursor:pointer;border-radius:16px;justify-content:center;align-items:center;min-height:50px;padding:0 22px;font-weight:800;display:inline-flex;box-shadow:0 14px 28px #ef86423d}.primary-button:hover,.thumbnail-button:hover{transform:translateY(-1px)}.primary-button-block{width:100%}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled,.thumbnail-button:disabled{cursor:wait;opacity:.64;transform:none}.section-header{margin-bottom:14px}.section-chip{color:#8a571e;letter-spacing:.06em;text-transform:uppercase;background:#f4ead3;min-height:30px;padding:0 11px;font-size:.76rem}.summary-row,.status-grid,.page-grid,.page-grid-auth,.set-hero-meta{gap:14px;display:grid}.summary-row{z-index:1;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px;position:relative}.summary-chip,.status-card,.dashboard-summary-card{background:#ffffffc7;border:1px solid #203b5c14;border-radius:18px;padding:16px}.summary-chip strong,.status-card strong,.dashboard-summary-card strong{color:var(--text-main);display:block}.summary-chip span,.dashboard-summary-card small{color:var(--text-soft);margin-top:8px;display:block}.page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-grid-auth{grid-template-columns:minmax(320px,.95fr) minmax(0,1.05fr)}.sign-in-shell{align-items:stretch}.auth-hero{background:radial-gradient(circle at 88% 12%,#f8a03947,#0000 16%),radial-gradient(circle at 12% 22%,#ffffffeb,#0000 14%),linear-gradient(#e0f3fcf5,#ebf6dbf0);gap:18px;min-height:520px;padding:30px;display:grid}.auth-hero-badge{min-height:32px;color:var(--brand-navy);background:#203b5c1a;justify-self:start;padding:0 14px;font-size:.8rem}.auth-hero h2{letter-spacing:-.04em;margin:0;font-size:clamp(2rem,3vw,2.8rem);line-height:1.14}.auth-subject-list{flex-wrap:wrap;gap:10px;display:flex}.auth-subject-pill{min-height:38px;padding:0 16px;font-size:.94rem}.auth-subject-pill-hanja{color:#4c771c;background:#7eb93f2e}.auth-subject-pill-chinese{color:#9a5909;background:#f8a0392e}.auth-subject-pill-japanese{color:#244f86;background:#5a8cc12e}.auth-hero-footer,.helper-card,.empty-state,.callout-box{background:#ffffffb8;border:1px solid #203b5c14;border-radius:20px;padding:18px}.auth-hero-footer strong,.helper-card strong,.empty-state strong,.callout-box strong{color:var(--text-main);display:block}.auth-hero-footer p,.helper-card p,.empty-state p,.callout-box p{margin:8px 0 0}.panel-form{align-self:stretch}.form-stack,.field,.control-group{gap:10px;display:grid}.form-stack{margin-top:18px}.field span,.control-label{color:var(--brand-navy);font-size:.94rem;font-weight:700}.field input,.field textarea{border:1px solid var(--line-strong);width:100%;color:var(--text-main);background:#ffffffeb;border-radius:16px;padding:14px 16px}.field input:focus,.field textarea:focus{border-color:#203b5c52;outline:none;box-shadow:0 0 0 4px #203b5c14}.checkbox-row{color:var(--text-subtle);align-items:center;gap:10px;display:flex}.checkbox-row input{width:18px;height:18px}.dashboard-scene,.set-hero{background:radial-gradient(circle at 82% 18%,#f8a0392e,#0000 16%),radial-gradient(circle at 14% 20%,#ffffffeb,#0000 14%),linear-gradient(#e2f4fdf2,#f6fbeaf0)}.subject-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.subject-grid-wide{gap:16px}.subject-card{min-height:280px;box-shadow:var(--shadow-card);background:linear-gradient(#fffffff5,#fbf6ecf5);border:1px solid #203b5c14;border-radius:24px;gap:16px;padding:22px;display:grid}.subject-card--hanja{background:radial-gradient(circle at 85% 14%,#7eb93f2e,#0000 16%),linear-gradient(#fffffffa,#f3fbe9f5)}.subject-card--chinese{background:radial-gradient(circle at 85% 14%,#f8a0392e,#0000 16%),linear-gradient(#fffffffa,#fff7e9f5)}.subject-card--japanese{background:radial-gradient(circle at 85% 14%,#5a8cc12e,#0000 16%),linear-gradient(#fffffffa,#eef6fff5)}.subject-emblem{min-width:82px;min-height:82px;color:var(--brand-navy);letter-spacing:.06em;background:#203b5c14;border-radius:24px;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.subject-meta{gap:5px;max-width:16ch;display:grid}.subject-meta strong{color:var(--text-main);font-size:1.32rem;line-height:1.18}.subject-meta span{color:var(--text-subtle);line-height:1.5}.subject-progress{gap:12px;display:grid}.progress-rail{background:#203b5c14;border-radius:999px;height:12px;overflow:hidden}.progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--brand-green), #9ed055);height:100%}.subject-progress-head strong{color:var(--text-main);font-size:1.1rem}.subject-footer{align-items:flex-end;margin-top:auto}.subject-footer small{color:var(--text-soft);max-width:26ch}.dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-summary-wide{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-layout{gap:14px}.helper-card-muted{background:#faf6eeeb}.set-hero-meta{grid-template-columns:repeat(3,minmax(0,1fr))}.set-hero-hanja{background:radial-gradient(circle at 82% 18%,#7eb93f2e,#0000 16%),radial-gradient(circle at 14% 20%,#ffffffeb,#0000 14%),linear-gradient(#e2f4fdf2,#f6fbeaf0)}.set-hero-chinese{background:radial-gradient(circle at 82% 18%,#f8a0392e,#0000 16%),radial-gradient(circle at 14% 20%,#ffffffeb,#0000 14%),linear-gradient(#e2f4fdf2,#fff8eef0)}.set-hero-japanese{background:radial-gradient(circle at 82% 18%,#5a8cc12e,#0000 16%),radial-gradient(circle at 14% 20%,#ffffffeb,#0000 14%),linear-gradient(#e2f4fdf2,#eff6fff0)}.set-layout{align-items:stretch}.set-card{box-shadow:var(--shadow-card);background:linear-gradient(#fffffffa,#fbf6ecf5);border:1px solid #203b5c14;border-radius:24px;gap:16px;padding:20px;display:grid}.set-card-review{background:linear-gradient(#fffffffa,#f5f4f1f5)}.set-card-step{min-height:28px;color:var(--brand-navy);background:#203b5c0f;border-radius:999px;align-items:center;padding:0 10px;font-size:.82rem;font-weight:700;display:inline-flex}.set-card h3{margin-top:10px;font-size:1.22rem}.set-card p{margin:6px 0 0}.set-card-progress{justify-items:end;gap:6px;display:grid}.set-card-progress strong{color:var(--text-main);font-size:1.4rem}.set-card-progress span,.schedule-meta-line span{color:var(--text-soft);font-size:.92rem}.schedule-meta-line{flex-wrap:wrap}.thumbnail-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.thumbnail-button{cursor:pointer;background:#f8fcfff5;border-color:#203b5c1a;border-radius:20px;justify-items:center;gap:5px;min-height:102px;padding:14px 10px;display:grid;box-shadow:inset 0 0 0 1px #fff6}.thumbnail-button-active{background:#ebf6dffa;border-color:#7eb93f42}.thumbnail-number{min-width:38px;min-height:38px;color:var(--text-main);background:#203b5c14;border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.thumbnail-pages{text-align:center;font-size:.82rem}.thumbnail-state{color:var(--brand-navy);font-size:.8rem;font-weight:700}.empty-state{background:linear-gradient(#fffffffa,#f9f6f0f5)}.inline-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.inline-meta div{background:#f7faffdb;border:1px solid #203b5c14;border-radius:18px;padding:14px 16px}.inline-meta dt{letter-spacing:.06em;text-transform:uppercase;font-size:.75rem}.inline-meta dd{color:var(--text-main);word-break:break-word;margin:8px 0 0;font-weight:700}.status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-list{margin:0;padding-left:18px}.feature-list li+li{margin-top:8px}.engine-frame{background:#fff;border:1px solid #203b5c1f;border-radius:22px;min-height:1200px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff7a}.engine-frame-iframe{background:#fff;border:none;width:100%;min-height:1200px;display:block}.study-immersive{isolation:isolate;background:#fff;width:100%;height:100dvh;min-height:0;position:fixed;inset:0;overflow:hidden}.study-error-banner{background:#fff4e4fa;border:1px solid #f35a4a1f;border-radius:16px;padding:12px 18px;box-shadow:0 16px 34px #203b5c29}.study-error-banner strong{color:#a54a2c;display:block}.study-error-banner p{color:var(--text-subtle);margin:6px 0 0}.study-error-banner-floating{z-index:5;width:min(680px,100vw - 32px);position:absolute;top:18px;left:50%;transform:translate(-50%)}.study-stage{background:#fff;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.study-stage-iframe{opacity:1;visibility:visible;background:#fff;border:0;width:100%;height:100%;transition:opacity .12s ease-out;display:block;position:absolute;inset:0}.study-stage-iframe-hidden{opacity:0;pointer-events:none;visibility:hidden}.study-viewer-loading{z-index:3;color:#203b5c;letter-spacing:-.02em;background:#fff;align-content:center;place-items:center;gap:16px;font-size:18px;font-weight:800;display:grid;position:absolute;inset:0}.study-viewer-loading-spinner{border:6px solid #406ca829;border-top-color:#4f6cff;border-radius:999px;width:54px;height:54px;animation:.8s linear infinite study-viewer-loading-spin}@keyframes study-viewer-loading-spin{to{transform:rotate(360deg)}}.callout-box-warning{background:#fff4e4fa;border-color:#f35a4a1f}.error-text{color:#b24c2a;margin:0;font-weight:700}.app-shell-surface{width:min(1280px,100vw - 32px);min-height:100dvh;padding:16px 0}.app-frame-standalone{min-height:100%;margin-top:0}.kumon-logo{width:auto;height:auto;display:block}.kumon-logo-auth{width:162px}.kumon-overline{color:#456e93;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:800}.kumon-auth-page,.kumon-subject-page,.kumon-sets-page,.kumon-set-section{gap:16px;display:grid}.kumon-sets-page{grid-auto-rows:max-content;align-content:start}.kumon-auth-page,.kumon-subject-page{min-height:100%}.kumon-auth-stage,.kumon-screen-header,.kumon-screen-header-actions,.kumon-set-card-head,.kumon-set-action-row,.kumon-progress-meta,.kumon-subject-card-copy{align-items:center;gap:12px;display:flex}.kumon-auth-stage{grid-template-columns:minmax(360px,430px) minmax(0,1fr);align-items:stretch;min-height:calc(100dvh - 32px);display:grid}.kumon-auth-card,.kumon-stage-card,.kumon-screen-header,.kumon-set-card{background:#ffffffeb;border:1px solid #203b5c1a;border-radius:30px;position:relative;overflow:hidden;box-shadow:0 24px 44px #1e34501f}.kumon-auth-card{z-index:1;background:linear-gradient(#fffffff5,#fffaf4eb);align-content:start;gap:18px;height:100%;padding:30px 28px;display:grid}.kumon-auth-copy{text-align:center;justify-items:center;gap:6px;width:100%;margin-top:100px;display:grid}.kumon-auth-copy h1,.kumon-stage-copy h1,.kumon-subject-card-button h2,.kumon-screen-header-copy h1,.kumon-month-bar-label{color:var(--text-main);letter-spacing:-.04em;margin:0}.kumon-auth-copy h1{font-size:36px;line-height:1.16}.kumon-auth-subtitle,.kumon-stage-copy p:last-child,.kumon-progress-copy,.kumon-screen-header-copy span,.kumon-progress-meta span,.kumon-thumbnail-status{color:var(--text-subtle);margin:0;line-height:1.6}.kumon-auth-subtitle{font-size:18px;line-height:1.4}.kumon-login-form{gap:12px;margin-top:2px;display:grid}.kumon-login-field{gap:6px;display:grid}.kumon-login-field span,.kumon-login-remember span{color:var(--brand-navy);font-size:.9rem;font-weight:700}.kumon-login-field input{width:100%;min-height:52px;color:var(--text-main);background:#f5faffeb;border:1px solid #203b5c24;border-radius:16px;padding:0 18px}.kumon-login-field input:focus{border-color:#1f4f8f57;outline:none;box-shadow:0 0 0 4px #4984c61f}.kumon-login-remember{justify-self:start;align-items:center;gap:10px;margin-top:2px;display:inline-flex}.kumon-login-remember input{width:18px;height:18px}.kumon-login-button,.kumon-primary-cta{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4b8fd3,#2d6bb1);border:0;border-radius:999px;justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:0 16px 0 24px;font-weight:800;display:inline-flex;box-shadow:0 18px 32px #306db133}.kumon-login-button:disabled,.kumon-primary-cta:disabled,.kumon-utility-pill:disabled,.kumon-tab-button:disabled,.kumon-subject-card-button:disabled,.kumon-thumbnail-button:disabled{cursor:wait;opacity:.64}.kumon-login-button-arrow{background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.88rem;display:inline-flex}.kumon-auth-visual,.kumon-stage-card{background:radial-gradient(circle at 84% 18%,#fdcc768c,#0000 14%),radial-gradient(circle at 14% 14%,#ffffffe0,#0000 12%),linear-gradient(#d9f1ff 0%,#e9f7ff 36%,#f1f7de 72%,#edf4d8 100%);min-height:0;position:relative;overflow:hidden}.kumon-auth-visual{background:#eaf7fb;border:1px solid #ffffff6b;border-radius:34px;height:100%;display:grid;box-shadow:0 24px 44px #1e34501a}.kumon-auth-hero-image{object-fit:cover;object-position:center;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;min-height:0}.kumon-stage-card{gap:16px;min-height:calc(100dvh - 32px);padding:24px 28px;display:grid}.kumon-stage-card-hanja{background:radial-gradient(circle at 84% 18%,#b1d66e6b,#0000 14%),radial-gradient(circle at 14% 14%,#ffffffe0,#0000 12%),linear-gradient(#d9f1ff 0%,#e8f6ff 36%,#f1f9de 72%,#edf6d5 100%)}.kumon-stage-card-chinese,.kumon-screen-header-chinese{background:radial-gradient(circle at 84% 18%,#ffcd7a7a,#0000 14%),radial-gradient(circle at 14% 14%,#ffffffe0,#0000 12%),linear-gradient(#d9f1ff 0%,#eef9ff 38%,#fff4df 76%,#fff0d7 100%)}.kumon-stage-card-japanese,.kumon-screen-header-japanese{background:radial-gradient(circle at 84% 18%,#90bae275,#0000 14%),radial-gradient(circle at 14% 14%,#ffffffe0,#0000 12%),linear-gradient(#d9f1ff 0%,#ecf8ff 38%,#edf4ff 76%,#e7f1ff 100%)}.kumon-screen-header-hanja{background:radial-gradient(circle at 84% 18%,#b1d66e66,#0000 14%),radial-gradient(circle at 14% 14%,#ffffffe0,#0000 12%),linear-gradient(#d9f1ff 0%,#eef9ff 38%,#eef8df 76%,#e8f4d0 100%)}.kumon-cloud,.kumon-ground,.kumon-hill,.kumon-balloon{position:absolute}.kumon-cloud{background:#ffffffe0;border-radius:999px;box-shadow:42px -10px 0 8px #ffffffe6,86px 0 0 2px #ffffffd1}.kumon-cloud-a{width:90px;height:24px;top:72px;left:72px}.kumon-cloud-b{width:104px;height:28px;top:124px;right:138px}.kumon-cloud-c{width:72px;height:20px;top:196px;left:48%}.kumon-ground{background:linear-gradient(#c4e3a36b,#93c45cc7);border-radius:50% 50% 0 0;height:128px;bottom:-32px;left:-4%;right:-4%}.kumon-hill-back{background:#a0cd7775;border-radius:50%;width:48%;height:118px;bottom:58px;right:-6%}.kumon-hill-front{background:#7ab35080;border-radius:50%;width:58%;height:104px;bottom:40px;left:-2%}.kumon-balloon{width:118px;height:160px;top:118px;right:18%}.kumon-balloon-large{top:82px;right:12%;transform:scale(.94)}.kumon-balloon-envelope{background:linear-gradient(#fff,#fef2d7);border:3px solid #e8ad4db8;border-radius:50% 50% 44% 44%;width:118px;height:132px}.kumon-balloon-envelope:before,.kumon-balloon-envelope:after{content:"";background:#b98b45cc;width:2px;height:42px;position:absolute;top:92px}.kumon-balloon-envelope:before{left:36px}.kumon-balloon-envelope:after{right:36px}.kumon-balloon-basket{background:#c98f4a;border-radius:0 0 8px 8px;width:30px;height:18px;position:absolute;bottom:8px;left:50%;transform:translate(-50%);box-shadow:inset 0 -5px #754c2029}.kumon-tool-button,.kumon-utility-pill,.kumon-date-pill,.kumon-tab-button,.kumon-user-chip,.kumon-icon-button,.kumon-month-bar-label{border-radius:999px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.kumon-progress-meta,.kumon-screen-header,.kumon-screen-header-actions,.kumon-set-card-head{justify-content:space-between}.kumon-stage-copy,.kumon-screen-header-copy,.kumon-set-card-copy,.kumon-month-bar{gap:4px;display:grid}.kumon-tool-button,.kumon-utility-pill,.kumon-date-pill{min-height:44px;color:var(--brand-navy);cursor:pointer;background:#ffffffd1;border:1px solid #203b5c14;padding:0 18px}.kumon-tool-button-primary,.kumon-utility-pill-accent{color:#fff;background:linear-gradient(135deg,#1b8b84,#0f6e70);border-color:#0000;box-shadow:0 14px 24px #106e702e}.kumon-stage-copy{width:min(380px,100%)}.kumon-stage-copy h1{white-space:keep-all;word-break:keep-all;font-size:clamp(1.9rem,2.5vw,2.6rem);line-height:1.08}.kumon-stage-illustration{flex:1;min-height:240px;position:relative}.kumon-stage-fixed-tools{z-index:2;align-items:center;gap:10px;display:flex;position:absolute;top:22px;right:24px}.kumon-user-chip{min-height:42px;color:var(--brand-navy);background:#ffffffe0;border:1px solid #203b5c14;padding:0 16px}.kumon-icon-button{width:42px;height:42px;color:var(--brand-navy);cursor:pointer;background:#ffffffe0;border:1px solid #203b5c14}.kumon-stage-hero-compact{grid-template-columns:minmax(0,360px) minmax(0,1fr);align-items:center;gap:10px;margin-top:42px;display:grid}.kumon-stage-hero-image{width:100%;height:100%;min-height:inherit;object-fit:cover;object-position:center;-webkit-user-select:none;user-select:none;pointer-events:none;border-radius:32px;box-shadow:0 22px 38px #1e345024}.kumon-tab-strip{border-bottom:1px solid #203b5c14;align-items:end;gap:0;display:flex}.kumon-tab-button{color:#5b7286;cursor:pointer;background:#ffffffc2;border:0;border-bottom:3px solid #0000;border-radius:18px 18px 0 0;min-height:58px;padding:0 28px;font-size:30px}.kumon-tab-button-active{color:var(--text-main);background:#fff;border-bottom-color:#4b8fd3;box-shadow:0 12px 22px #3168a314}.kumon-subject-card-button{width:100%;color:inherit;text-align:left;cursor:pointer;background:#fffffff0;border:0;border-radius:28px;grid-template-rows:minmax(0,1fr) auto;gap:14px;margin-top:2px;padding:24px 26px;display:grid;box-shadow:0 18px 30px #1e345014}.kumon-subject-card-button-japanese{background:linear-gradient(#fffffffa,#eff6fffa)}.kumon-subject-card-copy{justify-content:stretch;align-items:stretch;width:100%}.kumon-subject-card-copy>div{grid-template-rows:minmax(0,1fr) auto;width:100%;min-height:220px;display:grid}.kumon-progress-track{background:#cddceab8;border-radius:999px;width:100%;height:16px;margin-bottom:50px;overflow:hidden}.kumon-subject-card-button h2{align-self:center;font-size:45px;line-height:1.08}.kumon-subject-progress-row{justify-content:space-between;align-items:flex-end;gap:14px;width:100%;margin:10px 0 0;display:flex}.kumon-subject-progress-row span{color:var(--text-subtle);font-size:.96rem;font-weight:700}.kumon-subject-progress-row strong{color:var(--text-main);letter-spacing:-.05em;text-align:right;margin-left:auto;font-size:clamp(2rem,2.8vw,2.7rem);line-height:1}.kumon-progress-fill{border-radius:inherit;background:linear-gradient(90deg,#52c7d2,#7eb93f);height:100%}.kumon-screen-header{z-index:5;flex-wrap:nowrap;min-height:92px;padding:16px 18px;overflow:visible}.kumon-back-pill{width:52px;height:52px;color:var(--brand-navy);cursor:pointer;background:#ffffffe6;border:1px solid #203b5c1f;border-radius:18px;justify-content:center;align-items:center;font-size:1.4rem;display:inline-flex}.kumon-screen-header-copy{min-width:0;margin-right:auto}.kumon-screen-header-copy h1{font-size:clamp(1.3rem,2vw,1.95rem)}.kumon-month-bar{background:linear-gradient(#dff1fbe6,#fffffff0);border:1px solid #203b5c14;border-radius:22px;align-items:center;min-height:60px;padding:0 20px}.kumon-month-bar-label{min-height:42px;color:var(--text-main);background:#ffffffe6;padding:0 18px}.kumon-set-section{gap:18px}.kumon-set-card{background:linear-gradient(#fffffffa,#fffaf4f0);border-radius:30px;gap:16px;padding:22px 20px}.kumon-set-badge{min-height:38px;color:var(--brand-navy);background:#203b5c14;border-radius:14px;justify-content:center;align-items:center;padding:0 16px;font-weight:800;display:inline-flex}.kumon-set-card-copy h3{margin-top:2px;font-size:1.14rem}.kumon-set-action-row{flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.kumon-thumbnail-grid{grid-template-columns:repeat(5,minmax(0,1fr));place-items:start center;gap:18px 10px;display:grid}.kumon-thumbnail-button{cursor:pointer;background:0 0;border:0;align-content:start;justify-items:center;gap:8px;width:min(100%,126px);min-width:0;padding:0;display:grid}.kumon-thumbnail-sheet{aspect-ratio:208/324;background:linear-gradient(#fffffffa,#f4f6f9f5);border:1px solid #203b5c1a;border-radius:20px;justify-content:center;align-items:flex-end;width:100%;min-height:0;padding:16px 12px;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 28px #1e34501a}.kumon-thumbnail-sheet-image:after{content:"";background:linear-gradient(#0000,#ffffffeb);height:36%;position:absolute;inset:auto 0 0}.kumon-thumbnail-sheet-active{border-color:#1f8b8447;box-shadow:0 16px 30px #106e7024}.kumon-thumbnail-index{z-index:1;min-width:34px;min-height:34px;color:var(--text-main);background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;padding:0 10px;font-size:.88rem;font-weight:800;display:inline-flex;position:absolute;top:10px;left:10px;box-shadow:0 8px 16px #203b5c14}.kumon-thumbnail-fallback{z-index:1;color:var(--brand-navy);text-align:center;font-size:.94rem;font-weight:800;position:relative}.kumon-thumbnail-caption,.kumon-thumbnail-status{width:100%;color:var(--text-main);text-align:center;font-size:.82rem;font-weight:700;display:block}.kumon-thumbnail-caption{margin-top:4px;line-height:1.3}.kumon-thumbnail-status{font-size:.76rem}.kumon-screen-header-copy-subject{min-width:0}.kumon-subject-switcher{z-index:6;position:relative}.kumon-subject-switcher-button{min-height:58px;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;padding:0 4px 0 0;display:inline-flex}.kumon-subject-title-lockup{align-items:center;gap:12px;display:inline-flex}.kumon-subject-title-chevron{width:54px;height:54px;color:var(--brand-navy);background:#203b5c14;border-radius:50%;justify-content:center;align-items:center;font-size:1.08rem;transition:background-color .14s,transform .14s;display:inline-flex}.kumon-subject-switcher-button[aria-expanded=true] .kumon-subject-title-chevron{transform:rotate(180deg)}.kumon-subject-switcher-menu{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform-origin:0 0;background:#fffffff5;border:1px solid #203b5c1f;border-radius:22px;justify-items:stretch;gap:8px;min-width:220px;padding:12px;display:grid;position:absolute;top:calc(100% + 12px);left:0;right:auto;box-shadow:0 22px 34px #1e345029}.kumon-subject-switcher-item{width:100%;min-height:50px;color:var(--text-main);text-align:center;cursor:pointer;background:#f4f8ffeb;border:0;border-radius:16px;justify-content:center;align-items:center;padding:0 16px;font-size:1rem;font-weight:800;transition:background-color .14s,transform .14s;display:inline-flex}.kumon-subject-switcher-item:hover{background:#e3edfff5;transform:translateY(-1px)}.kumon-week-tab-strip{background:#ffffffe6;border:1px solid #203b5c14;border-radius:24px;grid-template-columns:repeat(4,minmax(0,1fr));align-self:start;display:grid;overflow:hidden}.kumon-week-tab-button{color:#2d3f5975;cursor:pointer;background:0 0;border:0;border-right:1px solid #203b5c14;min-height:74px;font-size:clamp(1.18rem,1.6vw,1.85rem);font-weight:800;position:relative}.kumon-week-tab-button:last-child{border-right:0}.kumon-week-tab-button-active:after{content:"";background:linear-gradient(90deg,#8c77ff,#6d4cf5);border-radius:999px;height:4px;position:absolute;bottom:0;left:14%;right:14%}.kumon-weekly-summary-card{background:linear-gradient(#f5f2fffa,#fffffff5);border:1px solid #203b5c14;border-radius:34px;align-self:start;overflow:hidden;box-shadow:0 20px 34px #4858841a}.kumon-weekly-summary-head{color:#544012;letter-spacing:-.04em;background:linear-gradient(#ffe88f,#fcd669);padding:22px 30px;font-size:clamp(1.55rem,2vw,2.1rem);font-weight:900}.kumon-weekly-summary-body{grid-template-columns:minmax(0,1fr) max-content;justify-content:space-between;align-items:center;gap:18px;min-height:148px;padding:24px 30px 28px;display:grid}.kumon-weekly-summary-copy{align-items:center;gap:18px;display:flex}.kumon-weekly-summary-icon{background:#ffffffe0;border-radius:24px;justify-content:center;align-items:center;width:72px;height:72px;font-size:2rem;display:inline-flex;box-shadow:inset 0 0 0 1px #203b5c14}.kumon-weekly-summary-copy div,.kumon-weekly-summary-metrics{gap:6px;display:grid}.kumon-weekly-summary-copy strong,.kumon-weekly-summary-metrics strong{color:var(--text-main);letter-spacing:-.04em;margin:0;font-size:clamp(1.35rem,1.9vw,2rem);font-weight:900}.kumon-weekly-summary-copy span,.kumon-weekly-summary-metrics span{color:var(--text-subtle);font-size:1rem;font-weight:700}.kumon-weekly-summary-metrics{text-align:right;justify-items:end;min-width:fit-content}.kumon-weekly-summary-metrics strong,.kumon-weekly-summary-metrics span{white-space:nowrap}.kumon-weekly-summary-metrics em{color:#ff5b4f;font-style:normal}.kumon-weekly-mode-toggle{background:#dcd6ffc7;border-radius:999px;grid-template-columns:repeat(2,minmax(0,1fr));align-self:start;width:min(100%,620px);margin:0 auto;padding:10px;display:grid;box-shadow:inset 0 0 0 1px #7d67ff14}.kumon-weekly-mode-button{color:#4a477db8;cursor:pointer;background:0 0;border:0;border-radius:999px;min-height:74px;font-size:clamp(1.2rem,1.8vw,1.85rem);font-weight:900}.kumon-weekly-mode-button-active{color:#fff;background:linear-gradient(135deg,#8a6dff,#694cf5);box-shadow:0 16px 28px #6d4cf53d}.kumon-weekly-set-stack,.kumon-weekly-set-group{align-content:start;align-items:start;gap:18px;display:grid}.kumon-weekly-set-group-title{color:var(--text-main);letter-spacing:-.05em;margin:0 4px;font-size:clamp(1.5rem,2vw,2.2rem);font-weight:900}.kumon-weekly-set-section{background:linear-gradient(#fffffffa,#f7f7fff5);border:1px solid #203b5c14;border-radius:30px;align-content:start;gap:18px;padding:24px 20px;display:grid;box-shadow:0 18px 34px #48588414}.kumon-weekly-set-header{flex-wrap:nowrap;justify-content:space-between;align-items:end;gap:18px;display:flex}.kumon-weekly-set-copy{align-items:flex-start;gap:14px;min-width:0;display:flex}.kumon-weekly-set-header-side,.kumon-weekly-set-actions{justify-content:flex-end;align-items:center;gap:14px;display:flex}.kumon-weekly-set-header-side{flex:none;min-width:fit-content}.kumon-weekly-set-pill{color:#fff;background:linear-gradient(135deg,#9c84ff,#7356ff);border-radius:14px;justify-content:center;align-items:center;min-height:40px;padding:0 18px;font-size:1.05rem;font-weight:900;display:inline-flex;box-shadow:0 12px 20px #6d4cf533}.kumon-weekly-set-copy h2{color:var(--text-main);letter-spacing:-.05em;margin:0;font-size:clamp(1.35rem,1.8vw,2rem);font-weight:900}.kumon-weekly-set-copy p{color:var(--text-subtle);margin:6px 0 0;font-size:.98rem;font-weight:700}.kumon-weekly-set-meta{text-align:right;white-space:nowrap;justify-items:end;gap:6px;display:grid}.kumon-weekly-set-meta strong{color:var(--text-main);font-size:1.02rem;font-weight:900}.kumon-weekly-set-meta span{color:var(--text-subtle);font-size:.88rem;font-weight:700}.kumon-weekly-set-action-button{min-width:146px}.kumon-weekly-set-section .kumon-thumbnail-button{width:min(100%,214px)}.kumon-thumbnail-sheet-result:before{content:"";background:linear-gradient(#3b2a9c05,#3b2a9c29);position:absolute;inset:0}.kumon-thumbnail-stamp{z-index:1;color:#fff;letter-spacing:.02em;text-align:center;background:#6d4cf5e0;border-radius:999px;justify-content:center;align-items:center;min-height:32px;padding:0 10px;font-size:.75rem;font-weight:900;display:inline-flex;position:absolute;bottom:12px;left:10px;right:10px}.kumon-weekly-empty-note{text-align:center;background:#ffffffbd;border:1px dashed #6d4cf53d;border-radius:26px;align-content:center;justify-items:center;min-height:140px;padding:28px 24px;display:grid}@media (width<=1180px){.page-grid,.page-grid-auth,.subject-grid,.dashboard-summary-wide,.summary-row,.set-hero-meta{grid-template-columns:1fr}.dashboard-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.kumon-set-card-head{grid-template-columns:1fr;display:grid}.kumon-auth-stage{grid-template-columns:minmax(340px,420px) minmax(240px,1fr)}.kumon-stage-hero-compact{grid-template-columns:minmax(0,320px) minmax(0,1fr)}.kumon-thumbnail-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width<=980px){.kumon-auth-stage{grid-template-columns:minmax(320px,400px) minmax(220px,1fr);min-height:calc(100dvh - 28px)}.kumon-auth-card{height:100%}.kumon-auth-visual{min-height:0}.kumon-auth-hero-image{object-position:72% center}.kumon-stage-card{min-height:auto}.kumon-stage-hero-compact{grid-template-columns:1fr}.kumon-stage-illustration-compact{min-height:240px}.kumon-weekly-set-section .kumon-thumbnail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=700px){.kumon-auth-stage{grid-template-columns:1fr;min-height:0}.kumon-auth-card{height:auto}.kumon-auth-visual{min-height:360px}}@media (width<=860px){.app-shell{width:min(100vw - 18px,1240px);padding:14px 0 34px}.panel{border-radius:22px;padding:20px}.shell-topbar-row,.shell-toolbar,.banner-row,.banner-actions,.subject-footer,.set-card-header{flex-direction:column;align-items:flex-start}.nav-row{justify-content:flex-start}.inline-meta,.dashboard-summary,.status-grid{grid-template-columns:1fr}.study-error-banner-floating{width:min(100vw - 20px,680px);top:12px}.app-shell-surface{width:min(100vw - 18px,1280px);padding:10px 0 20px}.kumon-screen-header{min-height:84px}.kumon-screen-header-copy h1{font-size:1.25rem}.kumon-set-card-head{flex-direction:column;align-items:flex-start}.kumon-subject-card-copy{align-items:stretch}.kumon-stage-fixed-tools{justify-content:flex-end;margin-top:2px;position:static}.kumon-logo-main{width:118px}.kumon-stage-card,.kumon-screen-header,.kumon-set-card{border-radius:24px}.kumon-week-tab-button{min-height:64px;font-size:1.12rem}.kumon-weekly-summary-head{padding:20px 22px;font-size:1.4rem}.kumon-weekly-summary-body{padding:20px 22px 24px}.kumon-weekly-mode-button{min-height:62px;font-size:1.1rem}.kumon-weekly-set-section{padding:22px 18px}.kumon-weekly-set-section .kumon-thumbnail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=640px){.kumon-auth-card,.kumon-stage-card,.kumon-screen-header,.kumon-set-card{padding:20px 16px}.kumon-auth-copy h1{font-size:32px}.kumon-login-button{width:100%}.kumon-screen-header{flex-wrap:wrap;gap:10px}.kumon-week-tab-strip{border-radius:20px}.kumon-week-tab-button{min-height:58px;font-size:.98rem}.kumon-weekly-summary-copy{grid-template-columns:1fr}.kumon-weekly-summary-copy,.kumon-weekly-summary-metrics{text-align:left;justify-items:start}.kumon-weekly-summary-head,.kumon-weekly-summary-body,.kumon-weekly-set-section{padding-left:16px;padding-right:16px}.kumon-weekly-mode-toggle{width:100%}.kumon-weekly-mode-button{min-height:56px;font-size:1rem}.kumon-weekly-summary-body,.kumon-weekly-set-header{grid-template-columns:1fr;align-items:start}.kumon-weekly-summary-body{display:grid}.kumon-weekly-summary-metrics{text-align:left;justify-items:start}.kumon-weekly-set-header,.kumon-weekly-set-copy,.kumon-weekly-set-header-side{flex-direction:column;align-items:flex-start}.kumon-weekly-set-header-side,.kumon-weekly-set-actions,.kumon-weekly-set-meta{text-align:left;justify-content:flex-start;justify-items:start}.kumon-weekly-set-meta{white-space:normal}.kumon-weekly-set-section .kumon-thumbnail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.kumon-stage-card{background:linear-gradient(#b6ecfb 0%,#d9f7ff 39%,#fff 43% 100%);padding:30px 64px 58px}.kumon-stage-hero-compact{background:radial-gradient(circle at 78% 22%,#fff5b7c2 0 7%,#0000 8%),linear-gradient(#abeafaf5 0%,#d5f9fff0 58%,#cae7a3eb 59%,#85c95edb 100%);border-radius:42px;min-height:500px;margin-top:54px;padding:36px 42px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff6b}.kumon-stage-hero-compact:before,.kumon-stage-hero-compact:after{content:"";pointer-events:none;background:#65b15252;border-radius:50%;width:66%;height:36%;position:absolute;bottom:-14%;right:-12%}.kumon-stage-hero-compact:after{background:#8dcd656b;width:58%;height:30%;bottom:-18%;right:32%}.kumon-stage-copy{z-index:2;position:relative}.kumon-stage-illustration-compact{z-index:1;min-height:430px;display:grid;position:relative}.kumon-cloud{will-change:transform;animation:18s linear infinite kumon-cloud-drift}.kumon-cloud-b{animation-duration:24s;animation-delay:-8s}.kumon-cloud-c{animation-duration:20s;animation-delay:-14s}.kumon-balloon-large{animation:5.5s ease-in-out infinite kumon-balloon-float}@keyframes kumon-cloud-drift{0%{transform:translate(-24px)}50%{transform:translate(38px)}to{transform:translate(-24px)}}@keyframes kumon-balloon-float{0%,to{transform:translateY(0)scale(.94)}50%{transform:translateY(-16px)scale(.94)}}.kumon-tab-strip{display:none}.kumon-subject-card-deck{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:24px;display:grid}.kumon-subject-card-button{grid-template-rows:auto auto;align-content:start;min-height:220px;padding:34px 34px 28px;transition:min-height .18s,transform .16s,box-shadow .16s;display:grid;position:relative}.kumon-subject-card-button-expanded{min-height:350px}.kumon-subject-card-button:hover{transform:translateY(-2px)}.kumon-subject-card-title-button,.kumon-subject-card-expand-button{color:inherit;cursor:pointer;background:0 0;border:0}.kumon-subject-card-title-button{text-align:left;justify-content:flex-start;align-items:flex-start;width:100%;min-height:112px;padding:0;display:flex}.kumon-subject-card-title-button h2{color:inherit;letter-spacing:-.06em;margin:0;font-size:clamp(2.1rem,3.8vw,3.4rem);font-weight:900;line-height:1.05}.kumon-subject-card-expand-button{background:#2031451f;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.7rem;transition:background-color .14s,transform .14s;display:inline-flex;position:absolute;bottom:22px;right:28px}.kumon-subject-card-expand-button[aria-expanded=true]{transform:rotate(180deg)}.kumon-subject-card-details{gap:14px;padding:8px 0 58px;display:grid}.kumon-subject-card-details .kumon-subject-progress-row{margin:0}.kumon-subject-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.kumon-subject-detail-grid div{background:#ffffff3d;border-radius:18px;gap:4px;min-height:72px;padding:14px 16px;display:grid}.kumon-subject-detail-grid dt{color:currentColor;opacity:.78;font-size:.95rem;font-weight:700}.kumon-subject-detail-grid dd{color:currentColor;margin:0;font-size:1.28rem;font-weight:900}.kumon-subject-card-button-hanja{color:#203145;background:linear-gradient(#ffe86a,#ffdc44)}.kumon-subject-card-button-chinese{color:#fff;background:linear-gradient(#91c927,#62aa17);box-shadow:0 22px 38px #589e1738}.kumon-subject-card-button-japanese{color:#fff;background:linear-gradient(#8d72ff,#7052eb)}.kumon-subject-card-button .kumon-progress-track{margin:0}.kumon-subject-card-button-hanja .kumon-progress-fill{background:linear-gradient(90deg,#50c7cd,#73b93f)}.kumon-sets-page .kumon-week-tab-button-active:after{height:4px}.kumon-sets-page .kumon-weekly-set-stack{gap:28px}.kumon-sets-page .kumon-weekly-set-section{gap:22px;padding-top:24px}.kumon-sets-page .kumon-weekly-set-pill{min-height:44px;font-size:1.08rem}.kumon-sets-page .kumon-weekly-set-copy p,.kumon-sets-page .kumon-weekly-set-meta span{font-size:.9rem}.kumon-sets-page .kumon-weekly-set-meta strong{font-size:1.02rem}@media (width<=860px){.kumon-stage-card{padding:22px 24px 42px}.kumon-stage-hero-compact{min-height:420px;padding:26px}.kumon-subject-card-deck{grid-template-columns:1fr;gap:16px}.kumon-subject-card-button{min-height:168px}.kumon-subject-card-button-expanded{min-height:300px}}.kumon-subject-page .kumon-stage-card{background:linear-gradient(#b6ecfb 0%,#d9f7ff 39%,#fff 43% 100%);padding:30px 64px 58px}.kumon-subject-page .kumon-logo-main{width:132px}.kumon-subject-page .kumon-stage-hero-compact{background:radial-gradient(circle at 78% 22%,#fff5b7c2 0 7%,#0000 8%),linear-gradient(#abeafaf5 0%,#d5f9fff0 58%,#cae7a3eb 59%,#85c95edb 100%);border-radius:42px;min-height:500px;margin-top:54px;padding:36px 42px;position:relative;overflow:hidden}.kumon-subject-page .kumon-stage-illustration-compact{min-height:430px;display:grid}.kumon-subject-page .kumon-tab-strip{display:none}.kumon-subject-page .kumon-subject-card-deck{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:24px;display:grid}.kumon-subject-page .kumon-subject-card-button{border-radius:34px;min-height:220px;padding:34px 34px 28px;box-shadow:0 22px 38px #5b4bc424}.kumon-subject-page .kumon-subject-card-button-expanded{min-height:350px}.kumon-subject-page .kumon-subject-card-title-button{min-height:112px}.kumon-subject-page .kumon-subject-card-title-button h2,.kumon-subject-page .kumon-subject-card-button h2{color:inherit;white-space:keep-all;word-break:keep-all;font-size:clamp(2rem,3.2vw,3rem);line-height:1.08}.kumon-subject-page .kumon-subject-card-button-hanja{color:#203145;background:linear-gradient(#ffe86a,#ffdc44)}.kumon-subject-page .kumon-subject-card-button-chinese{color:#fff;background:linear-gradient(#91c927,#62aa17);box-shadow:0 22px 38px #589e1738}.kumon-subject-page .kumon-subject-card-button-japanese{color:#fff;background:linear-gradient(#8d72ff,#7052eb)}.kumon-subject-page .kumon-subject-card-expand-button{bottom:22px;right:28px}.kumon-subject-page .kumon-subject-card-details{padding-bottom:58px}.kumon-subject-page .kumon-subject-progress-row span,.kumon-subject-page .kumon-subject-progress-row strong{color:currentColor}.kumon-sets-page .kumon-screen-header{min-height:92px;padding:0 30px}.kumon-sets-page .kumon-back-pill,.kumon-sets-page .kumon-icon-button{width:52px;height:52px;font-size:1.45rem}.kumon-sets-page .kumon-screen-header-copy h1{font-size:clamp(1.9rem,2.8vw,2.45rem)}.kumon-sets-page .kumon-subject-title-chevron{width:46px;height:46px;font-size:.95rem}.kumon-sets-page .kumon-week-tab-strip,.kumon-sets-page .kumon-week-tab-button{min-height:82px}.kumon-sets-page .kumon-week-tab-button{font-size:clamp(1.42rem,2vw,1.9rem)}.kumon-sets-page .kumon-weekly-summary-card{margin-top:24px}.kumon-sets-page .kumon-weekly-summary-head{min-height:78px;font-size:clamp(1.55rem,2.3vw,1.9rem)}.kumon-sets-page .kumon-weekly-summary-body{min-height:112px;padding-top:20px;padding-bottom:22px}.kumon-sets-page .kumon-weekly-summary-icon{width:64px;height:64px}.kumon-sets-page .kumon-weekly-summary-icon:before{font-size:2.35rem}.kumon-sets-page .kumon-weekly-summary-copy strong,.kumon-sets-page .kumon-weekly-summary-metrics strong{font-size:clamp(1.35rem,2vw,1.65rem)}.kumon-sets-page .kumon-weekly-summary-copy span,.kumon-sets-page .kumon-weekly-summary-metrics span{font-size:.92rem}.kumon-sets-page .kumon-weekly-mode-toggle{width:min(520px,100% - 72px);margin:34px auto 22px}.kumon-sets-page .kumon-weekly-mode-button{min-height:62px;font-size:clamp(1.2rem,1.7vw,1.45rem)}.kumon-sets-page .kumon-weekly-set-section{padding-top:24px}.kumon-sets-page .kumon-weekly-set-copy h2{font-size:clamp(1.45rem,2.1vw,1.85rem)}.kumon-sets-page .kumon-thumbnail-caption{font-size:clamp(1.05rem,1.5vw,1.35rem)}@media (width<=860px){.kumon-subject-page .kumon-stage-card{padding:22px 24px 42px}.kumon-subject-page .kumon-stage-hero-compact{min-height:420px;padding:26px}.kumon-subject-page .kumon-subject-card-deck{grid-template-columns:1fr}.kumon-subject-page .kumon-subject-card-button{min-height:168px}.kumon-subject-page .kumon-subject-card-button-expanded{min-height:300px}}.app-shell-surface{width:min(1200px,100%);padding:0}.shell-main-standalone{gap:0;min-height:100dvh}.kumon-sets-page{background:#f0effb;gap:0;min-height:100dvh}.kumon-screen-header{min-height:130px;box-shadow:none;background:#fff;border:0;border-bottom:1px solid #2031451a;border-radius:0;padding:0 36px}.kumon-screen-header-hanja,.kumon-screen-header-chinese,.kumon-screen-header-japanese{background:#fff}.kumon-back-pill,.kumon-icon-button{box-shadow:none;color:#203145;background:0 0;border:0}.kumon-back-pill{width:68px;height:68px;font-size:2.2rem}.kumon-icon-button{width:68px;height:68px;font-size:2.1rem}.kumon-screen-header-copy h1{letter-spacing:-.06em;font-size:clamp(2.7rem,4.2vw,3.55rem);font-weight:900}.kumon-subject-title-lockup{gap:18px}.kumon-subject-title-chevron{color:#fff;background:#203145;width:58px;height:58px;font-size:1.18rem}.kumon-subject-switcher-button:hover .kumon-subject-title-chevron,.kumon-subject-switcher-button[aria-expanded=true] .kumon-subject-title-chevron{background:#1c2f46}.kumon-subject-switcher-menu{border-radius:26px;min-width:260px;top:calc(100% + 16px);box-shadow:0 24px 48px #2031452e}.kumon-subject-switcher-item{min-height:62px;font-size:1.24rem}.kumon-week-tab-strip{min-height:118px;box-shadow:none;background:#fff;border:0;border-bottom:1px solid #20314514;border-radius:0}.kumon-week-tab-button{color:#2031455c;border-right:1px solid #2031451f;min-height:118px;font-size:clamp(2.1rem,3.4vw,2.72rem);font-weight:900}.kumon-week-tab-button-active{color:#7b61ff}.kumon-week-tab-button-active:after{background:#8a6dff;border-radius:0;height:5px;left:0;right:0}.kumon-weekly-summary-card{box-shadow:none;background:#fff;border:0;border-radius:36px;margin:36px 36px 0}.kumon-weekly-summary-head{color:#4a3710;background:#ffe16d;align-items:center;min-height:104px;padding:0 46px;font-size:clamp(2rem,3.1vw,2.55rem);font-weight:900;display:flex}.kumon-weekly-summary-body{background:#fff;grid-template-columns:minmax(0,1fr) max-content;gap:28px;min-height:134px;padding:24px 50px 28px}.kumon-weekly-summary-copy{gap:34px}.kumon-weekly-summary-icon{width:86px;height:86px;box-shadow:none;background:#fff;border-radius:22px;font-size:0;line-height:1}.kumon-weekly-summary-icon:before{content:"📅";font-size:3.5rem}.kumon-weekly-summary-copy strong,.kumon-weekly-summary-metrics strong{font-size:clamp(1.95rem,2.7vw,2.45rem)}.kumon-weekly-summary-copy span,.kumon-weekly-summary-metrics span{font-size:clamp(1.05rem,1.4vw,1.28rem);font-weight:800}.kumon-weekly-summary-metrics{align-self:center}.kumon-weekly-mode-toggle{width:min(620px,100% - 72px);box-shadow:none;background:#ddd8fa;margin:64px auto 30px;padding:10px}.kumon-weekly-mode-button{min-height:84px;font-size:clamp(1.65rem,2.3vw,2.05rem)}.kumon-weekly-mode-button-active{background:linear-gradient(#8d6fff,#6d4cf5);box-shadow:0 12px 24px #6d4cf53d}.kumon-weekly-set-stack{gap:42px;padding:0 36px 72px}.kumon-weekly-set-group{gap:32px}.kumon-weekly-set-group-title{margin:0;font-size:clamp(2rem,3vw,2.7rem)}.kumon-weekly-set-section{box-shadow:none;background:#fff;border:0;border-radius:30px;gap:28px;padding:30px 32px 36px}.kumon-weekly-set-header{align-items:center}.kumon-weekly-set-copy{align-items:center;gap:22px}.kumon-weekly-set-pill{border-radius:16px;min-height:54px;padding:0 24px;font-size:1.35rem}.kumon-weekly-set-copy h2{font-size:clamp(1.9rem,2.8vw,2.55rem)}.kumon-weekly-set-copy p{font-size:1.14rem}.kumon-weekly-set-header-side{white-space:nowrap;align-items:center;gap:22px}.kumon-weekly-set-action-button{color:#203145;min-width:160px;min-height:54px;box-shadow:none;background:#f0f2f4;padding:0 22px;font-size:1rem}.kumon-weekly-set-meta strong{font-size:1.2rem}.kumon-weekly-set-meta span{font-size:1rem}.kumon-weekly-set-section .kumon-thumbnail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 30px}.kumon-weekly-set-section .kumon-thumbnail-button{gap:12px;width:min(100%,252px)}.kumon-thumbnail-sheet{box-shadow:none;background:#fff;border-radius:18px;padding:0}.kumon-thumbnail-sheet-image{background-position:top;background-size:cover}.kumon-thumbnail-sheet-image:after,.kumon-thumbnail-index{display:none}.kumon-thumbnail-caption{color:#2a3140;letter-spacing:-.03em;margin-top:4px;font-size:clamp(1.34rem,2vw,1.9rem);font-weight:500}.kumon-thumbnail-status{color:#203145;font-size:1rem;font-weight:800}.kumon-thumbnail-stamp{aspect-ratio:1;color:#2f47be;white-space:normal;background:#ffffff47;border:6px solid #2e47bedb;border-radius:50%;width:58%;min-height:0;padding:.15em .35em;font-size:clamp(1.1rem,1.8vw,1.5rem);line-height:1.15;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.kumon-weekly-empty-note{background:0 0;border:0;min-height:320px}.kumon-weekly-empty-note strong{color:#777b86;font-size:clamp(1.65rem,2.4vw,2.1rem);font-weight:700}.kumon-subject-page{min-height:100dvh}.kumon-stage-card{min-height:100dvh;box-shadow:none;background:radial-gradient(circle at 72% 20%,#ffffff6b,#0000 22%),linear-gradient(#aee9fa 0%,#c9f2ff 42%,#fff 47% 100%);border:0;border-radius:0;padding:34px 76px 70px}.kumon-stage-card-hanja,.kumon-stage-card-chinese,.kumon-stage-card-japanese{background:radial-gradient(circle at 72% 20%,#ffffff6b,#0000 22%),linear-gradient(#aee9fa 0%,#c9f2ff 42%,#fff 47% 100%)}.kumon-logo-main{width:150px}.kumon-stage-fixed-tools{top:34px;right:48px}.kumon-user-chip{background:#ffffff9e;min-height:54px;padding:0 22px;font-size:1.08rem}.kumon-stage-hero-compact{grid-template-columns:minmax(0,430px) minmax(0,1fr);min-height:580px;margin-top:72px}.kumon-stage-copy{align-self:center;gap:14px}.kumon-overline{color:#fff;letter-spacing:-.02em;text-transform:none;background:#4dc2e8;border-radius:12px;width:fit-content;min-height:58px;padding:0 24px;font-size:1.75rem}.kumon-stage-copy h1{font-size:clamp(3.2rem,5vw,4.5rem);font-weight:900}.kumon-stage-illustration-compact{min-height:520px}.kumon-tab-strip{border-bottom:0;gap:12px;margin:8px 0 16px}.kumon-tab-button{color:#6f7580;min-height:76px;box-shadow:none;background:#f5f7fceb;border:0;border-radius:22px;flex:1;font-size:clamp(1.6rem,2.6vw,2.25rem)}.kumon-tab-button-active{color:#203145;background:#fff;box-shadow:0 14px 30px #2031451f}.kumon-subject-card-button{border-radius:42px;min-height:360px;margin-top:0;padding:42px 58px 46px;box-shadow:0 22px 38px #5b4bc42e}.kumon-subject-card-button-hanja{background:linear-gradient(#ffe96d,#ffe052)}.kumon-subject-card-button-chinese,.kumon-subject-card-button-japanese{background:linear-gradient(#8d72ff,#7c5df4)}.kumon-subject-card-button h2{color:#fff;font-size:clamp(3.2rem,5vw,4.4rem)}.kumon-subject-card-button-hanja h2{color:#203145}.kumon-subject-progress-row span,.kumon-subject-progress-row strong{color:#ffffffeb}.kumon-subject-card-button-hanja .kumon-subject-progress-row span,.kumon-subject-card-button-hanja .kumon-subject-progress-row strong{color:#203145}.kumon-subject-progress-row span{font-size:1.5rem;font-weight:500}.kumon-progress-track{background:#ffffff6b;height:18px;margin-bottom:0}.kumon-subject-card-button-hanja .kumon-progress-track{background:#2031451f}@media (width<=860px){.app-shell-surface{width:100%;padding:0}.kumon-screen-header{min-height:96px;padding:0 18px}.kumon-back-pill,.kumon-icon-button{width:54px;height:54px;font-size:1.65rem}.kumon-screen-header-copy h1{font-size:2rem}.kumon-subject-title-chevron{width:48px;height:48px}.kumon-week-tab-strip,.kumon-week-tab-button{min-height:76px}.kumon-week-tab-button{font-size:1.45rem}.kumon-weekly-summary-card{border-radius:28px;margin:18px 18px 0}.kumon-weekly-summary-head{min-height:72px;padding:0 22px;font-size:1.65rem}.kumon-weekly-summary-body{min-height:118px;padding:20px 22px}.kumon-weekly-summary-copy{gap:16px}.kumon-weekly-summary-icon{width:62px;height:62px}.kumon-weekly-summary-copy strong,.kumon-weekly-summary-metrics strong{font-size:1.35rem}.kumon-weekly-summary-copy span,.kumon-weekly-summary-metrics span{font-size:.96rem}.kumon-weekly-mode-toggle{width:min(620px,100% - 36px);margin:26px auto 18px}.kumon-weekly-mode-button{min-height:60px;font-size:1.2rem}.kumon-weekly-set-stack{padding:0 18px 48px}.kumon-weekly-set-section{padding:22px 18px 28px}.kumon-weekly-set-copy h2{font-size:1.52rem}.kumon-weekly-set-header-side{gap:12px}.kumon-weekly-set-action-button{min-width:142px}.kumon-weekly-set-section .kumon-thumbnail-grid{gap:28px 18px}.kumon-thumbnail-caption{font-size:1.12rem}.kumon-stage-card{padding:24px 24px 48px}.kumon-stage-hero-compact{min-height:440px;margin-top:48px}}@media (width<=640px){.kumon-weekly-summary-body{grid-template-columns:minmax(0,1fr) max-content}.kumon-weekly-summary-copy,.kumon-weekly-summary-metrics{justify-items:initial;text-align:initial}.kumon-weekly-summary-metrics{text-align:right;justify-items:end}.kumon-weekly-set-header,.kumon-weekly-set-copy,.kumon-weekly-set-header-side{flex-direction:row}.kumon-weekly-set-header{align-items:center}.kumon-weekly-set-header-side,.kumon-weekly-set-actions,.kumon-weekly-set-meta{text-align:right;justify-content:flex-end;justify-items:end}}.panel,.kumon-auth-card,.kumon-stage-card,.kumon-screen-header,.kumon-set-card,.kumon-weekly-summary-card,.kumon-weekly-set-section,.kumon-week-tab-strip,.kumon-subject-switcher-menu{border-color:var(--kumon-color-border)}.panel,.kumon-auth-card,.kumon-set-card,.kumon-weekly-summary-card,.kumon-weekly-set-section,.kumon-subject-switcher-menu{background-color:var(--kumon-color-surface)}.kumon-auth-card,.kumon-subject-card-button,.kumon-weekly-set-section,.kumon-subject-switcher-menu{box-shadow:var(--ds-shadow-500)}.kumon-login-button,.kumon-primary-cta,.primary-button{background:var(--kumon-gradient-primary);box-shadow:var(--ds-shadow-300);color:var(--ds-color-text-white)}.kumon-login-button-arrow{background:#fff3}.secondary-button,.kumon-weekly-set-action-button,.kumon-tool-button,.kumon-utility-pill,.kumon-date-pill{border-color:var(--kumon-color-border);background:var(--ds-color-grey-200);color:var(--kumon-color-text)}.secondary-button:hover,.kumon-weekly-set-action-button:hover,.kumon-tool-button:hover,.kumon-utility-pill:hover,.kumon-date-pill:hover{background:var(--ds-color-primary-50);color:var(--kumon-color-primary)}.kumon-tool-button-primary,.kumon-utility-pill-accent,.pill-button-active{background:var(--kumon-gradient-primary);color:var(--ds-color-text-white)}.kumon-subject-page .kumon-subject-card-button-hanja,.kumon-subject-card-button-hanja{color:var(--kumon-color-text);background:var(--kumon-gradient-hanja)}.kumon-subject-page .kumon-subject-card-button-chinese,.kumon-subject-card-button-chinese{color:var(--ds-color-text-white);background:var(--kumon-gradient-chinese);box-shadow:0 22px 38px #00712d2e}.kumon-subject-page .kumon-subject-card-button-japanese,.kumon-subject-card-button-japanese{color:var(--ds-color-text-white);background:var(--kumon-gradient-japanese);box-shadow:0 22px 38px #4e61f62e}.kumon-subject-card-button-chinese .kumon-progress-fill{background:linear-gradient(90deg, var(--ds-color-green-100), var(--ds-color-surface-white))}.kumon-subject-card-button-japanese .kumon-progress-fill{background:linear-gradient(90deg, var(--ds-color-blue-100), var(--ds-color-surface-white))}.kumon-week-tab-button-active,.kumon-weekly-summary-metrics em{color:var(--kumon-color-week-accent)}.kumon-week-tab-button-active:after{background:var(--kumon-color-week-accent)}.kumon-weekly-mode-button-active,.kumon-weekly-set-pill{background:var(--kumon-gradient-primary);color:var(--ds-color-text-white)}.kumon-weekly-mode-toggle{background:var(--ds-color-primary-50)}.kumon-subject-title-chevron{background:var(--ds-color-grey-200);color:var(--kumon-color-text)}.kumon-subject-switcher-button:hover .kumon-subject-title-chevron,.kumon-subject-switcher-button[aria-expanded=true] .kumon-subject-title-chevron{background:var(--ds-color-primary-50);color:var(--kumon-color-primary)}.kumon-subject-switcher-item{background:var(--kumon-color-surface-soft);color:var(--kumon-color-text)}.kumon-subject-switcher-item:hover{background:var(--ds-color-primary-50);color:var(--kumon-color-primary)}.kumon-thumbnail-stamp,.kumon-thumbnail-stamp-a{color:var(--kumon-color-primary);border-color:#4e61f6db}.kumon-thumbnail-stamp-b{color:#16844b;border-color:#09a045d1}.kumon-thumbnail-stamp-complete{color:var(--kumon-color-primary);border-color:#4e61f6db}.kumon-thumbnail-sheet-active{box-shadow:var(--ds-shadow-300);border-color:#09a04547}.kumon-login-field input:focus{border-color:#4e61f66b;box-shadow:0 0 0 4px #4e61f61f}
