@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=EB+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,600&display=swap";:root{--color-bg:#050505;--color-surface:#111;--color-surface-raised:#1a1a1a;--color-fg:#ebebeb;--color-fg-muted:#a3a3a3;--color-fg-decorative:#444;--color-accent:#ff6b50;--color-accent-fg:#050505;--color-link:#ff6b50;--color-border:#ffffff1f;--color-success:#4ade80;--color-success-bg:#4ade8026;--color-warning:#ff6b50;--color-warning-bg:#ff6b5026;--glass-bg:#111c;--shadow-tint:#ff6b5029;--font-body:"Inter", system-ui, -apple-system, sans-serif;--font-display:"EB Garamond", Georgia, "Times New Roman", serif;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--radius-sm:8px;--radius-md:16px;--radius-lg:24px;--radius-pill:999px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--color-bg:#f7f6f2;--color-surface:#fff;--color-surface-raised:#f0efe9;--color-fg:#1c1c1c;--color-fg-muted:#4a4a46;--color-fg-decorative:#b4b4b4;--color-accent:#e5502f;--color-accent-fg:#000;--color-link:#c73f22;--color-border:#1c1c1c1f;--color-success:#1e7a4c;--color-success-bg:#1e7a4c1a;--color-warning:#b23a20;--color-warning-bg:#b23a201a;--glass-bg:#ffffffbf;--shadow-tint:#1c1c1c1a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}::selection{background:var(--color-accent);color:var(--color-accent-fg)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-surface-raised);border-radius:var(--radius-pill);border:2px solid var(--color-bg)}::-webkit-scrollbar-thumb:hover{background:var(--color-fg-decorative)}html{scrollbar-color:var(--color-surface-raised) var(--color-bg)}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.6;transition:background-color .2s,color .2s}#root{flex-direction:column;min-height:100svh;display:flex}h1,h2,h3{font-family:var(--font-display);letter-spacing:0;color:var(--color-fg);margin:0 0 var(--space-4);font-weight:600;line-height:1.15}h1{font-size:clamp(34px,5.5vw,52px);font-weight:600;line-height:1.08}h2{margin-top:var(--space-16);font-size:clamp(23px,3.2vw,30px)}.content>h2:first-of-type{margin-top:0}h3{font-size:21px;font-weight:600}p{margin:0 0 var(--space-4);color:var(--color-fg-muted)}a{color:var(--color-link);text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.eyebrow{text-transform:uppercase;letter-spacing:.3em;color:var(--color-fg-muted);font-size:11px;font-weight:700}.content{width:100%;max-width:1280px;padding:var(--space-8) var(--space-6);flex:1;margin:0 auto}.content--narrow{max-width:760px}.prose{max-width:68ch}@media (width<=640px){.content{padding:var(--space-6) var(--space-4)}}.btn{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);min-height:44px;font-family:var(--font-body);cursor:pointer;border:1px solid #0000;padding:10px 24px;font-size:15px;font-weight:600;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-accent-fg);border-color:var(--color-accent)}.btn-primary:hover:not(:disabled){color:#000;background:#fff;border-color:#fff}.btn-secondary{color:var(--color-fg);border-color:var(--color-border);background:0 0}.btn-secondary:hover:not(:disabled){color:#000;background:#fff;border-color:#fff}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-6)}.progress-track{background:var(--color-surface-raised);border-radius:var(--radius-pill);height:8px;overflow:hidden}.progress-fill{background:var(--color-accent);border-radius:var(--radius-pill);transform-origin:0;width:100%;height:100%;transition:transform .3s}.progress-row{align-items:center;gap:var(--space-3);display:flex}.progress-percent{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.05em;padding:4px 12px;font-size:12px;font-weight:700;display:inline-flex}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-neutral{background:var(--color-surface-raised);color:var(--color-fg-muted)}input[type=text],input[type=email],input[type=password],input[type=number],textarea{font-family:var(--font-body);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);min-height:44px;color:var(--color-fg);padding:10px 14px;font-size:15px}textarea{min-height:88px}.field-list{gap:var(--space-3);flex-direction:column;max-width:420px;display:flex}.app-header{z-index:100;background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);position:sticky;top:0}.app-header-bar{justify-content:space-between;align-items:center;gap:var(--space-6);padding:var(--space-3) var(--space-6);display:flex}.app-header-logo{flex-shrink:0;align-items:center;display:flex}.app-header-logo img{filter:var(--logo-filter,none)}:root:not([data-theme=light]) .app-header-logo img{filter:invert()brightness(2)}.app-header-nav{gap:var(--space-6);display:flex}.app-header-nav a{color:var(--color-fg-muted);align-items:center;min-height:44px;font-size:15px;font-weight:600;display:inline-flex}.app-header-nav a.active,.app-header-nav a:hover{color:var(--color-fg)}.app-header-actions{align-items:center;gap:var(--space-4);flex-shrink:0;margin-left:auto;display:flex}.app-header-user{color:var(--color-fg-muted);white-space:nowrap;font-size:14px;font-weight:600}.app-header-menu-btn{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-raised);width:44px;height:44px;color:var(--color-fg);cursor:pointer;justify-content:center;align-items:center;display:none}.app-header-nav--mobile{align-items:stretch;gap:var(--space-1);padding:var(--space-2) var(--space-6) var(--space-4);border-top:1px solid var(--color-border);flex-direction:column;display:flex}.app-header-nav--mobile a{padding:var(--space-3) 0;min-height:44px}.app-header-nav--mobile .btn{margin-top:var(--space-2);align-self:flex-start}@media (width<=768px){.app-header-nav--desktop,.app-header-logout,.app-header-user{display:none}.app-header-menu-btn{display:inline-flex}}@media (width>=769px){.app-header-nav--mobile{display:none}}.theme-toggle{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface-raised);min-height:44px;color:var(--color-fg);font-family:var(--font-body);cursor:pointer;padding:8px 16px;font-size:14px;font-weight:600;transition:background-color .15s,color .15s,border-color .15s;display:inline-flex}.theme-toggle:hover{color:#000;background:#fff;border-color:#fff}.custom-cursor{mix-blend-mode:difference;pointer-events:none;z-index:9999;will-change:transform;background-color:#fff;border-radius:50%;width:32px;height:32px;position:fixed;top:0;left:0}.dashboard-masthead{justify-content:space-between;align-items:flex-end;gap:var(--space-8);margin-bottom:var(--space-12);padding-bottom:var(--space-8);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.dashboard-hero{max-width:14ch;margin:0;font-size:clamp(36px,7vw,76px);line-height:1;animation:.6s cubic-bezier(.16,1,.3,1) both dashboard-rise}.stat-strip{gap:var(--space-8);margin:0;animation:.6s cubic-bezier(.16,1,.3,1) 80ms both dashboard-rise;display:flex}.stat-strip-item{padding-left:var(--space-6);border-left:1px solid var(--color-border);flex-direction:column;gap:6px;display:flex}.stat-strip-item:first-child{border-left:none;padding-left:0}.stat-label{text-transform:uppercase;letter-spacing:.12em;color:var(--color-fg-muted);font-size:11px;font-weight:600}.stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--color-fg);margin:0;font-size:clamp(28px,3vw,36px);font-weight:700}@keyframes dashboard-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.featured-course{justify-content:space-between;align-items:flex-end;gap:var(--space-8);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8);margin-bottom:var(--space-4);box-shadow:0 24px 48px -24px var(--shadow-tint), 0 2px 8px -2px var(--shadow-tint);color:var(--color-fg);flex-wrap:wrap;transition:border-color .2s,transform .2s;display:flex}.featured-course:hover{border-color:var(--color-accent);transform:translateY(-2px)}.featured-course-body{gap:var(--space-3);flex-direction:column;max-width:520px;display:flex}.featured-course-heading{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.featured-course-title{margin:0;font-size:clamp(24px,3vw,34px)}.featured-course-desc{margin:0}.almost-there{color:var(--color-accent);margin:0;font-size:13px;font-weight:600}.featured-course-cta{align-items:center;gap:var(--space-2);color:var(--color-fg);padding-bottom:var(--space-1);flex-shrink:0;font-size:16px;font-weight:700;display:inline-flex}.featured-course-cta svg{transition:transform .2s}.featured-course:hover .featured-course-cta svg{transform:translate(2px,-2px)}.course-list{margin-bottom:var(--space-12);flex-direction:column;display:flex}.course-row{justify-content:space-between;align-items:center;gap:var(--space-6);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);color:var(--color-fg);flex-wrap:wrap;display:flex}.course-row-title{flex-shrink:0;font-weight:600}.course-row-meta{align-items:center;gap:var(--space-4);flex:1;min-width:180px;max-width:320px;display:flex}.course-row-meta .progress-row{flex:1}.empty-panel{justify-content:space-between;align-items:center;gap:var(--space-4);border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--space-6);margin-bottom:var(--space-12);flex-wrap:wrap;display:flex}.empty-panel p{margin:0}.cert-ledger{flex-direction:column;display:flex}.cert-ledger-row{align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);color:var(--color-fg);display:flex}.cert-ledger-icon{color:var(--color-success);flex-shrink:0;display:flex}.cert-ledger-title{flex:1;font-weight:600}.cert-ledger-date{font-variant-numeric:tabular-nums;color:var(--color-fg-muted);font-size:14px}.cert-callout{justify-content:space-between;align-items:center;gap:var(--space-4);margin:var(--space-6) 0;flex-wrap:wrap;display:flex}.module-card{gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column;align-items:flex-start;display:flex}.quiz-list{flex-direction:column;display:flex}.quiz-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.quiz-row a{color:var(--color-fg);font-weight:600}.quiz-row-status{align-items:center;gap:var(--space-3);display:flex}.question-card{gap:var(--space-3);margin-bottom:var(--space-4);border-width:1px;flex-direction:column;display:flex}.question-text{color:var(--color-fg);margin:0;font-weight:600}.option-row{align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:flex}.option-row--selected{border-color:var(--color-accent)}.adaptive-readout{align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.result-panel{align-items:center;gap:var(--space-3);text-align:center;padding:var(--space-12) 0;flex-direction:column;display:flex}.result-panel--certified{padding:var(--space-16) var(--space-6);background:radial-gradient(circle at 50% 0%, var(--shadow-tint), transparent 70%);border-radius:var(--radius-lg)}.certified-seal{color:var(--color-success);animation:.6s cubic-bezier(.16,1,.3,1) both certified-seal-in;display:flex}@keyframes certified-seal-in{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}.certified-title{margin:var(--space-2) 0 0;font-size:clamp(40px,6vw,64px)}.certified-subtitle{max-width:46ch;margin:0}.certified-actions{gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.result-score{font-variant-numeric:tabular-nums;color:var(--color-fg);margin:0;font-size:clamp(48px,10vw,88px);font-weight:800}.result-actions{margin-top:var(--space-2)}.review-section{margin-top:var(--space-8);flex-direction:column;align-items:center;display:flex}.review-list{gap:var(--space-4);width:100%;margin-top:var(--space-6);flex-direction:column;display:flex}.review-item{gap:var(--space-2);flex-direction:column;display:flex}.review-item-head{justify-content:space-between;align-items:center;display:flex}.review-option{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex}.review-option--correct{border-color:var(--color-success)}.review-option--wrong{border-color:var(--color-warning)}.review-tag{text-transform:uppercase;letter-spacing:.08em;color:var(--color-fg-muted);white-space:nowrap;font-size:11px;font-weight:700}.verify-panel{align-items:flex-start;gap:var(--space-4);padding-top:var(--space-12);flex-direction:column;display:flex}.verify-record{gap:var(--space-3);flex-direction:column;width:100%;display:flex}.verify-record-row{justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);display:flex}.verify-record-row:last-child{border-bottom:none}.mono-id{color:var(--color-fg-muted);font-family:ui-monospace,monospace;font-size:13px}.verify-id-row{align-items:center;gap:var(--space-3);display:flex}.copy-btn{padding:8px 14px;font-size:13px}.auth-shell{min-height:calc(100svh - 72px);padding-top:var(--space-12);padding-bottom:var(--space-12);align-items:center;display:flex}.auth-card{width:100%;box-shadow:0 24px 48px -24px var(--shadow-tint), 0 2px 8px -2px var(--shadow-tint)}.auth-switch{margin:var(--space-4) 0 0;font-size:14px}.form-error{color:var(--color-warning);margin:var(--space-2) 0 0;font-size:14px}.error-panel{justify-content:space-between;align-items:center;gap:var(--space-4);border-color:var(--color-warning);flex-wrap:wrap;display:flex}.error-panel-text{color:var(--color-fg);margin:0}.page-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-8);flex-wrap:wrap;display:flex}.page-header h1{margin:0}.catalog-list{flex-direction:column;display:flex}.catalog-row{gap:var(--space-1);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);color:var(--color-fg);flex-direction:column;display:flex}.catalog-row-title{font-size:17px;font-weight:600}.catalog-row-desc{color:var(--color-fg-muted);max-width:68ch;font-size:14px}.admin-create-card{margin-bottom:var(--space-8);max-width:480px}.admin-create-card h3{margin-bottom:var(--space-4)}.admin-course-list{gap:var(--space-4);flex-direction:column;display:flex}.admin-course-card{padding:var(--space-4) var(--space-6)}.admin-row-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.admin-row-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-row-body{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border);gap:var(--space-6);flex-direction:column;display:flex}.admin-section-title{margin-bottom:var(--space-2)}.admin-empty{margin:0 0 var(--space-2);font-size:14px}.admin-plain-list{margin:0 0 var(--space-4);gap:var(--space-2);flex-direction:column;padding:0;list-style:none;display:flex}.admin-plain-list li{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);display:flex}.admin-row-list{gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column;display:flex}.admin-row{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4)}.admin-subform{max-width:440px}.admin-checkbox-row{align-items:center;gap:var(--space-2);min-height:44px;font-size:15px;display:flex}.admin-option-row{gap:var(--space-3)}.admin-option-row input[type=text],.admin-option-row input:not([type=radio]){flex:1}@media (width<=640px){.featured-course{flex-direction:column;align-items:stretch}.featured-course-cta{padding:var(--space-3) 0 0;border-top:1px solid var(--color-border);justify-content:center}.course-row,.quiz-row{align-items:stretch;gap:var(--space-2);flex-direction:column}.course-row-meta{max-width:none}.stat-strip{gap:var(--space-3);flex-direction:column}.stat-strip-item{padding-left:0;padding-top:var(--space-3);border-left:none;border-top:1px solid var(--color-border)}.stat-strip-item:first-child{border-top:none;padding-top:0}.verify-record-row{gap:var(--space-1);flex-direction:column}.admin-row-head{flex-direction:column;align-items:stretch}.admin-row-actions .btn,.admin-row-actions{width:100%}.admin-plain-list li{align-items:stretch;gap:var(--space-2);flex-direction:column}}.content{animation:.25s cubic-bezier(.16,1,.3,1) both page-enter}@keyframes page-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.course-list .course-row,.cert-ledger .cert-ledger-row,.catalog-list .catalog-row{animation:.3s cubic-bezier(.16,1,.3,1) both page-enter}.course-list .course-row:first-child{animation-delay:0s}.course-list .course-row:nth-child(2){animation-delay:40ms}.course-list .course-row:nth-child(3){animation-delay:80ms}.course-list .course-row:nth-child(n+4){animation-delay:.12s}.cert-ledger .cert-ledger-row:first-child{animation-delay:0s}.cert-ledger .cert-ledger-row:nth-child(2){animation-delay:40ms}.cert-ledger .cert-ledger-row:nth-child(3){animation-delay:80ms}.cert-ledger .cert-ledger-row:nth-child(n+4){animation-delay:.12s}.catalog-list .catalog-row:first-child{animation-delay:0s}.catalog-list .catalog-row:nth-child(2){animation-delay:40ms}.catalog-list .catalog-row:nth-child(3){animation-delay:80ms}.catalog-list .catalog-row:nth-child(n+4){animation-delay:.12s}.question-card{animation:.35s cubic-bezier(.16,1,.3,1) both question-enter}@keyframes question-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.difficulty-badge{display:inline-flex}.difficulty-badge--up .badge,.difficulty-badge--down .badge{animation:.5s cubic-bezier(.16,1,.3,1) both difficulty-shift}.difficulty-badge--up .badge{border:1px solid var(--color-accent)}.difficulty-badge--down .badge{border:1px solid var(--color-fg-decorative)}@keyframes difficulty-shift{0%{opacity:0;transform:scale(.85)}60%{opacity:1;transform:scale(1.06)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
