:root{--catalog-line:#d8e0eb;--catalog-muted:#526582;--catalog-blue:#383ca3;--catalog-navy:#102044}
.catalog-head{padding:64px 0 44px;background:#f3f5f8}.catalog-head h1{margin:14px 0 18px}.catalog-head p{max-width:640px}.catalog-preview{padding:12px 18px;background:#fff4d9;color:#694914;font-size:14px;border:1px solid #e8d5a6;display:flex;gap:16px;justify-content:space-between;align-items:center;margin:24px auto}.catalog-preview a{white-space:nowrap;text-decoration:underline}.catalog-tools{display:grid;grid-template-columns:minmax(200px,1fr) 230px;gap:20px;align-items:end;margin:32px 0}.catalog-tools label,.admin-label{display:grid;gap:8px;font-size:14px;font-weight:600}.catalog-tools input,.catalog-tools select,.admin-shell input,.admin-shell select,.admin-shell textarea{width:100%;font:inherit;border:1px solid #c4cddd;border-radius:4px;padding:12px;background:#fff;color:#14264b;min-width:0}.catalog-tools input:focus,.admin-shell input:focus,.admin-shell textarea:focus{outline:2px solid #383ca3;outline-offset:2px}.catalog-count{font-size:14px;color:var(--catalog-muted);margin-bottom:22px}.parts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-bottom:64px}.part-card{border:1px solid var(--catalog-line);background:#fff;display:flex;flex-direction:column;position:relative;min-width:0}.part-card .part-image{display:block;background:#edf0f4;aspect-ratio:4/3;overflow:hidden}.part-card img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.part-card:hover img{transform:scale(1.035)}.part-card-copy{padding:24px;display:flex;flex-direction:column;flex:1}.part-sku{font-size:12px;color:var(--catalog-muted);letter-spacing:.08em}.part-card h2{font-size:24px;letter-spacing:-.03em;line-height:1.2;margin:12px 0}.part-card p{font-size:14px;margin:0 0 22px}.part-card .inline-link{align-self:start;margin-top:auto;font-size:14px}.sample-badge{position:absolute;top:14px;left:14px;font-size:11px;background:#fff;padding:5px 9px;border:1px solid var(--catalog-line);z-index:1;color:#526582}.catalog-empty{padding:64px 24px;text-align:center;background:#f3f5f8;margin:30px 0 64px;border:1px solid var(--catalog-line)}.catalog-empty h2{font-size:34px;margin:16px 0}.catalog-empty p{max-width:500px;margin:16px auto 30px}.coming-icon{width:86px;height:86px;color:#383ca3;margin:auto}.part-detail{display:grid;grid-template-columns:1.12fr 1fr;gap:64px;padding-top:44px;padding-bottom:60px}.part-gallery{min-width:0}.part-gallery-main{width:100%;aspect-ratio:4/3;object-fit:contain;background:#f2f4f7;border:1px solid var(--catalog-line)}.part-thumbs{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.part-thumbs button{width:90px;height:72px;background:#fff;border:1px solid var(--catalog-line);padding:3px;cursor:pointer}.part-thumbs button.selected{border:2px solid #383ca3}.part-thumbs img{width:100%;height:100%;object-fit:cover}.part-detail h1{font-size:clamp(32px,4vw,48px);line-height:1.1;margin:16px 0 24px}.part-detail .badge{display:inline-block;background:#ecf0f6;padding:7px 12px;font-size:12px}.part-detail dl{margin:24px 0}.part-detail dl div{display:grid;grid-template-columns:1fr 1.3fr;gap:16px;border-bottom:1px solid var(--catalog-line);padding:13px 0;font-size:15px}.part-detail dt{color:#526582}.part-detail dd{margin:0;overflow-wrap:anywhere}.part-description{white-space:pre-line;font-size:16px;line-height:1.7}.quote-section{padding:54px 0;background:#f2f4f8}.quote-section .wrap{max-width:880px}.quote-section h2{font-size:36px}.quote-product{background:#e6ebf4;padding:18px 22px;margin:24px 0;line-height:1.5;font-size:15px}.quote-section form{padding:0;background:transparent;border:0}.quote-section label{font-size:14px}.quote-section .form-status{margin-top:18px;line-height:1.6}.catalog-message{padding:20px;border:1px solid var(--catalog-line);background:#f3f5f8;line-height:1.6}.catalog-message a{text-decoration:underline}
.admin-body{background:#f1f4f8;color:#14264b}.admin-body header{position:static}.admin-shell{max-width:1280px;margin:auto;padding:36px 28px 64px}.admin-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.admin-title h1{font-size:36px;margin:8px 0}.admin-title p{margin:0;font-size:14px;color:#526582}.admin-title-actions{display:flex;gap:14px;flex-wrap:wrap}.admin-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#383ca3;color:white;border:1px solid #383ca3;padding:12px 18px;border-radius:4px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none}.admin-button.secondary{color:#14264b;background:#fff;border-color:#c6d0df}.admin-button:disabled{opacity:.55;cursor:wait}.admin-notice{border:1px solid #d9e2ef;background:#fff;padding:18px 22px;margin-bottom:24px;font-size:14px;line-height:1.6}.admin-notice strong{display:block;font-size:17px;margin-bottom:4px}.catalog-switch{display:flex;gap:22px;align-items:center;justify-content:space-between;padding:24px;border:1px solid #cbd5e4;background:white;margin-bottom:24px}.catalog-switch h2{font-size:22px;margin:0 0 6px}.catalog-switch p{font-size:14px;margin:0;max-width:630px}.switch-controls{display:flex;gap:8px;flex-shrink:0}.switch-controls button{padding:10px 16px;border:1px solid #c5cfde;background:#fff;border-radius:4px;color:#14264b;font:inherit;font-size:14px;cursor:pointer}.switch-controls .selected{background:#14264b;color:#fff;border-color:#14264b}.admin-tabs{display:flex;gap:24px;border-bottom:1px solid #d2dbe8;margin-bottom:24px}.admin-tabs button{border:0;background:none;padding:12px 0;font:inherit;color:#526582;cursor:pointer;border-bottom:3px solid transparent}.admin-tabs button[aria-selected=true]{color:#383ca3;border-bottom-color:#383ca3}.admin-products{display:grid;gap:12px}.admin-product{display:grid;grid-template-columns:76px minmax(0,1fr) 100px 145px;gap:20px;align-items:center;background:white;padding:16px;border:1px solid #d5deeb;border-radius:4px}.admin-product img{width:76px;height:64px;object-fit:cover;background:#f2f4f8}.admin-product h3{font-size:17px;margin:0 0 6px}.admin-product p{font-size:12px;color:#526582;margin:0}.admin-row-actions{display:flex;justify-content:end;gap:8px}.admin-row-actions button{padding:8px 10px;font-size:12px;border:1px solid #c5cfde;background:white;color:#14264b;border-radius:3px;cursor:pointer}.status-chip{display:inline-block;padding:6px 10px;font-size:12px;border-radius:3px;background:#e9edf4;color:#526582;justify-self:start}.status-chip.published{background:#e2f1ec;color:#23574b}.status-chip.sold{background:#f4e9e1;color:#74533b}.admin-editor{background:#fff;border:1px solid #d5deeb;padding:28px;border-radius:4px}.admin-editor h2{font-size:28px;margin:0 0 22px}.admin-editor h3{font-size:18px;margin:30px 0 16px}.admin-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.admin-editor .wide{grid-column:1/-1}.admin-editor textarea{min-height:130px;resize:vertical}.admin-check{display:flex;gap:10px;align-items:center;font-size:14px}.admin-check input{width:18px;height:18px}.admin-help{font-size:13px;color:#526582;line-height:1.6;margin:10px 0}.upload-zone{border:1px dashed #aebdd2;padding:28px;text-align:center;background:#f5f7fa;border-radius:4px}.upload-zone.dragover{background:#e6ebfa;border-color:#383ca3}.upload-zone input{border:0;background:transparent;font-size:13px;padding:12px 0;max-width:320px}.admin-images{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px}.admin-image{width:130px;border:1px solid #d1dae7;padding:5px;background:#fff}.admin-image img{width:118px;height:88px;object-fit:cover}.admin-image div{display:flex;justify-content:space-between}.admin-image button{font-size:12px;border:0;background:#edf1f7;padding:5px 7px;cursor:pointer}.admin-spec{display:grid;grid-template-columns:1fr 1fr 1fr 36px;gap:10px;margin-bottom:12px}.admin-spec input{font-size:13px}.admin-spec button{border:0;background:#edf1f7;cursor:pointer}.admin-save{display:flex;gap:14px;justify-content:flex-end;margin-top:30px;border-top:1px solid #d5deeb;padding-top:24px}.admin-feedback{font-size:14px;margin-bottom:18px;min-height:22px}.admin-feedback.error{color:#a22f2f}.admin-feedback.success{color:#23574b}.admin-enquiry{padding:24px;background:white;border:1px solid #d5deeb;margin-bottom:14px}.admin-enquiry h3{font-size:20px;margin:0 0 12px}.admin-enquiry p{font-size:14px;white-space:pre-line}.admin-enquiry-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-enquiry select{width:auto;max-width:160px}.admin-login{max-width:440px;margin:40px auto;background:white;border:1px solid #d5deeb;padding:32px}.admin-login h2{font-size:28px}.admin-login label{margin:20px 0}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:26px}.admin-stat{background:white;border:1px solid #d5deeb;padding:22px}.admin-stat strong{display:block;font-size:32px;margin-bottom:6px}.admin-stat span{font-size:13px;color:#526582}.admin-empty{padding:36px;background:white;border:1px solid #d5deeb;text-align:center}.admin-editor[hidden],.admin-section[hidden],.catalog-preview[hidden]{display:none}
@media(min-width:1051px){header nav{gap:20px}header nav a{font-size:13px}}
@media(max-width:1050px){.parts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.part-detail{gap:30px}.admin-product{grid-template-columns:64px minmax(0,1fr) 80px 145px}.admin-product img{width:64px}.admin-shell{padding:28px 20px}}
@media(max-width:700px){.catalog-head{padding:38px 0 28px}.catalog-tools{grid-template-columns:1fr;gap:14px}.parts-grid{grid-template-columns:1fr;gap:20px}.part-detail{grid-template-columns:1fr;gap:28px}.catalog-preview{align-items:start;flex-direction:column;gap:6px}.catalog-empty h2{font-size:28px}.admin-title,.catalog-switch{align-items:start;flex-direction:column}.admin-title h1{font-size:30px}.admin-product{grid-template-columns:64px minmax(0,1fr);gap:12px}.admin-row-actions{justify-content:start}.admin-editor{padding:20px 16px}.admin-editor-grid{grid-template-columns:1fr}.admin-spec{grid-template-columns:1fr 36px;padding:14px 0;border-bottom:1px solid #d5deeb}.admin-spec input{grid-column:1}.admin-spec button{grid-column:2;grid-row:1/4}.admin-stats{gap:8px}.admin-stat{padding:14px 10px}.admin-stat strong{font-size:26px}.admin-stat span{font-size:11px}.admin-enquiry-head{align-items:start;flex-direction:column}.admin-shell{padding:24px 16px}.admin-save{flex-wrap:wrap}.quote-section h2{font-size:29px}.part-detail dl div{grid-template-columns:1fr 1fr}.switch-controls{flex-wrap:wrap}}

.parts-grid>.catalog-empty{grid-column:1/-1;margin:0}
