@import "https://fonts.googleapis.com/css2?family=Google+Sans:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600;700&display=swap";
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#17243a;--muted:#777773;--canvas:#f3f6fa;--surface:#fff;--line:#dce4ed;--sage:#e9eedc;--accent:#1e3a5f;--accent-dark:#102542;--accent-soft:#e8eef6;color:var(--ink);background:var(--canvas);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Google Sans,Noto Sans KR,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(ellipse at 80% 0%, #eae9e6 0, transparent 33%), var(--canvas);min-width:320px;min-height:100vh;margin:0}button{font:inherit;color:inherit}button:focus-visible{outline-offset:3px;outline:3px solid #4a4a48}.app-shell{min-height:100vh}.sidebar{z-index:4;background:#ffffffe8;border-right:1px solid #e7e7e4;flex-direction:column;width:252px;padding:30px 19px 22px;display:flex;position:fixed;inset:0 auto 0 0;box-shadow:5px 0 24px #30234f0a}.sidebar-brand-row{justify-content:space-between;align-items:center;gap:8px;margin-bottom:52px;display:flex}.brand{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:space-between;align-items:center;gap:9px;width:100%;min-width:0;min-height:42px;margin:0;padding:0 8px 0 5px;display:flex}.brand:hover{background:#f2f5f8}.brand-collapse-icon{color:#728197;flex:none}.brand-mark{color:#fff;background:linear-gradient(145deg,#292929,#26a7a0);border-radius:15px;place-items:center;width:43px;height:43px;font-size:24px;font-weight:600;display:grid}.brand strong{letter-spacing:-.7px;font-size:21px;line-height:1.05;display:block}.brand small{color:#92949b;letter-spacing:.7px;margin-top:4px;font-size:10px;display:block}.sidebar-label,.eyebrow{color:#888a91;letter-spacing:1.25px;font-size:10px;font-weight:700}.sidebar-label{margin:0 0 13px 13px}.side-nav{gap:5px;display:grid}.nav-link{color:#6f7178;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:15px;align-items:center;gap:13px;height:47px;padding:0 14px;font-size:13px;display:flex}.nav-link.active{color:#1e3a5f;background:#e8eef6;font-weight:600}.sidebar-note{background:linear-gradient(135deg,#eeeeec,#e5f5f4);border-radius:20px;margin-top:auto;padding:17px}.sidebar-note svg{color:#292929}.sidebar-note strong{margin-top:12px;font-size:13px;display:block}.sidebar-note p{color:var(--muted);margin:7px 0 0;font-size:11px;line-height:1.65}.sidebar-footer{color:#8b8d93;align-items:center;gap:8px;padding:20px 4px 0;font-size:10px;display:flex}.sidebar-footer i,.course-pill i{background:#292929;border-radius:50%;width:7px;height:7px}.main-content{min-height:100vh;margin-left:252px;transition:margin-left .2s}.topbar{z-index:3;-webkit-backdrop-filter:blur(20px)saturate(150%);backdrop-filter:blur(20px)saturate(150%);background:#ffffffa6;border:1px solid #ffffffb8;border-radius:20px;justify-content:space-between;align-items:center;height:60px;margin:12px 24px 0;padding:0 24px;display:flex;position:sticky;top:12px;box-shadow:0 8px 28px #1025421a,inset 0 1px #ffffffb3}.app-shell.sidebar-collapsed .sidebar{width:78px;padding:24px 10px 18px}.app-shell.sidebar-collapsed .main-content{margin-left:78px}.app-shell.sidebar-collapsed .sidebar-brand-row{flex-direction:column;gap:10px;margin-bottom:35px}.app-shell.sidebar-collapsed .brand{justify-content:space-between;width:58px;height:40px;margin:0;padding:0 4px}.app-shell.sidebar-collapsed .brand strong{letter-spacing:0;font-size:0}.app-shell.sidebar-collapsed .brand strong:before{content:"m";font-size:23px;font-weight:700}.app-shell.sidebar-collapsed .brand-collapse-icon{width:15px;height:15px}.app-shell.sidebar-collapsed .sidebar-label,.app-shell.sidebar-collapsed .sidebar-note,.app-shell.sidebar-collapsed .sidebar-footer{display:none}.app-shell.sidebar-collapsed .nav-link{justify-content:center;gap:0;padding:0;font-size:0}.app-shell.sidebar-collapsed .nav-link svg{flex:none}.nav-hover-card{display:none}.app-shell.sidebar-collapsed .nav-link{position:relative;overflow:visible}.app-shell.sidebar-collapsed .nav-hover-card{z-index:8;opacity:0;visibility:hidden;pointer-events:none;white-space:normal;text-align:left;background:#fff;border:1px solid #e1e7ee;border-radius:14px;gap:4px;min-width:185px;max-width:240px;padding:11px 14px;transition:opacity .14s,transform .14s,visibility 0s linear .14s;display:grid;position:absolute;top:50%;left:calc(100% + 12px);transform:translate(4px,-50%);box-shadow:0 10px 26px #17243a21}.app-shell.sidebar-collapsed .nav-hover-card strong{color:#17243a;font-size:12px;font-weight:600}.app-shell.sidebar-collapsed .nav-hover-card small{color:#788291;font-size:10px;line-height:1.45}.app-shell.sidebar-collapsed .nav-link:hover .nav-hover-card,.app-shell.sidebar-collapsed .nav-link:focus-visible .nav-hover-card{opacity:1;visibility:visible;transition-delay:0s;transform:translateY(-50%)}.breadcrumb{color:#8b8d92;align-items:center;gap:10px;font-size:12px;display:flex}.breadcrumb strong{color:#303136;font-weight:600}.topbar-right{align-items:center;gap:16px;display:flex}.course-pill{color:#666970;background:#fff;border:1px solid #e7e7e8;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:11px;display:flex}.avatar{background:#f8c9d2;border:0;border-radius:50%;width:33px;height:33px;font-size:12px;font-weight:600}.mobile-brand,.mobile-nav{display:none}.screen{width:100%;padding:48px 52px 80px}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:30px;display:flex}.page-heading .eyebrow{text-transform:uppercase;margin:0 0 10px}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-1.3px;margin-bottom:8px;font-size:clamp(29px,3vw,38px);font-weight:500;line-height:1.2}.title-sparkle{color:#a5ad87;font-size:.75em}.page-subtitle{color:#7f8188;margin-bottom:0;font-size:13px;line-height:1.65}.hero-grid{grid-template-columns:minmax(0,1.5fr) minmax(230px,.82fr);gap:16px;display:grid}.hero-card{background:linear-gradient(118deg,#f7f5ed 0%,#edf2f5 58%,#e3edf5 100%);border:1px solid #dce5ed;border-radius:25px;align-items:center;min-height:243px;padding:34px;display:flex;position:relative;overflow:hidden}.hero-copy{z-index:1;max-width:330px;position:relative}.hero-copy .eyebrow{color:#64768b;margin-bottom:13px}.hero-copy h2{letter-spacing:-.7px;max-width:290px;margin-bottom:9px;font-size:25px;font-weight:500;line-height:1.25}.hero-copy p:not(.eyebrow){color:#566a80;margin-bottom:20px;font-size:12px;line-height:1.7}.hero-orbit{background:#ffffff61;border:1px solid #1e3a5f2e;border-radius:50%;place-items:center;width:205px;height:205px;display:grid;position:absolute;top:12px;right:14px;box-shadow:0 0 0 15px #1e3a5f0d,0 0 0 31px #1e3a5f08}.hero-orbit b{color:#f4d47e;background:#1e3a5f;border:5px solid #fff;border-radius:28px;place-items:center;width:93px;height:93px;font-size:48px;font-weight:500;display:grid}.hero-orbit span{background:#d9e6f2;border:2px solid #fff;border-radius:14px;place-items:center;width:39px;height:39px;font-size:17px;display:grid;position:absolute}.hero-orbit span:first-child{background:#dadad6;top:21px;left:25px}.hero-orbit span:nth-child(2){background:#c2efff;top:84px;right:0}.hero-orbit span:nth-child(3){background:#e9eedc;bottom:12px;left:32px}.button{cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 16px;font-size:12px;font-weight:500;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.45;cursor:not-allowed}.button-primary{color:#fff;background:#1e3a5f}.button-primary:hover:not(:disabled){background:#102542}.button-secondary{background:#fff;border-color:#e5e5e7}.button-secondary:hover:not(:disabled){background:#f7f7f7}.button-text{color:#35363a;background:0 0;padding:0 5px}.button-icon{background:#fff;border-color:#e8e8e9;width:40px;height:40px;padding:0}.stat-card{background:#fff;border:1px solid #e8e8e8;border-radius:25px;flex-direction:column;justify-content:space-between;min-height:243px;padding:24px;display:flex}.stat-top{color:#85878d;letter-spacing:1px;align-items:center;gap:9px;font-size:10px;font-weight:700;display:flex}.stat-top svg{color:#a2aa82}.streak-value{letter-spacing:-1.4px;margin-bottom:11px;font-size:38px;font-weight:500}.streak-value small{color:#8b8c91;letter-spacing:0;font-size:13px;font-weight:400}.progress-track{background:#f0f1ee;border-radius:9px;height:7px;overflow:hidden}.progress-track span{border-radius:inherit;background:#a8b28c;height:100%;transition:width .3s;display:block}.stat-card p{color:#8b8d91;margin:11px 0 0;font-size:10px}.alphabet-banner{text-align:left;cursor:pointer;background:#fbfaf8;border:1px solid #e8e9e5;border-radius:20px;justify-content:space-between;align-items:center;width:100%;min-height:86px;margin-top:18px;padding:15px 23px;display:flex}.skill-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px;display:grid}.skill-shortcut{text-align:left;cursor:pointer;background:#fff;border:1px solid #dce4ed;border-radius:18px;align-items:center;gap:12px;min-height:82px;padding:14px 16px;transition:border-color .16s,background .16s;display:flex}.skill-shortcut:hover{background:#f8fafc;border-color:#9aacc0}.skill-shortcut>span:nth-child(2){flex:1;gap:4px;display:grid}.skill-shortcut strong{font-size:13px;font-weight:600}.skill-shortcut small{color:#777f89;font-size:11px}.skill-shortcut>svg{color:#76869a}.skill-shortcut-icon,.skill-study-icon{color:#1e3a5f;background:#e8eef6;border-radius:14px;flex:none;place-items:center;width:42px;height:42px;display:grid}.skill-study{gap:18px;max-width:920px;margin:0 auto;display:grid}.skill-mode-tabs{gap:8px;display:flex}.skill-mode-tabs .button{min-height:36px}.skill-study-heading{align-items:center;gap:14px;display:flex}.skill-study-heading .eyebrow{margin:0 0 5px}.skill-study-heading h2{margin:0;font-size:21px;font-weight:600}.skill-lesson-pill{color:#5e6b7b;background:#fff;border:1px solid #dce4ed;border-radius:999px;margin-left:auto;padding:8px 12px;font-size:11px}.listening-player,.skill-text-panel,.skill-questions{background:#fff;border:1px solid #dce4ed;border-radius:20px;padding:20px}.listening-player-copy{color:#1e3a5f;align-items:center;gap:11px;margin-bottom:15px;display:flex}.listening-player-copy span{gap:4px;display:grid}.listening-player-copy strong{color:var(--ink);font-size:13px}.listening-player-copy small{color:#828994;font-size:11px}.listening-player audio{width:100%;min-height:42px;display:block}.skill-text-panel{background:#f8fafc}.skill-korean-text{color:#1b2d45;white-space:pre-line;margin:0;font-family:Noto Sans KR,Google Sans,sans-serif;font-size:20px;line-height:1.95}.skill-hidden-text{color:#687a90;align-items:center;gap:9px;min-height:52px;margin:0;font-size:13px;display:flex}.skill-text-actions{border-top:1px solid #e3e8ed;margin-top:14px;padding-top:9px}.skill-text-actions .button{min-height:34px}.skill-translation{color:#6d737a;margin:7px 4px 2px;font-size:13px;line-height:1.7}.skill-question-heading{justify-content:space-between;align-items:center;margin-bottom:17px;display:flex}.skill-question-heading h3{margin:0;font-size:15px}.skill-question-heading span{color:#7e8792;font-size:11px}.skill-question+.skill-question{border-top:1px solid #e8ebef;margin-top:18px;padding-top:17px}.skill-question h4{align-items:flex-start;gap:9px;margin:0 0 12px;font-family:Noto Sans KR,Google Sans,sans-serif;font-size:14px;font-weight:500;line-height:1.65;display:flex}.skill-question h4 span{color:#1e3a5f;background:#e8eef6;border-radius:8px;flex:none;place-items:center;width:23px;height:23px;font-family:Google Sans,sans-serif;font-size:11px;display:grid}.skill-answer-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.skill-answer{text-align:left;cursor:pointer;background:#fff;border:1px solid #e0e5eb;border-radius:13px;min-height:44px;padding:10px 12px;font-family:Noto Sans KR,Google Sans,sans-serif;font-size:12px}.skill-answer:disabled{color:inherit;cursor:default}.skill-answer.is-correct{color:#28613a;background:#edf6ef;border-color:#a7c7af}.skill-answer.is-wrong{color:#8a3e38;background:#fbefee;border-color:#dcb5b2}.skill-answer-note{color:#677486;margin:10px 0 0;font-size:12px;line-height:1.6}.skill-audio-error{color:#8a5d23;margin:0;font-size:12px}.alphabet-copy strong,.alphabet-copy span{display:block}.alphabet-copy strong{margin-bottom:7px;font-size:13px;font-weight:600}.alphabet-copy span{color:#85878c;font-size:11px}.alphabet-banner b{background:#e8eef0;border-radius:16px;place-items:center;width:49px;height:49px;font-size:27px;font-weight:500;display:grid}.section-row,.section-card-head{justify-content:space-between;align-items:center;gap:18px;display:flex}.section-row{margin:37px 0 18px}.section-row h2,.section-card-head h2,.section-card-cta h2{letter-spacing:-.3px;margin-bottom:5px;font-size:17px;font-weight:600}.section-row p,.section-card-head p,.section-card-cta p{color:#85878c;margin-bottom:0;font-size:11px}.lesson-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.lesson-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #e9e9e9;border-radius:20px;align-items:flex-start;gap:14px;min-height:123px;padding:17px;transition:transform .18s,box-shadow .18s;display:flex}.lesson-card:hover{transform:translateY(-2px);box-shadow:0 9px 24px #292a2c0c}.lesson-number{color:#303136;background:#f0f0f1;border-radius:13px;flex:0 0 37px;place-items:center;width:37px;height:37px;font-size:11px;font-weight:600;display:grid}.lesson-info{flex:1;min-width:0}.lesson-title-row{justify-content:space-between;align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.lesson-title-row svg{color:#9b9da1;flex:none}.lesson-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lesson-translation{color:#85878c;margin-top:4px;font-size:11px;display:block}.lesson-bottom{color:#92949a;flex-wrap:wrap;gap:5px 10px;margin-top:14px;font-size:9px;display:flex}.section-card,.quiz-card{background:#fff;border:1px solid #e9e9e9;border-radius:24px;padding:25px}.section-card-head{margin-bottom:18px}.card-controls{border-top:1px solid #f0f0f0;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding-top:14px;display:flex}.card-position{color:#87898f;font-size:11px}.lesson-select{cursor:pointer;background:#fff;border:1px solid #e5e5e7;border-radius:999px;justify-content:space-between;align-items:center;gap:12px;min-width:184px;height:41px;padding:0 13px;font-size:11px;display:inline-flex}.select-content{z-index:10;min-width:var(--radix-select-trigger-width);max-width:var(--radix-select-content-available-width);max-height:var(--radix-select-content-available-height);background:#fff;border:1px solid #ececee;border-radius:15px;flex-direction:column;padding:5px;display:flex;overflow:hidden;box-shadow:0 12px 35px #18191b18}.select-viewport{min-height:0;max-height:min(320px, calc(var(--radix-select-content-available-height) - 60px));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-width:thin;overflow:hidden auto}.select-scroll{color:#1e3a5f;justify-content:center;align-items:center;height:30px;display:flex}.lesson-select>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-icon{color:#607188;flex-shrink:0;display:flex}.select-item{cursor:pointer;border-radius:10px;outline:none;align-items:center;min-height:38px;padding:0 30px 0 11px;font-size:11px;display:flex;position:relative}.select-item[data-highlighted]{background:#f3f4f0}.select-indicator{position:absolute;right:10px}.grammar-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.grammar-card{background:#fff;border:1px solid #e9e9e9;border-radius:20px;padding:20px}.grammar-card-top{justify-content:space-between;gap:14px;display:flex}.grammar-card h3{margin:0 0 6px;font-size:18px;font-weight:600}.grammar-meaning{color:#86888d;margin:0;font-size:11px}.grammar-rule{color:#55585d;margin:18px 0 13px;font-size:12px;line-height:1.7}.grammar-example{color:#72747a;background:#f8f8f6;border-radius:12px;margin:0;padding:11px 13px;font-size:10px;line-height:1.65}.grammar-example strong{color:#303136;font-size:12px}.section-card-cta{justify-content:space-between;align-items:center;gap:18px;margin-top:17px;display:flex}.alphabet-section{background:#fff;border:1px solid #e9e9e9;border-radius:22px;margin:0 0 25px;padding:22px}.alphabet-section h2{margin:0 0 5px;font-size:16px;font-weight:600}.alphabet-section>div:first-child p{color:#85878c;margin:0 0 18px;font-size:11px}.letter-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.letter-tile{background:#fcfcfb;border:1px solid #f0f0ef;border-radius:14px;place-content:center;justify-items:center;gap:3px;min-height:78px;display:grid}.letter-tile strong{font-size:25px;font-weight:500}.letter-tile span{color:#73767a;text-align:center;font-size:9px}.letter-tile small{color:#9a9ca1;font-size:8px}.alphabet-rules{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.alphabet-rule{background:#f8f8f6;border-radius:15px;padding:15px}.alphabet-rule h3{margin-bottom:7px;font-size:12px}.alphabet-rule p{color:#787b80;min-height:48px;margin-bottom:10px;font-size:10px;line-height:1.65}.alphabet-rule strong{font-size:12px}.quiz-card{width:100%;margin:0 auto;padding:29px}.quiz-card .section-card-head{margin:0 0 21px}.quiz-card .section-card-head h2{margin:0 0 5px;font-size:16px}.quiz-card .section-card-head p{color:#85878c;margin:0;font-size:11px}.quiz-badge{color:#73786b;background:#f3f4f0;border-radius:999px;padding:8px 11px;font-size:10px}.quiz-progress{background:#f0f0ed;border-radius:10px;height:5px;margin-bottom:24px;overflow:hidden}.quiz-progress span{border-radius:inherit;background:#292929;height:100%;transition:width .25s;display:block}.quiz-prompt{margin-bottom:18px;font-size:19px;font-weight:500;line-height:1.5}.quiz-options{gap:9px;display:grid}.quiz-option{text-align:left;cursor:pointer;background:#fff;border:1px solid #e9e9ea;border-radius:15px;align-items:center;gap:12px;min-height:53px;padding:10px 14px;font-size:12px;display:flex}.quiz-option:disabled{color:var(--ink);opacity:1;cursor:default}.quiz-option.correct{background:#f2f5eb;border-color:#bdc9a6}.quiz-option.wrong{background:#fff3f3;border-color:#efb7b9}.quiz-option svg{color:#89966a;margin-left:auto}.option-letter{color:#73767a;background:#f5f5f4;border-radius:9px;flex:0 0 25px;place-items:center;width:25px;height:25px;font-size:9px;font-weight:600;display:grid}.answer-note{color:#777a80;min-height:36px;margin:15px 0 0;font-size:11px;line-height:1.6}.quiz-footer{border-top:1px solid #f0f0f0;justify-content:space-between;align-items:center;gap:12px;padding-top:16px;display:flex}.result-card{text-align:center;width:100%}.result-icon{color:#8b986d;background:#eff2e8;border-radius:20px;place-items:center;width:57px;height:57px;margin:0 auto 14px;display:grid}.result-card>.eyebrow{margin-bottom:7px}.quiz-result-score{letter-spacing:-2px;margin:8px 0 5px;font-size:56px;font-weight:500}.quiz-result-score small{color:#a0a1a5;font-size:22px}.result-card>p:not(.eyebrow){color:#83858a;font-size:12px}.result-actions{flex-wrap:wrap;justify-content:center;gap:9px;margin-top:23px;display:flex}.loading-state,.empty-state,.error-panel{text-align:center;place-content:center;justify-items:center;min-height:280px;display:grid}.loading-state p,.empty-state p,.error-panel p{color:#81838a;font-size:12px;line-height:1.6}.empty-state svg{color:#a0a287;margin-bottom:12px}.error-panel{background:#fff;border:1px solid #f0dddd;border-radius:23px;padding:30px}.error-panel h2{margin:12px 0 6px;font-size:17px}.error-mark{color:#c85c5e;background:#ffeded;border-radius:15px;place-items:center;width:42px;height:42px;display:grid}.loader{border:2px solid #e6e8df;border-top-color:#929d73;border-radius:50%;width:28px;height:28px;margin-bottom:12px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.toast{z-index:8;opacity:0;pointer-events:none;background:#fff;border:1px solid #e7e7e7;border-radius:15px;align-items:center;gap:9px;padding:13px 17px;font-size:12px;transition:all .2s;display:flex;position:fixed;bottom:22px;right:22px;transform:translateY(8px);box-shadow:0 8px 30px #17191b18}.toast-visible{opacity:1;transform:translateY(0)}.toast svg{color:#89966a}.muted{color:#a1a2a6;font-weight:400}@media (max-width:1100px){.screen{padding-left:34px;padding-right:34px}.topbar{padding:0 34px}.hero-orbit{right:-23px;transform:scale(.88)}.hero-copy{max-width:280px}.lesson-bottom{gap:5px 7px}}@media (max-width:820px){.sidebar{width:213px;padding-left:13px;padding-right:13px}.main-content{margin-left:213px}.screen{padding:36px 24px 64px}.topbar{height:58px;padding:0 24px}.hero-grid{grid-template-columns:1fr}.hero-card,.stat-card{min-height:205px}.hero-orbit{right:10px}.grammar-list{grid-template-columns:1fr}}@media (max-width:620px){.sidebar{display:none}.main-content{padding-bottom:calc(96px + env(safe-area-inset-bottom));margin-left:0}.app-shell.sidebar-collapsed .main-content{margin-left:0}.topbar{top:max(10px, env(safe-area-inset-top));height:52px;margin:max(10px, env(safe-area-inset-top)) 12px 0;border-radius:18px;padding:0 14px}.mobile-brand{align-items:center;gap:8px;display:flex}.mobile-brand .brand-mark{border-radius:11px;width:31px;height:31px;font-size:18px}.mobile-brand strong{font-size:17px}.breadcrumb{gap:4px;min-width:0;font-size:13px}.breadcrumb strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.breadcrumb span:first-child{display:none}.course-pill{padding:7px 9px;font-size:9px}.topbar-right{gap:8px}.avatar{width:29px;height:29px}.screen{padding:31px 17px 42px}.page-heading{flex-direction:column;align-items:flex-start;gap:14px;margin-bottom:22px}.page-heading h1{font-size:30px}.page-heading .lesson-select{width:100%}.hero-card{min-height:216px;padding:25px 21px}.skill-shortcuts{grid-template-columns:1fr;gap:9px}.skill-shortcut{min-height:72px}.skill-study-heading h2{font-size:18px}.skill-study-icon{width:38px;height:38px}.skill-lesson-pill{padding:7px 9px;font-size:10px}.listening-player,.skill-text-panel,.skill-questions{padding:15px}.skill-korean-text{font-size:17px}.skill-answer-list{grid-template-columns:1fr}.hero-copy{max-width:67%}.hero-copy h2{font-size:21px}.hero-orbit{top:25px;right:-67px;transform:scale(.72)}.stat-card{min-height:170px}.alphabet-banner{min-height:77px;padding:13px 15px}.alphabet-copy strong{font-size:11px}.alphabet-copy span{max-width:245px;font-size:9px;line-height:1.5}.alphabet-banner b{flex:0 0 43px;width:43px;height:43px}.section-row{flex-direction:column;align-items:flex-start;margin-top:30px}.section-row .button{padding-left:0}.lesson-grid{grid-template-columns:1fr}.lesson-card{min-height:110px}.lesson-bottom{font-size:8px}.section-card,.quiz-card{border-radius:20px;padding:19px 15px}.section-card-head{align-items:flex-start}.section-card-head>.button{min-height:35px;padding:0 11px;font-size:10px}.card-controls{gap:7px}.card-controls .button{min-height:36px;padding:0 11px;font-size:10px}.card-controls .card-position{text-align:center;order:5;width:100%}.grammar-card{padding:17px}.section-card-cta{flex-direction:column;align-items:flex-start}.alphabet-section{padding:17px 13px}.letter-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.letter-tile{border-radius:11px;min-height:69px}.letter-tile strong{font-size:22px}.alphabet-rules{grid-template-columns:1fr}.alphabet-rule p{min-height:auto}.quiz-card{padding:21px 16px}.quiz-prompt{font-size:17px}.quiz-footer{align-items:flex-start}.quiz-footer .button{min-height:38px;padding:0 12px;font-size:10px}.mobile-nav{inset:auto 12px calc(12px + env(safe-area-inset-bottom)) 12px;z-index:5;-webkit-backdrop-filter:blur(20px)saturate(150%);backdrop-filter:blur(20px)saturate(150%);background:#ffffffb3;border:1px solid #ffffffb3;border-radius:22px;grid-template-columns:repeat(4,1fr);gap:4px;padding:6px;display:grid;position:fixed;box-shadow:0 10px 35px #1e1b2d29}.mobile-nav-link{color:#8a8c92;cursor:pointer;background:0 0;border:0;border-radius:13px;place-content:center;justify-items:center;gap:3px;min-height:47px;font-size:8px;display:grid}.mobile-nav-link.active{color:#232427;background:#f1f2ee}.toast{right:14px;bottom:calc(78px + env(safe-area-inset-bottom));justify-content:center;left:14px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.due-banner{text-align:left;cursor:pointer;background:#f5f6f0;border:1px solid #e5e8dc;border-radius:17px;justify-content:space-between;align-items:center;width:100%;margin:14px 0 12px;padding:16px 20px;display:flex}.due-banner strong,.due-banner small{display:block}.due-banner strong{margin-bottom:4px;font-size:12px}.due-banner small{color:#7e8179;font-size:10px}.due-banner svg{color:#858f69}.library-card,.progress-panel,.practice-setup,.review-panel,.practice-results{background:#fff;border:1px solid #e9e9e9;border-radius:23px;padding:24px}.library-toolbar{flex-wrap:wrap;gap:9px;display:flex}.search-field{color:#777980;background:#fff;border:1px solid #e7e7e8;border-radius:999px;flex:230px;align-items:center;gap:8px;height:41px;padding:0 12px;display:flex}.search-field input{min-width:0;font:inherit;color:#292a2d;background:0 0;border:0;outline:0;width:100%;font-size:11px}.lesson-select.filter-select{color:#292a2d;flex:0 auto;min-width:140px}.library-count{color:#87898f;margin:15px 0;font-size:10px}.word-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.word-card{background:#fdfdfc;border:1px solid #ededed;border-radius:18px;min-width:0;padding:15px}.word-card-top{justify-content:space-between;align-items:center;display:flex}.word-group{color:#888b83;font-size:9px}.favorite-button{color:#84868b;cursor:pointer;background:#f4f4f1;border:0;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.favorite-button.is-favorite{color:#d67582}.word-korean{overflow-wrap:anywhere;margin:8px 0 4px;font-size:24px;font-weight:500;display:block}.word-meaning{color:#4e5055;min-height:19px;font-size:11px;display:block}.word-meta{color:#9a9ba0;margin-top:7px;font-size:9px;display:block}.word-actions{gap:7px;margin-top:13px;display:flex}.word-actions .button{min-height:33px;padding:0 11px;font-size:10px}.library-empty{color:#81838a;text-align:center;align-content:center;justify-items:center;gap:8px;min-height:200px;display:grid}.library-empty svg{color:#9ca480}.library-empty strong{color:#333438;font-size:13px}.library-empty span{font-size:11px}.review-panel{width:100%;margin:0 auto}.review-heading{justify-content:space-between;align-items:center;display:flex}.review-heading h2{margin:6px 0 0;font-size:20px}.review-remaining{color:#888a90;align-items:center;gap:6px;font-size:11px;display:flex}.review-progress{background:#f0f0ed;border-radius:8px;height:5px;margin:20px 0;overflow:hidden}.review-progress span{border-radius:inherit;background:#292929;height:100%;display:block}.rating-actions{flex-wrap:wrap;justify-content:center;gap:9px;margin-top:16px;display:flex}.review-hint{color:#93959a;text-align:center;margin:13px 0 0;font-size:10px}.review-complete{text-align:center;background:radial-gradient(circle at 50% -10%,#eeeeec,#0000 60%),#fff;border-color:#dededb;justify-items:center;padding:58px 25px;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 44px #4a358f17}.review-complete h2{letter-spacing:-.5px;margin:14px 0 7px;font-size:23px}.review-complete p,.review-complete small{color:#85878d;font-size:11px}.review-icon{color:#fff;background:linear-gradient(145deg,#62625f,#30302e);border:1px solid #dededb;border-radius:19px;place-items:center;width:58px;height:58px;display:grid;box-shadow:0 9px 18px #5136ae3d}.completion-sparkles{color:#777773;gap:16px;margin-top:11px;display:flex}.completion-sparkles span:nth-child(2){color:#e9a43e;transform:translateY(-6px)}.completion-sparkles span:nth-child(3){color:#2a9990}.practice-setup{grid-template-columns:1fr 1.25fr;gap:23px;display:grid}.practice-scope,.practice-modes{align-content:start;gap:9px;display:grid}.practice-scope>.eyebrow,.practice-modes>.eyebrow{grid-column:1/-1;margin:0 0 4px}.scope-choice,.mode-choice{text-align:left;cursor:pointer;background:#fff;border:1px solid #e8e8e9;border-radius:14px;gap:5px;padding:13px;font-size:12px;display:grid}.scope-choice.selected,.mode-choice.selected{background:#f5f7f0;border-color:#bdc8a5}.scope-choice small,.mode-choice small{color:#85878c;font-size:10px}.practice-modes{grid-template-columns:repeat(3,minmax(0,1fr))}.practice-lesson-select{max-width:min(100%,340px)}.question-count{color:#54565b;align-items:center;gap:10px;font-size:11px;display:flex}.question-count input,.goal-panel input{width:76px;height:36px;font:inherit;border:1px solid #e7e7e8;border-radius:10px;padding:0 9px}.question-count span{color:#96989d;font-size:10px}.setup-footer{color:#87898d;border-top:1px solid #efefef;grid-column:1/-1;justify-content:space-between;align-items:center;padding-top:15px;font-size:10px;display:flex}.practice-question{width:100%;margin:auto}.practice-question>.card-position{text-align:right;margin-top:17px;display:block}.typed-answer{gap:8px;display:flex}.typed-answer input{min-width:0;height:46px;font:inherit;border:1px solid #e6e6e7;border-radius:13px;flex:1;padding:0 13px;font-size:16px}.practice-results{width:100%;margin:auto}.practice-results>.result-actions{justify-content:flex-end;margin:0 0 14px}.answer-review{border:1px solid #ededed;border-radius:15px;gap:7px;margin-top:9px;padding:14px;display:grid}.answer-review>div{color:#878e72;align-items:center;gap:7px;font-size:10px;display:flex}.answer-review.answer-wrong>div{color:#c46b72}.answer-review>strong{font-size:12px;line-height:1.5}.answer-review p,.answer-review small{color:#777980;margin:0;font-size:10px;line-height:1.6}.progress-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.summary-card{background:#fff;border:1px solid #e9e9e9;border-radius:18px;gap:8px;padding:18px;display:grid}.summary-card>span{color:#8b966d}.summary-card small{color:#87898e;font-size:10px}.summary-card strong{font-size:24px;font-weight:500}.progress-panel{margin-top:13px}.progress-panel>.section-card-head>svg{color:#8b966d}.activity-chart{grid-template-columns:repeat(7,1fr);gap:8px;height:160px;padding-top:16px;display:grid}.activity-day{color:#999ba0;grid-template-rows:16px 1fr 16px;justify-items:center;gap:4px;font-size:9px;display:grid}.activity-day>div{justify-content:center;align-items:end;width:100%;display:flex}.activity-day i{background:#cbd2b8;border-radius:7px 7px 3px 3px;width:min(28px,70%);min-height:5px;display:block}.activity-day>span{color:#65686d;font-size:9px}.lesson-accuracy{gap:13px;display:grid}.accuracy-row{grid-template-columns:54px 1fr 110px;align-items:center;gap:11px;font-size:10px;display:grid}.accuracy-track{background:#f0f0ed;border-radius:6px;height:6px;overflow:hidden}.accuracy-track i{border-radius:inherit;background:#a4ad87;height:100%;display:block}.accuracy-row small{color:#8b8d92;font-size:9px}.goal-panel{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.goal-panel>div{flex:1}.goal-panel h2{margin-bottom:5px;font-size:15px}.goal-panel p{color:#85878c;margin:0;font-size:10px}.goal-panel label{color:#66686d;align-items:center;gap:8px;font-size:10px;display:flex}.history-list{display:grid}.history-row{border-top:1px solid #f0f0f0;align-items:center;gap:11px;padding:12px 0;display:flex}.history-mark{background:#f3f4ef;border-radius:14px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:10px;display:grid}.history-row>span:nth-child(2){flex:1;gap:4px;display:grid}.history-row strong{font-size:11px;font-weight:500}.history-row small,.history-row>b,.history-empty{color:#8c8e93;font-size:9px}.history-row>b{font-weight:500}.history-empty{padding:18px 0 0}@media (max-width:900px){.word-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practice-setup{grid-template-columns:1fr}}@media (max-width:620px){.mobile-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.mobile-nav-link{text-align:center;font-size:10px;line-height:1.1}.library-card,.progress-panel,.practice-setup,.review-panel,.practice-results{padding:16px}.word-grid{grid-template-columns:1fr}.word-card{grid-template-columns:1fr auto;display:grid}.word-card-top,.word-korean,.word-meaning,.word-meta,.word-actions{grid-column:1/-1}.practice-modes{grid-template-columns:1fr}.practice-modes>.eyebrow{grid-column:1}.setup-footer{flex-wrap:wrap;gap:10px}.progress-summary-grid{gap:7px}.summary-card{padding:12px 10px}.summary-card strong{font-size:19px}.summary-card small{font-size:8px}.accuracy-row{grid-template-columns:40px 1fr 77px;gap:7px}.goal-panel{flex-direction:column;align-items:flex-start}.goal-panel label{justify-content:space-between;width:100%}.rating-actions .button{flex:auto}}.voice-fallback{color:#7d7f84;background:#f6f6f3;border-radius:12px;margin:0 0 13px;padding:10px 12px;font-size:10px}.goal-error{color:#b64c55;flex-basis:100%;margin:0;font-size:10px}.setup-actions{align-items:center;gap:8px;display:flex}@media (max-width:620px){.setup-actions{width:100%}.setup-actions .button{flex:1;padding:0 9px;font-size:10px}}.review-error,.practice-save-error{color:#a14c53;background:#fff7f7;border:1px solid #f0d8d8;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin:13px 0 0;padding:11px 13px;font-size:10px;display:flex}.practice-save-error{grid-column:1/-1}.flashcard-wrap,.review-flip-wrap{justify-items:center;padding:12px 0 26px;display:grid}.flip-card-stage{perspective:1300px;width:min(560px,100%);position:relative}.flip-card-shadow{pointer-events:none;border:1px solid #3e2b6f1a;border-radius:31px;position:absolute;inset:10px 9px -7px}.flip-card-shadow-one{z-index:1;background:#e9e8e5;transform:rotate(2.2deg)}.flip-card-shadow-two{z-index:0;background:#deddd9;inset:16px 14px -13px;transform:rotate(-2deg)}.flip-card{z-index:2;color:#fff;cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:28px;width:100%;min-height:326px;padding:0;display:block;position:relative;overflow:visible}.flip-card:focus-visible{outline-offset:5px;outline:4px solid #ffcc61}.flip-card-inner{min-height:inherit;transform-style:preserve-3d;transition:transform .68s cubic-bezier(.2,.72,.14,1);display:grid;position:relative}.flip-card-inner.is-flipped{transform:rotateY(180deg)}.flip-card-face{color:#fff;backface-visibility:hidden;min-width:0;box-shadow:0 22px 42px color-mix(in srgb, var(--card-color) 28%, transparent), inset 0 1px 0 #ffffff80;border:1px solid #ffffff8c;border-radius:28px;flex-direction:column;grid-area:1/1;justify-content:center;align-items:center;gap:12px;padding:38px 34px 70px;display:flex;position:relative;overflow:hidden}.flip-card-face:before{content:"";pointer-events:none;border:1px solid #ffffff3b;border-radius:20px;position:absolute;inset:10px}.flip-card-front{background:radial-gradient(circle at 85% 15%, #fff3, transparent 30%), linear-gradient(138deg, color-mix(in srgb, var(--card-color) 88%, #20201f), var(--card-color) 62%, color-mix(in srgb, var(--card-color) 74%, #858581))}.flip-card-back{background:radial-gradient(circle at 10% 95%, #ffffff2b, transparent 37%), linear-gradient(145deg, color-mix(in srgb, var(--card-color) 78%, #20201f), var(--card-color));transform:rotateY(180deg)}.flip-card-orbit{color:#ffffff2e;font-size:160px;line-height:1;position:absolute;top:-39px;right:-10px;transform:rotate(16deg)}.flip-card-kicker,.flip-card-category,.flip-card-index,.flip-card-hint,.flip-card-answer{z-index:1;position:relative}.flip-card-kicker{color:#ffffffc4;letter-spacing:1.45px;text-transform:uppercase;max-width:100%;font-size:10px;font-weight:700}.flip-card-word{z-index:1;overflow-wrap:anywhere;letter-spacing:-.045em;text-shadow:0 4px 15px #160c3726;max-width:100%;font-family:Google Sans,Noto Sans KR,sans-serif;font-size:clamp(48px,9vw,78px);font-weight:600;line-height:1.16;position:relative}.flip-card-category{color:#fff;background:#ffffff26;border:1px solid #ffffff59;border-radius:999px;padding:7px 12px;font-size:10px;font-weight:600}.flip-card-index{color:#ffffffa6;font-variant-numeric:tabular-nums;letter-spacing:.8px;font-size:10px;position:absolute;bottom:24px;right:28px}.flip-card-hint{color:#ffffffc7;letter-spacing:1.15px;font-size:9px;font-weight:700;position:absolute;bottom:27px;left:28px}.flip-card-hint span{margin-left:4px;font-size:13px}.flip-card-meaning{z-index:1;overflow-wrap:anywhere;color:#fff;text-wrap:balance;max-width:100%;font-size:clamp(25px,5vw,42px);font-weight:600;line-height:1.3;position:relative}.flip-card-divider{z-index:1;background:#ffd16a;border-radius:5px;width:42px;height:3px;position:relative}.flip-card-answer{color:#ffffffc2;font-size:17px}.review-flip-wrap{width:100%;padding-bottom:0}.review-last-rating{color:#79748a;margin-top:19px;font-size:10px}@media (max-width:620px){.flashcard-wrap,.review-flip-wrap{padding:5px 0 21px}.flip-card{min-height:282px}.flip-card-face{border-radius:23px;gap:10px;padding:32px 20px 64px}.flip-card-face:before{border-radius:16px;inset:8px}.flip-card-shadow{border-radius:25px;inset:8px 7px -6px}.flip-card-shadow-two{inset:13px 11px -11px}.flip-card-kicker{letter-spacing:1px;font-size:8px}.flip-card-word{font-size:clamp(39px,12vw,60px)}.flip-card-meaning{font-size:clamp(23px,7vw,33px)}.flip-card-index{bottom:20px;right:20px}.flip-card-hint{font-size:8px;bottom:22px;left:19px}}@media (prefers-reduced-motion:reduce){.flip-card-stage{animation:none}.flip-card-inner{transition-duration:.01ms}}.top-loading{top:max(12px, env(safe-area-inset-top));z-index:100;color:#fff;background:#18191b;border-radius:999px;align-items:center;gap:8px;padding:9px 14px;font-size:12px;display:flex;position:fixed;right:16px;box-shadow:0 4px 16px #0003}.top-loading-spinner{border:2px solid #fff5;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite top-loading-spin}@keyframes top-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.top-loading-spinner{animation:none}}.account-trigger{color:#1e3a5f;white-space:nowrap;align-items:center;gap:5px;font-size:12px;text-decoration:none;display:inline-flex}.auth-page{background:#f5f7fa;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100dvh;display:grid}.auth-story{color:#fff;background:radial-gradient(circle at 90% 15%,#456d98,#0000 40%),linear-gradient(145deg,#142b49,#233f63 60%,#344f72);flex-direction:column;justify-content:space-between;min-height:100dvh;padding:40px clamp(32px,5vw,80px);display:flex;position:relative;overflow:hidden}.auth-story:after{content:"한";color:#ffffff0a;pointer-events:none;font:700 420px/1 Noto Sans KR,sans-serif;position:absolute;bottom:-110px;right:-30px}.auth-logo{color:#fff;letter-spacing:-1px;font-size:28px;font-weight:700;text-decoration:none}.auth-logo span{color:#b5d1ee;margin-left:5px}.auth-story-content{z-index:1;max-width:530px;position:relative}.auth-eyebrow{color:#7597bc;letter-spacing:.14em;font-size:11px;font-weight:700}.auth-story .auth-eyebrow{color:#b5d1ee}.auth-story h1{letter-spacing:-.04em;margin:20px 0;font-size:clamp(34px,4vw,56px);font-weight:500;line-height:1.16}.auth-story h1 span{color:#b9d3ee}.auth-story-content>p:not(.auth-eyebrow){color:#e2ebf5;max-width:400px;line-height:1.7}.auth-story-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff18;border:1px solid #ffffff38;border-radius:20px;align-items:center;gap:16px;max-width:440px;margin-top:38px;padding:20px;display:flex}.auth-story-card span{flex:1}.auth-story-card strong,.auth-story-card small{display:block}.auth-story-card small{color:#d3e2f2;margin-top:5px;line-height:1.5}.auth-story-footer{z-index:1;color:#bbccde;font-size:12px;position:relative}.auth-form-area{place-items:center;padding:90px 24px;display:grid;position:relative}.auth-back{color:#566a82;align-items:center;gap:8px;font-size:13px;text-decoration:none;display:flex;position:absolute;top:38px;left:40px}.auth-form-card{width:min(100%,420px)}.auth-form-card h2{color:#142b49;letter-spacing:-.04em;margin:12px 0;font-size:clamp(30px,3vw,40px);font-weight:500}.auth-description{color:#728197;font-size:14px;line-height:1.6}.auth-form{gap:18px;margin-top:30px;display:grid}.auth-form label{color:#34465d;gap:8px;font-size:13px;font-weight:600;display:grid}.auth-form input{width:100%;min-height:50px;font:inherit;color:#142b49;background:#fff;border:1px solid #dbe3ed;border-radius:14px;padding:0 15px}.auth-form input:focus-visible{outline-offset:2px;outline:2px solid #416b9b}.auth-submit{color:#fff;width:100%;min-height:51px;font:inherit;cursor:pointer;background:#1e3a5f;border:0;border-radius:14px;justify-content:center;align-items:center;font-weight:600;text-decoration:none;display:flex}.auth-submit:disabled{opacity:.6;cursor:wait}.auth-switch-line{color:#728197;text-align:center;margin:22px 0;font-size:13px}.auth-switch{color:#234e7e;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700}.auth-note{color:#8794a4;align-items:flex-start;gap:8px;font-size:11px;line-height:1.5;display:flex}.auth-error{color:#b53030;font-size:13px}.auth-icon{color:#1e3a5f;background:#e8eef6;border-radius:16px;place-items:center;width:52px;height:52px;display:grid}@media (max-width:620px){.account-trigger{font-size:11px}.topbar-right .course-pill{display:none}.auth-page{display:block}.auth-story{min-height:auto;padding:25px 24px 30px}.auth-story-content{margin-top:38px}.auth-story h1{margin:12px 0;font-size:32px}.auth-story-card,.auth-story-footer{display:none}.auth-story:after{font-size:190px;bottom:-50px}.auth-form-area{padding:68px 24px 40px;display:block}.auth-back{top:25px;left:24px}.auth-form-card{margin:0 auto}}.review-save-banner{color:#1e3a5f;background:#edf3fa;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:12px 24px 0;padding:12px 16px;font-size:13px;display:flex}.review-save-banner[role=alert]{color:#a6422b;background:#fff2ee}.review-save-banner button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700;text-decoration:underline}@media (max-width:620px){.lesson-select{max-width:100%;min-height:44px}.lesson-select.filter-select{flex:140px;min-width:0}.select-item{min-height:44px;font-size:13px}}
