/* ROZO Size Guides v4 — all selectors are scoped to the plugin. */
.rozo-size-guide,
.rozo-size-guide * { box-sizing: border-box; }
.rozo-size-guide { margin: 12px 0 18px; clear: both; }
.rozo-size-guide__trigger {
  appearance: none; display: inline-flex; align-items: center; gap: 8px; padding: 0;
  border: 0; border-radius: 0; background: transparent; color: inherit; font: inherit;
  font-size: 14px; font-weight: 600; line-height: 1.5; text-decoration: underline;
  text-underline-offset: 3px; cursor: pointer;
}
.rozo-size-guide__trigger:hover,
.rozo-size-guide__trigger:focus-visible { opacity: .78; }
.rozo-size-guide__trigger:focus-visible,
.rozo-size-guide__close:focus-visible,
.rozo-size-guide__tab:focus-visible,
.rozo-size-guide__unit-toggle button:focus-visible,
.rozo-size-guide__add-to-bag:focus-visible { outline: 2px solid #d7193f; outline-offset: 3px; }
.rozo-size-guide__icon { display: inline-block; width: 21px; height: 21px; flex: 0 0 21px; }
.rozo-size-guide__modal[hidden],
.rozo-size-guide__panel[hidden],
.rozo-size-guide__unit-row[hidden] { display: none !important; }
.rozo-size-guide__modal {
  position: fixed; inset: 0; z-index: 999999; display: flex; align-items: center;
  justify-content: center; padding: clamp(10px, 2vw, 28px); isolation: isolate;
}
.rozo-size-guide__backdrop { position: absolute; inset: 0; z-index: 0; background: rgba(12, 12, 12, .58); }
.rozo-size-guide__dialog {
  position: relative; z-index: 1; display: flex; flex-direction: column; width: min(980px, 100%);
  max-width: 100%; height: min(900px, 92vh); max-height: 92vh; overflow: hidden;
  overscroll-behavior: contain; background: #fff; color: #171717; border-radius: 5px;
  box-shadow: 0 18px 60px rgba(0, 0, 0, .24); padding: 0; outline: none;
}
.rozo-size-guide__topbar { display: flex; align-items: center; justify-content: flex-start; padding: 8px 16px 0; flex: 0 0 auto; }
.rozo-size-guide__close {
  appearance: none; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 36px;
  width: 36px; height: 36px; padding: 0; border: 0; border-radius: 50%; background: #fff;
  color: #333; font-family: Arial, sans-serif; font-size: 31px; font-weight: 300; line-height: 1; cursor: pointer;
}
.rozo-size-guide__product-summary {
  display: flex; align-items: flex-start; gap: 20px; padding: 10px 28px 20px; flex: 0 0 auto;
  border-bottom: 1px solid #e7e7e7;
}
.rozo-size-guide__product-image { width: 112px; height: 136px; flex: 0 0 112px; overflow: hidden; background: #f5f5f5; }
.rozo-size-guide__product-image img { display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center top; }
.rozo-size-guide__product-info { min-width: 0; padding-top: 2px; }
.rozo-size-guide__brand { margin: 0 0 3px; font-size: 16px; font-weight: 700; line-height: 1.35; color: #151515; }
.rozo-size-guide__product-title { margin: 0 0 10px !important; color: #181818; font-size: 18px; font-weight: 400; line-height: 1.3; }
.rozo-size-guide__price { font-size: 15px; line-height: 1.4; }
.rozo-size-guide__price del { color: #9b9b9b; opacity: 1; margin-right: 5px; }
.rozo-size-guide__price ins { color: #151515; text-decoration: none; font-weight: 700; }
.rozo-size-guide__tabs { display: grid; grid-template-columns: 1fr 1fr; flex: 0 0 auto; border-bottom: 1px solid #ddd; }
.rozo-size-guide__tab {
  appearance: none; position: relative; min-height: 52px; padding: 13px 12px 12px; margin: 0; border: 0;
  border-radius: 0; background: #fff; color: #111; font: inherit; font-size: 15px; font-weight: 500;
  line-height: 1.3; text-align: center; cursor: pointer;
}
.rozo-size-guide__tab.is-active { color: #e51b3e; font-weight: 650; }
.rozo-size-guide__tab.is-active::after { position: absolute; right: 0; bottom: -1px; left: 0; height: 3px; background: #e51b3e; content: ""; }
.rozo-size-guide__unit-row { display: flex; align-items: center; justify-content: flex-end; flex: 0 0 auto; padding: 12px 20px 10px; }
.rozo-size-guide__unit-toggle { display: inline-flex; align-items: center; gap: 0; padding: 3px; border: 1px solid #e3e3e3; border-radius: 999px; background: #fff; }
.rozo-size-guide__unit-toggle button {
  appearance: none; min-width: 38px; min-height: 31px; padding: 5px 9px; border: 0; border-radius: 999px;
  background: transparent; color: #777; font: inherit; font-size: 12px; line-height: 1; cursor: pointer;
}
.rozo-size-guide__unit-toggle button.is-active { background: #202337; color: #fff; font-weight: 700; }
.rozo-size-guide__panels { min-height: 0; flex: 1 1 auto; overflow: auto; overscroll-behavior: contain; }
.rozo-size-guide__panel { padding: 0 0 18px; }
.rozo-size-guide__chart-content,
.rozo-size-guide__measure-content { color: #151515; font-size: 14px; line-height: 1.55; }
.rozo-size-guide__chart-content > :first-child,
.rozo-size-guide__measure-content > :first-child { margin-top: 0; }
.rozo-size-guide__chart-content img,
.rozo-size-guide__measure-content img { display: block; max-width: 100%; height: auto; margin: 14px auto; }
.rozo-size-guide__chart-content table { display: table; width: 100%; min-width: 640px; margin: 0; border: 0; border-collapse: collapse; table-layout: auto; font-size: 14px; }
.rozo-size-guide__chart-content thead th,
.rozo-size-guide__chart-content tr:first-child th { background: #fff; font-weight: 500; }
.rozo-size-guide__chart-content th,
.rozo-size-guide__chart-content td { padding: 10px 11px; border: 0; border-bottom: 1px solid #e6e6e6; color: #161616; text-align: center; vertical-align: middle; white-space: nowrap; }
.rozo-size-guide__chart-content th:first-child,
.rozo-size-guide__chart-content td.rozo-size-guide__size-label-cell { text-align: left; }
.rozo-size-guide__chart-content .rozo-size-guide__radio-heading { width: 42px; min-width: 42px; padding-left: 12px; }
.rozo-size-guide__chart-content td.rozo-size-guide__size-radio-cell { width: 42px; min-width: 42px; padding: 9px 8px 9px 13px; text-align: left; }
.rozo-size-guide__chart-content .rozo-size-guide__size-radio-cell input[type="radio"] {
  display: inline-block; width: 18px; height: 18px; margin: 0; accent-color: #202337; vertical-align: middle; cursor: pointer;
}
.rozo-size-guide__chart-content .rozo-size-guide__size-row { cursor: pointer; transition: background .12s ease; }
.rozo-size-guide__chart-content .rozo-size-guide__size-row:hover { background: #fafafa; }
.rozo-size-guide__chart-content .rozo-size-guide__size-row.is-selected { background: #f7f7f9; }
.rozo-size-guide__chart-content .rozo-size-guide__size-row.is-selected td.rozo-size-guide__size-label-cell { font-weight: 700; }
.rozo-size-guide__measure-content { padding: 10px 22px 20px; }
.rozo-size-guide__measure-content p { max-width: 100%; }
.rozo-size-guide__measure-content figure.wp-block-image,
.rozo-size-guide__measure-content .wp-block-image,
.rozo-size-guide__measure-content figure { display: block; width: 100% !important; max-width: 100% !important; margin: 12px auto 18px; }
.rozo-size-guide__measure-content img { display: block; width: 100% !important; max-width: 100% !important; height: auto !important; max-height: none !important; object-fit: contain; object-position: center; margin: 0 auto; }
.rozo-size-guide__no-chart,
.rozo-size-guide__no-matching-sizes { margin: 18px 22px; padding: 13px 14px; border: 1px solid #e6e6e6; background: #fafafa; color: #555; font-size: 13px; line-height: 1.5; }
.rozo-size-guide__measure-content table { width: 100%; border-collapse: collapse; margin: 14px 0; }
.rozo-size-guide__measure-content th,
.rozo-size-guide__measure-content td { padding: 8px 10px; border: 1px solid #ddd; text-align: left; }
.rozo-size-guide__empty-measure { margin: 12px 0; color: #666; font-size: 13px; }
.rozo-size-guide__status { flex: 0 0 auto; padding: 0 22px; color: #b4233d; font-size: 13px; line-height: 1.45; }
.rozo-size-guide__status:empty { display: none; }
.rozo-size-guide__footer { flex: 0 0 auto; padding: 12px 18px max(12px, env(safe-area-inset-bottom)); background: #fff; border-top: 1px solid #eee; box-shadow: 0 -5px 18px rgba(0, 0, 0, .035); }
.rozo-size-guide__add-to-bag {
  appearance: none; display: flex; align-items: center; justify-content: center; width: 100%; min-height: 48px; padding: 13px 18px;
  border: 0; border-radius: 3px; background: #e91c43; color: #fff; font: inherit; font-size: 14px;
  font-weight: 700; line-height: 1.25; text-transform: uppercase; letter-spacing: .01em; cursor: pointer;
  transition: opacity .15s ease, background .15s ease;
}
.rozo-size-guide__add-to-bag:hover { background: #c91537; color: #fff; }
.rozo-size-guide__add-to-bag:disabled { opacity: .6; cursor: wait; }
.rozo-size-guide__add-to-bag.is-loading { opacity: .65; }
body.rozo-size-guide-modal-open { overflow: hidden !important; }

@media (max-width: 640px) {
  .rozo-size-guide__modal { align-items: stretch; justify-content: flex-end; padding: 0; }
  .rozo-size-guide__backdrop { background: rgba(0, 0, 0, .46); }
  .rozo-size-guide__dialog {
    width: 100%; max-width: 100%; height: 100%; max-height: 100%; min-height: 0; margin: 0;
    border-radius: 0; box-shadow: -8px 0 34px rgba(0, 0, 0, .12); animation: rozo-size-guide-slide-in .22s ease-out both;
  }
  .rozo-size-guide__topbar { padding: 7px 12px 0; }
  .rozo-size-guide__close { width: 34px; height: 34px; flex-basis: 34px; font-size: 30px; }
  .rozo-size-guide__product-summary { gap: 14px; padding: 10px 18px 18px; }
  .rozo-size-guide__product-image { width: 112px; height: 136px; flex-basis: 112px; }
  .rozo-size-guide__brand { font-size: 15px; }
  .rozo-size-guide__product-title { font-size: 16px; line-height: 1.35; }
  .rozo-size-guide__tabs { min-height: 50px; }
  .rozo-size-guide__tab { min-height: 50px; font-size: 14px; }
  .rozo-size-guide__unit-row { padding: 12px 16px 10px; }
  .rozo-size-guide__chart-content { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .rozo-size-guide__chart-content table { min-width: 620px; font-size: 13px; }
  .rozo-size-guide__chart-content th,
  .rozo-size-guide__chart-content td { padding: 9px 10px; }
  .rozo-size-guide__measure-content { padding: 8px 12px 18px; }
  .rozo-size-guide__measure-content figure.wp-block-image,
  .rozo-size-guide__measure-content .wp-block-image,
  .rozo-size-guide__measure-content figure { width: 100% !important; max-width: 100% !important; margin: 10px auto 16px; }
  .rozo-size-guide__measure-content img { width: 100% !important; max-width: 100% !important; height: auto !important; }
  .rozo-size-guide__no-chart,
  .rozo-size-guide__no-matching-sizes { margin: 14px 12px; padding: 11px 12px; }
  .rozo-size-guide__footer { padding: 10px 13px max(10px, env(safe-area-inset-bottom)); }
  .rozo-size-guide__add-to-bag { min-height: 45px; }
}
@media (prefers-reduced-motion: reduce) {
  .rozo-size-guide__dialog { animation: none !important; }
}
@keyframes rozo-size-guide-slide-in {
  from { transform: translateX(16px); opacity: .8; }
  to { transform: translateX(0); opacity: 1; }
}

.rozo-size-guide__brand-logo { display: block; width: auto; max-width: 112px; max-height: 36px; object-fit: contain; object-position: left center; }


/* -------------------------------------------------------------------------
   ROZO Size Guides 4.1.2: mobile drawer, pinned Size column and brand contrast.
   Scoped to the size-guide UI; does not change product gallery or linked colors.
   ------------------------------------------------------------------------- */
.rozo-size-guide__modal {
  z-index: 1001000 !important;
}

.rozo-size-guide__dialog,
.rozo-size-guide__product-summary,
.rozo-size-guide__panels,
.rozo-size-guide__panel,
.rozo-size-guide__chart-content,
.rozo-size-guide__measure-content {
  min-width: 0;
  max-width: 100%;
}

/* Keep the chart viewport distinct from the vertically scrollable drawer. */
.rozo-size-guide__panels {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
}
.rozo-size-guide__panel {
  width: 100%;
  min-width: 0;
  overflow: visible;
}
.rozo-size-guide__chart-content {
  display: block;
  width: 100%;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  touch-action: pan-x pan-y;
  scrollbar-width: thin;
  scrollbar-color: #b8b8b8 #f4f4f4;
}
.rozo-size-guide__chart-content table {
  width: 100%;
  min-width: 680px !important;
  max-width: none !important;
  table-layout: auto;
}
.rozo-size-guide__chart-content th,
.rozo-size-guide__chart-content td {
  white-space: nowrap;
}
.rozo-size-guide__scroll-hint {
  display: none;
}

/* Make both tabs explicit so theme-wide button rules cannot lower contrast. */
.rozo-size-guide__tabs .rozo-size-guide__tab,
.rozo-size-guide__tabs .rozo-size-guide__tab:hover,
.rozo-size-guide__tabs .rozo-size-guide__tab:focus {
  background: #fff !important;
  color: #171717 !important;
  border: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
.rozo-size-guide__tabs .rozo-size-guide__tab.is-active,
.rozo-size-guide__tabs .rozo-size-guide__tab.is-active:hover,
.rozo-size-guide__tabs .rozo-size-guide__tab.is-active:focus {
  background: #F21F35 !important;
  color: #fff !important;
  font-weight: 700 !important;
}
.rozo-size-guide__tabs .rozo-size-guide__tab.is-active::after {
  background: #D9152B !important;
  height: 3px;
}

/* Use the full available width for user-supplied measuring illustrations. */
.rozo-size-guide__measure-content,
.rozo-size-guide__measure-content > *,
.rozo-size-guide__measure-content .wp-block-group,
.rozo-size-guide__measure-content .wp-block-columns,
.rozo-size-guide__measure-content .wp-block-column,
.rozo-size-guide__measure-content figure,
.rozo-size-guide__measure-content figure.wp-block-image,
.rozo-size-guide__measure-content .wp-block-image,
.rozo-size-guide__measure-content .wp-block-image.is-resized,
.rozo-size-guide__measure-content .wp-block-media-text__media {
  box-sizing: border-box;
  max-width: 100% !important;
}
.rozo-size-guide__measure-content figure,
.rozo-size-guide__measure-content figure.wp-block-image,
.rozo-size-guide__measure-content .wp-block-image,
.rozo-size-guide__measure-content .wp-block-image.is-resized {
  display: block !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.rozo-size-guide__measure-content img,
.rozo-size-guide__measure-content figure img,
.rozo-size-guide__measure-content .wp-block-image img,
.rozo-size-guide__measure-content img[width] {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  margin: 0 auto !important;
}

/* The ROZO fixed bottom nav must never sit over the open size-guide drawer. */
body.rozo-size-guide-modal-open .rzmbn-bar,
body.rozo-size-guide-modal-open .rzmbn-more-overlay,
body.rozo-size-guide-modal-open .rzmbn-more-panel {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

@media (max-width: 640px) {
  .rozo-size-guide__modal {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    margin: 0 !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    z-index: 1001000 !important;
  }
  .rozo-size-guide__dialog {
    position: relative;
    width: 100% !important;
    max-width: 100% !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }
  .rozo-size-guide__topbar {
    flex: 0 0 auto;
    padding: 4px 10px 0 !important;
  }
  .rozo-size-guide__product-summary {
    gap: 12px !important;
    padding: 8px 14px 12px !important;
    align-items: flex-start;
  }
  .rozo-size-guide__product-image {
    width: 86px !important;
    height: 104px !important;
    flex: 0 0 86px !important;
  }
  .rozo-size-guide__brand-logo {
    max-width: 90px !important;
    max-height: 28px !important;
  }
  .rozo-size-guide__brand { font-size: 14px !important; line-height: 1.25 !important; }
  .rozo-size-guide__product-title { font-size: 15px !important; line-height: 1.25 !important; margin-bottom: 6px !important; }
  .rozo-size-guide__price { font-size: 13px !important; }
  .rozo-size-guide__tabs { flex: 0 0 auto; }
  .rozo-size-guide__tab { min-height: 48px !important; padding: 11px 8px !important; font-size: 13px !important; }
  .rozo-size-guide__unit-row { padding: 8px 12px !important; }
  .rozo-size-guide__chart-content {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 4px;
  }
  .rozo-size-guide__chart-content table {
    width: max-content !important;
    min-width: 680px !important;
    max-width: none !important;
    table-layout: auto !important;
  }
  .rozo-size-guide__chart-content th,
  .rozo-size-guide__chart-content td { padding: 9px 12px !important; }
  /*
   * Keep the radio selector + Size column pinned while measurement columns
   * scroll horizontally. Opaque backgrounds prevent "Front Length" and
   * other measurement headings/text from showing through the Size column.
   * The table viewport alone scrolls; the modal header and tabs stay still.
   */
  .rozo-size-guide__chart-content .rozo-size-guide__radio-heading,
  .rozo-size-guide__chart-content td.rozo-size-guide__size-radio-cell {
    position: sticky !important;
    left: 0 !important;
    z-index: 4 !important;
    background: #fff !important;
    background-clip: padding-box !important;
    box-shadow: 1px 0 0 #e6e6e6 !important;
  }

  .rozo-size-guide__chart-content thead th:nth-child(2),
  .rozo-size-guide__chart-content tr:first-child th:nth-child(2),
  .rozo-size-guide__chart-content td.rozo-size-guide__size-label-cell {
    position: sticky !important;
    left: 42px !important;
    z-index: 4 !important;
    background: #fff !important;
    background-clip: padding-box !important;
    box-shadow: 1px 0 0 #e6e6e6 !important;
  }

  .rozo-size-guide__chart-content thead th:nth-child(2),
  .rozo-size-guide__chart-content tr:first-child th:nth-child(2) {
    z-index: 6 !important;
  }

  .rozo-size-guide__chart-content .rozo-size-guide__size-row.is-selected td.rozo-size-guide__size-radio-cell,
  .rozo-size-guide__chart-content .rozo-size-guide__size-row.is-selected td.rozo-size-guide__size-label-cell {
    background: #f7f7f9 !important;
  }
  .rozo-size-guide__chart-content .rozo-size-guide__size-row.is-selected td.rozo-size-guide__size-radio-cell,
  .rozo-size-guide__chart-content .rozo-size-guide__size-row.is-selected td.rozo-size-guide__size-label-cell {
    background: #fff0f2 !important;
  }
  .rozo-size-guide__chart-content .rozo-size-guide__size-radio-cell input[type="radio"] {
    accent-color: #F21F35 !important;
  }
  .rozo-size-guide__scroll-hint {
    display: block !important;
    margin: 0 !important;
    padding: 0 12px 8px !important;
    color: #646464 !important;
    background: #fff !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
  }
  .rozo-size-guide__measure-content {
    padding: 8px 12px 18px !important;
    width: 100% !important;
  }
  .rozo-size-guide__measure-content figure,
  .rozo-size-guide__measure-content figure.wp-block-image,
  .rozo-size-guide__measure-content .wp-block-image,
  .rozo-size-guide__measure-content .wp-block-image.is-resized {
    width: 100% !important;
    max-width: 100% !important;
  }
  .rozo-size-guide__measure-content img,
  .rozo-size-guide__measure-content figure img,
  .rozo-size-guide__measure-content .wp-block-image img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
  .rozo-size-guide__status { padding: 0 12px 5px !important; }
  .rozo-size-guide__footer {
    position: relative;
    z-index: 5;
    flex: 0 0 auto;
    padding: 8px 12px max(8px, env(safe-area-inset-bottom)) !important;
    margin-bottom: 0 !important;
  }
  .rozo-size-guide__add-to-bag { min-height: 46px !important; }
}


/* -------------------------------------------------------------------------
   ROZO Size Guides 4.1.5 — make the WHOLE popup vertically scrollable.
   Previously only .rozo-size-guide__panels had a vertical scroll area, so
   the product summary/tabs stayed fixed while the table content scrolled.
   This moves vertical scrolling to the dialog itself. The table may still
   scroll horizontally for wide measurement columns.
   ------------------------------------------------------------------------- */
.rozo-size-guide__dialog {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
}

.rozo-size-guide__topbar,
.rozo-size-guide__product-summary,
.rozo-size-guide__tabs,
.rozo-size-guide__unit-row,
.rozo-size-guide__panels,
.rozo-size-guide__status,
.rozo-size-guide__footer {
  flex-shrink: 0 !important;
}

.rozo-size-guide__panels {
  display: block !important;
  flex: 0 0 auto !important;
  min-height: auto !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  -webkit-overflow-scrolling: auto !important;
}

.rozo-size-guide__panel {
  display: block;
  flex: 0 0 auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}

.rozo-size-guide__chart-content {
  height: auto !important;
  max-height: none !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-y: auto;
}

.rozo-size-guide__measure-content {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

/* On phones, keep the modal full-screen, but scroll the complete drawer. */
@media (max-width: 640px) {
  .rozo-size-guide__dialog {
    height: 100vh !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .rozo-size-guide__panels {
    flex: 0 0 auto !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
  }

  .rozo-size-guide__chart-content,
  .rozo-size-guide__measure-content {
    max-height: none !important;
  }

  .rozo-size-guide__footer {
    position: relative !important;
    inset: auto !important;
    flex: 0 0 auto !important;
  }
}


/* -------------------------------------------------------------------------
   ROZO Size Guides 4.1.8: contain the How to Measure illustration.
   Keep the full diagram visible; don't stretch portrait artwork to full modal
   width. The figure and image stay centered and scale down on small screens.
   ------------------------------------------------------------------------- */
.rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content figure,
.rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content figure.wp-block-image,
.rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content .wp-block-image,
.rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content .wp-block-image.is-resized {
  display: block !important;
  width: fit-content !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 12px auto 18px !important;
}

.rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content img,
.rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content figure img,
.rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content .wp-block-image img,
.rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content img[width] {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: min(100%, 460px) !important;
  max-height: min(58vh, 560px) !important;
  object-fit: contain !important;
  object-position: center !important;
  margin: 0 auto !important;
}

@media (max-width: 640px) {
  .rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content figure,
  .rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content figure.wp-block-image,
  .rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content .wp-block-image,
  .rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content .wp-block-image.is-resized {
    width: fit-content !important;
    max-width: 100% !important;
    margin: 8px auto 14px !important;
  }

  .rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content img,
  .rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content figure img,
  .rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content .wp-block-image img,
  .rozo-size-guide .rozo-size-guide__panels .rozo-size-guide__measure-content img[width] {
    width: auto !important;
    max-width: min(100%, 360px) !important;
    max-height: min(48dvh, 420px) !important;
    height: auto !important;
  }
}
