:root{--brand-primary: #1D6F5C;--brand-accent: #B5772C;--brand-background: #FFFFFF;--brand-text: #1A1A1A;--paper: #F4F5F2;--card: #FFFFFF;--ink: var(--brand-text);--ink-soft: #5B5F5A;--line: #DEDFDA;--line-strong:#C7C9C2;--term-bg: #14201A;--term-bg-2: #0E1712;--term-text: #CFEBDA;--term-dim: #7FA48F;--danger: #B5453A;--success: #2F7D5A;--font-mono: ui-monospace, "JetBrains Mono", "Fira Code", "SFMono-Regular", Menlo, Consolas, monospace;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--radius: 10px;--nav-w: 280px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);line-height:1.6}a{color:var(--brand-primary);text-decoration:none}a:hover{text-decoration:underline}code{font-family:var(--font-mono);background:var(--paper);padding:0 4px;border-radius:4px}button{font-family:inherit}.topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.topbar-left{display:flex;align-items:center;gap:18px}.topbar-right{display:flex;align-items:center;gap:12px}.all-courses-link{font-size:.85rem;color:var(--ink-soft)}.brand{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--ink)}.brand:hover{text-decoration:none}.brand-mark{font-family:var(--font-mono);color:var(--brand-primary)}.brand-text{display:flex;flex-direction:column;line-height:1.2}.org-badge{font-size:.7rem;font-weight:400;color:var(--brand-accent);text-transform:uppercase;letter-spacing:.03em}.hub-topbar{justify-content:space-between;gap:24px}.site-nav{flex:1}.site-nav-link{font-size:1.17em;font-weight:600;color:var(--ink)}.site-nav-link:hover{color:var(--brand-primary)}.menu-toggle{background:none;border:1px solid var(--line);border-radius:6px;padding:6px;cursor:pointer;color:var(--ink);display:none}.menu-toggle svg{width:20px;height:20px}.language-switcher{font-family:inherit;font-size:.85rem;padding:5px 8px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink)}.course-layout{display:flex;max-width:1200px;margin:0 auto;gap:32px;padding:0 24px}.course-aside{width:var(--nav-w);flex:none;padding-top:20px}.course-layout main{flex:1;min-width:0;padding:20px 0 60px}.course-sticky-header{position:sticky;top:0;z-index:20}.course-sticky-header .topbar,.course-sticky-header .progress-bar-track{position:static}.progress-bar-track{height:4px;display:flex;gap:2px;background:transparent}.progress-bar-segment{flex:1;height:100%;background:var(--line);overflow:hidden}.progress-bar-fill{height:100%;transition:width .15s linear}.sidebar ul{list-style:none;margin:0;padding:0}.sidebar li a{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:6px;color:var(--ink);font-size:.88rem}.sidebar li.active a{background:var(--paper);color:var(--brand-primary);font-weight:600}.nav-num{font-family:var(--font-mono);font-size:.72rem;width:20px;height:20px;flex:none;border-radius:50%;background:var(--line);display:flex;align-items:center;justify-content:center}.nav-title{flex:1}.nav-check{color:var(--success)}.nav-score{font-size:.72rem;color:var(--ink-soft)}.hero{padding:24px 0 20px}.hero-typed{font-family:var(--font-mono);font-size:.85rem;color:var(--brand-accent);min-height:1.2em}.hero h1{margin:8px 0 4px}.hero-tagline{color:var(--ink-soft)}.topic{padding:20px 0 40px;border-top:1px dashed var(--line)}.topic:first-of-type{border-top:none}.topic-eyebrow{display:flex;align-items:center;gap:8px;font-size:.78rem;letter-spacing:.06em;color:var(--ink-soft);text-transform:uppercase}.topic-eyebrow .num{width:22px;height:22px;border-radius:50%;background:var(--brand-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.72rem}.topic-intro{color:var(--ink-soft);max-width:640px}.lesson-grid{display:flex;flex-direction:column;gap:20px;margin-top:20px}.lesson-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 24px}.lesson-tag{font-family:var(--font-mono);font-size:.72rem;color:var(--brand-accent);display:block;margin-bottom:4px}.lesson-subheading{margin:18px 0 6px;font-size:1rem}.term-list{margin:12px 0}.term-row{margin-bottom:10px}.term-row dt{font-weight:600;display:inline}.term-row dd{margin:2px 0 0;color:var(--ink-soft)}.ref-table{width:100%;border-collapse:collapse;margin:14px 0;font-size:.9rem}.ref-table th,.ref-table td{border:1px solid var(--line);padding:6px 10px;text-align:left}.ref-table th{background:var(--paper)}.callout{border-left:3px solid var(--brand-primary);background:var(--paper);border-radius:0 6px 6px 0;padding:10px 14px;margin:14px 0}.callout-warning{border-left-color:var(--danger)}.callout-tip{border-left-color:var(--success)}.callout-title{display:block;margin-bottom:4px}.code-block{background:var(--term-bg);color:var(--term-text);font-family:var(--font-mono);font-size:.82rem;padding:12px 14px;border-radius:6px;overflow-x:auto;margin:14px 0}.quiz-section{margin-top:32px;padding-top:20px;border-top:1px dashed var(--line)}.quiz-list{display:flex;flex-direction:column;gap:16px;margin:16px 0}.qitem{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:14px 18px}.qitem.correct{border-color:var(--success)}.qitem.incorrect{border-color:var(--danger)}.qtext{margin-bottom:8px}.opt{display:flex;align-items:center;gap:8px;padding:4px 0;cursor:pointer}.qfeedback{margin-top:8px;font-size:.88rem;color:var(--ink-soft)}.quiz-actions{display:flex;align-items:center;gap:12px}.quiz-score{font-size:.9rem}.btn{font-family:inherit;border-radius:6px;padding:8px 16px;cursor:pointer;border:1px solid transparent;font-size:.88rem}.btn-primary{background:var(--brand-primary);color:#fff}.btn-primary:disabled{opacity:.5;cursor:default}.btn-ghost{background:transparent;border-color:var(--line);color:var(--ink)}.hub-page{max-width:1000px;margin:0 auto;padding:40px 24px 80px}.hub-section-heading{margin:32px 0 16px;padding-top:20px;border-top:1px dashed var(--line);font-size:1.15rem}.tag-filter{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 28px}.tag-filter-btn{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:.82rem;cursor:pointer;color:var(--ink)}.tag-filter-btn.active{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.course-card{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;color:var(--ink)}.course-card:hover{border-color:var(--brand-primary);text-decoration:none}.course-card h3{margin:0 0 6px}.course-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.tag-chip{font-size:.72rem;background:var(--paper);border-radius:999px;padding:2px 10px;color:var(--ink-soft)}.landing-page{max-width:900px;margin:0 auto;padding:60px 24px 80px;text-align:center}.landing-intro{color:var(--ink-soft);margin-bottom:36px}.landing-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;text-align:left}.landing-card{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:32px 28px;color:var(--ink)}.landing-card:hover{border-color:var(--brand-primary);text-decoration:none}.landing-card h2{margin:0 0 10px}.landing-card p{color:var(--ink-soft);margin:0 0 16px}.landing-card-cta{font-weight:600;color:var(--brand-primary)}.static-page{max-width:720px;margin:0 auto;padding:40px 24px 80px}.consulting-stats{font-size:.9rem;color:var(--ink-soft)}.consulting-teaser{margin-top:28px;font-weight:600}.social-links{list-style:none;display:flex;flex-wrap:wrap;gap:14px;padding:0;margin:16px 0}.contact-form{display:flex;flex-direction:column;gap:12px;margin-top:24px;max-width:460px}.contact-form label{display:flex;flex-direction:column;gap:4px;font-size:.88rem}.contact-form input,.contact-form textarea{font-family:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:6px}.contact-error{color:var(--danger);font-size:.85rem}.contact-sent{color:var(--success)}footer{border-top:1px dashed var(--line-strong);padding:30px 24px 60px;color:var(--ink-soft);font-size:.88rem;max-width:1200px;margin:0 auto}footer a{color:var(--brand-primary)}.side-terminal{background:var(--term-bg);border-radius:10px;overflow:hidden;margin:20px 0 22px;box-shadow:0 10px 24px -16px #1420198c}.term-bar-mini{display:flex;align-items:center;gap:5px;padding:8px 10px;background:var(--term-bg-2)}.dot{width:8px;height:8px;border-radius:50%;flex:none}.dot.r{background:#d96c5a}.dot.y{background:#e4b94f}.dot.g{background:#5fae85}.term-title-mini{margin-left:6px;font-family:var(--font-mono);font-size:.66rem;color:var(--term-dim);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.term-reset-btn{background:none;border:none;color:var(--term-dim);cursor:pointer;font-size:.8rem;padding:2px 5px;border-radius:4px;line-height:1;flex:none}.term-reset-btn:hover{background:#ffffff1a;color:var(--term-text)}.term-output-mini{height:230px;overflow-y:auto;padding:8px 10px;font-family:var(--font-mono);font-size:.7rem;line-height:1.55;color:var(--term-text)}.term-output-mini div{white-space:pre-wrap;word-break:break-word}.term-output-mini .term-echo{color:#fff}.term-output-mini .term-note{color:var(--term-dim)}.term-output-mini .term-err{color:#f0a392}.term-input-row{display:flex;align-items:flex-start;gap:6px;padding:7px 10px 10px;border-top:1px solid rgba(255,255,255,.08)}.term-prompt-mini{font-family:var(--font-mono);font-size:.68rem;color:var(--brand-accent);white-space:nowrap;padding-top:2px;flex:none}.term-input-mini{flex:1;background:transparent;border:none;outline:none;font-family:var(--font-mono);font-size:.7rem;color:var(--term-text);min-width:0}.admin-shell{min-height:100vh}.admin-nav{display:flex;align-items:center;gap:28px;padding:14px 24px;background:#1b2420;color:#e7ece9;position:sticky;top:0;z-index:20}.admin-nav-brand{font-weight:600;white-space:nowrap}.admin-nav-brand .brand-mark{color:var(--brand-accent);font-family:var(--font-mono)}.admin-nav nav{display:flex;flex-wrap:wrap;gap:18px;flex:1}.admin-nav-link{color:#b7c2bc;font-size:.9rem}.admin-nav-link:hover{color:#fff;text-decoration:none}.admin-nav-link.active{color:#fff;font-weight:600}.admin-nav-account{display:flex;align-items:center;gap:12px}.admin-nav-email{font-size:.82rem;color:#b7c2bc}.admin-nav-account .btn-ghost{border-color:#3a4a43;color:#e7ece9}.admin-nav-account .btn-ghost:hover{background:#ffffff14}.admin-content{max-width:1000px;margin:0 auto;padding:40px 24px 80px}.admin-home h1{margin-top:0}.admin-coming-soon{color:var(--ink-soft)}.admin-coming-soon h1{color:var(--ink)}.admin-hub-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:20px}.admin-hub-card{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;color:var(--ink)}.admin-hub-card:hover{border-color:var(--brand-primary);text-decoration:none}.admin-hub-card h2{margin:0 0 6px;font-size:1.05rem}.admin-hub-card p{color:var(--ink-soft);margin:0;font-size:.88rem}.admin-section{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 24px;margin:0 0 20px}.admin-section h2{margin-top:0;font-size:1.05rem}.admin-section label,.admin-inline-form label{display:flex;flex-direction:column;gap:4px;font-size:.88rem;margin-bottom:14px}.admin-section input[type=text],.admin-section input[type=number],.admin-section input[type=email],.admin-section input[type=password],.admin-section textarea,.admin-section select,.admin-inline-form input,.admin-inline-form textarea,.admin-inline-form select{font-family:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:6px}.admin-checkbox-label{flex-direction:row!important;align-items:center;gap:8px!important}.admin-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px 16px;margin:12px 0}.admin-hint{color:var(--ink-soft);font-size:.85rem}.admin-form-error{color:var(--danger);font-size:.85rem}.admin-form-actions{display:flex;gap:12px;align-items:center}.admin-inline-form{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:16px 20px;margin:12px 0}.admin-inline-row{display:flex;align-items:center;gap:10px;margin:10px 0}.admin-inline-row input[type=text]{font-family:inherit;padding:6px 10px;border:1px solid var(--line);border-radius:6px}.admin-option-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}.admin-option-row input[type=text]{flex:1}.admin-table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.9rem}.admin-table th,.admin-table td{border-bottom:1px solid var(--line);padding:8px 10px;text-align:left}.admin-table th{color:var(--ink-soft);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.btn-small{padding:4px 10px;font-size:.8rem}.contact-submission{border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin-bottom:12px}.contact-submission.unread{border-left:3px solid var(--brand-primary);background:var(--paper)}.contact-submission-head{display:flex;align-items:center;gap:12px;margin-bottom:6px;font-size:.9rem}.branding-color-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:10px 0 16px}.branding-color-field{display:flex;flex-direction:column;gap:4px;font-size:.85rem}.branding-color-input-row{display:flex;gap:8px;align-items:center}.branding-color-input-row input[type=color]{width:40px;height:34px;padding:2px;border:1px solid var(--line);border-radius:6px;cursor:pointer}.branding-color-input-row input[type=text]{flex:1;font-family:var(--font-mono);font-size:.85rem;padding:6px 8px;border:1px solid var(--line);border-radius:6px}.branding-preview{padding:16px;border-radius:8px;border:1px solid var(--line);margin-bottom:16px}.b2b-login-page{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:40px 24px}.b2b-login-form{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:36px 32px;width:100%;max-width:380px;display:flex;flex-direction:column;gap:16px}.b2b-login-form h1{font-size:1.3rem;margin:0 0 8px}.b2b-login-form label{display:flex;flex-direction:column;gap:4px;font-size:.88rem}.b2b-login-form input{font-family:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:6px}.block-editor{margin-top:8px}.block-editor-empty{color:var(--ink-soft);font-size:.88rem}.block-editor-item{border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin-bottom:14px;background:var(--paper)}.block-editor-item-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.block-editor-item-actions{display:flex;gap:6px}.block-type-badge{font-family:var(--font-mono);font-size:.72rem;background:var(--brand-primary);color:#fff;padding:2px 8px;border-radius:999px}.block-field-label{font-size:.82rem;color:var(--ink-soft);margin:0 0 6px}.term-item-row{display:flex;gap:8px;margin-bottom:8px}.term-item-row input{flex:1;font-family:inherit;padding:6px 10px;border:1px solid var(--line);border-radius:6px}.mono-textarea{font-family:var(--font-mono)!important;font-size:.85rem}.block-editor-add{display:flex;gap:10px;align-items:center;margin-top:10px}.block-editor-add select{font-family:inherit;padding:6px 10px;border:1px solid var(--line);border-radius:6px}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#1b2420;padding:24px}.admin-login-form{background:var(--card);border-radius:var(--radius);padding:36px 32px;width:100%;max-width:380px;display:flex;flex-direction:column;gap:16px}.admin-login-form h1{font-size:1.15rem;margin:0 0 8px;display:flex;align-items:center;gap:8px}.admin-login-form h1 .brand-mark{color:var(--brand-primary);font-family:var(--font-mono)}.admin-login-form label{display:flex;flex-direction:column;gap:4px;font-size:.88rem}.admin-login-form input{font-family:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:6px}.admin-login-error{color:var(--danger);font-size:.85rem;margin:0}@media (max-width: 880px){.course-layout{flex-direction:column}.course-aside{width:100%}.menu-toggle{display:inline-flex}.sidebar{display:none}.sidebar.open{display:block}.admin-nav{flex-wrap:wrap}}
