.learning-app{--e-primary:#1c6dd0;--e-primary-light:#5c9ce6;--e-accent:#17b298;--e-accent-soft:#a6ead9;--e-bg:#f5f8fc;--e-bg-alt:#eaf1fb;--e-surface:#fff;--e-surface-glass:#ffffffa8;--e-border:#1c6dd01f;--e-border-strong:#1c6dd038;--e-ink:#101828;--e-ink-mute:#5b6472;--e-ink-faint:#8a93a3;--e-shadow-sm:0 8px 24px -12px #1c6dd02e;--e-shadow-lg:0 30px 70px -24px #1c6dd047;--e-radius-lg:24px;--e-radius-md:16px;--e-radius-sm:10px;--e-font-display:"Sora Variable", "Sora", ui-sans-serif, sans-serif;--e-font-body:"Inter Variable", "Inter", ui-sans-serif, sans-serif;background:var(--e-bg);color:var(--e-ink);font-family:var(--e-font-body);min-height:100dvh}.learning-app *{box-sizing:border-box}.learning-app h1,.learning-app h2,.learning-app h3,.learning-app h4{font-family:var(--e-font-display);letter-spacing:-.02em;color:var(--e-ink);margin:0}.learning-app p{margin:0}.learning-app a{color:inherit;text-decoration:none}.e-shell{max-width:1240px;margin:0 auto;padding:0 24px}@media (min-width:1024px){.e-shell{padding:0 40px}}.e-btn{font-family:var(--e-font-body);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:13px 26px;font-size:14.5px;font-weight:600;transition:transform .2s,box-shadow .2s,opacity .2s,background .2s;display:inline-flex}.e-btn:disabled{opacity:.55;cursor:not-allowed}.e-btn-primary{background:linear-gradient(120deg, var(--e-primary), var(--e-primary-light));color:#fff;box-shadow:var(--e-shadow-sm);position:relative;overflow:hidden}.e-btn-primary:hover:not(:disabled){box-shadow:var(--e-shadow-lg);transform:translateY(-2px)}.e-btn-block{width:100%}.e-btn-ghost{background:var(--e-surface);color:var(--e-ink);border-color:var(--e-border-strong)}.e-btn-ghost:hover:not(:disabled){border-color:var(--e-primary)}.e-card{background:var(--e-surface);border:1px solid var(--e-border);border-radius:var(--e-radius-lg);box-shadow:var(--e-shadow-sm)}.e-glass{background:var(--e-surface-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--e-border);border-radius:var(--e-radius-lg)}.e-dot-grid{background-image:radial-gradient(var(--e-border-strong) 1px, transparent 1px);background-size:28px 28px}.e-field{flex-direction:column;gap:6px;display:flex}.e-label{color:var(--e-ink-mute);font-size:13px;font-weight:600}.e-input,.e-select,.e-textarea{font-family:var(--e-font-body);border-radius:var(--e-radius-sm);border:1px solid var(--e-border-strong);background:var(--e-surface);color:var(--e-ink);outline:none;width:100%;padding:12px 14px;font-size:14.5px;transition:border-color .2s,box-shadow .2s}.e-input:focus,.e-select:focus,.e-textarea:focus{border-color:var(--e-primary);box-shadow:0 0 0 3px #1c6dd026}.e-error{color:#d6455c;font-size:12.5px}.e-success{color:#178a5a;font-size:12.5px}.e-check-row{color:var(--e-ink-mute);align-items:flex-start;gap:8px;font-size:13px;display:flex}.e-check-row input{margin-top:3px}.learning-app a:focus-visible,.learning-app button:focus-visible,.learning-app input:focus-visible,.learning-app select:focus-visible,.learning-app textarea:focus-visible{outline:2px solid var(--e-primary);outline-offset:2px}.e-spin{animation:.8s linear infinite e-spin}@keyframes e-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.e-btn-primary{transition:none!important}}.lesson-workspace{grid-template-columns:200px minmax(0,1fr) 260px;align-items:start;gap:18px;display:grid}@media (max-width:880px){.lesson-workspace{grid-template-columns:1fr}.lesson-workspace-nav{order:2}.lesson-workspace-main{order:1}.lesson-workspace-side{order:3}}.lesson-workspace-nav,.lesson-workspace-side{max-height:calc(100dvh - 40px);position:sticky;top:20px;overflow-y:auto}@media (max-width:880px){.lesson-workspace-nav,.lesson-workspace-side{max-height:none;position:static}}.e-tab-row{border-bottom:1px solid var(--e-border);gap:4px;margin-bottom:14px;display:flex}.e-tab{color:var(--e-ink-faint);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 12px;font-size:12.5px;font-weight:600}.e-tab[aria-selected=true]{color:var(--e-primary);border-bottom-color:var(--e-primary)}
