/* Capa focalizada: jerarquía de precio, archivo y cambio de producto. */
.tx-price-priority,
.tx-mobile-price > div {
  display: flex;
  flex-direction: column;
}

.tx-price-priority .pc-total-primary,
.tx-mobile-price .pc-total-primary {
  order: -3;
  display: flex;
  flex-direction: column;
  margin: 0 0 8px;
}

.tx-price-priority .pc-total-primary b,
.tx-mobile-price .pc-total-primary b {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.tx-price-priority .pc-total-primary em,
.tx-mobile-price .pc-total-primary em {
  color: inherit;
  font-size: clamp(30px, 4vw, 44px);
  font-style: normal;
  font-weight: 900;
  line-height: 1.05;
}

.tx-price-priority > small,
.tx-mobile-price > div > small {
  order: -2;
  margin-top: 4px;
  font-size: 11px;
}

.tx-price-priority > strong,
.tx-mobile-price > div > strong {
  order: -1;
  font-size: 18px;
}

.pc-direct-upload {
  display: grid;
  gap: 7px;
  margin: 12px 0 0;
  padding: 12px;
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  background: #f8fafc;
}

.pc-direct-upload__button,
.pc-change-model,
[data-change-product] {
  width: fit-content;
  min-height: 42px;
  border: 1px solid #d20a61;
  border-radius: 999px;
  padding: 9px 15px;
  background: #fff;
  color: #a7074d;
  font: 800 14px/1.2 system-ui, sans-serif;
  cursor: pointer;
}

.pc-direct-upload__button:hover,
.pc-direct-upload__button:focus-visible,
.pc-change-model:hover,
.pc-change-model:focus-visible,
[data-change-product]:hover,
[data-change-product]:focus-visible {
  background: #fff2f7;
  outline: 3px solid #d20a6122;
  outline-offset: 2px;
}

.pc-direct-upload__status {
  color: #475569;
  font-size: 13px;
  line-height: 1.45;
}

.pc-direct-upload__status a {
  color: #a7074d;
  font-weight: 800;
}

.pc-change-model {
  min-height: 34px;
  margin: 5px 0 3px;
  padding: 6px 11px;
  font-size: 12px;
}

.pc-upload-notice {
  margin-bottom: 18px;
}

.pc-multicolor-status {
  margin: 10px 0 0;
  padding: 10px 12px;
  border: 1px solid #d20a61;
  border-radius: 10px;
  background: #fff2f7;
  color: #7d083f;
  font: 800 13px/1.4 system-ui, sans-serif;
}

.pc-multicolor-status[hidden] {
  display: none;
}

[data-primary-action][data-monica-multicolor-blocked] {
  opacity: .48;
  pointer-events: none;
  cursor: not-allowed;
  filter: grayscale(.35);
}

@media (max-width: 640px) {
  .tx-mobile-price .pc-total-primary {
    margin-bottom: 2px;
  }

  .tx-mobile-price .pc-total-primary em {
    font-size: 22px;
  }

  .tx-mobile-price > div > strong {
    font-size: 15px;
  }
}

/* El total destacado conserva explícitamente su tratamiento del IVA. */
.pc-total-primary [data-monica-total-tax] {
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
}

/* Contraste de elementos identificados en el configurador publicado. */
.pc-assist {
  background: #087b40 !important;
}
.pc-nav a[aria-current="page"] {
  color: #c00053 !important;
}
.trust-line__stars,
.review-stars {
  color: #946200 !important;
}
body:has(#tx-form) .section--soft .eyebrow,
body:has(#tx-form) .configurator-zone .eyebrow {
  color: #c00053;
}
body:has(#tx-form) .product-landing .eyebrow {
  color: #ff5b9e;
}
body:has(#tx-form) .section-head p:not(.eyebrow),
body:has(#tx-form) .config-zone-head > p,
body:has(#tx-form) .review-proof > span:not(.review-stars),
body:has(#tx-form) .faq-list p,
body:has(#tx-form) #tx-form summary small {
  color: #586277;
}

/* Etiquetas opcionales y encabezado FAQ presentes en el HTML publicado. */
body:has(#tx-form) .eyebrow { color: #c00053; }
body:has(#tx-form) #tx-form label small { color: #586277; }

.pc-textile-select-fallback { position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important; }
.pc-textile-cards { display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;max-height:440px;overflow:auto;padding:5px;scrollbar-gutter:stable; }
.pc-textile-card { display:flex;flex-direction:column;align-items:center;gap:7px;padding:10px;border:2px solid #d7dce4;border-radius:12px;background:#fff;color:#182138;text-align:center;cursor:pointer;min-width:0; }
.pc-textile-card img { width:100%;height:100px;object-fit:contain;background:#f7f8fa;border-radius:6px; }
.pc-textile-card strong { font-size:14px;line-height:1.3; }
.pc-textile-card small { font-size:11px;line-height:1.35;color:#586277; }
.pc-textile-card[aria-pressed="true"] { border-color:#c00053;box-shadow:0 0 0 1px #c00053; }
.pc-textile-card:focus-visible,.pc-family-navigation a:focus-visible { outline:3px solid #182138;outline-offset:2px; }
.pc-family-navigation { margin:0 0 18px;padding:12px 14px;border:1px solid #d7dce4;border-radius:10px;background:#fff;color:#182138; }
.pc-family-navigation summary { cursor:pointer;font-weight:700; }
.pc-family-navigation nav { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;max-height:320px;overflow:auto; }
.pc-family-navigation a { display:block;padding:9px;border-radius:7px;color:#182138;background:#f2f4f8;text-decoration:none;overflow-wrap:anywhere; }
.pc-family-navigation a[aria-current="page"] { color:#c00053;font-weight:700; }
@media(max-width:380px) { .pc-textile-cards { grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:3px; }.pc-textile-card{padding:7px;}.pc-textile-card img{height:85px;} }

.pc-textile-model-dialog { box-sizing:border-box;width:min(440px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow:auto;padding:22px;border:1px solid #d7dce4;border-radius:14px;background:#fff;color:#182138;box-shadow:0 16px 60px #0005; }
.pc-textile-model-dialog::backdrop { background:#0007; }
.pc-textile-model-dialog h2 { margin:0 0 12px;font-size:21px;line-height:1.3; }
.pc-textile-model-dialog p { line-height:1.5; }
.pc-textile-model-dialog-actions { display:flex;flex-wrap:wrap;gap:10px;margin-top:20px; }
.pc-textile-model-dialog-actions button { flex:1 1 150px;min-height:44px;padding:10px;border:1px solid #182138;border-radius:8px;background:#fff;color:#182138;cursor:pointer; }
.pc-textile-model-dialog-actions button:last-child { background:#182138;color:#fff; }
.pc-textile-model-dialog-actions button:focus-visible { outline:3px solid #c00053;outline-offset:3px; }

/* Tabla de pedido legible sin desplazar horizontalmente a 320 px. */
@media(max-width:380px) {
  .woocommerce-checkout .woocommerce-checkout-review-order-table { width:100%!important;table-layout:fixed; }
  .woocommerce-checkout .woocommerce-checkout-review-order-table th,
  .woocommerce-checkout .woocommerce-checkout-review-order-table td { padding-left:6px!important;padding-right:6px!important;overflow-wrap:anywhere; }
  .woocommerce-checkout .woocommerce-checkout-review-order-table .product-name { width:64%; }
  .woocommerce-checkout .woocommerce-checkout-review-order-table .product-total { width:36%; }
  .woocommerce-checkout .woocommerce-checkout-review-order-table .product-name dl,
  .woocommerce-checkout .woocommerce-checkout-review-order-table .product-name dd { min-width:0;max-width:100%; }
}

/* Testimonios reales: tres columnas, una en móvil, después de configurar. */
.pc-am-reviews{padding:48px 20px;background:#f6f7fa;color:#101828}
.pc-am-reviews .pc-trust__inner{max-width:1180px;margin:auto}
.pc-am-reviews .pc-trust__reviews-head{text-align:center;margin-bottom:24px}
.pc-am-reviews h2{font-size:clamp(24px,3vw,34px);line-height:1.2;margin:0 0 12px}
.pc-am-reviews a{color:#c90058;text-decoration:underline}
.pc-am-reviews .pc-trust__reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pc-am-reviews blockquote{margin:0;padding:22px;background:#fff;border:1px solid #e4e7ec;border-radius:16px;min-width:0}
.pc-am-reviews .pc-trust__review-top{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.pc-am-reviews .pc-trust__review-source{display:inline-flex;align-items:center;gap:8px;font-size:14px}
.pc-am-reviews .pc-trust__stars{color:#a65f00;letter-spacing:2px}
.pc-am-reviews p{line-height:1.6;font-size:16px}.pc-am-reviews footer{font-size:14px;color:#475467}
@media(max-width:720px){.pc-am-reviews .pc-trust__reviews-grid{grid-template-columns:1fr}.pc-am-reviews{padding:32px 16px}}

/* Mantener dt/dd válidos y contraste del texto pequeño sobre el hero oscuro. */
.product-landing .eyebrow{color:#ff8fc2}
.pc-summary-model-action{margin:0}.pc-summary-model-action > .pc-change-model{display:block;margin-top:8px}

/* Contraste de las instrucciones sobre el fondo claro de configuradores. */
.config-zone-head .eyebrow,.section-head .eyebrow{color:#c00053}
.config-zone-head > p,.faq-list p{color:#596579}

/* La zona del enlace cubre foto, título, precio y botón sin duplicar enlaces. */
main article.product-card.pc-config-card{position:relative;cursor:pointer}
main article.product-card.pc-config-card .pc-config-card__link{position:static}
main article.product-card.pc-config-card .pc-config-card__link::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}
main article.product-card.pc-config-card:focus-within{outline:3px solid #c00053;outline-offset:3px}

/* Mantener precio por unidad y total legibles junto a la cantidad. */
#pc-pega-real .pc-pega-tier-note{font-size:14px;color:#475467;line-height:1.5;margin:12px 0}
#pc-pega-real .pr-quantity-box:has(.pc-pega-tier-price){height:auto;min-height:112px;display:flex;flex-direction:column;justify-content:center;gap:4px}
#pc-pega-real .pc-pega-tier-price{display:flex;flex-direction:column;gap:3px;font-size:14px;line-height:1.4;color:#a90049}
#pc-pega-real .pc-pega-tier-price small{font-size:12px;color:#475467}

/* Campos y precios de Pegatinas sin texto superpuesto. */
#pc-pega-real .pc-pega-quantity-field{display:flex;flex-direction:column;gap:9px;max-width:100%;margin:16px 0}
#pc-pega-real .pc-pega-quantity-field>span{font-size:16px;font-weight:700;line-height:1.5}
#pc-pega-real .pc-pega-quantity-field input{display:block;box-sizing:border-box;width:100%;max-width:380px;min-height:50px;padding:12px 14px;border:1px solid #8795aa;border-radius:10px;background:#fff;color:#171a22;font-size:18px;line-height:1.4}
#pc-pega-real .pc-pega-quantity-field small{display:block;font-size:14px;line-height:1.6;color:#475467;max-width:620px}
#pc-pega-real #pr-width,#pc-pega-real #pr-height{min-height:48px;font-size:18px;color:#171a22}
#pc-pega-real #pr-total{display:block;position:static;height:auto;min-height:0;font-size:clamp(24px,2.5vw,36px);line-height:1.25;overflow-wrap:normal;word-break:normal;margin:10px 0}
#pc-pega-real #pr-unit{display:block;position:static;line-height:1.6;margin:8px 0 0;white-space:normal}
#pc-pega-real .pc-pega-design-line{display:flex;justify-content:space-between;gap:16px}
#pc-pega-real button:disabled{opacity:.55;cursor:not-allowed}
.pc-cost-detail{gap:16px}.pc-cost-detail>span{line-height:1.5}.pc-cost-detail>strong{white-space:nowrap}

.pc-fly-design-price{gap:16px;align-items:start}.pc-fly-design-price strong{max-width:60%;font-size:14px;line-height:1.5}

.pc-unit-quantity{margin:20px 0;padding:20px;border:1px solid #d5dbe5;border-radius:16px;background:#fff;display:grid;gap:10px}.pc-unit-quantity input{display:block;box-sizing:border-box;width:100%;max-width:360px;min-height:48px;padding:12px;border:1px solid #b8c2d3;border-radius:10px;font-size:16px;color:#101318;background:#fff}.pc-unit-quantity small{color:#53637b}

.pc-quantity-controls{display:flex;align-items:center;gap:8px;max-width:360px}.pc-quantity-controls input{min-width:0;flex:1;text-align:center}.pc-quantity-controls button{flex:0 0 48px;min-height:48px;border:1px solid #b8c2d3;border-radius:10px;background:#fff;color:#111;font-size:24px;cursor:pointer}.pc-quantity-controls button:disabled{opacity:.4;cursor:default}

#pc-lonas-examples{margin-top:24px}#pc-lonas-examples h4{font-size:18px;margin:0 0 8px}#pc-lonas-examples p{color:#53637b;font-size:14px;line-height:1.5}.pc-lonas-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pc-lonas-grid button{padding:18px 8px;border:1px solid #c5cede;border-radius:12px;background:#fff;display:grid;gap:8px;color:#101319;cursor:pointer}.pc-lonas-grid strong{color:#ed0069;font-size:20px}.pc-lonas-grid small{font-size:12px;color:#53637b}.pc-lonas-grid [aria-pressed=true]{border-color:#ed0069;background:#fff4f9}#gfp-price>.ip-price__line:first-child strong{font-size:24px;color:#bd0053}#gfp-price .ip-price__total strong{font-size:20px}@media(max-width:600px){.pc-lonas-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

[data-pc-neon-costes]{font-size:13px;line-height:1.5;margin:12px 0}[data-pc-neon-costes] p{margin:6px 0}

#pc-gf-examples{margin-top:24px}#pc-gf-examples h4{font-size:18px;margin:0 0 8px}#pc-gf-examples p{color:#53637b;font-size:14px;line-height:1.5}#pc-gf-examples .pc-lonas-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:600px){#pc-gf-examples .pc-lonas-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

#pc-gf-examples .pc-gf-example-format{font-weight:700;font-size:16px;line-height:1.4}#pc-gf-examples .pc-gf-example-size{display:block;font-size:14px;line-height:1.4;white-space:nowrap}#pc-gf-examples .pc-gf-example-format[hidden]{display:none}

.pc-comparison-price{display:block;font-size:18px;line-height:1.4;color:#e90064;margin-top:7px}.pc-comparison-group{margin:16px 0 8px}.pc-comparison-note{font-size:13px;line-height:1.5;color:#52627a}

/* Estrellas amarillas comunes, tanto en banda como en opiniones. */
.trust-line__stars,.pc-trust__stars,.review-stars{color:#fbbc04!important}

.pc-cro-field-mark{display:inline-block;font-size:12px;font-weight:500;line-height:1.5;color:#52637b;margin-left:5px;letter-spacing:normal;text-transform:none}
.pc-cro-next{padding:12px 14px;margin:14px 0;background:#fff5f9;color:#751333;border:1px solid #f2c9da;border-radius:12px;font:14px/1.5 system-ui,sans-serif;text-align:left}
.pc-cro-next[hidden]{display:none}.pc-cro-next p{color:inherit!important;font-size:14px;margin:0 0 4px!important}.pc-cro-next ul{padding:0;margin:0;list-style:none}.pc-cro-next button{display:block;width:100%;min-height:44px;padding:8px 0;border:0;background:transparent!important;color:#751333!important;font:inherit;text-align:left;text-decoration:underline;cursor:pointer;white-space:normal;overflow-wrap:anywhere;box-shadow:none}.pc-cro-next button:focus-visible{outline:3px solid #193cb0;outline-offset:2px}
[data-add-to-cart],#gfp-add-cart,#fly-banner-add-cart,#pr-continue-order,[data-neon-pedir],#pvc-cart,#er-cart,#mt-cart,#ch-cart{min-height:48px}
.config-summary .pc-cro-field-mark,.ip-summary .pc-cro-field-mark{color:#dae1ec}

/* V347: el menu movil abierto prevalece sobre la barra de utilidades. */
@media(max-width:767px){.pc-header:has(.pc-menu[open]){z-index:46}}

/* V361: cabecera persistente y contacto reconocible, por encima del contenido. */
header.pc-contact-header{position:sticky!important;top:0!important;z-index:90!important;background:#fff}
body.admin-bar header.pc-contact-header{top:32px!important}
.pc-contact-float{position:fixed!important;right:20px!important;bottom:20px!important;z-index:89!important;display:flex!important;align-items:center!important;gap:9px!important;width:auto!important;min-width:56px;min-height:56px;height:56px!important;padding:0 17px!important;border-radius:30px!important;background:#087b40!important;color:#fff!important;text-decoration:none!important;box-shadow:0 4px 16px #0003;font:700 14px/1.2 system-ui,sans-serif!important}
.pc-contact-float::before,.pc-contact-float::after{display:none!important}
.pc-contact-float svg{display:block!important;width:26px!important;height:26px!important;flex:none;fill:currentColor}
.pc-contact-float>span{display:block!important;position:static!important;opacity:1!important;visibility:visible!important;transform:none!important;background:transparent!important;color:inherit!important;padding:0!important}
.pc-contact-float:focus-visible{outline:3px solid #141820;outline-offset:4px}
@media(max-width:782px){body.admin-bar header.pc-contact-header{top:46px!important}}
@media(max-width:767px){
 header.pc-contact-header .pc-header__inner{min-height:64px!important;padding-top:6px!important;padding-bottom:6px!important}
 header.pc-contact-header .pc-logo img{height:48px!important;width:auto!important}
 .pc-contact-float{right:12px!important;bottom:calc(88px + env(safe-area-inset-bottom))!important;height:48px!important;min-height:48px;padding:0 12px!important;font-size:12px!important;gap:7px!important}
 .pc-contact-float svg{width:24px!important;height:24px!important}
}

/* V363: compactar la elección móvil de mochilas sin ocultar contenido. */
@media (max-width:600px) {
  body:has(#model-20907) .family-model-grid {gap:8px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body:has(#model-20907) .family-model-grid label {padding:8px!important;gap:6px!important;min-height:0!important;height:100%!important;box-sizing:border-box!important;}
  body:has(#model-20907) .family-model-grid .agenda-model__image {height:88px!important;min-height:0!important;width:100%!important;aspect-ratio:auto!important;}
  body:has(#model-20907) .family-model-grid .agenda-model__image img {height:88px!important;width:100%!important;object-fit:contain!important;}
  body:has(#model-20907) .family-model-grid .agenda-model__content {padding:0!important;gap:4px!important;}
  body:has(#model-20907) .family-model-grid .agenda-model__colors {min-height:0!important;height:auto!important;padding:4px 8px!important;line-height:1.25!important;}
  body:has(#model-20907) .family-model-grid .agenda-model__detail b {font-size:inherit!important;line-height:inherit!important;}
}

@media (max-width:600px){
 .mobile-config-bar:has(>.pc-cro-next){display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:6px 12px!important;padding:10px 14px!important;align-items:center!important;}
 .mobile-config-bar:has(>.pc-cro-next)>div:first-child{grid-column:1;grid-row:1;min-width:0;}
 .mobile-config-bar:has(>.pc-cro-next)>button{grid-column:2;grid-row:1;min-height:44px!important;}
 .mobile-config-bar>.pc-cro-next{grid-column:1/-1;grid-row:2;margin:0!important;padding:4px 8px!important;}
 .mobile-config-bar>.pc-cro-next p{font-size:11px!important;line-height:1.3!important;margin:0!important;}
 .mobile-config-bar>.pc-cro-next ul{padding:0!important;margin:0!important;list-style:none!important;}
 .mobile-config-bar>.pc-cro-next li:not(:first-child){display:none!important;}
 .mobile-config-bar>.pc-cro-next button{min-height:36px!important;padding:4px 0!important;margin:0!important;line-height:1.35!important;font-size:12px!important;}
 body:has(.mobile-config-bar) .pc-contact-float{bottom:calc(var(--pc-mobile-bar-height,160px) + 12px)!important;}
}

/* V370: compact mug configuration on phones; preserve every field and price. */
@media(max-width:600px){
 .config-main:has(.mug-variants) .step{padding:16px!important;}
 .config-main:has(.mug-variants) .step__head{margin-bottom:12px!important;gap:10px!important;}
 .config-main:has(.mug-variants) .step__head h2{font-size:18px!important;line-height:1.3!important;}
 .config-main:has(.mug-variants) .step__head p{margin-top:6px!important;line-height:1.45!important;}
 .config-main:has(.mug-variants) .mug-variants{gap:10px!important;}
 .config-main:has(.mug-variants) .mug-variant label{grid-template-columns:90px minmax(0,1fr)!important;min-height:120px!important;}
 .config-main:has(.mug-variants) .mug-variant-image{height:120px!important;min-height:0!important;}
 .config-main:has(.mug-variants) .mug-variant label>span:last-child{padding:10px!important;min-width:0;}
 .config-main:has(.mug-variants) .mug-tiers{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;}
 .config-main:has(.mug-variants) .mug-tier{padding:9px 5px!important;min-width:0;}
 .config-main:has(.mug-variants) .mug-tier strong{font-size:12px!important;line-height:1.35!important;}
 .config-main:has(.mug-variants) .mug-tier :is(span,b){font-size:13px!important;}
 .config-main:has(.mug-variants) .file-options label{padding:12px!important;min-height:44px!important;}
 .config-main:has(.mug-variants) .file-review-callout,.config-main:has(.mug-variants) .file-adjustments{padding:12px!important;}
 .config-main:has(.mug-variants) [data-date-help]{padding:10px!important;line-height:1.45!important;font-size:13px!important;}
}

/* V371: mobile textile spacing; preserve approved drawings and choices. */
@media(max-width:600px){
 #tx-form>.step{padding:16px!important;}
 #tx-form>.step>.step__head{gap:10px!important;margin-bottom:12px!important;}
 #tx-form>.step>.step__head h2{font-size:18px!important;line-height:1.3!important;}
 #tx-form>.step>.step__head p{margin-top:6px!important;line-height:1.45!important;}
 #tx-form .pc-product-print-guide svg{max-width:180px!important;}
 #tx-form .tx-colors{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;}
 #tx-form .tx-color{min-height:48px!important;min-width:0!important;padding:7px 5px!important;gap:5px!important;}
 #tx-form .tx-color span{font-size:12px!important;white-space:normal!important;line-height:1.25!important;overflow-wrap:normal!important;}
 #tx-form .tx-product-confirmed{padding:12px!important;gap:10px!important;}
 #tx-form .file-options label{padding:12px!important;min-height:44px!important;}
 #tx-form .file-review-callout{padding:12px!important;}
}

@media(max-width:600px){#tx-form .tx-colors:has(.tx-color b){grid-template-columns:repeat(2,minmax(0,1fr))!important;}#tx-form .tx-color b{white-space:normal!important;line-height:1.3!important;}}

@media(max-width:600px){#tx-form .tx-colors{grid-template-columns:repeat(2,minmax(0,1fr))!important;}#tx-form:has([data-pc-print-guide-product="tote-bag"]) .tx-colors{grid-template-columns:repeat(3,minmax(0,1fr))!important;}#tx-form .tx-color span{overflow-wrap:anywhere!important;min-width:0!important;}#tx-form .tx-color b{overflow-wrap:anywhere!important;}}

/* V372: pair physical dimensions on mobile; preserve all commercial fields. */
@media(max-width:600px){
 #gfp-form #gfp-fields:has(>[data-field="widthCm"]):has(>[data-field="heightCm"]){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
 #gfp-form #gfp-fields:has(>[data-field="widthCm"])>*{grid-column:1/-1;min-width:0;}
 #gfp-form #gfp-fields:has(>[data-field="widthCm"])>[data-field="widthCm"],
 #gfp-form #gfp-fields:has(>[data-field="widthCm"])>[data-field="heightCm"]{grid-column:auto;}
 #gfp-form #gfp-fields .gfp-number input{min-width:0;}
 #gfp-form .ip-fields{row-gap:12px!important;}
 #gfp-form .gfp-file-review{padding:12px!important;gap:10px!important;}
}

/* V373: compact illustrated print choices without removing explanatory copy. */
@media(max-width:600px){
 #config .choices:has(>.choice>.pc-format-guide){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
 #config .choices:has(>.choice>.pc-format-guide)>.choice{min-width:0!important;padding:12px!important;min-height:48px;}
 #config .choices:has(>.choice>.pc-format-guide)>.choice>.pc-format-guide{height:76px!important;width:100%!important;max-width:100%!important;}
 #config .choices:has(>.choice>.pc-format-guide)>.choice strong{font-size:14px!important;line-height:1.3!important;overflow-wrap:anywhere;}
 #config .choices:has(>.choice>.pc-format-guide)>.choice small{font-size:12px!important;line-height:1.45!important;overflow-wrap:anywhere;}
}

/* V374: shorter mobile merchandising cards; keep images uncropped and all details. */
@media(max-width:600px){
 form.config-main:not(:has(.mug-variants)) .step{padding:16px!important;}
 form.config-main:not(:has(.mug-variants)) .step__head{gap:10px!important;margin-bottom:12px!important;}
 form.config-main:not(:has(.mug-variants)) .step__head h2{font-size:18px!important;line-height:1.3!important;}
 form.config-main:not(:has(.mug-variants)) .step__head p{margin-top:6px!important;line-height:1.45!important;}
 form.config-main:not(:has(#model-20907)) .family-model-grid{gap:8px!important;}
 form.config-main:not(:has(#model-20907)) .family-model-grid .agenda-model__image{height:100px!important;min-height:0!important;aspect-ratio:auto!important;}
 form.config-main:not(:has(#model-20907)) .family-model-grid .agenda-model__image img{height:100px!important;width:100%!important;object-fit:contain!important;}
 form.config-main:not(:has(#model-20907)) .family-model-grid .agenda-model__content{padding:10px!important;gap:4px!important;min-width:0;}
 form.config-main:not(:has(#model-20907)) .family-model-grid .agenda-model__content strong{font-size:14px!important;line-height:1.3!important;overflow-wrap:anywhere;}
 form.config-main:not(:has(#model-20907)) .family-model-grid .agenda-model__content>span{font-size:12px!important;line-height:1.45!important;overflow-wrap:anywhere;}
 form.config-main:not(:has(.mug-variants)) .file-options label{padding:12px!important;min-height:44px!important;}
 form.config-main:not(:has(.mug-variants)) .file-review-callout{padding:12px!important;gap:10px!important;}
}

/* V374 final: preserve V363 approved compact backpack cards. */
@media(max-width:600px){
 body:has(#model-20907) form.config-main .family-model-grid .agenda-model__image,
 body:has(#model-20907) form.config-main .family-model-grid .agenda-model__image img{height:88px!important;}
 body:has(#model-20907) form.config-main .family-model-grid .agenda-model__content{padding:0!important;}
}

/* V375: mobile Fly models/pack and Neon dimension/backing choices. */
@media(max-width:600px){
 #fly-banner-form .fly-models,#fly-banner-form .fly-included-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
 #fly-banner-form .fly-model img{height:150px!important;width:100%!important;object-fit:contain!important;}
 #fly-banner-form .fly-model__copy{padding:10px!important;min-width:0;}
 #fly-banner-form .fly-model__copy strong{font-size:14px!important;line-height:1.3!important;}
 #fly-banner-form .fly-model__copy small{font-size:12px!important;line-height:1.45!important;}
 #fly-banner-form .fly-included-grid p{padding:10px!important;min-width:0;}
 #fly-banner-form .fly-included-grid span{font-size:13px!important;line-height:1.45!important;}
 form.editor__controles .neon-medidas{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
 form.editor__controles .neon-medidas .campo{min-width:0;}
 form.editor__controles .neon-medidas input{min-width:0!important;width:100%!important;}
 form.editor__controles :is(#trasera,#sujecion) .opciones{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
 form.editor__controles :is(#trasera,#sujecion) .opcion__caja{padding:10px!important;min-width:0;gap:8px!important;}
 form.editor__controles :is(#trasera,#sujecion) .figura{height:48px!important;}
 form.editor__controles :is(#trasera,#sujecion) .figura svg{height:44px!important;max-width:100%!important;}
 form.editor__controles :is(#trasera,#sujecion) .opcion__nombre{font-size:14px!important;line-height:1.3!important;overflow-wrap:anywhere;}
 form.editor__controles :is(#trasera,#sujecion) .opcion__detalle{font-size:12px!important;line-height:1.45!important;overflow-wrap:anywhere;}
}
