:root{--paper: #FBFAF7;--ink: #16201B;--ink-2: #4B5A52;--ink-3: #7C8A82;--line: #E5E1DA;--surface-2: #F4F1EB;--green: #15633E;--amber: #A66A1F;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-11: 11px;--fs-12: 12px;--fs-13: 13px;--fs-14: 14px;--fs-15: 15px;--fs-17: 17px;--fs-22: 22px;--fs-32: 32px;--fs-40: 40px;--fs-48: 48px;--lh-body: 1.55;--lh-heading: 1.15;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 40px;--s-8: 56px;--s-9: 80px;--s-10: 120px;--max-content: 1280px;--bw: 1px;--radius: 2px}html,body{margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--fs-14);line-height:var(--lh-body);color:var(--ink);background:var(--paper);font-feature-settings:"tnum","ss01";-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{margin:0;font-weight:500;line-height:var(--lh-heading);letter-spacing:-.005em}p{margin:0}a{color:inherit;text-decoration:none}button{font-family:inherit}.plate{font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-weight:500}.tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.mono{font-family:var(--font-mono)}.container{max-width:var(--max-content);margin:0 auto;padding:0 28px}.section{padding:80px 0;border-top:1px solid var(--line)}.section-first{padding:80px 0}.divider{height:1px;background:var(--line);width:100%;border:0;margin:var(--s-9) 0}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--green);display:inline-block;vertical-align:middle;margin-right:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:38px;padding:0 16px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);border-radius:var(--radius);font-family:var(--font-sans);font-size:var(--fs-13);font-weight:500;cursor:pointer;transition:background .1s;text-decoration:none}.btn:hover{background:#000}.btn-sec{background:var(--paper);color:var(--ink)}.btn-sec:hover{background:var(--surface-2)}.btn-ghost{background:transparent;border:none;color:var(--ink-2);padding:0 4px;height:auto;text-decoration:none}.btn-ghost:hover{color:var(--ink)}.btn:disabled{color:var(--ink-3);border-color:var(--line);background:var(--paper);cursor:not-allowed}.inp{width:100%;height:38px;padding:0 14px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);font-family:var(--font-sans);font-size:var(--fs-14);outline:none}.inp:focus{border-color:var(--ink);border-width:1.5px;padding:0 13.5px}.inp-label{font-size:var(--fs-12);color:var(--ink-2);margin-bottom:6px;display:block}.inp-help{font-size:var(--fs-11);color:var(--ink-3);margin-top:6px;display:block}.inp-error{font-size:var(--fs-11);color:var(--amber);margin-top:6px;display:block}textarea.inp{height:auto;padding:12px 14px;resize:vertical;line-height:var(--lh-body)}textarea.inp:focus{padding:11.5px 13.5px}select.inp{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-3) 50%),linear-gradient(135deg,var(--ink-3) 50%,transparent 50%);background-position:calc(100% - 18px) 16px,calc(100% - 13px) 16px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:32px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:28px}.card-hover{transition:background .12s}.card-hover:hover{background:var(--surface-2);cursor:pointer}.pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--ink-2);background:var(--paper);font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);padding:3px 8px;height:20px;border-radius:var(--radius);line-height:1}.pill .dot{width:6px;height:6px;border-radius:50%;background:var(--green);display:inline-block}.pill-soft{border-color:var(--line);color:var(--ink-2)}.tbl{width:100%;border-collapse:collapse}.tbl th{text-align:left;font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-weight:500;padding:12px 16px;border-bottom:1px solid var(--line)}.tbl td{padding:14px 16px;border-bottom:1px solid var(--line);font-size:var(--fs-14);color:var(--ink);vertical-align:middle}.tbl tr:hover td{background:var(--surface-2)}.tbl .num{text-align:right;font-variant-numeric:tabular-nums}.code{border:1px solid var(--ink-2);background:var(--paper);padding:18px;font-family:var(--font-mono);font-size:var(--fs-13);line-height:1.6;color:var(--ink);border-radius:var(--radius);white-space:pre;overflow-x:auto;margin:0}.code .tok{color:var(--green)}.code .key{color:var(--ink-2)}.code .com{color:var(--ink-3)}.page-h{padding:var(--s-9) 0 var(--s-7);max-width:var(--max-content)}.page-h h1{font-size:var(--fs-40);font-weight:500;line-height:var(--lh-heading);margin:var(--s-3) 0;letter-spacing:-.01em}.page-h p{font-size:var(--fs-17);color:var(--ink-2);max-width:600px;line-height:var(--lh-body)}.empty{border:1px solid var(--line);padding:var(--s-7);max-width:480px;margin:var(--s-7) auto;text-align:center}.empty p{color:var(--ink-2);margin:var(--s-3) 0 var(--s-4)}.loading{font-family:var(--font-mono);font-size:var(--fs-12);color:var(--ink-3)}.skel{background:var(--surface-2);border:1px solid var(--line);height:14px;border-radius:var(--radius)}.error{border-left:4px solid var(--amber);background:var(--paper);padding:var(--s-3) var(--s-4);font-size:var(--fs-14);color:var(--ink)}.mono-tile{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-family:var(--font-mono);font-size:var(--fs-13);font-weight:500;letter-spacing:.05em;text-transform:uppercase;border-radius:var(--radius);flex-shrink:0}.mono-tile-sm{width:24px;height:24px;font-size:var(--fs-11)}.mono-tile-lg{width:56px;height:56px;font-size:var(--fs-17)}.circle{border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--paper);border:1px solid var(--line);font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.05em;color:var(--ink)}.chip{font-family:var(--font-sans);font-size:var(--fs-13);height:30px;padding:0 var(--s-3);border:1px solid var(--line);background:var(--paper);color:var(--ink-2);border-radius:var(--radius);cursor:pointer;transition:color .12s,border-color .12s,background .12s}.chip:hover{color:var(--ink);border-color:var(--ink-2)}.chip-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.tabs{display:flex;gap:var(--s-5);border-bottom:1px solid var(--line)}.tab{font-family:var(--font-sans);font-size:var(--fs-13);background:none;border:none;padding:var(--s-3) 0;color:var(--ink-2);cursor:pointer;border-bottom:1px solid transparent;margin-bottom:-1px}.tab:hover{color:var(--ink)}.tab-active{color:var(--ink);border-bottom-color:var(--ink)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#fbfaf7eb;display:flex;align-items:center;justify-content:center;z-index:100}.modal{width:480px;max-width:calc(100% - 32px);background:var(--paper);border:1px solid var(--ink);border-radius:var(--radius);padding:var(--s-5) var(--s-6)}.modal-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--s-4)}.modal-close{background:none;border:none;cursor:pointer;color:var(--ink-3);padding:var(--s-1);font-size:var(--fs-17)}.modal-close:hover{color:var(--ink)}.modal-body{font-size:var(--fs-14);color:var(--ink)}.modal-f{display:flex;justify-content:flex-end;gap:var(--s-3);margin-top:var(--s-5);padding-top:var(--s-4);border-top:1px solid var(--line)}.stat{border:1px solid var(--line);padding:var(--s-5);background:var(--paper)}.stat-value{font-size:var(--fs-32);font-variant-numeric:tabular-nums;color:var(--ink);line-height:var(--lh-heading);margin:var(--s-2) 0 var(--s-1)}.stat-delta{font-size:var(--fs-12);color:var(--ink-3)}.steps{display:flex}.step{display:inline-flex;align-items:center;gap:var(--s-2);padding:var(--s-3) var(--s-5);font-size:var(--fs-13);font-family:var(--font-mono);letter-spacing:.08em;color:var(--ink-3);border-right:1px solid var(--line)}.step:last-child{border-right:none}.step-done{color:var(--ink-2)}.step-active,.step-active .plate{color:var(--ink)}.chart{width:100%;height:auto;display:block}.chart-line{fill:none;stroke:var(--ink);stroke-width:1.5;stroke-linejoin:round}.chart-line-secondary{stroke:var(--ink-2);stroke-dasharray:4 4;stroke-width:1;fill:none}.chart-grid{stroke:var(--line);stroke-width:1}.chart-tick{font-family:var(--font-mono);font-size:10px;fill:var(--ink-3);letter-spacing:.14em;text-transform:uppercase}.footer-link{font-size:var(--fs-13);color:var(--ink-2);text-decoration:none}.footer-link:hover{color:var(--ink)}.footer-link-deferred{font-size:var(--fs-13);color:var(--ink-3);cursor:default}.topnav{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--line)}.topnav-inner{max-width:var(--max-content);margin:0 auto;padding:14px 28px;display:flex;align-items:center;gap:var(--s-7)}.brand{font-family:var(--font-mono);font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);font-weight:500;text-decoration:none}.topnav-links{display:flex;gap:26px;flex:1}.nav-link{font-size:var(--fs-13);color:var(--ink-2);position:relative;padding:4px 0;text-decoration:none}.nav-link:hover,.nav-link.active{color:var(--ink)}.nav-link.active:after{content:"";position:absolute;left:0;right:0;bottom:-2px;border-bottom:1px solid var(--ink)}.topnav-right{display:flex;align-items:center;gap:var(--s-4)}.sidebar{width:240px;flex-shrink:0;border-right:1px solid var(--line);background:var(--paper);display:flex;flex-direction:column;transition:width .16s ease}.sidebar-collapsed{width:64px}.sidebar-head{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid var(--line)}.sidebar-new{margin:14px;height:44px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:var(--paper);font-size:var(--fs-13);font-weight:500;border:1px solid var(--ink);border-radius:var(--radius);cursor:pointer;text-decoration:none}.sidebar-new:hover{background:#000}.sidebar-nav{display:flex;flex-direction:column;padding:8px 0}.rail-link{display:flex;align-items:center;gap:12px;padding:10px 18px;height:40px;color:var(--ink-2);font-size:var(--fs-13);border-left:4px solid transparent;text-decoration:none}.rail-link:hover{color:var(--ink);background:var(--surface-2)}.rail-link.active{color:var(--ink);border-left-color:var(--ink)}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding:14px}.utilbar{height:52px;padding:0 28px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:var(--paper)}.row-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-6)}.row-3{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.row-4{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.col-divider>*{padding:0 var(--s-6);border-right:1px solid var(--line)}.col-divider>*:first-child{padding-left:0}.col-divider>*:last-child{padding-right:0;border-right:none}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--paper);font-size:var(--fs-13);padding:10px 16px;border-radius:var(--radius);z-index:200}.docs-nav-item{display:block;padding:6px 14px;color:var(--ink-2);font-size:var(--fs-13);border-left:4px solid transparent;text-decoration:none}.docs-nav-item:hover{color:var(--ink)}.docs-nav-item.active{color:var(--ink);border-left-color:var(--ink)}.specimen{border:1px solid var(--line);padding:28px;background:var(--paper)}.anatomy{border:1px solid var(--line);padding:24px;display:flex;flex-direction:column;gap:8px}.faq-row{border-bottom:1px solid var(--line);padding:18px 0;cursor:pointer}.faq-q{display:flex;justify-content:space-between;align-items:center;gap:20px}.faq-q-text{font-size:var(--fs-15);color:var(--ink)}.faq-a{padding-top:12px;font-size:var(--fs-14);color:var(--ink-2);max-width:720px}.skill-row{display:flex;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}.skill-row:hover{background:var(--surface-2)}.skill-row-body{flex:1}.skill-row-name{font-size:var(--fs-17);color:var(--ink)}.skill-row-tag{font-size:var(--fs-13);color:var(--ink-2);margin-top:2px}.skill-row-meta{display:flex;gap:12px;margin-top:4px}.skill-row-right{text-align:right}.skill-row-price{font-size:var(--fs-14);font-variant-numeric:tabular-nums}.code-callout{display:grid;grid-template-columns:1fr 220px;gap:24px;align-items:start}.code-callout ul{list-style:none;padding:0;margin:0;font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.code-callout li{padding:6px 0;border-bottom:1px solid var(--line)}@media (max-width: 768px){.topnav-links{display:none}.row-2,.row-3,.row-4{grid-template-columns:1fr}.col-divider>*{padding:24px 0;border-right:none;border-bottom:1px solid var(--line)}.col-divider>*:last-child{border-bottom:none}.code-callout{grid-template-columns:1fr}}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}
