:root[data-mode=light]{--canvas:#e8e3d6;--surface:#f5f1e5;--surface-deep:#fbf8ef;--ink:#1a1a18;--ink-2:#5a5650;--ink-3:#8a8478;--hairline:#c9c3b3;--primary:#ff5a1f;--caution:#f5c042;--diagram:#2e7cc8;--success:#5c7a3e;--error:#a02a1f;--on-primary:#1a1a18}:root[data-mode=dark]{--canvas:#0e0e0c;--surface:#1a1a18;--surface-deep:#26241f;--ink:#e8e3d6;--ink-2:#a8a398;--ink-3:#6e6a60;--hairline:#3a352e;--primary:#ff6a2f;--caution:#ffd24e;--diagram:#5bc4ff;--success:#7ca85a;--error:#d14633;--on-primary:#1a1a18}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--canvas);color:var(--ink);font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Inter,-apple-system,system-ui,sans-serif;font-size:15px;line-height:1.56}::selection{background:var(--primary);color:var(--on-primary)}.t-mono{font-family:Geist Mono,JetBrains Mono,ui-monospace,monospace}.caps{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);font-family:Geist Mono,monospace;font-size:11px}.shell{max-width:1440px;margin:0 auto;padding:0 40px}.hairline{border:0;border-top:1.5px solid var(--hairline);height:0;margin:0}.btn{border:1.5px solid var(--ink);background:var(--ink);height:48px;color:var(--canvas);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;border-radius:0;align-items:center;gap:12px;padding:0 22px;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:700;text-decoration:none;transition:transform 80ms,background .15s;display:inline-flex}.btn:hover{box-shadow:3px 3px 0 var(--ink);transform:translate(-1px,-1px)}.btn:active{box-shadow:none;transform:translate(0)}.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.btn-ghost{color:var(--ink);border-color:var(--ink);background:0 0}.btn-ghost:hover{background:var(--ink);color:var(--canvas)}.btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.input-row{border:1.5px solid var(--hairline);background:var(--surface);align-items:stretch;height:64px;transition:border-color .15s;display:flex}.input-row:focus-within{border-color:var(--primary)}.input-row .label{border-right:1.5px solid var(--hairline);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);background:var(--canvas);align-items:center;padding:0 18px;font-family:Geist Mono,monospace;font-size:11px;display:flex}.input-row input{color:var(--ink);background:0 0;border:0;outline:none;flex:1;min-width:0;padding:0 20px;font-family:Geist Mono,monospace;font-size:18px}.part-search-row{gap:14px;padding:2px 2px 12px;display:flex;overflow-x:auto}.part-search-card{border:1.5px solid var(--hairline);background:var(--surface);cursor:pointer;flex-direction:column;width:320px;min-width:320px;transition:border-color .15s,transform .15s,box-shadow .15s;display:flex;position:relative}.part-search-card:hover,.part-search-card:focus-visible{border-color:var(--ink);box-shadow:3px 3px 0 var(--ink);outline:none;transform:translate(-1px,-1px)}.part-search-card.selected{border-color:var(--primary);box-shadow:3px 3px 0 var(--primary)}.part-search-image-wrap{border-bottom:1.5px solid var(--hairline);background:var(--canvas);aspect-ratio:1;place-items:center;display:grid;overflow:hidden}.part-search-image{object-fit:contain;width:100%;height:100%}.part-search-image-fallback{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-family:Geist Mono,monospace;font-size:11px}.part-search-card-body{gap:10px;padding:16px 16px 18px;display:grid}.part-search-part-number{color:var(--ink);overflow-wrap:anywhere;font-family:Geist Mono,monospace;font-size:14px;line-height:1.4}.part-search-footprint{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);font-family:Geist Mono,monospace;font-size:11px;line-height:1.5}.part-search-link{letter-spacing:.12em;text-transform:uppercase;color:var(--primary);font-family:Geist Mono,monospace;font-size:11px;text-decoration:none}.part-search-link:hover{text-decoration:underline}.part-search-link.disabled{color:var(--ink-3)}.job-panel{border:1.5px solid var(--ink);background:var(--surface);box-shadow:4px 4px 0 var(--ink);margin-top:18px}.job-route-bar{border-bottom:1.5px solid var(--ink);background:var(--ink);height:58px;color:var(--canvas);justify-content:space-between;align-items:stretch;display:flex}.job-route-brand{color:var(--canvas);letter-spacing:0;background:0 0;border:0;align-items:center;padding:0 40px;font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:700;display:inline-flex}.job-route-brand span{background:var(--primary);width:9px;height:9px;margin:0 3px}.job-route-actions{align-items:center;gap:14px;padding:0 40px;display:flex}.job-route-link{height:32px;color:var(--canvas);letter-spacing:.12em;background:0 0;border:1.5px solid #2a2620;padding:0 10px;font-family:Geist Mono,monospace;font-size:10px}.job-route-link:hover{border-color:var(--primary);color:var(--primary)}.job-route-shell{padding:36px 40px 80px}.job-route-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);border-bottom:1.5px solid var(--hairline);padding-bottom:18px;font-family:Geist Mono,monospace;font-size:11px}.job-route-panel{margin-top:24px}.job-panel-head{background:var(--ink);color:var(--canvas);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;font-family:Geist Mono,monospace;font-size:11px;display:flex}.job-status-pill{background:var(--primary);min-height:28px;color:var(--on-primary);border:1.5px solid var(--primary);align-items:center;padding:0 10px;display:inline-flex}.job-status-pill.error{background:var(--error);border-color:var(--error);color:var(--canvas)}.job-panel-body{gap:16px;padding:18px;display:grid}.job-panel-meta{grid-template-columns:1.1fr .8fr 1.2fr;align-items:start;gap:16px;display:grid}.job-id,.job-part,.job-copy{color:var(--ink);overflow-wrap:anywhere;margin-top:6px;font-family:Geist Mono,monospace;font-size:12px}.job-copy{color:var(--ink-2)}.job-stage-row{border-top:1.5px solid var(--hairline);border-bottom:1.5px solid var(--hairline);flex-wrap:wrap;align-items:stretch;gap:8px;padding:12px 0;display:flex}.job-stage{border:1.5px solid var(--hairline);min-height:32px;color:var(--ink-3);letter-spacing:.12em;text-transform:uppercase;align-items:center;padding:0 12px;font-family:Geist Mono,monospace;font-size:11px;display:inline-flex}.job-stage.active{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.job-stage.done{border-color:var(--success);color:var(--success);background:var(--surface-deep)}.job-stage.error{border-color:var(--error);color:var(--error)}.job-stage-arrow{color:var(--ink-3);align-items:center;font-family:Geist Mono,monospace;font-size:14px;display:inline-flex}.job-agent-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.job-agent-box{border:1.5px solid var(--hairline);background:var(--surface-deep);grid-template-rows:auto auto 1fr;min-height:224px;display:grid}.job-agent-head{border-bottom:1.5px solid var(--hairline);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);justify-content:space-between;gap:12px;padding:10px 12px;font-family:Geist Mono,monospace;font-size:10px;display:flex}.job-agent-role{border-bottom:1.5px solid var(--hairline);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);padding:9px 12px;font-family:Geist Mono,monospace;font-size:10px}.job-agent-log{min-height:154px;max-height:210px;padding:9px 12px;font-family:Geist Mono,monospace;font-size:10px;line-height:1.5;overflow:auto}.job-agent-event{border-bottom:1px solid color-mix(in srgb, var(--hairline) 70%, transparent);grid-template-columns:28px minmax(86px,.72fr) minmax(0,1fr);gap:8px;padding:4px 0;display:grid}.job-agent-event span:first-child{color:var(--primary)}.job-agent-event span:nth-child(2){color:var(--ink-2);text-transform:uppercase}.job-agent-event span:last-child{color:var(--ink);overflow-wrap:anywhere}.job-agent-empty{color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase}.job-panel-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:18px;display:grid}.job-log{color:#e8e3d6;background:#0e0e0c;border:1.5px solid #0e0e0c;min-height:188px;max-height:286px;margin-top:8px;padding:10px 12px;font-family:Geist Mono,monospace;font-size:11px;line-height:1.55;overflow:auto}.job-log-row{border-bottom:1px solid #e8e3d614;grid-template-columns:34px 158px minmax(0,1fr);gap:10px;padding:4px 0;display:grid}.job-log-row:last-child{border-bottom:0}.job-log-seq{color:var(--primary)}.job-log-type{color:#a8a398;text-transform:uppercase}.job-log-line{color:#e8e3d6;overflow-wrap:anywhere}.job-log-empty,.job-artifact-empty{color:var(--ink-3);letter-spacing:.08em;text-transform:uppercase;font-family:Geist Mono,monospace;font-size:11px}.job-artifacts{border-top:1.5px solid var(--hairline);margin-top:8px;display:grid}.job-artifact-row{border-bottom:1.5px solid var(--hairline);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 0;display:grid}.job-artifact-kind{letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-family:Geist Mono,monospace;font-size:11px}.job-artifact-path{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-family:Geist Mono,monospace;font-size:11px;overflow:hidden}.job-artifact-error{color:var(--error);margin-top:4px;font-family:Geist Mono,monospace;font-size:11px}.job-artifact-open{border:1.5px solid var(--ink);height:30px;color:var(--ink);letter-spacing:.12em;text-transform:uppercase;background:0 0;padding:0 10px;font-family:Geist Mono,monospace;font-size:10px}.job-artifact-open:hover{background:var(--ink);color:var(--canvas)}.part-search-selected{border:1.5px solid var(--primary);letter-spacing:.12em;text-transform:uppercase;color:var(--primary);background:var(--surface-deep);align-items:center;gap:6px;padding:4px 8px;font-family:Geist Mono,monospace;font-size:10px;display:inline-flex;position:absolute;bottom:10px;right:10px}.chip{border:1.5px solid var(--ink);background:var(--ink);height:28px;color:var(--canvas);letter-spacing:.12em;text-transform:uppercase;border-radius:0;align-items:center;gap:8px;padding:0 12px;font-family:Geist Mono,monospace;font-size:11px;display:inline-flex}.chip-dot{background:var(--success);border-radius:999px;flex-shrink:0;width:8px;height:8px}.chip-success{color:#9cc270;background:#1f2a18;border-color:#1f2a18}.chip-success .chip-dot{background:var(--success)}.chip-processing{color:var(--caution);background:#2a2418;border-color:#2a2418}.chip-processing .chip-dot{background:var(--caution);animation:1.2s ease-in-out infinite pulse}.chip-error{color:var(--error);background:#2a1818;border-color:#2a1818}.chip-error .chip-dot{background:var(--error)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.section-tag{background:var(--caution);color:var(--on-primary);letter-spacing:.14em;text-transform:uppercase;padding:4px 10px;font-family:Geist Mono,monospace;font-size:11px;font-weight:500;display:inline-block}.ic{stroke:currentColor;stroke-width:1.5px;fill:none;width:24px;height:24px}.terminal{color:#e8e3d6;border:1.5px solid var(--ink);background:#0e0e0c;min-height:320px;max-height:420px;padding:24px 28px;font-family:Geist Mono,monospace;font-size:13px;line-height:1.6;overflow:auto}.terminal .prompt{color:var(--primary)}.terminal .ok{color:#7ca85a}.terminal .arrow{color:var(--ink-3)}.terminal .dim{color:#6e6a60}.terminal-cursor:after{content:"▮";color:var(--primary);margin-left:4px;animation:1s steps(2,jump-none) infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.spec-card{border:1.5px solid var(--ink);background:var(--surface);display:grid}.spec-header{background:var(--ink);color:var(--canvas);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:10px 16px;font-family:Geist Mono,monospace;font-size:11px;display:flex}.spec-header .accent{color:var(--primary)}.spec-body{border-bottom:1.5px solid var(--hairline);padding:24px 28px 28px}.spec-title{letter-spacing:-.01em;margin:0 0 12px;font-family:Geist Mono,monospace;font-size:28px;font-weight:500}.spec-desc{color:var(--ink-2);margin:0;font-size:14px;line-height:1.55}.spec-footer{grid-template-columns:1fr 1fr 1fr;display:grid}.spec-footer .cell{border-right:1.5px solid var(--hairline);padding:16px 22px}.spec-footer .cell:last-child{border-right:0}.spec-footer .cap{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:4px;font-family:Geist Mono,monospace;font-size:10px}.spec-footer .val{font-family:Geist Mono,monospace;font-size:15px;font-weight:500}.spec-footer .price{color:var(--primary)}.agent-card{border:1.5px solid var(--hairline);background:var(--surface);flex-direction:column;gap:16px;padding:20px 22px 22px;transition:border-color .2s,background .2s;display:flex;position:relative}.agent-card.active{border-color:var(--ink);background:var(--surface-deep)}.agent-card .role{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);font-family:Geist Mono,monospace;font-size:10px}.agent-card .name{letter-spacing:-.02em;text-transform:lowercase;font-family:Space Grotesk,sans-serif;font-size:22px;font-weight:700}.agent-card .desc{color:var(--ink-2);font-size:13px;line-height:1.5}.rail-top{border-bottom:1.5px solid var(--hairline);justify-content:space-between;align-items:center;padding:18px 0;display:flex}.rail-doc{background:var(--primary);color:var(--on-primary);letter-spacing:.14em;text-transform:uppercase;margin-right:16px;padding:4px 10px;font-family:Geist Mono,monospace;font-size:11px;font-weight:600;display:inline-block}.rail-meta{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);font-family:Geist Mono,monospace;font-size:11px}.logo-mark{letter-spacing:-.04em;align-items:center;font-family:Space Grotesk,sans-serif;font-size:22px;font-weight:700;display:inline-flex}.logo-mark .sq{background:var(--primary);width:10px;height:10px;margin:0 4px;display:inline-block;transform:translateY(-2px)}.auth-page{background:linear-gradient(var(--hairline) 1px, transparent 1px), linear-gradient(90deg, var(--hairline) 1px, transparent 1px), var(--canvas);background-size:80px 80px;place-items:center;min-height:100vh;padding:32px;display:grid}.auth-card{border:1.5px solid var(--ink);background:var(--surface);text-align:center;width:min(420px,100%);box-shadow:8px 8px 0 var(--ink);padding:34px 32px}.auth-logo{justify-content:center;margin-bottom:8px;font-size:38px}.auth-subtitle{color:var(--primary);margin-bottom:22px}.auth-copy{color:var(--ink-2);margin:0 0 22px}.auth-google{border:1.5px solid var(--ink);background:var(--surface-deep);width:100%;height:52px;color:var(--ink);cursor:pointer;justify-content:center;align-items:center;gap:10px;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:700;display:inline-flex}.auth-google:disabled{opacity:.6;cursor:not-allowed}.auth-google:hover:not(:disabled){box-shadow:3px 3px 0 var(--ink);transform:translate(-1px,-1px)}.auth-error{color:var(--error);margin:16px 0 0;font-family:Geist Mono,monospace;font-size:12px}.auth-card-shop{text-align:left;background:var(--canvas);width:min(520px,100%);padding:0}.auth-shop-head{background:var(--ink);color:var(--canvas);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:14px;padding:14px 22px;font-family:Geist Mono,monospace;font-size:11px;display:flex}.auth-shop-eyebrow{color:var(--primary)}.auth-shop-eyebrow-quiet{color:var(--canvas)}.auth-shop-divider{opacity:.4}.auth-shop-body{background:var(--surface);flex-direction:column;gap:24px;padding:36px 36px 32px;display:flex}.auth-logo-inline{font-size:26px}.auth-poster{letter-spacing:-.03em;text-transform:uppercase;margin:0;font-family:Space Grotesk,sans-serif;font-size:40px;font-weight:700;line-height:.96}.auth-poster-dot{color:var(--primary)}.auth-fineprint{border-top:1.5px solid var(--hairline);color:var(--ink-3);letter-spacing:.12em;text-transform:uppercase;padding-top:16px;font-family:Geist Mono,monospace;font-size:10px;line-height:1.6}details.faq{border-top:1.5px solid var(--hairline);padding:22px 0}details.faq:last-of-type{border-bottom:1.5px solid var(--hairline)}details.faq summary{cursor:pointer;justify-content:space-between;align-items:baseline;gap:24px;list-style:none;display:flex}details.faq summary::-webkit-details-marker{display:none}details.faq summary .q{letter-spacing:-.01em;font-family:Space Grotesk,sans-serif;font-size:22px;font-weight:600}details.faq summary .marker{color:var(--primary);font-family:Geist Mono,monospace;font-size:18px;transition:transform .2s}details.faq[open] summary .marker{transform:rotate(45deg)}details.faq .a{max-width:720px;color:var(--ink-2);margin-top:16px;line-height:1.6}footer.shop-footer{background:var(--ink);color:var(--canvas);margin-top:80px;padding:64px 40px 40px}footer.shop-footer .shell{padding:0}footer.shop-footer a{color:inherit;text-decoration:none}footer.shop-footer a:hover{color:var(--primary)}.order-overlay{z-index:100;background:#0000008c;justify-content:center;align-items:stretch;padding:32px;display:flex;position:fixed;inset:0}.order-modal{background:var(--canvas);border:1.5px solid var(--ink);grid-template-rows:auto auto 1fr;width:100%;max-width:1120px;max-height:100%;display:grid;overflow:hidden}.order-modal-head{background:var(--ink);color:var(--canvas);letter-spacing:.14em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:14px 22px;font-family:Geist Mono,monospace;font-size:11px;display:flex}.order-modal-head .accent{color:var(--primary)}.close-x{border:1.5px solid var(--canvas);color:var(--canvas);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:28px;height:28px;font-family:Geist Mono,monospace;font-size:14px;display:inline-flex}.close-x:hover{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.order-modal-body{grid-template-columns:1fr 1fr;gap:32px;padding:32px;display:grid;overflow:auto}.steps-rail{border:1.5px solid var(--hairline);grid-template-columns:repeat(4,1fr);display:grid}.steps-rail .step{border-right:1.5px solid var(--hairline);flex-direction:column;gap:6px;padding:14px 18px;display:flex}.steps-rail .step:last-child{border-right:0}.steps-rail .step .n{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-family:Geist Mono,monospace;font-size:10px}.steps-rail .step .l{text-transform:lowercase;font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:600}.steps-rail .step.active{background:var(--primary);color:var(--on-primary)}.steps-rail .step.active .n,.steps-rail .step.active .l{color:var(--on-primary)}.steps-rail .step.done{background:var(--surface-deep)}.steps-rail .step.done .n{color:var(--success)}.poster{text-transform:uppercase;letter-spacing:-.045em;margin:0;font-family:Space Grotesk,sans-serif;font-size:clamp(64px,11vw,168px);font-weight:700;line-height:.86}.poster .accent{color:var(--primary)}.stamp-badge{border:1.5px solid var(--ink);background:var(--primary);color:var(--on-primary);letter-spacing:.14em;text-transform:uppercase;box-shadow:4px 4px 0 var(--ink);align-items:center;gap:10px;padding:8px 14px;font-family:Geist Mono,monospace;font-size:11px;font-weight:600;display:inline-flex;transform:rotate(-2deg)}.dl-card{border:1.5px solid var(--ink);background:var(--surface);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.dl-card:hover{background:var(--surface-deep)}.dl-card .meta{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-family:Geist Mono,monospace;font-size:11px}.dl-card .filename{color:var(--ink);font-family:Geist Mono,monospace;font-size:15px;font-weight:500}a,button{cursor:pointer}.theme-toggle{border:1.5px solid var(--hairline);background:var(--surface);width:32px;height:32px;color:var(--ink-2);justify-content:center;align-items:center;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.theme-toggle:hover{border-color:var(--ink);color:var(--ink)}.theme-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.theme-toggle .ic{stroke:currentColor;stroke-width:1.5px;fill:none;width:16px;height:16px}[data-density=compact] .shell{padding:0 24px}[data-density=compact] section{padding-top:64px!important;padding-bottom:64px!important}[data-density=compact] .poster{font-size:clamp(56px,9vw,124px)}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.35s both fadeUp}@media (max-width:900px){.order-modal-body,.job-panel-meta,.job-agent-grid,.job-panel-grid{grid-template-columns:1fr}.job-log-row{grid-template-columns:30px 1fr}.job-log-line{grid-column:2}}
