/* Estilos compartidos del editor de producto del catálogo. */
    .kc-admin-product-modal[hidden] {
      display: none !important;
    }

    .kc-admin-product-modal {
      position: fixed;
      inset: 0;
      z-index: 1000000;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 22px;
    }

    .kc-admin-product-modal__backdrop {
      position: absolute;
      inset: 0;
      background: rgba(23,23,23,0.64);
      backdrop-filter: blur(8px);
    }

    .kc-admin-product-modal__dialog {
      position: relative;
      width: min(940px, 100%);
      max-height: min(92vh, 900px);
      overflow: auto;
      border-radius: 8px;
      background: #ffffff;
      box-shadow: 0 24px 80px rgba(23,23,23,0.32);
    }

    .kc-admin-product-form {
      padding: clamp(18px, 3vw, 32px);
    }

    .kc-admin-product-form__header,
    .kc-admin-product-form__actions {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
    }

    .kc-admin-product-form__header p {
      margin: 0 0 4px;
      color: #e30613;
      font-size: 12px;
      font-weight: 500;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .kc-admin-product-form__header h2 {
      margin: 0;
      color: #171717;
      font-size: clamp(24px, 3vw, 34px);
      line-height: 1;
      font-weight: 500;
      letter-spacing: 0;
    }

    .kc-admin-product-form__close {
      width: 42px;
      height: 42px;
      border-radius: 8px;
      background: #f4f4f4;
      color: #181818;
      font-size: 26px;
      line-height: 1;
    }

    .kc-admin-product-form__grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 14px;
      margin-top: 24px;
    }

    .kc-admin-product-form__media {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 10px;
      min-height: 0;
    }

    .kc-admin-product-form__media:empty {
      display: none;
    }

    .kc-admin-product-form__media img {
      width: 88px;
      height: 88px;
      object-fit: contain;
      border: 1px solid #e7e7e7;
      border-radius: 8px;
      background: #fff;
      padding: 5px;
    }

    .kc-admin-product-form__media-label {
      width: 100%;
      color: #727272;
      font-size: 11px;
      font-weight: 500;
      letter-spacing: .04em;
      text-transform: uppercase;
    }

    .kc-admin-product-form label {
      display: grid;
      gap: 7px;
      margin: 0;
      color: #3f3f3f;
      font-size: 12px;
      font-weight: 500;
      letter-spacing: .02em;
    }

    .kc-admin-product-form input,
    .kc-admin-product-form textarea {
      width: 100%;
      min-width: 0;
      border: 1px solid #dddddd;
      border-radius: 8px;
      background: #fff;
      color: #171717;
      font: 500 14px/1.35 'Mona Sans', sans-serif;
      outline: 0;
    }

    .kc-admin-product-form input {
      height: 42px;
      padding: 0 12px;
    }

    .kc-admin-product-form textarea {
      resize: vertical;
      padding: 11px 12px;
    }

    .kc-admin-product-form input:focus,
    .kc-admin-product-form textarea:focus {
      border-color: #e30613;
      box-shadow: 0 0 0 3px rgba(227, 6, 19, .12);
    }

    .kc-admin-product-form input[readonly] {
      background: #fafafa;
      color: #727272;
    }

    .kc-admin-product-form__wide {
      grid-column: 1 / -1;
    }

    .kc-admin-product-form__status {
      min-height: 20px;
      margin: 16px 0 0;
      color: #535353;
      font-size: 13px;
      font-weight: 500;
    }

    .kc-admin-product-form__status.is-error {
      color: #dc2626;
    }

    .kc-admin-product-form__actions {
      margin-top: 22px;
      justify-content: flex-end;
    }

    .kc-admin-product-form__actions button,
    .kc-catalog-admin-edit-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 40px;
      border-radius: 8px;
      font-weight: 500;
    }

    .kc-admin-product-form__actions button {
      padding: 0 18px;
    }

    .kc-admin-product-form__actions button[type="button"] {
      background: #f4f4f4;
      color: #3f3f3f;
    }

    .kc-admin-product-form__actions button[type="submit"],
    .kc-catalog-admin-edit-button {
      background: #181818;
      color: #fff;
    }

    .kc-catalog-admin-edit-button {
      width: 100%;
      margin-top: 8px;
      padding: 0 14px;
      border: 0;
      font-size: 13px;
    }

    @media (max-width: 680px) {
      .kc-admin-product-form__grid {
        grid-template-columns: 1fr;
      }

      .kc-admin-product-form__actions {
        align-items: stretch;
        flex-direction: column-reverse;
      }
    }

    .kc-store-product-drawer {
      display: flex;
      align-items: stretch;
      justify-content: flex-end;
      padding: 8px;
      overflow: hidden;
      opacity: 0;
      visibility: hidden;
      transition: opacity .22s ease, visibility .22s ease;
    }

    .kc-store-product-drawer.is-open {
      opacity: 1;
      visibility: visible;
    }

    .kc-store-product-drawer__backdrop,
    .kc-store-product-drawer .kc-admin-product-modal__backdrop {
      background: rgba(23,23,23,0.42);
      backdrop-filter: blur(3px);
    }

    .kc-store-product-drawer__panel {
      width: min(1480px, calc(100vw - 16px));
      height: calc(100vh - 16px);
      max-height: none;
      margin-left: auto;
      overflow: hidden;
      border: 1px solid rgba(212,212,212,0.8);
      border-radius: 16px;
      background: #f7f7f7;
      box-shadow: 0 26px 80px rgba(23,23,23,0.26);
      transform: translateX(24px);
      transition: transform .28s cubic-bezier(.2,.75,.25,1);
    }

    .kc-store-product-drawer.is-open .kc-store-product-drawer__panel {
      transform: translateX(0);
    }

    .kc-store-product-drawer .kc-admin-product-form {
      display: flex;
      height: 100%;
      min-height: 0;
      flex-direction: column;
      padding: 0;
    }

    .kc-store-product-drawer .kc-admin-product-form__header {
      position: relative;
      z-index: 1;
      flex: 0 0 auto;
      min-height: 102px;
      align-items: flex-start;
      padding: 17px 28px 14px;
      border-bottom: 1px solid #e9e9e9;
      background: rgba(255,255,255,.96);
    }

    .kc-store-product-drawer .kc-admin-product-form__header p {
      margin-bottom: 5px;
      color: #8f8f8f;
      font-size: 12px;
      font-weight: 500;
      letter-spacing: 0;
      text-transform: none;
    }

    .kc-store-product-drawer .kc-admin-product-form__header h2 {
      font-size: 22px;
      line-height: 1.25;
      letter-spacing: -.025em;
    }

    .kc-store-product-drawer__summary {
      display: flex;
      align-items: center;
      gap: 10px;
      min-height: 23px;
      margin-top: 3px;
      color: #515151;
      font-size: 13px;
    }

    .kc-store-product-drawer__summary:empty { display: none; }

    .kc-store-product-drawer__summary code {
      padding: 3px 8px;
      border-radius: 6px;
      background: #fff0f1;
      color: #e30613;
      font: 500 11px/1.2 'Mona Sans', sans-serif;
    }

    .kc-store-product-drawer__dirty {
      padding: 3px 9px;
      border-radius: 99px;
      background: #fff4d7;
      color: #9a5d00;
      font-size: 11px;
      font-weight: 500;
    }

    .kc-store-product-drawer .kc-admin-product-form__close {
      width: 36px;
      height: 36px;
      border-radius: 9px;
      background: transparent;
      color: #727272;
      font-size: 24px;
    }

    .kc-store-product-drawer .kc-admin-product-form__close:hover {
      background: #f4f4f4;
      color: #181818;
    }

    .kc-store-product-drawer .kc-admin-product-form__grid {
      flex: 1 1 auto;
      min-height: 0;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      align-content: stretch;
      gap: 12px;
      margin: 0;
      padding: 16px 18px;
      overflow: auto;
      overscroll-behavior: contain;
    }

    .kc-store-product-drawer__card {
      display: grid;
      align-content: start;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px 14px;
      min-width: 0;
      padding: 18px 16px;
      border: 1px solid #e7e7e7;
      border-radius: 12px;
      background: #fff;
      box-shadow: 0 4px 12px rgba(23,23,23,0.035);
    }

    .kc-store-product-drawer__card > header {
      display: flex;
      grid-column: 1 / -1;
      align-items: center;
      gap: 11px;
      margin: 0 0 2px;
    }

    .kc-store-product-drawer__card > header > span {
      display: grid;
      width: 35px;
      height: 35px;
      flex: 0 0 35px;
      place-items: center;
      border-radius: 10px;
      background: #fff0f1;
      color: #e30613;
      font-size: 13px;
      font-weight: 500;
    }

    .kc-store-product-drawer__card > header h3 {
      margin: 0;
      color: #1f1f1f;
      font-size: 14px;
      font-weight: 500;
      letter-spacing: -.015em;
    }

    .kc-store-product-drawer__card > header p {
      margin: 3px 0 0;
      color: #7e7e7e;
      font-size: 11px;
      font-weight: 400;
    }

    .kc-store-product-drawer .kc-admin-product-form label {
      gap: 6px;
      color: #4b4b4b;
      font-size: 11px;
      font-weight: 500;
      letter-spacing: 0;
    }

    .kc-store-product-drawer .kc-admin-product-form input,
    .kc-store-product-drawer .kc-admin-product-form textarea {
      min-height: 40px;
      border-color: #e2e2e2;
      border-radius: 8px;
      font-size: 12px;
      font-weight: 500;
    }

    .kc-store-product-drawer .kc-admin-product-form input { height: 40px; }
    .kc-store-product-drawer .kc-admin-product-form textarea { min-height: 90px; }
    .kc-store-product-drawer .kc-admin-product-form label small { color: #8e8e8e; font-size: 10px; font-weight: 500; }
    .kc-store-product-drawer .kc-admin-product-form__wide { grid-column: 1 / -1; }
    .kc-store-product-drawer__divider { grid-column: 1 / -1; border-top: 1px dashed #e6e6e6; margin: 2px 0; }

    .kc-store-product-drawer .kc-admin-product-form__media {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(112px, 1fr));
      align-content: start;
      align-items: start;
      gap: 8px;
      min-height: 122px;
      padding: 10px;
      border: 1px solid #e9e9e9;
      border-radius: 9px;
      background-color: #fcfcfc;
      background-image: linear-gradient(45deg,#f2f2f2 25%,transparent 25%),linear-gradient(-45deg,#f2f2f2 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#f2f2f2 75%),linear-gradient(-45deg,transparent 75%,#f2f2f2 75%);
      background-position: 0 0,0 7px,7px -7px,-7px 0;
      background-size: 14px 14px;
    }

    .kc-store-product-drawer .kc-admin-product-form__media:empty { display: grid; min-height: 54px; padding: 10px; background: #fcfcfc; }
    .kc-store-product-drawer .kc-admin-product-form__media--primary { grid-template-columns: minmax(0, 1fr); }
    .kc-store-product-drawer .kc-admin-product-form__media-label { grid-column: 1 / -1; color: #7e7e7e; font-size: 10px; font-weight: 500; text-transform: none; }
    .kc-store-product-drawer .kc-admin-product-form__media-item { position: relative; display: grid; min-width: 0; align-content: start; gap: 7px; padding: 7px; border: 1px solid #e7e7e7; border-radius: 8px; background: #fff; }
    .kc-store-product-drawer .kc-admin-product-form__media-item img { display: block; width: 100%; height: 112px; padding: 3px; border: 0; border-radius: 5px; background: #fff; object-fit: contain; }
    .kc-store-product-drawer .kc-admin-product-form__media-item button { min-height: 31px; padding: 5px 7px; border: 1px solid #e4e4e4; border-radius: 6px; background: #fafafa; color: #3f3f3f; font: 500 10px/1.25 'Mona Sans', sans-serif; cursor: pointer; }
    .kc-store-product-drawer .kc-admin-product-form__media-item button:hover { border-color: #e30613; background: #fff0f1; color: #e30613; }
    .kc-store-product-drawer .kc-admin-product-form__media-item button[data-catalog-media-remove] { position: absolute; z-index: 1; top: 4px; right: 4px; display: grid; width: 26px; min-height: 26px; place-items: center; padding: 0; border: 1px solid #e30613; border-radius: 50%; background: #e30613; color: #fff; font-size: 18px; line-height: 1; }
    .kc-store-product-drawer .kc-admin-product-form__media-item button[data-catalog-media-remove]:hover { background: #b9000b; color: #fff; }
    .kc-store-product-drawer .kc-admin-product-form__media-empty { grid-column: 1 / -1; align-self: center; color: #8f8f8f; font-size: 11px; text-align: center; }

    .kc-store-product-drawer__upload {
      position: relative;
      min-height: 68px;
      align-content: center;
      padding: 10px 12px;
      border: 1px dashed #d4d4d4;
      border-radius: 9px;
      background: #fafafa;
    }

    .kc-store-product-drawer__upload input[type="file"] { height: auto !important; min-height: 0 !important; padding: 0; border: 0 !important; background: transparent !important; font-size: 10px !important; }
    .kc-store-product-drawer__upload > span { color: #8e8e8e; font-size: 10px; font-weight: 400; }

    .kc-store-product-drawer .kc-admin-product-form__status {
      flex: 0 0 auto;
      min-height: 18px;
      margin: 0;
      padding: 0 22px;
      color: #535353;
      font-size: 12px;
    }

    .kc-store-product-drawer .kc-admin-product-form__actions {
      position: relative;
      flex: 0 0 auto;
      margin: 0;
      padding: 12px 22px;
      border-top: 1px solid #e9e9e9;
      background: #fff;
    }

    .kc-store-product-drawer .kc-admin-product-form__actions button {
      min-height: 40px;
      border: 1px solid #dfdfdf;
      border-radius: 8px;
      background: #fff;
      color: #3f3f3f;
      font-size: 12px;
      font-weight: 500;
    }

    .kc-store-product-drawer .kc-admin-product-form__actions button[type="submit"] {
      border-color: #e30613;
      background: #e30613;
      color: #fff;
      box-shadow: 0 5px 12px rgba(227,6,19,.18);
    }

    .kc-store-product-drawer .kc-admin-product-form__actions button:disabled { cursor: wait; opacity: .65; }

    @media (max-width: 1200px) {
      .kc-store-product-drawer .kc-admin-product-form__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
      .kc-store-product-drawer__panel { width: min(1000px, calc(100vw - 16px)); }
    }

    @media (max-width: 680px) {
      .kc-store-product-drawer { padding: 0; }
      .kc-store-product-drawer__panel { width: 100%; height: 100dvh; border-radius: 0; }
      .kc-store-product-drawer .kc-admin-product-form__header { min-height: 82px; padding: 12px 16px; }
      .kc-store-product-drawer .kc-admin-product-form__header h2 { font-size: 19px; }
      .kc-store-product-drawer .kc-admin-product-form__grid { grid-template-columns: 1fr; gap: 10px; padding: 12px; }
      .kc-store-product-drawer__card { gap: 10px 12px; padding: 15px 13px; }
      .kc-store-product-drawer .kc-admin-product-form__actions { align-items: center; flex-direction: row; padding: 10px 14px max(10px, env(safe-area-inset-bottom)); }
      .kc-store-product-drawer .kc-admin-product-form__actions button { flex: 1; }
    }

    @media (prefers-reduced-motion: reduce) {
      .kc-store-product-drawer, .kc-store-product-drawer__panel { transition: none !important; }
    }

