/*
 * UBD Modular Bonito 1.9.37
 * Menú con la distribución tipo /comenzar, conservando Explorador de categorías.
 * La lupa abre directamente la página nativa /busqueda.
 */

:root {
    --ubd-menu-orange: #F29636;
    --ubd-menu-coral: #F27350;
    --ubd-menu-yellow: #F3C556;
    --ubd-menu-green: #95B96C;
    --ubd-menu-teal: #5EA58A;
    --ubd-menu-ink: #17383E;
    --ubd-menu-muted: #6B7D80;
    --ubd-menu-paper: #FBF8F3;
    --ubd-menu-line: rgba(23, 56, 62, .12);
    --ubd-menu-shadow: 0 24px 60px rgba(23, 56, 62, .18);
}

/* Lupa superior. */
.ubd-mod-actions > .ubd-header-search-v1933,
.ubd-catalog-shell-actions > .ubd-header-search-v1933 {
    position: relative !important;
    display: grid !important;
    place-items: center !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--ubd-menu-line) !important;
    border-radius: 13px !important;
    background: #fff !important;
    color: var(--ubd-menu-ink) !important;
    box-shadow: 0 8px 20px rgba(23, 56, 62, .07) !important;
    cursor: pointer !important;
    transition: transform .18s ease, background .18s ease, color .18s ease !important;
}

.ubd-mod-actions > .ubd-header-search-v1933:hover,
.ubd-catalog-shell-actions > .ubd-header-search-v1933:hover {
    background: var(--ubd-menu-ink) !important;
    color: #fff !important;
    transform: translateY(-2px) !important;
}

.ubd-header-search-v1933 svg {
    width: 23px !important;
    height: 23px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.9 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.ubd-catalog-shell-actions { gap: 7px !important; }

/* Fondo y hoja del menú. */
.ubd-mod-menu-backdrop,
.ubd-catalog-shell-backdrop {
    z-index: 2147482600 !important;
    background: rgba(23, 56, 62, .34) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
}

.ubd-mod-menu-sheet,
.ubd-catalog-shell-menu {
    position: fixed !important;
    top: auto !important;
    right: auto !important;
    bottom: max(9px, env(safe-area-inset-bottom)) !important;
    left: 50% !important;
    z-index: 2147482700 !important;
    display: block !important;
    width: min(720px, calc(100% - 18px)) !important;
    max-width: 720px !important;
    max-height: calc(100dvh - 22px) !important;
    margin: 0 !important;
    padding: 15px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    border: 1px solid rgba(255, 255, 255, .88) !important;
    border-radius: 30px !important;
    background:
        radial-gradient(circle at 90% 8%, rgba(243, 197, 86, .14), transparent 25%),
        linear-gradient(180deg, #fff 0%, var(--ubd-menu-paper) 100%) !important;
    color: var(--ubd-menu-ink) !important;
    box-shadow: var(--ubd-menu-shadow) !important;
    visibility: hidden !important;
    opacity: 0 !important;
    transform: translate(-50%, calc(100% + 34px)) scale(.98) !important;
    transform-origin: bottom center !important;
    transition: transform .28s cubic-bezier(.2, .8, .2, 1), opacity .2s ease, visibility .28s ease !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(23, 56, 62, .22) transparent !important;
}

.ubd-mod-menu-sheet.is-open,
.ubd-catalog-shell-menu.is-open {
    visibility: visible !important;
    opacity: 1 !important;
    transform: translate(-50%, 0) scale(1) !important;
}

.ubd-mod-menu-head,
.ubd-catalog-shell-menu-head {
    position: sticky !important;
    top: -15px !important;
    z-index: 8 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: -15px -15px 12px !important;
    padding: 16px 15px 11px !important;
    border-bottom: 1px solid rgba(23, 56, 62, .05) !important;
    background: rgba(255, 255, 255, .94) !important;
    backdrop-filter: blur(15px) !important;
    -webkit-backdrop-filter: blur(15px) !important;
}

.ubd-mod-menu-head > strong,
.ubd-catalog-shell-menu-head > strong {
    display: grid !important;
    gap: 2px !important;
    min-width: 0 !important;
    margin: 0 !important;
    color: var(--ubd-menu-ink) !important;
    font-family: "Protest Strike", Impact, sans-serif !important;
    font-size: clamp(28px, 7vw, 40px) !important;
    font-weight: 400 !important;
    line-height: .9 !important;
    letter-spacing: .01em !important;
}

.ubd-mod-menu-head > strong > small,
.ubd-catalog-shell-menu-head > strong > small {
    color: var(--ubd-menu-muted) !important;
    font-family: Manrope, Arial, sans-serif !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    letter-spacing: .04em !important;
}

.ubd-mod-menu-head > button,
.ubd-catalog-shell-menu-head > button {
    display: grid !important;
    place-items: center !important;
    flex: 0 0 46px !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 0 3px !important;
    border: 2px solid rgba(255, 255, 255, .86) !important;
    border-radius: 15px !important;
    background: var(--ubd-menu-yellow) !important;
    color: var(--ubd-menu-ink) !important;
    box-shadow: 0 10px 22px rgba(23, 56, 62, .10) !important;
    font-family: Manrope, Arial, sans-serif !important;
    font-size: 26px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

/* Grid igual a la distribución de /comenzar. */
.ubd-mod-menu-grid,
.ubd-catalog-shell-menu-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    align-items: stretch !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card-v1933 {
    --ubd-card-bg: #fff;
    position: relative !important;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) 18px !important;
    align-items: center !important;
    gap: 10px !important;
    min-width: 0 !important;
    min-height: 82px !important;
    margin: 0 !important;
    padding: 11px !important;
    overflow: hidden !important;
    border: 1px solid rgba(23, 56, 62, .09) !important;
    border-radius: 20px !important;
    background: var(--ubd-card-bg) !important;
    color: var(--ubd-menu-ink) !important;
    box-shadow: 0 10px 24px rgba(23, 56, 62, .06) !important;
    text-align: left !important;
    text-decoration: none !important;
    transform: translateZ(0) !important;
    transition: transform .18s ease, box-shadow .18s ease !important;
}

:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card-v1933:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 16px 30px rgba(23, 56, 62, .11) !important;
}

/* Orden y tamaños exactos del mosaico. */
:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--breakfast { --ubd-card-bg: #DDF0EE; grid-column: span 1 !important; }
:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--flowers { --ubd-card-bg: #FFF0B8; grid-column: span 1 !important; }
:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--balloons { --ubd-card-bg: #EEE0F7; grid-column: 1 / -1 !important; }
:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--teddy { --ubd-card-bg: #DDEBFA; grid-column: span 1 !important; }
:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--today { --ubd-card-bg: #E4F2E7; grid-column: span 1 !important; }
:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--express { --ubd-card-bg: #FFE0B0; grid-column: 1 / -1 !important; }
:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--shipping { --ubd-card-bg: #DFF0D6; grid-column: span 1 !important; }
:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--assistant {
    --ubd-card-bg: #F8D8CF;
    grid-column: 1 / -1 !important;
    grid-template-columns: 58px minmax(0, 1fr) 24px !important;
    min-height: 92px !important;
    padding: 14px !important;
    color: var(--ubd-menu-ink) !important;
    box-shadow: 0 16px 34px rgba(242, 115, 80, .12) !important;
}

.ubd-menu-icon-v1933 {
    display: grid !important;
    place-items: center !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    border-radius: 15px !important;
    background: rgba(255, 255, 255, .72) !important;
    color: var(--ubd-menu-ink) !important;
}

.ubd-menu-card--assistant .ubd-menu-icon-v1933 {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
    background: rgba(255, 255, 255, .34) !important;
}

.ubd-menu-icon-v1933 svg {
    width: 26px !important;
    height: 26px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.ubd-menu-card--assistant .ubd-menu-icon-v1933 svg {
    width: 31px !important;
    height: 31px !important;
}

.ubd-menu-copy-v1933 {
    display: grid !important;
    align-content: center !important;
    gap: 3px !important;
    min-width: 0 !important;
    color: inherit !important;
    overflow: visible !important;
    white-space: normal !important;
}

.ubd-menu-copy-v1933 > strong {
    margin: 0 !important;
    color: inherit !important;
    font-family: "Protest Strike", Impact, sans-serif !important;
    font-size: clamp(17px, 4.2vw, 22px) !important;
    font-weight: 400 !important;
    line-height: .96 !important;
    letter-spacing: .01em !important;
    text-transform: uppercase !important;
    white-space: normal !important;
}

.ubd-menu-copy-v1933 > small {
    display: block !important;
    margin: 0 !important;
    color: rgba(23, 56, 62, .68) !important;
    font-family: Manrope, Arial, sans-serif !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    letter-spacing: .02em !important;
    white-space: normal !important;
}

.ubd-menu-card--assistant .ubd-menu-copy-v1933 > strong {
    font-size: clamp(23px, 5.7vw, 31px) !important;
}

.ubd-menu-card--assistant .ubd-menu-copy-v1933 > small {
    color: rgba(23, 56, 62, .70) !important;
    font-size: 10px !important;
}

.ubd-menu-arrow-v1933,
.ubd-menu-expand-v1933 {
    display: grid !important;
    place-items: center !important;
    width: 18px !important;
    height: 18px !important;
    color: currentColor !important;
    opacity: .72 !important;
}

.ubd-menu-arrow-v1933 svg,
.ubd-menu-expand-v1933 svg {
    width: 18px !important;
    height: 18px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.2 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

/* Explorador de categorías: se conserva como el bloque que quedó aprobado. */
:is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-explorer-v1933 {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 1px solid var(--ubd-menu-line) !important;
    border-radius: 22px !important;
    background: #fff !important;
    box-shadow: 0 12px 28px rgba(23, 56, 62, .08) !important;
}

.ubd-menu-explorer-v1933 > summary {
    display: grid !important;
    grid-template-columns: 50px minmax(0, 1fr) 22px !important;
    align-items: center !important;
    gap: 11px !important;
    min-height: 80px !important;
    padding: 12px !important;
    color: var(--ubd-menu-ink) !important;
    list-style: none !important;
    cursor: pointer !important;
    user-select: none !important;
}

.ubd-menu-explorer-v1933 > summary::-webkit-details-marker,
.ubd-menu-group-v1933 > summary::-webkit-details-marker { display: none !important; }

.ubd-menu-explorer-v1933 > summary .ubd-menu-icon-v1933 {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    background: var(--ubd-menu-ink) !important;
    color: #fff !important;
}

.ubd-menu-explorer-v1933 > summary .ubd-menu-copy-v1933 > strong {
    font-size: clamp(21px, 5vw, 28px) !important;
}

.ubd-menu-explorer-v1933 > summary .ubd-menu-copy-v1933 > small {
    color: var(--ubd-menu-muted) !important;
    font-size: 9.5px !important;
}

.ubd-menu-explorer-v1933[open] > summary {
    border-bottom: 1px solid var(--ubd-menu-line) !important;
    background: linear-gradient(135deg, rgba(243, 197, 86, .18), rgba(94, 165, 138, .10)) !important;
}

.ubd-menu-explorer-v1933[open] > summary .ubd-menu-expand-v1933 { transform: rotate(180deg) !important; }

.ubd-menu-groups-v1933 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    padding: 10px !important;
}

.ubd-menu-group-v1933 {
    align-self: start !important;
    overflow: hidden !important;
    border: 1px solid var(--ubd-menu-line) !important;
    border-radius: 16px !important;
    background: var(--ubd-menu-paper) !important;
}

.ubd-menu-group-v1933 > summary {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 18px !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 46px !important;
    padding: 10px 11px !important;
    color: var(--ubd-menu-ink) !important;
    font-family: Manrope, Arial, sans-serif !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    list-style: none !important;
    cursor: pointer !important;
}

.ubd-menu-group-v1933 > summary svg {
    width: 17px !important;
    height: 17px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.1 !important;
    transition: transform .18s ease !important;
}

.ubd-menu-group-v1933[open] > summary svg { transform: rotate(180deg) !important; }

.ubd-menu-group-v1933 > div {
    display: grid !important;
    gap: 5px !important;
    padding: 0 7px 8px !important;
}

.ubd-menu-group-v1933 > div > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 8px 9px !important;
    border: 0 !important;
    border-radius: 11px !important;
    background: #fff !important;
    color: var(--ubd-menu-ink) !important;
    box-shadow: none !important;
    font-family: Manrope, Arial, sans-serif !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-decoration: none !important;
}

.ubd-menu-group-v1933 > div > a > span {
    flex: 0 0 auto !important;
    opacity: .58 !important;
}

/* Mi cuenta y contacto en dos filas completas como la referencia. */
.ubd-mod-menu-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin-top: 10px !important;
}

.ubd-mod-menu-actions > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    min-height: 50px !important;
    border-radius: 15px !important;
    color: #fff !important;
    font-family: Manrope, Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    box-shadow: 0 9px 20px rgba(23, 56, 62, .08) !important;
}

.ubd-mod-menu-actions > a:first-child { background: var(--ubd-menu-teal) !important; }
.ubd-mod-menu-actions > a:last-child { background: var(--ubd-menu-coral) !important; }

.ubd-mod-menu-actions > a svg {
    width: 22px !important;
    height: 22px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.9 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

body.ubd-shell-menu-open,
body.ubd-menu-drawer-open-v1911 {
    overflow: hidden !important;
    touch-action: none !important;
}

@media (max-width: 699px) {
    .ubd-mod-actions > .ubd-header-search-v1933,
    .ubd-catalog-shell-actions > .ubd-header-search-v1933 {
        flex-basis: 40px !important;
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        min-height: 40px !important;
        border-radius: 12px !important;
    }

    .ubd-mod-menu-sheet,
    .ubd-catalog-shell-menu {
        width: calc(100% - 14px) !important;
        max-height: calc(100dvh - 12px) !important;
        padding: 13px !important;
        border-radius: 28px !important;
    }

    .ubd-mod-menu-head,
    .ubd-catalog-shell-menu-head {
        top: -13px !important;
        margin: -13px -13px 10px !important;
        padding: 14px 13px 10px !important;
    }

    .ubd-mod-menu-grid,
    .ubd-catalog-shell-menu-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card-v1933 {
        grid-template-columns: 42px minmax(0, 1fr) !important;
        min-height: 86px !important;
        padding: 10px !important;
    }

    :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card-v1933 .ubd-menu-arrow-v1933 {
        display: none !important;
    }

    :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--assistant {
        grid-template-columns: 54px minmax(0, 1fr) 22px !important;
        min-height: 88px !important;
        padding: 12px !important;
    }

    :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--assistant .ubd-menu-arrow-v1933 {
        display: grid !important;
    }

    .ubd-menu-icon-v1933 {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
        border-radius: 13px !important;
    }

    .ubd-menu-card--assistant .ubd-menu-icon-v1933 {
        width: 54px !important;
        height: 54px !important;
        min-width: 54px !important;
        min-height: 54px !important;
    }

    .ubd-menu-copy-v1933 > strong { font-size: clamp(15px, 4.2vw, 18px) !important; }
    .ubd-menu-copy-v1933 > small { font-size: 8px !important; }
    .ubd-menu-card--assistant .ubd-menu-copy-v1933 > strong { font-size: clamp(22px, 6vw, 27px) !important; }
    .ubd-menu-groups-v1933 { grid-template-columns: 1fr !important; }
}

@media (max-width: 359px) {
    .ubd-mod-menu-grid,
    .ubd-catalog-shell-menu-grid { grid-template-columns: 1fr !important; }

    :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card-v1933,
    :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--assistant,
    :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-explorer-v1933 {
        grid-column: 1 !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ubd-mod-menu-sheet,
    .ubd-catalog-shell-menu,
    .ubd-menu-card-v1933,
    .ubd-header-search-v1933 { transition: none !important; }
}

/* ================================================================
   1.9.37 · Submenú completo validado contra sitemap
   Capa final con selectores propios para evitar estilos antiguos.
   ================================================================ */

.ubd-menu-v1936 {
    --ubd-submenu-bg: #F1F3F2;
    --ubd-submenu-card: #FFFFFF;
    --ubd-submenu-paper: #FBF8F3;
    --ubd-submenu-ink: #17383E;
    --ubd-submenu-muted: #6B7D80;
    --ubd-submenu-line: rgba(23, 56, 62, .11);
    --ubd-submenu-shadow: 0 12px 28px rgba(23, 56, 62, .07);
}

/* Asegura que la lupa sea un enlace real y conserve el aspecto del header. */
.ubd-mod-actions > a.ubd-header-search-v1933,
.ubd-catalog-shell-actions > a.ubd-header-search-v1933 {
    text-decoration: none !important;
}

/* Corrige cualquier residuo oscuro en la tarjeta del asistente. */
.ubd-menu-v1936 :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--assistant {
    --ubd-card-bg: #F8D8CF !important;
    background: #F8D8CF !important;
    color: var(--ubd-submenu-ink) !important;
    border-color: rgba(242, 115, 80, .16) !important;
    box-shadow: 0 14px 30px rgba(242, 115, 80, .10) !important;
}

.ubd-menu-v1936 .ubd-menu-card--assistant .ubd-menu-icon-v1933 {
    background: rgba(255, 255, 255, .48) !important;
    color: var(--ubd-submenu-ink) !important;
}

.ubd-menu-v1936 .ubd-menu-card--assistant .ubd-menu-copy-v1933 > small {
    color: rgba(23, 56, 62, .68) !important;
}

/* Explorador: misma familia visual del Asistente / hubs. */
.ubd-menu-v1936 .ubd-menu-explorer-v1933 {
    border: 1px solid var(--ubd-submenu-line) !important;
    border-radius: 24px !important;
    background: var(--ubd-submenu-card) !important;
    box-shadow: var(--ubd-submenu-shadow) !important;
}

.ubd-menu-v1936 .ubd-menu-explorer-v1933 > summary {
    min-height: 82px !important;
    padding: 12px !important;
    background: #FFFFFF !important;
}

.ubd-menu-v1936 .ubd-menu-explorer-v1933 > summary .ubd-menu-icon-v1933 {
    width: 54px !important;
    height: 54px !important;
    min-width: 54px !important;
    min-height: 54px !important;
    border-radius: 17px !important;
    background: var(--ubd-submenu-ink) !important;
    color: #FFFFFF !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.16) !important;
}

.ubd-menu-v1936 .ubd-menu-explorer-v1933 > summary .ubd-menu-copy-v1933 > strong {
    font-size: clamp(21px, 5.2vw, 29px) !important;
}

.ubd-menu-v1936 .ubd-menu-explorer-v1933[open] > summary {
    border-bottom: 1px solid var(--ubd-submenu-line) !important;
    background: linear-gradient(180deg, #FFFFFF 0%, #FBFCFB 100%) !important;
}

.ubd-menu-v1936 .ubd-menu-explorer-panel-v1936 {
    display: grid !important;
    gap: 10px !important;
    padding: 10px !important;
    background:
        radial-gradient(circle at 100% 0, rgba(243, 197, 86, .12), transparent 26%),
        var(--ubd-submenu-bg) !important;
}

/* Accesos rápidos superiores. */
.ubd-menu-v1936 .ubd-menu-quick-grid-v1936 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

.ubd-menu-v1936 .ubd-menu-quick-v1936 {
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 9px !important;
    min-height: 54px !important;
    padding: 8px 10px !important;
    border: 1px solid rgba(23, 56, 62, .08) !important;
    border-radius: 16px !important;
    background: #FFFFFF !important;
    color: var(--ubd-submenu-ink) !important;
    box-shadow: 0 8px 18px rgba(23, 56, 62, .045) !important;
    text-decoration: none !important;
}

.ubd-menu-v1936 .ubd-menu-quick-v1936 > span {
    display: grid !important;
    place-items: center !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 12px !important;
    background: var(--ubd-submenu-paper) !important;
    color: var(--ubd-submenu-ink) !important;
}

.ubd-menu-v1936 .ubd-menu-quick-v1936 svg {
    width: 20px !important;
    height: 20px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.9 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.ubd-menu-v1936 .ubd-menu-quick-v1936 > strong {
    font-family: Manrope, Arial, sans-serif !important;
    font-size: 9.5px !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
}

.ubd-menu-v1936 .ubd-menu-quick--2 > span { background: rgba(243, 197, 86, .22) !important; }
.ubd-menu-v1936 .ubd-menu-quick--3 > span { background: rgba(149, 185, 108, .20) !important; }
.ubd-menu-v1936 .ubd-menu-quick--4 > span { background: rgba(242, 115, 80, .16) !important; }

/* Los grupos son acordiones grises, uniformes y fáciles de leer. */
.ubd-menu-v1936 .ubd-menu-groups-v1933 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 0 !important;
}

.ubd-menu-v1936 .ubd-menu-group-v1933 {
    overflow: hidden !important;
    border: 1px solid var(--ubd-submenu-line) !important;
    border-radius: 18px !important;
    background: var(--ubd-submenu-card) !important;
    box-shadow: 0 8px 18px rgba(23, 56, 62, .04) !important;
}

.ubd-menu-v1936 .ubd-menu-group-v1933 > summary {
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) 20px !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 62px !important;
    padding: 9px 11px !important;
    background: #FFFFFF !important;
    color: var(--ubd-submenu-ink) !important;
    list-style: none !important;
    cursor: pointer !important;
}

.ubd-menu-v1936 .ubd-menu-group-v1933[open] > summary {
    border-bottom: 1px solid var(--ubd-submenu-line) !important;
    background: #F8F9F8 !important;
}

.ubd-menu-v1936 .ubd-menu-group-icon-v1936 {
    display: grid !important;
    place-items: center !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 13px !important;
    background: #EEF1EF !important;
    color: var(--ubd-submenu-ink) !important;
}

.ubd-menu-v1936 .ubd-menu-group-icon-v1936 svg {
    width: 23px !important;
    height: 23px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.8 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.ubd-menu-v1936 .ubd-menu-group-copy-v1936 {
    display: grid !important;
    gap: 2px !important;
    min-width: 0 !important;
}

.ubd-menu-v1936 .ubd-menu-group-copy-v1936 > strong {
    color: var(--ubd-submenu-ink) !important;
    font-family: "Protest Strike", Impact, sans-serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: .98 !important;
    text-transform: uppercase !important;
}

.ubd-menu-v1936 .ubd-menu-group-copy-v1936 > small {
    color: var(--ubd-submenu-muted) !important;
    font-family: Manrope, Arial, sans-serif !important;
    font-size: 8px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

.ubd-menu-v1936 .ubd-menu-group-chevron-v1936 {
    display: grid !important;
    place-items: center !important;
    width: 20px !important;
    height: 20px !important;
    color: var(--ubd-submenu-muted) !important;
    transition: transform .18s ease !important;
}

.ubd-menu-v1936 .ubd-menu-group-chevron-v1936 svg {
    width: 18px !important;
    height: 18px !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 2.1 !important;
}

.ubd-menu-v1936 .ubd-menu-group-v1933[open] .ubd-menu-group-chevron-v1936 {
    transform: rotate(180deg) !important;
}

.ubd-menu-v1936 .ubd-menu-group-links-v1936 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
    padding: 8px !important;
    background: #F3F5F4 !important;
}

.ubd-menu-v1936 .ubd-menu-group-links-v1936 > a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    border: 1px solid rgba(23, 56, 62, .07) !important;
    border-radius: 13px !important;
    background: #FFFFFF !important;
    color: var(--ubd-submenu-ink) !important;
    box-shadow: none !important;
    font-family: Manrope, Arial, sans-serif !important;
    font-size: 8.5px !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-decoration: none !important;
}

.ubd-menu-v1936 .ubd-menu-group-links-v1936 > a > span {
    min-width: 0 !important;
}

.ubd-menu-v1936 .ubd-menu-group-links-v1936 > a > b {
    flex: 0 0 auto !important;
    color: var(--ubd-submenu-muted) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
}

.ubd-menu-v1936 .ubd-menu-group-links-v1936 > .ubd-menu-group-all-v1936 {
    grid-column: 1 / -1 !important;
    min-height: 44px !important;
    background: var(--ubd-submenu-ink) !important;
    color: #FFFFFF !important;
}

.ubd-menu-v1936 .ubd-menu-group-links-v1936 > .ubd-menu-group-all-v1936 > span {
    color: #FFFFFF !important;
}

/* Sutiles acentos del sistema, sin convertir cada bloque en un color diferente. */
.ubd-menu-v1936 .ubd-menu-group--dates .ubd-menu-group-icon-v1936 { background: rgba(243, 197, 86, .22) !important; }
.ubd-menu-v1936 .ubd-menu-group--recipient .ubd-menu-group-icon-v1936 { background: rgba(94, 165, 138, .16) !important; }
.ubd-menu-v1936 .ubd-menu-group--types .ubd-menu-group-icon-v1936 { background: rgba(149, 185, 108, .18) !important; }
.ubd-menu-v1936 .ubd-menu-group--delivery .ubd-menu-group-icon-v1936 { background: rgba(242, 150, 54, .18) !important; }
.ubd-menu-v1936 .ubd-menu-group--balloons .ubd-menu-group-icon-v1936 { background: rgba(179, 135, 209, .16) !important; }

@media (min-width: 700px) {
    .ubd-menu-v1936 .ubd-menu-groups-v1933 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        align-items: start !important;
    }
}

@media (max-width: 430px) {
    .ubd-menu-v1936 .ubd-menu-explorer-panel-v1936 {
        padding: 8px !important;
    }

    .ubd-menu-v1936 .ubd-menu-group-links-v1936 {
        grid-template-columns: 1fr !important;
    }

    .ubd-menu-v1936 .ubd-menu-group-links-v1936 > .ubd-menu-group-all-v1936 {
        grid-column: 1 !important;
    }
}

@media (max-width: 350px) {
    .ubd-menu-v1936 .ubd-menu-quick-grid-v1936 {
        grid-template-columns: 1fr !important;
    }
}

/* ================================================================
   1.9.37 · Paleta exacta del Hub Un Bonito Detalle
   ================================================================ */
:root {
    --ubd-menu-paper: #FBF8F3;
    --ubd-menu-ink: #18333A;
    --ubd-menu-muted: #64777B;
    --ubd-menu-line: rgba(24, 51, 58, .13);
    --ubd-menu-orange: #E7923C;
    --ubd-menu-coral: #E78252;
    --ubd-menu-yellow: #F7C668;
    --ubd-menu-green: #93B56D;
    --ubd-menu-teal: #5DA084;
    --ubd-menu-shadow: 0 24px 60px rgba(24, 51, 58, .18);
}

.ubd-menu-v1936 {
    --ubd-submenu-bg: #FBF8F3;
    --ubd-submenu-card: #FFFFFF;
    --ubd-submenu-paper: #FBF8F3;
    --ubd-submenu-ink: #18333A;
    --ubd-submenu-muted: #64777B;
    --ubd-submenu-line: rgba(24, 51, 58, .13);
    --ubd-submenu-shadow: 0 12px 28px rgba(24, 51, 58, .07);
}

.ubd-mod-menu-backdrop,
.ubd-catalog-shell-backdrop {
    background: rgba(24, 51, 58, .34) !important;
}

.ubd-mod-menu-sheet,
.ubd-catalog-shell-menu {
    background:
        radial-gradient(circle at 90% 8%, rgba(247, 198, 104, .16), transparent 25%),
        linear-gradient(180deg, #FFFFFF 0%, #FBF8F3 58%, #F2EEE7 100%) !important;
}

.ubd-mod-menu-head > button,
.ubd-catalog-shell-menu-head > button {
    background: var(--ubd-menu-yellow) !important;
    color: var(--ubd-menu-ink) !important;
}

/* Mosaico principal con la misma lógica visual del Hub: blanco + cinco acentos. */
.ubd-menu-v1936 :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card-v1933 {
    border-color: var(--ubd-menu-line) !important;
    box-shadow: 0 10px 24px rgba(24, 51, 58, .07) !important;
}

.ubd-menu-v1936 :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--breakfast {
    --ubd-card-bg: #FFFFFF !important;
    background: #FFFFFF !important;
}

.ubd-menu-v1936 :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--flowers {
    --ubd-card-bg: var(--ubd-menu-yellow) !important;
    background: var(--ubd-menu-yellow) !important;
}

.ubd-menu-v1936 :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--balloons {
    --ubd-card-bg: var(--ubd-menu-teal) !important;
    background: var(--ubd-menu-teal) !important;
    color: #FFFFFF !important;
}

.ubd-menu-v1936 :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--teddy {
    --ubd-card-bg: #FFFFFF !important;
    background: #FFFFFF !important;
}

.ubd-menu-v1936 :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--today {
    --ubd-card-bg: var(--ubd-menu-green) !important;
    background: var(--ubd-menu-green) !important;
}

.ubd-menu-v1936 :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--express {
    --ubd-card-bg: var(--ubd-menu-coral) !important;
    background: var(--ubd-menu-coral) !important;
    color: #FFFFFF !important;
}

.ubd-menu-v1936 :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--shipping {
    --ubd-card-bg: #FFFFFF !important;
    background: #FFFFFF !important;
}

.ubd-menu-v1936 :is(.ubd-mod-menu-grid, .ubd-catalog-shell-menu-grid) > .ubd-menu-card--assistant {
    --ubd-card-bg: var(--ubd-menu-ink) !important;
    background: var(--ubd-menu-ink) !important;
    color: #FFFFFF !important;
    border-color: transparent !important;
    box-shadow: 0 16px 34px rgba(24, 51, 58, .18) !important;
}

.ubd-menu-v1936 .ubd-menu-card-v1933 .ubd-menu-icon-v1933 {
    background: rgba(255, 255, 255, .70) !important;
    color: var(--ubd-menu-ink) !important;
}

.ubd-menu-v1936 .ubd-menu-card--balloons .ubd-menu-icon-v1933,
.ubd-menu-v1936 .ubd-menu-card--express .ubd-menu-icon-v1933,
.ubd-menu-v1936 .ubd-menu-card--assistant .ubd-menu-icon-v1933 {
    background: rgba(255, 255, 255, .17) !important;
    color: #FFFFFF !important;
}

.ubd-menu-v1936 .ubd-menu-card--balloons .ubd-menu-copy-v1933 > small,
.ubd-menu-v1936 .ubd-menu-card--express .ubd-menu-copy-v1933 > small,
.ubd-menu-v1936 .ubd-menu-card--assistant .ubd-menu-copy-v1933 > small {
    color: rgba(255, 255, 255, .86) !important;
}

/* Explorador y accesos rápidos con la paleta exacta del Hub. */
.ubd-menu-v1936 .ubd-menu-explorer-v1933 > summary .ubd-menu-icon-v1933 {
    background: var(--ubd-menu-ink) !important;
}

.ubd-menu-v1936 .ubd-menu-explorer-panel-v1936 {
    background:
        radial-gradient(circle at 100% 0, rgba(247, 198, 104, .15), transparent 27%),
        var(--ubd-menu-paper) !important;
}

.ubd-menu-v1936 .ubd-menu-quick-v1936 {
    border-color: var(--ubd-menu-line) !important;
    background: #FFFFFF !important;
    box-shadow: 0 8px 18px rgba(24, 51, 58, .055) !important;
}

.ubd-menu-v1936 .ubd-menu-quick--1 > span { background: var(--ubd-menu-orange) !important; color: #FFFFFF !important; }
.ubd-menu-v1936 .ubd-menu-quick--2 > span { background: var(--ubd-menu-yellow) !important; color: var(--ubd-menu-ink) !important; }
.ubd-menu-v1936 .ubd-menu-quick--3 > span { background: var(--ubd-menu-green) !important; color: var(--ubd-menu-ink) !important; }
.ubd-menu-v1936 .ubd-menu-quick--4 > span { background: var(--ubd-menu-coral) !important; color: #FFFFFF !important; }

.ubd-menu-v1936 .ubd-menu-group-v1933,
.ubd-menu-v1936 .ubd-menu-group-v1933 > summary {
    border-color: var(--ubd-menu-line) !important;
    background: #FFFFFF !important;
}

.ubd-menu-v1936 .ubd-menu-group-v1933[open] > summary,
.ubd-menu-v1936 .ubd-menu-group-links-v1936 {
    background: var(--ubd-menu-paper) !important;
}

.ubd-menu-v1936 .ubd-menu-group--occasions .ubd-menu-group-icon-v1936 { background: var(--ubd-menu-coral) !important; color: #FFFFFF !important; }
.ubd-menu-v1936 .ubd-menu-group--dates .ubd-menu-group-icon-v1936 { background: var(--ubd-menu-yellow) !important; color: var(--ubd-menu-ink) !important; }
.ubd-menu-v1936 .ubd-menu-group--recipient .ubd-menu-group-icon-v1936 { background: var(--ubd-menu-teal) !important; color: #FFFFFF !important; }
.ubd-menu-v1936 .ubd-menu-group--types .ubd-menu-group-icon-v1936 { background: var(--ubd-menu-green) !important; color: var(--ubd-menu-ink) !important; }
.ubd-menu-v1936 .ubd-menu-group--delivery .ubd-menu-group-icon-v1936 { background: var(--ubd-menu-orange) !important; color: #FFFFFF !important; }
.ubd-menu-v1936 .ubd-menu-group--balloons .ubd-menu-group-icon-v1936 { background: var(--ubd-menu-ink) !important; color: #FFFFFF !important; }

.ubd-menu-v1936 .ubd-menu-group-links-v1936 > a {
    border-color: rgba(24, 51, 58, .08) !important;
    background: #FFFFFF !important;
}

.ubd-menu-v1936 .ubd-menu-group-links-v1936 > .ubd-menu-group-all-v1936 {
    background: var(--ubd-menu-ink) !important;
    color: #FFFFFF !important;
}

/* Acciones inferiores como accesos rápidos del Hub. */
.ubd-menu-v1936 + .ubd-mod-menu-actions,
.ubd-menu-v1936 .ubd-mod-menu-actions {
    gap: 8px !important;
}

.ubd-mod-menu-actions > a {
    border: 1px solid var(--ubd-menu-line) !important;
    background: #FFFFFF !important;
    color: var(--ubd-menu-ink) !important;
    box-shadow: 0 8px 22px rgba(24, 51, 58, .08) !important;
}

.ubd-mod-menu-actions > a:first-child,
.ubd-mod-menu-actions > a:last-child {
    background: #FFFFFF !important;
    color: var(--ubd-menu-ink) !important;
}

.ubd-mod-menu-actions > a:first-child svg {
    color: #FFFFFF !important;
    background: var(--ubd-menu-teal) !important;
    border-radius: 11px !important;
    padding: 6px !important;
}

.ubd-mod-menu-actions > a:last-child svg {
    color: #FFFFFF !important;
    background: var(--ubd-menu-coral) !important;
    border-radius: 11px !important;
    padding: 6px !important;
}
