:root{--bc-color-teal-100: #E6F0F0;--bc-color-teal-200: #B3D4D4;--bc-color-teal-300: #80B8B8;--bc-color-teal-400: #4D9C9C;--bc-color-teal-500: #1B4D4D;--bc-color-teal-600: #174242;--bc-color-teal-700: #133737;--bc-color-teal-800: #0F2C2C;--bc-color-teal-900: #0B2121;--bc-color-navy-100: #E7ECF2;--bc-color-navy-200: #C2CEDD;--bc-color-navy-300: #90A3BC;--bc-color-navy-400: #3E5B7E;--bc-color-navy-500: #0F2A44;--bc-color-navy-600: #0C2238;--bc-color-navy-700: #0A1B2C;--bc-color-navy-800: #07131F;--bc-color-navy-900: #050C14;--bc-color-orange-100: #FFF0E8;--bc-color-orange-200: #FFD1B8;--bc-color-orange-300: #FFB288;--bc-color-orange-400: #FF9358;--bc-color-orange-500: #FF6B35;--bc-color-orange-600: #E55E2E;--bc-color-orange-700: #CC5127;--bc-color-orange-800: #B24420;--bc-color-orange-900: #993719;--bc-color-cream-100: #FEFCFA;--bc-color-cream-200: #FCF8F3;--bc-color-cream-300: #FAF4EC;--bc-color-cream-400: #FAF0E6;--bc-color-cream-500: #F5E8D8;--bc-color-cream-600: #EBD9C4;--bc-color-cream-700: #E0CAB0;--bc-color-cream-800: #D6BB9C;--bc-color-cream-900: #CCAC88;--bc-color-slate-100: #F4F6F9;--bc-color-slate-200: #E8ECF2;--bc-color-slate-300: #D3DAE3;--bc-color-slate-400: #AEB8C6;--bc-color-slate-500: #7D8A9C;--bc-color-slate-600: #5B6675;--bc-color-slate-700: #414A57;--bc-color-slate-800: #2B323C;--bc-color-slate-900: #1A1F26;--bc-color-gold-100: #FFF9E6;--bc-color-gold-200: #FFF0BF;--bc-color-gold-300: #FFE799;--bc-color-gold-400: #FFE080;--bc-color-gold-500: #FFD966;--bc-color-gold-600: #E6C35C;--bc-color-gold-700: #CCAD52;--bc-color-gold-800: #B39647;--bc-color-gold-900: #99803D;--bc-color-teal-100-hsl: 180 25% 92%;--bc-color-teal-200-hsl: 180 28% 77%;--bc-color-teal-300-hsl: 180 28% 61%;--bc-color-teal-400-hsl: 180 34% 46%;--bc-color-teal-500-hsl: 180 48% 20%;--bc-color-teal-600-hsl: 180 48% 17%;--bc-color-teal-700-hsl: 180 49% 15%;--bc-color-teal-800-hsl: 180 49% 12%;--bc-color-teal-900-hsl: 180 50% 9%;--bc-color-navy-100-hsl: 213 30% 93%;--bc-color-navy-200-hsl: 213 28% 81%;--bc-color-navy-300-hsl: 214 25% 65%;--bc-color-navy-400-hsl: 213 34% 37%;--bc-color-navy-500-hsl: 209 64% 16%;--bc-color-navy-600-hsl: 210 65% 13%;--bc-color-navy-700-hsl: 210 63% 11%;--bc-color-navy-800-hsl: 210 63% 7%;--bc-color-navy-900-hsl: 212 60% 5%;--bc-color-orange-100-hsl: 21 100% 95%;--bc-color-orange-200-hsl: 21 100% 86%;--bc-color-orange-300-hsl: 21 100% 77%;--bc-color-orange-400-hsl: 21 100% 67%;--bc-color-orange-500-hsl: 16 100% 60%;--bc-color-orange-600-hsl: 16 78% 54%;--bc-color-orange-700-hsl: 15 68% 48%;--bc-color-orange-800-hsl: 15 70% 41%;--bc-color-orange-900-hsl: 14 72% 35%;--bc-color-cream-100-hsl: 30 67% 99%;--bc-color-cream-200-hsl: 33 60% 97%;--bc-color-cream-300-hsl: 34 58% 95%;--bc-color-cream-400-hsl: 30 67% 94%;--bc-color-cream-500-hsl: 33 59% 90%;--bc-color-cream-600-hsl: 32 49% 85%;--bc-color-cream-700-hsl: 32 44% 78%;--bc-color-cream-800-hsl: 32 41% 73%;--bc-color-cream-900-hsl: 32 40% 67%;--bc-color-slate-100-hsl: 216 29% 97%;--bc-color-slate-200-hsl: 216 28% 93%;--bc-color-slate-300-hsl: 214 22% 86%;--bc-color-slate-400-hsl: 215 17% 73%;--bc-color-slate-500-hsl: 215 14% 55%;--bc-color-slate-600-hsl: 215 12% 41%;--bc-color-slate-700-hsl: 215 14% 30%;--bc-color-slate-800-hsl: 215 17% 20%;--bc-color-slate-900-hsl: 215 19% 13%;--bc-color-gold-100-hsl: 46 100% 95%;--bc-color-gold-200-hsl: 46 100% 87%;--bc-color-gold-300-hsl: 46 100% 80%;--bc-color-gold-400-hsl: 45 100% 75%;--bc-color-gold-500-hsl: 45 100% 70%;--bc-color-gold-600-hsl: 45 73% 63%;--bc-color-gold-700-hsl: 45 54% 56%;--bc-color-gold-800-hsl: 44 43% 49%;--bc-color-gold-900-hsl: 44 43% 42%;--bc-color-primary: #0F2A44;--bc-color-secondary: #1B4D4D;--bc-color-accent: #FF6B35;--bc-color-background: #F4F6F9;--bc-color-surface: #FFFFFF;--bc-color-surface-warm: #FAF0E6;--bc-color-text: #0F2A44;--bc-color-text-muted: #5B6675;--bc-color-text-inverse: #F4F6F9;--bc-color-border: #D3DAE3;--bc-color-success: #10B981;--bc-color-warning: #F59E0B;--bc-color-danger: #EF4444;--bc-color-info: #3B82F6;--bc-color-primary-hsl: 209 64% 16%;--bc-color-secondary-hsl: 180 48% 20%;--bc-color-accent-hsl: 16 100% 60%;--bc-color-background-hsl: 216 29% 97%;--bc-color-surface-hsl: 0 0% 100%;--bc-color-surface-warm-hsl: 30 67% 94%;--bc-color-text-hsl: 209 64% 16%;--bc-color-text-muted-hsl: 215 12% 41%;--bc-color-text-inverse-hsl: 216 29% 97%;--bc-color-border-hsl: 214 22% 86%;--bc-color-success-hsl: 160 84% 39%;--bc-color-warning-hsl: 38 92% 50%;--bc-color-danger-hsl: 0 84% 60%;--bc-color-info-hsl: 217 91% 60%;--bc-button-primary-bg: var(--bc-color-primary);--bc-button-primary-text: var(--bc-color-background);--bc-button-secondary-bg: var(--bc-color-secondary);--bc-button-secondary-text: var(--bc-color-background);--bc-button-accent-bg: var(--bc-color-accent);--bc-button-accent-text: var(--bc-color-surface);--bc-card-bg: var(--bc-color-surface);--bc-card-border: var(--bc-color-border);--bc-nav-bg: var(--bc-color-primary);--bc-nav-text: var(--bc-color-background);--bc-link: var(--bc-color-secondary);--bc-link-hover: var(--bc-color-accent);--bc-button-primary-hover-bg: #0C2238;--bc-button-primary-active-bg: #0A1B2C;--bc-button-secondary-hover-bg: #174242;--bc-button-secondary-active-bg: #133737;--bc-button-accent-hover-bg: #E55E2E;--bc-button-accent-active-bg: #CC5127;--bc-button-disabled-bg: #E8ECF2;--bc-button-disabled-text: #AEB8C6;--bc-focus-ring: var(--bc-color-accent);--bc-focus-ring-contrast: var(--bc-color-primary);--bc-input-bg: var(--bc-color-surface);--bc-input-border: var(--bc-color-border);--bc-input-border-focus: var(--bc-color-secondary);--bc-input-border-error: var(--bc-color-danger);--bc-input-placeholder: #7D8A9C;--bc-row-hover-bg: var(--bc-color-background);--bc-row-selected-bg: #E6F0F0;--bc-nav-item-hover-bg: #1A3B5C;--bc-nav-item-active-bg: #1A3B5C;--bc-nav-item-active-bar: var(--bc-color-accent);--bc-success-soft-bg: #D1FAE5;--bc-warning-soft-bg: #FEF3C7;--bc-danger-soft-bg: #FEE2E2;--bc-info-soft-bg: #DBEAFE;--bc-chart-1: var(--bc-color-secondary);--bc-chart-2: var(--bc-color-accent);--bc-chart-3: #1A3B5C;--bc-chart-4: #FFD966;--bc-chart-5: #7D8A9C;--bc-chart-6: #42A1A3;--bc-chart-grid: #E8ECF2;--bc-chart-axis: var(--bc-color-text-muted);--bc-chart-tooltip-bg: var(--bc-color-primary);--bc-chart-tooltip-text: var(--bc-color-background);--bc-chart-positive: var(--bc-color-success);--bc-chart-negative: var(--bc-color-danger);--bc-table-header-bg: var(--bc-color-primary);--bc-table-header-text: var(--bc-color-background);--bc-table-row-alt-bg: #FAFBFC;--bc-table-rule: #E8ECF2;--bc-overlay-scrim: #0F2A4499;--bc-modal-bg: var(--bc-color-surface);--bc-modal-border: var(--bc-color-border);--bc-popover-bg: var(--bc-color-surface);--bc-popover-border: var(--bc-color-border);--bc-control-border: var(--bc-color-border);--bc-control-checked-bg: var(--bc-color-primary);--bc-control-checked-mark: var(--bc-color-surface);--bc-switch-track-off: var(--bc-color-border);--bc-switch-track-on: var(--bc-color-secondary);--bc-field-error-text: var(--bc-color-danger);--bc-field-required-mark: var(--bc-color-accent);--bc-badge-neutral-bg: #E8ECF2;--bc-badge-neutral-text: #414A57;--bc-badge-success-text: #065F46;--bc-badge-warning-text: #92400E;--bc-badge-danger-text: #991B1B;--bc-badge-info-text: #1E40AF;--bc-chip-bg: var(--bc-color-background);--bc-chip-border: var(--bc-color-border);--bc-chip-text: var(--bc-color-primary);--bc-font-display: "Fraunces", Georgia, serif;--bc-font-heading: "Outfit", system-ui, sans-serif;--bc-font-body: "Inter", system-ui, sans-serif;--bc-font-mono: "JetBrains Mono", monospace;--bc-text-display-family: "Fraunces", Georgia, serif;--bc-text-display-size: 3.75rem;--bc-text-display-weight: 600;--bc-text-display-line-height: 1.05;--bc-text-display-letter-spacing: -.01em;--bc-text-h1-family: "Fraunces", Georgia, serif;--bc-text-h1-size: 2.5rem;--bc-text-h1-weight: 600;--bc-text-h1-line-height: 1.15;--bc-text-h1-letter-spacing: -.005em;--bc-text-h2-family: "Outfit", system-ui, sans-serif;--bc-text-h2-size: 2rem;--bc-text-h2-weight: 600;--bc-text-h2-line-height: 1.25;--bc-text-h2-letter-spacing: -.005em;--bc-text-h3-family: "Outfit", system-ui, sans-serif;--bc-text-h3-size: 1.5rem;--bc-text-h3-weight: 600;--bc-text-h3-line-height: 1.3;--bc-text-h3-letter-spacing: 0;--bc-text-h4-family: "Outfit", system-ui, sans-serif;--bc-text-h4-size: 1.25rem;--bc-text-h4-weight: 600;--bc-text-h4-line-height: 1.35;--bc-text-h4-letter-spacing: 0;--bc-text-h5-family: "Outfit", system-ui, sans-serif;--bc-text-h5-size: 1.125rem;--bc-text-h5-weight: 600;--bc-text-h5-line-height: 1.4;--bc-text-h5-letter-spacing: 0;--bc-text-h6-family: "Outfit", system-ui, sans-serif;--bc-text-h6-size: 1rem;--bc-text-h6-weight: 600;--bc-text-h6-line-height: 1.4;--bc-text-h6-letter-spacing: 0;--bc-text-body-lg-family: "Inter", system-ui, sans-serif;--bc-text-body-lg-size: 1.125rem;--bc-text-body-lg-weight: 400;--bc-text-body-lg-line-height: 1.6;--bc-text-body-lg-letter-spacing: 0;--bc-text-body-family: "Inter", system-ui, sans-serif;--bc-text-body-size: 1rem;--bc-text-body-weight: 400;--bc-text-body-line-height: 1.6;--bc-text-body-letter-spacing: 0;--bc-text-body-sm-family: "Inter", system-ui, sans-serif;--bc-text-body-sm-size: .875rem;--bc-text-body-sm-weight: 400;--bc-text-body-sm-line-height: 1.5;--bc-text-body-sm-letter-spacing: 0;--bc-text-caption-family: "Inter", system-ui, sans-serif;--bc-text-caption-size: .75rem;--bc-text-caption-weight: 400;--bc-text-caption-line-height: 1.4;--bc-text-caption-letter-spacing: .01em;--bc-text-overline-family: "Inter", system-ui, sans-serif;--bc-text-overline-size: .75rem;--bc-text-overline-weight: 600;--bc-text-overline-line-height: 1.4;--bc-text-overline-letter-spacing: .08em;--bc-text-code-family: "JetBrains Mono", monospace;--bc-text-code-size: .875rem;--bc-text-code-weight: 400;--bc-text-code-line-height: 1.5;--bc-text-code-letter-spacing: 0;--bc-space-0: 0;--bc-space-1: 4px;--bc-space-2: 8px;--bc-space-3: 12px;--bc-space-4: 16px;--bc-space-5: 20px;--bc-space-6: 24px;--bc-space-8: 32px;--bc-space-10: 40px;--bc-space-12: 48px;--bc-space-16: 64px;--bc-space-20: 80px;--bc-space-24: 96px;--bc-radius-none: 0;--bc-radius-sm: 4px;--bc-radius-md: 8px;--bc-radius-lg: 12px;--bc-radius-xl: 16px;--bc-radius-2xl: 24px;--bc-radius-full: 9999px;--bc-shadow-sm: 0 1px 2px rgba(15, 42, 68, .05);--bc-shadow-md: 0 4px 6px rgba(15, 42, 68, .07), 0 2px 4px rgba(15, 42, 68, .06);--bc-shadow-lg: 0 10px 15px rgba(15, 42, 68, .1), 0 4px 6px rgba(15, 42, 68, .05);--bc-shadow-xl: 0 20px 25px rgba(15, 42, 68, .1), 0 8px 10px rgba(15, 42, 68, .04);--bc-ease-entrance: ease-out;--bc-ease-loop: ease-in-out;--bc-ease-exit: ease-in}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*{box-sizing:border-box}body{margin:0;background:var(--bc-color-background);color:var(--bc-color-text);font-family:var(--bc-font-body);line-height:1.5}h1,h2,h3{font-family:var(--bc-font-heading);line-height:1.25}a{color:var(--bc-color-secondary)}.pad{max-width:860px;margin:0 auto;padding:24px 16px 64px}.bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;background:var(--bc-color-primary);color:var(--bc-color-text-inverse)}.bar a,.bar .link{color:var(--bc-color-text-inverse);margin-left:16px;text-decoration:none}.bar .brand{margin-left:0;font-family:var(--bc-font-heading);font-weight:600}.card{background:var(--bc-color-surface);border:1px solid var(--bc-color-border);border-radius:8px;padding:16px;margin:12px 0}.muted{color:var(--bc-color-text-muted)}.locked{opacity:.6}.err{color:#b42318}ol.lessons{padding-left:0;list-style:none}ol.lessons li{display:flex;gap:12px;align-items:baseline;padding:8px 0;border-bottom:1px solid var(--bc-color-border)}ol.lessons .id{font-family:var(--bc-font-mono);min-width:2.5em}ol.lessons .state{margin-left:auto;white-space:nowrap;font-size:.9em}label{display:block;margin:8px 0 4px}input[type=email],input[type=password],input[type=text],select,textarea{width:100%;max-width:420px;padding:8px;border:1px solid var(--bc-color-border);border-radius:6px;font:inherit}button{font:inherit;padding:8px 14px;border-radius:6px;border:1px solid var(--bc-color-primary);background:var(--bc-color-primary);color:var(--bc-color-text-inverse);cursor:pointer;margin:8px 8px 8px 0}button.secondary{background:transparent;color:var(--bc-color-primary)}button.link{background:none;border:none;padding:0;margin:0;cursor:pointer}button:disabled{opacity:.5;cursor:default}.part{white-space:pre-wrap}table{border-collapse:collapse;width:100%}td,th{text-align:left;padding:6px 8px;border-bottom:1px solid var(--bc-color-border)}@media print{.bar,button{display:none}}
