/* =========================================
   MODO MINIMALISTA - ESTILOS INDEPENDIENTES
   ========================================= */

/* -------------------------------------------------------------------------- */
/*  1. ALLERGEN LEGEND (STATIC) - ONLY FOR MINIMALIST MODE
/* -------------------------------------------------------------------------- */
.allergen-legend-static {
    display: none; /* Hidden by default, shown only in .mode-minimalist */
    margin: 60px auto 40px;
    padding: 30px;
    max-width: 1200px;
    border-top: 1px solid rgba(255,255,255,0.1);
    background: rgba(255,255,255,0.02);
    border-radius: 12px;
}

body.mode-light .allergen-legend-static {
    background: #f8f8f8;
    border: 1px solid #dddddd;
    box-shadow: 0 2px 10px rgba(0,0,0,0.03);
}

body.mode-light .allergen-legend-static .legend-item {
    color: #444;
}

body.mode-light .allergen-legend-static .legend-item span:first-child {
    color: var(--accent);
}

body.mode-minimalist .allergen-legend-static {
    display: block;
}

.allergen-legend-static .legend-title {
    color: var(--gold, #D4AF37);
    font-family: var(--font-heading);
    font-size: 1.2rem;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 25px;
    text-align: center;
}

.allergen-legend-static .legend-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 15px;
}

.allergen-legend-static .legend-item {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #ccc;
    font-size: 0.85rem;
}

.allergen-legend-static .legend-item img {
    width: 18px;
    height: 18px;
    opacity: 0.8;
}

.allergen-legend-static .legend-item span:first-child {
    color: var(--gold, #D4AF37);
    font-weight: 800;
}

@media (max-width: 768px) {
    .allergen-legend-static {
        margin: 40px 15px;
        padding: 20px;
    }
    .allergen-legend-static .legend-grid {
        grid-template-columns: 1fr 1fr;
    }
}

/* -------------------------------------------------------------------------- */
/*  2. OCULTAR ICONOS DE ALÉRGENOS (SOLO EN VISOR PÚBLICO MINIMALISTA)
/* -------------------------------------------------------------------------- */
body.mode-minimalist:not(.mode-editing) .allergen-row {
    display: none !important;
}

.mode-minimalist #menu-categories-container {
    padding-left: 20px !important; /* Desplazamiento total solicitado de 20px para categorías y productos */
}

.mode-minimalist .menu-grid {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 850px !important;
    margin: 0 auto !important;
    gap: 30px !important;
}

/* 🚀 Estilos para los números de alérgenos en formato original */
.allergen-num-sup {
    font-size: 0.75rem !important;
    color: var(--gold, #D4AF37) !important;
    font-weight: bold !important;
    margin-left: 5px !important;
    vertical-align: baseline !important;
    opacity: 0.9;
    letter-spacing: 0.5px;
    white-space: nowrap;
}

body.mode-light .allergen-num-sup {
    color: var(--accent-safe, #8b7322) !important;
}

/* Remove edit-mode boxes/borders for a cleaner minimalist feel */
/* En modo oscuro, mantenemos transparencia total para el look luxury */
body:not(.mode-light).mode-minimalist .menu-category,
body:not(.mode-light).mode-minimalist.mode-editing .menu-category {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* 🎨 ARCTIC ZEN PARA MINIMALISTA (MODO CLARO - 3 NIVELES) */
body.mode-light.mode-minimalist .menu-category {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

body.mode-light.mode-minimalist .menu-grid {
    background-color: transparent !important; /* Transparente solicitado para fondo total */
    border: none !important;
}

body.mode-light.mode-minimalist .menu-item {
    background-color: transparent !important; /* Transparente solicitado */
    border: none !important;
}

/* --- EFECTO GHOST PARA CATEGORÍA (Solo en Edición) --- */
.mode-minimalist.mode-editing .menu-category[data-visible="false"] .category-title {
    opacity: 0.5 !important;
    color: #555555 !important;
    -webkit-text-fill-color: #555555 !important;
    filter: grayscale(1) !important;
    text-shadow: none !important;
}

/* OCULTACIÓN TOTAL PARA EL PÚBLICO (Categorías e Items) */
.mode-minimalist:not(.mode-editing) .menu-category[data-visible="false"],
.mode-minimalist:not(.mode-editing) .menu-item[data-visible="false"] {
    display: none !important;
}

/* --- APAGAR BOTONES (CATEGORÍA Y ITEM) SI LA CATEGORÍA O EL ITEM ESTÁN OCULTOS --- */
.mode-minimalist .menu-category[data-visible="false"] .item-btn,
.mode-minimalist .menu-item[data-visible="false"] .item-btn,
.mode-minimalist .menu-category[data-visible="false"] .cat-btn,
.mode-minimalist .menu-category[data-visible="false"] .pc-reorder-handle {
    filter: grayscale(100%) !important;
    opacity: 0.3 !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: #555 !important;
    background: rgba(10, 10, 10, 0.3) !important;
    box-shadow: none !important;
    pointer-events: none; /* Quitamos !important para permitir la excepción de abajo */
}

/* EXCEPCIÓN VITAL: Destacar el botón de reactivación (Ojo tachado) */
.mode-minimalist .menu-category[data-visible="false"] .cat-btn.visibility,
.mode-minimalist .menu-item[data-visible="false"] .item-btn.visibility,
.mode-minimalist .menu-category[data-visible="false"] .item-btn.visibility { /* Añadido caso de item dentro de cat oculta */
    opacity: 0.9 !important;
    border: 1.5px solid #ffffff !important;
    color: #ffffff !important;
    background: rgba(40, 40, 40, 0.85) !important;
    filter: none !important;
    pointer-events: auto !important; /* Forzamos que siempre sea cliqueable */
    box-shadow: 0 0 10px rgba(0,0,0,0.5) !important;
}

/* Remove decorative lines and backgrounds in minimalist headers and footers */
.mode-minimalist .category-header {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: center !important;
    margin: 0 auto 1.75rem auto !important; /* Center by default with 28px bottom spacing */
    padding: 0 10px !important; /* Revertido a su valor original de 10px */
    width: 100% !important;
    max-width: 1200px !important; /* Match menu-grid width */
}

.mode-minimalist .category-header.has-decoration {
    border-bottom: 1.5px solid rgba(255, 255, 255, 0.15) !important;
    border-image: none !important; 
    padding-bottom: 15px !important;
    margin-bottom: 30px !important; /* Sincronizado para Zero-Drift */
}

body.mode-light.mode-minimalist .category-header.has-decoration {
    border-bottom: 1.5px solid rgba(0, 0, 0, 0.1) !important;
    border-image: none !important;
}


.mode-minimalist .item-controls-footer {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* Zero Background/Borders for menu items */
body.mode-minimalist .menu-item,
body.mode-minimalist.mode-editing .menu-item {
    display: grid !important;
    grid-template-columns: auto auto !important; /* Name on Left, Price on Right */
    column-gap: 0 !important; /* Dot handles spacing */
    justify-content: center !important;
    align-items: baseline !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto 5px auto !important; /* Ajustado de 45px a 5px (-40px) */
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    position: relative !important;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-sizing: border-box !important;
    text-align: center !important;
}

/* 🚀 EFECTO ELEVACIÓN ZEN (Solo letras, sin tarjeta) */
body.mode-minimalist .menu-item:hover {
    background: transparent !important;
    box-shadow: none !important;
    transform: translateY(-6px) scale(1.02) !important;
    border: none !important;
    z-index: 10;
}

body.mode-minimalist.mode-light .menu-item:hover {
    background: transparent !important;
    box-shadow: none !important;
}

/* Row wrapping logic for Description and Controls */
body.mode-minimalist .item-name,
body.mode-minimalist .item-price {
    grid-row: 1 !important;
}

body.mode-minimalist .item-desc {
    grid-row: 2 !important;
    grid-column: 1 / span 2 !important;
}

body.mode-minimalist .item-controls-footer {
    grid-row: 3 !important;
    grid-column: 1 / span 2 !important;
}

/* ESPACIADO GENEROSO PARA EDICIÓN: Evita solapamiento con botones */
body.mode-minimalist.mode-editing .menu-item {
    margin-top: 10px !important;
    margin-bottom: 1.8rem !important;
    padding-left: 12px !important; /* Espacio para que el recuadro de edición (outline) no se corte */
    padding-right: 12px !important;
}

/* 🚀 Estilo del botón + cuando está dentro de la descripción (Modo Minimalista Edit) */
.mode-minimalist.mode-editing .item-desc .allergen-add-btn {
    display: inline-flex !important;
    vertical-align: middle;
    width: 20px !important;
    height: 20px !important;
    margin-right: 6px !important;
    background: rgba(212, 175, 55, 0.1) !important;
    border: 1px dashed var(--admin-accent, #D4AF37) !important;
    border-radius: 4px;
    cursor: pointer;
    justify-content: center;
    align-items: center;
    font-size: 0.7rem !important;
    color: var(--admin-accent, #D4AF37) !important;
    transition: all 0.2s ease;
}

.mode-minimalist.mode-editing .item-desc .allergen-add-btn:hover {
    background: rgba(212, 175, 55, 0.2) !important;
    transform: scale(1.1);
}

/* Ocultar el contenedor original si está vacío para evitar saltos de línea */
body.mode-minimalist.mode-editing .item-controls-footer .item-allergen-col {
    display: none !important;
}

/* 🧱 BLOQUE INDIVISIBLE: Agrupar el + y los números para que no se separen */

/* Efecto hover más sutil para fuentes finas */

/* Fix for cut-off first item on PC */
body.mode-minimalist .menu-grid > .menu-item:first-child {
    margin-top: 5px !important; /* Generous clearance to avoid overlap with category title */
}

/* Suppress images even if forced by global hidden-item rules */
body.mode-minimalist .item-img, 
body.mode-minimalist .menu-item .item-img,
body.mode-minimalist .menu-item[data-visible="false"] .item-img,
body.mode-minimalist .menu-category[data-visible="false"] .item-img,
body.mode-minimalist .menu-category[data-visible="false"] .menu-item .item-img,
body.mode-minimalist .badge-wrapper,
body.mode-minimalist .product-badge {
    display: none !important; 
}

.mode-minimalist.mode-editing .logo-editable,
.mode-minimalist.mode-editing .category-title,
.mode-minimalist.mode-editing [contenteditable="true"] {
    outline: 2px dashed rgba(212, 175, 55, 0.5) !important; /* Restaurado grosor a 2px */
    outline-offset: 1px !important;
    border: 1px solid transparent !important;
    border-radius: 4px !important;
    background-color: rgba(212, 175, 55, 0.02); 
    transition: none !important; 
    padding: 0 !important; /* Evitamos saltos por cambio de padding */
}

/* Restaurar fondo sólido para botones primarios en edición */
.mode-minimalist.mode-editing .btn-primary[contenteditable="true"] {
    background-color: var(--accent) !important;
    color: var(--bg-dark) !important;
}

.mode-minimalist [contenteditable="true"]:focus {
    /* Mantiene color de texto original (habitualmente blanco) */
    border: 1px solid var(--admin-accent) !important; /* Línea continua ultrafina */
    outline: 2px dashed var(--admin-accent) !important; 
    outline-offset: 1px !important; 
    background: rgba(212, 175, 55, 0.1) !important; 
    border-radius: 4px !important;
    animation: none !important; /* Eliminamos animación de latido para evitar parpadeo */
    display: inline-block;
    padding: 0 !important; /* Sincronizado con el estado no enfocado */
}

.mode-minimalist.mode-editing *:not(.branding-sheet *):not(.org-modal-container *):not(.modal-overlay *), 
.mode-minimalist.mode-editing *:not(.branding-sheet *):not(.org-modal-container *):not(.modal-overlay *):focus {
    outline-color: var(--admin-accent) !important;
    border-color: var(--admin-accent) !important;
    transition: none !important;
}

/* Eliminamos los bordes/outlines de los elementos internos del logo para evitar el efecto de "doble borde" */
.mode-minimalist.mode-editing .logo-editable *,
.mode-minimalist.mode-editing #logo-container * {
    outline: none !important;
    border: none !important;
}

.mode-minimalist .item-name {
    display: inline-block !important; 
    font-family: var(--font-body) !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    color: #FFFFFF !important; /* Blanco fijo para máxima elegancia */
    margin: 0 !important;
    padding: 0 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    line-height: 1.0 !important; 
    text-align: right !important;
}

.mode-minimalist .item-name::after {
    content: "•";
    display: inline-block !important;
    margin: 0 16px !important; /* Elegant spacing */
    color: var(--accent);
    font-weight: 400;
    pointer-events: none;
}

/* Keep separator dot visible during editing to prevent horizontal jump */
body.mode-minimalist.mode-editing .item-name:focus::after,
body.mode-minimalist.mode-editing .item-name:active::after {
    display: inline-block !important;
}

.mode-minimalist .item-price {
    display: inline-block !important; 
    font-family: var(--font-body) !important;
    font-size: 0.65rem !important;
    font-weight: 400 !important; 
    color: #AAAAAA !important; /* Gris elegante para el precio */
    margin: 0 !important;
    padding: 0 !important;
    padding-left: 0 !important; /* Forzado a 0 en PC */
    border: none !important; /* Quita la lÃ­nea discontinua "tÃ­mida" */
    white-space: nowrap !important;
    text-align: left !important;
    width: auto !important; /* Importante: evita que se estire la columna en PC */
}

.mode-minimalist .item-desc {
    display: block !important; 
    width: 100% !important;
    min-height: 1.2em;
    padding: 2px 0; 
    margin: -18px auto 4px auto !important; /* Punto medio solicitado (era -25px) */
    text-align: center;
    font-size: 0.8rem !important;
    color: #B3B3B3 !important;
    font-weight: 300 !important;
    line-height: 1.1 !important; /* Unificado para PC y Móvil solicitado */
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important; 
    box-sizing: border-box !important;
    outline: none !important;
}

/* Reducción de interlineado unificada */
body.mode-minimalist:not(.mode-editing) .item-desc {
    line-height: 1.1 !important;
}

body.mode-editing.mode-minimalist .item-desc {
    margin-top: -15px !important;
}


body.mode-light.mode-minimalist .item-desc {
    color: #4b5563 !important;
}

/* Pill buttons in Minimalist Editor (Light Mode) */
body.mode-light.mode-minimalist .item-btn,
body.mode-light.mode-minimalist .cat-btn {
    border-radius: 4px !important; /* Sync with base 4px */
    background: #f8f8f8 !important;
    border: 1px solid #ced4da !important;
}

/* Force visibility of empty descriptions in edit mode */
.mode-minimalist.mode-editing .item-desc:empty {
    min-height: 1.2em !important;
    min-width: 150px !important;
    display: block !important;
    background: rgba(255, 255, 255, 0.03) !important;
    border: 1px dashed rgba(212, 175, 55, 0.3) !important;
    margin-bottom: 10px !important;
}

/* Hide empty descriptions in showcase */
.mode-minimalist:not(.mode-editing) .item-desc:empty {
    display: none !important;
}

.mode-minimalist .allergen-row {
    order: 10 !important; /* Below description but before price if needed */
    display: inline-flex !important;
    flex-wrap: wrap !important;
    width: auto !important; 
    justify-content: flex-start !important;
    align-items: center !important;
    margin: 4px 0 0 0 !important;
    padding: 0 !important;
}

.mode-minimalist .allergen-num-sup,
.mode-minimalist .allergen-block {
    font-size: 0.65rem !important;
    color: #aaaaaa !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    opacity: 1 !important;
    vertical-align: baseline !important;
    margin-left: 4px !important;
    /* --- LIMPIEZA DE BORDES: Solo en modo edición --- */
    border: none !important;
    outline: none !important;
}
.mode-editing.mode-minimalist .allergen-num-sup,
.mode-editing.mode-minimalist .allergen-block {
    outline: 1px dashed rgba(212, 175, 55, 0.4) !important;
    outline-offset: 2px !important;
}

.mode-minimalist .allergen-icon-wrapper {
    display: flex !important;
    align-items: center !important;
    gap: 3px !important;
    margin-right: 10px !important;
    background: rgba(255,255,255,0.05) !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
}

.mode-minimalist .allergen-icon-wrapper .allergen-num {
    font-size: 0.75rem !important;
    color: #eee !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

.mode-minimalist .allergen-icon-wrapper .allergen-icon {
    width: 14px !important;
    height: 14px !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.mode-minimalist .allergen-icon-wrapper .allergen-icon img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    filter: none !important; /* Restaurar color original */
    display: block !important;
}

/* Eliminado efecto hover glow */

.mode-minimalist .allergen-row::before {
    display: none !important; 
}

.mode-minimalist:not(.mode-editing) .allergen-add-btn {
    display: none !important; /* Solo ocultar para visitantes */
    width: 20px !important;
    height: 20px !important;
    font-size: 10px !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
    border-radius: 50% !important;
    opacity: 0.15 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

/* Edit mode placement: centered below the description row */
/* PREMIUN Allergen Management Button */
/* Allergen Management Button Moved to Footer in Edit Mode */
.mode-minimalist .item-btn.allergen i {
    font-size: 0.8rem !important;
}

body.mode-minimalist.mode-editing .allergen-row:not(:empty) {
    flex: 0 0 100% !important;
    display: flex !important;
    justify-content: center !important;
    margin-top: 8px !important;
    order: 15 !important; /* Force to bottom */
    width: 100% !important;
}

/* Ocultar si la fila no tiene contenido visible o estÃ¡ marcada como oculta */
body.mode-minimalist.mode-editing .allergen-row:empty,
body.mode-minimalist.mode-editing .allergen-row[hidden] {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.mode-minimalist.align-left.mode-editing .allergen-row {
    justify-content: flex-start !important;
    order: 10 !important; /* Below description */
}

.mode-minimalist .allergen-add-btn:hover {
    background: var(--accent) !important;
    color: #000 !important;
    opacity: 1 !important;
}

.mode-minimalist .menu-item:hover .allergen-add-btn {
    opacity: 1 !important;
    background: #D4AF37 !important;
    color: #000 !important;
}

/* Hide decorations & button by default (Graph mode) */
.mode-minimalist .cat-decoration-container,
.mode-minimalist .decoracion-svg {
    display: none !important;
}

/* 🎨 CATEGORY BUTTONS STYLE (Master Definition - Scoped to Minimalist) */
.mode-minimalist .cat-btn {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    border-radius: 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(10, 10, 10, 0.5) !important; /* Dark glass */
    border: 1px solid rgba(255, 255, 255, 0.4) !important;
    color: #ffffff !important;
    cursor: pointer !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    box-shadow: 0 4px 8px rgba(0,0,0,0.3) !important;
    transition: all 0.2s ease !important;
}

.mode-minimalist .cat-btn i {
    color: #ffffff !important;
    font-size: 0.75rem !important;
}

.mode-minimalist .cat-btn:hover {
    background: var(--admin-accent) !important; /* Fondo Dorado Sólido */
    color: #000000 !important;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.6) !important; /* Resplandor dorado */
}

.mode-minimalist .cat-btn:hover i {
    color: #000000 !important;
    -webkit-text-fill-color: #000000 !important;
}

/* Special Case: Decoration Button */
.mode-minimalist .cat-btn.decoration {
    display: none !important;
}

/* Show only in Minimalist Mode */
.mode-minimalist .menu-category {
    position: relative !important;
}

.mode-minimalist .cat-decoration-container,
.mode-minimalist .decoracion-svg,
.mode-minimalist .cat-btn.decoration {
    display: inline-flex !important;
}

.mode-minimalist .cat-decoration-container {
    position: absolute !important;
    width: auto !important;
    height: auto !important;
    pointer-events: none !important;
    z-index: 0 !important;
    opacity: 0.25 !important; /* Increased for better visibility (was 0.12) */
}

/* DYNAMIC POSITIONS (Zig-Zag Pattern: Left-Right-Left-Right) */
.mode-minimalist .menu-category .cat-decoration-container.deco-pos-1 {
    top: 5% !important;
    left: 2% !important;
    transform: rotate(-10deg) !important;
}

.mode-minimalist .menu-category .cat-decoration-container.deco-pos-2 {
    top: auto !important;
    bottom: 5% !important;
    left: auto !important;
    right: 2% !important;
    transform: rotate(15deg) !important;
}

.mode-minimalist .menu-category .cat-decoration-container.deco-pos-3 {
    top: 5% !important;
    left: 2% !important;
    transform: rotate(10deg) !important; /* Opuesta a pos-1 */
}

.mode-minimalist .menu-category .cat-decoration-container.deco-pos-4 {
    top: auto !important;
    bottom: 5% !important;
    left: auto !important;
    right: 2% !important;
    transform: rotate(-15deg) !important; /* Opuesta a pos-2 */
}

.mode-minimalist .cat-decoration-container svg,
.mode-minimalist .cat-decoration-container img {
    width: 320px !important; /* Slightly smaller for better corner fit */
    height: 320px !important;
    object-fit: contain !important;
    color: var(--accent);
    filter: blur(0.5px);
}

.mode-minimalist .category-header,
.mode-minimalist .menu-grid {
    position: relative !important;
    z-index: 1 !important;
}

/* Adjusted for Mobile (Visible and smaller) */
@media (max-width: 768px) {
    .mode-minimalist .cat-decoration-container svg,
    .mode-minimalist .cat-decoration-container img {
        width: 140px !important;
        height: 140px !important;
    }
}
.mode-minimalist .item-controls-footer {
    display: flex !important; 
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important; /* Spacing between ALL buttons */
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    transition: opacity 0.2s ease, height 0.2s ease !important;
    margin: 0 !important;
    width: 100% !important; 
    order: 10 !important;
    background: transparent !important;
    border: none !important;
    pointer-events: none;
}

/* Global Edit Mode Visibility for PC and Mobile */
body.mode-minimalist.mode-editing .item-controls-footer {
    opacity: 1 !important;
    height: auto !important;
    margin-top: -25px !important;
    padding: 0 !important; /* Elimina todo remanente de espacio vertical */
    pointer-events: auto !important;
    overflow: visible !important;
}



/* Reorder handle visible and centered in minimalist */
.mode-minimalist .pc-reorder-handle {
    display: flex !important;
    margin: 0 auto !important;
}

/* 🚀 Restricted Handle Cursor (Fixes Non-Instant Response) */
.mode-minimalist .menu-item {
    cursor: default !important;
}
.mode-minimalist .pc-reorder-handle {
    cursor: grab !important; 
}

body.mode-minimalist.mode-editing .item-controls-footer {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    padding: 0 10px !important;
    margin-top: -25px !important;
}

/* Isolated groups */
.mode-minimalist .item-allergen-col {
    display: flex !important;
    flex: 0 0 40px !important;
}

.mode-minimalist .item-actions-col {
    display: flex !important;
    gap: 0 !important; /* El espacio lo gestiona el space-between */
    align-items: center !important;
    flex-grow: 1 !important;
    justify-content: space-between !important; /* Reparto en 3 bloques */
    margin: 0 !important; /* Limpiar márgenes antiguos */
    padding: 0 5px !important;
}

/* Restoring Groups for Split Layout */
.mode-minimalist .item-reorder-group,
.mode-minimalist .item-delete-group {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important; /* Group internal spacing */
}

/* Handle logic updated above */
/* Hide grip on mobile for a cleaner look */
@media (max-width: 768px) {
    .mode-minimalist .pc-reorder-handle {
        display: none !important;
    }
    
    /* Mayor especificidad para ganar a la regla global de PC */
    body.mode-minimalist.mode-editing .item-controls-footer {
        gap: 8px !important;
        margin-top: 50px !important; /* Aumentado drásticamente para móvil */
    }
	
	/* Espaciado superior para todos los títulos de sección en Minimalista */
	/* --- SECCIONES: COMPACTACIÓN DE ESPACIO VERTICAL --- */
body.mode-minimalist .section {
    padding: 10px 0 !important;
}

/* Compensación de la barra de Admin (60px) para evitar el salto visual (Zero-Drift) */
body.mode-minimalist:not(.mode-editing) #menu {
    padding-top: 70px !important; /* 10px base + 60px de la barra de admin */
}

body.mode-minimalist.mode-editing #menu {
    padding-top: 10px !important;
}
 /* Reducido otros 20px */

body.mode-minimalist .section-title {
		margin-top: 0px !important; /* Reducido otros 20px (totalmente pegado) */
		margin-bottom: 30px !important; /* Espacio con el contenido de abajo */
	}

	/* Ajuste de posición del título dinámico (Sticky Header) en móvil */
	.mode-minimalist .dynamic-title-container {
		margin-left: -10px !important; 
		margin-right: 15px !important; /* Despeja el espacio del icono de menú */
		width: calc(100% - 5px) !important;
	}
}

/* Restoring Groups for Split Layout */
body.mode-minimalist .item-reorder-group,
body.mode-minimalist .item-delete-group {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important; /* Group internal spacing */
}

/* Individual Floating Icons Style - Premium Glass Identity */
.mode-minimalist .editor-btn,
.mode-minimalist .item-btn,
.mode-minimalist .pc-reorder-handle {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(15, 15, 15, 0.9) !important;
    border: 1px solid rgba(212, 175, 55, 0.4) !important;
    color: #D4AF37 !important;
    opacity: 1;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    font-size: 0.9rem !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3) !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
    pointer-events: auto !important;
}

.mode-minimalist .pc-reorder-handle {
    cursor: grab !important;
    margin: 0 auto !important;
}

/* --- CIRCULAR DASHED ALLERGEN BUTTON (Photo style consistent) --- */
.mode-minimalist .item-btn.allergen {
    border-radius: 50% !important;
    border: 1.5px dashed var(--admin-accent) !important;
    background: rgba(10, 10, 10, 0.4) !important;
    color: #888888 !important; /* Icono grisÃ¡ceo en reposo */
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.mode-minimalist .item-btn.allergen:hover {
    background: rgba(212, 175, 55, 0.1) !important;
    border: 1.5px solid var(--admin-accent) !important;
    color: var(--admin-accent) !important;
    box-shadow: 0 0 12px rgba(212, 175, 55, 0.4) !important;
    transform: scale(1.1) !important;
}

.mode-minimalist .item-btn.allergen i {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

/* --- Golden Active State for Visibility and Management (Photo style consistent) --- */
body.mode-minimalist .cat-btn.visibility.active,
body.mode-minimalist .item-btn.visibility.active,
body.mode-minimalist .cat-btn.active,
body.mode-minimalist .item-btn.active {
    background: rgba(10, 10, 10, 0.6) !important; /* Mantener cristal oscuro como en la captura */
    border: 1.5px solid var(--admin-accent) !important; /* Borde dorado */
    color: var(--admin-accent) !important;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.3) !important; /* Brillo dorado suave */
}

body.mode-minimalist .cat-btn.visibility.active i,
body.mode-minimalist .item-btn.visibility.active i,
body.mode-minimalist .cat-btn.active i,
body.mode-minimalist .item-btn.active i {
    color: var(--admin-accent) !important;
    -webkit-text-fill-color: var(--admin-accent) !important;
    opacity: 1 !important;
}

body.mode-minimalist .item-btn i {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* --- Disabled State for Reorder Buttons (Photo style consistent) --- */
.mode-minimalist .cat-btn[disabled],
.mode-minimalist .item-btn[disabled] {
    opacity: 0.2 !important; /* Muy tenue como en la captura */
    pointer-events: none !important;
    cursor: default !important;
    filter: grayscale(1) !important;
    box-shadow: none !important; /* Sin brillos */
}

.mode-minimalist .item-btn:hover,
.mode-minimalist .cat-btn:hover,
.mode-minimalist .pc-reorder-handle:hover {
    background: var(--admin-accent) !important;
    color: #000000 !important;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.6) !important;
    transform: scale(1.1);
}

/* --- Current Design: Gold Border + Black Background --- */
.mode-minimalist .cat-btn.delete:hover,
.mode-minimalist .item-btn.delete:hover,
.mode-minimalist .delete-btn:hover {
    background: #000 !important;
    color: #fff !important;
    border-color: var(--admin-accent) !important;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.4) !important;
}

.mode-minimalist .item-btn:hover i,
.mode-minimalist .cat-btn:hover i,
.mode-minimalist .pc-reorder-handle:hover i {
    color: #000000 !important;
    -webkit-text-fill-color: #000000 !important;
}

.mode-minimalist .cat-btn.delete:hover i,
.mode-minimalist .item-btn.delete:hover i,
.mode-minimalist .delete-btn:hover i {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* --- EDIT MODE CONTROLS (CATEGORY) --- */
.mode-minimalist.mode-editing .category-controls {
    display: flex !important;
    justify-content: center !important;
    gap: 18px !important; /* Separated a bit more as requested */
    margin-bottom: 25px !important; /* More space before the title */
    width: 100% !important;
}

body.mode-minimalist .category-title, 
body.mode-minimalist:not(.mode-editing) .category-title {
    display: block !important;
    text-align: center !important;
    font-family: var(--font-heading) !important;
    font-size: 2.2rem !important; /* ~34px (2rem - 2.25rem) */
    font-weight: 700 !important;
    color: var(--accent) !important;
    text-transform: uppercase !important;
    margin-top: 10px !important;
    margin-bottom: 0 !important; 
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    border: none !important;
    letter-spacing: 2px !important;
    width: 100% !important;
    line-height: 1.1 !important;
}

/* ==========================================================================
   🎯 ZONA: AJUSTES EXCLUSIVOS PARA PC (ESCRITORIO > 768px)
   Unifica el diseño con la versión móvil pero a mayor escala.
   ========================================================================== */
@media (min-width: 769px) {
    /* GRID BASE: Estructura Idéntica a Móvil pero Mayor Escala */
    body.mode-minimalist .menu-item {
        display: grid !important;
        grid-template-columns: auto auto !important;
        grid-template-rows: auto auto auto !important;
        align-items: baseline !important;
        margin-bottom: -25px !important;
        max-width: 900px !important; /* Sutilmente más ancho en PC */
    }

    /* TIPOGRAFÍA: Escalada para Pantallas Grandes */
    body.mode-minimalist .item-name {
        grid-row: 1 !important;
        grid-column: 1 !important;
        font-size: 1.1rem !important; /* ~18px versus 0.85rem en móvil */
        letter-spacing: 1px !important;
    }

    body.mode-minimalist .item-price {
        grid-row: 1 !important;
        grid-column: 2 !important;
        font-size: 0.85rem !important; /* ~14px versus 0.65rem en móvil */
        margin-left: 10px !important;
    }

    body.mode-minimalist .item-desc {
        grid-row: 2 !important;
        grid-column: 1 / span 2 !important;
        font-size: 0.9rem !important; /* ~14.5px versus 0.75rem en móvil */
        margin-top: -18px !important; /* Sincronizado con móvil */
        margin-bottom: 5px !important; /* Reducido de 10px para un bloque más compacto */
    }
    body.mode-editing.mode-minimalist .item-desc {
        margin-top: -15px !important;
    }

    /* ALINEACIÓN PC: Adaptada del Algoritmo Móvil */
    
    /* CENTRADO PC (Balanced Grid) */
    body.mode-minimalist.align-center .menu-item {
        justify-content: center !important;
        grid-template-columns: 1fr auto auto 1fr !important;
    }
    body.mode-minimalist.align-center .item-name { 
        text-align: right !important; 
        grid-column: 2 !important;
    }
    body.mode-minimalist.align-center .item-price { 
        text-align: left !important; 
        grid-column: 3 !important;
    }
    body.mode-minimalist.align-center .item-desc,
    body.mode-minimalist.align-center .allergen-row,
    body.mode-minimalist.align-center .item-controls-footer {
        text-align: center !important;
        grid-column: 1 / -1 !important;
    }

    /* IZQUIERDA PC (Standard Grid) */
    body.mode-minimalist.align-left .menu-item {
        justify-content: start !important;
        grid-template-columns: auto auto 1fr !important;
    }
    body.mode-minimalist.align-left .item-name { text-align: left !important; }
    body.mode-minimalist.align-left .item-price { text-align: left !important; }
    /* Vista Final (Más pegado) */
    body:not(.mode-editing).mode-minimalist.align-left .item-desc {
        text-align: left !important;
        grid-column: 1 / -1 !important;
        margin-top: -18px !important; /* Compactado máximo para el cliente final */
        margin-bottom: 10px !important;
    }

    /* Modo Edición (Respiro para editar) */
    body.mode-editing.mode-minimalist.align-left .item-desc {
        text-align: left !important;
        grid-column: 1 / -1 !important;
        margin-top: -12px !important; /* El valor que te ha gustado para editar */
        margin-bottom: 10px !important;
    }
    body.mode-minimalist.align-left .allergen-row {
        text-align: left !important;
        grid-column: 1 / -1 !important;
    }
    body.mode-minimalist.align-left .item-controls-footer {
        text-align: left !important;
        grid-column: 1 / -1 !important;
        justify-content: flex-start !important;
        margin-top: -10px !important; /* Ajuste solicitado por el usuario */
    }

    /* REORDENACIÓN DE CABECERA DE CATEGORÍA (Botones arriba del título) */
    body.mode-minimalist.mode-editing .category-header {
        display: flex !important;
        flex-direction: row !important; /* Volvemos a fila */
        flex-wrap: wrap !important;     /* Pero permitimos salto */
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
    }

    body.mode-minimalist.mode-editing .category-controls,
    body.mode-minimalist.mode-editing .cat-reorder-group {
        flex: 0 0 100% !important;      /* Ocupan toda la fila 1 */
        display: flex !important;
        justify-content: center !important;
        order: 1 !important;
        margin-bottom: 10px !important;
        margin-top: 10px !important;
    }

    body.mode-minimalist.mode-editing .toggle-icon {
        order: 2 !important;            /* Fila 2 */
        display: inline-block !important;
        margin-right: 15px !important;  /* Separación del título */
        color: var(--accent) !important;
        font-size: 1.2rem !important;
        cursor: pointer !important;
    }

    body.mode-minimalist.mode-editing .category-title {
        order: 2 !important;            /* Fila 2 */
        width: auto !important;         /* Ya no ocupa el 100%, para que el icono quepa al lado */
        margin-top: 0 !important; 
        text-align: center !important;
    }

    /* Ajuste de alineación lateral en PC (Sincronizado Zero-Drift) */
    body.mode-minimalist.align-left .category-header,
    body.mode-minimalist.align-left .category-title {
        text-align: left !important;
        justify-content: flex-start !important;
        margin-left: auto !important;
        margin-right: auto !important;
        max-width: 1200px !important;
        display: flex !important;
    }
}

body.mode-minimalist.align-center .category-header,
body.mode-minimalist.align-center .category-title,
body.mode-minimalist.align-center .menu-grid {
    text-align: center !important;
    justify-content: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.mode-minimalist.align-left .category-header,
body.mode-minimalist.align-left .menu-grid {
    text-align: left !important;
    justify-content: flex-start !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: flex !important;
    width: 100% !important;
    max-width: 1200px !important;
    transform: translateX(-10px) !important;
}

/* Regla específica para el TÍTULO en alineación izquierda para evitar solapamiento con el icono */
body.mode-minimalist.align-left .category-title {
    text-align: left !important;
    width: auto !important; /* CRUCIAL: No forzar 100% para que quepa el icono al lado */
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* El plato (.menu-item) debe mantener su grid interno para el precio */
body.mode-minimalist.align-left .menu-item {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 1200px !important;
    transform: translateX(-10px) !important; /* Sincronizado con la cuadrícula */
}

.mode-minimalist .decoracion-svg {
    position: absolute;
    top: 50%; 
    width: 150px;
    pointer-events: none; 
    z-index: -1; 
}

.mode-minimalist .decoracion-svg svg {
    width: 100%;
    height: auto;
    fill: #ffffff; 
    opacity: 0.8;
}

.mode-minimalist .decoracion-svg.izquierda {
    left: 0px; 
    transform: translateY(-50%) rotate(-10deg);
}

/* Shrink Structural Elements */
.mode-minimalist .category-separator,
.mode-minimalist .add-item-container {
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    min-height: 0 !important;
}

body.mode-minimalist:not(.mode-editing) .category-separator,
body.mode-minimalist:not(.mode-editing) .add-item-container {
    display: none !important; /* Hide completely in showcase to save space */
}

/* ESPACIADO PARA SEPARADORES EN EDICIÓN */
.mode-minimalist.mode-editing .add-item-container,
.mode-minimalist.mode-editing .category-separator {
    min-height: 50px !important; 
    padding: 15px 0 !important;
    margin: 20px 0 !important;
    display: flex !important;
}

.mode-minimalist .separator-btn,
.mode-minimalist .add-item-btn {
    margin: 0 !important;
}


/* ==========================================================================
   🛡️ ZONA BLINDADA: MOVIL (NO MODIFICAR SIN ORDEN EXPRESA DE REVISIÓN MÓVIL)
   Esta sección controla el diseño perfecto validado para móviles.
   ========================================================================== */
@media (max-width: 768px) {
    /* 1. MÁRGENES LATERALES COMUNES (Espacio máximo para que nada salte de línea) */
    .mode-minimalist .container {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .mode-minimalist .decoracion-svg {
        display: block !important; 
        width: 100px !important;
    }

    /* 🛠️ SECCIÓN A: MODO EDICIÓN (Estructura de Trabajo) */

    /* Categoría en Edición: Grid para el icono dorado */
    .mode-minimalist.mode-editing .category-header {
        display: grid !important;
        grid-template-columns: 30px 1fr !important;
        grid-template-rows: auto auto !important; 
        justify-items: start !important;
        gap: 0px !important; 
        margin: 0 0 30px 0 !important; /* Sincronizado con Vista Previa */
    }

    .mode-minimalist.mode-editing .category-controls {
        grid-row: 1 !important;
        grid-column: 1 / span 2 !important;
        display: flex !important;
        justify-content: center !important; 
        gap: 10px !important;
        margin-bottom: 10px !important;
        width: 100% !important;
    }

    .mode-minimalist.mode-editing .toggle-icon {
        display: block !important;
        grid-row: 2 !important;
        grid-column: 1 !important;
        color: var(--accent) !important;
        font-size: 1rem !important;
        align-self: center !important;
    }

    body.mode-minimalist.mode-editing .category-title {
        grid-row: 2 !important;
        grid-column: 2 !important;
        font-size: 2.2rem !important;
        text-align: left !important;
        margin: 15px 0 30px 0 !important; /* Sincronizado para Zero-Drift */
        display: block !important;
    }

    /* Plato en Edición: Grid Estable */
    body.mode-minimalist.mode-editing .menu-item {
        display: grid !important;
        grid-template-columns: auto auto !important;
        align-items: baseline !important;
        margin-bottom: 5px !important; /* Sincronizado con los 5px de Vista Previa */
        padding: 0 !important;
        width: 100% !important;
    }

    body.mode-minimalist.mode-editing .item-name {
        grid-row: 1 !important;
        grid-column: 1 !important;
        display: inline-block !important;
    }

    body.mode-minimalist.mode-editing .item-price {
        grid-row: 1 !important;
        grid-column: 2 !important;
        padding-left: 5px !important;
        display: inline-block !important;
    }

    body.mode-minimalist.mode-editing .item-desc {
        grid-row: 2 !important;
        grid-column: 1 / -1 !important;
        margin-top: -10px !important; /* Ajustado para separar 10px */
        margin-bottom: 10px !important;
        background: rgba(255, 255, 255, 0.05) !important;
        line-height: 1.2 !important; /* Interlineado mÃ¡s compacto */
        width: 100% !important;
        display: block !important;
    }

    /* Controles pegados a la descripción */
    body.mode-minimalist.mode-editing .item-controls-footer {
        grid-row: 3 !important;
        grid-column: 1 / -1 !important;
        display: flex !important;
        margin-top: -30px !important; /* Ajustado para separar 10px */
        justify-content: center !important;
        gap: 10px !important;
        height: auto !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    /* BLOQUE DE VISTA PREVIA REDUNDANTE ELIMINADO PARA EVITAR CONFLICTOS */


    /* =========================================
       🎯 INTELIGENCIA DE ALINEACIÓN (L/R/C)
       ========================================= */
    
    /* CATEGORÍAS */
    body.mode-minimalist.align-center .category-title { text-align: center !important; }
    body.mode-minimalist.align-left .category-header { justify-content: flex-start !important; text-align: left !important; }
    body.mode-minimalist.align-left .category-title { text-align: left !important; }

    /* PLATOS: CENTRADO (Balanced 4-Column Grid) */
    body.mode-minimalist.align-center .menu-item { 
        justify-content: center !important; 
        grid-template-columns: 1fr auto auto 1fr !important;
    }
    body.mode-minimalist.align-center .item-name { 
        text-align: right !important; 
        grid-column: 2 !important;
    }
    body.mode-minimalist.align-center .item-price { 
        text-align: left !important; 
        grid-column: 3 !important;
    }
    body.mode-minimalist.align-center .item-desc { 
        text-align: center !important; 
        grid-column: 1 / -1 !important;
    }
    body.mode-minimalist.align-center .item-controls-footer { 
        justify-content: center !important; 
        grid-column: 1 / -1 !important;
    }

    /* BLOQUE DUPLICADO ELIMINADO - CENTRALIZADO ARRIBA */

    /* Título de categoría: Estilos base */
    body.mode-minimalist .category-title {
        font-size: 2.2rem !important; 
        width: 100% !important;
        display: block !important;
        margin: 15px 0 30px 0 !important; /* Sincronizado para Zero-Drift */
    }

    /* Limpieza total para el cliente */
    .mode-minimalist:not(.mode-editing) .category-controls,
    .mode-minimalist:not(.mode-editing) .item-controls-footer,
    .mode-minimalist:not(.mode-editing) .toggle-icon,
    .mode-minimalist:not(.mode-editing) .add-item-container {
        display: none !important;
    }

    /* --- 🛡️ BARRA DE NAVEGACIÓN --- */
    .mode-minimalist .nav-container,
    .mode-minimalist .navbar,
    .mode-minimalist header .container {
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
	
	/* 🏗️ AJUSTE FINO DEL TÍTULO DE CATEGORÍA */
    body.mode-minimalist.mode-editing .category-title,
    body.mode-minimalist:not(.mode-editing) .dynamic-title-container {
        padding-left: 15px !important;
        padding-right: 11px !important;
        box-sizing: border-box !important;
    }
}
/* =========================================
   ✨ ALLERGEN LEGEND (Minimalist Exclusive)
   ========================================= */
.menu-allergen-legend { display: none; }
.mode-minimalist .menu-allergen-legend {
    display: block !important;
    max-width: 1200px;
    margin: 60px auto 40px auto !important;
    padding: 30px 20px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
}
.mode-minimalist .legend-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important; /* 3 columnas en PC */
    gap: 15px !important;
    margin-top: 15px;
}
.mode-minimalist .legend-item {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 0.75rem !important;
    color: #B3B3B3 !important;
}
.mode-minimalist .legend-num {
    font-weight: 700 !important;
    color: var(--accent) !important;
    min-width: 25px;
}
.mode-minimalist .legend-item img {
    width: 20px !important;
    height: 20px !important;
    object-fit: contain !important;
    opacity: 0.9;
}

/* Blindaje contra edición accidental (CSS) */
#allergen-legend-static, 
#allergen-legend-static *,
.allergen-disclaimer-injected,
.allergen-disclaimer-injected * {
    outline: none !important;
    box-shadow: none !important;
    border-bottom: none !important; /* Quitar líneas punteadas de edición */
}
@media (max-width: 768px) {
    .mode-minimalist .legend-grid { grid-template-columns: repeat(2, 1fr) !important; }
    
    /* Parche Movil: Estabilidad en edicion */
    body.mode-minimalist.mode-editing [contenteditable="true"] {
        box-sizing: border-box !important;
        word-break: break-word !important; 
        overflow-wrap: break-word !important;
    }
    
    body.mode-minimalist.mode-editing [contenteditable="true"]:focus {
        outline-offset: 1px !important; /* Sincronizado */
    }
}

/* ANIMACIÓN DE LATIDO PREMIUM */
@keyframes editPulse {
    0% { transform: scale(1); box-shadow: 0 0 5px rgba(212, 175, 55, 0.3); }
    50% { transform: scale(1.02); box-shadow: 0 0 15px rgba(212, 175, 55, 0.6); }
    100% { transform: scale(1); box-shadow: 0 0 5px rgba(212, 175, 55, 0.3); }
}

/* Studio White Consistency (Light Mode) */
body.mode-light .menu-grid {
    background-color: #fcfcfc !important;
}

body.mode-light.mode-minimalist .category-title {
    color: var(--accent) !important; /* Recuperar color corporativo */
    text-shadow: none !important;
}

/* Forzar línea de separación en modo Zen Claro */
body.mode-light.mode-minimalist .category-header {
    border-bottom: 1.5px solid rgba(0, 0, 0, 0.2) !important;
}

/* Efecto visual al pasar el ratón (Feedback de que se puede pulsar) */
.mode-minimalist .allergen-block:hover {
    background: transparent !important;
    text-decoration: none !important;
    opacity: 1 !important;
}

/* Efecto de pulsación */
.mode-minimalist .allergen-block:active {
    transform: scale(0.96);
}

/* Estilo para el botón '+' integrado */
.mode-minimalist .allergen-add-btn {
    display: inline-flex !important;
    width: 12px;
    height: 12px;
    border-radius: 50% !important;
    background: var(--accent);
    color: white !important;
    align-items: center;
    justify-content: center;
    cursor: pointer !important;
    pointer-events: all !important;
    margin-right: 4px;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}
.mode-minimalist .allergen-add-btn i {
    font-size: 0.45rem !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* --- REFUERZO DE COLUMNA ÚNICA (RESCATE) --- */
body.mode-minimalist .menu-grid {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}