/* WIP19 · Motor compartido de tarjetas interiores, cabecera y editor «Mi proyecto».
   No se aplica a index.html. Preserva markup funcional, lógica, precios y miniaturas. */
/* WIP20 · Fuente ÚNICA para color y tipografía de vistas interiores. No altera portada.
   El verde comunica acción; oro solo identifica marca/modelo; texto neutro para lectura.
   Los alias --page/--brand/--ink mantienen compatibilidad con HTML existentes. */
:root {
  --mr-color-primary:#123f35; --mr-color-primary-hover:#195446;
  --mr-color-accent:#896c40; --mr-color-text:#252b26; --mr-color-muted:#58635c;
  --mr-color-border:#dcd4c7; --mr-color-border-strong:#c5b9a5;
  --mr-color-canvas:#f0ebe2; --mr-color-panel:#fffefa;
  --mr-color-subtle:#faf7f1; --mr-color-preview:#e9dfd1;
  --mr-color-danger:#843e30; --mr-color-focus:#34725c;
  --mr-header-black:#000000; --mr-header-gold:#d9b46d; --mr-control-group:#f7f3ec;
  --mr-surface-elevated:#fffefa; --mr-surface-recessed:#efe8dc; --mr-surface-border:#d4c8b5;
  --mr-shadow-panel:0 12px 32px rgba(30,32,24,.075),0 1px 3px rgba(30,32,24,.035);
  --mr-shadow-control:0 2px 7px rgba(30,32,24,.045),inset 0 1px 0 rgba(255,255,255,.9);
  --mr-radius-panel:18px; --mr-radius-control:11px;
  /* WIP25 / Bloque C: una sola geometría y estados para los controles interiores. */
  --mr-subcard-inset:clamp(7px,.7vw,10px); --mr-subcard-radius:13px;
  --mr-input-height:42px; --mr-input-radius:10px;
  --mr-control-selected:#f0e9dc; --mr-control-outline:rgba(52,114,92,.16);
  --mr-font-ui:"Helvetica Neue",Arial,Helvetica,sans-serif;
  --mr-font-display:"Iowan Old Style","Baskerville","Times New Roman",Georgia,serif;
  --mr-type-micro:10px; --mr-type-label:11px; --mr-type-body:12px;
  --mr-type-nav:11px; --mr-type-detail:13px; --mr-type-product:21px;
  --mr-type-title:clamp(26px,2.1vw,32px); --mr-type-price:clamp(35px,3vw,42px);
  --mr-i-green:var(--mr-color-primary); --mr-i-gold:var(--mr-color-accent);
  --mr-i-ink:var(--mr-color-text); --mr-i-muted:var(--mr-color-muted);
  --mr-i-line:var(--mr-color-border); --mr-i-bg:var(--mr-color-panel);
  --mr-i-shadow:var(--mr-shadow-panel);
}
/* Alias de compatibilidad: una sola autoridad cromática, incluso con estilos inline
   antiguos de puertas/suelos/rodapiés y la familia de acabados. */
body.mr-catalog-page {
  --page:var(--mr-color-canvas); --page-2:#faf9f5;
  --surface:var(--mr-color-panel); --surface-soft:var(--mr-color-subtle);
  --surface-muted:#e9eee8; --ink:var(--mr-color-text);
  --ink-soft:var(--mr-color-muted); --brand:var(--mr-color-primary);
  --brand-2:var(--mr-color-primary-hover); --gold:var(--mr-color-accent);
  --gold-soft:var(--mr-color-accent); --line:var(--mr-color-border);
  --line-soft:#e3eae3; --control-bg:var(--mr-color-panel);
  --control-bg-hover:var(--mr-color-subtle);
  --control-line:var(--mr-color-border-strong);
  --font-display:var(--mr-font-display); --font-ui:var(--mr-font-ui);
  color:var(--mr-color-text);font-family:var(--mr-font-ui);
  background:radial-gradient(circle at 12% 0,rgba(217,180,109,.065),transparent 31%),linear-gradient(145deg,var(--mr-color-canvas) 0%,var(--mr-color-subtle) 53%,var(--mr-color-panel) 100%);
}

/* WIP19: la altura de las tarjetas sigue el espacio REAL disponible en main.
   Un único presupuesto vertical (47px) reserva el pie legal y aire final;
   el encabezado de una o dos filas se descuenta automáticamente por flexbox.
   Se evita el techo artificial de 590px de WIP18 y los parches por categoría.
   El modo móvil sigue con desplazamiento vertical natural. */
@media (min-width:901px) {
  body.mr-catalog-page {
    --mr-card-height:100%;
    --mr-shell-bottom-reserve:47px;
    --mr-card-inset:clamp(11px,1.05vw,16px);
  }
  body.mr-catalog-page :is(.page,.door-app) {
    min-height:0;height:calc(100svh - var(--mr-shell-bottom-reserve));width:min(1500px,calc(100% - 34px));max-width:1500px;
    padding-top:5px;padding-bottom:3px;
  }
  body.mr-catalog-page :is(.workspace,.door-workspace) {
    display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
    align-items:stretch;gap:clamp(10px,1.25vw,18px);
    padding-top:8px;flex:1 1 auto;min-height:0;
    grid-auto-rows:minmax(0,1fr);
  }
  body.mr-catalog-page :is(.workspace,.door-workspace) > :is(.config,.door-config,.showcase,.door-showcase) {
    min-width:0;min-height:0;height:var(--mr-card-height);align-self:stretch;
  }
  body.mr-catalog-page :is(.config,.door-config) {
    padding:var(--mr-card-inset);justify-content:flex-start;
  }
  body.mr-catalog-page :is(.showcase,.door-showcase) {
    display:flex;flex-direction:column;justify-content:flex-start;
    padding:clamp(7px,.8vw,11px);gap:0;
  }
  body.mr-catalog-page :is(.image-shell,.door-image-shell,.visual-shell) {
    flex:1 1 0;height:0;min-height:0;max-height:none;
  }
  body.mr-catalog-page .visual-shell .visual {height:100%;min-height:0}
  body.mr-catalog-page :is(.main-image,.door-main-image) {
    display:block;width:100%;height:100%;max-height:100%;object-fit:contain;object-position:center;
  }
  body.mr-catalog-page :is(.config,.door-config) > :is(.pricebox,.pending,.door-price-box) {
    margin-top:auto;
  }
  body.mr-catalog-page :is(.title,.door-title) {font-size:clamp(24px,2vw,29px);margin-bottom:8px}
  body.mr-catalog-page :is(.selected,.door-selected) {padding:6px 9px}
  body.mr-catalog-page :is(.form,.door-form) {padding-top:8px;row-gap:8px}
  /* Solo la zona de opciones avanzadas se desplaza si sus controles crecen:
     precio, acción e imagen nunca desaparecen por debajo del viewport. */
  body.mr-catalog-page :is(.form,.door-form) {
    display:grid;flex:1 1 auto;min-height:0;max-height:max(138px,calc(var(--mr-card-height) - 273px));overflow-y:auto;
    align-content:start;scrollbar-width:thin;scrollbar-color:#b2c3b9 transparent;
  }
  body.mr-catalog-page :is(.config,.door-config) > :is(.title,.door-title,.selected,.door-selected,.pricebox,.door-price-box,.pending,.cta,.door-cta){flex-shrink:0}
  body.mr-catalog-page :is(.pricebox,.door-price-box){max-height:clamp(90px,calc(100svh - 610px),126px);overflow:hidden}
  body.mr-catalog-page :is(.lines,.door-price-state){min-height:0;overflow-y:auto;scrollbar-width:thin}


  body.mr-catalog-page :is(.pricebox,.door-price-box,.pending) {padding:4px;margin-bottom:0}
  body.mr-catalog-page :is(.cta,.door-cta) {min-height:42px;margin-top:8px}
  body.mr-catalog-page :is(.meta,.door-meta) {margin-top:6px;min-height:54px;padding:7px 10px}
  body.mr-catalog-page :is(.dots,.door-dots) {margin-top:4px;min-height:8px}
}
/* WIP21 · Resumen comercial: espacio suficiente, conceptos completos y cifras visibles.
   Compartido por puertas, suelos y rodapiés. No altera geometría de tarjetas.
   En móvil se permite crecimiento natural en vez de cortar precios. */
body.mr-catalog-page :is(.pricebox,.door-price-box) {
  min-width:0;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  align-items:stretch;
}
body.mr-catalog-page :is(.price-main,.door-price-main,.lines,.door-price-state) {min-width:0;}
body.mr-catalog-page :is(.price-main,.door-price-main) small {
  display:block;max-width:100%;line-height:1.36;white-space:normal;overflow-wrap:normal;
  font-size:clamp(10px,.76vw,11px);color:var(--mr-color-muted);
}
body.mr-catalog-page :is(.lines,.door-price-state) {
  display:flex;flex-direction:column;justify-content:center;gap:2px;
  overflow:visible;min-height:0;
  font-size:var(--mr-type-body);line-height:1.25;
}
body.mr-catalog-page :is(.line,.door-price-line) {
  display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;
  gap:8px;min-width:0;padding:2px 0;font-size:clamp(10px,.78vw,12px);line-height:1.28;
}
body.mr-catalog-page :is(.line,.door-price-line) span {
  display:block;min-width:0;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:break-word;
}
body.mr-catalog-page :is(.line,.door-price-line) b {
  white-space:nowrap;font-size:clamp(10px,.8vw,12px);font-variant-numeric:tabular-nums;
}
body.mr-catalog-page .lines[data-tax]::after {
  content:attr(data-tax);display:block;margin-top:3px;padding-top:3px;
  border-top:1px solid var(--mr-color-border);font:500 10px/1.25 var(--mr-font-ui);
  color:var(--mr-color-muted);overflow-wrap:break-word;
}
body.mr-catalog-page .door-price-state .door-price-note {
  display:block;margin-top:3px!important;font-size:10px!important;line-height:1.24!important;
  white-space:normal;overflow-wrap:break-word;
}
@media (min-width:901px) {
  body.mr-catalog-page :is(.pricebox,.door-price-box) {
    max-height:none;min-height:clamp(116px,calc(100svh - 640px),143px);
    overflow:visible;
  }
  body.mr-catalog-page :is(.price-main,.door-price-main,.lines,.door-price-state) {padding:clamp(7px,.7vw,10px)}
}
@media (max-width:900px) {
  body.mr-catalog-page :is(.pricebox,.door-price-box) {max-height:none;height:auto;overflow:visible;}
}
@media (max-width:560px) {
  body.mr-catalog-page :is(.pricebox,.door-price-box) {grid-template-columns:1fr;}
  body.mr-catalog-page :is(.lines,.door-price-state) {overflow:visible;}
}
/* El pie legal conserva el acceso a documentos y queda separado del panel.
   La reserva de main incluye su altura y márgenes, sin imponer scroll. */
body.mr-catalog-page :is(.page,.door-app){min-height:0}
body.mr-catalog-page .mr-legal-links{
  margin:8px auto 8px!important;padding:0 12px!important;
  font-size:10px!important;line-height:1.35!important;
}
/* Jerarquía más clara para catálogo interior; ningún producto o importe inventado. */
body.mr-catalog-page .workspace > .card,body.mr-catalog-page .door-workspace > .door-card {
  min-width:0;border:1px solid var(--mr-surface-border);border-radius:var(--mr-radius-panel);
  box-shadow:var(--mr-i-shadow);background:var(--mr-surface-elevated);
}
body.mr-catalog-page .workspace > .showcase,body.mr-catalog-page .door-workspace > .door-showcase {background:var(--mr-surface-recessed);border-color:var(--mr-surface-border)}
body.mr-catalog-page .title,body.mr-catalog-page .door-title {
  font-size:clamp(25px,2.3vw,34px);line-height:1.1;letter-spacing:-.025em;
}
body.mr-catalog-page .selected,body.mr-catalog-page .door-selected {
  min-width:0;border:1px solid var(--mr-surface-border);border-radius:12px;background:linear-gradient(105deg,var(--mr-color-subtle),var(--mr-surface-elevated));box-shadow:inset 3px 0 0 rgba(181,148,88,.48);
}
body.mr-catalog-page .selected strong,body.mr-catalog-page .door-selected-model,
body.mr-catalog-page .meta strong,body.mr-catalog-page .door-model-name {overflow-wrap:anywhere}
body.mr-catalog-page .field,body.mr-catalog-page .door-field {min-width:0}
body.mr-catalog-page :is(.stepper,.door-stepper,.door-select,.project-edit-select,.project-edit-stepper):focus-within,
body.mr-catalog-page :is(.control,.project-edit-input):focus-visible {
  outline:2px solid var(--mr-color-focus);outline-offset:2px;
}
body.mr-catalog-page .image-shell,body.mr-catalog-page .door-image-shell,
body.mr-catalog-page .visual-shell {overflow:hidden;border-radius:14px;background:var(--mr-color-preview);border:1px solid var(--mr-surface-border);box-shadow:inset 0 1px 3px rgba(26,27,21,.04)}
body.mr-catalog-page .main-image,body.mr-catalog-page .door-main-image {max-width:100%;object-fit:contain}
body.mr-catalog-page .meta,body.mr-catalog-page .door-meta {
  min-width:0;border-radius:12px;background:var(--mr-surface-elevated);gap:12px;
}
body.mr-catalog-page .pricebox,body.mr-catalog-page .door-price-box,
body.mr-catalog-page .pending {border-radius:13px;box-shadow:inset 0 1px 0 rgba(255,255,255,.85);border:1px solid var(--mr-surface-border);background:var(--mr-surface-recessed)}
body.mr-catalog-page .cta,body.mr-catalog-page .door-cta {min-height:46px;border-radius:12px;box-shadow:0 9px 19px rgba(18,63,53,.16),inset 0 1px 0 rgba(255,255,255,.13);transition:background .2s ease,box-shadow .2s ease,transform .2s ease}
/* WIP20 · Escala tipográfica canónica, compartida sin selectores por categoría.
   Título > producto > cifra > dato > etiqueta > nota; no fuerza crecimiento del grid. */
body.mr-catalog-page :is(.title,.door-title) {
  font-family:var(--mr-font-display);font-size:var(--mr-type-title);
  line-height:1.12;font-weight:500;letter-spacing:-.025em;color:var(--mr-color-text);
}
body.mr-catalog-page :is(.selected strong,.door-selected-model #doorConfigName,
  .meta strong,.door-model-name,.project-edit-name) {
  font-family:var(--mr-font-display);font-size:var(--mr-type-product);
  font-weight:500;line-height:1.14;letter-spacing:-.015em;color:var(--mr-color-text);
}
body.mr-catalog-page :is(.selected small,#doorConfigModel,.model-ref,.door-model-label,
  .price-main span,.door-price-main span,.label,.door-label,.project-edit-label) {
  font-family:var(--mr-font-ui);font-size:var(--mr-type-label);font-weight:700;
  line-height:1.22;letter-spacing:.065em;text-transform:uppercase;color:var(--mr-color-muted);
}
body.mr-catalog-page :is(.selected small,#doorConfigModel,.model-ref,.door-model-label){color:var(--mr-color-accent)}
body.mr-catalog-page :is(.control,.stepper input,.door-select select,.door-stepper input,
  .door-opening-part output,.door-finish,.check,.door-check,.model-chip) {
  font-family:var(--mr-font-ui);font-size:var(--mr-type-body);line-height:1.35;color:var(--mr-color-text);
}
/* El estado sin tarifa ocupa líneas propias; nunca se superpone a "Precio".
   Comparte la misma escala y color informativo en pintura/revestimientos/frisos. */
body.mr-catalog-page .pending {background:var(--mr-color-subtle);border-color:var(--mr-color-border);min-width:0}
body.mr-catalog-page .pending > div {min-width:0}
body.mr-catalog-page .pending :is(span,strong,small) {display:block;max-width:100%;overflow-wrap:anywhere}
body.mr-catalog-page .pending span {font:700 var(--mr-type-label)/1.2 var(--mr-font-ui);color:var(--mr-color-muted);letter-spacing:.06em}
body.mr-catalog-page .pending strong {font:500 clamp(18px,1.6vw,23px)/1.12 var(--mr-font-display);color:var(--mr-color-text);margin-top:3px}
body.mr-catalog-page .pending small {font:500 var(--mr-type-micro)/1.3 var(--mr-font-ui);color:var(--mr-color-muted);margin-top:3px}
body.mr-catalog-page :is(.price-main strong,.door-price-main strong) {
  font-family:var(--mr-font-display);font-size:var(--mr-type-price);
  line-height:1;font-weight:500;letter-spacing:-.035em;color:var(--mr-color-text);
  font-variant-numeric:tabular-nums;
}
body.mr-catalog-page :is(.meta,.door-meta) {border:1px solid var(--mr-surface-border);background:var(--mr-surface-elevated);box-shadow:0 2px 7px rgba(30,32,24,.035)}
body.mr-catalog-page :is(.meta small,.door-model-finish,.door-model-price small,.price-main small,
  .door-price-main small,.opening-status,.door-opening-status,.mr-legal-links) {
  font-family:var(--mr-font-ui);font-size:var(--mr-type-micro);line-height:1.3;color:var(--mr-color-muted);
}
body.mr-catalog-page :is(.lines,.door-price-state,.door-price-line,.price-line,.door-price-state span) {
  font-family:var(--mr-font-ui);font-size:var(--mr-type-body);line-height:1.32;color:var(--mr-color-muted);
}
body.mr-catalog-page :is(.cta,.door-cta){font:750 var(--mr-type-nav)/1.2 var(--mr-font-ui);letter-spacing:.095em}
body.mr-catalog-page :is(.project-trigger-label,.mr-head-actions .project-trigger){font-size:var(--mr-type-nav)}
body.mr-catalog-page :is(.mr-head-link,.project-product-choice,.product-choice-grid a,.choice-grid a){font-size:var(--mr-type-nav)}
body.mr-catalog-page :is(.control,.door-select,.stepper,.door-stepper,.door-finish,.check,.door-check){border-color:var(--mr-color-border-strong)}
body.mr-catalog-page :is(.cta,.door-cta,.project-trigger){background:linear-gradient(135deg,var(--mr-color-primary),#0d322b);color:#fff}
body.mr-catalog-page :is(.cta,.door-cta,.project-trigger):hover{background:var(--mr-color-primary-hover)}
body.mr-catalog-page :is(.cta,.door-cta):hover{box-shadow:0 12px 23px rgba(18,63,53,.22);transform:translateY(-1px)}
body.mr-catalog-page :is(.cta,.door-cta):active{transform:translateY(0)}
body.mr-catalog-page :is(.control,.door-select,.stepper,.door-stepper,.mr-head-link,.model-chip):focus-visible{outline:2px solid var(--mr-color-focus);outline-offset:2px}
@media (max-width:640px){
  body.mr-catalog-page :is(.title,.door-title){font-size:clamp(25px,6.7vw,30px)}
  body.mr-catalog-page :is(.selected strong,.door-selected-model #doorConfigName,.meta strong,.door-model-name){font-size:19px}
  body.mr-catalog-page :is(.price-main strong,.door-price-main strong){font-size:35px}
  body.mr-catalog-page .mr-head-link{font-size:var(--mr-type-nav)}
}
/* Revestimientos, frisos y colores: opciones compactas y desplazamiento interno accesible. */
body.mr-catalog-page .model-grid {grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:clamp(88px,calc(100svh - 634px),164px);overflow:auto;padding:4px}
body.mr-catalog-page .model-chip {min-width:0;min-height:53px;border-radius:var(--mr-radius-control);gap:6px;padding:7px;background:var(--mr-surface-elevated);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
body.mr-catalog-page .model-chip:is(.is-active,:hover,:focus-visible){border-color:var(--mr-color-accent);background:var(--mr-color-subtle);box-shadow:inset 0 0 0 1px rgba(137,108,64,.2)}
body.mr-catalog-page .model-chip:focus-visible {outline:2px solid var(--mr-color-focus);outline-offset:2px}
/* Interior Mi proyecto: prioridad a tarjetas editables y resumen fijo, SOLO aquí. */
body.mr-catalog-page .project-editor-main {
  width:min(1540px,calc(100% - 40px));
  grid-template-columns:minmax(0,1fr) minmax(260px,320px);
  align-items:start;gap:clamp(14px,1.7vw,26px);
}
body.mr-catalog-page .project-editor-list {min-width:0;min-height:0}
body.mr-catalog-page .project-edit-card {
  display:grid;grid-template-columns:112px minmax(0,1fr) minmax(112px,145px);
  align-items:start;gap:clamp(12px,1.2vw,18px);
  padding:clamp(13px,1.3vw,19px);margin-bottom:12px;
  border:1px solid var(--mr-i-line);border-radius:16px;background:var(--mr-color-panel);
  box-shadow:var(--mr-i-shadow);
}
body.mr-catalog-page .project-edit-media {
  width:112px;max-width:100%;aspect-ratio:1/1;border-radius:11px;background:var(--mr-color-preview);
}
body.mr-catalog-page .project-edit-content {min-width:0}
body.mr-catalog-page .project-edit-top {margin-bottom:12px}
body.mr-catalog-page .project-edit-name {font-size:var(--mr-type-product);line-height:1.15;overflow-wrap:anywhere}
body.mr-catalog-page .project-edit-finish {line-height:1.4;letter-spacing:.035em}
body.mr-catalog-page .project-edit-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
body.mr-catalog-page .project-edit-field {min-width:0}
body.mr-catalog-page .project-edit-field.extras {grid-column:1/-1}
body.mr-catalog-page .project-edit-label {font:650 var(--mr-type-micro)/1.3 var(--mr-font-ui);color:var(--mr-i-muted);margin-bottom:6px}
body.mr-catalog-page .project-edit-select,body.mr-catalog-page .project-edit-stepper,
body.mr-catalog-page .project-edit-opening {border-radius:10px;min-width:0}
body.mr-catalog-page .project-edit-select select {min-width:0;font-size:var(--mr-type-body)}
body.mr-catalog-page .project-edit-price {min-width:0;text-align:right;overflow-wrap:anywhere}
body.mr-catalog-page .project-edit-price strong {font-size:clamp(22px,1.9vw,30px);line-height:1.14;overflow-wrap:anywhere}
body.mr-catalog-page .project-edit-status {margin-left:auto;max-width:140px}
body.mr-catalog-page .project-edit-remove {min-height:28px;color:var(--mr-color-danger)}
body.mr-catalog-page .project-editor-summary {
  position:sticky;top:12px;max-height:calc(100dvh - 115px);overflow:auto;
  border:1px solid var(--mr-i-line);border-radius:16px;padding:clamp(15px,1.5vw,23px);
  box-shadow:var(--mr-i-shadow);background:var(--mr-i-bg);
}
body.mr-catalog-page .project-editor-summary h3 {font-size:var(--mr-type-title)}
body.mr-catalog-page .project-summary-total strong {font-size:clamp(27px,2.6vw,38px);overflow-wrap:anywhere}
body.mr-catalog-page .project-editor-head {background:var(--mr-i-bg)}
/* Reutilizar sin duplicar navegaciones entre familias en todos los cajones/confirmaciones. */
body.mr-catalog-page :is(.project-product-grid,.product-choice-grid,.choice-grid) {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
}
body.mr-catalog-page :is(.project-product-choice,.product-choice-grid a,.choice-grid a) {
  display:flex;align-items:center;justify-content:center;min-width:0;min-height:42px;
  padding:9px 10px;border-radius:10px;border:1px solid var(--mr-i-line);
  color:var(--mr-i-green);background:var(--mr-color-panel);text-align:center;text-decoration:none;
  font:650 var(--mr-type-nav)/1.35 var(--mr-font-ui);
}
body.mr-catalog-page :is(.project-product-choice,.product-choice-grid a,.choice-grid a):is(:hover,:focus-visible) {
  border-color:var(--mr-color-focus);background:var(--mr-color-subtle);outline-offset:2px;
}
@media (min-width:1700px){body.mr-catalog-page .project-editor-main{grid-template-columns:minmax(0,1fr) 340px}}
@media (max-width:1099px){
  body.mr-catalog-page .project-editor-main{grid-template-columns:minmax(0,1fr) 275px;width:calc(100% - 24px);gap:12px}
  body.mr-catalog-page .project-edit-card{grid-template-columns:88px minmax(0,1fr);gap:12px}
  body.mr-catalog-page .project-edit-media{width:88px}
  body.mr-catalog-page .project-edit-price{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;border-top:1px solid var(--mr-i-line);padding-top:10px}
  body.mr-catalog-page .project-edit-status{margin:0;max-width:220px}
  body.mr-catalog-page .project-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  body.mr-catalog-page .project-editor-main{grid-template-columns:1fr;overflow:auto}
  body.mr-catalog-page .project-editor-list{overflow:visible;padding-right:0}
  body.mr-catalog-page .project-editor-summary{position:static;max-height:none}
  body.mr-catalog-page .model-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:210px}
}
@media (max-width:640px){
  body.mr-catalog-page .workspace,body.mr-catalog-page .door-workspace{grid-template-columns:1fr;gap:10px}
  body.mr-catalog-page .workspace > .card,body.mr-catalog-page .door-workspace > .door-card{border-radius:14px}
  body.mr-catalog-page .project-editor-main{width:calc(100% - 16px);padding:10px 0}
  body.mr-catalog-page .project-edit-card{grid-template-columns:70px minmax(0,1fr);padding:11px;gap:10px}
  body.mr-catalog-page .project-edit-media{width:70px}
  body.mr-catalog-page .project-edit-grid{grid-template-columns:1fr}
  body.mr-catalog-page .project-edit-field.extras{grid-column:auto}
  body.mr-catalog-page .project-edit-price{flex-wrap:wrap}
  body.mr-catalog-page .project-edit-status{max-width:100%}
  body.mr-catalog-page .model-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:220px}
}
@media (prefers-reduced-motion:reduce){body.mr-catalog-page .model-chip{transition:none}}

/* WIP24 · Cabecera editorial equivalente a portada: marca original, enlaces sin
   cápsulas y subrayado dorado con estado actual accesible. UNA regla común para
   los seis catálogos, nunca aplicada a index.html. */
body.mr-catalog-page :is(.door-app,.page){padding-top:clamp(6px,.95vh,11px)}
body.mr-catalog-page .mr-interior-header{
 display:grid;grid-template-columns:minmax(235px,270px) minmax(0,1fr) minmax(145px,180px);
 align-items:center;gap:clamp(8px,1vw,18px);width:100%;min-height:77px;
 padding:9px clamp(13px,1.5vw,23px);border:1px solid rgba(255,255,255,.09);
 border-radius:14px;background:var(--mr-header-black);background-image:none;color:#f3f0e7;
 box-shadow:0 11px 27px rgba(0,0,0,.16),inset 0 -1px 0 rgba(217,180,109,.12);
 flex:0 0 auto;position:relative;z-index:3;
}
body.mr-catalog-page .mr-head-brand{display:flex;align-items:center;gap:13px;min-width:0}
body.mr-catalog-page .mr-head-brand :is(.door-symbol,.brand){
 width:58px;height:58px;flex:0 0 58px;border-radius:0;box-shadow:none;
 background:transparent;display:flex;align-items:center;justify-content:center;
}
body.mr-catalog-page .mr-head-brand :is(.door-symbol,.brand) img{display:block;width:100%;height:100%;object-fit:contain}
body.mr-catalog-page .mr-head-brand-text{display:flex;flex-direction:column;min-width:0;gap:2px;white-space:nowrap}
body.mr-catalog-page .mr-head-brand-text :is(span,strong){
 font:500 16px/1.05 Georgia,serif;letter-spacing:.16em;color:#f3f0e7;
}
body.mr-catalog-page .mr-head-brand-text small{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
body.mr-catalog-page .mr-head-nav{
 display:flex;align-items:center;justify-content:center;gap:clamp(13px,1.65vw,28px);
 min-width:0;max-width:100%;
}
/* Editorial links echo the homepage .menu a. Gold line denotes active and hover. */
body.mr-catalog-page .mr-head-link{
 position:relative;display:inline-flex;align-items:center;justify-content:center;
 min-height:42px;flex:0 0 auto;padding:10px 0 11px;border:0;border-radius:0;
 background:none;box-shadow:none;color:#eae5da;
 font:500 clamp(10px,.79vw,12px)/1.2 var(--mr-font-ui);
 letter-spacing:.13em;text-transform:uppercase;white-space:nowrap;text-decoration:none;
 transition:color .23s ease;
}
body.mr-catalog-page .mr-head-link::after{
 content:"";position:absolute;left:0;bottom:5px;width:0;height:1px;
 background:var(--mr-header-gold);transition:width .23s ease;
}
body.mr-catalog-page .mr-head-link:is(:hover,:focus-visible){
 background:none;border:0;color:#fff;box-shadow:none;
}
body.mr-catalog-page .mr-head-link:is(:hover,:focus-visible)::after{width:100%}
body.mr-catalog-page .mr-head-link.is-current{
 color:#f2d7a3;background:none;border:0;box-shadow:none;
}
body.mr-catalog-page .mr-head-link.is-current::after{width:100%;height:2px}
body.mr-catalog-page .mr-head-link:focus-visible{outline:2px solid var(--mr-header-gold);outline-offset:5px}
body.mr-catalog-page .mr-head-actions{display:flex;align-items:center;justify-content:flex-end;min-width:0}
body.mr-catalog-page .mr-head-actions .project-trigger{
 min-height:42px;padding:0 11px;box-shadow:0 7px 18px rgba(0,0,0,.23);
 border:1px solid rgba(217,180,109,.24);flex-shrink:0;
}
body.mr-catalog-page .mr-head-actions .project-trigger:is(:hover,:focus-visible){
 color:var(--mr-header-gold);border-color:var(--mr-header-gold);
 box-shadow:0 10px 22px rgba(0,0,0,.26);outline-offset:3px;
}
body.mr-catalog-page .mr-interior-header ~ :is(.workspace,.door-workspace){
 padding-top:clamp(10px,1.3vh,17px);align-items:stretch;
}
body.mr-catalog-page .mr-interior-header ~ :is(.workspace,.door-workspace) > :is(.config,.door-config,.showcase,.door-showcase){align-self:stretch}
@media (max-width:1180px){
 body.mr-catalog-page .mr-interior-header{grid-template-columns:minmax(165px,1fr) auto;row-gap:5px;padding:8px 12px}
 body.mr-catalog-page .mr-head-nav{
  grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:clamp(16px,3vw,28px);
  max-width:100%;width:100%;overflow-x:auto;overflow-y:hidden;
  overscroll-behavior-inline:contain;scrollbar-width:thin;padding-bottom:2px;
 }
 body.mr-catalog-page .mr-head-actions{grid-column:2;grid-row:1}
 body.mr-catalog-page .mr-head-link{min-height:33px;padding:7px 0 9px}
 body.mr-catalog-page .mr-head-link::after{bottom:3px}
 body.mr-catalog-page .mr-head-brand :is(.door-symbol,.brand){width:42px;height:42px;flex-basis:42px}
}
@media (max-width:640px){
 body.mr-catalog-page .mr-interior-header{border-radius:12px;grid-template-columns:minmax(0,1fr) auto;padding:8px;min-height:0;row-gap:5px}
 body.mr-catalog-page .mr-head-brand{gap:7px}
 body.mr-catalog-page .mr-head-brand :is(.door-symbol,.brand){width:35px;height:35px;flex-basis:35px}
 body.mr-catalog-page .mr-head-brand-text :is(span,strong){font-size:11px;letter-spacing:.10em}
 body.mr-catalog-page .mr-head-brand-text small{display:none}
 body.mr-catalog-page .mr-head-actions .project-trigger{min-height:36px;padding:0 9px;gap:6px}
 body.mr-catalog-page .mr-head-actions .project-trigger-label{display:inline;font-size:9px}
 body.mr-catalog-page .mr-head-actions .project-trigger-icon{display:none}
 body.mr-catalog-page .mr-head-nav{justify-content:flex-start;gap:20px;padding-bottom:4px}
 body.mr-catalog-page .mr-head-link{min-height:32px;padding:7px 0 9px;font-size:10px}
 body.mr-catalog-page .mr-interior-header ~ :is(.workspace,.door-workspace){padding-top:9px}
}
@media (max-width:360px){
 body.mr-catalog-page .mr-head-brand-text :is(span,strong){font-size:10px}
 body.mr-catalog-page .mr-head-actions .project-trigger{padding:0 7px}
 body.mr-catalog-page .mr-head-actions .project-trigger-label{font-size:8px}
}
@media (prefers-reduced-motion:reduce){
 body.mr-catalog-page :is(.mr-head-link,.mr-head-link::after,.model-chip,.door-field,.field,.cta,.door-cta){transition:none!important;transform:none!important}
}

/* WIP22 · Navegación de producto, idéntica para los tres carruseles. */
body.mr-catalog-page :is(.image-shell,.door-image-shell){position:relative}
body.mr-catalog-page :is(.previous,.next,.door-previous,.door-next){
 position:absolute;top:50%;transform:translateY(-50%);z-index:2;
 width:clamp(34px,3.1vw,43px);height:clamp(43px,4.6vw,53px);
 display:grid;place-items:center;border-radius:14px;border:1px solid rgba(255,255,255,.20);
 background:rgba(8,38,31,.80);color:#fff;font:400 36px/1 Georgia,serif;
 cursor:pointer;box-shadow:0 7px 18px rgba(0,0,0,.14);transition:background .15s ease,color .15s ease;
}
body.mr-catalog-page :is(.previous,.door-previous){left:clamp(6px,.8vw,12px);right:auto}
body.mr-catalog-page :is(.next,.door-next){right:clamp(6px,.8vw,12px);left:auto}
body.mr-catalog-page :is(.previous,.next,.door-previous,.door-next):is(:hover,:focus-visible){
 background:var(--mr-header-black);color:var(--mr-header-gold);outline:2px solid var(--mr-header-gold);outline-offset:2px;
}
body.mr-catalog-page :is(.previous,.next,.door-previous,.door-next):disabled{opacity:.28;cursor:default;pointer-events:none}
@media(max-width:640px){body.mr-catalog-page :is(.previous,.next,.door-previous,.door-next){width:36px;height:44px;font-size:32px}}
/* WIP25 · Bloque C / MOTOR UNICO DE CONTROLES. Sustituye WIP22 en lugar de
   apilar overrides por producto; los HTML conservan la lógica original.
   Jerarquía: tarjeta > campo piedra > entrada blanca > selección verde/dorado. */
body.mr-catalog-page :is(.door-field,.field){
 min-width:0;padding:var(--mr-subcard-inset);border:1px solid var(--mr-surface-border);
 border-radius:var(--mr-subcard-radius);background:var(--mr-control-group);
 box-shadow:var(--mr-shadow-control);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
body.mr-catalog-page :is(.door-field,.field):hover{
 border-color:var(--mr-color-border-strong);background:var(--mr-color-subtle);
}
body.mr-catalog-page :is(.door-field,.field):focus-within{
 border-color:var(--mr-color-focus);background:var(--mr-color-panel);
 box-shadow:0 0 0 2px var(--mr-control-outline),var(--mr-shadow-control);
}
body.mr-catalog-page :is(.door-label,.label){
 display:block;margin-bottom:6px;color:var(--mr-color-muted);letter-spacing:.07em;line-height:1.25;
}
body.mr-catalog-page :is(.door-stepper,.stepper,.door-select,.control,.door-finish,.door-segment,
                         .door-opening-part,.door-check,.check,.custom-box){
 min-width:0;border:1px solid var(--mr-color-border-strong);
 border-radius:var(--mr-input-radius);background:var(--mr-surface-elevated);
 box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 1px 3px rgba(20,31,24,.025);
 transition:border-color .17s ease,background .17s ease,box-shadow .17s ease;
}
body.mr-catalog-page :is(.door-stepper,.stepper,.door-select,.control,.door-finish,.door-segment,
                         .door-check,.check){min-height:var(--mr-input-height)}
body.mr-catalog-page :is(.door-select select,.control,.stepper input,.door-stepper input){
 color:var(--mr-color-text);font-variant-numeric:tabular-nums;
}
body.mr-catalog-page :is(.door-stepper,.stepper,.door-select,.door-segment,.door-opening-part,
                         .door-check,.check,.custom-box):focus-within,
body.mr-catalog-page .control:focus-visible{
 border-color:var(--mr-color-focus);outline:2px solid var(--mr-control-outline);outline-offset:1px;
}
body.mr-catalog-page :is(.door-stepper,.stepper,.door-mini-stepper) button{
 min-width:26px;color:var(--mr-color-primary);
 transition:background .16s ease,color .16s ease;
}
body.mr-catalog-page :is(.door-stepper,.stepper,.door-mini-stepper) button:not(:disabled):hover{
 background:var(--mr-control-selected);color:var(--mr-color-text);
}
body.mr-catalog-page :is(.door-stepper,.stepper,.door-mini-stepper) button:focus-visible,
body.mr-catalog-page :is(.door-info,.help-btn,.model-chip):focus-visible{
 outline:2px solid var(--mr-color-focus);outline-offset:2px;
}
body.mr-catalog-page :is(.door-stepper,.stepper,.door-mini-stepper) button:disabled{
 opacity:.35;cursor:not-allowed;
}
body.mr-catalog-page :is(.door-extra-option,.door-opening-part){border-radius:var(--mr-input-radius)}
body.mr-catalog-page .door-opening-part>span{
 white-space:normal;overflow-wrap:break-word;text-overflow:clip;line-height:1.15;min-height:15px;
}
body.mr-catalog-page :is(.door-check,.check){
 align-items:center;gap:8px;color:var(--mr-color-text);font-weight:600;
}
body.mr-catalog-page :is(.door-check,.check):hover{
 border-color:var(--mr-color-accent);background:var(--mr-color-subtle);
}
body.mr-catalog-page :is(.door-check,.check):has(input:checked),
body.mr-catalog-page .door-segment button.is-active{
 border-color:var(--mr-color-focus);background:var(--mr-control-selected);
 box-shadow:inset 0 0 0 1px var(--mr-control-outline);
}
body.mr-catalog-page :is(.door-check,.check) input{accent-color:var(--mr-color-primary)}
body.mr-catalog-page .door-segment button.is-active{
 color:var(--mr-color-primary);font-weight:750;
}
body.mr-catalog-page :is(.door-opening-part,.model-chip):is(:hover,:focus-within){border-color:var(--mr-color-accent)}
body.mr-catalog-page .door-info,
body.mr-catalog-page .help-btn{border-color:var(--mr-color-border-strong);background:var(--mr-surface-elevated)}
body.mr-catalog-page :is(.door-info,.help-btn):is(:hover,:focus-visible){
 border-color:var(--mr-color-accent);color:var(--mr-color-primary);background:var(--mr-control-selected);
}
@media(min-width:901px){
 body.mr-catalog-page :is(.form,.door-form){row-gap:6px;column-gap:7px}
}
@media(max-width:900px){
 body.mr-catalog-page :is(.door-stepper,.stepper,.door-select,.control,.door-finish,.door-segment,.door-check,.check){min-height:44px}
}
@media(prefers-reduced-motion:reduce){
 body.mr-catalog-page :is(.door-field,.field,.door-stepper,.stepper,.door-select,.control,.door-finish,
 .door-segment,.door-opening-part,.door-check,.check,.custom-box,.door-mini-stepper button){transition:none!important}
}


/* V555 · SISTEMA VISUAL COMPARTIDO DE CATÁLOGOS.
   Fuente única de verdad tomada literalmente de index.html > "Tu proyecto".
   Se aplica a Puertas, Suelos, Rodapiés y Acabados (Pintura/Revestimientos/Frisos). */
:root{
  --mr-project-shell-bg:linear-gradient(180deg,#fbfbfd 0%,#f3f3f7 100%);
  --mr-project-card-bg:linear-gradient(145deg,#ffffff 0%,#f4f5f6 44%,#e7e9eb 100%);
  --mr-project-card-border:#d4d7da;
  --mr-project-card-shadow:0 14px 34px rgba(20,24,26,.08),inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(160,166,171,.15);
  --mr-project-card-shadow-hover:0 18px 38px rgba(20,24,26,.11),inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(160,166,171,.12);
  --mr-project-text:#232628;
  --mr-project-muted:#6e6e73;
  --mr-project-line:#e4e4ea;
  --mr-project-radius:18px;
}

body.mr-catalog-page{
  --surface:#fbfbfd;
  --surface-soft:#f3f3f7;
  --surface-muted:#e7e9eb;
  --ink:var(--mr-project-text);
  --ink-soft:var(--mr-project-muted);
  --line:var(--mr-project-card-border);
  --line-soft:var(--mr-project-line);
  --control-bg:var(--mr-project-card-bg);
  --control-bg-hover:var(--mr-project-card-bg);
  --control-line:var(--mr-project-card-border);
  --mr-color-panel:#fbfbfd;
  --mr-color-subtle:#f3f3f7;
  --mr-color-border:var(--mr-project-card-border);
  --mr-color-border-strong:var(--mr-project-card-border);
  --mr-color-text:var(--mr-project-text);
  --mr-color-muted:var(--mr-project-muted);
  --mr-surface-elevated:#fbfbfd;
  --mr-surface-recessed:#f3f3f7;
  --mr-surface-border:var(--mr-project-card-border);
  --mr-shadow-panel:var(--mr-project-card-shadow);
  --mr-shadow-control:var(--mr-project-card-shadow);
}

/* Tarjetas principales: mismo shell visual. */
body.mr-catalog-page :is(.workspace,.door-workspace) > :is(.card,.door-card){
  background:var(--mr-project-shell-bg)!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 26px 80px rgba(0,0,0,.24),0 1px 0 rgba(255,255,255,.92) inset!important;
}

/* Tarjetas secundarias comunes: mismo acabado de “Tu proyecto”. */
body.mr-catalog-page :is(
  .selected,.door-selected,.meta,.door-meta,.pricebox,.door-price-box,.pending,
  .floor-section,.field,.door-field,.mr-option-section,.mr-section-measure,
  .mr-section-opening,.mr-section-extras
){
  background:var(--mr-project-card-bg)!important;
  border-color:var(--mr-project-card-border)!important;
  box-shadow:var(--mr-project-card-shadow)!important;
  color:var(--mr-project-text)!important;
}

/* Sistema de botones/controles compartido. */
body.mr-catalog-page :is(
  .control,.stepper,.door-stepper,.door-select,.door-opening-part,
  .door-check,.check,.custom-box,.model-grid>button,.floor-model-card,
  .mr-type-options>button,.mr-finish-options>button,.mr-handle-options>button
){
  background:var(--mr-project-card-bg)!important;
  border-color:var(--mr-project-card-border)!important;
  box-shadow:var(--mr-project-card-shadow)!important;
  color:var(--mr-project-text)!important;
}
body.mr-catalog-page :is(
  .model-grid>button,.floor-model-card,.mr-type-options>button,
  .mr-finish-options>button,.mr-handle-options>button,.door-check,.check
):hover{
  box-shadow:var(--mr-project-card-shadow-hover)!important;
}

/* R02 · Shared catalog composition. Puertas R01 deliberately has no modifier. */
body#mrUnifiedCatalog.mr-unified-catalog{font-family:Georgia,'Times New Roman',serif;color:#25282b;background:#fff}
body#mrUnifiedCatalog.mr-unified-catalog .page{width:100%;max-width:none;padding:0 22px 12px;gap:14px}
body#mrUnifiedCatalog.mr-unified-catalog .workspace{display:grid;grid-template-columns:minmax(0,2.08fr) minmax(0,.92fr);gap:18px;min-width:0;align-items:stretch}
body#mrUnifiedCatalog.mr-unified-catalog .workspace>.card{min-width:0;margin:0;padding:20px;border:1px solid #d9dcde;border-radius:24px;background:#f8f7f5;box-shadow:0 12px 28px rgba(17,32,44,.07)}
body#mrUnifiedCatalog.mr-unified-catalog .config{display:flex;flex-direction:column;gap:16px}
body#mrUnifiedCatalog.mr-unified-catalog .config>.selected{display:none}
body#mrUnifiedCatalog.mr-unified-catalog .config>.title,body#mrUnifiedCatalog.mr-unified-catalog .config>.subtitle{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0;padding:0}
body#mrUnifiedCatalog.mr-unified-catalog .form{display:grid!important;grid-template-columns:minmax(0,1.65fr) minmax(190px,1fr);gap:16px!important;padding:0;min-width:0;align-content:start}
body#mrUnifiedCatalog.mr-unified-catalog .mr-catalog-section,body#mrUnifiedCatalog.mr-unified-catalog .floor-section{min-width:0;padding:14px!important;margin:0;border:1px solid #d4d7da!important;border-radius:20px!important;background:linear-gradient(145deg,#fff 0%,#f4f5f6 46%,#e7e9eb 100%)!important;box-shadow:0 8px 18px rgba(17,32,44,.05)}
body#mrUnifiedCatalog.mr-unified-catalog .mr-model-section,body#mrUnifiedCatalog.mr-unified-catalog .floor-section-model{grid-column:1;grid-row:1 / span 2}
body#mrUnifiedCatalog.mr-unified-catalog .mr-measure-section,body#mrUnifiedCatalog.mr-unified-catalog .floor-section-measure{grid-column:2;grid-row:1;display:grid;align-content:start;gap:18px}
body#mrUnifiedCatalog.mr-unified-catalog .mr-reference-section,body#mrUnifiedCatalog.mr-unified-catalog .floor-section-extras{grid-column:2;grid-row:2}
body#mrUnifiedCatalog.mr-unified-catalog .floor-section-finish,body#mrUnifiedCatalog.mr-unified-catalog .mr-note-section{grid-column:1/-1}
body#mrUnifiedCatalog.mr-unified-catalog legend,body#mrUnifiedCatalog.mr-unified-catalog .label{display:block;float:none;width:auto;margin:0 0 12px;padding:0;font:700 14px/1.3 Georgia,'Times New Roman',serif!important;color:#25282b;letter-spacing:0;text-transform:none}
body#mrUnifiedCatalog.mr-unified-catalog .label-help{display:flex;align-items:center;gap:8px}body#mrUnifiedCatalog.mr-unified-catalog .label-help label{font-weight:700}
body#mrUnifiedCatalog.mr-unified-catalog .floor-model-grid,body#mrUnifiedCatalog.mr-unified-catalog .mr-model-grid,body#mrUnifiedCatalog.mr-unified-catalog .model-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px 12px!important;max-height:350px;overflow:auto;padding:3px 4px 8px;align-content:start}
body#mrUnifiedCatalog.mr-unified-catalog .mr-product-choice{min-width:0;display:grid;grid-template-rows:auto 34px;gap:8px;align-content:start}
body#mrUnifiedCatalog.mr-unified-catalog .mr-choice-image-button{display:block;width:100%;aspect-ratio:1/1;padding:0;overflow:hidden;border:1px solid #d4d7da;border-radius:18px;background:#f6f5f2;box-shadow:0 8px 18px rgba(17,32,44,.07);cursor:pointer}
body#mrUnifiedCatalog.mr-unified-catalog .mr-choice-image-button>.mr-product-thumb{width:100%;height:100%;display:block;overflow:hidden;--mr-product-thumb-size:100%}
body#mrUnifiedCatalog.mr-unified-catalog .mr-choice-label-button{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:34px;min-height:34px;margin:0;padding:0 6px;border:1px solid #d4d7da;border-radius:12px;background:linear-gradient(145deg,#fff,#f4f5f6 46%,#e7e9eb);box-shadow:0 6px 14px rgba(17,32,44,.05);color:#25282b;font:400 10px/1.1 Georgia,'Times New Roman',serif!important;cursor:pointer;text-align:center;overflow:hidden}
body#mrUnifiedCatalog.mr-unified-catalog .mr-product-choice.is-selected>button{border-color:#173d34;box-shadow:0 0 0 1px #173d34,0 8px 18px rgba(17,32,44,.07)}
body#mrUnifiedCatalog.mr-unified-catalog .mr-choice-image-button:hover,body#mrUnifiedCatalog.mr-unified-catalog .mr-choice-label-button:hover{border-color:#173d34}
body#mrUnifiedCatalog.mr-unified-catalog button:focus-visible,body#mrUnifiedCatalog.mr-unified-catalog input:focus-visible{outline:3px solid #bb913f;outline-offset:3px}
body#mrUnifiedCatalog.mr-unified-catalog .stepper,body#mrUnifiedCatalog.mr-unified-catalog .control{height:42px;border:1px solid #d4d7da;border-radius:12px;background:#fff;min-width:0;width:100%;font:400 14px Georgia,serif}
body#mrUnifiedCatalog.mr-unified-catalog .stepper{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;overflow:hidden}
body#mrUnifiedCatalog.mr-unified-catalog .stepper button,body#mrUnifiedCatalog.mr-unified-catalog .stepper input{height:40px;min-width:0;margin:0;border:0;border-radius:0;background:transparent;text-align:center;font:400 16px Georgia,serif}
body#mrUnifiedCatalog.mr-unified-catalog .check{font:400 13px/1.35 Georgia,serif!important}body#mrUnifiedCatalog.mr-unified-catalog .checks{gap:14px}body#mrUnifiedCatalog.mr-unified-catalog .floor-current-finish{max-width:100%;gap:16px}body#mrUnifiedCatalog.mr-unified-catalog .floor-current-finish img{width:64px;height:64px;border-radius:12px;object-fit:cover}body#mrUnifiedCatalog.mr-unified-catalog .floor-current-finish strong{font-weight:400}
body#mrUnifiedCatalog.mr-unified-catalog .note{font:400 12px/1.5 Georgia,serif;margin:0;color:#60676b}body#mrUnifiedCatalog.mr-unified-catalog .custom-box{margin:0 0 12px;gap:16px}body#mrUnifiedCatalog.mr-unified-catalog .custom-box:not(.show){display:none}
body#mrUnifiedCatalog.mr-unified-catalog .pricebox,body#mrUnifiedCatalog.mr-unified-catalog .pending{display:grid!important;grid-template-columns:minmax(140px,.85fr) minmax(180px,1fr) minmax(190px,1fr);gap:18px;align-items:center;min-width:0;margin:0!important;padding:18px!important;border:1px solid #d4d7da;border-radius:20px;background:linear-gradient(145deg,#fff,#f4f5f6 46%,#e7e9eb);box-shadow:0 8px 18px rgba(17,32,44,.05)}
body#mrUnifiedCatalog.mr-unified-catalog .pricebox>div,body#mrUnifiedCatalog.mr-unified-catalog .pending>div{min-width:0}body#mrUnifiedCatalog.mr-unified-catalog .price-main>span,body#mrUnifiedCatalog.mr-unified-catalog .pending>div>span{font:700 12px Georgia,serif;color:#60676b}body#mrUnifiedCatalog.mr-unified-catalog .price-main>strong{font:700 42px/1.2 Georgia,serif!important;color:#173d34}body#mrUnifiedCatalog.mr-unified-catalog .price-main>small{font:400 11px/1.4 Georgia,serif}body#mrUnifiedCatalog.mr-unified-catalog .lines{font:400 11px/1.5 Georgia,serif;max-height:95px;overflow:auto}body#mrUnifiedCatalog.mr-unified-catalog .floor-breakdown>strong,body#mrUnifiedCatalog.mr-unified-catalog .mr-price-detail>strong{display:block;margin:0 0 8px;font:700 13px Georgia,serif}
body#mrUnifiedCatalog.mr-unified-catalog .cta{width:100%;min-height:52px;max-width:none;margin:0;padding:12px;border-radius:14px;background:#173d34;color:#fff;font:400 12px/1.3 Georgia,serif!important;letter-spacing:.02em;box-shadow:0 10px 18px rgba(17,61,52,.15);white-space:normal}
body#mrUnifiedCatalog.mr-unified-catalog .floor-config-summary{font:400 10px/1.5 Georgia,serif;gap:4px;margin-top:10px}body#mrUnifiedCatalog.mr-unified-catalog .pending{grid-template-columns:minmax(0,1.7fr) minmax(190px,1fr)}body#mrUnifiedCatalog.mr-unified-catalog .pending strong{display:block;color:#173d34;font:700 26px/1.3 Georgia,serif;margin:6px 0}body#mrUnifiedCatalog.mr-unified-catalog .pending small{display:block;max-width:480px;font:400 12px/1.5 Georgia,serif}
body#mrUnifiedCatalog.mr-unified-catalog .showcase{display:flex;flex-direction:column;gap:16px;overflow:hidden}
body#mrUnifiedCatalog.mr-unified-catalog .image-shell,body#mrUnifiedCatalog.mr-unified-catalog .visual-shell{position:relative;min-width:0;min-height:300px;flex:1;border-radius:18px;overflow:hidden;background:#f0ede7;border:1px solid #d4d7da;margin:0}
body#mrUnifiedCatalog.mr-unified-catalog .main-image{display:block;width:100%;height:100%;min-height:300px;object-fit:cover}
body#mrUnifiedCatalog.mr-unified-catalog .visual{height:100%;min-height:300px;width:100%;overflow:hidden}body#mrUnifiedCatalog.mr-unified-catalog .visual>.mr-product-thumb{height:100%;min-height:300px;width:100%;--mr-product-thumb-size:100%}
body#mrUnifiedCatalog.mr-unified-catalog .meta{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;padding:0;margin:0;min-width:0}body#mrUnifiedCatalog.mr-unified-catalog .meta strong{display:block;font:400 18px/1.3 Georgia,serif;overflow-wrap:anywhere}body#mrUnifiedCatalog.mr-unified-catalog .meta small,body#mrUnifiedCatalog.mr-unified-catalog .meta span{display:block;font:400 11px/1.5 Georgia,serif;color:#60676b}body#mrUnifiedCatalog.mr-unified-catalog #unitPrice,body#mrUnifiedCatalog.mr-unified-catalog #showcasePrice{color:#173d34;font-size:24px;font-weight:700}
body#mrUnifiedCatalog.mr-unified-catalog .meta:has(#metaName){display:block}body#mrUnifiedCatalog.mr-unified-catalog .meta:has(#metaName)>*{margin-top:4px}
body#mrUnifiedCatalog.mr-unified-catalog .mr-legal-links{font:400 11px/1.5 Georgia,serif}
@media(min-width:1200px){body#mrUnifiedCatalog.mr-unified-catalog .config>.pricebox,body#mrUnifiedCatalog.mr-unified-catalog .config>.pending{margin-top:auto!important}body#mrUnifiedCatalog.mr-unified-catalog .workspace{min-height:590px}body#mrUnifiedCatalog.mr-unified-catalog[data-catalog-family="painting"] .model-grid{max-height:330px}}
@media(max-width:1199px) and (min-width:901px){body#mrUnifiedCatalog.mr-unified-catalog .workspace{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}body#mrUnifiedCatalog.mr-unified-catalog .form{grid-template-columns:minmax(0,1fr)!important}body#mrUnifiedCatalog.mr-unified-catalog .form>*{grid-column:1!important;grid-row:auto!important}body#mrUnifiedCatalog.mr-unified-catalog .pricebox,body#mrUnifiedCatalog.mr-unified-catalog .pending{grid-template-columns:1fr!important}body#mrUnifiedCatalog.mr-unified-catalog .floor-model-grid,body#mrUnifiedCatalog.mr-unified-catalog .mr-model-grid,body#mrUnifiedCatalog.mr-unified-catalog .model-grid{max-height:310px}}
@media(max-width:900px){body#mrUnifiedCatalog.mr-unified-catalog .page{padding:0 12px 12px}body#mrUnifiedCatalog.mr-unified-catalog .workspace{grid-template-columns:minmax(0,1fr)}body#mrUnifiedCatalog.mr-unified-catalog .showcase{order:-1}body#mrUnifiedCatalog.mr-unified-catalog .workspace>.card{padding:16px;border-radius:20px}body#mrUnifiedCatalog.mr-unified-catalog .showcase .image-shell,body#mrUnifiedCatalog.mr-unified-catalog .showcase .visual-shell{height:350px;flex:none}body#mrUnifiedCatalog.mr-unified-catalog .main-image,body#mrUnifiedCatalog.mr-unified-catalog .visual,body#mrUnifiedCatalog.mr-unified-catalog .visual>.mr-product-thumb{height:350px;min-height:0}body#mrUnifiedCatalog.mr-unified-catalog .pricebox,body#mrUnifiedCatalog.mr-unified-catalog .pending{grid-template-columns:1fr!important}body#mrUnifiedCatalog.mr-unified-catalog .lines{max-height:none}}
@media(max-width:580px){body#mrUnifiedCatalog.mr-unified-catalog .form{grid-template-columns:minmax(0,1fr)!important}body#mrUnifiedCatalog.mr-unified-catalog .form>*{grid-column:1!important;grid-row:auto!important}body#mrUnifiedCatalog.mr-unified-catalog .floor-model-grid,body#mrUnifiedCatalog.mr-unified-catalog .mr-model-grid,body#mrUnifiedCatalog.mr-unified-catalog .model-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:350px}body#mrUnifiedCatalog.mr-unified-catalog .custom-box{grid-template-columns:1fr}body#mrUnifiedCatalog.mr-unified-catalog .mr-choice-label-button{font-size:11px!important}}
body#mrUnifiedCatalog.mr-unified-catalog .floor-section-measure>.field{padding:0!important;background:none!important;border:0!important;box-shadow:none!important;min-width:0}
body#mrUnifiedCatalog.mr-unified-catalog .floor-section-extras .checks{display:grid!important;grid-template-columns:1fr!important;background:none!important;border:0!important;padding:0!important}
body#mrUnifiedCatalog.mr-unified-catalog .floor-section-extras .check{min-height:0!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
body#mrUnifiedCatalog.mr-unified-catalog .check span,body#mrUnifiedCatalog.mr-unified-catalog .floor-current-finish strong{font-weight:400!important;text-transform:none!important}
body#mrUnifiedCatalog.mr-unified-catalog .label,body#mrUnifiedCatalog.mr-unified-catalog legend{font-size:14px!important;letter-spacing:0!important;text-transform:none!important}
body#mrUnifiedCatalog.mr-unified-catalog .meta strong,body#mrUnifiedCatalog.mr-unified-catalog .meta small,body#mrUnifiedCatalog.mr-unified-catalog .meta span{letter-spacing:0!important;text-transform:none!important}
body#mrUnifiedCatalog.mr-unified-catalog .floor-current-finish{padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
body#mrUnifiedCatalog.mr-unified-catalog .floor-current-finish img{width:64px!important;height:64px!important;min-width:64px!important;object-fit:cover!important}
body#mrUnifiedCatalog.mr-unified-catalog .stepper input{width:100%!important;min-width:0!important;max-width:none!important}
body#mrUnifiedCatalog.mr-unified-catalog .cta{color:#fff!important;font-weight:400!important;letter-spacing:0!important;text-transform:none!important}
body#mrUnifiedCatalog.mr-unified-catalog .mr-choice-label-button{flex-direction:row!important;line-height:1.1!important;font-weight:400!important;overflow:hidden!important}
body#mrUnifiedCatalog.mr-unified-catalog .form{max-height:none!important;overflow:visible!important;flex:none!important}
body#mrUnifiedCatalog.mr-unified-catalog .mr-note-section:has(.custom-box:not(.show)):has(.note){padding:12px 14px!important}
body#mrUnifiedCatalog.mr-unified-catalog .main-image{min-height:0!important}
/* Reset the former named floor grid so the common composition owns placement. */
body#mrUnifiedCatalog.mr-unified-catalog .workspace .form{grid-template-columns:minmax(0,1.65fr) minmax(190px,1fr)!important;grid-template-areas:none!important;grid-template-rows:auto auto auto!important;height:auto!important;max-height:none!important}
body#mrUnifiedCatalog.mr-unified-catalog .workspace .form>*{grid-area:auto!important;height:auto!important;max-height:none!important;min-height:0!important}
body#mrUnifiedCatalog.mr-unified-catalog .workspace .form>.floor-section-model,body#mrUnifiedCatalog.mr-unified-catalog .workspace .form>.mr-model-section{grid-column:1!important;grid-row:1/span 2!important}
body#mrUnifiedCatalog.mr-unified-catalog .workspace .form>.floor-section-measure,body#mrUnifiedCatalog.mr-unified-catalog .workspace .form>.mr-measure-section{grid-column:2!important;grid-row:1!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto!important}
body#mrUnifiedCatalog.mr-unified-catalog .workspace .form>.floor-section-extras,body#mrUnifiedCatalog.mr-unified-catalog .workspace .form>.mr-reference-section{grid-column:2!important;grid-row:2!important}
body#mrUnifiedCatalog.mr-unified-catalog .workspace .form>.floor-section-finish,body#mrUnifiedCatalog.mr-unified-catalog .workspace .form>.mr-note-section{grid-column:1/-1!important;grid-row:3!important}
body#mrUnifiedCatalog.mr-unified-catalog .workspace .floor-model-grid,body#mrUnifiedCatalog.mr-unified-catalog .workspace .mr-model-grid,body#mrUnifiedCatalog.mr-unified-catalog .workspace .model-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;height:auto!important;max-height:clamp(230px,32vh,350px)!important}
body#mrUnifiedCatalog.mr-unified-catalog .workspace>.config,body#mrUnifiedCatalog.mr-unified-catalog .workspace>.showcase{height:auto!important;max-height:none!important;min-height:0!important;overflow:visible!important}
body#mrUnifiedCatalog.mr-unified-catalog .workspace>.showcase{overflow:hidden!important}
body#mrUnifiedCatalog.mr-unified-catalog .floor-current-finish{grid-template-columns:64px minmax(0,1fr)!important}
body#mrUnifiedCatalog.mr-unified-catalog .floor-pricebox{min-height:0!important}
body#mrUnifiedCatalog.mr-unified-catalog .floor-section-measure .stepper,body#mrUnifiedCatalog.mr-unified-catalog .floor-section-measure .control{height:42px!important;min-height:42px!important}
body#mrUnifiedCatalog.mr-unified-catalog .image-shell>.main-image{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
body#mrUnifiedCatalog.mr-unified-catalog .visual-shell>.visual{position:absolute;inset:0;height:100%!important;min-height:0!important}
body#mrUnifiedCatalog.mr-unified-catalog .visual>.mr-product-thumb{min-height:0!important}
@media(max-width:1199px) and (min-width:901px){body#mrUnifiedCatalog.mr-unified-catalog .workspace .form{grid-template-columns:minmax(0,1fr)!important}body#mrUnifiedCatalog.mr-unified-catalog .workspace .form>*{grid-column:1!important;grid-row:auto!important}}
@media(max-width:580px){body#mrUnifiedCatalog.mr-unified-catalog .workspace .form{grid-template-columns:minmax(0,1fr)!important}body#mrUnifiedCatalog.mr-unified-catalog .workspace .form>*{grid-column:1!important;grid-row:auto!important}body#mrUnifiedCatalog.mr-unified-catalog .workspace .floor-model-grid,body#mrUnifiedCatalog.mr-unified-catalog .workspace .mr-model-grid,body#mrUnifiedCatalog.mr-unified-catalog .workspace .model-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
body#mrUnifiedCatalog.mr-unified-catalog .workspace .form .mr-note-section .custom-box:not(.show){display:none!important}
@media(min-width:1200px){body#mrUnifiedCatalog.mr-unified-catalog .workspace .floor-model-grid,body#mrUnifiedCatalog.mr-unified-catalog .workspace .mr-model-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
body#mrUnifiedCatalog.mr-unified-catalog .page{width:100%!important;max-width:none!important}
body#mrUnifiedCatalog.mr-unified-catalog .workspace{width:100%!important;max-width:none!important;grid-template-columns:minmax(0,2.08fr) minmax(0,.92fr)!important;gap:18px!important;align-items:stretch!important;height:auto!important;max-height:none!important}
body#mrUnifiedCatalog.mr-unified-catalog .config{overflow:visible!important;display:flex!important;flex-direction:column!important}
body#mrUnifiedCatalog.mr-unified-catalog .config>.form{flex-shrink:0!important}
body#mrUnifiedCatalog.mr-unified-catalog .config>.pricebox,body#mrUnifiedCatalog.mr-unified-catalog .config>.pending{flex-shrink:0!important;height:auto!important;max-height:none!important;overflow:visible!important}
@media(max-width:1199px) and (min-width:901px){body#mrUnifiedCatalog.mr-unified-catalog .workspace{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)!important}body#mrUnifiedCatalog.mr-unified-catalog .config>.pricebox,body#mrUnifiedCatalog.mr-unified-catalog .config>.pending{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:900px){body#mrUnifiedCatalog.mr-unified-catalog .workspace{grid-template-columns:minmax(0,1fr)!important}body#mrUnifiedCatalog.mr-unified-catalog .config>.pricebox,body#mrUnifiedCatalog.mr-unified-catalog .config>.pending{grid-template-columns:minmax(0,1fr)!important}}
body#mrUnifiedCatalog.mr-unified-catalog .workspace .config{order:0!important;min-height:0!important;align-self:stretch!important}
body#mrUnifiedCatalog.mr-unified-catalog .workspace .showcase{order:0!important;align-self:stretch!important}
@media(max-width:1199px) and (min-width:901px){body#mrUnifiedCatalog.mr-unified-catalog .workspace .config .form>*{grid-column:1!important;grid-row:auto!important}}
@media(max-width:900px){body#mrUnifiedCatalog.mr-unified-catalog .workspace .showcase{order:-1!important}body#mrUnifiedCatalog.mr-unified-catalog .workspace .config .form>*{grid-column:1!important;grid-row:auto!important}body#mrUnifiedCatalog.mr-unified-catalog .workspace .form{grid-template-columns:minmax(0,1fr)!important}body#mrUnifiedCatalog.mr-unified-catalog .workspace .config,body#mrUnifiedCatalog.mr-unified-catalog .workspace .showcase{align-self:stretch!important}}
body#mrUnifiedCatalog.mr-unified-catalog .page>.workspace{flex:1 0 auto!important;min-height:590px!important;grid-template-rows:minmax(min-content,auto)!important}
body#mrUnifiedCatalog.mr-unified-catalog .workspace>.config{min-height:min-content!important}
@media(max-width:900px){body#mrUnifiedCatalog.mr-unified-catalog .page>.workspace{min-height:0!important;grid-template-rows:auto auto!important}}
body#mrUnifiedCatalog.mr-unified-catalog .page{height:auto!important;min-height:100svh!important;max-height:none!important;overflow:visible!important}
