:root{--bg-putty: #efece4;--bg-vellum: #faf8f3;--bg-vellum-recessed: #e4dfd2;--bg-pcb-pine: #11241e;--bg-pcb-pine-elevated: #173028;--bg-pcb-pine-deep: #0b1915;--bg-cobalt: #1947e5;--bg-cobalt-deep: #1235b0;--ink-primary: #121c19;--ink-secondary: #2f423c;--ink-muted: #4b5e57;--ink-on-pine: #f3f7f5;--ink-on-pine-secondary: #b9d7cd;--ink-on-pine-muted: #8ab4a6;--ink-on-cobalt: #f8faff;--ink-on-cobalt-secondary: #d6e1ff;--signal-emerald: #10b981;--signal-emerald-strong: #047857;--signal-amber: #f59e0b;--signal-crimson: #f43f5e;--signal-cyan: #22d3ee;--rule-light: #c8c1b0;--rule-strong: #948c7a;--rule-pine: #284b40;--rule-pine-bright: #39695a;--font-display: "Saira", "Segoe UI", sans-serif;--font-sans: "Public Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", monospace}*,*:before,*:after{box-sizing:border-box}::selection{background-color:var(--bg-cobalt);color:var(--ink-on-cobalt)}html{scroll-behavior:smooth;background-color:var(--bg-putty);color:var(--ink-primary);font-family:var(--font-sans);font-size:16px;line-height:1.6;caret-color:var(--bg-cobalt);scrollbar-color:var(--ink-secondary) var(--bg-vellum-recessed);scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-vellum-recessed)}::-webkit-scrollbar-thumb{background:var(--ink-secondary);border:2px solid var(--bg-vellum-recessed)}::-webkit-scrollbar-thumb:hover{background:var(--bg-cobalt)}body{margin:0;background-color:var(--bg-putty);color:var(--ink-primary);overflow-x:hidden;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}button,input,textarea,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--bg-cobalt);outline-offset:2px}.tabular-nums{font-variant-numeric:tabular-nums}.mono-code{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.instrument-topbar{position:sticky;top:0;z-index:40;background-color:var(--bg-pcb-pine);color:var(--ink-on-pine);border-bottom:1px solid var(--rule-pine-bright)}.topbar-inner{max-width:1400px;margin:0 auto;padding:.65rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.brand-cluster{display:flex;align-items:center;gap:.85rem}.status-led-wrap{position:relative;width:10px;height:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.status-led-pulse{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background-color:var(--signal-emerald);pointer-events:none}.status-led-dot{position:relative;width:10px;height:10px;border-radius:50%;background-color:var(--signal-emerald);display:inline-block}.brand-name{font-family:var(--font-display);font-weight:700;font-size:1.05rem;letter-spacing:-.01em;color:var(--ink-on-pine);text-decoration:none}.brand-role-tag{font-family:var(--font-mono);font-size:.76rem;color:var(--ink-on-pine-secondary);padding:.15rem .55rem;background-color:var(--bg-pcb-pine-elevated);border:1px solid var(--rule-pine-bright)}.nav-links{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.nav-link{position:relative;font-size:.85rem;font-weight:500;color:var(--ink-on-pine-secondary);text-decoration:none;padding:.38rem .7rem;border:1px solid transparent;transition:background-color .16s cubic-bezier(.16,1,.3,1),color .16s cubic-bezier(.16,1,.3,1),border-color .16s cubic-bezier(.16,1,.3,1)}.nav-link:hover,.nav-link.is-active{color:var(--ink-on-pine);background-color:var(--bg-pcb-pine-elevated)}.nav-link:hover{border-color:var(--rule-pine-bright)}.nav-link-indicator{position:absolute;left:.5rem;right:.5rem;bottom:-1px;height:2px;background-color:var(--signal-cyan)}.topbar-scroll-trace{height:2px;width:100%;background:linear-gradient(90deg,var(--bg-cobalt) 0%,var(--signal-cyan) 55%,var(--signal-emerald) 100%);transform-origin:left center}.nav-cta{font-family:var(--font-display);font-weight:600;font-size:.86rem;background-color:var(--bg-cobalt);color:var(--ink-on-cobalt);text-decoration:none;padding:.42rem .9rem;border:1px solid #4e73f8;display:inline-flex;align-items:center;gap:.4rem;transition:background-color .16s cubic-bezier(.16,1,.3,1)}.nav-cta:hover{background-color:var(--bg-cobalt-deep)}.dossier-shell{max-width:1400px;margin:0 auto;padding:0 1.5rem 4rem}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.12;letter-spacing:-.025em;text-wrap:balance;margin-top:0}.hero-title{font-size:clamp(2.2rem,3.8vw,3.45rem);font-weight:800;color:var(--ink-primary);margin-bottom:.45rem}.section-heading{font-size:clamp(1.65rem,2.6vw,2.35rem);font-weight:700;color:var(--ink-primary);margin-top:0;margin-bottom:.45rem}.section-heading-on-dark{font-size:clamp(1.65rem,2.6vw,2.35rem);font-weight:700;color:var(--ink-on-pine);margin-top:0;margin-bottom:.55rem}.body-measure{max-width:68ch;color:var(--ink-secondary);font-size:1rem;line-height:1.65}.first-viewport-sheet{margin-top:1.25rem;border:1px solid var(--rule-strong);background-color:var(--bg-vellum)}.first-viewport-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1.1fr)}.candidate-spec-column{min-width:0;padding:1.65rem 1.85rem;border-right:1px solid var(--rule-light);display:flex;flex-direction:column;justify-content:space-between;gap:1.25rem}.role-subtitle{font-family:var(--font-display);font-size:1.18rem;font-weight:600;color:var(--bg-cobalt);margin:0 0 .75rem}.candidate-meta-strip{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1rem}.spec-pill{font-family:var(--font-mono);font-size:.76rem;padding:.22rem .55rem;background-color:var(--bg-putty);border:1px solid var(--rule-light);color:var(--ink-secondary);display:inline-flex;align-items:center;gap:.38rem;max-width:100%;word-break:break-word}.spec-pill-cobalt{background-color:var(--bg-cobalt);color:var(--ink-on-cobalt);border-color:var(--bg-cobalt-deep)}.hero-alignment-ledger{border-top:1px solid var(--rule-light);border-bottom:1px solid var(--rule-light);padding:1rem 0;display:grid;gap:.75rem}.ledger-row{display:grid;grid-template-columns:175px 1fr;gap:.85rem;align-items:baseline;font-size:.92rem}.ledger-key{font-family:var(--font-mono);font-size:.76rem;font-weight:600;color:var(--ink-muted)}.ledger-val{color:var(--ink-primary);font-weight:500;line-height:1.5}.action-bar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.btn-primary-cobalt{background-color:var(--bg-cobalt);color:var(--ink-on-cobalt);border:1px solid var(--bg-cobalt-deep);padding:.72rem 1.2rem;font-family:var(--font-display);font-weight:700;font-size:.95rem;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:background-color .16s cubic-bezier(.16,1,.3,1),transform .16s cubic-bezier(.16,1,.3,1)}.btn-primary-cobalt:hover{background-color:var(--bg-cobalt-deep);transform:translateY(-1px)}.btn-secondary-vellum{background-color:var(--bg-putty);color:var(--ink-primary);border:1px solid var(--rule-strong);padding:.72rem 1.1rem;font-family:var(--font-display);font-weight:600;font-size:.92rem;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:.45rem;transition:background-color .16s cubic-bezier(.16,1,.3,1)}.btn-secondary-vellum:hover{background-color:var(--bg-vellum-recessed)}.hero-contact-links{display:flex;flex-wrap:wrap;gap:1.1rem;font-size:.82rem;color:var(--ink-secondary)}.billing-spec-footer{border-top:1px solid var(--rule-strong);background-color:var(--bg-vellum-recessed);padding:.75rem 1.65rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;font-family:var(--font-mono);font-size:.78rem;color:var(--ink-secondary)}.billing-item{display:inline-flex;align-items:center;gap:.45rem}.billing-item strong{color:var(--ink-primary)}.hil-bench-column{min-width:0;background-color:var(--bg-pcb-pine);color:var(--ink-on-pine);padding:1.5rem 1.65rem;position:relative;overflow:hidden}.hil-bench-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:space-between;gap:1.1rem}.hil-bench-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--rule-pine);padding-bottom:.85rem}.hil-title{font-size:1.32rem;font-weight:700;color:var(--ink-on-pine);margin:0 0 .25rem}.hil-subtitle{font-size:.86rem;color:var(--ink-on-pine-secondary);margin:0}.hero-hardware-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.hero-hardware-frame{position:relative;border:1px solid var(--rule-pine-bright);background-color:var(--bg-pcb-pine-deep);overflow:hidden;aspect-ratio:4 / 3;padding:0;width:100%;display:block}.hero-hardware-trigger{cursor:zoom-in;text-align:left}.hero-hardware-trigger:hover .hero-hardware-img,.photo-mount-trigger:hover .uploaded-preview-img{transform:scale(1.025)}.hero-hardware-img{width:100%;height:100%;object-fit:cover;display:block}.hero-hardware-specs{background-color:var(--bg-pcb-pine-deep);border:1px solid var(--rule-pine-bright);padding:.9rem 1.05rem;display:grid;gap:.6rem}.hero-spec-item{display:grid;grid-template-columns:175px 1fr;gap:.75rem;align-items:baseline;font-size:.86rem}.hero-spec-label{font-family:var(--font-mono);font-size:.74rem;font-weight:600;color:var(--ink-on-pine-muted)}.hero-spec-value{color:var(--ink-on-pine);font-weight:500}.hw-push-btn{font-family:var(--font-mono);font-size:.82rem;font-weight:600;padding:.55rem .95rem;background-color:var(--bg-pcb-pine-elevated);color:var(--ink-on-pine);border:1px solid var(--rule-pine-bright);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:.45rem;transition:background-color .15s ease,border-color .15s ease}.hw-push-btn:hover{background-color:#214439;border-color:var(--signal-cyan)}.dossier-section{margin-top:3.5rem;scroll-margin-top:4.5rem}#credentials{scroll-margin-top:4.5rem}.section-header-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;padding-bottom:1rem;border-bottom:2px solid var(--ink-primary);margin-bottom:1.5rem}.projects-stack{display:grid;gap:1.75rem}.registered-project-plate{border:1px solid var(--rule-strong);background-color:var(--bg-vellum)}.plate-top-banner{background-color:var(--bg-pcb-pine);color:var(--ink-on-pine);padding:1rem 1.5rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--rule-pine-bright)}.plate-title{margin:0 0 .3rem;font-size:1.28rem;font-weight:700;color:var(--ink-on-pine)}.plate-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.86rem;color:var(--ink-on-pine-secondary)}.plate-category-text{font-weight:500}.plate-meta-divider{color:var(--ink-on-pine-muted)}.plate-period-text{font-size:.78rem;color:var(--ink-on-pine-secondary)}.plate-badge-cluster{display:flex;align-items:center;gap:.5rem}.plate-status-pill{font-family:var(--font-mono);font-size:.74rem;font-weight:600;padding:.25rem .6rem;background-color:var(--bg-pcb-pine-elevated);color:var(--ink-on-pine-secondary);border:1px solid var(--rule-pine-bright);white-space:nowrap}.plate-main-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1.22fr)}.plate-photo-frame{padding:1.5rem;border-right:1px solid var(--rule-light);background-color:var(--bg-putty);display:flex;flex-direction:column;gap:.9rem}.photo-mount-canvas{border:1px solid var(--rule-strong);background-color:var(--bg-pcb-pine-deep);color:var(--ink-on-pine);aspect-ratio:4 / 3;flex:1;min-height:280px;position:relative;overflow:hidden;padding:0;width:100%;display:block}.photo-mount-trigger{cursor:zoom-in}.uploaded-preview-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .26s cubic-bezier(.16,1,.3,1)}.hero-hardware-img{transition:transform .26s cubic-bezier(.16,1,.3,1)}.photo-inspect-hint{position:absolute;top:.55rem;right:.55rem;font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.04em;padding:.22rem .5rem;background-color:#0b1915db;color:var(--ink-on-pine);border:1px solid var(--rule-pine-bright);display:inline-flex;align-items:center;gap:.32rem;opacity:.85;transition:opacity .16s ease,border-color .16s ease,color .16s ease}.hero-hardware-trigger:hover .photo-inspect-hint,.photo-mount-trigger:hover .photo-inspect-hint{opacity:1;border-color:var(--signal-cyan);color:var(--signal-cyan)}.representative-photo-badge{position:absolute;bottom:.65rem;right:.65rem;font-family:var(--font-mono);font-size:.72rem;font-weight:600;padding:.22rem .55rem;background-color:var(--bg-pcb-pine);color:var(--ink-on-pine-secondary);border:1px solid var(--rule-pine-bright)}.gallery-thumb-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.45rem}.gallery-thumb-btn{position:relative;background-color:var(--bg-vellum);border:1px solid var(--rule-strong);padding:.25rem;cursor:pointer;display:flex;flex-direction:column;gap:.25rem;text-align:left;transition:border-color .15s ease,background-color .15s ease}.gallery-thumb-btn:hover{border-color:var(--bg-cobalt)}.gallery-thumb-btn.active{border-color:transparent;background-color:#fff}.gallery-thumb-active-ring{position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:2px solid var(--bg-cobalt);pointer-events:none;z-index:2}.gallery-thumb-img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.gallery-thumb-label{font-family:var(--font-mono);font-size:.66rem;line-height:1.25;color:var(--ink-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.plate-spec-body{padding:1.5rem 1.75rem;display:flex;flex-direction:column;justify-content:space-between;gap:1.25rem}.spec-subheading{font-size:1.06rem;font-weight:700;color:var(--ink-primary);margin:0 0 .45rem}.spec-summary-text{margin:0;color:var(--ink-secondary);font-size:.95rem;line-height:1.62;max-width:68ch}.spec-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;border-top:1px solid var(--rule-light);border-bottom:1px solid var(--rule-light);padding:1.1rem 0}.spec-box-heading{font-size:.98rem;font-weight:700;color:var(--ink-primary);margin:0 0 .55rem}.spec-list{margin:0;padding-left:1.15rem;font-size:.88rem;color:var(--ink-secondary);display:grid;gap:.35rem}.spec-pill-cluster{display:flex;flex-wrap:wrap;gap:.4rem}.spec-deliverables-box{background-color:var(--bg-putty);border:1px solid var(--rule-light);padding:1rem 1.15rem}.spec-deliverables-list{margin:0;padding-left:1.15rem;font-size:.9rem;color:var(--ink-secondary);display:grid;gap:.45rem;line-height:1.55}.experience-education-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:1.75rem;align-items:start}.logbook-panel{border:1px solid var(--rule-strong);background-color:var(--bg-vellum)}.logbook-panel-header{background-color:var(--bg-pcb-pine);color:var(--ink-on-pine);padding:.9rem 1.5rem;border-bottom:1px solid var(--rule-pine-bright)}.logbook-panel-title{margin:0;font-size:1.12rem;font-weight:700;color:var(--ink-on-pine)}.logbook-entry{padding:1.35rem 1.5rem;border-bottom:1px solid var(--rule-light)}.logbook-entry:last-child{border-bottom:none}.entry-header-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;flex-wrap:wrap}.entry-title{font-size:1.14rem;font-weight:700;color:var(--ink-primary);margin:0}.entry-period{font-family:var(--font-mono);font-size:.78rem;color:var(--ink-muted)}.entry-company-line{font-size:.92rem;font-weight:600;color:var(--bg-cobalt);margin:.22rem 0 .65rem}.entry-bullets{margin:0;padding-left:1.15rem;color:var(--ink-secondary);font-size:.92rem;display:grid;gap:.42rem}.entry-metrics-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem}.entry-detail-text{margin:0;font-size:.9rem;color:var(--ink-secondary);line-height:1.55}.cert-card{padding:.7rem .9rem;background-color:var(--bg-putty);border:1px solid var(--rule-light)}.dispatch-dossier-sheet{border:1px solid var(--rule-strong);background-color:var(--bg-pcb-pine);color:var(--ink-on-pine);padding:2rem}.contact-sheet-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2rem;align-items:center}.contact-lead-text{color:var(--ink-on-pine-secondary);font-size:.98rem;line-height:1.65;max-width:62ch;margin:0 0 1.4rem}.contact-channels-card{background-color:var(--bg-pcb-pine-deep);border:1px solid var(--rule-pine-bright);padding:1.25rem 1.4rem}.contact-card-title{font-size:1.08rem;font-weight:700;color:var(--ink-on-pine);margin:0 0 .85rem}.contact-channel-list{display:grid;gap:.65rem}.contact-channel-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.55rem .75rem;background-color:var(--bg-pcb-pine-elevated);border:1px solid var(--rule-pine);text-decoration:none;transition:border-color .15s ease,background-color .15s ease}.contact-channel-row:hover{border-color:var(--signal-cyan);background-color:#1d3c32}.contact-channel-label{display:inline-flex;align-items:center;gap:.45rem;font-size:.86rem;font-weight:600;color:var(--ink-on-pine-secondary)}.contact-channel-val{font-size:.82rem;color:var(--ink-on-pine);display:inline-flex;align-items:center}.portfolio-footer{margin-top:2.25rem;padding-top:1.1rem;border-top:1px solid var(--rule-strong);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;font-size:.8rem;color:var(--ink-muted)}@media(max-width:1120px){.first-viewport-grid,.plate-main-grid,.experience-education-split,.contact-sheet-grid{grid-template-columns:minmax(0,1fr)}.candidate-spec-column,.plate-photo-frame{border-right:none;border-bottom:1px solid var(--rule-light)}}@media(max-width:720px){.dossier-shell{padding:0 .85rem 2.5rem}.topbar-inner{padding:.5rem .85rem;gap:.5rem}.brand-role-tag{display:none}.candidate-spec-column,.hil-bench-column,.plate-photo-frame,.plate-spec-body,.dispatch-dossier-sheet{padding:1.1rem}.hero-hardware-grid{grid-template-columns:minmax(0,1fr)}.gallery-thumb-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.spec-two-col,.ledger-row,.hero-spec-item{grid-template-columns:minmax(0,1fr)}}.pcb-spotlight-container{position:relative;overflow:hidden}.pcb-spotlight-glow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;transition:opacity .22s ease}.pcb-spotlight-dots{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;background-image:radial-gradient(rgba(34,211,238,.26) 1px,transparent 1px);background-size:16px 16px;transition:opacity .22s ease}.pcb-spotlight-content{position:relative;z-index:2;height:100%}.pcb-beams-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden;opacity:.85}.pcb-beams-svg{width:100%;height:100%;display:block}.moving-border-btn{position:relative;overflow:visible}.moving-border-track{position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;pointer-events:none}.moving-border-svg{width:100%;height:100%;display:block}.moving-border-label{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.5rem}.animated-filter-tabs{display:inline-flex;flex-wrap:wrap;gap:.25rem;padding:.25rem;background-color:var(--bg-vellum);border:1px solid var(--rule-strong)}.filter-tab-btn{position:relative;background:transparent;border:none;padding:.45rem .8rem;cursor:pointer;font-family:var(--font-display);font-size:.86rem;font-weight:600;color:var(--ink-secondary);transition:color .15s ease}.filter-tab-btn:hover{color:var(--ink-primary)}.filter-tab-btn.is-active{color:var(--ink-on-cobalt)}.filter-tab-active-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--bg-cobalt);z-index:0}.filter-tab-content{position:relative;z-index:1;display:inline-flex;align-items:center;gap:.45rem}.filter-tab-count{font-family:var(--font-mono);font-size:.72rem;padding:.05rem .35rem;background-color:#121c191a}.filter-tab-btn.is-active .filter-tab-count{background-color:#f8faff33;color:var(--ink-on-cobalt)}.tracing-timeline-root{position:relative}.tracing-rail-track{position:absolute;top:1.8rem;bottom:1.8rem;left:1.35rem;width:2px;pointer-events:none}.tracing-rail-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--rule-light)}.tracing-rail-beam{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,var(--signal-emerald) 0%,var(--bg-cobalt) 65%,var(--signal-cyan) 100%);transform-origin:top center}.tracing-timeline-items{position:relative}.tracing-entry{position:relative;padding-left:2.85rem}.tracing-solder-pad{position:absolute;left:1.02rem;top:1.68rem;width:12px;height:12px;border:2px solid var(--bg-vellum);outline:1px solid var(--rule-strong);z-index:2}.tracing-solder-pad.is-current{outline-color:var(--signal-emerald);box-shadow:0 0 0 3px #10b9812e}.lightbox-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background-color:#0b1915e0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1.5rem}.lightbox-shell{width:min(1040px,100%);max-height:92vh;background-color:var(--bg-pcb-pine);border:1px solid var(--rule-pine-bright);color:var(--ink-on-pine);display:flex;flex-direction:column;overflow:hidden}.lightbox-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.25rem;border-bottom:1px solid var(--rule-pine);background-color:var(--bg-pcb-pine-deep)}.lightbox-title-group{display:flex;flex-direction:column;gap:.2rem;min-width:0}.lightbox-project-title{font-family:var(--font-display);font-weight:700;font-size:1.02rem;color:var(--ink-on-pine)}.lightbox-counter{font-size:.76rem;color:var(--ink-on-pine-secondary)}.lightbox-close-btn{background-color:var(--bg-pcb-pine-elevated);border:1px solid var(--rule-pine-bright);color:var(--ink-on-pine);padding:.4rem .75rem;font-family:var(--font-mono);font-size:.75rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem;transition:border-color .15s ease,background-color .15s ease}.lightbox-close-btn:hover{border-color:var(--signal-cyan);background-color:#214439}.lightbox-stage{position:relative;background-color:#07110e;display:flex;align-items:center;justify-content:center;height:clamp(280px,60vh,620px);padding:1rem}.lightbox-img{max-width:100%;max-height:100%;object-fit:contain;display:block}.lightbox-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background-color:#11241ee6;border:1px solid var(--rule-pine-bright);color:var(--ink-on-pine);width:40px;height:44px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.lightbox-nav-btn:hover{border-color:var(--signal-cyan);background-color:var(--bg-pcb-pine-elevated)}.lightbox-nav-prev{left:.85rem}.lightbox-nav-next{right:.85rem}.lightbox-thumb-bar{display:flex;gap:.5rem;padding:.75rem 1.25rem;background-color:var(--bg-pcb-pine-deep);border-top:1px solid var(--rule-pine);overflow-x:auto}.lightbox-thumb-item{flex:0 0 132px;background-color:var(--bg-pcb-pine-elevated);border:1px solid var(--rule-pine);padding:.3rem;cursor:pointer;display:flex;flex-direction:column;gap:.3rem;text-align:left;color:var(--ink-on-pine-secondary);transition:border-color .15s ease}.lightbox-thumb-item:hover{border-color:var(--signal-cyan)}.lightbox-thumb-item.is-active{border:2px solid var(--signal-cyan);color:var(--ink-on-pine)}.lightbox-thumb-item img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block}.lightbox-thumb-item span{font-family:var(--font-mono);font-size:.65rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:720px){.tracing-rail-track{left:.85rem}.tracing-entry{padding-left:2.15rem}.tracing-solder-pad{left:.52rem}.lightbox-backdrop{padding:.65rem}}
