/**
 * Salmantinos B2B mitt-konto v2 - navy-tema
 * Laddas endast på WC mitt-konto-sidor.
 */

.salm-ma {
    --salm-navy: #0F2847;
    --salm-navy-hover: #1a3559;
    --salm-beige: #F5EFE4;
    --salm-border: rgba(15, 40, 71, 0.12);
    --salm-muted: rgba(15, 40, 71, 0.6);
    --salm-soft: rgba(15, 40, 71, 0.06);
    font-family: inherit;
    color: var(--salm-navy);
}

.salm-ma h2.salm-ma-h {
    font-family: 'DM Serif Display', Georgia, serif;
    font-size: 26px;
    color: var(--salm-navy);
    margin: 0 0 18px;
    font-weight: 400;
}

.salm-ma h3.salm-ma-h2 {
    font-size: 13px;
    color: var(--salm-muted);
    text-transform: uppercase;
    letter-spacing: 0.6px;
    margin: 0 0 12px;
    font-weight: 500;
}

/* ─── Stats-rutor ─── */
.salm-ma-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 26px;
}
@media (max-width: 600px) {
    .salm-ma-stats { grid-template-columns: 1fr; }
}
.salm-ma-stat {
    background: var(--salm-beige);
    border-radius: 8px;
    padding: 14px 16px;
}
.salm-ma-stat .lbl {
    font-size: 11px;
    color: var(--salm-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.salm-ma-stat .val {
    font-size: 22px;
    font-weight: 500;
    color: var(--salm-navy);
    margin-top: 4px;
    font-family: 'DM Serif Display', Georgia, serif;
}

/* ─── Kort ─── */
.salm-ma-card {
    background: #fff;
    border: 0.5px solid var(--salm-border);
    border-radius: 8px;
    padding: 14px 16px;
    margin-bottom: 16px;
}
.salm-ma-card-tight { padding: 4px 16px; }

/* ─── Radstil ─── */
.salm-ma-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 11px 0;
    border-bottom: 0.5px solid var(--salm-border);
    font-size: 14px;
    gap: 12px;
}
.salm-ma-row:last-child { border-bottom: none; }
.salm-ma-row a { color: var(--salm-navy); text-decoration: none; }
.salm-ma-row a:hover { text-decoration: underline; }

/* ─── Badges ─── */
.salm-ma-badge {
    display: inline-block;
    padding: 3px 9px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;
}
.salm-ma-badge-active   { background: #FFF4D9; color: #7A5800; }
.salm-ma-badge-done     { background: #E1F0E3; color: #1F5A2A; }
.salm-ma-badge-pending  { background: #E6EBF2; color: #2A4368; }
.salm-ma-badge-cancel   { background: #F5E0E0; color: #7A2424; }

/* ─── Knappar ─── */
.salm-ma .salm-ma-btn {
    background: var(--salm-navy);
    color: #fff;
    border: none;
    padding: 9px 16px;
    border-radius: 6px;
    font-size: 13px;
    cursor: pointer;
    font-family: inherit;
    text-decoration: none;
    display: inline-block;
    line-height: 1.2;
}
.salm-ma .salm-ma-btn:hover { background: var(--salm-navy-hover); color: #fff; }
.salm-ma .salm-ma-btn-ghost {
    background: transparent;
    color: var(--salm-navy);
    border: 0.5px solid rgba(15, 40, 71, 0.25);
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 12px;
    cursor: pointer;
    font-family: inherit;
    text-decoration: none;
    display: inline-block;
    line-height: 1.2;
}
.salm-ma .salm-ma-btn-ghost:hover { background: var(--salm-soft); color: var(--salm-navy); }
.salm-ma .salm-ma-btn-icon {
    padding: 6px 8px;
    background: transparent;
    border: 0.5px solid rgba(15, 40, 71, 0.2);
    border-radius: 6px;
    cursor: pointer;
    color: var(--salm-navy);
}
.salm-ma .salm-ma-btn-icon:hover { background: var(--salm-soft); }

/* ─── Snabbåtgärder ─── */
.salm-ma-quick {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}
@media (max-width: 700px) {
    .salm-ma-quick { grid-template-columns: 1fr; }
}
.salm-ma-quick a {
    display: block;
    background: #fff;
    border: 0.5px solid var(--salm-border);
    border-radius: 8px;
    padding: 16px;
    text-decoration: none;
    color: var(--salm-navy);
    transition: border-color 0.15s, background 0.15s;
}
.salm-ma-quick a:hover {
    border-color: var(--salm-navy);
    background: var(--salm-soft);
}
.salm-ma-quick strong { display: block; font-size: 14px; margin-bottom: 4px; }
.salm-ma-quick span { display: block; font-size: 12px; color: var(--salm-muted); }

/* ─── Filterrad (orderhistorik) ─── */
.salm-ma-filters {
    display: flex;
    gap: 8px;
    margin-bottom: 14px;
    flex-wrap: wrap;
}
.salm-ma-filters input,
.salm-ma-filters select {
    padding: 8px 12px;
    border: 0.5px solid rgba(15, 40, 71, 0.2);
    border-radius: 6px;
    font-size: 13px;
    background: #fff;
    font-family: inherit;
}
.salm-ma-filters input { flex: 1; min-width: 200px; }

/* ─── Order-rad ─── */
.salm-ma-order {
    display: grid;
    grid-template-columns: 90px 90px 110px 1fr 130px;
    gap: 10px;
    align-items: center;
    padding: 12px 4px;
    border-bottom: 0.5px solid var(--salm-border);
    font-size: 13px;
}
.salm-ma-order:last-child { border-bottom: none; }
.salm-ma-order .ord-num { font-weight: 500; }
.salm-ma-order .ord-date { color: var(--salm-muted); font-size: 12px; }
.salm-ma-order .ord-total { color: var(--salm-muted); text-align: right; padding-right: 8px; }
@media (max-width: 700px) {
    .salm-ma-order {
        grid-template-columns: 1fr 1fr;
        gap: 6px;
    }
    .salm-ma-order .ord-total { text-align: left; padding-right: 0; }
}

/* ─── Favoriter-tabell ─── */
.salm-ma-fav-head,
.salm-ma-fav {
    display: grid;
    grid-template-columns: 22px 1fr 90px 110px 130px;
    gap: 10px;
    align-items: center;
    padding: 10px 4px;
    border-bottom: 0.5px solid var(--salm-border);
    font-size: 13px;
}
.salm-ma-fav-head {
    font-size: 10px;
    color: var(--salm-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 10px 4px 8px;
}
.salm-ma-fav:last-child { border-bottom: none; }
.salm-ma-fav .handle {
    color: rgba(15, 40, 71, 0.4);
    cursor: grab;
    user-select: none;
    font-size: 16px;
    text-align: center;
}
.salm-ma-fav.salm-dragging { opacity: 0.45; }
.salm-ma-fav.salm-drop-target { border-top: 2px solid var(--salm-navy); }
.salm-ma-fav .name {
    font-weight: 500;
    color: var(--salm-navy);
    font-size: 13px;
    line-height: 1.3;
}
.salm-ma-fav .name a { color: inherit; text-decoration: none; }
.salm-ma-fav .name a:hover { text-decoration: underline; }
.salm-ma-fav .meta {
    font-size: 11px;
    color: var(--salm-muted);
    margin-top: 2px;
}
.salm-ma-fav .price { font-weight: 500; }
.salm-ma-fav .qty-wrap input.salm-qty {
    width: 60px;
    padding: 5px 8px;
    border: 0.5px solid rgba(15, 40, 71, 0.2);
    border-radius: 4px;
    font-size: 13px;
    font-family: inherit;
    text-align: center;
}
.salm-ma-fav .qty-wrap .last {
    font-size: 10px;
    color: var(--salm-muted);
    margin-top: 2px;
}
.salm-ma-fav .actions {
    display: flex;
    gap: 4px;
    justify-content: flex-end;
}
.salm-ma-fav .actions button {
    font-size: 12px;
    padding: 5px 9px;
}
@media (max-width: 700px) {
    .salm-ma-fav-head { display: none; }
    .salm-ma-fav {
        grid-template-columns: 22px 1fr;
        grid-template-areas: "h n" "h m" ". p" ". q" ". a";
        gap: 4px;
    }
    .salm-ma-fav .handle { grid-area: h; }
}

/* ─── Formulär ─── */
.salm-ma input[type="text"],
.salm-ma input[type="email"],
.salm-ma input[type="search"],
.salm-ma textarea,
.salm-ma select {
    padding: 9px 12px;
    border: 0.5px solid rgba(15, 40, 71, 0.2);
    border-radius: 6px;
    font-size: 13px;
    font-family: inherit;
    background: #fff;
    box-sizing: border-box;
    color: var(--salm-navy);
    width: 100%;
    max-width: 480px;
}
.salm-ma textarea { resize: vertical; min-height: 110px; }
.salm-ma label.salm-ma-label {
    display: block;
    font-size: 12px;
    color: var(--salm-muted);
    margin-bottom: 6px;
    font-weight: 500;
}
.salm-ma .salm-ma-field { margin-bottom: 14px; }

/* ─── External-länk-indikator i menyn ─── */
.woocommerce-MyAccount-navigation li.salmantinos-account-external-link a::after {
    content: " ↗";
    font-size: 0.85em;
    opacity: 0.6;
}

/* ─── Redirect-info-vy (snabborder / mobil) ─── */
.salm-ma-redirect-card {
    text-align: center;
    padding: 44px 24px;
}
.salm-ma-redirect-card .salm-ma-redirect-icon {
    font-size: 38px;
    color: var(--salm-navy);
    opacity: 0.45;
    line-height: 1;
    margin-bottom: 14px;
}
.salm-ma-redirect-card p {
    color: var(--salm-muted);
    font-size: 13px;
    margin: 6px 0 20px;
}

/* ─── Sök-resultat (lägg till favorit) ─── */
.salm-ma-search-results {
    border: 0.5px solid var(--salm-border);
    border-radius: 6px;
    margin-top: 10px;
    background: #fff;
}
.salm-ma-search-results form {
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px;
    border-bottom: 0.5px solid var(--salm-border);
    flex-wrap: wrap;
}
.salm-ma-search-results form:last-child { border-bottom: none; }
.salm-ma-search-results .si-name {
    flex: 1;
    min-width: 220px;
    font-size: 13px;
    color: var(--salm-navy);
}
.salm-ma-search-results .si-name small {
    display: block;
    color: var(--salm-muted);
    font-size: 11px;
    margin-top: 2px;
}
.salm-ma-search-results .si-price { min-width: 90px; font-size: 13px; }

/* ─── Header för favoriter-actions ─── */
.salm-ma-fav-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 6px;
    gap: 10px;
    flex-wrap: wrap;
}
.salm-ma-fav-header h2 { margin: 0; }
.salm-ma-fav-header .actions { display: flex; gap: 8px; }
.salm-ma-helper {
    font-size: 12px;
    color: var(--salm-muted);
    margin: 0 0 12px;
}
