:root{color:#4f3c31;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#f8efd9;--surface:#fffaf0;--surface-soft:#f9eedb;--surface-strong:#edddc4;--text:#4f3c31;--text-soft:#776257;--text-faint:#9a8070;--border:#dec9aa;--border-strong:#c9aa82;--accent:#c58b3a;--accent-strong:#a66f27;--accent-soft:#fff0c8;--sidebar:#f1dfbf;--sidebar-soft:#fff3d7;--sidebar-text:#563f30;--danger:#b76161;--danger-soft:#f9e2dd;--warning:#b97a35;--success:#638764;--success-soft:#e4efdf;--shadow-sm:0 4px 0 #7b562f0a, 0 12px 28px #714d2a17;--shadow-lg:0 24px 70px #65452629;--neon-glow:0 8px 26px #ba7d352e;--radius-sm:11px;--radius:18px;--radius-lg:28px;--home-color:#c59036;--home-soft:#fff0bd;--library-color:#71966e;--library-soft:#e4efdd;--practice-color:#d27d67;--practice-soft:#f8dfd5;--grammar-color:#8d7bb4;--grammar-soft:#eae3f3;--progress-color:#6794a4;--progress-soft:#deedf0;--settings-color:#ad7888;--settings-soft:#f2e1e6;background:#f8efd9;font-family:Avenir Next,Segoe UI,Noto Sans KR,ui-sans-serif,system-ui,sans-serif}:root[data-theme=neon],:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{color:#f8eee7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#211915;--surface:#30241e;--surface-soft:#281e19;--surface-strong:#47372e;--text:#f8eee7;--text-soft:#d3c1b5;--text-faint:#aa9182;--border:#59483c;--border-strong:#786151;--sidebar:#2a201b;--sidebar-soft:#47362d;--sidebar-text:#fff6ee;--danger:#ef8d87;--danger-soft:#4a2928;--warning:#efb46c;--success:#95c08f;--success-soft:#2c412d;--shadow-sm:0 12px 30px #00000040;--shadow-lg:0 30px 80px #0000007a;--neon-glow:0 10px 28px #00000047;background:#211915}@media (prefers-color-scheme:dark){:root[data-theme=system]{color:#f8eee7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#211915;--surface:#30241e;--surface-soft:#281e19;--surface-strong:#47372e;--text:#f8eee7;--text-soft:#d3c1b5;--text-faint:#aa9182;--border:#59483c;--border-strong:#786151;--sidebar:#2a201b;--sidebar-soft:#47362d;--sidebar-text:#fff6ee;--danger:#ef8d87;--danger-soft:#4a2928;--warning:#efb46c;--success:#95c08f;--success-soft:#2c412d;--shadow-sm:0 12px 30px #00000040;--shadow-lg:0 30px 80px #0000007a;--neon-glow:0 10px 28px #00000047;background:#211915}}*{box-sizing:border-box}html{background:var(--bg);min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;color:var(--text);background-color:var(--bg);background-image:linear-gradient(90deg,#e2a85921 25%,#0000 25% 75%,#e2a85921 75%),linear-gradient(#e2a85921 25%,#0000 25% 75%,#e2a85921 75%),linear-gradient(90deg,#ffffff3d 50%,#0000 50%),linear-gradient(#ffffff3d 50%,#0000 50%);background-size:68px 68px,68px 68px,34px 34px,34px 34px;background-attachment:fixed;margin:0}:root[data-theme=dark] body{background-image:linear-gradient(90deg,#d296520b 25%,#0000 25% 75%,#d296520b 75%),linear-gradient(#d296520b 25%,#0000 25% 75%,#d296520b 75%);background-size:68px 68px}@media (prefers-color-scheme:dark){:root[data-theme=system] body{background-image:linear-gradient(90deg,#d296520b 25%,#0000 25% 75%,#d296520b 75%),linear-gradient(#d296520b 25%,#0000 25% 75%,#d296520b 75%);background-size:68px 68px}}button,input,select,textarea{font:inherit}button{color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 45%, transparent);outline-offset:3px}input,select,textarea{border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;min-height:42px;color:var(--text);background:color-mix(in srgb, var(--surface) 96%, transparent);padding:9px 11px;transition:border-color .18s,box-shadow .18s,background .18s}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb, var(--accent) 55%, var(--border-strong))}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 16%, transparent), var(--neon-glow);outline:none}textarea{resize:vertical;min-height:94px}input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--accent)}input[type=range]{box-shadow:none;accent-color:var(--accent);background:0 0;border:0;padding:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--text);letter-spacing:-.025em}h1{margin-bottom:14px;font-size:clamp(2rem,4vw,3.2rem);line-height:1.05}h2{margin-bottom:8px;font-size:clamp(1.3rem,2vw,1.75rem);line-height:1.15}h3{margin-bottom:8px;font-size:1.03rem}p{color:var(--text-soft);line-height:1.62}small{color:var(--text-soft)}svg{flex:none;width:20px;height:20px;display:block}::selection{color:#fff;background:color-mix(in srgb, var(--accent) 58%, transparent)}.reduced-motion *,.reduced-motion :before,.reduced-motion :after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}#root{min-height:100vh}.app-shell{grid-template-columns:244px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{z-index:30;border-right:1px solid color-mix(in srgb, var(--accent) 24%, var(--border));width:244px;color:var(--sidebar-text);background:radial-gradient(circle at 35% 0%, #ff2fae2e, transparent 23rem), var(--sidebar);flex-direction:column;padding:22px 16px 18px;display:flex;position:fixed;inset:0 auto 0 0;box-shadow:18px 0 60px #00000047}.brand{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:11px;padding:2px 5px 22px;display:flex}.brand-mark{color:#fff;width:42px;height:42px;box-shadow:inset 0 1px 0 #fff3, var(--neon-glow);background:linear-gradient(145deg,#ff4fbd,#8b0b72);border:1px solid #fff3;border-radius:13px;place-items:center;font-size:1.25rem;font-weight:800;display:grid}.brand strong,.brand small{display:block}.brand strong{letter-spacing:.01em;font-size:1rem}.brand small{color:#effaf6ad;letter-spacing:.035em;margin-top:1px;font-size:.76rem}.main-nav{flex-direction:column;gap:5px;display:flex}.main-nav button{color:#effaf6b8;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:11px;align-items:center;gap:12px;min-height:46px;padding:0 13px;transition:background .18s,color .18s,transform .18s;display:flex;position:relative}.main-nav button:hover{color:#fff;background:#ffffff12}.main-nav button.active{color:#fff;background:var(--sidebar-soft);box-shadow:inset 3px 0 0 var(--accent), 0 0 24px #ff2fae21}.main-nav button svg{width:19px;height:19px}.main-nav button span{flex:1;font-size:.91rem;font-weight:620}.main-nav button b{color:#2c071f;background:#ff8bd5;border-radius:11px;place-items:center;min-width:21px;height:21px;font-size:.7rem;display:grid}.sidebar-status{border-top:1px solid #ffffff1a;align-items:center;gap:10px;margin-top:auto;padding:14px 10px;display:flex}.sidebar-status strong,.sidebar-status small{display:block}.sidebar-status strong{font-size:.78rem}.sidebar-status small{color:#effaf694;margin-top:2px;font-size:.69rem}.local-dot{background:var(--accent);border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #ff2fae1f,0 0 14px #ff2faeb3}.sidebar-add{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:43px;font-size:.84rem;font-weight:700;display:flex}.sidebar-add svg{width:17px;height:17px}.app-main{grid-column:2;min-width:0}.app-topbar{z-index:20;border-bottom:1px solid color-mix(in srgb, var(--border) 82%, transparent);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);justify-content:space-between;align-items:center;height:64px;padding:0 34px;display:flex;position:sticky;top:0}.breadcrumb{color:var(--text-faint);align-items:center;gap:8px;font-size:.78rem;display:flex}.breadcrumb svg{width:13px;height:13px}.breadcrumb strong{color:var(--text)}.topbar-actions{align-items:center;gap:12px;display:flex}.offline-pill{border:1px solid var(--border);color:var(--text-soft);background:var(--surface);border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:.72rem;font-weight:650;display:flex}.offline-pill span{background:var(--success);border-radius:50%;width:7px;height:7px}.avatar-button{border:1px solid color-mix(in srgb, var(--accent) 55%, white 10%);color:#fff;background:linear-gradient(145deg, var(--accent-strong), var(--accent));cursor:pointer;width:35px;height:35px;box-shadow:var(--neon-glow);border-radius:11px;place-items:center;font-weight:800;display:grid}.workspace{width:min(1420px,100%);margin:0 auto;padding:34px clamp(22px,4vw,54px) 70px}.view-stack{flex-direction:column;gap:24px;display:flex}.view-header{justify-content:space-between;align-items:flex-end;gap:24px;padding:4px 0 8px;display:flex}.view-header h1{margin-bottom:10px}.view-header p{max-width:720px;margin-bottom:0}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:7px;margin-bottom:9px;font-size:.69rem;font-weight:800;display:inline-flex}.eyebrow svg{width:14px;height:14px}.header-actions,.hero-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:41px;padding:9px 14px;font-size:.82rem;font-weight:730;transition:transform .17s,background .17s,border-color .17s,opacity .17s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.5}.button svg{width:17px;height:17px}.button.subtle{border-color:var(--border-strong);color:var(--text);background:var(--surface)}.button.subtle:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 42%, var(--border));background:var(--surface-soft)}.button.danger,.button.tiny.danger{border-color:color-mix(in srgb, var(--danger) 30%, var(--border));color:var(--danger);background:var(--danger-soft)}.button.full{width:100%}.button.large{min-height:49px;padding:12px 17px}.button.tiny{min-height:34px;padding:6px 10px;font-size:.74rem}.icon-button{border:1px solid var(--border);width:36px;height:36px;color:var(--text-soft);background:var(--surface);cursor:pointer;border-radius:9px;place-items:center;padding:0;display:grid}.icon-button:hover{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, var(--border));background:var(--accent-soft)}.icon-button svg{width:17px;height:17px}.text-button{color:var(--accent);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:4px;font-size:.78rem;font-weight:720;display:inline-flex}.text-button svg{width:14px;height:14px}.panel{border:1px solid var(--border);border-radius:var(--radius);background:color-mix(in srgb, var(--surface) 96%, transparent);box-shadow:var(--shadow-sm)}.panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:18px;padding:21px 22px 17px;display:flex}.panel-header h2,.panel-header p{margin-bottom:0}.panel-header p{margin-top:5px}.content-grid{gap:22px;display:grid}.content-grid.two-one{grid-template-columns:minmax(0,1.55fr) minmax(290px,.85fr)}.mobile-nav{display:none}.hero-card{border-radius:var(--radius-lg);color:#fff7fd;background:radial-gradient(circle at 76% 10%,#ff56c447,#0000 31%),radial-gradient(circle at 92% 95%,#6926ff33,#0000 36%),linear-gradient(135deg,#170719,#3b0d35 58%,#62104c);border:1px solid #ff56c459;align-items:center;min-height:322px;padding:clamp(30px,5vw,58px);display:flex;position:relative;overflow:hidden;box-shadow:0 26px 70px #0000006b,0 0 48px #ff2fae29}.hero-card:after{content:"";border:1px solid #ffffff1f;border-radius:50%;height:330px;position:absolute;inset:auto -8% -52% 38%;transform:rotate(-8deg)}.hero-copy{z-index:2;max-width:650px;position:relative}.hero-copy h1{color:#fff;max-width:620px;font-size:clamp(2.5rem,5vw,4.25rem)}.hero-copy p{color:#f4fffbbd;max-width:600px;margin-bottom:26px;font-size:1.02rem}.hero-hangul{opacity:.92;gap:9px;display:flex;position:absolute;top:50%;right:clamp(24px,5vw,72px);transform:translateY(-50%)rotate(-8deg)}.hero-hangul span{color:#ffffffe6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff14;border:1px solid #ffffff2e;border-radius:20px;place-items:center;width:86px;height:104px;font-size:3rem;font-weight:800;display:grid;box-shadow:0 18px 40px #0000001f}.hero-hangul span:nth-child(2){transform:translateY(26px)}.hero-hangul span:nth-child(3){transform:translateY(-13px)}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.metric-card{border:1px solid var(--border);min-height:92px;color:var(--text);background:var(--surface);box-shadow:var(--shadow-sm);text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:13px;padding:16px;display:flex}.metric-card.static{cursor:default}.metric-card:not(.static):hover{border-color:color-mix(in srgb, var(--accent) 32%, var(--border));transform:translateY(-1px)}.metric-card strong,.metric-card small{display:block}.metric-card strong{letter-spacing:-.03em;font-size:1.45rem;line-height:1}.metric-card small{margin-top:6px;font-size:.72rem}.metric-icon{border-radius:12px;place-items:center;width:43px;height:43px;display:grid}.metric-icon svg{width:20px;height:20px}.metric-icon.warm{color:#ffb15a;background:#3b2114}.metric-icon.cool{color:#72d7ff;background:#102c3a}.metric-icon.violet{color:#c69aff;background:#271440}.metric-icon.green{color:var(--success);background:var(--success-soft)}:root:is([data-theme=dark],[data-theme=neon]) .metric-icon.warm{background:#452c1d}:root:is([data-theme=dark],[data-theme=neon]) .metric-icon.cool{background:#1c3445}:root:is([data-theme=dark],[data-theme=neon]) .metric-icon.violet{background:#2e2645}:root:is([data-theme=dark],[data-theme=neon]) .metric-icon.green{background:#1a382d}.focus-list{padding:4px 18px 14px}.focus-row{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px 4px;display:grid}.focus-row:last-child{border-bottom:0}.focus-row:hover .focus-copy strong{color:var(--accent)}.korean-badge{width:40px;height:40px;color:var(--accent);background:var(--accent-soft);border-radius:12px;place-items:center;font-weight:800;display:grid}.focus-copy strong,.focus-copy small{display:block}.focus-copy strong{font-size:1.08rem}.focus-copy small{margin-top:3px;font-size:.72rem}.word-class{width:max-content;color:var(--text-soft);background:var(--surface-strong);white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:.66rem;font-weight:700;display:inline-flex}.difficulty-dots{gap:3px;display:flex}.difficulty-dots i{background:var(--border-strong);border-radius:50%;width:5px;height:5px}.difficulty-dots i.filled{background:var(--warning)}.tag-cloud{flex-wrap:wrap;gap:8px;padding:20px 21px 12px;display:flex}.tag-chip{border:1px solid var(--border);min-height:32px;color:var(--text-soft);background:var(--surface-soft);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:6px 10px;font-size:.7rem;font-weight:680;display:inline-flex}.tag-chip:hover,.tag-chip.active{border-color:color-mix(in srgb, var(--accent) 48%, var(--border));color:var(--accent);background:var(--accent-soft)}.tag-chip.large{min-height:36px;padding:7px 11px}.tag-chip.compact{cursor:default;min-height:25px;padding:4px 7px;font-size:.62rem}.tag-marker{background:#8a9692;border-radius:50%;width:8px;height:8px}.marker-mint{background:#39a985}.marker-blue{background:#4d8cc5}.marker-orange{background:#dc8645}.marker-rose{background:#ca6673}.marker-violet{background:#876cca}.marker-slate{background:#87938f}.organization-cta{border:1px dashed var(--border-strong);width:calc(100% - 40px);color:var(--text);background:var(--surface-soft);cursor:pointer;text-align:left;border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;margin:10px 20px 20px;padding:13px;display:grid}.organization-cta>span{width:34px;height:34px;color:var(--accent);background:var(--accent-soft);border-radius:10px;place-items:center;display:grid}.organization-cta strong,.organization-cta small{display:block}.organization-cta small{margin-top:2px;font-size:.68rem}.organization-cta>svg{width:15px}.quick-paths{overflow:hidden}.path-grid{grid-template-columns:repeat(3,1fr);display:grid}.path-grid button{border:0;border-right:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;background:0 0;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:22px;display:grid}.path-grid button:last-child{border-right:0}.path-grid button>svg:first-child{width:24px;height:24px;color:var(--accent)}.path-grid button>svg:last-child{width:15px}.path-grid strong,.path-grid small{display:block}.path-grid small{margin-top:4px;font-size:.7rem;line-height:1.4}.organizer-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.organizer-strip form{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;padding:7px 8px 7px 12px;display:grid}.organizer-strip form>svg{width:17px;color:var(--text-faint)}.organizer-strip input{min-height:34px;box-shadow:none;background:0 0;border:0;padding:4px 6px}.organizer-strip button{width:31px;height:31px;color:var(--accent);background:var(--accent-soft);cursor:pointer;border:0;border-radius:8px;place-items:center;display:grid}.organizer-strip button svg{width:15px}.library-layout{grid-template-columns:245px minmax(0,1fr);align-items:start;gap:20px;display:grid}.filter-panel{flex-direction:column;gap:15px;padding:18px;display:flex;position:sticky;top:84px}.filter-panel label>span,.editor-form label>span,.session-builder label>span,.lab-controls label>span,.inline-create label>span,.form-grid label>span{color:var(--text-soft);margin-bottom:6px;font-size:.68rem;font-weight:760;display:block}.search-field{position:relative}.search-field svg{width:16px;color:var(--text-faint);position:absolute;top:50%;left:11px;transform:translateY(-50%)}.search-field input{padding-left:34px}.filter-group{flex-direction:column;gap:9px;display:flex}.filter-label{color:var(--text-soft);justify-content:space-between;align-items:center;font-size:.68rem;font-weight:760;display:flex}.filter-label select{width:auto;min-height:29px;padding:3px 7px;font-size:.65rem}.tag-filter-list{flex-wrap:wrap;gap:6px;display:flex}.toggle-row{justify-content:space-between;align-items:center;display:flex}.toggle-row span{margin:0!important}.toggle-row input{width:18px}.library-main{min-width:0}.library-toolbar{min-height:52px;color:var(--text-soft);justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px;font-size:.75rem;display:flex}.library-toolbar strong{color:var(--text)}.bulk-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.bulk-tools select{width:auto;min-width:132px;min-height:35px;padding:5px 8px;font-size:.72rem}.entry-list{flex-direction:column;gap:9px;display:flex}.entry-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px;grid-template-columns:auto minmax(230px,1.2fr) minmax(190px,.9fr) auto;align-items:center;gap:15px;padding:15px 15px 15px 13px;display:grid}.entry-card:hover{border-color:color-mix(in srgb, var(--accent) 26%, var(--border))}.entry-card.archived{opacity:.58}.entry-select input{width:17px;height:17px;min-height:17px}.entry-primary{min-width:0}.entry-korean{align-items:baseline;gap:8px;display:flex}.entry-korean strong{color:var(--text);font-size:1.28rem}.entry-korean small{font-size:.66rem}.entry-primary>p{margin:3px 0 0;font-size:.8rem}.entry-primary blockquote{border-left:2px solid var(--accent);color:var(--text-soft);margin:9px 0 0;padding-left:10px;font-size:.72rem}.entry-primary blockquote small{margin-top:2px;font-size:.65rem;display:block}.entry-meta{flex-wrap:wrap;align-items:flex-start;gap:7px 9px;min-width:0;display:flex}.entry-meta>span:not(.word-class){color:var(--text-soft);align-items:center;gap:5px;font-size:.67rem;display:inline-flex}.entry-meta svg{width:13px;height:13px}.entry-tags{flex-wrap:wrap;gap:5px;width:100%;display:flex}.entry-actions{flex-direction:column;gap:6px;display:flex}.empty-state{border:1px dashed var(--border-strong);text-align:center;background:var(--surface-soft);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:310px;padding:30px;display:flex}.empty-state>span{width:52px;height:52px;color:var(--accent);background:var(--accent-soft);border-radius:16px;place-items:center;margin-bottom:16px;display:grid}.empty-state h3{margin-bottom:5px}.empty-state p{max-width:390px;margin-bottom:17px}.empty-compact{color:var(--text-soft);text-align:center;padding:26px 12px;font-size:.75rem}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#07151294;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--border);background:var(--surface);width:min(580px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-lg);border-radius:20px;overflow:hidden}.modal.modal-wide{width:min(920px,100%)}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px;display:flex}.modal-header h2{margin-bottom:5px}.modal-header p{margin-bottom:0;font-size:.78rem}.modal-body{max-height:calc(100vh - 132px);padding:22px 24px 24px;overflow-y:auto}.editor-form{flex-direction:column;gap:20px;display:flex}.form-grid{gap:13px;display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid .span-two{grid-column:1/-1}.editor-form label small{font-weight:500}.choice-fieldset,.relationship-box{border:1px solid var(--border);border-radius:12px;min-width:0;margin:0;padding:13px}.choice-fieldset legend,.relationship-box legend{color:var(--text-soft);padding:0 6px;font-size:.7rem;font-weight:760}.relationship-box legend{align-items:center;gap:5px;display:flex}.relationship-box legend svg{width:14px}.choice-cloud{flex-wrap:wrap;gap:7px;display:flex}.choice-chip{border:1px solid var(--border);min-height:35px;color:var(--text-soft);background:var(--surface-soft);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:.69rem;font-weight:680;display:inline-flex!important}.choice-chip.selected{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));color:var(--accent);background:var(--accent-soft)}.choice-chip input{opacity:0;pointer-events:none;position:absolute}.choice-chip svg{width:13px;height:13px}.modal-actions{justify-content:flex-end;gap:9px;padding-top:3px;display:flex}.inline-create{grid-template-columns:1fr auto;align-items:end;gap:10px;margin-bottom:18px;display:grid}.manager-list{flex-direction:column;gap:7px;display:flex}.manager-row{border:1px solid var(--border);background:var(--surface-soft);border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:7px 8px 7px 12px;display:grid}.manager-row input{min-height:35px}.merge-box{border-top:1px solid var(--border);margin-top:20px;padding-top:18px}.merge-box p{margin-bottom:14px;font-size:.76rem}.align-end{align-self:end}.session-builder-grid{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:22px;display:grid}.session-builder{flex-direction:column;gap:17px;padding:0 22px 22px;display:flex}.session-builder .panel-header{margin:0 -22px}.pool-count,.lab-count{color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:6px 9px;font-size:.69rem;font-weight:760}.range-value{color:var(--accent);margin-top:-4px;font-size:.75rem;display:block}.focus-notice{border:1px solid color-mix(in srgb, var(--accent) 30%, var(--border));background:var(--accent-soft);border-radius:12px;align-items:center;gap:10px;padding:12px;display:flex}.focus-notice>svg{color:var(--accent)}.focus-notice strong,.focus-notice small{display:block}.focus-notice small{margin-top:2px;font-size:.7rem}.exercise-preview{padding:24px}.exercise-preview>p{font-size:.78rem}.exercise-type-list{flex-direction:column;gap:0;margin-top:14px;display:flex}.exercise-type-list>div{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr;gap:0 10px;padding:10px 0;display:grid}.exercise-type-list>div:last-child{border-bottom:0}.exercise-type-list span{color:var(--text-faint);grid-row:span 2;font-size:.62rem;font-weight:800}.exercise-type-list strong{font-size:.78rem}.exercise-type-list small{margin-top:2px;font-size:.64rem}.result-hero{grid-template-columns:auto 1fr auto;align-items:center;gap:22px;padding:24px;display:grid}.result-ring{border:8px solid var(--accent-soft);border-top-color:var(--accent);width:84px;height:84px;color:var(--accent);border-radius:50%;place-items:center;font-size:1.35rem;font-weight:850;display:grid}.result-hero h2,.result-hero p{margin-bottom:0}.practice-stage{flex-direction:column;min-height:calc(100vh - 168px);display:flex}.practice-topbar{grid-template-columns:auto minmax(130px,1fr) auto;align-items:center;gap:20px;width:min(920px,100%);margin:0 auto 24px;display:grid}.session-progress{background:var(--surface-strong);border-radius:999px;height:7px;overflow:hidden}.session-progress>div{border-radius:inherit;background:var(--accent);height:100%;transition:width .25s}.practice-topbar>span{color:var(--text-soft);font-size:.72rem;font-weight:700}.exercise-card{border:1px solid color-mix(in srgb, var(--accent) 24%, var(--border));background:color-mix(in srgb, var(--surface) 97%, transparent);border-radius:22px;width:min(860px,100%);margin:auto;padding:clamp(24px,5vw,52px);box-shadow:0 24px 70px #0000006b,0 0 40px #ff2fae1a}.exercise-meta{color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;font-size:.67rem;font-weight:750;display:flex}.exercise-prompt{text-align:center;padding:42px 0 32px}.exercise-prompt h1{margin:0;font-size:clamp(2rem,5vw,3.5rem)}.answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.answer-choice{border:1px solid var(--border-strong);min-height:58px;color:var(--text);background:var(--surface-soft);cursor:pointer;text-align:left;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;display:flex}.answer-choice:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);box-shadow:var(--neon-glow)}.answer-choice.correct{border-color:var(--success);color:var(--success);background:var(--success-soft)}.answer-choice.wrong{color:#a33e3e;background:#fceaea;border-color:#c96767}:root:is([data-theme=dark],[data-theme=neon]) .answer-choice.correct{color:#7ee0b4;background:#17382c}:root:is([data-theme=dark],[data-theme=neon]) .answer-choice.wrong{color:#f39898;background:#3d2020}.typed-answer{grid-template-columns:1fr auto;gap:10px;display:grid}.typed-answer input{min-height:52px;padding:12px 15px;font-size:1.04rem}.pair-board{gap:9px;margin-bottom:12px;display:grid}.pair-board label{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;grid-template-columns:minmax(90px,.5fr) 1fr;align-items:center;gap:13px;padding:10px 11px 10px 16px;display:grid}.pair-board strong{font-size:1.15rem}.answer-feedback{border-radius:13px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:18px;padding:14px;display:grid}.answer-feedback.correct{color:var(--success);background:var(--success-soft)}.answer-feedback.wrong{color:#a23f3f;background:#fceaea}:root:is([data-theme=dark],[data-theme=neon]) .answer-feedback.correct{color:#86e0ba;background:#17382c}:root:is([data-theme=dark],[data-theme=neon]) .answer-feedback.wrong{color:#f49a9a;background:#3d2020}.feedback-icon{background:color-mix(in srgb, currentColor 12%, transparent);border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.answer-feedback strong,.answer-feedback p{color:inherit;margin:0;display:block}.answer-feedback p{margin-top:3px;font-size:.75rem;line-height:1.45}.source-badge{border:1px solid var(--border);color:var(--text-soft);background:var(--surface);border-radius:999px;align-items:center;gap:7px;padding:8px 11px;font-size:.7rem;font-weight:700;display:inline-flex}.source-badge svg{width:14px;color:var(--accent)}.grammar-layout{grid-template-columns:310px minmax(0,1fr);align-items:start;gap:20px;display:grid}.lesson-list{padding:22px;position:sticky;top:84px}.lesson-list h2{margin-bottom:16px}.lesson-list nav{flex-direction:column;gap:5px;display:flex}.lesson-list nav button{color:var(--text-soft);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:11px;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:11px 10px;display:grid}.lesson-list nav button:hover{background:var(--surface-soft)}.lesson-list nav button.active{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));color:var(--text);background:var(--accent-soft)}.lesson-list nav button>span{color:var(--text-faint);font-size:.61rem;font-weight:800}.lesson-list nav strong,.lesson-list nav small{display:block}.lesson-list nav strong{font-size:.76rem}.lesson-list nav small{margin-top:3px;font-size:.62rem;line-height:1.35}.lesson-list nav svg{width:13px}.lesson-content{padding:clamp(24px,4vw,42px)}.lesson-content>header{border-bottom:1px solid var(--border);padding-bottom:22px}.lesson-content>header h2{font-size:clamp(1.75rem,3vw,2.5rem)}.lesson-objective{margin-bottom:0;font-size:.95rem}.lesson-content>section{padding:24px 0 0}.lesson-content>section p{font-size:.87rem}.formation-rule{border-left:3px solid var(--accent);background:var(--surface-soft);border-radius:0 12px 12px 0;gap:5px;margin-top:17px;padding:13px 15px;display:grid}.formation-rule span{color:var(--text-faint);text-transform:uppercase;letter-spacing:.09em;font-size:.63rem;font-weight:800}.formation-rule strong{font-size:1.05rem}.example-list{gap:8px;display:grid}.example-list>div{border:1px solid var(--border);background:var(--surface-soft);border-radius:11px;grid-template-columns:minmax(180px,.8fr) 1fr;gap:15px;padding:12px 14px;display:grid}.example-list strong{font-size:.95rem}.example-list span{color:var(--text-soft);font-size:.78rem}.mistake-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.mistake-list li{color:var(--text-soft);align-items:flex-start;gap:8px;font-size:.8rem;display:flex}.mistake-list svg{width:15px;color:var(--danger);margin-top:2px}.compatibility-note{color:var(--accent);background:var(--accent-soft);border-radius:13px;gap:11px;margin-top:26px;padding:15px;display:flex}.compatibility-note>svg{margin-top:2px}.compatibility-note strong,.compatibility-note p{display:block}.compatibility-note p{color:var(--text-soft);margin:3px 0 0;font-size:.75rem}.conjugation-lab{overflow:hidden}.lab-grid{grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);display:grid}.lab-controls{border-right:1px solid var(--border);background:var(--surface-soft);flex-direction:column;gap:15px;padding:24px;display:flex}.verb-metadata{flex-wrap:wrap;gap:7px;display:flex}.verb-metadata>span:not(.word-class){color:var(--text-soft);background:var(--surface-strong);border-radius:999px;padding:5px 8px;font-size:.65rem}.verb-metadata>div{flex-wrap:wrap;gap:5px;width:100%;display:flex}.scope-warning{border-top:1px solid var(--border);gap:8px;padding-top:14px;display:flex}.scope-warning svg{width:15px;color:var(--accent);margin-top:3px}.scope-warning p{margin:0;font-size:.7rem;line-height:1.5}.conjugation-result{flex-direction:column;justify-content:center;min-height:390px;padding:clamp(26px,5vw,54px);display:flex}.conjugation-arrow{align-items:center;gap:18px;margin:18px 0 28px;display:flex}.conjugation-arrow span{color:var(--text-soft);font-size:clamp(1.4rem,3vw,2.2rem)}.conjugation-arrow strong{color:var(--accent);font-size:clamp(2.2rem,5vw,4rem)}.conjugation-arrow svg{color:var(--text-faint)}.conjugation-result dl{gap:8px;margin:0;display:grid}.conjugation-result dl>div{border-bottom:1px solid var(--border);grid-template-columns:130px 1fr;gap:12px;padding:8px 0;display:grid}.conjugation-result dt{color:var(--text-faint);font-size:.68rem;font-weight:760}.conjugation-result dd{color:var(--text-soft);margin:0;font-size:.78rem}.explanation-box{background:var(--accent-soft);border-radius:12px;margin-top:22px;padding:14px}.explanation-box strong{color:var(--accent);font-size:.75rem}.explanation-box p{margin:5px 0 0;font-size:.76rem}.error-box{color:var(--danger)}.bar-list{gap:17px;padding:22px;display:grid}.bar-heading{justify-content:space-between;gap:12px;margin-bottom:7px;display:flex}.bar-heading strong{font-size:.76rem}.bar-heading span{color:var(--text-soft);font-size:.68rem}.bar-track,.mini-track{background:var(--surface-strong);border-radius:999px;height:7px;overflow:hidden}.bar-track i,.mini-track i{border-radius:inherit;background:var(--accent);height:100%;display:block}.weak-list{flex-direction:column;padding:6px 18px 13px;display:flex}.weak-list>div:not(.empty-compact){border-bottom:1px solid var(--border);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px 2px;display:grid}.weak-list>div:last-child{border-bottom:0}.weak-list .korean-badge{border-radius:10px;width:35px;height:35px}.weak-list strong,.weak-list small{display:block}.weak-list small{margin-top:2px;font-size:.64rem}.weak-list>div>span:last-child{color:var(--danger);font-size:.67rem;font-weight:750}.tag-performance-grid{grid-template-columns:repeat(3,1fr);gap:12px;padding:20px 22px 24px;display:grid}.tag-performance-grid>div{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;grid-template-columns:auto 1fr;gap:2px 8px;padding:13px;display:grid}.tag-performance-grid .tag-marker{grid-row:span 2;margin-top:5px}.tag-performance-grid strong{font-size:.76rem}.tag-performance-grid small{font-size:.63rem}.tag-performance-grid .mini-track{grid-column:1/-1;height:5px;margin-top:8px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.settings-section{padding:22px}.settings-section>header{border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;padding-bottom:17px;display:flex}.settings-section>header h2{margin-bottom:4px}.settings-section>header p{margin:0;font-size:.72rem}.settings-icon{width:38px;height:38px;color:var(--accent);background:var(--accent-soft);border-radius:11px;place-items:center;display:grid}.settings-icon svg{width:18px}.setting-row,.data-action{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:15px 0;display:flex}.setting-row:last-child,.data-action:last-child{border-bottom:0;padding-bottom:0}.setting-row strong,.setting-row small,.data-action strong,.data-action small{display:block}.setting-row strong,.data-action strong{font-size:.78rem}.setting-row small,.data-action small{margin-top:3px;font-size:.65rem;line-height:1.4}.setting-row input{flex:none;width:18px}.setting-row select{flex:none;width:130px}.data-action .button{flex:none}.local-data-note{color:var(--accent);background:var(--accent-soft);border-radius:12px;gap:10px;margin-top:16px;padding:13px;display:flex}.local-data-note svg{margin-top:2px}.local-data-note strong{font-size:.75rem}.local-data-note p{margin:3px 0 0;font-size:.68rem}.danger-zone{border-color:color-mix(in srgb, var(--danger) 24%, var(--border));justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}.danger-zone h2{margin-bottom:4px;font-size:1rem}.danger-zone p{margin:0;font-size:.72rem}.onboarding-shell{background:radial-gradient(circle at 20% 15%, #ff2fae33, transparent 30%), radial-gradient(circle at 85% 80%, #6d27ff1f, transparent 34%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.onboarding-card{border:1px solid var(--border);background:var(--surface);width:min(650px,100%);box-shadow:var(--shadow-lg);border-radius:26px;padding:clamp(30px,7vw,58px);position:relative;overflow:hidden}.onboarding-card:after{content:"";background:var(--accent-soft);border-radius:50%;width:270px;height:270px;position:absolute;top:-130px;right:-120px}.onboarding-mark{z-index:1;color:#fff;background:var(--accent);border-radius:18px;place-items:center;width:62px;height:62px;margin-bottom:23px;font-size:1.8rem;font-weight:850;display:grid;position:relative}.onboarding-card h1{z-index:1;font-size:clamp(2.2rem,6vw,3.6rem);position:relative}.onboarding-card>p{z-index:1;margin-bottom:24px;position:relative}.onboarding-points{gap:10px;margin:24px 0;display:grid}.onboarding-points>div{border:1px solid var(--border);background:var(--surface-soft);border-radius:12px;align-items:center;gap:11px;padding:12px;display:flex}.onboarding-points>div>svg{color:var(--accent)}.onboarding-points strong,.onboarding-points small{display:block}.onboarding-points strong{font-size:.78rem}.onboarding-points small{margin-top:2px;font-size:.66rem}.romanization-choice{background:var(--accent-soft);border-radius:12px;align-items:center;gap:10px;margin-bottom:17px;padding:12px;display:flex}.romanization-choice input{flex:none}.romanization-choice strong,.romanization-choice small{display:block}.romanization-choice strong{font-size:.78rem}.romanization-choice small{margin-top:2px;font-size:.65rem}.toast-stack{z-index:200;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.toast{border:1px solid var(--border);max-width:380px;color:var(--text);background:var(--surface);box-shadow:var(--shadow-lg);border-radius:12px;align-items:center;gap:9px;padding:12px 14px;font-size:.76rem;font-weight:650;display:flex}.toast.success svg{color:var(--accent)}.toast.error{border-color:color-mix(in srgb, var(--danger) 35%, var(--border))}.toast.error svg{color:var(--danger)}@media (width<=1180px){.hero-hangul{opacity:.35;right:-25px}.metric-grid{grid-template-columns:repeat(2,1fr)}.content-grid.two-one{grid-template-columns:1fr}.library-layout{grid-template-columns:220px minmax(0,1fr)}.entry-card{grid-template-columns:auto minmax(210px,1fr) auto}.entry-meta{grid-column:2}.entry-actions{grid-area:1/3/span 2}.tag-performance-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.app-shell{display:block}.sidebar{display:none}.app-main{min-width:0}.app-topbar{height:56px;padding:0 18px}.workspace{padding:24px 18px 90px}.mobile-nav{z-index:60;border-top:1px solid var(--border);padding:7px max(7px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(7px, env(safe-area-inset-left));background:color-mix(in srgb, var(--surface) 93%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:repeat(6,minmax(0,1fr));display:grid;position:fixed;inset:auto 0 0}.mobile-nav button{min-height:48px;color:var(--text-faint);background:0 0;border:0;border-radius:9px;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;font-size:.68rem;font-weight:720;display:flex}.mobile-nav button.active{color:var(--accent);background:var(--accent-soft)}.mobile-nav svg{width:18px;height:18px}.view-header{flex-direction:column;align-items:flex-start}.hero-card{min-height:350px}.hero-hangul{right:-90px}.path-grid{grid-template-columns:1fr}.path-grid button{border-right:0;border-bottom:1px solid var(--border)}.path-grid button:last-child{border-bottom:0}.organizer-strip,.library-layout{grid-template-columns:1fr}.filter-panel{grid-template-columns:repeat(2,1fr);display:grid;position:static}.filter-panel .search-field,.filter-panel .filter-group,.filter-panel .full{grid-column:1/-1}.library-toolbar{flex-direction:column;align-items:flex-start}.bulk-tools{justify-content:flex-start}.grammar-layout{grid-template-columns:1fr}.lesson-list{position:static}.lesson-list nav{grid-template-columns:repeat(2,1fr);display:grid}.lab-grid{grid-template-columns:1fr}.lab-controls{border-right:0;border-bottom:1px solid var(--border)}.settings-grid,.session-builder-grid{grid-template-columns:1fr}}@media (width<=650px){.app-topbar{display:none}.workspace{padding-top:20px}.breadcrumb{display:none}.view-stack{gap:17px}.view-header{gap:12px}.view-header h1{font-size:2rem}.header-actions{width:100%}.header-actions .button{flex:1}.hero-card{align-items:flex-start;min-height:440px;padding:30px 24px}.hero-copy h1{font-size:2.55rem}.hero-hangul{transform-origin:100% 100%;top:auto;bottom:12px;right:-30px;transform:rotate(-8deg)scale(.74)}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{min-height:82px;padding:12px}.metric-icon{width:37px;height:37px}.metric-card strong{font-size:1.2rem}.focus-row{grid-template-columns:auto 1fr auto}.focus-row .word-class{display:none}.difficulty-dots{grid-column:3}.panel-header{padding:17px}.organizer-strip form{min-height:46px}.filter-panel{grid-template-columns:1fr;padding:15px}.filter-panel .search-field,.filter-panel .filter-group,.filter-panel .full{grid-column:auto}.entry-card{grid-template-columns:auto 1fr auto;gap:10px;padding:13px 10px}.entry-primary{min-width:0}.entry-meta{grid-column:2/4}.entry-actions{flex-direction:row;grid-area:1/3}.entry-primary blockquote{display:none}.modal-backdrop{place-items:end center;padding:0}.modal,.modal.modal-wide{border-radius:20px 20px 0 0;width:100%;max-height:94vh}.modal-header{padding:17px}.modal-body{max-height:calc(94vh - 79px);padding:17px}.form-grid.two,.form-grid.three{grid-template-columns:1fr}.manager-row{grid-template-columns:auto 1fr auto}.manager-row .button.danger{grid-column:2/4}.inline-create,.answer-grid,.typed-answer{grid-template-columns:1fr}.exercise-card{border-radius:16px;padding:22px 16px}.exercise-prompt{padding:30px 0 24px}.answer-feedback{grid-template-columns:auto 1fr}.answer-feedback .button{grid-column:1/-1}.practice-topbar{grid-template-columns:1fr auto;gap:10px}.practice-topbar .session-progress{grid-area:2/1/auto/-1}.result-hero{grid-template-columns:auto 1fr}.result-hero .button{grid-column:1/-1}.lesson-list nav{grid-template-columns:1fr}.lesson-content{padding:21px 17px}.example-list>div{grid-template-columns:1fr;gap:4px}.conjugation-result{min-height:340px;padding:25px 18px}.conjugation-arrow{gap:10px}.conjugation-result dl>div{grid-template-columns:1fr;gap:3px}.tag-performance-grid{grid-template-columns:1fr;padding:16px}.settings-section{padding:17px}.setting-row,.data-action{align-items:flex-start}.data-action{flex-wrap:wrap}.data-action .button{width:100%}.danger-zone{flex-direction:column;align-items:flex-start}.danger-zone .button{width:100%}.onboarding-shell{padding:12px}.onboarding-card{border-radius:20px;padding:26px 20px}.toast-stack{bottom:76px;left:10px;right:10px}.toast{max-width:none}}.exercise-instruction{max-width:680px;color:var(--accent-strong);letter-spacing:.025em;text-transform:none;text-shadow:0 0 16px color-mix(in srgb, var(--accent) 42%, transparent);margin:0 auto 12px;font-size:.78rem;font-weight:780;display:block}.exercise-hint{place-items:center;min-height:34px;margin-top:18px;display:grid}.exercise-hint p{border:1px solid color-mix(in srgb, var(--accent) 34%, var(--border));color:var(--text-soft);background:var(--accent-soft);border-radius:999px;margin:0;padding:8px 13px;font-size:.72rem}.hint-button{border:1px solid var(--border);color:var(--accent-strong);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:7px;padding:7px 11px;font-size:.7rem;font-weight:760;display:inline-flex}.hint-button:hover{border-color:var(--accent);background:var(--accent-soft);box-shadow:var(--neon-glow)}.hint-button svg{width:14px;height:14px}.compact-select{grid-template-columns:auto minmax(180px,1fr);align-items:center;gap:12px;margin-bottom:12px;display:grid!important}.compact-select>span{margin:0!important}.pair-board label{position:relative}.pair-board label.pair-correct{border-color:var(--success);box-shadow:0 0 18px color-mix(in srgb, var(--success) 15%, transparent)}.pair-board label.pair-wrong{border-color:var(--danger);background:var(--danger-soft)}.pair-board label>small{color:var(--danger);grid-column:2;font-size:.67rem;font-weight:700}:root[data-theme=neon] .panel:hover{border-color:color-mix(in srgb, var(--accent) 24%, var(--border))}:root[data-theme=neon] h1,:root[data-theme=neon] h2{text-shadow:0 2px 16px color-mix(in srgb, var(--accent) 8%, transparent)}.preset-row{flex-wrap:wrap;gap:8px;display:flex}.session-focus{background:color-mix(in srgb, var(--accent-soft) 38%, var(--surface))}.builder-warning{color:var(--danger);margin:10px 0 0;font-size:.72rem;font-weight:700}.configuration-summary{gap:8px;margin:18px 0;display:grid}.configuration-summary>div{border:1px solid var(--border);background:var(--surface-soft);border-radius:10px;justify-content:space-between;gap:14px;padding:10px 12px;display:flex}.configuration-summary span{color:var(--text-faint);text-transform:uppercase;letter-spacing:.07em;font-size:.67rem;font-weight:800}.configuration-summary strong{color:var(--text);text-align:right;font-size:.73rem}.ordering-board{gap:14px;display:grid}.ordered-sentence{border:1px dashed color-mix(in srgb, var(--accent) 52%, var(--border));background:color-mix(in srgb, var(--accent-soft) 52%, var(--surface));border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;min-height:78px;padding:14px;display:flex}.ordered-sentence>span{color:var(--text-faint);font-size:.78rem}.ordered-sentence button,.token-bank button{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));min-height:42px;color:var(--text);background:var(--surface);cursor:pointer;box-shadow:0 4px 14px color-mix(in srgb, var(--accent) 10%, transparent);border-radius:10px;padding:8px 12px;font-size:.94rem;font-weight:720}.ordered-sentence button:hover:not(:disabled),.token-bank button:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-soft);box-shadow:var(--neon-glow)}.token-bank{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.token-bank button:disabled{opacity:.24;cursor:not-allowed}.ordering-actions{justify-content:flex-end;gap:9px;display:flex}@media (width<=640px){.preset-row .button{flex:140px}.ordering-actions{grid-template-columns:1fr 1fr;display:grid}}.app-shell[data-view=home]{--accent:var(--home-color);--accent-strong:#a56d21;--accent-soft:var(--home-soft)}.app-shell[data-view=library]{--accent:var(--library-color);--accent-strong:#547a53;--accent-soft:var(--library-soft)}.app-shell[data-view=practice]{--accent:var(--practice-color);--accent-strong:#b85f50;--accent-soft:var(--practice-soft)}.app-shell[data-view=grammar]{--accent:var(--grammar-color);--accent-strong:#725e9d;--accent-soft:var(--grammar-soft)}.app-shell[data-view=progress]{--accent:var(--progress-color);--accent-strong:#4f7f8f;--accent-soft:var(--progress-soft)}.app-shell[data-view=settings]{--accent:var(--settings-color);--accent-strong:#925e70;--accent-soft:var(--settings-soft)}.sidebar{background:linear-gradient(#ffffff2e, #ffffff2e), repeating-linear-gradient(0deg, transparent 0 31px, #b07e3e0e 31px 32px), var(--sidebar);border-right-color:#8b653e33;box-shadow:14px 0 40px #6445261f}.brand{border-bottom:1px dashed #744e2e33;margin-bottom:12px}.brand-mark{color:#725033;background:#fff3ce;border-color:#6b4c302e;transform:rotate(-3deg);box-shadow:0 6px 16px #704d2821}.brand small,.sidebar-status small{color:color-mix(in srgb, var(--sidebar-text) 62%, transparent)}.main-nav{gap:7px}.main-nav button,.mobile-nav button{--nav-color:var(--home-color);--nav-soft:var(--home-soft)}.main-nav .nav-library,.mobile-nav .nav-library{--nav-color:var(--library-color);--nav-soft:var(--library-soft)}.main-nav .nav-practice,.mobile-nav .nav-practice{--nav-color:var(--practice-color);--nav-soft:var(--practice-soft)}.main-nav .nav-grammar,.mobile-nav .nav-grammar{--nav-color:var(--grammar-color);--nav-soft:var(--grammar-soft)}.main-nav .nav-progress,.mobile-nav .nav-progress{--nav-color:var(--progress-color);--nav-soft:var(--progress-soft)}.main-nav .nav-settings,.mobile-nav .nav-settings{--nav-color:var(--settings-color);--nav-soft:var(--settings-soft)}.main-nav button{color:color-mix(in srgb, var(--sidebar-text) 78%, transparent);border:1px solid #0000}.main-nav button svg{color:var(--nav-color)}.main-nav button:hover{border-color:color-mix(in srgb, var(--nav-color) 24%, transparent);color:var(--sidebar-text);background:color-mix(in srgb, var(--nav-soft) 72%, transparent)}.main-nav button.active{border-color:color-mix(in srgb, var(--nav-color) 28%, transparent);color:#4e392d;background:var(--nav-soft);box-shadow:inset 4px 0 0 var(--nav-color), 0 7px 18px #65462614}.main-nav button b{color:#fff;background:var(--practice-color)}.sidebar-status{border-top-color:#714e2f2b}.local-dot{background:var(--library-color);box-shadow:0 0 0 4px color-mix(in srgb, var(--library-color) 16%, transparent)}.sidebar-add{color:#425b41;background:var(--library-soft);border-color:#698b6559}.sidebar-add:hover{background:color-mix(in srgb, var(--library-soft) 74%, #fff)}.app-topbar{background:color-mix(in srgb, var(--surface) 84%, transparent);border-bottom-color:#8b653e2e;box-shadow:0 5px 18px #754f2b0e}.offline-pill{color:#587657;background:#edf5e8;border-color:#71966e47}.offline-pill>span{background:var(--library-color)}.avatar-button{color:#6e4b36;background:#fff0c7;box-shadow:0 4px 12px #714d2a1c}.workspace{position:relative}.panel,.metric-card,.session-builder,.exercise-card,.lesson-shell,.conjugation-lab{border-color:color-mix(in srgb, var(--accent) 14%, var(--border));background:color-mix(in srgb, var(--surface) 95%, transparent);box-shadow:var(--shadow-sm)}.panel::selection{background:color-mix(in srgb, var(--accent) 28%, transparent)}.button{border-radius:999px}.button.primary{color:#fffaf2;background:var(--accent);box-shadow:0 8px 20px color-mix(in srgb, var(--accent) 22%, transparent)}.button.primary:hover:not(:disabled){background:var(--accent-strong)}.button.subtle{background:color-mix(in srgb, var(--surface) 88%, transparent)}.home-hero-grid{grid-template-columns:minmax(0,1.65fr) minmax(250px,.65fr);align-items:stretch;gap:22px;display:grid}.hero-card{color:#553c2c;background:radial-gradient(circle at 88% 18%,#ffffff9e,#0000 15rem),linear-gradient(135deg,#ffe9ba,#f8d49a 56%,#efbe83);border-color:#b7843f3d;min-height:320px;box-shadow:0 22px 55px #6f4b2526}.hero-card:before{content:"";pointer-events:none;opacity:.34;background-image:linear-gradient(90deg,#ffffff80 50%,#0000 50%),linear-gradient(#ffffff80 50%,#0000 50%);background-size:56px 56px;position:absolute;inset:0}.hero-card:after{border-color:#734f2d1f}.hero-copy .eyebrow{color:#8a5c28;text-shadow:none}.hero-copy h1{color:#4e382b}.hero-copy p{color:#765744}.hero-copy .button.primary{color:#fffaf2;background:#b87c32;box-shadow:0 9px 22px #8558242e}.hero-copy .button.primary:hover{background:#9e6624}.hero-copy .button.subtle{color:#664a38;background:#ffffff6b;border-color:#66482e40}.hero-hangul{opacity:.86}.hero-hangul span{color:#7a5638;background:#fffae885;border-color:#704c2b24;box-shadow:0 14px 30px #704c2b1a}.culture-note{color:#5e4a30;background:repeating-linear-gradient(0deg,#0000 0 29px,#7b633613 29px 30px),#fff3ae;border:1px solid #a17d3738;border-radius:7px 18px 12px 16px;flex-direction:column;justify-content:center;align-items:flex-start;min-height:320px;padding:48px 29px 27px;display:flex;position:relative;transform:rotate(1deg);box-shadow:4px 8px #916c2b14,0 20px 44px #67482421}.culture-note:after{content:"";background:linear-gradient(135deg,#0000 48%,#b791422e 49%);border-radius:0 0 8px;width:24px;height:24px;position:absolute;bottom:12px;right:13px}.note-tape{background:#fff7dcb8;width:86px;height:25px;position:absolute;top:-10px;left:50%;transform:translate(-50%)rotate(-2deg);box-shadow:0 2px 5px #69492314}.fact-category{color:#685236;letter-spacing:.1em;text-transform:uppercase;background:#ffffff7a;border-radius:999px;padding:5px 9px;font-size:.65rem;font-weight:800}.fact-category.food{background:#f8d8c8}.fact-category.language{background:#dce9d4}.fact-category.culture{background:#e5def0}.fact-category.history{background:#d8e9ed}.culture-note h2{color:#9e712d;text-transform:uppercase;letter-spacing:.12em;margin:14px 0 3px;font-size:.78rem}.culture-note h3{color:#4e3a2d;margin:0 0 12px;font-size:1.22rem;line-height:1.2}.culture-note p{color:#705a3e;margin-bottom:18px;font-size:.82rem;line-height:1.55}.culture-note a{color:#806128;align-items:center;gap:4px;font-size:.72rem;font-weight:800;text-decoration:none;display:inline-flex}.culture-note a:hover{text-decoration:underline}.culture-note a svg{width:14px}.metric-card:first-child{--metric-color:var(--practice-color);--metric-soft:var(--practice-soft)}.metric-card:nth-child(2){--metric-color:var(--library-color);--metric-soft:var(--library-soft)}.metric-card:nth-child(3){--metric-color:var(--progress-color);--metric-soft:var(--progress-soft)}.metric-card:nth-child(4){--metric-color:#8ca56f;--metric-soft:#e8efd8}.metric-card:hover{border-color:color-mix(in srgb, var(--metric-color) 40%, var(--border))!important}.metric-icon{color:var(--metric-color)!important;background:var(--metric-soft)!important}.path-grid button:first-child{--path-color:var(--practice-color);--path-soft:var(--practice-soft)}.path-grid button:nth-child(2){--path-color:var(--grammar-color);--path-soft:var(--grammar-soft)}.path-grid button:nth-child(3){--path-color:var(--library-color);--path-soft:var(--library-soft)}.path-grid button>svg:first-child{color:var(--path-color)}.path-grid button:hover{background:var(--path-soft)}@media (width<=1040px){.home-hero-grid{grid-template-columns:1fr}.culture-note{min-height:250px;transform:rotate(.3deg)}}@media (width<=760px){.app-topbar{background:color-mix(in srgb, var(--surface) 91%, transparent)}.mobile-nav{background:color-mix(in srgb, var(--surface) 92%, transparent);border-top-color:#8b653e2e;box-shadow:0 -8px 24px #66472714}.mobile-nav button{color:#806b5c}.mobile-nav button svg{color:var(--nav-color)}.mobile-nav button.active{color:var(--nav-color);background:var(--nav-soft)}.home-hero-grid{gap:16px}.culture-note{min-height:230px;padding:41px 24px 24px}}.initialization-state{min-height:100dvh;color:var(--text-soft);background:var(--bg);text-align:center;place-content:center;justify-items:center;gap:14px;padding:24px;display:grid}.loading-dot{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite loading-spin}@keyframes loading-spin{to{transform:rotate(360deg)}}.reduced-motion .loading-dot{animation:none}
