:root{--corporate:#0b2b50;--corporate-hover:#164574;--paper:#fff;--surface:#f3f5f7;--ink:#182b3d;--muted:#586879;--border:#d8e0e7;--warning:#fff2ce;--error:#a92525;--success:#187b36}*{box-sizing:border-box}body{margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--paper)}header,footer{background:var(--corporate);color:var(--paper)}.top{max-width:1700px;margin:auto;padding:20px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-size:30px;font-weight:800;letter-spacing:3px;line-height:1.1;color:var(--paper);text-decoration:none}.brand small{display:block;font-size:11px;letter-spacing:5px;margin-top:8px}nav{display:flex;align-items:center;gap:24px;flex-wrap:wrap}nav a,nav .link{color:var(--paper);text-decoration:none}nav form{margin:0}.link{background:none;padding:0;border:0;font:inherit;cursor:pointer}.development,.context{padding:8px 36px;text-align:center;font-size:14px}.development{background:var(--warning)}.context{background:var(--surface);color:var(--muted)}main{max-width:1700px;margin:0 auto;padding:28px 36px 60px;min-height:65vh}.search{display:flex;gap:8px;margin-bottom:32px}.search input{flex:1;min-width:0}input,select{font:inherit;border:1px solid var(--border);border-radius:4px;padding:11px;background:var(--paper);color:var(--ink)}button,.button{background:var(--corporate);color:var(--paper);border:1px solid var(--corporate);padding:11px 20px;border-radius:4px;font:inherit;cursor:pointer;text-decoration:none;display:inline-block}button:hover,.button:hover{background:var(--corporate-hover)}.secondary{background:var(--paper);color:var(--corporate)}a{color:var(--corporate)}h1{font-size:30px;line-height:1.2}h2{font-size:22px;font-weight:600}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}.card{border:1px solid var(--border);padding:18px;border-radius:5px}.card a{display:block;text-decoration:none}.card strong,.card span{display:block}.card img{width:100%;height:180px;object-fit:contain;margin-bottom:16px}.card p{font-weight:700;margin-bottom:2px}small{color:var(--muted)}.noimage{height:180px;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--surface);color:var(--muted);font-size:14px;margin-bottom:16px}.product{display:grid;grid-template-columns:minmax(300px,1fr) 1fr;gap:60px;margin:40px 0}.heroimage img{width:100%;height:auto;max-height:600px;object-fit:contain}.heroimage .noimage{height:380px}.price{font-size:25px;font-weight:700}.qty{width:110px}.description{white-space:pre-wrap;overflow-wrap:anywhere}.auth{max-width:460px;margin:40px auto}.auth label{display:block;margin:18px 0}.auth input{display:block;width:100%;margin-top:5px}.error{color:var(--error)}.cookies{background:var(--surface);padding:16px 36px;display:flex;gap:20px;align-items:center;justify-content:center;font-size:14px}.cookies form{flex-shrink:0}.cookies button{padding:5px 12px}footer{padding:30px 36px;text-align:center}.cartline{display:grid;grid-template-columns:90px minmax(200px,1fr) auto auto;gap:24px;align-items:center;padding:24px 0;border-bottom:1px solid var(--border)}.cartline img{width:80px;height:80px;object-fit:contain}.cartline .noimage{height:80px;font-size:11px}.cartline form{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.cartline label{font-size:13px}.cartline input{display:block}.newcart{margin-top:30px;padding-top:20px;border-top:1px solid var(--border)}table{border-collapse:collapse}td,th{text-align:left;padding:9px 16px;border-bottom:1px solid var(--border)}.debug{padding:6px;text-align:center;background:var(--surface);font:12px monospace}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:760px){.top{padding:16px;gap:16px}.brand{font-size:23px}.brand small{font-size:9px}nav{gap:12px;font-size:14px}main{padding:20px 16px 40px}.development,.context{padding:7px 16px}.product{grid-template-columns:1fr;gap:20px}.heroimage img{max-height:360px}.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.card{padding:12px}.card img{height:140px}.cartline{grid-template-columns:65px 1fr;gap:12px}.cartline form{grid-column:1/-1}.cartline>strong{grid-column:2}.cookies{padding:14px 16px;align-items:start}.newcart input{max-width:100%;display:block}}
.profile-editor{max-width:460px}.profile-editor label{display:block;margin:18px 0}.profile-editor input{display:block;width:100%;margin-top:5px}

.contact-verified{color:var(--success);font-weight:700;margin-left:4px}
.cart-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.6em;height:1.6em;padding:0 .35em;margin-left:4px;border-radius:50%;background:var(--paper);color:var(--corporate);font-size:.8em;font-weight:700;vertical-align:middle}.company-footer{text-align:left;padding:30px 36px 88px}.footer-content{max-width:1100px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.35fr);gap:36px}.footer-content>section{min-width:0}.company-footer h2{font-size:17px;margin:0 0 12px}.company-footer address{font-style:normal}.company-footer a{color:var(--paper)}.company-footer p{margin:0 0 16px}.company-footer nav{gap:16px;font-size:14px}.company-footer dl{margin:0;font-size:14px}.company-footer dl div{display:grid;grid-template-columns:155px minmax(0,1fr);gap:12px;margin-bottom:5px}.company-footer dd{margin:0;overflow-wrap:anywhere}.membership-list{overflow-x:auto}.membership-list form{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.membership-list label{white-space:nowrap}@media(max-width:1000px){.footer-content{grid-template-columns:1fr 1fr;gap:26px}.footer-content>section:last-child{grid-column:1/-1;max-width:420px}}@media(max-width:600px){.footer-content{grid-template-columns:1fr;gap:24px}.company-footer{padding:28px 16px 88px}.company-footer dl div{grid-template-columns:minmax(125px,155px) minmax(0,1fr)}}
.search{position:relative}.suggestions{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;max-height:460px;overflow-y:auto;padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--paper);box-shadow:0 8px 24px color-mix(in srgb,var(--corporate) 12%,transparent)}.suggestions[hidden]{display:none}.suggestion-heading{font-size:12px;text-transform:uppercase;letter-spacing:.04em;margin:0 10px 6px;color:var(--muted)}.suggestions ul{margin:0;padding:0;list-style:none}.suggestions li a{display:grid;grid-template-columns:28px minmax(0,1fr) 16px;align-items:center;gap:12px;padding:10px;border-radius:4px;text-decoration:none}.suggestions li[aria-selected=true] a,.suggestions li a:hover{background:var(--surface)}.suggestions strong,.suggestions a>span>span,.suggestions small{display:block}.suggestions strong{font-size:15px}.suggestions a>span>span{font-size:14px}.suggestions small{font-size:12px;margin-top:2px}.suggestion-icon,.suggestion-arrow{color:var(--muted)}.suggestion-icon svg{display:block;width:21px;height:21px}.suggestion-arrow{font-size:16px}@media(max-width:760px){.suggestions{max-height:55vh;padding:8px}.suggestions li a{gap:8px;padding:9px 6px}}

:root{--stock-green:#16a34a;--stock-green-border:#15803d;--stock-yellow:#facc15;--stock-yellow-border:#ca8a04;--stock-gray:#9ca3af;--stock-gray-border:#6b7280;--stock-red:#dc2626;--stock-red-border:#991b1b;--availability-surface:#f7f9fc}
.availability{border:1px solid var(--border);background:var(--availability-surface);border-radius:5px;padding:14px 16px;margin:20px 0}.availability h2{font-size:18px;margin:0 0 8px}.availability-row{display:grid;grid-template-columns:36px 1fr;gap:12px;border-top:1px solid var(--border);padding:10px 0}.availability-row small{display:block}.availability-lamps{display:inline-flex;gap:4px;align-items:center;min-width:30px}.availability-lamp{width:12px;height:12px;border:1px solid;border-radius:50%;display:inline-block;flex-shrink:0}.availability-lamp.green{background:var(--stock-green);border-color:var(--stock-green-border);box-shadow:0 0 4px var(--stock-green)}.availability-lamp.yellow{background:var(--stock-yellow);border-color:var(--stock-yellow-border)}.availability-lamp.gray{background:var(--stock-gray);border-color:var(--stock-gray-border)}.availability-lamp.red{background:var(--stock-red);border-color:var(--stock-red-border)}.aog{margin-top:5px;font-size:13px}.aog>summary{color:var(--error);cursor:pointer}.cart-availability{display:flex;gap:10px;align-items:center;font-size:14px}

.project-controls{border-top:1px solid var(--border);margin-top:24px;padding-top:16px}.project-controls label{display:block;margin:10px 0}textarea{font:inherit;max-width:100%;width:100%;border:1px solid var(--border);padding:10px;color:var(--ink);background:var(--paper)}main>form label{margin:8px 12px 8px 0;display:inline-block}main>form{margin:14px 0}main>table form{margin:8px 0}main>table label{display:inline-block;margin:4px 8px 4px 0}

.order-attention{background:var(--warning);border-bottom:3px solid var(--error);border-top:3px solid var(--error);padding:16px 36px;display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap}.order-attention strong{font-size:20px}.order-attention small{display:block}.order-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:20px 0}@media(max-width:760px){.order-attention{padding:14px 16px;justify-content:flex-start}.order-attention strong{font-size:18px}}

.card .listing-availability{display:flex;align-items:flex-start;gap:7px;margin:10px 0 0;font-size:12px;line-height:1.4;font-weight:400}.card .listing-availability .availability-lamps{display:inline-flex;min-width:28px;padding-top:3px}.card .listing-availability .availability-lamp{width:10px;height:10px}.card .listing-availability .availability-label{display:block}
.suggestion-icon.availability-lamps{display:inline-flex;min-width:28px;gap:4px}.suggestion-icon .availability-lamp{width:10px;height:10px}

.cart-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}.cart-heading h1{margin:0}.cart-checkout{font-weight:700;padding:14px 32px}.cart-management{margin-top:28px;padding-top:18px;border-top:1px solid var(--border)}.cart-management form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.cart-management label{display:grid;gap:6px}.cart-management input{width:320px;max-width:100%}.cart-delete-confirm{border:1px solid var(--border);background:var(--surface);padding:18px;margin-top:18px}.cart-delete-confirm h3{margin-top:0}.cart-delete-confirm form{align-items:center}@media(max-width:600px){.cart-heading{gap:12px}.cart-checkout{padding:12px 20px}.cart-management input{width:100%}.cart-management label{width:100%}}

.company-footer .footer-pages{margin-top:14px;gap:20px}.company-page{max-width:800px}.company-page dl{margin:20px 0}.company-page dt{font-weight:600}.company-page dd{margin:0 0 12px}.contact-form{max-width:580px}.contact-form>label{display:grid;gap:6px;margin:16px 0}.contact-form textarea{font:inherit;color:var(--ink);border:1px solid var(--border);border-radius:4px;padding:11px;resize:vertical;width:100%}

.root-categories{display:block;padding:6px 20px;background:var(--surface);border-bottom:1px solid var(--border);overflow-x:auto}.root-categories>div{max-width:1628px;min-width:1080px;margin:auto;display:grid;grid-template-columns:repeat(15,minmax(0,1fr));gap:4px}.root-categories a{display:block;align-content:center;text-align:center;color:var(--corporate);background:var(--paper);border:1px solid var(--border);border-radius:3px;padding:4px 3px;font-size:12px;line-height:1.15;min-height:37px;text-decoration:none}.root-categories a:hover,.root-categories a[aria-current=page]{background:var(--corporate);color:var(--paper)}@media(max-width:1400px){.root-categories a{font-size:11px}}@media(max-width:1200px){.root-categories{padding:5px 12px}.root-categories a:nth-child(3){font-size:10px}}@media(max-width:760px){.root-categories{padding:5px 8px}}
.cart-menu{position:relative;display:inline-flex;align-items:center;gap:2px;padding:10px 0;margin:-10px 0}.cart-preview-toggle{background:transparent;color:var(--paper);border:0;padding:6px;font-size:14px}.cart-preview-toggle[hidden],.cart-preview[hidden]{display:none}.cart-preview-toggle:focus-visible,.cart-menu-link:focus-visible{outline:2px solid var(--paper);outline-offset:3px}.cart-preview{position:absolute;z-index:60;top:100%;right:0;width:min(380px,calc(100vw - 32px));max-height:min(65vh,560px);overflow-y:auto;padding:18px;background:var(--paper);color:var(--ink);border:1px solid var(--border);border-radius:6px;box-shadow:0 8px 24px #0002;text-align:left;font-size:14px;line-height:1.4}.cart-preview h2{font-size:18px;margin:0 0 12px}.cart-preview ul{margin:0;padding:0;list-style:none}.cart-preview li{border-bottom:1px solid var(--border);padding:10px 0}.cart-preview li a{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;color:var(--corporate);text-decoration:none}.cart-preview li a:hover{text-decoration:underline}.cart-preview img{width:48px;height:48px;object-fit:contain}.cart-preview-placeholder{width:48px;height:48px;background:var(--surface)}.cart-preview li strong,.cart-preview li a>span>span,.cart-preview small{display:block}.cart-preview li a>span>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-preview small{font-size:12px;margin-top:4px}.cart-preview-total{margin:14px 0 3px}.cart-preview-note,.cart-preview-more{font-size:12px;color:var(--muted);margin:4px 0 12px}.cart-preview-actions{display:flex;gap:10px;margin-top:14px}.cart-preview .button{color:var(--paper);font-size:14px;padding:9px 14px}.cart-preview .secondary{color:var(--corporate)}@media(max-width:760px){.cart-preview{position:fixed;left:12px;right:12px;top:104px;width:auto;max-height:calc(100dvh - 130px)}}
.cart-preview .secondary:hover{background:var(--surface)}

.card{display:flex;flex-direction:column}.card .manufacturer-pn{font-weight:400;font-size:12px;color:var(--muted);margin:8px 0 0;overflow-wrap:anywhere}.listing-cart-form{margin-top:auto;padding-top:12px}.listing-cart-form button{width:100%;font-size:14px;padding:9px 12px}.card .card-add-status{font-size:12px;font-weight:400;margin:7px 0 0;color:var(--success)}.card .card-add-status.error{color:var(--error)}.listing-cart-form button:disabled{opacity:.65;cursor:wait}.part-numbers{margin:28px 0}.part-numbers dl{max-width:760px}.part-numbers dl>div{display:grid;grid-template-columns:minmax(130px,190px) minmax(0,1fr);gap:16px;padding:6px 0;border-bottom:1px solid var(--border)}.part-numbers dt{font-weight:600}.part-numbers dd{margin:0;overflow-wrap:anywhere}.image-disclaimer{font-size:12px;color:var(--muted);margin:12px 0;line-height:1.4}.cart-preview .cart-preview-message{font-size:13px;color:var(--success);margin:0 0 10px}.cart-preview.cart-preview-floating{position:fixed;top:16px;right:20px;left:auto;width:min(380px,calc(100vw - 32px));max-height:calc(100dvh - 40px)}
.card-price-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 2px}.card-price-row>p{margin:0}.card-price-row .listing-cart-form{display:inline-flex;margin:0;padding:0}.listing-cart-form .cart-add-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:30px;min-width:34px;padding:4px;background:#e9edf0;border:1px solid #c4cbd3;border-radius:2px;color:var(--corporate)}.listing-cart-form .cart-add-icon:hover{background:#d8e0e7}.listing-cart-form .cart-add-icon.cart-added{color:var(--success);border-color:var(--success)}.card .card-add-status:not(.error){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.cart-heading-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}@media(max-width:600px){.cart-heading{align-items:start}.cart-heading-actions{gap:8px;justify-content:flex-end}.cart-heading-actions .secondary{padding:8px 12px;font-size:13px}}

.pagination{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:12px 0 20px;font-size:14px}.pagination>a{display:inline-block;padding:6px 10px;color:var(--corporate);border:1px solid var(--border);border-radius:3px;text-decoration:none}.pagination>a:hover{background:var(--surface)}.pagination>a.current{background:var(--corporate);color:var(--paper);border-color:var(--corporate)}.pagination>form{display:flex;align-items:center;gap:8px;margin:0 0 0 10px}.pagination input{width:80px;padding:6px}.pagination button{padding:6px 10px;font-size:14px}
.search input#query{background:#edf4fa;border-color:#a9bfd4}.search input#query:focus{background:#e5eff8;border-color:#386890;outline:2px solid #386890;outline-offset:1px}.search input#query::placeholder{color:#526b83;opacity:1}
.currency-selector{display:flex;align-items:center;gap:6px}.currency-selector fieldset{display:flex;align-items:center;gap:0;border:0;padding:0;margin:0;min-width:0}.currency-selector legend{float:left;margin-right:8px;font-size:13px;padding:0}.currency-selector label{position:relative;cursor:pointer}.currency-selector input{position:absolute;opacity:0;width:1px;height:1px;padding:0}.currency-selector span{display:block;border:1px solid #7893ae;padding:4px 7px;font-size:12px}.currency-selector label:first-of-type span{border-radius:4px 0 0 4px}.currency-selector label:last-of-type span{border-radius:0 4px 4px 0}.currency-selector label+label span{border-left:0}.currency-selector input:checked+span{background:#edf4fa;color:var(--corporate);font-weight:700}.currency-selector input:focus-visible+span{outline:2px solid white;outline-offset:3px}.currency-submit{padding:4px 7px;font-size:12px}
.currency-submit[hidden]{display:none}

.currency-selector input:disabled+span{opacity:.45;cursor:not-allowed}

.currency-selector{font:inherit;align-items:center;gap:8px}.currency-selector .currency-label{font:inherit;line-height:inherit;align-self:center;white-space:nowrap}.currency-selector fieldset{align-self:center}.currency-selector legend.sr{float:none;margin:0;padding:0}
.currency-selector .currency-label{border:0;padding:0;background:none;border-radius:0}

/* Shared checkout progress, including the cart page. */
.checkout-steps{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 24px;font-size:14px;color:var(--muted)}.checkout-steps a,.checkout-steps .step-link{color:var(--corporate);text-decoration:none}.checkout-steps [aria-current=step]{color:var(--corporate);font-weight:700}.checkout-steps .step-link{padding:0;border:0;background:none;font:inherit;cursor:pointer}.checkout-steps a:hover,.checkout-steps .step-link:hover{text-decoration:underline}

.order-addresses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:900px;margin:28px 0}.order-address{border:1px solid var(--border);border-radius:4px;padding:20px;min-width:0;overflow-wrap:anywhere}.order-address h3{margin:0 0 14px}.order-address p{margin:0}@media(max-width:600px){.order-addresses{grid-template-columns:1fr;gap:14px}}

.order-payment-required{padding:18px 20px;margin:18px 0;background:var(--warning);border:1px solid #e6c977;border-left:4px solid var(--error);border-radius:4px;font-size:20px;font-weight:700;max-width:1050px}.order-lines .order-line-image{width:80px;min-width:70px;padding-left:0}.order-line-image img{display:block;width:64px;height:64px;object-fit:contain}

.order-history .order-needs-attention>td{background:var(--warning)}.order-history .order-needs-attention>td:first-child{border-left:4px solid var(--error)}.order-history .order-needs-attention strong{color:var(--corporate)}.order-history .button{white-space:nowrap;padding:8px 14px}

.project-line-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.project-line-controls>form{margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.project-line-controls .project-line-remove{display:inline-flex;align-items:center;justify-content:center;padding:12px;min-width:46px;min-height:48px}.project-line-remove svg{display:block}
