/* Keep the approved catalog artwork, typography and flat, compact layout. */
.product-card{display:flex;flex-direction:column;align-self:start;gap:6px}
.product-pick{display:block;padding:0;width:100%;border:0;border-radius:10px;background:transparent;cursor:pointer;touch-action:manipulation}
.product-art{display:block}
.product-title-pick{display:flex;align-items:flex-end;padding:0;background:transparent;text-align:left;font:inherit;color:inherit;line-height:inherit;width:100%;min-height:44px}
.product-card .product-name{flex:none;font-size:14px;line-height:1.45}
.product-controls{min-width:0}
.product-controls [hidden],.selection-badge[hidden]{display:none!important}
.product-add,.product-stepper{width:100%;min-height:46px;border:1px solid #e7e4e0;border-radius:9px;background:#f5f4f2;color:#20201e;font:600 14px/1.3 Manrope,Arial,sans-serif}
.product-add{padding:10px 6px;cursor:pointer;touch-action:manipulation;white-space:nowrap}
.product-stepper{display:flex;align-items:center;justify-content:space-between;font-variant-numeric:tabular-nums}
.product-stepper button{flex:none;min-width:44px;min-height:44px;padding:0;border:0;background:transparent;color:#20201e;font:500 24px/1 Manrope,Arial,sans-serif;cursor:pointer;touch-action:manipulation;border-radius:8px}
.product-stepper output{min-width:0;text-align:center;font-size:15px}
.product-stepper button:disabled{opacity:.4;cursor:default}
.product-card.is-selected .product-art{box-shadow:inset 0 0 0 2px #e88559}
.header .cart{position:relative}
.selection-badge{position:absolute;top:-7px;right:-7px;display:grid;place-items:center;min-width:24px;height:24px;padding:0 5px;border-radius:20px;background:var(--orange,#f34925);color:#151515;font:700 12px/1 Manrope,Arial,sans-serif;border:2px solid white}
#selection-filled{margin-top:26px}
#selection-count,#selection-sync{font:500 14px/1.5 Manrope,Arial,sans-serif;color:#605f5b}
#selection-sync{margin:18px 0 0;text-align:center}
#selection-items{margin:0;padding:0;list-style:none}
#selection-items li{display:grid;grid-template-columns:72px minmax(0,1fr) 148px;gap:8px 18px;align-items:center;padding:18px 0;border-bottom:1px solid #e5e3df;content-visibility:auto;contain-intrinsic-size:auto 130px}
#selection-items .product-art{grid-row:span 2}
#selection-items h3{margin:0;min-width:0;overflow-wrap:anywhere;font:600 16px/1.4 Manrope,Arial,sans-serif}
.selection-remove{grid-column:2;justify-self:start;min-height:44px;padding:8px 0;color:#605f5b;background:transparent;text-decoration:underline;text-underline-offset:3px;font:500 14px Manrope,Arial,sans-serif}
#selection-items .product-controls{grid-column:3;grid-row:span 2}
.selection-continue,#selection-retry{display:block;min-height:46px;border-radius:9px;padding:12px 20px;margin:22px auto 0;background:#f5f4f2;color:#20201e;font:600 15px/1.4 Manrope,Arial,sans-serif;touch-action:manipulation}
#cart-dialog :is(button,a):focus-visible{outline:2px solid #20201e;outline-offset:3px}
@media(hover:hover){.product-pick:hover .product-art{box-shadow:inset 0 0 0 2px #e88559}.selection-continue:hover{background:#ffded0;border-color:#e5cabb}.selection-remove:hover{color:#a13a13}}
@media(max-width:600px){.product-add{font-size:12px}}
@media(max-width:600px){#selection-items li{grid-template-columns:56px minmax(0,1fr);gap:8px 12px}#selection-items .product-art{grid-row:1 / 3}#selection-items h3{font-size:14px}#selection-items .product-controls{grid-column:2;grid-row:auto;max-width:170px}.selection-remove{grid-column:2}#selection-filled{margin-top:18px}.header .cart{min-height:44px}.selection-continue{width:100%}}
/* Same white/orange modal, with a permanent form beside the changing selection. */
#cart-dialog{width:min(1180px,calc(100% - 40px));max-height:calc(100dvh - 40px)}
#cart-dialog .cart-panel{padding:30px 32px 28px}
#cart-dialog .commerce-title{text-align:left;font-size:44px;padding:0 44px 0 0}
.request-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:32px;margin-top:28px}
.request-products{min-width:0;display:flex;flex-direction:column;padding-right:32px;border-right:1px solid #dedcd8}
.request-products .cart-empty{margin:0;flex:1;justify-content:center;align-items:center;text-align:center;min-height:350px;max-width:100%}
.request-products .request-empty-message{max-width:100%;margin:0 0 4px;color:#70706b;font:400 16px/1.55 Manrope,Arial,sans-serif;text-wrap:balance}
#cart-catalogs{min-height:44px;max-width:100%;padding:10px 0;border:0;border-radius:0;box-shadow:none;background:transparent;color:#70706b;font:400 16px/1.5 Manrope,Arial,sans-serif;text-decoration:underline;text-underline-offset:4px;cursor:pointer;touch-action:manipulation}
@media(hover:hover){#cart-catalogs:hover{color:#42423f}}
.request-products #selection-filled{margin-top:0}
.request-products #selection-sync{text-align:left;margin-top:auto;padding-top:22px;font-size:12px}
.request-products #selection-count{margin-top:0}
.request-products #selection-items li{grid-template-columns:60px minmax(0,1fr);gap:6px 14px;padding:18px 0;contain-intrinsic-size:auto 155px}
.request-products #selection-items .product-art{grid-row:1 / 3}
.request-products #selection-items .product-controls{grid-column:2;grid-row:auto;max-width:158px}
.request-products #selection-items h3{font-size:15px}
.request-products .selection-remove{grid-column:2;min-height:44px}
.request-details{min-width:0;padding:24px;background:var(--paper,#f5f4f2);border-radius:20px}
.request-auth-gate{min-width:0;align-self:center;padding:24px 0;font-family:Manrope,Arial,sans-serif}
.request-auth-gate h3{max-width:360px;margin:0 0 14px;font:650 28px/1.25 Manrope,Arial,sans-serif;letter-spacing:-.035em;text-wrap:balance}
#request-auth-message{max-width:360px;margin:0 0 24px;color:#605f5b;font-size:16px;line-height:1.55}
.request-auth-gate .commerce-submit{max-width:100%;width:auto;min-height:48px;padding:12px 20px;border-radius:10px;background:#ffe3d8;color:#171717;font-size:16px}
#request-auth-actions:not([hidden]){display:flex;flex-direction:column;align-items:stretch;width:fit-content;max-width:100%;gap:0}
#request-auth-actions>.commerce-submit{width:100%}
.request-auth-login{display:flex;align-items:center;justify-content:center;gap:4px;min-height:44px;margin:0;color:#605f5b;font-size:14px;line-height:1.5}
.request-auth-gate .commerce-text-button{min-height:44px;color:#171717;font-size:14px}
@media(hover:hover){.request-auth-gate .commerce-submit:hover{background:#ffd2bf}.request-auth-gate .commerce-text-button:hover{color:#a13a13}}
@media(max-width:800px){.request-auth-gate{padding:0}.request-auth-gate h3{font-size:23px}}
.request-details h3{font:600 30px/1.15 Oswald,Arial,sans-serif;text-transform:uppercase;margin:0 0 8px}
#request-profile-note{margin:0 0 22px;font:400 13px/1.5 Manrope,Arial,sans-serif;color:#605f5b;min-height:20px}
.request-field{margin-top:18px}
.request-field label{display:block;font:600 14px/1.4 Manrope,Arial,sans-serif;margin-bottom:6px}
.request-field label span{font-weight:400;color:#605f5b}
.request-field input,.request-field textarea{display:block;width:100%;min-width:0;min-height:44px;background:transparent;border:0;border-bottom:1px solid #a4a19b;border-radius:0;padding:8px 0;color:#171717;font:400 16px/1.5 Manrope,Arial,sans-serif}
.request-field textarea{min-height:86px;max-height:230px;resize:vertical}
.request-field input::placeholder,.request-field textarea::placeholder{color:#686660;opacity:1}
.request-field input:focus-visible,.request-field textarea:focus-visible{outline:0;border-bottom:2px solid #171717;padding-bottom:7px}
.request-field input[readonly]{color:#484640}
.request-field input[aria-invalid="true"]{border-color:#a72812}
.request-attachments{margin-top:20px}
#request-attach{width:100%;min-height:48px;padding:10px 12px;border:1px dashed #8b8780;border-radius:10px;background:transparent;color:#171717;font:600 14px/1.4 Manrope,Arial,sans-serif}
#request-attach:disabled{opacity:.55;cursor:wait}
#request-files-hint,#request-file-count,#request-save-status{font:400 12px/1.5 Manrope,Arial,sans-serif;color:#605f5b;margin:8px 0 0}
#request-save-status{margin-top:18px;min-height:18px}
#request-file-list{list-style:none;margin:12px 0 0;padding:0}
#request-file-list li{display:grid;grid-template-columns:64px minmax(0,1fr) auto;column-gap:10px;align-items:center;padding:10px 0;border-top:1px solid #dedcd8}
.request-file-preview{display:block;grid-row:span 3;max-width:100%;width:64px;height:64px;object-fit:cover;border-radius:8px;background:#e8e6e1}
video.request-file-preview{width:100%;height:150px;grid-column:1 / -1;grid-row:auto;object-fit:contain;margin-bottom:8px}
.request-file-name{font-size:13px;line-height:1.4;overflow-wrap:anywhere;grid-column:2}
#request-file-list small{font-size:12px;color:#605f5b;grid-column:2}
.request-file-remove{grid-column:3;grid-row:span 2;min-width:44px;min-height:44px;padding:6px 0;background:transparent;font-size:12px;text-decoration:underline;text-underline-offset:3px}
.request-error{margin:6px 0 0;color:#a72812;font:400 13px/1.5 Manrope,Arial,sans-serif;white-space:pre-line;overflow-wrap:anywhere}
.request-error:empty{display:none}
@media(hover:hover){#request-attach:not(:disabled):hover{background:#ffe3d8}.request-file-remove:hover,.product-title-pick:hover{color:#a13a13}}
@media(max-width:800px){#cart-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}#cart-dialog .cart-panel{padding:28px 20px 24px}#cart-dialog .commerce-title{font-size:36px}.request-layout{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:24px}.request-products{border-right:0;border-bottom:1px solid #dedcd8;padding:0 0 24px}.request-products .cart-empty{min-height:180px}.request-products .cart-empty h3{font-size:23px;max-width:300px}.request-details{padding:20px}.request-products #selection-sync{padding-top:16px}.request-products .selection-continue{margin-top:18px}.request-products #selection-items li:first-child{padding-top:0}}
