/* Size guides share the site's form controls, table spacing and square modal treatment. */
.size-guide-picker { display: flex; align-items: end; gap: 16px; margin-bottom: 32px; }
.size-guide-picker .single-input-item { flex: 1; max-width: 480px; }
.size-guide__meta { color: #666; margin: 8px 0 24px; }
.size-guide__layout { display: grid; gap: 24px; min-width: 0; }
.size-guide__layout--illustrated { grid-template-columns: minmax(160px, 1fr) minmax(0, 2fr); }
.size-guide__illustration { margin: 0; }
.size-guide__illustration img { display: block; max-width: 100%; max-height: 500px; width: auto; height: auto; margin-inline: auto; }
.size-guide__scroll, .cp-size-guide__scroll { overflow-x: auto; max-width: 100%; }
.size-guide__table { width: 100%; border-collapse: collapse; text-align: center; font-size: 14px; }
.size-guide__table th, .size-guide__table td { padding: 12px 16px; border: 1px solid #e5e5e5; white-space: nowrap; }
.size-guide__table thead th { background: #f5f5f5; font-weight: 600; }
.size-guide__table tbody th { background: #fafafa; font-weight: 600; }
.size-guide__instructions { white-space: pre-wrap; margin: 20px 0 0; }
.size-guide-modal .modal-body { padding: 24px; }
.shop-size-guide-link { display: inline-flex; align-items: center; gap: 7px; margin: 0 0 12px; text-decoration: underline; text-underline-offset: 3px; font-size: 13px; }
.cp-size-guide__section { border-top: 1px solid #e5e5e5; margin: 24px 0; padding-top: 20px; }
.cp-size-guide__columns, .cp-size-guide__matrix { margin: 12px 0; width: 100%; }
.cp-size-guide__columns td, .cp-size-guide__matrix td, .cp-size-guide__matrix th { padding: 8px; vertical-align: middle; }
.cp-size-guide__columns input:not([type="hidden"]) { min-width: 130px; }
.cp-size-guide__matrix input:not([type="hidden"]) { min-width: 80px; }
.cp-size-guide__tools { white-space: nowrap; }
.cp-size-guide__tools button { margin: 0 2px; }
.cp-size-guide__add-row { display: flex; align-items: center; gap: 12px; max-width: 480px; }
.cp-size-guide__add-row .select-field { flex: 1; }
.cp-size-guide__binding { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; gap: 12px; align-items: center; margin: 12px 0; }
@media (max-width: 575px) {
    .size-guide-picker { align-items: stretch; flex-direction: column; }
    .size-guide__layout--illustrated { grid-template-columns: minmax(0, 1fr); }
    .size-guide__illustration img { max-height: 260px; }
    .size-guide__table th, .size-guide__table td { padding: 10px 12px; }
    .cp-size-guide__binding { grid-template-columns: minmax(0, 1fr) auto; }
    .cp-size-guide__binding .select-field:first-child { grid-column: 1 / -1; }
}
