*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-bg);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--text-base)}:root{--color-bg:#fff;--color-surface:#f7f7f5;--color-border:#e8e6e1;--color-text-primary:#1a1a1a;--color-text-secondary:#6b6b6b;--color-text-tertiary:#9b9b9b;--color-accent:#1b4332;--color-accent-light:#d1fae5;--color-accent-muted:#2d6a4f;--color-code-bg:#f3f4f6;--color-positive:#16a34a;--color-negative:#dc2626;--font-display:"DM Serif Display",Georgia,serif;--font-body:"DM Sans",system-ui,sans-serif;--font-mono:"JetBrains Mono","Courier New",monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.75rem}.progress-bar{background:#1b4332;background:var(--color-accent);height:2px;left:0;position:fixed;top:0;transition:width 50ms linear;z-index:1000}.app-layout{display:flex;min-height:100vh}.main-content{margin-left:240px;max-width:1120px;padding:136px 80px 120px;width:100%}.main-content-inner{max-width:720px}.markdown-body h1{color:#1a1a1a;color:var(--color-text-primary);font-family:"DM Serif Display",Georgia,serif;font-family:var(--font-display);font-size:2.75rem;font-size:var(--text-4xl);line-height:1.2;margin-bottom:12px}.markdown-body h1+p{color:#6b6b6b;color:var(--color-text-secondary);font-size:1.125rem;font-size:var(--text-lg);margin-bottom:8px}.markdown-body h1+p+p{color:#9b9b9b;color:var(--color-text-tertiary);font-size:.875rem;font-size:var(--text-sm);font-style:italic;margin-bottom:32px}.intro-block,.section-block{animation:fadeUp .6s ease forwards;opacity:0}.markdown-body h2{color:#1a1a1a;color:var(--color-text-primary);font-family:"DM Serif Display",Georgia,serif;font-family:var(--font-display);font-size:2rem;font-size:var(--text-3xl);line-height:1.3;margin-bottom:24px;margin-top:80px;scroll-margin-top:88px}.markdown-body h2:first-child,.section-block:first-child h2{margin-top:0}.section-number{color:#1b4332;color:var(--color-accent);font-family:DM Sans,system-ui,sans-serif;font-family:var(--font-body);font-size:.75rem;font-size:var(--text-xs);font-weight:500;letter-spacing:.02em;margin-right:8px;vertical-align:super}.markdown-body h3{font-size:1.25rem;font-size:var(--text-xl);font-weight:600;line-height:1.4;margin-top:40px}.markdown-body h3,.markdown-body p{color:#1a1a1a;color:var(--color-text-primary);font-family:DM Sans,system-ui,sans-serif;font-family:var(--font-body);margin-bottom:16px}.markdown-body p{font-size:1rem;font-size:var(--text-base);font-weight:400;line-height:1.75}.markdown-body strong{font-weight:600}.markdown-body em{font-style:italic}.markdown-body a{color:#1b4332;color:var(--color-accent);text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body code:not(pre code){background:#f3f4f6;background:var(--color-code-bg);border-radius:4px;color:#1b4332;color:var(--color-accent);font-family:JetBrains Mono,Courier New,monospace;font-family:var(--font-mono);font-size:.875rem;font-size:var(--text-sm);padding:2px 6px}.code-block-wrapper{background:#f3f4f6;background:var(--color-code-bg);border:1px solid #e8e6e1;border:1px solid var(--color-border);border-radius:8px;margin:24px 0;overflow:hidden;position:relative}.code-block-header{align-items:center;display:flex;gap:12px;justify-content:flex-end;padding:8px 16px 0}.code-block-language{letter-spacing:.05em;text-transform:uppercase}.code-block-copy,.code-block-language{color:#9b9b9b;color:var(--color-text-tertiary);font-family:JetBrains Mono,Courier New,monospace;font-family:var(--font-mono);font-size:.75rem;font-size:var(--text-xs)}.code-block-copy{background:none;border:1px solid #e8e6e1;border:1px solid var(--color-border);border-radius:4px;cursor:pointer;opacity:0;padding:3px 10px;transition:opacity .15s ease,color .15s ease,border-color .15s ease}.code-block-wrapper:hover .code-block-copy{opacity:1}.code-block-copy:hover{border-color:#1b4332;border-color:var(--color-accent);color:#1b4332;color:var(--color-accent)}.code-block-copy.copied{border-color:#16a34a;border-color:var(--color-positive);color:#16a34a;color:var(--color-positive);opacity:1}.code-block-wrapper pre{background:#0000!important;line-height:1.6!important;margin:0!important;overflow-x:auto;padding:20px 24px!important}.code-block-wrapper pre,.code-block-wrapper pre code{font-family:JetBrains Mono,Courier New,monospace!important;font-family:var(--font-mono)!important;font-size:.875rem!important;font-size:var(--text-sm)!important}.table-container{border:1px solid #e8e6e1;border:1px solid var(--color-border);border-radius:8px;margin:24px 0;overflow:hidden;width:100%}.markdown-body table{border-collapse:collapse;font-size:.875rem;font-size:var(--text-sm);width:100%}.markdown-body thead th{font-feature-settings:"smcp";background:#f7f7f5;background:var(--color-surface);color:#6b6b6b;color:var(--color-text-secondary);font-size:.875rem;font-size:var(--text-sm);font-variant:small-caps;font-weight:500;letter-spacing:.03em;text-align:left;text-transform:lowercase}.markdown-body tbody td,.markdown-body thead th{border-bottom:1px solid #e8e6e1;border-bottom:1px solid var(--color-border);padding:12px 16px}.markdown-body tbody td{vertical-align:top}.markdown-body tbody tr:last-child td{border-bottom:none}.markdown-body tbody tr:nth-child(2n){background:#f7f7f5;background:var(--color-surface)}.markdown-body tbody tr:nth-child(odd){background:#fff;background:var(--color-bg)}.markdown-body blockquote{background:#d1fae5;background:var(--color-accent-light);border-left:4px solid #1b4332;border-left:4px solid var(--color-accent);border-radius:0 8px 8px 0;font-size:.9375rem;margin:24px 0;padding:16px 20px}.markdown-body blockquote p{color:#1a1a1a;color:var(--color-text-primary);margin-bottom:0}.markdown-body blockquote p+p{margin-top:8px}.checklist{list-style:none;margin:24px 0;padding:0}.checklist-item{align-items:flex-start;display:flex;gap:12px;margin-bottom:12px;padding:0}.checklist-item:last-child{margin-bottom:0}.checklist-checkbox{align-items:center;background:#fff;background:var(--color-bg);border:1.5px solid #e8e6e1;border:1.5px solid var(--color-border);border-radius:4px;cursor:pointer;display:flex;height:18px;justify-content:center;margin-top:3px;min-width:18px;padding:0;position:relative;transition:background .15s ease,border-color .15s ease;width:18px}.checklist-checkbox:hover{border-color:#2d6a4f;border-color:var(--color-accent-muted)}.checklist-checkbox.checked{background:#1b4332;background:var(--color-accent);border-color:#1b4332;border-color:var(--color-accent)}.checklist-checkbox.checked svg{display:block}.checklist-checkbox svg{display:none;height:11px;width:11px}.checklist-label{color:#1a1a1a;color:var(--color-text-primary);font-family:DM Sans,system-ui,sans-serif;font-family:var(--font-body);font-size:1rem;font-size:var(--text-base);line-height:1.5}.markdown-body hr{border:none;border-top:1px solid #e8e6e1;border-top:1px solid var(--color-border);margin:48px 0}.markdown-body ol,.markdown-body ul{margin-bottom:16px;padding-left:24px}.markdown-body li{color:#1a1a1a;color:var(--color-text-primary);font-family:DM Sans,system-ui,sans-serif;font-family:var(--font-body);font-size:1rem;font-size:var(--text-base);line-height:1.75;margin-bottom:4px}.markdown-body li>p{margin-bottom:4px}.app-header{align-items:center;background:#fff;background:var(--color-bg);border-bottom:1px solid #e8e6e1;border-bottom:1px solid var(--color-border);display:flex;height:56px;justify-content:space-between;left:0;padding:0 32px;position:fixed;right:0;top:0;z-index:100}.header-title{color:#1a1a1a;color:var(--color-text-primary);font-family:DM Sans,system-ui,sans-serif;font-family:var(--font-body);font-size:.875rem;font-size:var(--text-sm);font-weight:500}.header-right{align-items:center;display:flex;gap:8px}.header-team{color:#9b9b9b;color:var(--color-text-tertiary);font-family:DM Sans,system-ui,sans-serif;font-family:var(--font-body);font-size:.75rem;font-size:var(--text-xs)}.header-dot{background:#1b4332;background:var(--color-accent);border-radius:50%;height:6px;width:6px}.sidebar{background:#fff;background:var(--color-bg);border-right:1px solid #e8e6e1;border-right:1px solid var(--color-border);display:flex;flex-direction:column;height:calc(100vh - 56px);left:0;overflow-y:auto;padding:32px 0;position:fixed;top:56px;width:240px;z-index:90}.sidebar-label{color:#9b9b9b;color:var(--color-text-tertiary);flex-shrink:0;font-family:DM Sans,system-ui,sans-serif;font-family:var(--font-body);font-size:.75rem;font-size:var(--text-xs);font-weight:500;letter-spacing:.1em;margin-bottom:24px;padding:0 24px;text-transform:uppercase}.sidebar-nav{flex-shrink:0;list-style:none;margin:0;padding:0;position:relative}.sidebar-nav-item{align-items:baseline;border-left:3px solid #0000;cursor:pointer;display:flex;padding:8px 24px;position:relative;text-decoration:none;transition:all .15s ease}.sidebar-nav-item.active,.sidebar-nav-item:hover{background:#f7f7f5;background:var(--color-surface)}.sidebar-nav-item.active{border-left-color:#1b4332;border-left-color:var(--color-accent)}.sidebar-nav-item.locked{cursor:not-allowed;pointer-events:auto}.sidebar-nav-item.locked:hover{background:#0000}.sidebar-nav-number{color:#9b9b9b;color:var(--color-text-tertiary);flex-shrink:0;font-family:JetBrains Mono,Courier New,monospace;font-family:var(--font-mono);font-size:.75rem;font-size:var(--text-xs);width:24px}.sidebar-nav-icon{align-items:center;display:flex;flex-shrink:0;width:24px}.sidebar-nav-icon svg{color:#9b9b9b;color:var(--color-text-tertiary);height:14px;width:14px}.sidebar-nav-item.active .sidebar-nav-icon svg{color:#1b4332;color:var(--color-accent)}.sidebar-nav-text{color:#6b6b6b;color:var(--color-text-secondary);flex:1 1;font-family:DM Sans,system-ui,sans-serif;font-family:var(--font-body);font-size:.875rem;font-size:var(--text-sm);line-height:1.4;transition:color .15s ease}.sidebar-nav-item.active .sidebar-nav-text{color:#1b4332;color:var(--color-accent);font-weight:500}.sidebar-nav-item.locked .sidebar-nav-number,.sidebar-nav-item.locked .sidebar-nav-text{color:#9b9b9b;color:var(--color-text-tertiary)}.sidebar-nav-item.locked .sidebar-nav-number{opacity:.6}.sidebar-nav-item-content{display:flex;flex:1 1;flex-direction:column;gap:2px}.sidebar-nav-item-row{align-items:center;display:flex;gap:6px}.sidebar-lock-icon{flex-shrink:0;font-size:10px;line-height:1}.sidebar-start-label{color:#1b4332;color:var(--color-accent);font-family:DM Sans,system-ui,sans-serif;font-family:var(--font-body);font-size:.75rem;font-size:var(--text-xs);font-weight:500;letter-spacing:.01em}.sidebar-progress{flex-shrink:0;margin-top:24px;padding:0 24px 0 35px}.sidebar-progress-track{background:#e8e6e1;background:var(--color-border);margin-left:0;position:relative;width:2px}.sidebar-progress-fill{left:0;top:0;transition:height 80ms linear;width:2px}.sidebar-progress-dot,.sidebar-progress-fill{background:#1b4332;background:var(--color-accent);position:absolute}.sidebar-progress-dot{border-radius:50%;height:10px;left:-4px;transition:top .15s ease;width:10px}.sidebar-progress-dot.pulsing{animation:dotPulse 2s ease-in-out infinite}@keyframes dotPulse{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.sidebar-progress-label{color:#9b9b9b;color:var(--color-text-tertiary);font-family:JetBrains Mono,Courier New,monospace;font-family:var(--font-mono);font-size:.75rem;font-size:var(--text-xs);margin-top:12px}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.mobile-menu-btn{background:#fff;background:var(--color-bg);border:1px solid #e8e6e1;border:1px solid var(--color-border);border-radius:6px;cursor:pointer;display:none;left:16px;line-height:0;padding:8px;position:fixed;top:12px;z-index:200}.mobile-menu-btn svg{color:#1a1a1a;color:var(--color-text-primary);height:20px;width:20px}.sidebar-overlay{display:none}@media (max-width:768px){.mobile-menu-btn{display:block}.sidebar{transform:translateX(-100%);transition:transform .25s ease;z-index:150}.sidebar.open{transform:translateX(0)}.sidebar-overlay{background:#0000004d;display:none;inset:0;position:fixed;z-index:140}.sidebar-overlay.open{display:block}.header-title{margin-left:48px}.main-content{margin-left:0;padding:88px 24px 24px}.sidebar-progress{display:none}}
/*# sourceMappingURL=main.4295878c.css.map*/