/* ============================================================
   Panel Menu Widgets v2 — Elementor
   ============================================================ */

.pmw-pills-wrap,
.pmw-grid-wrap {
    --pmw-blue:   #2563EB;
    --pmw-blue-l: #EFF6FF;
    --pmw-ink:    #111827;
    --pmw-ink-s:  #374151;
    --pmw-muted:  #9CA3AF;
    --pmw-border: #E5E7EB;
    --pmw-bg:     #F9FAFB;
    --pmw-rs:     6px;
    --pmw-font:   'DM Sans', 'Inter', system-ui, sans-serif;
    --pmw-font-d: 'Outfit', 'DM Sans', system-ui, sans-serif;
    font-family:  var(--pmw-font);
    width:        100%;
    box-sizing:   border-box;
    padding:      0 10px;
}

/* ── Titre de section ────────────────────────────────────────── */
.pmw-section-title {
    font-size:      10px;
    font-weight:    700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color:          var(--pmw-muted);
    margin-bottom:  6px;
}

/* ── Pills ───────────────────────────────────────────────────── */
.pmw-pills {
    display:  flex;
    flex-wrap:wrap;
    gap:      5px;
}
.pmw-pill {
    padding:         4px 10px;
    border:          1.5px solid var(--pmw-border);
    border-radius:   50px;
    font-size:       11px;
    font-weight:     500;
    color:           var(--pmw-ink-s);
    text-decoration: none;
    transition:      border-color .15s, color .15s;
    white-space:     nowrap;
}
.pmw-pill:hover { border-color: var(--pmw-blue); color: var(--pmw-blue); }
.pmw-pill.pmw-featured {
    border-color: var(--pmw-blue);
    background:   var(--pmw-blue-l);
    color:        var(--pmw-blue);
}

/* ── Grille ──────────────────────────────────────────────────── */
.pmw-grid {
    display:               grid;
    grid-template-columns: 1fr;
    gap:                   6px;
    width:                 100%;
    box-sizing:            border-box;
}
.pmw-cols-2 { grid-template-columns: 1fr 1fr; }

/* ── Card produit — même style pour tous ────────────────────── */
.pmw-prod-card {
    display:         flex;
    align-items:     center;
    gap:             8px;
    padding:         7px 8px;
    background:      var(--pmw-bg);
    border:          1.5px solid var(--pmw-border);
    border-radius:   var(--pmw-rs);
    text-decoration: none;
    transition:      border-color .18s;
    box-sizing:      border-box;
    width:           100%;
    overflow:        hidden;
}
.pmw-prod-card:hover { border-color: var(--pmw-blue); }

/* Image — même taille partout */
.pmw-prod-img,
.pmw-prod-img-big {
    width:           36px;
    height:          36px;
    min-width:       36px;
    background:      #fff;
    border-radius:   var(--pmw-rs);
    display:         flex;
    align-items:     center;
    justify-content: center;
    overflow:        hidden;
    flex-shrink:     0;
    position:        relative;
}
.pmw-prod-thumb {
    width:         36px;
    height:        36px;
    object-fit:    cover;
    border-radius: var(--pmw-rs);
    display:       block;
}

.pmw-prod-emoji { font-size: 18px; }

/* Badge */
.pmw-prod-badge {
    position:      absolute;
    top:           -3px;
    right:         -3px;
    font-size:     8px;
    font-weight:   700;
    letter-spacing:.4px;
    text-transform:uppercase;
    padding:       1px 4px;
    border-radius: 3px;
    background:    #EF4444;
    color:         #fff;
    white-space:   nowrap;
}

/* Info produit */
.pmw-prod-info {
    flex:      1;
    min-width: 0;
    width:     100%;
    overflow:  hidden;
}
.pmw-prod-name {
    font-size:     11px;
    font-weight:   600;
    color:         var(--pmw-ink);
    margin-bottom: 2px;
    white-space:   nowrap;
    overflow:      hidden;
    text-overflow: ellipsis;
}
.pmw-prod-price {
    font-size:   11px;
    font-weight: 800;
    color:       var(--pmw-blue);
    font-family: var(--pmw-font-d);
    white-space: nowrap;
}
.pmw-prod-price ins { text-decoration: none; }
.pmw-prod-price del { font-size: 10px; color: var(--pmw-muted); font-weight: 400; margin-left: 3px; }

@media (prefers-reduced-motion: reduce) {
    .pmw-pill, .pmw-prod-card { transition: none; }
}

/* ── Liens ───────────────────────────────────────────────────── */
.pmw-links-wrap {
    --pmw-blue:  #2563EB;
    --pmw-font:  'DM Sans', 'Inter', system-ui, sans-serif;
    font-family: var(--pmw-font);
    display:     flex;
    justify-content: space-between;
    align-items: center;
    padding:     0 10px;
    flex-wrap:   wrap;
    gap:         6px;
}
.pmw-links-left  { display: flex; flex-direction: column; gap: 4px; }
.pmw-links-right { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
.pmw-link-blue {
    font-size:       12px;
    font-weight:     600;
    color:           var(--pmw-blue);
    text-decoration: none;
    white-space:     nowrap;
}
.pmw-link-blue:hover { text-decoration: underline; }

/* ── Boutons ─────────────────────────────────────────────────── */
.pmw-links-wrap {
    --pmw-blue:  #2563EB;
    --pmw-font:  'DM Sans', 'Inter', system-ui, sans-serif;
    font-family: var(--pmw-font);
    display:     flex;
    flex-wrap:   wrap;
    gap:         6px;
    padding:     0 10px;
}
.pmw-btn {
    display:         inline-flex;
    align-items:     center;
    padding:         7px 14px;
    border-radius:   6px;
    font-size:       12px;
    font-weight:     600;
    text-decoration: none;
    white-space:     nowrap;
    transition:      opacity .15s;
    cursor:          pointer;
}
.pmw-btn:hover { opacity: .85; }
.pmw-btn--solid {
    background: var(--pmw-blue);
    color:      #fff;
    border:     1.5px solid var(--pmw-blue);
}
.pmw-btn--outline {
    background: transparent;
    color:      var(--pmw-blue);
    border:     1.5px solid var(--pmw-blue);
}
