.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:var(--color-scrim);display:flex;align-items:flex-start;justify-content:center;padding:14vh 16px 16px;animation:cmdk-fade .14s ease-out}@keyframes cmdk-fade{0%{opacity:0}to{opacity:1}}.cmdk-panel{width:100%;max-width:560px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 24px 60px color-mix(in srgb,var(--ink-900) 55%,transparent);overflow:hidden;font-family:var(--font-display);display:flex;flex-direction:column;animation:cmdk-slide .2s ease-out}@keyframes cmdk-slide{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.cmdk-form{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--color-border)}.cmdk-icon{color:var(--color-muted);display:inline-flex}.cmdk-icon svg{width:18px;height:18px}.cmdk-input{flex:1;background:transparent;border:none;outline:none;color:var(--color-text);font-family:var(--font-display);font-size:1rem;padding:6px 4px}.cmdk-input::placeholder{color:var(--color-muted)}.cmdk-kbd,kbd{font-family:var(--font-mono);font-size:.7rem;background:var(--color-card);border:1px solid var(--color-border);color:var(--color-muted);padding:2px 6px;border-radius:4px}.cmdk-section-label{padding:10px 14px 4px;font-family:var(--font-display);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--color-muted)}.cmdk-list{list-style:none;margin:0;padding:0 8px 8px;max-height:360px;overflow-y:auto}.cmdk-row{width:100%;background:transparent;border:none;padding:10px 12px;border-radius:8px;text-align:left;display:flex;align-items:baseline;justify-content:space-between;gap:12px;cursor:pointer;font-family:var(--font-display);color:var(--color-text);transition:background .12s,color .12s}.cmdk-row.is-active{background:var(--tint-accent);color:var(--color-accent)}.cmdk-row-label{font-weight:500;font-size:.94rem}.cmdk-row-hint{font-size:.8rem;color:var(--color-muted)}.cmdk-row.is-active .cmdk-row-hint{color:color-mix(in srgb,var(--color-accent) 80%,transparent)}.cmdk-empty{padding:22px 14px;color:var(--color-muted);font-size:.88rem;text-align:center}.cmdk-foot{display:flex;align-items:center;justify-content:flex-end;gap:14px;padding:10px 14px;border-top:1px solid var(--color-border);font-family:var(--font-display);font-size:.78rem;color:var(--color-muted)}.cmdk-foot kbd{margin-right:4px}@media (prefers-reduced-motion: reduce){.cmdk-overlay,.cmdk-panel{animation:none}}.tier-banner{display:flex;align-items:center;gap:12px;padding:9px 18px;background:color-mix(in srgb,var(--color-orange) 14%,transparent);border-bottom:1px solid color-mix(in srgb,var(--color-orange) 40%,transparent);color:var(--color-text);font-family:var(--font-display);font-size:.88rem;line-height:1.4}.tier-banner.is-expired{background:var(--tint-red);border-bottom-color:color-mix(in srgb,var(--color-red) 40%,transparent);color:var(--color-red)}.tier-banner-icon{font-size:.95rem;opacity:.9}.tier-banner-text{flex:1;min-width:0;font-weight:500}.tier-banner-text strong{font-weight:700}.tier-banner-cta{font-family:var(--font-display);font-weight:600;font-size:.86rem;color:inherit;text-decoration:none;padding:4px 10px;border-radius:var(--radius-sm);border:1px solid currentColor;transition:background .15s;white-space:nowrap}.tier-banner-cta:hover{background:color-mix(in srgb,currentColor 12%,transparent)}.tier-banner-dismiss{background:transparent;border:none;color:inherit;font-size:1.2rem;line-height:1;padding:0 6px;cursor:pointer;opacity:.7;transition:opacity .15s}.tier-banner-dismiss:hover{opacity:1}@media (max-width: 560px){.tier-banner{flex-wrap:wrap;padding:8px 12px}.tier-banner-text{flex-basis:100%}}.pcb-page{min-height:100vh;display:flex;flex-direction:column}.pcb-page>main,.pcb-page>.pcb-footer{position:relative;z-index:1}.pcb-shell{width:100%;max-width:var(--content-max);margin-inline:auto;padding-inline:24px}.theme-pcb a{color:inherit;text-decoration:none}.theme-pcb :focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px;border-radius:4px}.pcb-label{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-green)}.pcb-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--radius-btn);font-family:var(--font-body);font-size:14px;font-weight:600;line-height:1;padding:10px 16px;cursor:pointer;transition:opacity .15s ease,border-color .15s ease,background-color .15s ease}.pcb-btn--primary{background:var(--grad-signature);color:var(--text)}.pcb-btn--primary:hover{opacity:.9}.pcb-btn--ghost{background:transparent;border-color:var(--border);color:var(--text)}.pcb-btn--ghost:hover{border-color:color-mix(in srgb,var(--text) 24%,transparent);background:color-mix(in srgb,var(--text) 4%,transparent)}.pcb-btn--lg{padding:13px 22px;font-size:15px}.pcb-nav{position:sticky;top:0;z-index:50;background:transparent;border-bottom:1px solid transparent;transition:background-color .25s ease,border-color .25s ease,backdrop-filter .25s ease}.pcb-nav--scrolled{background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border-bottom-color:var(--border)}.pcb-nav-inner{display:flex;align-items:center;gap:32px;height:64px}@media (min-width: 861px){.pcb-nav-inner{display:grid;grid-template-columns:1fr auto 1fr}.pcb-nav-brand{justify-self:start}.pcb-nav-links{justify-self:center;margin-inline:0}.pcb-nav-actions{justify-self:end;margin-left:0}}.pcb-nav-brand{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-display);font-size:17px;font-weight:700;letter-spacing:var(--tracking-tight);color:var(--text)}.pcb-nav-brand img{width:22px;height:22px;display:block}.pcb-brand-ai{background:var(--grad-signature);-webkit-background-clip:text;background-clip:text;color:transparent}.pcb-nav-links{display:flex;align-items:center;gap:26px;margin-inline:auto}.pcb-nav-link{font-size:14px;font-weight:500;color:var(--text-muted);transition:color .15s ease}.pcb-nav-link:hover{color:var(--text)}.pcb-nav-actions{display:flex;align-items:center;gap:18px;margin-left:auto}.pcb-nav-login{font-size:14px;font-weight:500;color:var(--text-muted);transition:color .15s ease}.pcb-nav-login:hover{color:var(--text)}.pcb-nav-burger{display:none;margin-left:auto;width:40px;height:40px;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:var(--radius-btn);color:var(--text);cursor:pointer}.pcb-nav-burger svg{width:18px;height:18px}.pcb-nav-menu{display:none}@media (max-width: 860px){.pcb-nav-links,.pcb-nav-actions{display:none}.pcb-nav-burger{display:inline-flex}.pcb-nav-menu{display:flex;flex-direction:column;gap:4px;padding:12px 24px 20px;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}.pcb-nav-menu .pcb-nav-link{padding:10px 0;font-size:15px}.pcb-nav-menu-actions{display:flex;align-items:center;gap:16px;padding-top:12px;margin-top:8px;border-top:1px solid var(--border)}}.pcb-hero{padding-top:calc(var(--section-pad-y) * .9);padding-bottom:var(--section-pad-y)}.pcb-hero-content{display:flex;flex-direction:column;align-items:center;text-align:center}.pcb-hero-title{margin:20px 0 0;font-family:var(--font-display);font-size:clamp(38px,5.6vw,62px);font-weight:700;letter-spacing:var(--tracking-tight);line-height:1.08;color:var(--text);text-wrap:balance;max-width:820px}.pcb-hero-sub{margin:20px 0 0;max-width:560px;font-size:17px;line-height:var(--leading-body);color:var(--text-muted)}.pcb-hero-ctas{display:flex;align-items:center;gap:14px;margin-top:32px;flex-wrap:wrap;justify-content:center}.pcb-hero-visual-wrap{position:relative;width:100%;margin-top:72px}.pcb-hero-visual-wrap:before{content:"";position:absolute;top:-12%;right:-6%;bottom:-12%;left:-6%;background:radial-gradient(45% 55% at 32% 40%,color-mix(in srgb,var(--accent-blue) 20%,transparent),transparent 70%),radial-gradient(45% 55% at 68% 60%,color-mix(in srgb,var(--accent-green) 16%,transparent),transparent 70%);filter:blur(48px);pointer-events:none;z-index:0}.pcb-hero-visual{position:relative;z-index:1;min-height:clamp(300px,42vw,520px);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-card);display:flex;align-items:stretch;overflow:hidden}.pcb-section{padding-block:var(--section-pad-y);border-top:1px solid var(--border)}.pcb-section--flush{border-top:0}.pcb-section-title{margin:16px 0 0;font-family:var(--font-display);font-size:clamp(28px,3.6vw,40px);font-weight:700;letter-spacing:var(--tracking-tight);line-height:1.15;color:var(--text);text-wrap:balance;max-width:640px}.pcb-section-body{margin:16px 0 0;max-width:560px;font-size:16px;line-height:var(--leading-body);color:var(--text-muted)}.pcb-section-visual{margin-top:48px}.pcb-section--center .pcb-section-header{display:flex;flex-direction:column;align-items:center;text-align:center}.pcb-footer{margin-top:auto;border-top:1px solid var(--border);padding-block:64px 36px;font-size:14px;color:var(--text-muted)}.pcb-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}.pcb-footer-brand{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:700;font-size:16px;letter-spacing:var(--tracking-tight);color:var(--text)}.pcb-footer-brand img{width:20px;height:20px;display:block}.pcb-footer-tagline{margin:14px 0 0;max-width:260px;line-height:1.6}.pcb-footer-col h3{margin:0 0 14px;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.pcb-footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.pcb-footer-col a{color:var(--text-muted);transition:color .15s ease}.pcb-footer-col a:hover{color:var(--text)}.pcb-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:56px;padding-top:24px;border-top:1px solid var(--border);font-size:13px}.pcb-footer-backed{display:inline-flex;align-items:center;gap:8px}.pcb-footer-backed:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--copper)}@media (max-width: 860px){.pcb-footer-grid{grid-template-columns:repeat(3,1fr);gap:36px 24px}.pcb-footer-grid>div:first-child{grid-column:1 / -1}.pcb-footer-tagline{max-width:none}}@media (max-width: 480px){.pcb-footer-grid{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion: reduce){.pcb-nav,.pcb-btn,.pcb-nav-link,.pcb-nav-login,.pcb-footer-col a{transition:none}}.pcb-trace-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden;background:radial-gradient(70% 60% at 50% 0%,color-mix(in srgb,var(--accent-green) 9%,transparent),transparent 70%)}.pcb-trace-bg svg{width:100%;height:100%;display:block}.pcb-trace-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(55% 50% at 50% 34%,color-mix(in srgb,var(--bg) 78%,transparent),transparent 100%)}.pcb-trace{fill:none;stroke:color-mix(in srgb,var(--copper) 55%,transparent);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.pcb-via{fill:var(--bg);stroke:color-mix(in srgb,var(--copper) 65%,transparent);stroke-width:2}.pcb-trace-pulse{fill:none;stroke:color-mix(in srgb,var(--copper) 55%,#fff);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:8 92;filter:drop-shadow(0 0 5px var(--copper));animation-name:pcb-current;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes pcb-current{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}@media (prefers-reduced-motion: reduce){.pcb-trace-pulse{animation:none;stroke-dashoffset:8}}.theme-pcb{--bg: #0a0f0e;--bg-elevated: #121a18;--border: rgba(120, 200, 180, .1);--text: #eaf2ef;--text-muted: #8ca39c;--accent-blue: #024879;--accent-green: #005542;--copper: #63481c;--grad-signature: linear-gradient( 135deg, color-mix(in srgb, var(--copper) 82%, #fff) 0%, var(--copper) 50%, color-mix(in srgb, var(--copper) 78%, #000) 100% );--font-display: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--tracking-tight: -.02em;--leading-body: 1.6;--content-max: 1140px;--section-pad-y: 96px;--radius-card: 14px;--radius-btn: 8px;background:var(--bg);color:var(--text);font-family:var(--font-body);line-height:var(--leading-body);color-scheme:dark}@media (max-width: 768px){.theme-pcb{--section-pad-y: 56px}}.pcb-battery{--batt-ok: #35d399;--batt-low: #f0b429;--batt-critical: #ef4466;--batt-outline: color-mix(in srgb, var(--text) 28%, transparent);display:none;position:fixed;top:50%;right:6px;transform:translateY(-50%);z-index:60;flex-direction:column;align-items:center;gap:5px;padding:10px 8px;cursor:grab;touch-action:none}.pcb-battery:active{cursor:grabbing}@media (hover: hover) and (min-width: 861px){.pcb-battery{display:flex}html.pcb-battery-page{scrollbar-width:none}html.pcb-battery-page::-webkit-scrollbar{display:none}}.pcb-battery-cap{width:11px;height:5px;border-radius:3px 3px 0 0;background:var(--batt-outline)}.pcb-battery-body{position:relative;width:22px;height:160px;border:1px solid var(--batt-outline);border-radius:6px;background:color-mix(in srgb,var(--bg-elevated) 70%,transparent);overflow:hidden}.pcb-battery-fill{position:absolute;inset:auto 0 0 0;border-radius:3px 3px 4px 4px;transition:background-color .25s ease}.pcb-battery-fill--ok{background:var(--batt-ok);box-shadow:0 0 10px color-mix(in srgb,var(--batt-ok) 45%,transparent)}.pcb-battery-fill--low{background:var(--batt-low);box-shadow:0 0 10px color-mix(in srgb,var(--batt-low) 45%,transparent)}.pcb-battery-fill--critical{background:var(--batt-critical);box-shadow:0 0 10px color-mix(in srgb,var(--batt-critical) 45%,transparent)}.pcb-battery-pct{width:4ch;text-align:center;font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.06em;font-variant-numeric:tabular-nums;color:var(--text-muted);-webkit-user-select:none;user-select:none}@media (prefers-reduced-motion: reduce){.pcb-battery-fill{transition:none}}.haf{flex:1;display:flex;flex-direction:column;min-width:0;font-size:13px;line-height:1.45;text-align:left;-webkit-user-select:none;user-select:none}.haf-chrome{display:flex;align-items:center;gap:14px;padding:10px 16px;border-bottom:1px solid var(--border)}.haf-dots{display:inline-flex;gap:6px}.haf-dots i{width:10px;height:10px;border-radius:50%;background:color-mix(in srgb,var(--text-muted) 28%,transparent)}.haf-url{margin-inline:auto;font-family:var(--font-mono);font-size:11px;color:var(--text-muted);background:color-mix(in srgb,var(--text) 4%,transparent);border:1px solid var(--border);border-radius:999px;padding:3px 14px}.haf-live{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.haf-body{flex:1;display:grid;grid-template-columns:300px minmax(0,1fr);min-height:0}.haf-chat{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--border)}.haf-chat-head{padding:12px 16px;border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.haf-msgs{flex:1;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;padding:14px;overflow:hidden}.haf-msg{margin:0;max-width:92%;padding:9px 12px;border-radius:10px;font-size:12px;color:var(--text-muted)}.haf-msg--user{align-self:flex-end;background:color-mix(in srgb,var(--text) 7%,transparent);color:var(--text);border-bottom-right-radius:3px}.haf-msg--agent{align-self:flex-start;border:1px solid var(--border);background:color-mix(in srgb,var(--accent-green) 7%,transparent);border-bottom-left-radius:3px}.haf-msg--agent strong{color:var(--text);font-weight:600}.haf-input{display:flex;align-items:center;gap:2px;margin:0 14px 14px;padding:9px 12px;min-height:34px;border:1px solid var(--border);border-radius:var(--radius-btn);background:color-mix(in srgb,var(--text) 3%,transparent)}.haf-input-hint{font-size:12px;color:color-mix(in srgb,var(--text) 78%,transparent);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.haf-caret{flex:none;width:1.5px;height:14px;background:var(--text);animation:haf-blink 1.1s steps(1) infinite}@keyframes haf-blink{50%{opacity:0}}.haf-main{display:flex;flex-direction:column;min-height:0;min-width:0}.haf-tabs{display:flex;align-items:center;gap:18px;padding:12px 18px;border-bottom:1px solid var(--border)}.haf-tab{font-size:12px;font-weight:500;color:var(--text-muted)}.haf-tab--active{color:var(--text);box-shadow:0 12px 0 -10px var(--accent-green)}.haf-check{margin-left:auto;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;color:color-mix(in srgb,var(--accent-green) 55%,var(--text))}.haf-rows{flex:1;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;min-height:0}.haf-row{flex:1;display:grid;grid-template-columns:200px minmax(0,1fr) max-content max-content;align-items:center;gap:18px;padding:6px 18px;min-height:0}.haf-row+.haf-row{border-top:1px solid var(--border)}.haf-row--tick{animation:haf-tick .9s ease-out}@keyframes haf-tick{0%{background:color-mix(in srgb,var(--accent-green) 12%,transparent)}to{background:transparent}}.haf-mpn{font-family:var(--font-mono);font-size:11.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.haf-name{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.haf-name-tag{font-style:normal;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--copper) 70%,var(--text))}.haf-meta{font-family:var(--font-mono);font-size:10.5px;color:var(--text-muted);white-space:nowrap}.haf-price{justify-self:end;min-width:44px;text-align:right;font-family:var(--font-mono);font-size:11.5px;color:var(--text)}.haf-foot{display:flex;align-items:center;gap:16px;padding:12px 18px;border-top:1px solid var(--border)}.haf-total{font-size:12px;color:var(--text-muted)}.haf-total strong{margin-left:6px;font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--text)}.haf-checkout{margin-left:auto;padding:7px 14px;border-radius:var(--radius-btn);background:var(--grad-signature);font-size:12px;font-weight:600;color:var(--text)}@media (max-width: 1020px){.haf-row{grid-template-columns:170px minmax(0,1fr) max-content max-content;gap:12px}}@media (max-width: 860px){.haf-body{grid-template-columns:minmax(0,1fr)}.haf-chat{display:none}}@media (max-width: 560px){.haf-name,.haf-url{display:none}.haf-row{grid-template-columns:minmax(0,1fr) max-content max-content}}@media (prefers-reduced-motion: reduce){.haf-caret,.haf-row--tick{animation:none}}.hiw-section{padding-block:0}.hiw-pin{position:sticky;top:0;height:100vh;display:flex;align-items:center}.hiw-frame{width:min(1500px,100%);margin-inline:auto;padding-inline:48px;display:flex;flex-direction:column;justify-content:center;gap:44px}.hiw-header{display:flex;flex-direction:column;align-items:center;text-align:center}.hiw-header .pcb-section-title{margin-top:14px}.hiw-pin-grid{width:100%;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,5fr);gap:48px;align-items:center}.hiw-pin-grid>.hiw-visual{grid-column:2;grid-row:1}.hiw-pin-grid>.hiw-acc{grid-column:1;grid-row:1}.hiw-acc{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.hiw-acc-item{display:block;width:100%;padding:12px 16px;background:transparent;border:1px solid transparent;border-radius:var(--radius-btn);transition:background-color .25s ease,border-color .25s ease}.hiw-acc-item--open{background:var(--bg-elevated);border-color:var(--border)}.hiw-acc-head{display:flex;align-items:baseline;gap:12px;width:100%;padding:0;background:none;border:0;text-align:left;cursor:pointer;font-family:var(--font-body)}.hiw-acc-num{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;color:var(--text-muted);transition:color .25s ease}.hiw-acc-item--open .hiw-acc-num{color:var(--accent-green)}.hiw-acc-title{font-size:15px;font-weight:600;letter-spacing:var(--tracking-tight);color:var(--text-muted);transition:color .25s ease}.hiw-acc-item--open .hiw-acc-title{color:var(--text)}.hiw-acc-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}.hiw-acc-item--open .hiw-acc-body{grid-template-rows:1fr}.hiw-acc-body-clip{display:block;overflow:hidden;min-height:0}.hiw-acc-desc{display:block;padding:8px 0 2px 27px;font-size:13.5px;line-height:var(--leading-body);color:var(--text-muted)}.hiw-visual{height:clamp(440px,62vh,660px);display:flex;align-items:center;justify-content:center;padding:40px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-card);overflow:hidden}.hiw-stage{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.hiw-input{display:flex;align-items:baseline;gap:10px;width:100%;max-width:620px;padding:20px 22px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-btn);font-family:var(--font-mono);font-size:15px;color:var(--text);min-height:132px}.hiw-input-prompt{color:var(--accent-green);flex-shrink:0}.hiw-input-text{line-height:1.7;overflow-wrap:anywhere}.hiw-caret{display:inline-block;width:7px;height:1.05em;margin-left:2px;vertical-align:text-bottom;background:var(--text);animation:hiw-blink 1.1s steps(1) infinite}@keyframes hiw-blink{50%{opacity:0}}.hiw-radar{position:relative;width:min(760px,100%);height:min(100%,480px);margin-inline:auto}.hiw-radar-lines{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.hiw-radar-line{stroke:var(--accent-blue);stroke-width:1.5;opacity:.3;transition:opacity .3s ease}.hiw-radar-line--lit{opacity:1}.hiw-node{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 16px;border:1px solid var(--border);border-radius:var(--radius-btn);background:var(--bg);transition:border-color .3s ease,box-shadow .3s ease}.hiw-node-name{font-family:var(--font-mono);font-size:12.5px;color:var(--text-muted);transition:color .3s ease}.hiw-node-count{font-family:var(--font-mono);font-size:10.5px;color:var(--accent-green);opacity:0;transition:opacity .35s ease .1s}.hiw-node--lit{border-color:color-mix(in srgb,var(--accent-blue) 70%,var(--text) 12%);box-shadow:0 0 22px color-mix(in srgb,var(--accent-blue) 50%,transparent)}.hiw-node--lit .hiw-node-name{color:var(--text)}.hiw-node--lit .hiw-node-count{opacity:1}.hiw-hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}.hiw-hub-ring{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent-green) 55%,transparent);animation:hiw-ring 2.4s ease-out infinite;pointer-events:none}.hiw-hub-ring--late{animation-delay:1.2s}@keyframes hiw-ring{0%{transform:scale(1);opacity:.7}to{transform:scale(2.4);opacity:0}}.hiw-agent{display:inline-flex;align-items:center;padding:6px 12px;background:var(--bg);font-family:var(--font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--text)}.hiw-bom{width:100%;max-width:660px}.hiw-bom-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.hiw-bom-row{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,4fr) auto auto;gap:14px;align-items:baseline;padding:11px 4px;border-bottom:1px solid var(--border);font-size:13.5px}.hiw-bom-mpn{font-family:var(--font-mono);font-size:12.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hiw-bom-name{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hiw-bom-qty{font-family:var(--font-mono);font-size:12.5px;color:var(--text-muted)}.hiw-bom-price{font-family:var(--font-mono);font-size:12.5px;color:var(--text);text-align:right;min-width:52px}.hiw-bom-total{display:flex;align-items:baseline;justify-content:space-between;padding:14px 4px 2px;font-size:14px;font-weight:600;color:var(--text)}.hiw-bom-total-value{font-family:var(--font-mono);color:var(--accent-green)}.hiw-chat{width:100%;max-width:560px;display:flex;flex-direction:column;gap:12px}.hiw-msg{max-width:85%;padding:11px 15px;border-radius:var(--radius-card);font-size:14px;line-height:1.5}.hiw-msg--user{align-self:flex-end;background:var(--accent-blue);color:var(--text);border-bottom-right-radius:4px}.hiw-msg--agent{align-self:flex-start;background:var(--bg);border:1px solid var(--border);color:var(--text);border-bottom-left-radius:4px}.hiw-swap{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:6px;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-btn);background:var(--bg);font-family:var(--font-mono);font-size:12.5px}.hiw-swap-old{color:var(--text-muted);text-decoration:line-through}.hiw-swap-arrow{color:var(--text-muted)}.hiw-swap-new{color:var(--text)}.hiw-swap-delta{margin-left:auto;color:var(--accent-green)}.hiw-chat-total{padding-inline:2px}.hiw-schematic{width:100%;height:100%}.hiw-sch-box{fill:var(--bg);stroke:var(--border);stroke-width:1}.hiw-sch-label{fill:var(--text);font-family:var(--font-mono);font-size:13px;text-anchor:middle}.hiw-sch-sub{fill:var(--text-muted);font-family:var(--font-body);font-size:10.5px;text-anchor:middle}.hiw-sch-net{fill:var(--text-muted);font-family:var(--font-mono);font-size:10px;text-anchor:middle}.hiw-sch-net--right{text-anchor:start}.hiw-sch-net--left{text-anchor:end}.hiw-sch-trace{fill:none;stroke:var(--copper);stroke-width:1.5;stroke-linecap:round}.hiw-sch-dot{fill:var(--copper)}.hiw-checkout{width:100%;max-width:520px;display:flex;flex-direction:column}.hiw-cart-list{list-style:none;margin:0;padding:0}.hiw-cart-row{display:flex;align-items:baseline;gap:14px;padding:11px 4px;border-bottom:1px solid var(--border);font-size:14px}.hiw-cart-supplier{color:var(--text);font-weight:600}.hiw-cart-parts{color:var(--text-muted);font-size:13px}.hiw-cart-amount{margin-left:auto;font-family:var(--font-mono);font-size:12.5px;color:var(--text)}.hiw-checkout-btn{align-self:center;margin-top:22px;pointer-events:none}.hiw-static{display:flex;flex-direction:column;gap:48px}.hiw-static-step{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px;align-items:center}.hiw-step-num{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;color:var(--accent-green)}.hiw-step-title{margin:10px 0 0;font-family:var(--font-display);font-size:22px;font-weight:700;letter-spacing:var(--tracking-tight);color:var(--text)}.hiw-step-desc{margin:10px 0 0;max-width:400px;font-size:15px;line-height:var(--leading-body);color:var(--text-muted)}.hiw-static .hiw-step{padding-left:24px;border-left:1px solid var(--accent-green)}.hiw-static .hiw-visual{min-height:0;max-height:none;padding:24px}@media (max-width: 860px){.hiw-frame{padding-inline:20px;gap:22px}.hiw-header .pcb-section-title{font-size:clamp(22px,5.5vw,28px)}.hiw-pin-grid{display:flex;flex-direction:column;gap:18px}.hiw-pin-grid>.hiw-visual{width:100%;min-height:0;height:clamp(220px,32vh,300px);padding:18px}.hiw-acc{width:100%;gap:3px}.hiw-acc-item{padding:8px 12px}.hiw-acc-title{font-size:14px}.hiw-acc-desc{font-size:13px;padding-left:25px}.hiw-radar{height:100%}.hiw-node{padding:6px 10px}.hiw-node-name{font-size:11px}.hiw-node-count{font-size:9.5px}.hiw-agent{font-size:10.5px;padding:6px 12px}.hiw-bom-row{grid-template-columns:minmax(0,1fr) auto auto}.hiw-bom-name{display:none}.hiw-static-step{grid-template-columns:1fr;gap:20px}}@media (prefers-reduced-motion: reduce){.hiw-caret{animation:none}.hiw-acc-item,.hiw-acc-num,.hiw-acc-title,.hiw-acc-body,.hiw-node,.hiw-node-name,.hiw-node-count,.hiw-radar-line{transition:none}.hiw-hub-ring{animation:none}}.pcb-proof{padding-block:calc(var(--section-pad-y) * .7);border-top:1px solid var(--border)}.pcb-proof-inner{display:flex;flex-direction:column;align-items:center;text-align:center}.pcb-proof-count{margin:0;display:flex;flex-direction:column;align-items:center;gap:10px}.pcb-proof-number{font-family:var(--font-mono);font-size:clamp(40px,6vw,64px);font-weight:500;letter-spacing:var(--tracking-tight);color:var(--accent-green);font-variant-numeric:tabular-nums}.pcb-proof-caption{font-size:15px;color:var(--text-muted)}.pcb-proof-pills{list-style:none;margin:32px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px}.pcb-proof-pill{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:12.5px;letter-spacing:.04em;color:var(--text-muted)}.pcb-proof-pill+.pcb-proof-pill:before{content:"·";margin-right:22px;color:color-mix(in srgb,var(--text-muted) 50%,transparent)}.pcb-marquee{margin-top:56px;overflow:hidden;mask-image:linear-gradient(to right,transparent,black 12%,black 88%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 12%,black 88%,transparent)}.pcb-marquee-track{display:flex;width:max-content;animation:pcb-marquee-scroll 45s linear infinite}@keyframes pcb-marquee-scroll{to{transform:translate(-50%)}}.pcb-marquee-list{list-style:none;margin:0;padding:0;display:flex;align-items:center}.pcb-marquee-item{padding:6px 40px;font-family:var(--font-display);font-size:17px;font-weight:600;letter-spacing:.02em;color:var(--text-muted);white-space:nowrap;border-right:1px solid var(--border)}.pcb-marquee--static{mask-image:none;-webkit-mask-image:none}.pcb-marquee--static .pcb-marquee-track{width:auto;animation:none;justify-content:center}.pcb-marquee--static .pcb-marquee-list{flex-wrap:wrap;justify-content:center;row-gap:10px}.pcb-marquee--static .pcb-marquee-item:last-child{border-right:none}@media (prefers-reduced-motion: reduce){.pcb-marquee-track{animation:none}}.b3d-scroller{position:relative;height:300vh;--pe: min(1, calc(var(--p, 0) * 1.25))}.b3d-stage{position:sticky;top:0;height:100vh;display:flex;align-items:flex-end;justify-content:center}.b3d-fit{transform:scale(var(--b3d-scale, 1))}.b3d-viewport{perspective:1400px;width:480px;height:320px;margin-bottom:60px}.b3d-world{position:relative;width:480px;height:320px;transform-style:preserve-3d;transform:rotateX(calc(56deg - var(--pe, 0) * 13deg)) rotate(calc(-35deg + var(--pe, 0) * 36deg))}.b3d-board{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--board-mask);border-radius:10px;border:1px solid color-mix(in srgb,var(--board-silk) 14%,transparent);transform-style:preserve-3d}.b3d-edge{position:absolute;background:color-mix(in srgb,var(--copper-300) 22%,var(--board-mask))}.b3d-edge--front{left:0;right:0;top:100%;height:12px;transform-origin:top;transform:rotateX(-90deg)}.b3d-edge--right{top:0;bottom:0;left:100%;width:12px;transform-origin:left;transform:rotateY(90deg)}.b3d-silk{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.b3d-traces path{fill:none;stroke:color-mix(in srgb,var(--copper-400) 30%,transparent);stroke-width:1.5;stroke-linecap:round}.b3d-fp{fill:none;stroke:color-mix(in srgb,var(--board-silk) 26%,transparent);stroke-width:1;stroke-dasharray:3 3}.b3d-fp-ref{fill:color-mix(in srgb,var(--board-silk) 55%,transparent);font-family:var(--font-mono);font-size:9px;letter-spacing:.08em}.b3d-pad{fill:color-mix(in srgb,var(--copper-400) 80%,var(--board-mask))}.b3d-legend{fill:color-mix(in srgb,var(--board-silk) 38%,transparent);font-family:var(--font-mono);font-size:10px;letter-spacing:.16em}.b3d-hole{fill:var(--color-bg);stroke:color-mix(in srgb,var(--board-silk) 30%,transparent);stroke-width:1.5}.b3d-shadow{position:absolute;border-radius:50%;background:radial-gradient(closest-side,var(--color-scrim),transparent 72%);opacity:clamp(.12,calc(.5 - (max(0,calc(var(--pe, 0) - .24))*.55)),.5)}.b3d-part{position:absolute;transform-style:preserve-3d;--t: max(0, calc((var(--pe, 0) - var(--start)) / (1 - var(--start))));transform:translate3d(calc(var(--sx, 0px) * var(--t)),calc(var(--sy, 0px) * var(--t)),calc(var(--depth) + var(--lift, 0px) * var(--t))) rotate(calc(var(--rz, 0deg) * var(--t)))}.b3d-part:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:color-mix(in srgb,var(--board-mask) 65%,var(--wall-base, var(--board-mask-edge)));transform:translateZ(calc(-1 * var(--depth)))}.b3d-part:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(315deg,transparent 62%,color-mix(in srgb,var(--board-silk) 13%,transparent)),linear-gradient(135deg,transparent 55%,var(--color-scrim) 135%);pointer-events:none}.b3d-wall{position:absolute;backface-visibility:visible}.b3d-wall--n{left:0;right:0;top:0;height:var(--depth);transform-origin:top;transform:rotateX(-90deg);background:color-mix(in srgb,var(--board-silk) 22%,var(--wall-base, var(--board-mask-edge)))}.b3d-wall--s{left:0;right:0;top:100%;height:var(--depth);transform-origin:top;transform:rotateX(-90deg);background:color-mix(in srgb,var(--board-mask) 40%,var(--wall-base, var(--board-mask-edge)))}.b3d-wall--w{left:0;top:0;bottom:0;width:var(--depth);transform-origin:left;transform:rotateY(90deg);background:color-mix(in srgb,var(--board-silk) 10%,var(--wall-base, var(--board-mask-edge)))}.b3d-wall--e{left:100%;top:0;bottom:0;width:var(--depth);transform-origin:left;transform:rotateY(90deg);background:color-mix(in srgb,var(--board-mask) 62%,var(--wall-base, var(--board-mask-edge)))}.b3d-eink-fpc{position:absolute;left:30%;right:36%;top:100%;height:12px;transform-origin:top;transform:rotateX(-64deg);border-radius:0 0 2px 2px;background:color-mix(in srgb,var(--board-mask) 35%,var(--board-mask-edge))}.b3d-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.b3d-part--mcu,.b3d-part--eink{--wall-base: var(--cmp-epoxy);border-radius:4px}.b3d-part--sensor{--wall-base: var(--cmp-steel-dark);border-radius:2px}.b3d-part--charger{--wall-base: var(--board-mask-edge);border-radius:4px}.b3d-part--crystal{--wall-base: var(--cmp-steel-dark);border-radius:5px}.b3d-part--resistor{--wall-base: color-mix(in srgb, var(--cmp-ceramic) 70%, var(--cmp-steel));border-radius:1px}.b3d-etch{fill:color-mix(in srgb,var(--cmp-epoxy) 80%,transparent);font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:.14em}.b3d-etch--sub{font-size:6.5px;opacity:.75;letter-spacing:.22em}.b3d-ink{fill:color-mix(in srgb,var(--cmp-epoxy) 92%,transparent);font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.06em}.b3d-ink--big{font-size:26px;font-weight:700;letter-spacing:0}.b3d-ink--tiny{font-size:7px;font-weight:600;letter-spacing:.22em;opacity:.72}.b3d-part--header{--wall-base: var(--cmp-epoxy);background:var(--cmp-epoxy);border-radius:2px;border:1px solid color-mix(in srgb,var(--cmp-steel) 40%,transparent)}.b3d-pin{position:absolute;left:var(--pin-x);top:50%;width:5px;height:5px;transform:translate(-50%,-50%);transform-style:preserve-3d}.b3d-pin-shaft{position:absolute;left:0;top:0;width:5px;height:10px;transform-origin:top;transform:rotateX(90deg);background:linear-gradient(0deg,color-mix(in srgb,var(--cmp-gold) 70%,var(--cmp-epoxy)),var(--cmp-gold))}.b3d-pin-tip{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:1px;background:color-mix(in srgb,var(--cmp-gold) 80%,var(--cmp-silver));transform:translateZ(10px)}.b3d-part--cap{--wall-base: var(--cmp-epoxy);border-radius:50%;transform-style:preserve-3d}.b3d-cap-seg{position:absolute;left:50%;top:50%;width:11px;height:var(--depth);transform-origin:top center;transform:translate(-50%) rotate(var(--seg-rot)) translateY(17px) rotateX(-90deg)}.b3d-callouts{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.b3d-leaders{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.b3d-leader{stroke:color-mix(in srgb,var(--color-accent) 55%,transparent);stroke-width:1.5;stroke-dasharray:4 4;vector-effect:non-scaling-stroke;opacity:clamp(0,calc((var(--pe, 0) - var(--start, 0)) * 6),1)}.b3d-callout{position:absolute;display:flex;align-items:baseline;gap:8px;opacity:clamp(0,calc((var(--pe, 0) - var(--start, 0)) * 6),1)}.b3d-callout-ref{font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.1em;color:var(--color-accent);border:1px solid color-mix(in srgb,var(--color-accent) 40%,transparent);border-radius:3px;padding:1px 6px;line-height:1.3}.b3d-callout-mpn{font-family:var(--font-mono);font-size:.82rem;font-weight:600;color:var(--color-text);white-space:nowrap}.b3d-callout-price{font-family:var(--font-mono);font-size:.78rem;color:var(--color-muted)}@media (max-width: 960px){.b3d-fit{--b3d-scale: .78}.b3d-stage{height:500px;top:calc(50vh - 250px)}.b3d-callout-mpn{font-size:.74rem}}@media (max-width: 720px){.b3d-scroller{height:auto;--p: .9 !important}.b3d-stage{position:static;height:auto;flex-direction:column;justify-content:flex-start}.b3d-fit{--b3d-scale: .58}.b3d-viewport{margin:-30px 0 -40px}.b3d-leaders{display:none}.b3d-callouts{position:static;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;padding:0 16px}.b3d-callout{position:static}}@media (prefers-reduced-motion: reduce){.b3d-scroller{height:auto;--p: .9 !important}.b3d-stage{position:static}}.about-hero-inner{display:flex;flex-direction:column;align-items:center;text-align:center}.about-hero-inner .pcb-section-body{max-width:680px}.about-founders{margin-top:48px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 960px){.about-founders{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.about-founders{grid-template-columns:1fr}}.about-founder{display:flex;flex-direction:column;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-card);padding:24px}.about-founder-head{display:flex;align-items:center;gap:14px}.about-founder-id{min-width:0}.about-founder-photo,.about-founder-avatar{flex:none;width:56px;height:56px;border-radius:50%;border:1px solid var(--border)}.about-founder-photo{object-fit:cover}.about-founder-avatar{display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--text) 6%,transparent);font-family:var(--font-display);font-size:17px;font-weight:700;color:var(--text-muted)}.about-founder-name{margin:0;font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:var(--tracking-tight);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.about-founder-role{margin:4px 0 0;font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.about-founder-bio{margin:16px 0 0;font-size:14px;line-height:var(--leading-body);color:var(--text-muted)}.about-founder-linkedin{margin-left:auto;align-self:flex-start;color:var(--text-muted);transition:color .15s ease}.about-founder-linkedin:hover{color:var(--text)}.about-founder-linkedin svg{width:18px;height:18px;display:block}.about-outro-inner{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.about-backed{display:inline-flex;align-items:center;gap:8px;margin:0;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.about-backed:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--copper)}.about-contact{margin:0;font-size:15px;color:var(--text-muted)}.about-contact a{color:color-mix(in srgb,var(--accent-green) 35%,var(--text));text-decoration:underline;text-underline-offset:3px}@media (prefers-reduced-motion: reduce){.about-founder-linkedin{transition:none}}.pricing-hero{padding-bottom:40px}.pricing-hero-inner{display:flex;flex-direction:column;align-items:center;text-align:center}.pricing-tiers-section{padding-bottom:calc(var(--section-pad-y) * .7)}.pricing-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}@media (max-width: 1024px){.pricing-tiers{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.pricing-tiers{grid-template-columns:1fr}}.pcb-tier{position:relative;display:flex;flex-direction:column;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-card);padding:28px}.pcb-tier--highlighted{border-color:color-mix(in srgb,var(--copper) 60%,transparent)}.pcb-tier-badge{position:absolute;top:29px;right:28px;color:var(--copper);font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.pcb-tier-label{margin:0;font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.pcb-tier-price{margin:14px 0 0;font-family:var(--font-display);font-size:40px;font-weight:700;letter-spacing:var(--tracking-tight);line-height:1;color:var(--text)}.pcb-tier-period{margin-left:6px;font-size:14px;font-weight:500;color:var(--text-muted)}.pcb-tier-subtext{margin:8px 0 0;font-size:13px;color:var(--text-muted)}.pcb-tier-features{list-style:none;margin:26px 0 28px;padding:0;display:flex;flex-direction:column;gap:11px}.pcb-tier-feature{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text)}.pcb-tier-feature--out{color:color-mix(in srgb,var(--text-muted) 60%,transparent)}.pcb-tier-mark{display:inline-flex;flex:none}.pcb-tier-mark svg{width:15px;height:15px}.pcb-tier-mark--yes{color:color-mix(in srgb,var(--accent-green) 40%,var(--text))}.pcb-tier-mark--no{color:color-mix(in srgb,var(--text-muted) 45%,transparent)}.pcb-tier-cta{margin-top:auto;width:100%}.pricing-beta-section{padding-bottom:24px}.pricing-beta-banner{max-width:780px;margin:0 auto;padding:16px 24px;border:1px solid color-mix(in srgb,var(--copper) 50%,transparent);background:color-mix(in srgb,var(--copper) 9%,transparent);border-radius:var(--radius-card);font-size:14px;line-height:var(--leading-body);color:var(--text-muted);text-align:center}.pricing-faq-inner{display:flex;flex-direction:column;align-items:center;text-align:center}.pcb-faq{margin-top:40px;width:100%;max-width:720px;border-top:1px solid var(--border);text-align:left}.pcb-faq-row{border-bottom:1px solid var(--border)}.pcb-faq-q{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:18px 0;background:none;border:none;cursor:pointer;text-align:left;font-family:var(--font-body);font-size:15px;font-weight:500;color:var(--text)}.pcb-faq-toggle{flex:none;font-family:var(--font-mono);font-size:16px;color:var(--text-muted)}.pcb-faq-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}.pcb-faq-body--open{grid-template-rows:1fr}.pcb-faq-body-clip{overflow:hidden;min-height:0}.pcb-faq-a{margin:0;padding:0 32px 18px 0;font-size:14px;line-height:var(--leading-body);color:var(--text-muted);opacity:0;transition:opacity .25s ease .05s}.pcb-faq-body--open .pcb-faq-a{opacity:1}@media (prefers-reduced-motion: reduce){.pcb-faq-body,.pcb-faq-a{transition:none}}.pricing-cta{display:flex;flex-direction:column;align-items:center;text-align:center}.pricing-cta-btn{margin-top:28px}.suppliers-hero{padding-bottom:40px}.suppliers-hero-inner{display:flex;flex-direction:column;align-items:center;text-align:center}.suppliers-hero-inner .pcb-section-body{max-width:640px}.suppliers-grid-section{padding-bottom:calc(var(--section-pad-y) * .7)}.suppliers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width: 960px){.suppliers-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.suppliers-grid{grid-template-columns:1fr}}.supplier-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-card);padding:22px}.supplier-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.supplier-name{margin:0;font-family:var(--font-display);font-size:16px;font-weight:700;letter-spacing:var(--tracking-tight);color:var(--text)}.supplier-badge{flex:none;font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.supplier-badge--live{color:color-mix(in srgb,var(--accent-green) 40%,var(--text))}.supplier-badge--catalog{color:var(--text-muted)}.supplier-blurb{margin:12px 0 0;font-size:13.5px;line-height:var(--leading-body);color:var(--text-muted)}.suppliers-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}@media (max-width: 860px){.suppliers-notes{grid-template-columns:1fr;gap:28px}}.supplier-note h3{margin:0 0 8px;font-family:var(--font-display);font-size:15px;font-weight:700;letter-spacing:var(--tracking-tight);color:var(--text)}.supplier-note p{margin:0;font-size:14px;line-height:var(--leading-body);color:var(--text-muted)}.suppliers-cta{display:flex;flex-direction:column;align-items:center;text-align:center}.suppliers-cta-btn{margin-top:28px}.changelog-shell{max-width:860px}.changelog-list{margin-top:48px}.changelog-entry{display:grid;grid-template-columns:160px minmax(0,1fr);gap:24px;padding:28px 0;border-top:1px solid var(--border)}@media (max-width: 640px){.changelog-entry{grid-template-columns:1fr;gap:10px}}.changelog-meta{display:flex;flex-direction:column;align-items:flex-start;gap:8px}@media (max-width: 640px){.changelog-meta{flex-direction:row;align-items:center}}.changelog-date{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--text-muted)}.changelog-tag{font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.changelog-tag--new{color:color-mix(in srgb,var(--accent-green) 40%,var(--text))}.changelog-tag--improved{color:color-mix(in srgb,var(--copper) 60%,var(--text))}.changelog-title{margin:0;font-family:var(--font-display);font-size:17px;font-weight:700;letter-spacing:var(--tracking-tight);color:var(--text)}.changelog-points{margin:12px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:var(--leading-body);color:var(--text-muted)}.pcb-contact-inner{display:flex;flex-direction:column;align-items:center;text-align:center}.pcb-contact-inner .pcb-section-body{max-width:480px}.pcb-contact-card{width:100%;max-width:560px;margin-top:40px;padding:28px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-card);display:flex;flex-direction:column;text-align:left}.pcb-contact-label{font-size:13px;font-weight:500;color:var(--text);margin-bottom:8px}.pcb-contact-label+.pcb-contact-label,.pcb-contact-input+.pcb-contact-label{margin-top:18px}.pcb-contact-optional{font-weight:400;color:var(--text-muted)}.pcb-contact-input{width:100%;padding:10px 12px;background:color-mix(in srgb,var(--text) 3%,transparent);border:1px solid var(--border);border-radius:var(--radius-btn);font-family:var(--font-body);font-size:14px;color:var(--text)}.pcb-contact-input::placeholder{color:color-mix(in srgb,var(--text-muted) 70%,transparent)}.pcb-contact-input:focus{outline:none;border-color:color-mix(in srgb,var(--text) 25%,transparent)}.pcb-contact-textarea{resize:vertical;min-height:140px;line-height:var(--leading-body)}.pcb-contact-error{margin:14px 0 0;font-size:13px;color:color-mix(in srgb,var(--copper) 55%,var(--text))}.pcb-contact-send{margin-top:20px;align-self:flex-start}.pcb-contact-send:disabled{opacity:.6;cursor:default}.pcb-contact-alt{margin:18px 0 0;font-size:13px;color:var(--text-muted)}.pcb-contact-alt a{color:color-mix(in srgb,var(--accent-green) 35%,var(--text));text-decoration:underline;text-underline-offset:3px}.pcb-contact-card--sent{align-items:flex-start}.pcb-contact-sent-title{margin:0;font-family:var(--font-display);font-size:17px;font-weight:700;letter-spacing:var(--tracking-tight);color:var(--text)}.pcb-contact-sent-body{margin:10px 0 0;font-size:14px;line-height:var(--leading-body);color:var(--text-muted)}.legal-shell{max-width:72ch}.legal-meta{margin:14px 0 0;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--text-muted)}.legal-disclaimer{margin-top:28px;padding:16px 20px;border:1px solid color-mix(in srgb,var(--copper) 50%,transparent);background:color-mix(in srgb,var(--copper) 9%,transparent);border-radius:var(--radius-card);font-size:14px;line-height:var(--leading-body);color:var(--text-muted)}.legal-disclaimer strong{color:var(--text)}.legal-disclaimer a,.legal-body a{color:color-mix(in srgb,var(--accent-green) 35%,var(--text));text-decoration:underline;text-underline-offset:3px}.legal-body{margin-top:40px}.legal-body h2{margin:36px 0 10px;font-family:var(--font-display);font-size:19px;font-weight:700;letter-spacing:var(--tracking-tight);color:var(--text)}.legal-body h2:first-child{margin-top:0}.legal-body h2:before{content:"§ " counter(legal-section,decimal-leading-zero);display:inline-block;margin-right:10px;font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.1em;color:var(--color-accent);transform:translateY(-1px)}.legal-body p{margin:0 0 14px;font-size:15px;line-height:1.7;color:var(--text-muted)}.legal-body p strong{color:var(--color-text)}.legal-body strong{color:var(--text)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 20px;background:var(--color-bg);background-image:linear-gradient(var(--color-border-subtle) 1px,transparent 1px),linear-gradient(90deg,var(--color-border-subtle) 1px,transparent 1px);background-size:28px 28px;font-family:var(--font-display)}.auth-shell{width:100%;max-width:440px;display:flex;flex-direction:column;align-items:center}.auth-logo{display:inline-flex;align-items:center;gap:10px;margin-bottom:24px;font-family:var(--font-display);font-weight:700;font-size:1.3rem;letter-spacing:var(--tracking-tight);color:var(--color-text);text-decoration:none}.auth-logo-icon{width:36px;height:36px;border-radius:9px}.auth-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:32px;width:100%}.auth-title{font-family:var(--font-display);font-weight:700;font-size:1.45rem;line-height:1.3;letter-spacing:-.005em;color:var(--color-text);margin:0 0 6px;text-align:center}.auth-subtitle{margin:0 0 24px;text-align:center;color:var(--color-muted);font-size:.92rem;line-height:1.5}.auth-social-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.auth-social-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 8px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-display);font-weight:500;font-size:.86rem;cursor:pointer;transition:background .15s,border-color .15s,transform .12s}.auth-social-btn:hover{background:var(--tint-dim);border-color:var(--color-border-strong)}.auth-social-icon{width:18px;height:18px;flex-shrink:0;object-fit:contain}.auth-divider{display:flex;align-items:center;gap:12px;margin:8px 0 20px;color:var(--color-muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.12em}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.auth-label{font-family:var(--font-display);font-weight:500;font-size:.84rem;color:var(--color-muted)}.auth-link{font-family:var(--font-display);font-size:.8rem;font-weight:500;color:var(--color-accent);text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-input{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-display);font-size:.95rem;padding:11px 14px;outline:none;transition:border-color .15s,box-shadow .15s}.auth-input::placeholder{color:var(--color-muted)}.auth-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--focus-ring)}.auth-error{background:var(--tint-red);color:var(--color-red);font-size:.84rem;padding:9px 12px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--color-red) 25%,transparent)}.auth-note{background:var(--tint-green);color:var(--color-green);font-size:.84rem;padding:9px 12px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--color-green) 25%,transparent)}.auth-banned{display:flex;flex-direction:column;gap:4px;background:var(--tint-red);color:var(--color-red);font-family:var(--font-body);font-size:.88rem;line-height:1.45;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--color-red) 40%,transparent)}.auth-banned strong{font-family:var(--font-display);font-weight:700;font-size:.92rem}.auth-banned-sub{font-size:.8rem;opacity:.85}.redeem-code-input{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.redeem-success{display:flex;flex-direction:column;gap:4px;background:color-mix(in srgb,var(--color-green) 14%,transparent);border:1px solid color-mix(in srgb,var(--color-green) 40%,transparent);color:var(--color-green);font-family:var(--font-body);font-size:.88rem;line-height:1.45;padding:12px 14px;border-radius:var(--radius-sm)}.redeem-success strong{font-family:var(--font-display);font-weight:700;font-size:.94rem}.redeem-success-sub{font-size:.8rem;opacity:.8}.auth-consent{display:flex;align-items:flex-start;gap:10px;font-family:var(--font-body);font-size:.86rem;color:var(--color-muted);line-height:1.45;cursor:pointer;-webkit-user-select:none;user-select:none}.auth-consent input[type=checkbox]{margin-top:2px;width:16px;height:16px;flex-shrink:0;accent-color:var(--color-accent);cursor:pointer}.auth-consent-text{flex:1}.auth-consent-text strong{color:var(--color-text);font-weight:600}.auth-submit{background:var(--color-accent);color:var(--color-on-accent);border:none;border-radius:var(--radius-sm);padding:12px 20px;font-family:var(--font-display);font-weight:600;font-size:.95rem;cursor:pointer;margin-top:6px;transition:background .15s,transform .12s}.auth-submit:hover{background:var(--color-accent-hover)}.auth-submit:disabled{opacity:.55;cursor:not-allowed;transform:none}.auth-footer{margin:22px 0 0;text-align:center;font-size:.9rem;color:var(--color-muted)}.auth-footer a{color:var(--color-text);text-decoration:none;font-weight:600}.auth-footer a:hover{color:var(--color-accent)}.auth-back{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:var(--color-muted);text-decoration:none;margin-top:20px}.auth-back:hover{color:var(--color-text)}@media (max-width: 560px){.auth-card{padding:24px 18px}.auth-social-row{grid-template-columns:1fr}}.pcb-redeem-inner{display:flex;flex-direction:column;align-items:center;text-align:center}.pcb-redeem-inner .pcb-section-body{max-width:440px}.pcb-redeem-card{width:100%;max-width:420px;margin-top:40px;padding:28px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-card);display:flex;flex-direction:column;text-align:left}.pcb-redeem-label{font-size:13px;font-weight:500;color:var(--text);margin-bottom:8px}.pcb-redeem-input{width:100%;padding:12px 14px;background:color-mix(in srgb,var(--text) 3%,transparent);border:1px solid var(--border);border-radius:var(--radius-btn);font-family:var(--font-mono);font-size:15px;letter-spacing:.12em;text-transform:uppercase;text-align:center;color:var(--text)}.pcb-redeem-input::placeholder{color:color-mix(in srgb,var(--text-muted) 60%,transparent);letter-spacing:.12em}.pcb-redeem-input:focus{outline:none;border-color:color-mix(in srgb,var(--text) 25%,transparent)}.pcb-redeem-error{margin:14px 0 0;font-size:13px;color:color-mix(in srgb,var(--copper) 55%,var(--text))}.pcb-redeem-success{display:flex;flex-direction:column;gap:4px;margin-top:16px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--accent-green) 50%,transparent);background:color-mix(in srgb,var(--accent-green) 8%,transparent);border-radius:var(--radius-btn);font-size:14px;color:var(--text)}.pcb-redeem-success-sub{font-size:12.5px;color:var(--text-muted)}.pcb-redeem-submit{margin-top:20px;width:100%}.pcb-redeem-submit:disabled{opacity:.6;cursor:default}.pcb-redeem-foot{margin:18px 0 0;font-size:13px;color:var(--text-muted);text-align:center}.pcb-redeem-foot a{color:color-mix(in srgb,var(--accent-green) 35%,var(--text));text-decoration:underline;text-underline-offset:3px}.admin-shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh;background:var(--color-bg);color:var(--color-text);font-family:var(--font-display)}@media (max-width: 720px){.admin-shell{grid-template-columns:1fr}}.admin-sidebar{display:flex;flex-direction:column;gap:18px;background:var(--color-surface);border-right:1px solid var(--color-border);padding:22px 16px 16px;position:sticky;top:0;height:100vh;overflow:hidden}@media (max-width: 720px){.admin-sidebar{position:static;height:auto;flex-direction:row;align-items:center;gap:14px;padding:14px 18px;border-right:none;border-bottom:1px solid var(--color-border);overflow-x:auto}}.admin-sidebar-brand{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:700;font-size:.98rem;letter-spacing:-.01em;padding:0 8px}.admin-sidebar-brand-dot{width:8px;height:8px;border-radius:1px;background:var(--color-accent)}.admin-sidebar-nav{display:flex;flex-direction:column;gap:2px;flex:1}@media (max-width: 720px){.admin-sidebar-nav{flex-direction:row;flex:none}}.admin-sidebar-link{padding:9px 12px 9px 10px;border-left:2px solid transparent;border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:.9rem;font-weight:500;color:var(--color-muted);text-decoration:none;transition:color .12s,background .12s,border-color .12s}.admin-sidebar-link:hover{color:var(--color-text);background:var(--tint-dim)}.admin-sidebar-link.active{color:var(--color-text);background:var(--tint-accent);border-left-color:var(--color-accent)}.admin-sidebar-footer{display:flex;flex-direction:column;gap:2px;padding:12px;font-size:.74rem;color:var(--color-muted);border-top:1px solid var(--color-border)}.admin-sidebar-footer-line{font-family:var(--font-display);font-weight:600;color:var(--color-text)}@media (max-width: 720px){.admin-sidebar-footer{display:none}}.admin-main{padding:28px 32px 64px;min-width:0}@media (max-width: 720px){.admin-main{padding:18px 18px 48px}}.admin-page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}.admin-page-title{font-family:var(--font-display);font-weight:700;font-size:clamp(1.5rem,3vw,1.9rem);letter-spacing:var(--tracking-tight);margin:0;color:var(--color-text)}.admin-section{margin-bottom:36px}.admin-section-title{font-family:var(--font-display);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--color-accent);margin:0 0 14px}.admin-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.admin-stat-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:16px 20px 18px}.admin-stat-card-label{font-family:var(--font-mono);font-size:.68rem;color:var(--color-muted);margin:0 0 10px;padding-top:8px;text-transform:uppercase;letter-spacing:.12em;font-weight:500;position:relative}.admin-stat-card-label:before{content:"";position:absolute;top:0;left:0;width:22px;height:2px;background:var(--color-accent)}.admin-stat-card-value{font-family:var(--font-display);font-weight:700;font-size:1.9rem;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--color-text);line-height:1.1;margin:0}.admin-stat-card-sub{margin:6px 0 0;font-family:var(--font-mono);font-size:.72rem;color:var(--color-muted)}.admin-stat-card.warn{border-left:2px solid var(--color-orange);background:var(--tint-orange)}.admin-stat-card.warn .admin-stat-card-label:before{background:var(--color-orange)}.admin-stat-card.warn .admin-stat-card-value{color:var(--color-orange)}.admin-section-summary{margin:12px 0 0;font-size:.92rem;color:var(--color-muted)}.admin-table-wrap{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.admin-table-scroll{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-family:var(--font-display);font-size:.88rem}.admin-table th,.admin-table td{padding:11px 14px;border-bottom:1px solid var(--color-border);text-align:left}.admin-table tr:last-child td{border-bottom:none}.admin-table tbody tr{transition:background .12s}.admin-table tbody tr:hover{background:var(--tint-dim)}.admin-table th{position:sticky;top:0;z-index:1;background:var(--color-raised);color:var(--color-muted);font-family:var(--font-mono);text-transform:uppercase;font-size:.68rem;letter-spacing:.1em;font-weight:500}.admin-table td.num,.admin-table th.num{text-align:right;font-variant-numeric:tabular-nums}.admin-table td.num{font-family:var(--font-mono);font-size:.82rem}.admin-table-empty{padding:36px 14px;text-align:center;color:var(--color-muted);font-size:.92rem}.admin-th-sort{background:transparent;border:none;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;padding:0;display:inline-flex;align-items:center;gap:4px}.admin-th-sort:hover{color:var(--color-text)}.admin-th-sort-arrow{font-size:.7rem;color:var(--color-accent)}.admin-filter-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.admin-filter-bar-left,.admin-filter-bar-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-filter-bar-right{margin-left:auto}.admin-tab{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:6px 14px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.82rem;cursor:pointer;transition:all .12s}.admin-tab:hover{color:var(--color-text);border-color:var(--color-border-strong)}.admin-tab.active{background:var(--tint-accent);color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 45%,transparent)}.admin-input,.admin-select{background:var(--color-card);border:1px solid var(--color-border);color:var(--color-text);padding:7px 12px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.88rem;outline:none;transition:border-color .12s,box-shadow .12s}.admin-input:focus,.admin-select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--focus-ring)}.admin-input{min-width:220px}.admin-input::placeholder{color:var(--color-muted)}.admin-btn{background:transparent;border:1px solid var(--color-border);color:var(--color-text);padding:7px 14px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:500;font-size:.85rem;cursor:pointer;transition:all .12s;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.admin-btn:hover:not(:disabled){border-color:color-mix(in srgb,var(--color-accent) 50%,transparent);background:var(--tint-accent)}.admin-btn:disabled{opacity:.55;cursor:not-allowed}.admin-btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.admin-btn-primary:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.admin-btn-sm{padding:4px 10px;font-size:.78rem}.admin-btn-warn{border-color:color-mix(in srgb,var(--color-orange) 50%,transparent);color:var(--color-orange)}.admin-btn-warn:hover:not(:disabled){background:color-mix(in srgb,var(--color-orange) 14%,transparent);border-color:var(--color-orange)}.admin-btn-danger{border-color:color-mix(in srgb,var(--color-red) 50%,transparent);color:var(--color-red)}.admin-btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-red) 14%,transparent);border-color:var(--color-red)}.admin-row-actions{display:inline-flex;align-items:center;gap:6px}.admin-row-banned{opacity:.65}.admin-row-banned:hover{opacity:1}.admin-total-count{font-size:.82rem;color:var(--color-muted);font-family:var(--font-mono)}.admin-pagination{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;font-size:.85rem;color:var(--color-muted)}.admin-pagination-spacer{flex:1}.admin-pill{display:inline-flex;align-items:center;font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase}.admin-pill-green{color:var(--color-accent)}.admin-pill-grey{color:var(--color-muted)}.admin-pill-amber{color:var(--color-orange)}.admin-pill-red{color:var(--color-red)}.admin-loading,.admin-error{padding:28px;text-align:center;color:var(--color-muted);font-size:.9rem}.admin-error{background:color-mix(in srgb,var(--color-red) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-red) 40%,transparent);border-radius:var(--radius-md);color:var(--color-red)}.admin-refresh{display:inline-flex;align-items:center;gap:10px;font-size:.82rem;color:var(--color-muted)}.admin-denied{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);color:var(--color-muted);font-family:var(--font-display);font-size:.92rem}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);color:var(--color-text);padding:24px}.admin-login-card{width:min(380px,100%);display:flex;flex-direction:column;gap:14px;padding:26px 28px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-card)}.admin-login-title{margin:0;font-family:var(--font-display);font-weight:700;font-size:1.1rem;letter-spacing:-.01em}.admin-login-sub{margin:-4px 0 4px;font-size:.86rem;color:var(--color-muted);line-height:1.5}.admin-login-error{margin:0;padding:8px 12px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-red) 14%,transparent);border:1px solid color-mix(in srgb,var(--color-red) 38%,transparent);color:var(--color-red);font-size:.84rem}.admin-sidebar-logout{margin-top:8px;align-self:flex-start}.admin-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);display:flex;align-items:center;justify-content:center;z-index:200;padding:24px}.admin-modal{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:22px 24px;width:min(440px,100%);display:flex;flex-direction:column;gap:14px;box-shadow:0 12px 36px color-mix(in srgb,var(--ink-900) 50%,transparent)}.admin-modal-title{margin:0;font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--color-text);word-break:break-word}.admin-modal-sub{margin:0;font-family:var(--font-body);font-size:.86rem;color:var(--color-muted);line-height:1.5}.admin-modal-presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.admin-modal-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:4px;padding-top:12px;border-top:1px solid var(--color-border)}.admin-codes-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.admin-codes-summary{font-family:var(--font-display);font-size:.92rem;color:var(--color-muted)}.admin-codes-summary strong{color:var(--color-text);font-weight:700}.admin-codes-foot{display:flex;align-items:center;gap:12px;margin-top:14px}.admin-codes-foot-note{font-family:var(--font-body);font-size:.84rem;color:var(--color-muted)}.admin-codes-desc{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-muted)}.admin-row-inactive td{opacity:.55}.admin-codes-code-cell{background:transparent;border:none;color:var(--color-text);cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:0;font:inherit}.admin-codes-code-cell:hover .admin-codes-code-copy{color:var(--color-accent)}.admin-codes-code-text{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.04em;border:1px solid var(--color-border);border-radius:4px;padding:2px 7px;background:var(--color-bg)}.admin-codes-code-copy{font-size:.78rem;color:var(--color-muted);transition:color .12s}.admin-codes-code-copy.is-copied{color:var(--color-green)}.admin-pill-blue{background:var(--tint-accent);color:var(--color-accent)}.admin-pill-purple{background:color-mix(in srgb,var(--color-accent-light) 18%,transparent);color:var(--color-accent-light)}.admin-codes-modal{width:min(560px,100%)}.admin-codes-form{display:flex;flex-direction:column;gap:10px}.admin-codes-form-row{display:flex;flex-direction:column;gap:4px;font-family:var(--font-display);font-size:.82rem;color:var(--color-muted)}.admin-codes-form-row>span,.admin-codes-form-row>label>span{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;font-weight:600;color:var(--color-muted)}.admin-codes-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;flex-direction:row}.admin-codes-form-grid>label{display:flex;flex-direction:column;gap:4px}.admin-codes-form-inline{display:flex;align-items:center;gap:6px}.admin-codes-form-suffix{font-size:.86rem;color:var(--color-muted)}.admin-codes-generated-list{list-style:none;margin:0;display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);padding:8px}.admin-codes-generated-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px;border-radius:var(--radius-sm)}.admin-codes-generated-list li:hover{background:var(--tint-dim)}.admin-slideover-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--color-bg) 50%,transparent);z-index:200;display:flex;justify-content:flex-end}.admin-slideover{width:min(560px,100%);height:100vh;background:var(--color-card);border-left:1px solid var(--color-border);display:flex;flex-direction:column;box-shadow:-12px 0 36px color-mix(in srgb,var(--ink-900) 50%,transparent);animation:admin-slideover-in .18s ease-out}@keyframes admin-slideover-in{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}.admin-slideover-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 22px;border-bottom:1px solid var(--color-border)}.admin-slideover-title{margin:0 0 4px;font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--color-text)}.admin-slideover-sub{margin:0;font-family:var(--font-body);font-size:.84rem;color:var(--color-muted)}.admin-slideover-close{font-size:1.2rem;line-height:1;padding:0 10px}.admin-slideover-body{flex:1;overflow-y:auto;padding:14px 22px 22px}.admin-slideover-empty{text-align:center;padding:36px 14px;color:var(--color-muted);font-family:var(--font-display);font-size:.92rem}.admin-table-compact th,.admin-table-compact td{padding:9px 10px;font-size:.82rem}.admin-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px 18px;font-family:var(--font-display);font-size:.88rem;color:var(--color-text);box-shadow:0 10px 28px color-mix(in srgb,var(--ink-900) 40%,transparent);z-index:250;animation:admin-toast-in .18s ease-out}@keyframes admin-toast-in{0%{transform:translate(-50%,8px);opacity:0}to{transform:translate(-50%);opacity:1}}.admin-error{background:var(--tint-red);color:var(--color-red);border:1px solid color-mix(in srgb,var(--color-red) 30%,transparent);padding:10px 14px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.86rem;margin-bottom:12px}@media (prefers-reduced-motion: reduce){.admin-slideover,.admin-toast{animation:none}}.cmp-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);z-index:200;animation:cmp-fade .14s ease-out}@keyframes cmp-fade{0%{opacity:0}to{opacity:1}}.cmp-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:201;width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 64px);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 24px 60px color-mix(in srgb,var(--ink-900) 55%,transparent);display:flex;flex-direction:column;overflow:hidden;animation:cmp-pop .18s ease-out;font-family:var(--font-body)}@keyframes cmp-pop{0%{opacity:0;transform:translate(-50%,-48%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.cmp-modal-head{display:grid;grid-template-columns:1fr auto;gap:14px;padding:18px 22px 14px;border-bottom:1px solid var(--color-border)}.cmp-modal-eyebrow{font-family:var(--font-display);font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:var(--color-muted);margin:0 0 4px}.cmp-modal-title{font-family:var(--font-mono);font-weight:500;font-size:1.1rem;color:var(--color-text);margin:0;word-break:break-word}.cmp-modal-sub{margin:4px 0 0;color:var(--color-muted);font-size:.85rem}.cmp-modal-close{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);width:32px;height:32px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.cmp-modal-close:hover{color:var(--color-text);border-color:var(--color-border-strong)}.cmp-modal-close svg{width:14px;height:14px}.cmp-modal-body{padding:18px 22px 22px;overflow-y:auto;display:flex;flex-direction:column;gap:18px}.cmp-modal-image-row{display:flex;gap:16px;align-items:flex-start}.cmp-modal-image{width:96px;height:96px;border-radius:var(--radius-sm);background:var(--color-card);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.cmp-modal-image img{max-width:100%;max-height:100%;object-fit:contain}.cmp-modal-image-placeholder{font-family:var(--font-mono);font-size:.95rem;color:var(--color-muted)}.cmp-modal-desc{margin:0;font-size:.92rem;line-height:1.6;color:var(--color-text)}.cmp-modal-section-title{font-family:var(--font-display);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-muted);margin:0 0 8px}.cmp-modal-datasheet{display:inline-flex;align-items:center;gap:6px;background:var(--color-card);border:1px solid var(--color-border);color:var(--color-text);padding:7px 12px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.84rem;text-decoration:none;width:fit-content}.cmp-modal-datasheet:hover{border-color:var(--color-accent);color:var(--color-accent)}.cmp-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:0}.cmp-spec-row{display:grid;grid-template-columns:minmax(120px,max-content) 1fr;column-gap:10px;align-items:baseline;padding:4px 0;border-bottom:1px solid var(--color-border);min-width:0}.cmp-spec-row:last-child{border-bottom:none}.cmp-spec-label{font-family:var(--font-display);font-size:.78rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em}.cmp-spec-value{margin:0;font-family:var(--font-mono);font-size:.86rem;color:var(--color-text);word-break:break-word;text-align:right}@media (max-width: 720px){.cmp-specs{grid-template-columns:1fr}}.cmp-suppliers{display:grid;grid-template-columns:minmax(90px,max-content) minmax(120px,1fr) 80px 70px 80px 80px;gap:10px 14px;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:10px 14px;font-size:.86rem}.cmp-cell{min-width:0}.cmp-th{font-family:var(--font-display);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted);padding-bottom:6px;border-bottom:1px solid var(--color-border)}.cmp-th-right{text-align:right}.cmp-supplier-name{font-family:var(--font-display);font-weight:600;font-size:.88rem;color:var(--color-text)}.cmp-supplier-pn{font-family:var(--font-mono);font-size:.82rem;color:var(--color-muted);word-break:break-word}.cmp-supplier-price{font-family:var(--font-mono);font-size:.9rem;color:var(--color-text);text-align:right}.cmp-supplier-stock{font-family:var(--font-mono);font-size:.82rem;color:var(--color-muted);text-align:right}.cmp-supplier-add{background:var(--color-accent);color:var(--color-on-accent);border:none;padding:6px 10px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.78rem;cursor:pointer;white-space:nowrap;width:100%}.cmp-supplier-add:hover{background:var(--color-accent-hover)}.cmp-supplier-add.is-added{background:var(--tint-accent);color:var(--color-accent)}.cmp-supplier-link{display:inline-flex;align-items:center;justify-content:center;gap:4px;background:transparent;border:1px solid var(--color-border);color:var(--color-text);padding:6px 10px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.78rem;text-decoration:none;white-space:nowrap;width:100%;box-sizing:border-box}.cmp-supplier-link:hover{border-color:var(--color-accent);color:var(--color-accent)}.cmp-supplier-link[aria-disabled=true]{opacity:.4;pointer-events:none}@media (max-width: 720px){.cmp-suppliers{grid-template-columns:1fr 1fr;row-gap:6px}.cmp-suppliers .cmp-th:nth-child(3),.cmp-suppliers .cmp-th:nth-child(4),.cmp-suppliers .cmp-th:nth-child(5),.cmp-suppliers .cmp-th:nth-child(6){display:none}}@media (prefers-reduced-motion: reduce){.cmp-modal-backdrop,.cmp-modal{animation:none}}.schematic-viewer{margin-top:24px}.schematic-messages{margin-bottom:12px;padding:8px 12px;background:var(--color-card);border:1px solid var(--color-border);border-radius:6px;font-size:13px;color:var(--color-muted)}.schematic-messages summary{cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500;color:var(--color-text)}.schematic-messages ul{margin:8px 0 0;padding-left:20px}.schematic-messages li{margin-bottom:4px;font-size:12px}.schematic-msg-error{color:var(--color-red)}.schematic-msg-warning{color:var(--color-orange)}.schematic-svg-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #213029;border-radius:8px;background:#0a0f0e}.schematic-svg{display:block;min-width:1800px}.schematic-viewer--panzoom{display:flex;flex-direction:column;height:70vh;min-height:420px;user-select:none;-webkit-user-select:none}.schematic-viewer--panzoom .schematic-svg-wrap{flex:1;min-height:0;overflow:hidden}.schematic-viewer--panzoom .schematic-svg{width:100%;height:100%;min-width:0}.schematic-reset-view{position:absolute;top:10px;right:10px;z-index:2;padding:6px 12px;font-family:var(--font-display);font-size:.78rem;font-weight:600;color:var(--color-text);background:color-mix(in srgb,var(--color-card) 88%,transparent);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .15s,border-color .15s}.schematic-reset-view:hover{background:var(--color-card);border-color:var(--color-accent)}.builder-page{width:100%;max-width:1100px;margin:0 auto;padding:var(--page-pad) var(--page-pad) 80px;font-family:var(--font-body)}.builder-header{margin-bottom:28px}.builder-title{font-family:var(--font-display);font-weight:700;font-size:clamp(1.6rem,3vw,2.2rem);letter-spacing:-.005em;margin:0 0 8px;color:var(--color-text)}.builder-sub{margin:0;color:var(--color-muted);font-size:.95rem;line-height:1.55;max-width:64ch}.builder-form{display:flex;flex-direction:column;gap:24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:24px}.builder-group{display:flex;flex-direction:column;gap:10px}.builder-label{font-family:var(--font-display);font-weight:600;font-size:.92rem;color:var(--color-text)}.builder-required{color:var(--color-red)}.builder-hint{font-size:.8rem;color:var(--color-muted)}.builder-skill-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.builder-platform-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.builder-power-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}@media (max-width: 960px){.builder-skill-grid{grid-template-columns:1fr}.builder-platform-grid{grid-template-columns:repeat(3,1fr)}.builder-power-grid{grid-template-columns:repeat(2,1fr)}}.builder-pick{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:14px;cursor:pointer;color:var(--color-text);font-family:var(--font-body);transition:border-color .15s,background .15s,box-shadow .15s}.builder-pick:hover{border-color:var(--color-border-strong)}.builder-pick.is-selected{border-color:var(--color-accent);background:var(--tint-accent);box-shadow:0 0 0 2px var(--focus-ring)}.builder-pick-name{font-family:var(--font-display);font-weight:600;font-size:.92rem}.builder-pick-desc{font-size:.78rem;color:var(--color-muted);line-height:1.4}.builder-platform-pick,.builder-power-pick{align-items:center;text-align:center;padding:14px 8px;gap:8px}.builder-power-pick{flex-direction:row;gap:10px;padding:12px 14px}.builder-pick-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--color-muted);transition:color .15s}.builder-pick-icon svg{width:28px;height:28px}.builder-power-pick .builder-pick-icon svg{width:22px;height:22px}.builder-pick.is-selected .builder-pick-icon{color:var(--color-accent)}.builder-input,.builder-textarea,.builder-select{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-body);font-size:.95rem;padding:11px 14px;outline:none;transition:border-color .15s,box-shadow .15s;width:100%}.builder-textarea{resize:vertical;min-height:110px;line-height:1.55}.builder-input:focus,.builder-textarea:focus,.builder-select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--focus-ring)}.builder-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 720px){.builder-row{grid-template-columns:1fr}}.builder-checkbox-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.builder-checkbox{display:inline-flex;align-items:center;gap:8px;font-size:.88rem;color:var(--color-text);cursor:pointer}.builder-checkbox input{accent-color:var(--color-accent);width:14px;height:14px}.builder-submit-row{display:flex;align-items:center;gap:14px}.builder-submit{background:var(--color-accent);color:var(--color-on-accent);border:none;padding:12px 22px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.95rem;cursor:pointer;transition:background .15s,transform .12s}.builder-submit:hover:not(:disabled){background:var(--color-accent-hover)}.builder-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.builder-submit--ghost{background:transparent;color:var(--color-text);border:1px solid var(--color-border)}.builder-submit--ghost:hover:not(:disabled){background:var(--tint-dim)}.builder-error{background:var(--tint-red);color:var(--color-red);border:1px solid color-mix(in srgb,var(--color-red) 30%,transparent);border-radius:var(--radius-sm);padding:10px 14px;font-size:.88rem}.builder-section{margin-top:28px}.builder-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:14px}.builder-section-title{font-family:var(--font-display);font-weight:700;font-size:1.15rem;margin:0;color:var(--color-text)}.builder-component-list{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.builder-component{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:start;padding:14px 16px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-body)}.builder-component-type{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:600;font-size:.95rem;color:var(--color-text)}.builder-component-meta{font-family:var(--font-mono);font-size:.78rem;color:var(--color-muted);margin-top:2px}.builder-component-reasoning{margin:8px 0 0;font-family:var(--font-body);font-size:.86rem;line-height:1.55;color:var(--color-muted);max-width:64ch}.builder-component-qty{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:.84rem;color:var(--color-muted)}.builder-component-qty input{width:50px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);text-align:center;padding:4px;font-family:var(--font-mono)}.builder-component-remove{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);width:28px;height:28px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.builder-component-remove:hover{color:var(--color-red);border-color:color-mix(in srgb,var(--color-red) 40%,transparent)}.builder-add-row{display:flex;gap:8px;margin-top:10px}.builder-slot{display:flex;flex-direction:column;gap:10px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:16px;margin-bottom:12px}.builder-slot-head{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.builder-slot-type{font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--color-text)}.builder-slot-reason{font-size:.84rem;color:var(--color-muted);line-height:1.5;margin:0}.builder-part{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:12px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color .15s ease,background .15s ease}.builder-part-link{display:flex;align-items:center;gap:14px;min-width:0;text-decoration:none;color:inherit;cursor:pointer}.builder-part-link:hover .builder-part-mpn,.builder-part-link:focus-visible .builder-part-mpn{text-decoration:underline}.builder-part:has(.builder-part-link:hover){border-color:var(--color-accent)}.builder-part-link--disabled{cursor:default}.builder-part-link--button{background:none;border:none;padding:0;font:inherit;text-align:left;width:100%}.builder-part-link--button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}.builder-part-img{width:88px;height:88px;border-radius:var(--radius-sm);background:var(--color-bg);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.builder-part-img img{max-width:100%;max-height:100%;object-fit:contain}.builder-part-img-placeholder{font-family:var(--font-mono);font-size:.78rem;color:var(--color-muted)}.builder-part-body{min-width:0}.builder-part-row1{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.builder-part-mpn{font-family:var(--font-mono);font-weight:500;font-size:.94rem;color:var(--color-text)}.builder-part-supplier{font-family:var(--font-display);font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.builder-part-title{margin:4px 0 0;color:var(--color-muted);font-size:.86rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.builder-part-meta{display:inline-flex;align-items:center;gap:12px;margin-top:6px;font-family:var(--font-mono);font-size:.84rem;color:var(--color-text)}.builder-part-actions{display:inline-flex;flex-direction:column;gap:6px}.builder-part-add{background:var(--color-accent);color:var(--color-on-accent);border:none;padding:8px 12px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.82rem;cursor:pointer}.builder-part-add:hover{background:var(--color-accent-hover)}.builder-part-add.is-added{background:var(--tint-accent);color:var(--color-accent)}.builder-alt-toggle{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:6px 10px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.78rem;cursor:pointer;margin-top:6px;align-self:flex-start}.builder-alt-toggle:hover{color:var(--color-text);border-color:var(--color-border-strong)}.builder-alt-list{display:flex;flex-direction:column;gap:12px;margin-top:8px}.builder-alt-row{display:flex;flex-direction:column;gap:6px}.builder-alt-swap{align-self:flex-start;background:transparent;border:1px solid var(--color-border);color:var(--color-muted);font-family:var(--font-display);font-size:.78rem;padding:5px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:color .12s,border-color .12s,background .12s}.builder-alt-swap:hover:not(:disabled){color:var(--color-text);border-color:color-mix(in srgb,var(--color-accent) 50%,transparent);background:var(--tint-accent)}.builder-alt-swap:disabled{opacity:.55;cursor:not-allowed}.builder-compat-banner{border-radius:var(--radius-sm);border:1px solid;padding:12px 14px;font-size:.88rem;display:flex;flex-direction:column;gap:8px;margin-bottom:18px}.builder-compat-banner-ok{background:color-mix(in srgb,var(--color-accent) 8%,transparent);border-color:color-mix(in srgb,var(--color-accent) 35%,transparent)}.builder-compat-banner-warn{background:color-mix(in srgb,var(--color-orange) 12%,transparent);border-color:color-mix(in srgb,var(--color-orange) 45%,transparent)}.builder-compat-banner-error{background:color-mix(in srgb,var(--color-red) 12%,transparent);border-color:color-mix(in srgb,var(--color-red) 45%,transparent)}.builder-compat-banner.is-stale{opacity:.75;border-style:dashed}.builder-compat-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-family:var(--font-display)}.builder-compat-stale{font-size:.72rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em}.builder-compat-summary{margin:0;line-height:1.5}.builder-compat-issues{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}.builder-compat-issue{display:flex;gap:8px;align-items:baseline;line-height:1.45}.builder-compat-issue-tag{font-family:var(--font-mono);font-size:.68rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;flex-shrink:0}.builder-compat-issue-error .builder-compat-issue-tag{color:var(--color-red)}.builder-compat-issue-warn .builder-compat-issue-tag{color:var(--color-orange)}.builder-compat-issue-info .builder-compat-issue-tag{color:var(--color-muted)}.builder-compat-issue-slots{font-family:var(--font-mono);font-size:.78rem;color:var(--color-muted)}.builder-build-actions{display:flex;align-items:center;gap:10px;margin:18px 0}.builder-build-errors{background:var(--tint-orange);color:var(--color-orange);border:1px solid color-mix(in srgb,var(--color-orange) 30%,transparent);border-radius:var(--radius-sm);padding:10px 14px;margin-top:12px;font-size:.86rem}.builder-build-errors ul{margin:6px 0 0 18px;padding:0}.builder-stream-note{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:12px 14px;font-family:var(--font-body);font-size:.9rem;line-height:1.55;color:var(--color-text);white-space:pre-wrap;margin-top:12px}.builder-cta-row{display:flex;align-items:center;gap:14px;margin-top:18px;flex-wrap:wrap}.builder-tool-indicator{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.84rem;color:var(--color-muted)}.builder-tool-indicator:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--color-accent)}.builder-stream-cursor:after{content:"▍";animation:builder-cursor-blink 1s step-end infinite;margin-left:2px;color:var(--color-accent)}@keyframes builder-cursor-blink{50%{opacity:0}}.builder-v2-log{max-height:280px;overflow-y:auto;border:1px solid var(--color-border);border-radius:6px;padding:10px 12px;margin-bottom:18px;background:var(--color-surface-2, color-mix(in srgb, var(--ink-900) 18%, transparent));font-family:var(--font-mono);font-size:.85rem}.builder-v2-log-line{display:flex;align-items:flex-start;gap:8px;padding:3px 0;line-height:1.4}.builder-v2-log-icon{flex-shrink:0;width:16px;text-align:center;font-weight:700}.builder-v2-log-status{color:var(--color-muted)}.builder-v2-log-ok{color:var(--color-green)}.builder-v2-log-info{color:var(--color-accent)}.builder-v2-log-warn{color:var(--color-orange)}.builder-v2-pulse-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--color-accent)}.builder-v2-compat-banner{border:1px solid var(--color-red);background:color-mix(in srgb,var(--color-red) 8%,transparent);color:var(--color-red);border-radius:6px;padding:12px 14px;margin-bottom:16px}.builder-v2-compat-banner strong{display:block;margin-bottom:4px}.builder-v2-compat-banner p{margin:0 0 8px;color:var(--color-text)}.builder-v2-compat-banner ul{margin:0;padding-left:20px;color:var(--color-text)}.builder-v2-warn-banner{border:1px solid var(--color-orange);background:color-mix(in srgb,var(--color-orange) 6%,transparent);border-radius:6px;padding:10px 14px;margin-bottom:16px;font-size:.9rem}.builder-v2-warn-banner strong{display:block;margin-bottom:4px}.builder-v2-warn-banner ul{margin:0;padding-left:20px}.builder-v2-badge{display:inline-block;margin-left:8px;font-family:var(--font-mono);font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);cursor:help}.builder-v2-auto-reason{margin:4px 0 8px;font-size:.85rem;color:var(--color-accent);font-style:italic}.builder-schematic-toggle{display:inline-flex;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.builder-toggle-btn{padding:6px 14px;font-size:.82rem;font-weight:500;font-family:var(--font-body);background:var(--color-surface);color:var(--color-muted);border:none;cursor:pointer;transition:background .15s,color .15s}.builder-toggle-btn:not(:last-child){border-right:1px solid var(--color-border)}.builder-toggle-btn.is-active{background:var(--color-primary);color:var(--color-on-accent)}.builder-toggle-btn:hover:not(.is-active){background:var(--color-bg-secondary)}.schematic-panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);z-index:90;opacity:0;visibility:hidden;transition:opacity .22s,visibility .22s}.schematic-panel-backdrop.is-open{opacity:1;visibility:visible}.schematic-panel{position:fixed;top:0;right:0;bottom:0;width:min(1100px,96vw);background:var(--color-surface);border-left:1px solid var(--color-border);z-index:100;transform:translate(100%);transition:transform .25s ease;display:flex;flex-direction:column;font-family:var(--font-display);overflow:hidden}.schematic-panel.is-open{transform:translate(0)}.schematic-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--color-border);flex-shrink:0}.schematic-panel-head-left,.schematic-panel-head-right{display:flex;align-items:center;gap:12px}.schematic-panel-title{font-family:var(--font-display);font-weight:700;font-size:1.15rem;letter-spacing:-.01em;margin:0;color:var(--color-text)}.schematic-panel-toggle{display:inline-flex;border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.schematic-panel-toggle-btn{background:transparent;border:none;color:var(--color-muted);font-family:var(--font-display);font-size:.82rem;font-weight:600;padding:6px 14px;cursor:pointer;transition:background .15s,color .15s}.schematic-panel-toggle-btn:hover{color:var(--color-text)}.schematic-panel-toggle-btn.is-active{background:var(--color-accent);color:var(--color-on-accent)}.schematic-panel-regen{background:transparent;border:1px solid var(--color-border);color:var(--color-text);font-family:var(--font-display);font-size:.82rem;font-weight:600;padding:7px 14px;border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s,color .15s}.schematic-panel-regen:hover{border-color:var(--color-border-strong)}.schematic-panel-regen:disabled{opacity:.55;cursor:default}.schematic-panel-close{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);width:32px;height:32px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .15s,border-color .15s}.schematic-panel-close:hover{color:var(--color-text);border-color:var(--color-border-strong)}.schematic-panel-close svg{width:14px;height:14px}.schematic-panel-body{flex:1;min-height:0;overflow:hidden;position:relative;display:flex;flex-direction:column}.schematic-panel-body .schematic-viewer--panzoom{flex:1;height:auto;min-height:0;margin:0;padding:10px}.schematic-panel-state{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--color-muted);text-align:center;padding:40px 24px}.schematic-panel-spinner{width:32px;height:32px;border-radius:50%;border:3px solid var(--color-border);border-top-color:var(--color-accent);animation:schematic-panel-spin .8s linear infinite}@keyframes schematic-panel-spin{to{transform:rotate(360deg)}}.schematic-panel-error{color:var(--color-red);margin:0}.schematic-panel-error-banner{margin:12px 16px 0;padding:10px 14px;border:1px solid var(--color-red);border-radius:var(--radius-sm);color:var(--color-red);font-size:.85rem}.search-page{width:100%;max-width:1280px;margin:0 auto;padding:var(--page-pad) var(--page-pad) 80px}.search-bar{display:flex;align-items:stretch;gap:8px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px;margin-bottom:28px;transition:border-color .15s,box-shadow .15s}.search-bar:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 4px var(--focus-ring)}.search-bar-icon{display:inline-flex;align-items:center;justify-content:center;width:44px;color:var(--color-muted);flex-shrink:0}.search-bar-icon svg{width:20px;height:20px}.search-bar-input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:var(--color-text);font-family:var(--font-display);font-weight:500;font-size:1rem;padding:8px 4px}.search-bar-input::placeholder{color:var(--color-muted)}.search-bar-submit{background:var(--color-accent);color:var(--color-on-accent);border:none;padding:0 22px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.95rem;cursor:pointer;transition:background .15s}.search-bar-submit:hover:not(:disabled){background:var(--color-accent-hover)}.search-bar-submit:disabled{opacity:.5;cursor:not-allowed}.search-bar-clear{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:0 14px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:500;font-size:.86rem;cursor:pointer;margin-right:6px;transition:color .15s,border-color .15s}.search-bar-clear:hover{color:var(--color-text);border-color:var(--color-border-strong)}.search-bar-wrap{position:relative;margin-bottom:28px}.search-bar-wrap .search-bar{margin-bottom:0}.search-history{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 12px 28px color-mix(in srgb,var(--ink-900) 45%,transparent);list-style:none;margin:0;padding:6px;max-height:320px;overflow-y:auto;animation:search-history-slide .14s ease-out}@keyframes search-history-slide{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.search-history-row{display:grid;grid-template-columns:18px 1fr auto 22px;align-items:center;gap:10px;width:100%;text-align:left;background:transparent;border:none;padding:9px 12px;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-display);color:var(--color-text);transition:background .12s}.search-history-row:hover,.search-history-row.is-active{background:var(--tint-dim)}.search-history-icon{color:var(--color-muted);display:inline-flex;align-items:center;justify-content:center}.search-history-icon svg{width:14px;height:14px}.search-history-query{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.search-history-meta{font-size:.74rem;color:var(--color-muted);white-space:nowrap;font-family:var(--font-mono)}.search-history-remove{background:transparent;border:none;color:var(--color-muted);width:22px;height:22px;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s,color .12s,background .12s}.search-history-row:hover .search-history-remove{opacity:1}.search-history-remove:hover{color:var(--color-red);background:var(--tint-red)}.search-history-remove svg{width:12px;height:12px}.search-history-foot{display:flex;justify-content:flex-end;padding:4px 6px 0;margin-top:4px;border-top:1px solid var(--color-border)}.search-history-clear{background:transparent;border:none;color:var(--color-muted);padding:6px 8px;font-family:var(--font-display);font-size:.78rem;cursor:pointer;border-radius:4px}.search-history-clear:hover{color:var(--color-text);background:var(--tint-dim)}.search-layout{display:grid;grid-template-columns:264px 1fr;gap:24px;align-items:flex-start;min-width:0}@media (max-width: 960px){.search-layout{grid-template-columns:1fr}}.search-filters{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px 20px 22px;position:sticky;top:84px;font-family:var(--font-display);min-width:0}.search-filters-title{font-family:var(--font-display);font-weight:700;font-size:1rem;letter-spacing:-.005em;color:var(--color-text);margin:0 0 12px}.search-filters-heading{font-family:var(--font-display);font-weight:600;font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-muted);margin:0 0 10px}.search-filters-group{padding:16px 0;border-bottom:1px solid var(--color-border)}.search-filters-group:last-child{border-bottom:none;padding-bottom:0}.search-filters-group:first-child{padding-top:4px}.search-filters-clear{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:6px 10px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.78rem;cursor:pointer;margin-bottom:4px;transition:color .15s,border-color .15s}.search-filters-clear:hover{color:var(--color-text);border-color:var(--color-border-strong)}.search-filter-list{display:flex;flex-direction:column;gap:4px;list-style:none;margin:0;padding:0}.search-filter-item{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:.88rem;line-height:1.35;color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0}.search-filter-item input[type=checkbox]{accent-color:var(--color-accent);width:14px;height:14px;cursor:pointer;flex-shrink:0}.search-filter-item-label{flex:1;min-width:0;overflow-wrap:anywhere}.search-filter-item-count{margin-left:auto;color:var(--color-muted);font-size:.76rem;font-variant-numeric:tabular-nums;flex-shrink:0}.search-toggle{display:flex;align-items:center;gap:12px;cursor:pointer}.search-toggle-label{font-family:var(--font-display);font-size:.9rem;color:var(--color-text);flex:1}.search-toggle-control{position:relative;width:36px;height:20px;border-radius:999px;background:var(--color-card);border:1px solid var(--color-border);transition:background .18s,border-color .18s;flex-shrink:0}.search-toggle-control:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--color-muted);transition:transform .18s,background .18s}.search-toggle input:checked+.search-toggle-control{background:var(--tint-accent);border-color:var(--color-accent)}.search-toggle input:checked+.search-toggle-control:after{transform:translate(16px);background:var(--color-accent)}.search-toggle input{display:none}.dual-slider{position:relative;height:28px;margin-top:6px}.dual-slider-track{position:absolute;top:50%;transform:translateY(-50%);left:0;right:0;height:4px;background:var(--color-border);border-radius:2px}.dual-slider-fill{position:absolute;top:0;bottom:0;background:var(--color-accent);border-radius:2px}.dual-slider-input{position:absolute;top:0;left:0;right:0;width:100%;height:28px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;pointer-events:none;margin:0}.dual-slider-input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;pointer-events:auto;width:16px;height:16px;border-radius:50%;background:var(--color-accent);border:2px solid var(--color-bg);cursor:pointer;box-shadow:0 0 0 1px var(--color-border)}.dual-slider-input::-moz-range-thumb{pointer-events:auto;width:14px;height:14px;border-radius:50%;background:var(--color-accent);border:2px solid var(--color-bg);cursor:pointer;box-shadow:0 0 0 1px var(--color-border)}.dual-slider-input::-webkit-slider-runnable-track{background:transparent;border:none}.dual-slider-input::-moz-range-track{background:transparent;border:none}.search-price-readout{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:.8rem;color:var(--color-muted);margin-top:8px}.search-results{display:flex;flex-direction:column;gap:14px;min-width:0}.search-results-head{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-display);color:var(--color-muted);font-size:.88rem;padding:0 4px 4px}.search-results-sort{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.search-error-banner{background:var(--tint-red);color:var(--color-red);border:1px solid color-mix(in srgb,var(--color-red) 25%,transparent);border-radius:var(--radius-sm);padding:12px 14px;font-family:var(--font-display);font-size:.9rem}.search-result-card{display:grid;grid-template-columns:64px 1fr auto;gap:18px;align-items:flex-start;padding:18px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .18s,transform .18s,box-shadow .18s}.search-result-card:hover{border-color:var(--color-border-strong);box-shadow:0 6px 20px color-mix(in srgb,var(--ink-900) 35%,transparent)}.search-result-image{width:64px;height:64px;border-radius:var(--radius-sm);background:var(--color-surface);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.search-result-image img{max-width:100%;max-height:100%;object-fit:contain}.search-result-image-placeholder{font-family:var(--font-mono);font-size:.9rem;color:var(--color-muted)}.search-result-body{min-width:0;display:flex;flex-direction:column;gap:6px}.search-result-row1{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.search-result-name{font-family:var(--font-mono);font-weight:500;font-size:1rem;color:var(--color-text);letter-spacing:-.005em;word-break:break-word}.search-result-supplier{font-family:var(--font-display);font-size:.78rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.08em}.search-result-desc{font-family:var(--font-display);font-size:.9rem;color:var(--color-muted);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.search-result-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:4px}.search-result-price{font-family:var(--font-mono);font-weight:500;font-size:.95rem;color:var(--color-text)}.search-result-stockcount{font-family:var(--font-mono);font-size:.78rem;color:var(--color-muted)}.search-result-score{display:flex;align-items:center;gap:8px;margin-top:8px}.search-score-bar{position:relative;flex:1;max-width:220px;height:4px;background:var(--color-border);border-radius:2px;overflow:hidden}.search-score-fill{position:absolute;top:0;bottom:0;left:0;background:linear-gradient(90deg,color-mix(in srgb,var(--color-accent) 70%,transparent),var(--color-accent));border-radius:2px;transition:width .25s}.search-score-pct{font-family:var(--font-mono);font-size:.78rem;color:var(--color-muted);min-width:36px;text-align:right}.search-result-actions{display:flex;flex-direction:column;gap:8px;align-items:stretch}.search-result-add{background:var(--color-accent);color:var(--color-on-accent);border:none;padding:9px 14px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;transition:background .15s}.search-result-add:hover{background:var(--color-accent-hover)}.search-result-add.is-added{background:var(--tint-accent);color:var(--color-accent)}.search-result-add svg{width:14px;height:14px}.search-result-save{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:7px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .15s,border-color .15s,background .15s}.search-result-save:hover{color:var(--color-text);border-color:var(--color-border-strong)}.search-result-save.is-saved{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 40%,transparent);background:var(--tint-accent)}.search-result-save svg{width:16px;height:16px}@media (max-width: 560px){.search-result-card{grid-template-columns:56px 1fr}.search-result-actions{grid-column:1 / -1;flex-direction:row;justify-content:flex-start}}.search-initial-hint{text-align:center;padding:56px 24px;color:var(--color-muted);font-family:var(--font-display)}.search-loading{text-align:center;padding:36px;color:var(--color-muted);font-family:var(--font-display);font-size:.92rem}@media (prefers-reduced-motion: reduce){.search-history{animation:none}}.chat-shell{display:grid;grid-template-columns:280px 1fr;gap:24px;height:100vh;align-items:stretch;overflow:hidden;font-family:var(--font-body);--chat-scrollbar-pad: 8px}@media (max-width: 960px){.chat-shell{grid-template-columns:1fr}}.chat-sidebar{display:flex;flex-direction:column;background:var(--color-surface);border-right:1px solid var(--color-border);min-width:0;overflow:hidden}@media (max-width: 960px){.chat-sidebar{display:none}}.chat-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px 18px;border-bottom:1px solid var(--color-border)}.chat-sidebar-title{font-family:var(--font-display);font-weight:700;font-size:.95rem;margin:0;color:var(--color-text)}.chat-new-btn{background:var(--color-accent);color:var(--color-on-accent);border:none;padding:6px 10px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.8rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.chat-new-btn:hover{background:var(--color-accent-hover)}.chat-sidebar-list{flex:1;overflow-y:auto;padding:6px 8px 16px;list-style:none;margin:0;display:flex;flex-direction:column;gap:2px}.chat-session-row{width:100%;text-align:left;background:transparent;border:1px solid transparent;padding:10px 12px;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-body);color:var(--color-text);position:relative;transition:background .12s}.chat-session-row:hover{background:var(--tint-dim)}.chat-session-row.is-active{background:var(--tint-accent);border-color:color-mix(in srgb,var(--color-accent) 35%,transparent)}.chat-session-row-title{font-family:var(--font-display);font-weight:600;font-size:.88rem;color:var(--color-text);display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.chat-session-row-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:.72rem;color:var(--color-muted);margin-top:2px}.chat-session-row-kind{font-family:var(--font-mono);font-size:.66rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;margin-left:auto}.chat-session-row-kind--search{color:var(--color-accent)}.chat-session-row-kind--build{color:var(--color-green)}.chat-session-row-actions{position:absolute;top:6px;right:6px;display:inline-flex;gap:2px;opacity:0;transition:opacity .12s}.chat-session-row:hover .chat-session-row-actions,.chat-session-row:focus-within .chat-session-row-actions{opacity:1}.chat-session-row-action{background:transparent;border:none;color:var(--color-muted);width:22px;height:22px;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:color .12s,background .12s}.chat-session-row-action:hover{color:var(--color-text);background:var(--tint-dim)}.chat-session-row-action svg{width:12px;height:12px}.chat-session-row-action--delete:hover{color:var(--color-red);background:var(--tint-red)}.chat-session-rename-input{width:100%;background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-accent);border-radius:4px;padding:4px 8px;font-family:var(--font-display);font-weight:600;font-size:.88rem;outline:none}.chat-load-more{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:6px 10px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.78rem;cursor:pointer;margin:8px auto 0;display:block}.chat-load-more:hover{color:var(--color-text);border-color:var(--color-border-strong)}.chat-sidebar-empty{padding:24px 18px;color:var(--color-muted);font-size:.85rem;text-align:center}.chat-main{display:flex;flex-direction:column;min-width:0;overflow:hidden}.chat-kickoff{flex-shrink:0;border-bottom:1px solid var(--color-border);padding:18px calc(24px + var(--chat-scrollbar-pad)) 18px 24px;background:var(--color-surface);max-height:60vh;overflow-y:auto}.chat-kickoff-collapsed{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px calc(24px + var(--chat-scrollbar-pad)) 10px 24px}.chat-kickoff-collapsed-title{font-family:var(--font-display);font-weight:600;font-size:.88rem;color:var(--color-text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-kickoff-collapsed-btn{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:5px 10px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.78rem;cursor:pointer}.chat-kickoff-collapsed-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.chat-schematic-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--color-accent);color:var(--color-accent);padding:5px 12px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.78rem;cursor:pointer;transition:background .15s,color .15s}.chat-schematic-btn:hover{background:var(--color-accent);color:var(--color-on-accent)}.chat-schematic-btn svg{width:15px;height:15px}.chat-thread{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px;scrollbar-gutter:stable;scrollbar-width:thin}.chat-thread::-webkit-scrollbar{width:var(--chat-scrollbar-pad)}.chat-thread::-webkit-scrollbar-track{background:transparent}.chat-thread::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.chat-thread::-webkit-scrollbar-thumb:hover{background:var(--color-border-strong)}.chat-msg{display:flex;gap:12px;max-width:100%}.chat-msg-user{justify-content:flex-end}.chat-bubble{padding:12px 16px;border-radius:14px;max-width:76ch;font-family:var(--font-body);font-size:.95rem;line-height:1.55;white-space:pre-wrap;word-wrap:break-word}.chat-msg-user .chat-bubble{background:var(--color-accent);color:var(--color-on-accent)}.chat-msg-assistant .chat-bubble{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.md-root{white-space:normal}.md-root>:first-child{margin-top:0}.md-root>:last-child{margin-bottom:0}.md-p{margin:0 0 8px}.md-ul,.md-ol{margin:0 0 8px;padding-left:22px}.md-ul li,.md-ol li{margin:2px 0}.md-bq{margin:0 0 8px;padding:4px 0 4px 12px;border-left:3px solid var(--color-border);color:var(--color-muted)}.md-bq p{margin:0}.md-code{font-family:var(--font-mono);font-size:.88em;background:color-mix(in srgb,var(--color-text) 6%,transparent);border:1px solid var(--color-border);border-radius:4px;padding:1px 5px}.chat-bubble-streaming:after{content:"▍";animation:chat-cursor-blink 1s step-end infinite;margin-left:2px;color:var(--color-accent)}@keyframes chat-cursor-blink{50%{opacity:0}}.chat-thinking{display:inline-flex;align-items:center;gap:5px;padding:2px 0}.chat-thinking-dot{width:6px;height:6px;border-radius:50%;background:var(--color-muted);animation:chat-thinking-bounce 1.2s ease-in-out infinite}.chat-thinking-dot:nth-child(2){animation-delay:.18s}.chat-thinking-dot:nth-child(3){animation-delay:.36s}@keyframes chat-thinking-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.chat-tool-indicator{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.84rem;color:var(--color-muted)}.chat-tool-indicator:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--color-accent)}.chat-tool-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:12px 14px;font-family:var(--font-body);font-size:.88rem;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;cursor:pointer;text-align:left;width:100%;transition:border-color .15s,background .15s,transform .12s}.chat-tool-card:hover{border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 5%,transparent)}.chat-tool-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.chat-tool-card-title{font-family:var(--font-mono);font-weight:500;font-size:.92rem;color:var(--color-text)}.chat-tool-card-meta{font-size:.78rem;color:var(--color-muted);margin-top:2px}.chat-tool-card-price{font-family:var(--font-mono);font-size:.95rem;color:var(--color-text);text-align:right}.chat-tool-results{display:flex;flex-direction:column;gap:8px;margin-top:4px}.chat-tool-results-summary{font-family:var(--font-display);font-size:.78rem;color:var(--color-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.08em}.chat-tool-error{background:color-mix(in srgb,var(--color-danger) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-danger) 40%,transparent);color:var(--color-danger);padding:8px 10px;border-radius:6px;font-size:.85rem;margin-bottom:4px}.chat-find-parts-list{display:flex;flex-direction:column;gap:16px}.chat-find-parts-slot{display:flex;flex-direction:column;gap:8px;padding:12px 14px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.chat-find-parts-slot-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.chat-find-parts-slot-type{font-family:var(--font-display);font-weight:600;font-size:.95rem;color:var(--color-text)}.chat-find-parts-slot-role{font-size:.78rem;color:var(--color-muted)}.chat-find-parts-slot-reason{margin:0;font-size:.85rem;color:var(--color-muted);line-height:1.45}.chat-find-parts-no-match{padding:8px 10px;font-size:.85rem;color:var(--color-muted);border:1px dashed var(--color-border);border-radius:6px}.chat-find-parts-alt{display:flex;flex-direction:column;gap:6px}.chat-find-parts-swap-btn{align-self:flex-start;background:transparent;border:1px solid var(--color-border);color:var(--color-muted);font-family:var(--font-display);font-size:.78rem;padding:5px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:color .12s,border-color .12s,background .12s}.chat-find-parts-swap-btn:hover:not(:disabled){color:var(--color-text);border-color:color-mix(in srgb,var(--color-accent) 50%,transparent);background:var(--tint-accent)}.chat-find-parts-swap-btn:disabled{opacity:.55;cursor:not-allowed}.chat-compat-banner{border-radius:var(--radius-sm);border:1px solid;padding:10px 12px;font-size:.85rem;display:flex;flex-direction:column;gap:6px}.chat-compat-banner-ok{background:color-mix(in srgb,var(--color-accent) 8%,transparent);border-color:color-mix(in srgb,var(--color-accent) 35%,transparent);color:var(--color-text)}.chat-compat-banner-warn{background:color-mix(in srgb,var(--color-orange) 12%,transparent);border-color:color-mix(in srgb,var(--color-orange) 45%,transparent);color:var(--color-text)}.chat-compat-banner-error{background:color-mix(in srgb,var(--color-red) 12%,transparent);border-color:color-mix(in srgb,var(--color-red) 45%,transparent);color:var(--color-text)}.chat-compat-banner.is-stale{opacity:.75;border-style:dashed}.chat-compat-banner-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-family:var(--font-display);font-size:.85rem}.chat-compat-stale{font-size:.72rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em}.chat-compat-summary{margin:0;line-height:1.5}.chat-compat-issues{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.chat-compat-issue{display:flex;gap:6px;align-items:baseline;line-height:1.45}.chat-compat-issue-tag{font-family:var(--font-mono);font-size:.68rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;flex-shrink:0}.chat-compat-issue-error .chat-compat-issue-tag{color:var(--color-red)}.chat-compat-issue-warn .chat-compat-issue-tag{color:var(--color-orange)}.chat-compat-issue-info .chat-compat-issue-tag{color:var(--color-muted)}.chat-compat-issue-slots{font-family:var(--font-mono);font-size:.75rem;color:var(--color-muted)}.chat-search-results-list{display:flex;flex-direction:column;gap:10px}.chat-search-results-list .search-result-card.is-recommended{border-color:color-mix(in srgb,var(--color-accent) 45%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 18%,transparent)}.chat-search-alts-toggle{align-self:flex-start;background:transparent;border:1px dashed var(--color-border);color:var(--color-muted);font-family:var(--font-display);font-size:.82rem;padding:8px 14px;border-radius:var(--radius-sm);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.chat-search-alts-toggle:hover{color:var(--color-text);border-color:color-mix(in srgb,var(--color-accent) 40%,transparent);background:var(--tint-accent)}.chat-finalize-list{display:flex;flex-direction:column;gap:14px}.chat-finalize-item{display:flex;flex-direction:column;gap:8px;padding:14px 16px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md)}.chat-finalize-item-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.chat-finalize-item-title{font-family:var(--font-display);font-weight:700;font-size:.96rem;color:var(--color-text)}.chat-finalize-item-qty{font-family:var(--font-mono);font-size:.78rem;color:var(--color-muted)}.chat-finalize-item-role{font-family:var(--font-display);font-size:.78rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em}.chat-finalize-item-reasoning{font-family:var(--font-body);font-size:.88rem;line-height:1.5;color:var(--color-muted);margin:0}.chat-finalize-item-empty{font-family:var(--font-display);font-size:.85rem;color:var(--color-muted);margin:0;padding:10px 14px;border:1px dashed var(--color-border);border-radius:var(--radius-sm)}.chat-bom-cards{display:flex;flex-direction:column;gap:8px}.chat-bom-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:12px 14px;font-family:var(--font-body)}.chat-bom-card-body{display:flex;flex-direction:column;gap:6px}.chat-bom-card-row1{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.chat-bom-card-title{font-family:var(--font-display);font-weight:600;font-size:.95rem;color:var(--color-text);flex:1;min-width:0}.chat-bom-card-tag{font-family:var(--font-mono);font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.chat-bom-card-qty{font-family:var(--font-mono);font-size:.82rem;color:var(--color-accent)}.chat-bom-card-role{margin:0;font-size:.85rem;color:var(--color-muted);line-height:1.5}.chat-bom-card-reasoning{margin:6px 0 0;font-size:.85rem;color:var(--color-text);line-height:1.5}.chat-bom-card-specs{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-family:var(--font-mono);font-size:.78rem}.chat-bom-card-specs li{display:inline-flex;align-items:baseline;gap:4px}.chat-bom-card-spec-key{color:var(--color-muted)}.chat-bom-card-spec-val{color:var(--color-text)}.chat-bom-matches{display:flex;flex-direction:column;gap:6px;margin-top:12px;padding-top:12px;border-top:1px dashed var(--color-border)}.chat-bom-match{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:8px 10px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color .15s,background .15s}.chat-bom-match:hover{border-color:color-mix(in srgb,var(--color-accent) 40%,transparent)}.chat-bom-match-body{background:transparent;border:none;padding:0;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;text-align:left;color:inherit;min-width:0}.chat-bom-match-info{min-width:0}.chat-bom-match-mpn{font-family:var(--font-mono);font-weight:500;font-size:.92rem;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-bom-match-meta{font-family:var(--font-display);font-size:.76rem;color:var(--color-muted);margin-top:2px}.chat-bom-match-price{font-family:var(--font-mono);font-size:.9rem;color:var(--color-text);text-align:right;white-space:nowrap}.chat-bom-match-add{background:var(--color-accent);color:var(--color-on-accent);border:none;padding:6px 10px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.78rem;cursor:pointer;white-space:nowrap}.chat-bom-match-add:hover{background:var(--color-accent-hover)}.chat-bom-match-add.is-added{background:var(--tint-accent);color:var(--color-accent)}.chat-bom-alts-toggle{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:5px 10px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.78rem;cursor:pointer;align-self:flex-start}.chat-bom-alts-toggle:hover{color:var(--color-text);border-color:var(--color-border-strong)}.chat-bom-no-match{margin:12px 0 0;padding:8px 10px;background:var(--tint-orange);color:var(--color-orange);border:1px solid color-mix(in srgb,var(--color-orange) 30%,transparent);border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.82rem}.chat-composer{flex-shrink:0;border-top:1px solid var(--color-border);padding:16px calc(24px + var(--chat-scrollbar-pad)) 16px 24px;background:var(--color-surface)}.chat-composer-row{display:flex;align-items:flex-end;gap:10px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px 8px 8px 14px;transition:border-color .15s,box-shadow .15s}.chat-composer-row:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--focus-ring)}.chat-composer-input{flex:1;background:transparent;border:none;outline:none;color:var(--color-text);font-family:var(--font-body);font-size:.95rem;resize:none;min-height:24px;max-height:200px;padding:6px 0;line-height:1.5}.chat-composer-input::placeholder{color:var(--color-muted)}.chat-composer-send{background:var(--color-accent);color:var(--color-on-accent);border:none;padding:8px 16px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.88rem;cursor:pointer;white-space:nowrap}.chat-composer-send:hover:not(:disabled){background:var(--color-accent-hover)}.chat-composer-send:disabled{opacity:.55;cursor:not-allowed}.chat-composer-hint{margin:6px 4px 0;font-size:.74rem;color:var(--color-muted)}.chat-error-banner{display:flex;align-items:center;gap:12px;background:var(--tint-red);color:var(--color-red);border:1px solid color-mix(in srgb,var(--color-red) 30%,transparent);padding:10px 14px;margin:12px calc(24px + var(--chat-scrollbar-pad)) 12px 24px;border-radius:var(--radius-sm);font-size:.86rem;animation:chat-error-slide-in .2s ease-out}@keyframes chat-error-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.my-projects-empty{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:24px 0}.my-projects-empty-title{font-family:var(--font-display);font-weight:700;font-size:1.2rem;margin:0;color:var(--color-text)}.my-projects-empty-sub{margin:0;color:var(--color-muted);font-size:.92rem;line-height:1.55;max-width:56ch}@media (prefers-reduced-motion: reduce){.chat-error-banner{animation:none}}.discovery-page{width:100%;max-width:1280px;margin:0 auto;padding:var(--page-pad) var(--page-pad) 80px;font-family:var(--font-display)}.discovery-body{display:flex;flex-direction:column;gap:32px}.discovery-page-header{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.discovery-page-eyebrow{font-family:var(--font-mono);font-weight:500;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:var(--color-accent);margin:0}.discovery-page-title{font-family:var(--font-display);font-weight:700;font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.25;letter-spacing:var(--tracking-tight);margin:0}.discovery-page-sub{margin:0;color:var(--color-muted);font-size:.95rem;line-height:1.55;max-width:64ch}.proj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.proj-card{display:flex;flex-direction:column;gap:10px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px;text-align:left;cursor:pointer;font-family:var(--font-display);color:var(--color-text);transition:transform .18s,border-color .18s,box-shadow .18s}.proj-card:hover{border-color:color-mix(in srgb,var(--color-accent) 35%,transparent);box-shadow:0 10px 26px color-mix(in srgb,var(--ink-900) 45%,transparent)}.proj-card-row1{display:flex;align-items:center;justify-content:space-between;gap:12px}.proj-card-title{font-family:var(--font-display);font-weight:700;font-size:1.05rem;letter-spacing:-.01em;color:var(--color-text);margin:0}.proj-card-desc{margin:0;color:var(--color-muted);font-size:.9rem;line-height:1.55}.proj-card-meta{display:inline-flex;align-items:center;gap:12px;color:var(--color-muted);font-family:var(--font-mono);font-size:.78rem;margin-top:4px}.proj-card-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.proj-tag{display:inline-flex;align-items:center;padding:3px 8px;border:1px solid var(--color-border);border-radius:4px;color:var(--color-muted);font-family:var(--font-mono);font-size:.68rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;line-height:1.2}.slideover-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);z-index:90;opacity:0;visibility:hidden;transition:opacity .22s,visibility .22s}.slideover-backdrop.is-open{opacity:1;visibility:visible}.slideover-panel{position:fixed;top:0;right:0;bottom:0;width:480px;max-width:100vw;background:var(--color-surface);border-left:1px solid var(--color-border);z-index:100;transform:translate(100%);transition:transform .25s ease;display:flex;flex-direction:column;font-family:var(--font-display);overflow:hidden}.slideover-panel.is-open{transform:translate(0)}.slideover-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px 14px;border-bottom:1px solid var(--color-border);flex-shrink:0}.slideover-eyebrow{font-size:.74rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--color-accent);margin:0 0 4px}.slideover-title{font-family:var(--font-display);font-weight:700;font-size:1.25rem;letter-spacing:-.01em;margin:0;color:var(--color-text)}.slideover-close{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);width:32px;height:32px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .15s,border-color .15s}.slideover-close:hover{color:var(--color-text);border-color:var(--color-border-strong)}.slideover-close svg{width:14px;height:14px}.slideover-body{padding:18px 24px 24px;display:flex;flex-direction:column;gap:18px;overflow-y:auto}.slideover-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-family:var(--font-mono);font-size:.84rem;color:var(--color-muted)}.slideover-desc{font-family:var(--font-display);font-size:.95rem;line-height:1.65;color:var(--color-text);margin:0}.slideover-section-title{font-family:var(--font-display);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-muted);margin:0 0 8px}.slideover-tags{display:flex;flex-wrap:wrap;gap:6px}.slideover-foot{padding:16px 24px 22px;border-top:1px solid var(--color-border)}.slideover-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;background:var(--color-accent);color:var(--color-on-accent);border:none;padding:12px 18px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.95rem;cursor:pointer;text-decoration:none;transition:background .15s,transform .12s}.slideover-cta:hover{background:var(--color-accent-hover)}.bom-section{display:flex;flex-direction:column;gap:8px}.bom-table-container{border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-surface)}.bom-table{width:100%;border-collapse:collapse;font-family:var(--font-display);font-size:.88rem;text-align:left}.bom-table th,.bom-table td{padding:10px 14px;border-bottom:1px solid var(--color-border)}.bom-table tr:last-child td{border-bottom:none}.bom-table th{background:color-mix(in srgb,var(--color-text) 3%,transparent);font-weight:600;color:var(--color-muted);text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.bom-qty{width:40px;font-family:var(--font-mono);color:var(--color-accent);font-weight:500}.bom-name{color:var(--color-text)}.proj-filters{display:flex;flex-direction:column;gap:16px;margin-bottom:24px;padding:20px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.filter-group{display:flex;align-items:flex-start;gap:16px}@media (max-width: 560px){.filter-group{flex-direction:column;gap:8px}}.filter-label{font-family:var(--font-display);font-weight:600;font-size:.9rem;color:var(--color-muted);width:80px;padding-top:6px;flex-shrink:0}.filter-pills{display:flex;flex-wrap:wrap;gap:8px}.filter-pill{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:6px 14px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:500;font-size:.85rem;cursor:pointer;transition:all .15s}.filter-pill:hover{border-color:var(--color-border-strong);color:var(--color-text)}.filter-pill.active{background:var(--tint-accent);border-color:color-mix(in srgb,var(--color-accent) 45%,transparent);color:var(--color-accent)}.explore-chat-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-scrim);opacity:0;pointer-events:none;transition:opacity .18s ease-out;z-index:90}.explore-chat-backdrop.is-open{opacity:1;pointer-events:auto}.explore-chat-panel{position:fixed;top:0;right:0;height:100vh;width:min(560px,100vw);background:var(--color-bg);border-left:1px solid var(--color-border);box-shadow:-8px 0 32px color-mix(in srgb,var(--ink-900) 45%,transparent);display:flex;flex-direction:column;transform:translate(100%);transition:transform .22s ease-out;z-index:100;pointer-events:none}.explore-chat-panel.is-open{transform:translate(0);pointer-events:auto}@media (max-width: 560px){.explore-chat-panel{width:100vw}}.explore-chat-panel-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0}.explore-chat-panel-title{margin:0;font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--color-text)}.explore-chat-panel-close{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);width:32px;height:32px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.explore-chat-panel-close svg{width:16px;height:16px}.explore-chat-panel-close:hover{color:var(--color-text);border-color:var(--color-border-strong);background:var(--tint-dim)}.explore-chat-panel-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.explore-chat-panel-body .chat-shell{display:flex!important;flex-direction:column!important;grid-template-columns:1fr!important;width:100%;height:100%;gap:0!important;min-width:0;overflow:hidden}.explore-chat-panel-body .chat-sidebar{display:none!important}.explore-chat-panel-body .chat-main{width:100%;min-width:0}.explore-chat-kickoff{display:flex;flex-direction:column;gap:10px}.explore-chat-kickoff-title{margin:0;font-family:var(--font-display);font-weight:700;font-size:.96rem;color:var(--color-text)}.explore-chat-kickoff-sub{margin:0;font-family:var(--font-body);font-size:.86rem;color:var(--color-muted);line-height:1.5}.explore-chat-kickoff-input{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:var(--font-body);font-size:.95rem;line-height:1.5;padding:10px 12px;resize:vertical;min-height:92px;outline:none;transition:border-color .15s,box-shadow .15s}.explore-chat-kickoff-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--focus-ring)}.explore-chat-kickoff-submit{align-self:flex-end;background:var(--color-accent);color:var(--color-on-accent);border:none;padding:9px 18px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.88rem;cursor:pointer;transition:background .15s}.explore-chat-kickoff-submit:hover:not(:disabled){background:var(--color-accent-hover)}.explore-chat-kickoff-submit:disabled{opacity:.55;cursor:not-allowed}.explore-ask-ai-toggle{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:0 14px;height:40px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.86rem;cursor:pointer;white-space:nowrap;transition:color .15s,border-color .15s,background .15s;flex-shrink:0}.explore-ask-ai-toggle:hover{color:var(--color-text);border-color:var(--color-border-strong)}.explore-ask-ai-toggle.is-on{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 50%,transparent);background:var(--tint-accent)}.board-scene{position:relative;max-width:1080px;margin:56px auto 0;aspect-ratio:1080 / 640;container-type:inline-size;background:var(--board-mask);border:1px solid color-mix(in srgb,var(--board-silk) 14%,transparent);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.board-corner{position:absolute;width:14px;height:14px;border-radius:50%;border:2px solid color-mix(in srgb,var(--board-silk) 32%,transparent);background:var(--color-bg);pointer-events:none}.board-corner--tl{top:10px;left:10px}.board-corner--tr{top:10px;right:10px}.board-corner--bl{bottom:10px;left:10px}.board-corner--br{bottom:10px;right:10px}.board-fab-legend{position:absolute;right:34px;bottom:12px;font-family:var(--font-mono);font-size:clamp(.52rem,1cqw,.66rem);letter-spacing:.18em;text-transform:uppercase;color:color-mix(in srgb,var(--board-silk) 38%,transparent);pointer-events:none}.board-copper{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.board-trace{fill:none;stroke:color-mix(in srgb,var(--copper-400) 34%,transparent);stroke-width:2;stroke-linecap:round}.board-trace-under{fill:none;stroke:color-mix(in srgb,var(--copper-300) 18%,transparent);stroke-width:7;stroke-linecap:round;opacity:0;transition:opacity .25s}.board-trace-flow{fill:none;stroke:var(--copper-300);stroke-width:2.25;stroke-linecap:round;stroke-dasharray:26 274;stroke-dashoffset:300;opacity:0}@keyframes board-trace-flow{0%{stroke-dashoffset:300}to{stroke-dashoffset:0}}.board-scene[data-active=sensors] .board-trace-under[data-node=sensors],.board-scene[data-active=power] .board-trace-under[data-node=power],.board-scene[data-active=passives] .board-trace-under[data-node=passives],.board-scene[data-active=wireless] .board-trace-under[data-node=wireless],.board-scene[data-active=displays] .board-trace-under[data-node=displays],.board-scene[data-active=motors] .board-trace-under[data-node=motors],.board-scene[data-active=microcontrollers] .board-trace-under[data-node]{opacity:1}.board-scene[data-active=sensors] .board-trace-flow[data-node=sensors],.board-scene[data-active=power] .board-trace-flow[data-node=power],.board-scene[data-active=passives] .board-trace-flow[data-node=passives],.board-scene[data-active=wireless] .board-trace-flow[data-node=wireless],.board-scene[data-active=displays] .board-trace-flow[data-node=displays],.board-scene[data-active=motors] .board-trace-flow[data-node=motors],.board-scene[data-active=microcontrollers] .board-trace-flow[data-node]{opacity:1;animation:board-trace-flow 1.4s linear infinite}.board-vias circle{fill:var(--board-mask);stroke:color-mix(in srgb,var(--copper-300) 40%,transparent);stroke-width:2}.board-spine{display:none}.board-nodes{list-style:none;margin:0;padding:0}.board-node-slot{position:absolute;left:var(--nx);top:var(--ny);width:calc(200 / 1080 * 100%);height:calc(116 / 640 * 100%);transform:translate(-50%,-50%)}.board-node{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;height:100%;padding:clamp(6px,1.1cqw,12px) clamp(8px,1.4cqw,14px);gap:clamp(2px,.5cqw,6px);background:var(--board-mask-edge);border:1px solid color-mix(in srgb,var(--board-silk) 16%,transparent);border-radius:8px;text-decoration:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;color:inherit;cursor:pointer;transition:transform .18s ease,border-color .18s ease}.board-node:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 7px 7px,var(--board-mask) 0 1.5px,color-mix(in srgb,var(--board-silk) 40%,transparent) 1.5px 3px,transparent 3px),radial-gradient(circle at calc(100% - 7px) 7px,var(--board-mask) 0 1.5px,color-mix(in srgb,var(--board-silk) 40%,transparent) 1.5px 3px,transparent 3px),radial-gradient(circle at 7px calc(100% - 7px),var(--board-mask) 0 1.5px,color-mix(in srgb,var(--board-silk) 40%,transparent) 1.5px 3px,transparent 3px),radial-gradient(circle at calc(100% - 7px) calc(100% - 7px),var(--board-mask) 0 1.5px,color-mix(in srgb,var(--board-silk) 40%,transparent) 1.5px 3px,transparent 3px)}.board-node:is(:hover,:focus-visible){transform:scale(1.045);border-color:color-mix(in srgb,var(--copper-300) 45%,transparent)}.board-node:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.board-node-refdes{align-self:flex-start;font-family:var(--font-mono);font-size:clamp(.52rem,1.05cqw,.68rem);font-weight:500;letter-spacing:.1em;line-height:1.2;color:color-mix(in srgb,var(--board-silk) 70%,transparent);border:1px solid color-mix(in srgb,var(--board-silk) 22%,transparent);border-radius:3px;padding:1px 5px;transition:color .18s,border-color .18s}.board-node:is(:hover,:focus-visible) .board-node-refdes{color:var(--copper-300);border-color:color-mix(in srgb,var(--copper-300) 45%,transparent)}.board-node-art{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;width:100%}.board-node-art svg{height:100%;max-height:clamp(30px,6.5cqw,52px);width:auto;overflow:visible}.board-node-label{font-family:var(--font-display);font-stretch:112%;font-weight:600;font-size:clamp(.72rem,1.35cqw,.95rem);letter-spacing:.01em;white-space:nowrap;color:var(--board-silk)}.board-mcu{position:absolute;left:50%;top:50%;width:calc(220 / 1080 * 100%);height:40.625%;transform:translate(-50%,-50%);text-decoration:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;background:none;border:none;font:inherit;color:inherit;cursor:pointer;transition:transform .18s ease;z-index:1}.board-mcu:is(:hover,:focus-visible){transform:translate(-50%,-50%) scale(1.03)}.board-mcu:focus-visible{outline:2px solid var(--focus-ring);outline-offset:4px;border-radius:12px}.board-mcu-pins{position:absolute;top:7%;bottom:7%;width:clamp(4px,.6cqw,6px);background:repeating-linear-gradient(180deg,color-mix(in srgb,var(--board-silk) 55%,transparent) 0 6px,transparent 6px 13px)}.board-mcu-pins--left{left:clamp(-5px,-.45cqw,-3px)}.board-mcu-pins--right{right:clamp(-5px,-.45cqw,-3px)}.board-mcu-body{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;padding:clamp(8px,1.3cqw,16px);gap:clamp(6px,1cqw,12px);background:var(--board-mask-edge);border:1px solid color-mix(in srgb,var(--board-silk) 20%,transparent);border-radius:10px;transition:border-color .18s}.board-mcu:is(:hover,:focus-visible) .board-mcu-body{border-color:color-mix(in srgb,var(--copper-300) 45%,transparent)}.board-mcu-head{display:flex;align-items:center;justify-content:space-between}.board-mcu-refdes{font-family:var(--font-mono);font-size:clamp(.52rem,1.05cqw,.68rem);font-weight:500;letter-spacing:.1em;line-height:1.2;color:var(--copper-300);border:1px solid color-mix(in srgb,var(--copper-300) 45%,transparent);border-radius:3px;padding:1px 5px}.board-mcu-led{width:clamp(5px,.8cqw,8px);height:clamp(5px,.8cqw,8px);border-radius:2px;background:var(--led-green);animation:led-heartbeat 2.4s infinite}@keyframes led-heartbeat{0%,4%{opacity:1}8%,12%{opacity:.15}16%,22%{opacity:1}26%,58%{opacity:.2}62%,to{opacity:1}}.board-mcu-shield{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:0;background:linear-gradient(160deg,color-mix(in srgb,var(--board-silk) 26%,var(--board-mask-edge)),color-mix(in srgb,var(--board-silk) 12%,var(--board-mask-edge)));border:1px solid color-mix(in srgb,var(--board-silk) 30%,transparent);border-radius:6px}.board-mcu-legend{font-family:var(--font-mono);font-weight:600;font-size:clamp(.7rem,1.5cqw,1rem);letter-spacing:.16em;color:var(--board-silk)}.board-mcu-legend--sub{font-size:clamp(.5rem,.95cqw,.66rem);font-weight:500;letter-spacing:.3em;opacity:.65}.board-mcu-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.board-mcu-xtal{flex-shrink:0;width:clamp(14px,2cqw,22px);height:clamp(7px,1cqw,11px);border-radius:3px;background:color-mix(in srgb,var(--board-silk) 45%,var(--board-mask-edge))}.board-mcu-label{font-family:var(--font-display);font-stretch:112%;font-weight:600;font-size:clamp(.72rem,1.3cqw,.95rem);color:var(--board-silk);white-space:nowrap}.na-oled-screen{fill:var(--board-mask);stroke:color-mix(in srgb,var(--board-silk) 25%,transparent);stroke-width:1}.na-oled-wave{fill:none;stroke:var(--oled-glow);stroke-width:2;stroke-linecap:round}.na-oled-pixel{fill:var(--led-amber);opacity:.4}.board-node:is(:hover,:focus-visible) .na-oled-wave{animation:oled-scroll 1.2s linear infinite}.board-node:is(:hover,:focus-visible) .na-oled-pixel{animation:pixel-blink .9s steps(2,start) infinite}@keyframes oled-scroll{to{transform:translate(-26px)}}@keyframes pixel-blink{0%{opacity:1}to{opacity:.15}}.na-sensor-dot{fill:var(--copper-300)}.na-sensor-ring{fill:none;stroke:var(--oled-glow);stroke-width:1.5;opacity:.35;transform-box:view-box;transform-origin:50% 50%}.board-node:is(:hover,:focus-visible) .na-sensor-ring{animation:sensor-ping 1.6s ease-out infinite}.board-node:is(:hover,:focus-visible) .na-sensor-ring--late{animation-delay:.8s}@keyframes sensor-ping{0%{transform:scale(.35);opacity:.9}to{transform:scale(1.15);opacity:0}}.na-motor-housing{fill:none;stroke:color-mix(in srgb,var(--board-silk) 35%,transparent);stroke-width:1.5}.na-motor-hub{fill:var(--board-silk)}.na-motor-blade{stroke:var(--board-silk);stroke-width:2.5;stroke-linecap:round}.na-motor-rotor{transform-box:view-box;transform-origin:50% 50%}.board-node:is(:hover,:focus-visible) .na-motor-rotor{animation:rotor-spin .9s linear infinite}@keyframes rotor-spin{to{transform:rotate(360deg)}}.na-rf-mast{stroke:var(--copper-300);stroke-width:2;stroke-linecap:round}.na-rf-tip{fill:var(--copper-300)}.na-rf-arc{fill:none;stroke:var(--oled-glow);stroke-width:1.5;stroke-linecap:round;opacity:.2}.board-node:is(:hover,:focus-visible) .na-rf-arc{animation:rf-pulse 1.5s infinite}.board-node:is(:hover,:focus-visible) .na-rf-arc--2{animation-delay:.25s}.board-node:is(:hover,:focus-visible) .na-rf-arc--3{animation-delay:.5s}@keyframes rf-pulse{0%,to{opacity:.15}30%{opacity:1}}.na-power-ripple{fill:none;stroke:var(--led-amber);stroke-width:1.5;stroke-linejoin:round;opacity:.75}.na-power-cap{fill:color-mix(in srgb,var(--board-silk) 14%,transparent);stroke:color-mix(in srgb,var(--board-silk) 40%,transparent);stroke-width:1.5}.na-power-vent{stroke:color-mix(in srgb,var(--board-silk) 55%,transparent);stroke-width:1.2}.na-power-ring{fill:none;stroke:var(--led-amber);stroke-width:1.5;opacity:0;transform-box:view-box;transform-origin:52.7% 50%}.na-power-dc{stroke:var(--board-silk);stroke-width:2;stroke-linecap:round}.board-node:is(:hover,:focus-visible) .na-power-ripple{stroke-dasharray:5 6;animation:ripple-flow .8s linear infinite}.board-node:is(:hover,:focus-visible) .na-power-ring{animation:cap-ripple 1.8s ease-out infinite}@keyframes ripple-flow{to{stroke-dashoffset:-11}}@keyframes cap-ripple{0%{transform:scale(.6);opacity:.8}to{transform:scale(1.35);opacity:0}}.na-res-lead{stroke:color-mix(in srgb,var(--board-silk) 45%,transparent);stroke-width:2}.na-res-body{fill:color-mix(in srgb,var(--copper-500) 30%,var(--board-mask-edge));stroke:color-mix(in srgb,var(--copper-300) 40%,transparent);stroke-width:1}.na-res-band{opacity:.5}.na-res-band--1{fill:var(--color-orange)}.na-res-band--2{fill:var(--color-green)}.na-res-band--3{fill:var(--color-accent)}.board-node:is(:hover,:focus-visible) .na-res-band{animation:band-step 1.2s infinite}.board-node:is(:hover,:focus-visible) .na-res-band--2{animation-delay:.4s}.board-node:is(:hover,:focus-visible) .na-res-band--3{animation-delay:.8s}@keyframes band-step{0%,to{opacity:.45}33%{opacity:1}}@media (max-width: 720px){.board-scene{aspect-ratio:auto;display:flex;flex-direction:column;gap:14px;padding:20px 16px 34px 46px}.board-copper{display:none}.board-spine{display:block;position:absolute;left:18px;top:28px;bottom:34px;width:12px;height:auto}.board-spine-bus{fill:none;stroke:color-mix(in srgb,var(--copper-400) 34%,transparent);stroke-width:2;vector-effect:non-scaling-stroke}.board-spine-flow{fill:none;stroke:var(--copper-300);stroke-width:2;vector-effect:non-scaling-stroke;stroke-dasharray:26 274;animation:board-trace-flow 2.6s linear infinite}.board-mcu{position:relative;left:auto;top:auto;width:100%;height:auto;transform:none}.board-mcu:is(:hover,:focus-visible){transform:none}.board-mcu-body{position:relative;inset:auto;padding:14px;gap:10px}.board-mcu-shield{padding:14px 10px}.board-mcu-pins{top:12%;bottom:12%;width:4px}.board-mcu-pins--left{left:-2px}.board-mcu-pins--right{right:-2px}.board-nodes{display:flex;flex-direction:column;gap:12px}.board-node-slot{position:relative;left:auto;top:auto;width:auto;height:auto;transform:none}.board-node-slot:before{content:"";position:absolute;left:-22px;top:50%;width:22px;height:2px;background:color-mix(in srgb,var(--copper-400) 34%,transparent)}.board-node{flex-direction:row;align-items:center;height:auto;padding:12px 14px;gap:12px}.board-node-refdes{align-self:center;font-size:.6rem}.board-node-art{flex:0 0 64px;width:auto}.board-node-art svg{max-height:38px}.board-node-label{flex:1;font-size:.88rem;white-space:normal;text-align:left}.board-node:is(:hover,:focus-visible){transform:none}.board-fab-legend{right:16px;bottom:10px}.board-corner--tl,.board-corner--tr{top:8px}.board-corner--tl,.board-corner--bl{left:8px}.board-corner--tr,.board-corner--br{right:8px}.board-corner--bl,.board-corner--br{bottom:8px}}@media (prefers-reduced-motion: reduce){.board-mcu-led,.board-spine-flow{animation:none}.board-spine-flow{stroke-dasharray:10 12;opacity:.7}.board-scene[data-active] .board-trace-flow[data-node]{animation:none;stroke-dasharray:10 12;stroke-dashoffset:0}.board-node:is(:hover,:focus-visible),.board-mcu:is(:hover,:focus-visible){transform:none}.board-mcu:is(:hover,:focus-visible){transform:translate(-50%,-50%)}.board-node:is(:hover,:focus-visible) :is(.na-oled-wave,.na-oled-pixel,.na-sensor-ring,.na-motor-rotor,.na-rf-arc,.na-power-ripple,.na-power-ring,.na-res-band){animation:none}.board-node:is(:hover,:focus-visible) .na-sensor-ring{opacity:.55}.board-node:is(:hover,:focus-visible) .na-rf-arc{opacity:.7}.board-node:is(:hover,:focus-visible) .na-power-ring{opacity:.4}.board-node:is(:hover,:focus-visible) .na-res-band{opacity:1}.board-node:is(:hover,:focus-visible) .na-oled-pixel{opacity:1}}@media (max-width: 720px) and (prefers-reduced-motion: reduce){.board-mcu:is(:hover,:focus-visible){transform:none}}.explore-quick-cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px;margin-bottom:2.5rem}.explore-board-scene{margin-bottom:3rem}.explore-quick-cat{position:relative;height:92px;border-radius:var(--radius-md);overflow:hidden;cursor:pointer;border:1px solid var(--color-border);background:var(--color-surface);transition:transform .18s,box-shadow .18s,border-color .18s;text-align:left;padding:0}.explore-quick-cat:hover{box-shadow:0 6px 20px color-mix(in srgb,var(--ink-900) 50%,transparent);border-color:color-mix(in srgb,var(--color-accent) 40%,transparent)}.explore-quick-cat-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;transition:transform .3s ease;filter:brightness(1.15)}.explore-quick-cat:hover .explore-quick-cat-bg{transform:scale(1.06)}.explore-quick-cat-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,color-mix(in srgb,var(--color-bg) 80%,transparent),color-mix(in srgb,var(--color-bg) 18%,transparent))}.explore-quick-cat-label{position:absolute;bottom:0;left:0;right:0;padding:8px 10px;font-family:var(--font-display);font-weight:600;font-size:.8rem;color:var(--paper-0);text-shadow:0 1px 4px color-mix(in srgb,var(--ink-900) 90%,transparent);line-height:1.3}.category-shelf{margin-bottom:2.75rem}.category-shelf-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.875rem}.category-shelf-title{font-family:var(--font-display);font-weight:700;font-size:1.15rem;letter-spacing:-.01em;color:var(--color-text);margin:0}.category-shelf-see-all{background:none;border:none;color:var(--color-accent);font-family:var(--font-display);font-weight:500;font-size:.88rem;cursor:pointer;padding:0;transition:opacity .15s;white-space:nowrap}.category-shelf-see-all:hover{opacity:.7;text-decoration:underline}.category-shelf-container{position:relative}.category-shelf-scroll{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}.category-shelf-scroll::-webkit-scrollbar{display:none}.category-shelf-nav{position:absolute;top:calc(50% - 18px);transform:translateY(-50%);z-index:2;width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:var(--color-card);border:1px solid var(--color-border);border-radius:50%;cursor:pointer;color:var(--color-text);transition:background .15s,box-shadow .15s;box-shadow:0 2px 12px color-mix(in srgb,var(--ink-900) 50%,transparent)}.category-shelf-nav:hover{background:var(--color-surface);box-shadow:0 4px 16px color-mix(in srgb,var(--ink-900) 60%,transparent)}.category-shelf-nav.prev{left:-17px}.category-shelf-nav.next{right:-17px}.mini-product-card{flex-shrink:0;width:186px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;transition:transform .18s,border-color .18s,box-shadow .18s;scroll-snap-align:start;display:flex;flex-direction:column}.mini-product-card:hover{border-color:color-mix(in srgb,var(--color-accent) 35%,transparent);box-shadow:0 10px 28px color-mix(in srgb,var(--ink-900) 45%,transparent)}.mini-product-card-img{width:100%;height:140px;background:var(--paper-0);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.mini-product-card-img img{width:100%;height:100%;object-fit:contain;padding:10px}.mini-product-card-placeholder{font-size:1.6rem;letter-spacing:-.02em;color:color-mix(in srgb,var(--ink-900) 32%,var(--paper-0));font-family:monospace;font-weight:700}.mini-product-card-body{padding:11px 12px 12px;display:flex;flex-direction:column;gap:3px;flex:1}.mini-product-card-pn{font-family:var(--font-display);font-weight:700;font-size:.875rem;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-product-card-desc{margin:0;font-size:.775rem;color:var(--color-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1;min-height:2.24em}.mini-product-card-price{font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--color-text);margin-top:5px}.mini-product-card-meta{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-top:1px}.mini-product-card-supplier{font-size:.73rem;color:var(--color-muted)}.mini-product-card-actions{display:flex;gap:6px;margin-top:10px}.mini-product-card-add{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:7px 8px;background:var(--tint-accent);border:1px solid color-mix(in srgb,var(--color-accent) 25%,transparent);color:var(--color-accent);border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.78rem;cursor:pointer;transition:background .15s,border-color .15s;min-width:0}.mini-product-card-add svg{width:13px;height:13px;flex-shrink:0}.mini-product-card-add:hover{background:color-mix(in srgb,var(--color-accent) 22%,transparent);border-color:color-mix(in srgb,var(--color-accent) 40%,transparent)}.mini-product-card-add.is-added{background:var(--tint-green);border-color:color-mix(in srgb,var(--color-green) 30%,transparent);color:var(--color-green)}.mini-product-card-save{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-muted);cursor:pointer;transition:color .15s,border-color .15s,background .15s;flex-shrink:0;padding:0}.mini-product-card-save svg{width:14px;height:14px}.mini-product-card-save:hover{background:var(--tint-accent);border-color:color-mix(in srgb,var(--color-accent) 35%,transparent);color:var(--color-accent)}.mini-product-card-save.is-saved{color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 40%,transparent);background:var(--tint-accent)}.mini-product-card-skeleton{flex-shrink:0;width:186px;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;scroll-snap-align:start;background:var(--color-surface)}@media (max-width: 560px){.explore-quick-cats{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.mini-product-card,.mini-product-card-skeleton{width:160px}.mini-product-card-img{height:120px}}.cart-page-shell{width:100%;max-width:1200px;margin:0 auto;padding:var(--page-pad) var(--page-pad) 80px;font-family:var(--font-display)}.cart-layout{display:grid;grid-template-columns:1fr 340px;gap:28px;align-items:flex-start}@media (max-width: 960px){.cart-layout{grid-template-columns:1fr}}.cart-items-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.cart-items-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--color-border);background:color-mix(in srgb,var(--color-text) 2%,transparent)}.cart-select-all{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:.86rem;font-weight:500;color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none}.cart-select-all input[type=checkbox]{accent-color:var(--color-accent);width:16px;height:16px;cursor:pointer}.cart-clear-btn{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:6px 12px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.8rem;cursor:pointer;transition:color .15s,border-color .15s}.cart-clear-btn:hover{color:var(--color-red);border-color:color-mix(in srgb,var(--color-red) 40%,transparent)}.cart-line{display:grid;grid-template-columns:32px 56px 1fr 110px 140px 110px 36px;gap:16px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--color-border);cursor:pointer;transition:background .12s}.cart-line:last-child{border-bottom:none}.cart-line:hover{background:color-mix(in srgb,var(--color-accent) 4%,transparent)}.cart-line:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.cart-line-image{width:56px;height:56px;border-radius:var(--radius-sm);background:var(--color-bg);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;overflow:hidden}.cart-line-image img{max-width:100%;max-height:100%;object-fit:contain}.cart-line-image-placeholder{font-family:var(--font-mono);font-size:.86rem;color:var(--color-muted)}.cart-line-check{display:inline-flex;align-items:center;justify-content:center}.cart-line-check input{accent-color:var(--color-accent);width:16px;height:16px;cursor:pointer}.cart-line-info{min-width:0;display:flex;flex-direction:column;gap:4px}.cart-line-name{font-family:var(--font-mono);font-weight:500;font-size:.96rem;color:var(--color-text);letter-spacing:-.005em;word-break:break-word}.cart-line-sku{font-family:var(--font-mono);font-size:.78rem;color:var(--color-muted);margin-left:6px}.cart-line-desc{margin:0;font-family:var(--font-display);font-size:.86rem;color:var(--color-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-line-supplier{font-family:var(--font-display);font-size:.78rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.08em}.cart-line-unit{font-family:var(--font-mono);font-size:.92rem;color:var(--color-text)}.cart-stepper{display:inline-flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-card);width:fit-content}.cart-stepper-btn{background:transparent;border:none;color:var(--color-text);width:30px;height:32px;cursor:pointer;font-family:var(--font-display);font-size:1rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.cart-stepper-btn:hover{color:var(--color-accent)}.cart-stepper-btn:disabled{color:var(--color-muted);cursor:not-allowed}.cart-stepper-input{width:40px;height:32px;background:transparent;border:none;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);color:var(--color-text);text-align:center;font-family:var(--font-mono);font-size:.9rem;outline:none;-moz-appearance:textfield}.cart-stepper-input::-webkit-inner-spin-button,.cart-stepper-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cart-line-total{font-family:var(--font-mono);font-weight:500;font-size:.96rem;color:var(--color-text);text-align:right}.cart-remove-btn{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);width:32px;height:32px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .15s,border-color .15s,background .15s}.cart-remove-btn:hover{color:var(--color-red);border-color:color-mix(in srgb,var(--color-red) 40%,transparent);background:var(--tint-red)}.cart-remove-btn svg{width:14px;height:14px}@media (max-width: 720px){.cart-line{grid-template-columns:32px 48px 1fr auto;row-gap:8px;gap:12px}.cart-line-image{width:48px;height:48px}.cart-line-supplier,.cart-line-unit,.cart-stepper-wrap{grid-column:3 / -1}.cart-line-total{grid-column:1 / -1;text-align:right}.cart-remove-btn{grid-row:1;grid-column:4}}.cart-summary-card{position:sticky;top:84px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:22px;display:flex;flex-direction:column;gap:18px}.cart-summary-title{font-family:var(--font-display);font-weight:700;font-size:1rem;letter-spacing:-.005em;margin:0;color:var(--color-text)}.cart-summary-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0}.cart-summary-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.cart-summary-row dt{font-family:var(--font-display);font-size:.88rem;color:var(--color-muted)}.cart-summary-row dd{margin:0;font-family:var(--font-mono);font-size:.92rem;color:var(--color-text)}.cart-summary-divider{height:1px;background:var(--color-border);margin:0}.cart-summary-total dt,.cart-summary-total dd{font-family:var(--font-display);font-weight:700;font-size:1.05rem;color:var(--color-text)}.cart-summary-total dd{font-family:var(--font-mono)}.cart-summary-cta{background:var(--color-accent);color:var(--color-on-accent);border:none;padding:13px 18px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.95rem;cursor:pointer;text-decoration:none;text-align:center;transition:background .15s,transform .12s}.cart-summary-cta:hover{background:var(--color-accent-hover)}.cart-summary-cta:disabled,.cart-summary-cta.is-disabled{background:var(--tint-dim);color:var(--color-muted);cursor:not-allowed;transform:none;pointer-events:none}.cart-summary-note{margin:0;font-family:var(--font-display);font-size:.78rem;color:var(--color-muted);line-height:1.5;text-align:center}.checkout-page-shell{width:100%;max-width:1100px;margin:0 auto;padding:var(--page-pad) var(--page-pad) 80px;font-family:var(--font-display)}.sourcing-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:22px}.sourcing-title{font-family:var(--font-display);font-weight:700;font-size:clamp(1.6rem,3vw,2.1rem);letter-spacing:var(--tracking-tight);margin:0 0 6px;color:var(--color-text)}.sourcing-sub{margin:0;color:var(--color-muted);font-size:.92rem;line-height:1.55;max-width:64ch}.sourcing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:14px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-top:2px solid var(--color-accent);border-radius:0 0 var(--radius-md) var(--radius-md);margin-bottom:18px}.sourcing-actions-hint{margin-left:auto;font-size:.82rem;color:var(--color-muted);font-family:var(--font-mono)}@media (max-width: 560px){.sourcing-actions-hint{margin-left:0;flex-basis:100%;text-align:center}}.sourcing-list{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:12px}.sourcing-card{position:relative;display:grid;grid-template-columns:88px 1fr auto;gap:16px;align-items:center;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px 16px}.sourcing-card:after{content:"";position:absolute;left:-1px;top:10px;bottom:10px;width:2px;border-radius:1px;background:transparent;transition:background .18s}.sourcing-card:hover:after{background:var(--color-accent)}.sourcing-card-index{position:absolute;top:-9px;left:14px;font-family:var(--font-mono);font-size:.64rem;font-weight:600;letter-spacing:.12em;color:var(--color-accent);background:var(--color-bg);border:1px solid color-mix(in srgb,var(--color-accent) 40%,transparent);border-radius:3px;padding:1px 6px;line-height:1.3}@media (max-width: 720px){.sourcing-card{grid-template-columns:64px 1fr;gap:12px}.sourcing-card-actions{grid-column:1 / -1;flex-direction:row;justify-content:flex-end}}.sourcing-card-img{width:88px;height:88px;border-radius:var(--radius-sm);background:repeating-linear-gradient(0deg,var(--paper-200) 0 1px,transparent 1px 8px),repeating-linear-gradient(90deg,var(--paper-200) 0 1px,transparent 1px 8px),var(--paper-0);display:flex;align-items:center;justify-content:center;overflow:hidden}@media (max-width: 720px){.sourcing-card-img{width:64px;height:64px}}.sourcing-card-img img{max-width:100%;max-height:100%;object-fit:contain;padding:4px}.sourcing-card-img-placeholder{font-family:var(--font-mono);font-size:.78rem;color:var(--color-muted);letter-spacing:.06em}.sourcing-card-body{min-width:0}.sourcing-card-row1{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.sourcing-card-mpn{font-family:var(--font-mono);font-weight:600;font-size:.98rem;color:var(--color-text)}.sourcing-card-mfr{font-size:.82rem;color:var(--color-muted)}.sourcing-card-desc{margin:4px 0 8px;color:var(--color-muted);font-size:.9rem;line-height:1.5}.sourcing-card-meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.82rem;color:var(--color-text);font-family:var(--font-mono);border-top:1px dashed var(--color-border);padding-top:8px;margin-top:2px}.sourcing-card-meta strong{color:var(--color-subtle);font-weight:500;font-family:var(--font-mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.sourcing-card-actions{display:inline-flex;flex-direction:column;align-items:stretch;gap:6px;min-width:160px}.sourcing-card-no-link{font-size:.78rem;color:var(--color-muted);text-align:center;padding:8px 10px;border:1px dashed var(--color-border);border-radius:var(--radius-sm);line-height:1.4}.sourcing-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:8px;border-top:1px dashed var(--color-border)}.sourcing-footer-note{font-family:var(--font-mono);font-size:.75rem;color:var(--color-muted);border:1px dashed var(--color-border);border-radius:4px;padding:6px 10px;line-height:1.5}.profile-redeem-form{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap}.profile-redeem-form .auth-input{flex:1;min-width:220px}.profile-redeem-form .auth-submit{margin-top:0;flex-shrink:0}.profile-page{width:100%;max-width:1100px;margin:0 auto;padding:var(--page-pad) var(--page-pad) 80px;font-family:var(--font-display);display:flex;flex-direction:column;gap:28px}.profile-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:24px}.profile-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:16px}.profile-section-title{font-family:var(--font-display);font-weight:700;font-size:1.05rem;letter-spacing:-.005em;margin:0;color:var(--color-text)}.profile-section-sub{margin:4px 0 0;color:var(--color-muted);font-size:.88rem}.profile-identity{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center}.profile-avatar-lg{width:76px;height:76px;border-radius:50%;background:var(--tint-accent);color:var(--color-accent);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:1.6rem;letter-spacing:.02em}.profile-identity-fields{display:grid;grid-template-columns:100px 1fr;row-gap:8px;column-gap:18px;align-items:center;min-width:0}.profile-field-label{font-family:var(--font-display);font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-muted)}.profile-field-value{font-family:var(--font-display);font-size:.95rem;color:var(--color-text)}.profile-edit-btn{background:transparent;border:1px solid var(--color-border);color:var(--color-text);padding:8px 14px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:500;font-size:.85rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s;align-self:flex-start}.profile-edit-btn:hover{background:var(--tint-dim);border-color:var(--color-border-strong)}.profile-edit-btn--primary{background:var(--color-accent);color:var(--color-on-accent);border-color:var(--color-accent)}.profile-edit-btn--primary:hover{background:var(--color-accent-hover)}.profile-edit-actions{display:inline-flex;gap:8px;align-self:flex-start}.profile-input{background:var(--color-card);border:1px solid var(--color-border);color:var(--color-text);padding:8px 12px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.92rem;outline:none;width:100%;max-width:320px;transition:border-color .15s,box-shadow .15s}.profile-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--focus-ring)}@media (max-width: 720px){.profile-identity{grid-template-columns:auto 1fr}.profile-edit-btn,.profile-edit-actions{grid-column:1 / -1}.profile-identity-fields{grid-template-columns:1fr;row-gap:4px}.profile-field-label{margin-top:8px}}.profile-history-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:14px}.profile-search-input{flex:1;min-width:200px;background:var(--color-card);border:1px solid var(--color-border);color:var(--color-text);padding:9px 14px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.9rem;outline:none}.profile-search-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--focus-ring)}.profile-filter-chips{display:inline-flex;gap:6px}.profile-filter-chip{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);padding:6px 12px;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:.82rem;font-weight:500;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.profile-filter-chip:hover{border-color:var(--color-border-strong);color:var(--color-text)}.profile-filter-chip.is-active{background:var(--tint-accent);color:var(--color-accent);border-color:color-mix(in srgb,var(--color-accent) 45%,transparent)}.profile-history-list{display:flex;flex-direction:column;gap:8px}.profile-history-row{display:grid;grid-template-columns:1fr auto auto auto;gap:14px;align-items:center;padding:12px 14px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;text-align:left;font-family:var(--font-display);color:var(--color-text);transition:border-color .15s,background .15s}.profile-history-row:hover{border-color:color-mix(in srgb,var(--color-accent) 40%,transparent);background:color-mix(in srgb,var(--color-accent) 4%,transparent)}.profile-history-query{font-family:var(--font-display);font-weight:500;font-size:.95rem;color:var(--color-text);word-break:break-word}.profile-history-tags{display:inline-flex;flex-wrap:wrap;gap:6px;margin-top:4px}.profile-history-tag{display:inline-flex;align-items:center;padding:3px 8px;border:1px solid var(--color-border);border-radius:4px;font-family:var(--font-mono);font-size:.68rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;line-height:1.2;color:var(--color-muted)}.profile-history-meta{font-family:var(--font-mono);font-size:.78rem;color:var(--color-muted);white-space:nowrap}.profile-history-trash{background:transparent;border:1px solid transparent;color:var(--color-muted);width:30px;height:30px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .15s,border-color .15s,background .15s}.profile-history-trash:hover{color:var(--color-red);border-color:color-mix(in srgb,var(--color-red) 40%,transparent);background:var(--tint-red)}.profile-history-trash svg{width:14px;height:14px}@media (max-width: 720px){.profile-history-row{grid-template-columns:1fr auto;row-gap:4px}.profile-history-meta{grid-column:1 / -1}}.profile-saved-list{display:flex;flex-direction:column;gap:12px}.profile-saved-card{display:grid;grid-template-columns:56px 1fr auto;gap:16px;align-items:center;padding:14px;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.profile-saved-img{width:56px;height:56px;border-radius:var(--radius-sm);background:var(--color-surface);display:flex;align-items:center;justify-content:center;overflow:hidden}.profile-saved-img img{max-width:100%;max-height:100%;object-fit:contain}.profile-saved-img-placeholder{font-family:var(--font-mono);font-size:.86rem;color:var(--color-muted)}.profile-saved-body{min-width:0;display:flex;flex-direction:column;gap:4px}.profile-saved-row1{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.profile-saved-name{font-family:var(--font-mono);font-weight:500;font-size:.94rem;color:var(--color-text)}.profile-saved-supplier{font-family:var(--font-display);font-size:.74rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.08em}.profile-saved-desc{margin:0;font-family:var(--font-display);font-size:.86rem;color:var(--color-muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.profile-saved-meta{display:inline-flex;align-items:center;gap:12px;margin-top:2px}.profile-saved-price{font-family:var(--font-mono);font-size:.9rem;color:var(--color-text)}.profile-saved-actions{display:inline-flex;align-items:center;gap:8px}.profile-saved-add{background:var(--color-accent);color:var(--color-on-accent);border:none;padding:8px 12px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.82rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.profile-saved-add:hover{background:var(--color-accent-hover)}.profile-saved-add svg{width:14px;height:14px}.profile-saved-remove{background:transparent;border:1px solid var(--color-border);color:var(--color-muted);width:32px;height:32px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:color .15s,border-color .15s}.profile-saved-remove:hover{color:var(--color-text);border-color:var(--color-border-strong)}.profile-saved-remove svg{width:14px;height:14px}.settings-grid{display:flex;flex-direction:column;gap:22px}.settings-block{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}.settings-block-text{min-width:220px;max-width:60%}.settings-block-title{font-family:var(--font-display);font-weight:600;font-size:.95rem;margin:0 0 4px;color:var(--color-text)}.settings-block-sub{margin:0;font-family:var(--font-display);font-size:.85rem;color:var(--color-muted);line-height:1.55}.settings-theme-segment{display:inline-flex;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:3px}.settings-theme-btn{background:transparent;border:none;color:var(--color-muted);padding:7px 14px;font-family:var(--font-display);font-size:.84rem;font-weight:500;border-radius:6px;cursor:pointer}.settings-theme-btn.is-active{background:var(--tint-accent);color:var(--color-accent)}.settings-toggle-row{display:flex;align-items:center;gap:12px}.settings-toggle{position:relative;width:36px;height:20px;border-radius:999px;background:var(--color-card);border:1px solid var(--color-border);flex-shrink:0;transition:background .18s,border-color .18s}.settings-toggle:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--color-muted);transition:transform .18s,background .18s}.settings-toggle-input{display:none}.settings-toggle-input:checked+.settings-toggle{background:var(--tint-accent);border-color:var(--color-accent)}.settings-toggle-input:checked+.settings-toggle:after{transform:translate(16px);background:var(--color-accent)}.settings-export-btn{background:var(--color-accent);color:var(--color-on-accent);border:none;padding:10px 16px;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;font-size:.88rem;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.settings-export-btn:hover{background:var(--color-accent-hover)}.settings-export-btn svg{width:14px;height:14px}:root{--copper-300: #dcbf92;--copper-400: #c6a066;--copper-500: #b18a4e;--copper-600: #8a6832;--copper-700: #63481c;--grad-signature: linear-gradient( 135deg, color-mix(in srgb, var(--copper-700) 82%, #fff) 0%, var(--copper-700) 50%, color-mix(in srgb, var(--copper-700) 78%, #000) 100% );--mask-950: #0a0f0e;--mask-900: #0f1513;--mask-850: #121a18;--mask-800: #18231f;--mask-700: #213029;--board-mask: #0e1613;--board-mask-edge: #1a2620;--board-silk: #c9d4cc;--led-green: #55e07a;--led-amber: #f0b24a;--oled-glow: #9fe8ef;--cmp-silver: #c9ccce;--cmp-steel: #999fa3;--cmp-steel-dark: #62686d;--cmp-epoxy: #212326;--cmp-ceramic: #eceae3;--cmp-gold: #d9a648;--paper-0: #ffffff;--paper-50: #fcfdfb;--paper-100: #f7f8f6;--paper-200: #e3e7e0;--ink-900: #191d1a;--ink-600: #68716b;--font-display: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--tracking-tight: -.02em;--leading-body: 1.6;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--page-pad: 24px;--card-gap: 16px;--inline-gap: 8px}:root,:root[data-theme=dark]{--color-bg: var(--mask-950);--color-surface: var(--mask-900);--color-card: var(--mask-850);--color-raised: var(--mask-800);--color-border: rgba(120, 200, 180, .1);--color-border-subtle: rgba(120, 200, 180, .05);--color-border-strong: rgba(120, 200, 180, .22);--color-text: #eaf2ef;--color-muted: #8ca39c;--color-subtle: #a7bab2;--color-accent: var(--copper-400);--color-accent-hover: var(--copper-300);--color-accent-light: var(--copper-300);--color-on-accent: #14100c;--color-on-signature: #f2ece1;--color-green: #3fb96a;--color-orange: #e8933c;--color-red: #e25563;--tint-accent: color-mix(in srgb, var(--color-accent) 14%, transparent);--tint-green: color-mix(in srgb, var(--color-green) 14%, transparent);--tint-orange: color-mix(in srgb, var(--color-orange) 14%, transparent);--tint-red: color-mix(in srgb, var(--color-red) 14%, transparent);--tint-dim: rgba(228, 234, 228, .06);--focus-ring: color-mix(in srgb, var(--color-accent) 45%, transparent);--color-scrim: rgba(5, 9, 7, .72);--shadow-card: 0 4px 24px rgba(0, 0, 0, .4);--shadow-lift: 0 12px 32px rgba(0, 0, 0, .55);color-scheme:dark}:root[data-theme=light]{--color-bg: var(--paper-100);--color-surface: var(--paper-0);--color-card: var(--paper-50);--color-raised: var(--paper-0);--color-border: var(--paper-200);--color-border-subtle: rgba(25, 29, 26, .05);--color-border-strong: #cbd2c9;--color-text: var(--ink-900);--color-muted: var(--ink-600);--color-subtle: #7d857f;--color-accent: var(--copper-600);--color-accent-hover: var(--copper-700);--color-accent-light: var(--copper-500);--color-on-accent: #fff8f2;--color-on-signature: #fff8f2;--color-green: #1e8a4c;--color-orange: #b06018;--color-red: #c23a4b;--tint-accent: color-mix(in srgb, var(--color-accent) 10%, transparent);--tint-green: color-mix(in srgb, var(--color-green) 11%, transparent);--tint-orange: color-mix(in srgb, var(--color-orange) 11%, transparent);--tint-red: color-mix(in srgb, var(--color-red) 11%, transparent);--tint-dim: rgba(25, 29, 26, .05);--focus-ring: color-mix(in srgb, var(--color-accent) 40%, transparent);--color-scrim: rgba(22, 27, 23, .45);--shadow-card: 0 2px 12px rgba(25, 29, 26, .08);--shadow-lift: 0 10px 28px rgba(25, 29, 26, .14);color-scheme:light}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.25;letter-spacing:var(--tracking-tight)}button,input,select,textarea{font-family:inherit;line-height:1.4}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}.brand-ai{background:var(--grad-signature);-webkit-background-clip:text;background-clip:text;color:transparent;margin-left:1px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.bom-table{width:100%;overflow-x:auto}.cart-select-all{display:flex;align-items:center;cursor:pointer}.cart-select-all input{accent-color:var(--color-accent);width:15px;height:15px}[data-sidebar-reopen]{display:none}.app-shell{display:flex;height:100vh;overflow:hidden;background:var(--color-bg);color:var(--color-text)}.app-sidebar{width:240px;flex-shrink:0;background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;transition:width .2s ease;overflow:hidden}.app-sidebar.is-collapsed{width:64px}.app-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;height:64px;border-bottom:1px solid var(--color-border);flex-shrink:0}.app-sidebar-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--color-text);font-family:var(--font-display);font-weight:700;font-size:1.05rem;letter-spacing:-.01em;min-width:0}.app-sidebar-brand-icon{width:28px;height:28px;border-radius:7px;flex-shrink:0}.app-sidebar-brand-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-sidebar-toggle{background:transparent;border:none;color:var(--color-muted);cursor:pointer;padding:4px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center}.app-sidebar-toggle:hover{color:var(--color-text);background:var(--tint-dim)}.app-sidebar-toggle svg{width:18px;height:18px}.app-sidebar-nav{display:flex;flex-direction:column;gap:2px;padding:14px 12px;flex:1;overflow-y:auto}.app-sidebar-link{display:flex;align-items:center;gap:12px;padding:10px 12px 10px 9px;border-left:3px solid transparent;border-radius:0 8px 8px 0;text-decoration:none;color:var(--color-muted);font-family:var(--font-display);font-weight:500;font-size:.92rem;transition:background .15s,color .15s,border-color .15s}.app-sidebar-link:hover{background:var(--tint-dim);color:var(--color-text)}.app-sidebar-link.is-active{background:var(--tint-accent);color:var(--color-accent);border-left-color:var(--color-accent)}.app-sidebar-link-icon{display:inline-flex;width:20px;height:20px;flex-shrink:0}.app-sidebar-link-icon svg{width:100%;height:100%}.app-sidebar-link-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-sidebar-link-badge{background:var(--color-accent);color:var(--color-on-accent);font-size:.68rem;font-weight:600;font-family:var(--font-mono);padding:2px 6px;border-radius:4px;min-width:20px;text-align:center;line-height:1.4}.app-sidebar.is-collapsed .app-sidebar-brand,.app-sidebar.is-collapsed .app-sidebar-link-label,.app-sidebar.is-collapsed .app-sidebar-link-badge,.app-sidebar.is-collapsed .app-sidebar-user-text,.app-sidebar.is-collapsed .app-sidebar-logout-label{display:none}.app-sidebar.is-collapsed .app-sidebar-header{justify-content:center;padding:16px 0}.app-sidebar.is-collapsed .app-sidebar-link{justify-content:center;padding:12px 0;border-radius:0;border-left-width:3px}.app-sidebar.is-collapsed .app-sidebar-foot{align-items:center;padding:12px 8px}.app-sidebar.is-collapsed .app-sidebar-user{justify-content:center}.app-sidebar.is-collapsed .app-sidebar-logout{width:40px;height:40px;padding:0;justify-content:center}.app-sidebar-foot{display:flex;flex-direction:column;gap:12px;padding:14px 12px;border-top:1px solid var(--color-border);flex-shrink:0}.app-sidebar-user{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:8px;text-decoration:none;color:inherit;min-width:0;transition:background .15s}.app-sidebar-user:hover{background:var(--tint-dim)}.app-sidebar-user-text{display:flex;flex-direction:column;min-width:0}.app-sidebar-user-name{font-family:var(--font-display);font-size:.88rem;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-sidebar-user-email{font-size:.74rem;color:var(--color-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-sidebar-logout{background:transparent;border:1px solid var(--color-border);color:var(--color-text);padding:8px 12px;border-radius:8px;font-family:var(--font-display);font-weight:500;font-size:.82rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .15s,border-color .15s}.app-sidebar-logout:hover{background:var(--tint-dim);border-color:var(--color-border-strong)}.app-sidebar-logout-icon{display:inline-flex}.app-sidebar-logout-icon svg{width:16px;height:16px}.app-sidebar-theme{display:flex;gap:2px;padding:2px;border:1px solid var(--color-border);border-radius:6px}.app-sidebar-theme-seg{flex:1;background:transparent;border:none;border-radius:4px;padding:5px 0;font-family:var(--font-mono);font-size:.66rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--color-muted);cursor:pointer;transition:background .15s,color .15s}.app-sidebar-theme-seg:hover{color:var(--color-text)}.app-sidebar-theme-seg.is-active{background:var(--tint-accent);color:var(--color-accent)}.app-sidebar-theme-cycle{width:34px;height:30px;margin:0 auto;background:transparent;border:1px solid var(--color-border);border-radius:6px;font-family:var(--font-mono);font-size:.7rem;font-weight:600;color:var(--color-muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.app-sidebar-theme-cycle:hover{background:var(--tint-dim);color:var(--color-text);border-color:var(--color-border-strong)}.app-avatar{width:36px;height:36px;border-radius:50%;background:var(--tint-accent);color:var(--color-accent);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;font-size:.82rem;flex-shrink:0;letter-spacing:.02em}.app-avatar-sm{width:32px;height:32px;font-size:.76rem}.app-main-region{flex:1;display:flex;flex-direction:column;min-width:0}.app-content{flex:1;overflow-y:auto;overflow-x:hidden}@media (max-width: 720px){.app-sidebar{width:64px}.app-sidebar-toggle,.app-sidebar-brand-text,.app-sidebar-link-label,.app-sidebar-link-badge,.app-sidebar-user-text,.app-sidebar-logout-label{display:none}.app-sidebar-header{justify-content:center;padding:16px 0}.app-sidebar-link{justify-content:center;padding:12px 0;border-radius:0}.app-sidebar-foot{align-items:center;padding:12px 8px}.app-sidebar-user{justify-content:center}.app-sidebar-logout{width:40px;height:40px;padding:0;justify-content:center}}.saved-builds-page{width:100%;max-width:1100px;margin:0 auto;padding:var(--page-pad) var(--page-pad) 80px}.search-page-shell{max-width:1100px;margin:0 auto;padding:48px 28px 80px;width:100%}.search-form{display:grid;grid-template-columns:1fr 180px 180px auto;gap:12px;margin-bottom:32px}.search-input,.search-select{background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-text) 8%,transparent);color:var(--color-text);padding:12px 14px;border-radius:8px;font-size:.95rem;font-family:inherit}.search-input:focus,.search-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 18%,transparent)}.search-submit-btn{background:var(--grad-signature);border:none;color:var(--color-on-signature);padding:12px 22px;border-radius:8px;font-weight:600;cursor:pointer;font-size:.95rem;transition:opacity .15s ease}.search-submit-btn:hover{opacity:.9}.search-empty{border:1px dashed color-mix(in srgb,var(--color-text) 10%,transparent);border-radius:12px;padding:60px 24px;text-align:center;color:var(--color-muted)}@media (max-width: 720px){.search-form{grid-template-columns:1fr}}.profile-page-shell{max-width:720px;margin:0 auto;padding:64px 28px;width:100%}.profile-card{background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-text) 7%,transparent);border-radius:16px;padding:32px}.profile-row{display:grid;grid-template-columns:140px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid color-mix(in srgb,var(--color-text) 5%,transparent)}.profile-row:last-child{border-bottom:none}.profile-row-label{color:var(--color-muted);font-size:.9rem}.profile-row-value{color:var(--color-text);font-size:.95rem}.explore-tabs{display:inline-flex;background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-text) 7%,transparent);border-radius:10px;padding:4px;margin-bottom:24px}.explore-tab{background:transparent;border:none;color:var(--color-subtle);padding:8px 18px;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;font-family:inherit}.explore-tab.is-active{background:color-mix(in srgb,var(--color-accent) 18%,transparent);color:var(--color-accent-light)}.ui-badge{display:inline-flex;align-items:center;gap:6px;padding:2px 0;font-family:var(--font-mono);font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;line-height:1;white-space:nowrap}.ui-badge--green{color:var(--color-green)}.ui-badge--blue{color:var(--color-accent)}.ui-badge--orange{color:var(--color-orange)}.ui-badge--red{color:var(--color-red)}.ui-badge--dim{color:var(--color-muted)}.ui-refdes{display:inline-flex;align-items:center;gap:6px;padding:2px 0;font-family:var(--font-mono);font-size:.68rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;line-height:1.2;color:var(--color-muted);white-space:nowrap}.ui-refdes--accent{color:var(--color-accent)}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--radius-sm);font-family:var(--font-display);font-weight:600;letter-spacing:.01em;cursor:pointer;transition:background .15s,border-color .15s,transform .12s,box-shadow .15s,color .15s,opacity .15s;text-decoration:none;white-space:nowrap}.ui-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.ui-btn--sm{padding:7px 14px;font-size:.82rem}.ui-btn--md{padding:11px 20px;font-size:.92rem}.ui-btn--primary{background:var(--grad-signature);color:var(--color-on-signature)}.ui-btn--primary:hover:not(:disabled){opacity:.9}.ui-btn--primary:active:not(:disabled){transform:translateY(1px)}.ui-btn--ghost{background:transparent;color:var(--color-text);border-color:var(--color-border)}.ui-btn--ghost:hover:not(:disabled){background:var(--tint-dim);border-color:var(--color-border-strong)}.ui-btn--danger{background:var(--tint-red);color:var(--color-red);border-color:color-mix(in srgb,var(--color-red) 35%,transparent)}.ui-btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--color-red) 22%,transparent);border-color:var(--color-red)}.ui-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:20px;transition:transform .18s,border-color .18s,box-shadow .18s}.ui-card:hover{border-color:var(--color-border-strong)}.ui-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:32px 0 24px;border-bottom:1px solid var(--color-border);margin-bottom:32px}.ui-page-header-text{min-width:0}.ui-page-header-title{font-family:var(--font-display);font-weight:700;font-size:clamp(1.6rem,3vw,2.2rem);letter-spacing:var(--tracking-tight);line-height:1.25;color:var(--color-text);margin:0}.ui-page-header-sub{margin:8px 0 0;color:var(--color-muted);font-size:.95rem;line-height:1.55;max-width:64ch}.ui-page-header-actions{display:inline-flex;align-items:center;gap:10px;flex-shrink:0}@media (max-width: 720px){.ui-page-header{flex-direction:column;align-items:flex-start}}.ui-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:56px 24px;border:1px dashed var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-bg) 40%,transparent)}.ui-empty-icon{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:14px;color:var(--color-muted)}.ui-empty-icon>svg{width:100%;height:100%}.ui-empty-title{font-family:var(--font-display);font-weight:600;font-size:1.05rem;color:var(--color-text);margin:0 0 6px}.ui-empty-message{margin:0;font-size:.9rem;color:var(--color-muted);max-width:48ch;line-height:1.55}.ui-skeleton{display:inline-block;background:linear-gradient(90deg,var(--color-card) 0%,color-mix(in srgb,var(--color-text) 5%,transparent) 50%,var(--color-card) 100%);background-size:200% 100%;animation:ui-skeleton-shimmer 1.4s linear infinite}@keyframes ui-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.ui-skeleton{animation:none;opacity:.6}}.route-fade{animation:reflow-in .24s cubic-bezier(.2,.8,.25,1) both}@keyframes route-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.route-fade,.reflow-item{animation:none}}
