.hardware-page{max-width:1200px;margin:auto;padding-bottom:32px}
.hardware-page [hidden]{display:none!important}
.hardware-page input[type=hidden]{display:none!important}
.hardware-wide{grid-column:1/-1}
.hardware-choice-group{border:1px solid #d5dfeb;border-radius:9px;margin:0;min-width:0;background:#fafcff}
.hardware-choice-group legend{font-size:14px;font-weight:600;color:#2c3e54;padding:0 6px}
.hardware-page .hardware-choice-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.hardware-page .hardware-choice-list label{display:flex;align-items:center;justify-content:flex-start;gap:9px;margin:0;padding:3px 0;font-size:13px;cursor:pointer;line-height:1.4}
.hardware-page .hardware-choice-list input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;min-width:18px;padding:0;margin:0;accent-color:#0b61dc}
.hardware-page .hardware-choice-list label:has(input:checked){color:#145da4;font-weight:600}
@media(max-width:650px){}
@media(max-width:450px){.hardware-page .hardware-choice-list{grid-template-columns:1fr}}
.hardware-test-banner{padding:14px 18px;background:#e9f2fc;border:1px solid #ccdef1;border-radius:10px;color:#234466;display:flex;gap:8px 16px;flex-wrap:wrap;margin-bottom:18px}

.hardware-heading,.hardware-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:18px 0}
.hardware-heading h2,.hardware-heading h3,.hardware-heading h4{margin:0}
.hardware-heading p{margin:5px 0;color:#617289}
.hardware-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}

.hardware-page label{display:block;font-weight:600;font-size:14px;color:#2c3e54}
.hardware-page input:not([type=checkbox]),.hardware-page select,.hardware-page textarea{width:100%;min-width:0;display:block;border:1px solid #d5dfeb;border-radius:7px;background:#fff;color:#25384e;font:inherit;font-weight:400}
.hardware-page textarea{resize:vertical}
.hardware-page small,.hardware-note{font-size:12px;font-weight:400;color:#64758b}
.hardware-page summary{font-weight:600;cursor:pointer}
.hardware-actions{display:flex;gap:10px;flex-wrap:wrap}
.hardware-page .btn{white-space:normal}


.hardware-page .hardware-check{display:flex;align-items:center;justify-content:flex-start;gap:9px;padding:3px 0;font-weight:400;margin:10px 0;max-width:100%;line-height:1.4}
.hardware-page .hardware-check input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;min-width:18px;padding:0;margin:0;accent-color:#0b61dc}
.hardware-inline-action{align-self:end;display:flex;gap:8px;flex-wrap:wrap}
.hardware-accessory{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:14px;align-items:end;margin-bottom:12px}
.hardware-attachment{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e0e6ef;overflow-wrap:anywhere}
.hardware-errors{padding:16px 20px;border:1px solid #e0acb1;background:#fff5f5;border-radius:9px;color:#9a2630;margin:16px 0}
.hardware-errors li{margin:5px 0}
.hardware-preview-head{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:2px solid #1c4777;padding-bottom:20px;flex-wrap:wrap}
.hardware-preview-head img{width:190px;max-width:100%}
.hardware-preview-brand p{font-size:12px;line-height:1.5;color:#2c3e54;margin:8px 0 0}
.hardware-preview-entry{break-inside:avoid;border-top:1px solid #d6dfe9;padding-top:14px;margin-top:20px}
.hardware-preview-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px}
.hardware-preview-details p{margin:4px 0;overflow-wrap:anywhere}
.hardware-preview-entry h3{margin:0 0 12px}
.hardware-footer #saveStatus{font-size:13px;color:#617289}
@media(max-width:650px){.hardware-accessory{grid-template-columns:1fr 1fr}.hardware-accessory button{grid-column:1/-1}}
@media(max-width:450px){.hardware-grid,.hardware-preview-details{grid-template-columns:1fr}.hardware-page .card{padding:16px}.hardware-actions{width:100%}.hardware-actions .btn{flex:1}}



/* Compact line items use the same copy/delete symbols as the estimate. */
.hardware-page .card{padding:16px;margin:12px 0}
.hardware-grid{gap:10px 14px;margin-top:12px}
.hardware-page input:not([type=checkbox]),.hardware-page select,.hardware-page textarea{padding:8px 10px;margin-top:4px}
.hardware-page textarea{min-height:70px;margin-bottom:0}
.hardware-choice-group{padding:10px 12px}
.hardware-page .hardware-choice-list{gap:6px 10px;margin:2px 0 4px}
.hardware-page .hardware-choice-list label{min-height:24px}
.hardware-entry-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #d6dfe9;padding-bottom:10px}
.hardware-entry-heading h3{margin:0;font-size:17px;overflow-wrap:anywhere}
.hardware-row-actions{display:flex;gap:6px;flex-shrink:0}
.hardware-row-actions button{display:grid;place-items:center;width:36px;height:36px;border:1px solid #d5dfeb;border-radius:7px;background:#fff;cursor:pointer;font-size:20px;color:#145da4}
.hardware-row-actions .delete-line{color:#a52d36}
.hardware-row-actions button:hover{background:#edf4fc}
.hardware-row-actions button:focus-visible{outline:2px solid #145da4;outline-offset:2px}
.hardware-track-fields{grid-template-columns:minmax(0,1.3fr) minmax(60px,.5fr) minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr)}
.hardware-entry-choices{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.hardware-entry-choices .hardware-choice-list{grid-template-columns:1fr}
.hardware-entry-extras{margin-top:12px;border-top:1px solid #e0e6ef;padding-top:10px}
.hardware-entry-extras summary{font-size:13px;color:#617289}
.hardware-entry-extras .hardware-heading{margin:10px 0}
@media(max-width:950px){.hardware-track-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.hardware-entry-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.hardware-track-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.hardware-entry-choices{grid-template-columns:1fr}.hardware-entry-choices .hardware-choice-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:450px){.hardware-entry-bottom{grid-template-columns:1fr}.hardware-entry-choices .hardware-choice-list{grid-template-columns:1fr}}

.hardware-operation-row{align-items:stretch}
.hardware-operation-row>[data-region=control]{display:flex;min-width:0}
.hardware-operation-row>[data-region=control]>.hardware-choice-group{flex:1;min-width:0}
.hardware-operation-row [data-region=control] .hardware-choice-list{grid-template-columns:repeat(2,minmax(0,1fr))}
.hardware-operation-row [data-region=control] .hardware-choice-group>label{margin:10px 0 0}

@page{size:letter portrait;margin:0.5in}
@media print{
 html,body{display:block!important;width:auto!important;min-width:0!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;background:#fff!important;grid-template-columns:none!important;color:#17243a}
 body>.sidebar,.topbar,.hardware-test-banner,.hardware-page>p,.hardware-page .hardware-heading,.hardware-footer,#hardwareEditor,#newOrder,#savedOrders,#loadOrder,#validationErrors,#hardwareReview>.hardware-actions{display:none!important}
 .app-shell,.hardware-page,#hardwareApp,#hardwareReview,#supplierPreview{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0!important}
 #hardwareApp>section.card{display:none!important}
 #supplierPreview{border:0!important;box-shadow:none!important}
 .hardware-preview-head{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:16pt;padding-bottom:12pt;break-inside:avoid}
 .hardware-preview-head>div:last-child{text-align:right}
 .hardware-preview-head img{width:135px}
 .hardware-preview-head h2{font-size:20pt;line-height:1.2;margin:0 0 8pt}
 .hardware-preview-head p,.hardware-preview-brand p{font-size:9pt;line-height:1.4;margin:4pt 0}
 .hardware-preview-details{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5pt 18pt;font-size:10pt;line-height:1.4;margin-top:10pt}
 .hardware-preview-details p{font-size:10pt;line-height:1.4;margin:0;overflow-wrap:anywhere}
 .hardware-preview-entry{border-top:1px solid #cbd8e8;padding-top:10pt;margin-top:12pt;break-inside:avoid;page-break-inside:avoid}
 .hardware-preview-entry h3{font-size:12pt;line-height:1.3;margin:0 0 6pt}
 .hardware-preview-entry .hardware-preview-details{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:5pt 14pt;margin-top:0}
 .hardware-preview-entry>p{font-size:10pt;line-height:1.4;margin:6pt 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
}

/* 2026-10-15 density pass — shared by the Hardware and Workroom order forms */
/* Shipping address in two rows: Ship to | Street | Address 2, then City | State | ZIP | Phone. */
.hardware-page .ship-address-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:14px;row-gap:3px}
.hardware-page .ship-address-grid > .ship-col-2{grid-column:span 2}
.hardware-page .ship-address-grid > label{margin:0!important}
.hardware-page .ship-address-grid > label > input{margin-top:5px}
@media(max-width:650px){
  .hardware-page .ship-address-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hardware-page .ship-address-grid > .ship-col-2{grid-column:1/-1}
}
/* Shorter shared-drafts note. */
.hardware-test-banner{padding:7px 14px;margin-bottom:10px;font-size:13px;align-items:baseline}
/* Single-choice checkbox groups already allow only one choice; drop the "Select one." hint line. */
.hardware-choice-group > small{display:none}
/* Compact form layout, same as the Workroom order form. */
.hardware-page .hardware-heading{margin:9px 0}
.hardware-page .hardware-grid{row-gap:3px;column-gap:14px;margin-top:7px}
.hardware-page .hardware-grid > label{margin:0!important}
.hardware-page .hardware-grid > label > input,
.hardware-page .hardware-grid > label > select,
.hardware-page .hardware-grid > label > textarea{margin-top:5px}
.hardware-page .hardware-grid > .hardware-wide{margin-top:2px;margin-bottom:2px}
.hardware-page input:not([type=checkbox]):not([type=radio]):not([type=file]),
.hardware-page select{height:32px;min-height:32px;padding-top:4px;padding-bottom:4px;line-height:1.3}
.hardware-page textarea{min-height:64px;padding-top:6px;padding-bottom:6px}
.hardware-page .hardware-entry-extras{margin-top:8px;padding-top:7px}
.hardware-page #loadOrder,.hardware-page #deleteDraft{height:32px;min-height:32px;padding:0 14px;font-size:13px;width:auto}
.hardware-page #loadOrder{background:#e7f6ec;border-color:#86c79c;color:#17663a}
.hardware-page #loadOrder:hover{background:#d3efdd}
.hardware-page #deleteDraft{background:#fdecec;border-color:#e7a3a3;color:#a12626}
.hardware-page #deleteDraft:hover{background:#fadada}
.hardware-page #newOrder{background:linear-gradient(180deg,#0c64df,#0a57c6);border-color:#0a57c6;color:#fff;box-shadow:0 6px 16px #0b61dc24}
.hardware-page #newOrder:hover{background:#084fb6}
