.designer-product-options { margin: 24px 0; border: 1px solid #dce4e7; border-radius: 6px; padding: 24px; background: #fff; }
.designer-options-page { max-width: 920px; margin: 35px auto 70px; padding: 34px; }
.designer-product-options h2, .designer-step-heading h2 { margin: 2px 0 5px; }
.designer-product-options > div:first-child > p:last-child { margin: 0; color: #68747b; }
.designer-step-heading { margin: 26px 0 10px; }
.designer-option-grid { display: grid; grid-template-columns: minmax(180px,.8fr) minmax(410px,2fr) minmax(170px,.7fr); gap: 22px; align-items: start; margin-top: 22px; }
.designer-option-grid > label, .printed-sides legend { font-size: 13px; font-weight: 750; }
.designer-option-grid select, .designer-option-grid input[type=number] { display: block; width: 100%; margin-top: 7px; padding: 11px; border: 1px solid #aebbc2; border-radius: 4px; background: #fff; font: inherit; }
.designer-option-grid small { display: block; margin-top: 5px; color: #68747b; }
.printed-sides { margin: 0; padding: 0; border: 0; }
.side-choice-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin-top: 7px; }
.side-choice-grid label { position: relative; cursor: pointer; }
.side-choice-grid input { position: absolute; opacity: 0; }
.side-choice-grid span { display: block; min-height: 67px; padding: 10px; border: 1px solid #aebbc2; border-radius: 4px; background: #fff; }
.side-choice-grid input:checked + span { border-color: #2d536d; box-shadow: inset 0 0 0 2px #2d536d; background: #eef5f8; }
.side-choice-grid strong, .side-choice-grid small { display: block; }
.side-choice-grid small { font-weight: 400; }
.designer-step-heading .eyebrow, .designer-product-options .eyebrow { margin: 0; color: #52748d; font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.side-switcher button[hidden] { display: none; }
.designer-options-action { display: flex; justify-content: flex-end; align-items: center; gap: 22px; margin-top: 28px; padding-top: 20px; border-top: 1px solid #e2e7ea; }
.designer-options-action a { color: #526773; }
.designer-selection-summary { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin: 24px 0; padding: 16px 20px; border: 1px solid #dce4e7; border-radius: 5px; background: #f6f9fa; }
.designer-selection-summary > div { display: flex; align-items: center; flex-wrap: wrap; gap: 9px 18px; }
.designer-selection-summary .eyebrow { width: 100%; margin: 0; color: #52748d; font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.designer-selection-summary strong { font-size: 16px; }
.designer-selection-summary span { padding-left: 18px; border-left: 1px solid #c9d3d8; color: #52636c; }
.designer-selection-summary a { flex: none; font-size: 13px; font-weight: 700; color: #315e80; }
.designer-artboard-scale { width: auto; height: auto; }
.designer-artboard { width: 420px; height: 840px; }
.designer-qr { display: block; width: 100%; height: 100%; }
[data-element-properties][hidden],
[data-text-control][hidden],
[data-shape-control][hidden],
[data-image-control][hidden],
[data-qr-control][hidden] { display: none !important; }
.qr-generator-panel { margin: -7px 0 12px; padding: 12px; border: 1px solid #b8c4ca; border-radius: 4px; background: #f5f8f9; }
.qr-generator-panel[hidden] { display: none; }
.qr-generator-panel label { display: block; font-size: 12px; font-weight: 700; }
.qr-generator-panel textarea { display: block; width: 100%; margin-top: 5px; padding: 8px; border: 1px solid #aebbc2; border-radius: 3px; resize: vertical; font: inherit; }
.qr-generator-panel > p { margin: 7px 0; color: #9b3429; font-size: 12px; }
.qr-generator-panel > div { display: flex; gap: 6px; margin-top: 8px; }
.qr-generator-panel button { flex: 1; border: 1px solid #9eacb4; border-radius: 3px; padding: 7px; background: #fff; cursor: pointer; font-weight: 700; }
.preview-sheet:not(.is-sheet-layout),
.preview-sheet.is-repeated-label-layout { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 6px; }
.repeated-proof-label { min-width: 0; }
.repeated-proof-label > strong { display: block; margin-bottom: 5px; font-size: 12px; color: #52636c; }
.repeated-proof-label .label-preview { width: 100%; border-style: solid; background-color: #fff; }
.guest-save-choice { flex: 1 1 260px; text-align: left; }
.guest-save-choice label { font-size: 13px; font-weight: 750; }
.guest-save-choice select { display: block; width: 100%; margin-top: 5px; padding: 9px; border: 1px solid #aebbc2; border-radius: 3px; background: #fff; font: inherit; }
.guest-save-choice p { margin: 7px 0 0; color: #5d676d; font-size: 12px; line-height: 1.4; }
@media (max-width: 850px) { .preview-sheet:not(.is-sheet-layout), .preview-sheet.is-repeated-label-layout { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 600px) { .preview-sheet:not(.is-sheet-layout), .preview-sheet.is-repeated-label-layout { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 960px) { .designer-option-grid { grid-template-columns: 1fr 1fr; } .printed-sides { grid-column: 1/-1; } }
@media (max-width: 620px) { .designer-product-options { padding: 18px; } .designer-options-page { margin-top: 20px; } .designer-option-grid { grid-template-columns: 1fr; } .printed-sides { grid-column: auto; } .side-choice-grid { grid-template-columns: 1fr; } .designer-selection-summary { align-items: flex-start; } .designer-selection-summary > div { display: grid; gap: 5px; } .designer-selection-summary span { padding-left: 0; border-left: 0; } }
