/* ── Juwelier MyAccount v2.19.1 ─────────────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@300;400;500;600;700&display=swap');

/* ── Wrapper & Layout ────────────────────────────────────────────────────── */
.jmacc-wrap {
    background: #fbf9f4;
    box-sizing: border-box;
    width: 100%;
    font-family: 'Manrope', sans-serif;
}
.jmacc-wrap * { box-sizing: border-box; font-family: 'Manrope', sans-serif; }

.jmacc-inner {
    display: flex;
    gap: 64px;
    align-items: flex-start;
    padding: 64px 0;
}

@media (max-width: 768px) {
    .jmacc-inner { flex-direction: column; gap: 32px; padding: 32px 0; }
    .jmacc-sidebar { width: 100% !important; flex: none !important; }
    .jmacc-address-grid { grid-template-columns: 1fr; }
}

/* ── Sidebar ─────────────────────────────────────────────────────────────── */
.jmacc-sidebar {
    flex: 0 0 280px;
    width: 280px;
    position: sticky;
    top: 80px;
}

.jmacc-nav {
    display: flex;
    flex-direction: column;
}

/* Nav Items */
.jmacc-wrap .jmacc-nav-item,
.jmacc-wrap .jmacc-nav-item:visited {
    display: flex !important;
    align-items: center !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    text-decoration: none !important;
    cursor: pointer !important;
    padding: 12px 16px;
    margin-bottom: 2px;
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #4A4A4A;
    transition: color 200ms, background 200ms;
    border-radius: 0;
}
.jmacc-wrap .jmacc-nav-item:hover {
    background: transparent !important;
    background-color: transparent !important;
    color: #D6B56A;
    text-decoration: none !important;
}
.jmacc-wrap .jmacc-nav-item.aktiv {
    background: #f5f3ee !important;
    background-color: #f5f3ee !important;
    color: #1A1A1A;
    font-weight: 600;
}

.jmacc-nav-icon {
    font-size: 16px;
    width: 18px;
    height: 18px;
    margin-right: 10px;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Logout — Pfeil-Icon via ::before als Fallback wenn Dashicons nicht laden */
.jmacc-wrap .jmacc-nav-logout {
    margin-top: 32px;
    color: #C05050 !important;
    font-weight: 500;
}
.jmacc-wrap .jmacc-nav-logout:hover { color: #a03030 !important; }

/* Sicherstellen dass dashicons-exit immer sichtbar ist */
.jmacc-nav-logout .jmacc-nav-icon.dashicons-exit::before {
    content: "\f178";
    font-family: dashicons;
    font-size: 18px;
    line-height: 1;
    speak: never;
    -webkit-font-smoothing: antialiased;
}
/* Fallback Pfeil wenn dashicons nicht geladen */
.jmacc-nav-logout .jmacc-nav-icon:not(.dashicons-exit),
.jmacc-nav-logout .jmacc-nav-icon.dashicons-exit:empty {
    font-size: 0;
}
.jmacc-nav-logout .jmacc-nav-icon::after {
    content: '←';
    font-size: 16px;
    font-family: sans-serif;
}
.jmacc-nav-logout .jmacc-nav-icon.dashicons::after { display: none; }

/* ── Content Bereich ─────────────────────────────────────────────────────── */
.jmacc-content {
    flex: 1;
    min-width: 0;
}

.jmacc-section-title {
    font-family: 'Manrope', sans-serif;
    font-size: 28px;
    font-weight: 300;
    color: #1A1A1A;
    margin: 0 0 24px;
    padding: 0;
    line-height: 1.2;
}

/* ── Karten ──────────────────────────────────────────────────────────────── */
.jmacc-card {
    background: #ffffff;
    border: 1px solid #dbdad5;
    padding: 24px;
    margin-bottom: 48px;
}

.jmacc-welcome {
    font-family: 'Manrope', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #4A4A4A;
    line-height: 1.7;
    margin: 0;
}

.jmacc-empty {
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
    color: #9A9A9A;
    margin: 0;
}

/* ── Bestellungen ────────────────────────────────────────────────────────── */
.jmacc-order-row {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 0;
    border-bottom: 1px solid #f0efeb;
}
.jmacc-order-row:last-child { border-bottom: none; padding-bottom: 0; }
.jmacc-order-row:first-child { padding-top: 0; }

.jmacc-order-img-wrap { flex-shrink: 0; }

.jmacc-order-img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    display: block;
}

.jmacc-order-meta {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.jmacc-order-num {
    font-family: 'Manrope', sans-serif;
    font-size: 11px;
    font-weight: 600;
    color: #9A9A9A;
    letter-spacing: 0.05em;
}

.jmacc-order-date {
    font-family: 'Manrope', sans-serif;
    font-size: 13px;
    font-weight: 400;
    color: #4A4A4A;
}

.jmacc-order-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 8px;
}

.jmacc-order-total {
    font-family: 'Manrope', sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: #1A1A1A;
}

.jmacc-order-cta {
    font-family: 'Manrope', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #D6B56A;
    text-decoration: none;
    transition: color 200ms;
}
.jmacc-order-cta:hover { color: #b89a4a; }

/* ── Status Badges ───────────────────────────────────────────────────────── */
.jmacc-badge {
    display: inline-block;
    font-family: 'Manrope', sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 3px 8px;
    line-height: 1.4;
    align-self: flex-start;
}
.jmacc-badge--processing, .jmacc-badge--on-hold { background: #E0F2F1; color: #006D77; }
.jmacc-badge--completed  { background: #F5F5F5; color: #9A9A9A; }
.jmacc-badge--cancelled, .jmacc-badge--failed { background: #FEF2F2; color: #C05050; }
.jmacc-badge--pending    { background: #FFF8E7; color: #B8860B; }
.jmacc-badge--refunded   { background: #F0F4FF; color: #4060C0; }

/* ── Adressen ────────────────────────────────────────────────────────────── */
.jmacc-address-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-bottom: 48px;
}

.jmacc-subheading {
    font-family: 'Manrope', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #7A7A7A;
    margin: 0 0 8px;
}

address.jmacc-address {
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #4A4A4A;
    line-height: 1.7;
    font-style: normal;
    margin-bottom: 16px;
}

/* ── Sekundäre Links ─────────────────────────────────────────────────────── */
a.jmacc-link-secondary,
.jmacc-link-secondary {
    font-family: 'Manrope', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #7A7A7A;
    text-decoration: none;
    transition: color 200ms;
    display: inline-block;
}
a.jmacc-link-secondary:hover,
.jmacc-link-secondary:hover { color: #D6B56A; }

/* ── Formulare ───────────────────────────────────────────────────────────── */
.jmacc-form label,
.jmacc-form .woocommerce-form-row label,
.jmacc-wrap .jmacc-form label {
    font-family: 'Manrope', sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #D6B56A;
    display: block;
    margin-bottom: 6px;
}

.jmacc-form input:not([type=checkbox]):not([type=radio]):not([type=submit]),
.jmacc-form select,
.jmacc-form textarea,
.jmacc-wrap .jmacc-form .woocommerce-Input {
    width: 100%;
    height: 48px;
    background: #ffffff;
    border: 1px solid #dbdad5;
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #1A1A1A;
    padding: 0 14px;
    outline: none;
    transition: border-color 200ms;
    appearance: none;
    border-radius: 0;
}
.jmacc-form input:focus,
.jmacc-form select:focus,
.jmacc-form textarea:focus { border-color: #006D77; }

.jmacc-form textarea { height: auto; padding: 14px; min-height: 120px; }

.jmacc-form-row,
.jmacc-form .woocommerce-form-row {
    margin-bottom: 20px;
}

/* Primary Button */
.jmacc-btn-primary,
.jmacc-form button[type=submit],
.jmacc-form input[type=submit] {
    display: inline-block;
    background: #006D77;
    color: #ffffff;
    border: none;
    font-family: 'Manrope', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: 16px 32px;
    cursor: pointer;
    transition: background 200ms;
    line-height: 1;
    border-radius: 0;
}
.jmacc-btn-primary:hover,
.jmacc-form button[type=submit]:hover,
.jmacc-form input[type=submit]:hover { background: #005a62; color: #fff; }

/* ── Downloads ───────────────────────────────────────────────────────────── */
.jmacc-download-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid #f0efeb;
}
.jmacc-download-row:last-child { border-bottom: none; }
.jmacc-download-name { font-family: 'Manrope', sans-serif; font-size: 14px; color: #4A4A4A; }

/* ── Login-Hint ──────────────────────────────────────────────────────────── */
.jmacc-login-hint {
    padding: 64px 24px;
    text-align: center;
}

/* ── WooCommerce Overrides ───────────────────────────────────────────────── */
.jmacc-wrap .woocommerce-MyAccount-content { all: unset; display: block; }
.jmacc-wrap .woocommerce-message,
.jmacc-wrap .woocommerce-info,
.jmacc-wrap .woocommerce-error {
    border-left: 4px solid #006D77;
    background: #f0f9f8;
    padding: 12px 16px;
    margin-bottom: 20px;
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
    list-style: none;
}

/* ── Bestelldetails ──────────────────────────────────────────────────────── */
.jmacc-order-detail-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid #f0efeb;
}

.jmacc-order-items {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 24px;
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
}
.jmacc-order-items thead th {
    font-family: 'Manrope', sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #7A7A7A;
    padding: 0 0 10px;
    text-align: left;
    border-bottom: 1px solid #dbdad5;
}
.jmacc-order-items tbody td {
    padding: 12px 0;
    border-bottom: 1px solid #f0efeb;
    color: #4A4A4A;
    vertical-align: middle;
}
.jmacc-order-items tbody tr:last-child td { border-bottom: none; }
.jmacc-order-items .jmacc-order-img { width: 48px; height: 48px; object-fit: cover; vertical-align: middle; margin-right: 10px; }

.jmacc-order-totals {
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid #dbdad5;
}
.jmacc-order-total-row {
    display: flex;
    justify-content: space-between;
    padding: 4px 0;
    font-size: 14px;
    color: #4A4A4A;
    font-family: 'Manrope', sans-serif;
}
.jmacc-order-total-final {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid #dbdad5;
    font-size: 16px;
    color: #1A1A1A;
}

.jmacc-order-address {
    margin-top: 24px;
    padding-top: 16px;
    border-top: 1px solid #f0efeb;
}

/* WC native view-order styles override */
.jmacc-wrap .woocommerce-order-details,
.jmacc-wrap .woocommerce-customer-details { all: unset; display: block; }
.jmacc-wrap .woocommerce-order-details table { width: 100%; border-collapse: collapse; font-family: 'Manrope', sans-serif; font-size: 14px; }
.jmacc-wrap .woocommerce-order-details table th,
.jmacc-wrap .woocommerce-order-details table td { padding: 10px 0; border-bottom: 1px solid #f0efeb; color: #4A4A4A; text-align: left; }
.jmacc-wrap .woocommerce-order-details table thead th { font-family: 'Manrope', sans-serif; font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #7A7A7A; }
.jmacc-wrap .woocommerce-order-details .woocommerce-Price-amount { color: #D6B56A; font-weight: 600; }

/* ── Bestelldetails (vollstaendig eigenes Styling) ───────────────────────── */
.jmacc-detail-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid #f0efeb;
}
.jmacc-detail-header-left {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.jmacc-detail-num {
    font-family: 'Manrope', sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: #1A1A1A;
}
.jmacc-detail-date {
    font-family: 'Manrope', sans-serif;
    font-size: 12px;
    font-weight: 400;
    color: #9A9A9A;
}

.jmacc-detail-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    margin-bottom: 0;
    border: none;
}

.jmacc-detail-table th,
.jmacc-detail-table td {
    border: none !important;
    outline: none;
    box-shadow: none;
}

.jmacc-detail-th {
    font-family: 'Manrope', sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #7A7A7A;
    padding: 0 0 12px 0;
    text-align: left;
    border-bottom: 1px solid #dbdad5 !important;
}
.jmacc-detail-th--center { text-align: center; }
.jmacc-detail-th--right  { text-align: right; }

.jmacc-detail-row td {
    border-bottom: 1px solid #f0efeb !important;
}
.jmacc-detail-td {
    padding: 14px 0;
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #4A4A4A;
    vertical-align: middle;
}
.jmacc-detail-td--center { text-align: center; }
.jmacc-detail-td--right  { text-align: right; }

.jmacc-detail-product {
    display: flex;
    align-items: center;
    gap: 12px;
}
.jmacc-detail-img-wrap { flex-shrink: 0; }
.jmacc-detail-img {
    width: 56px;
    height: 56px;
    object-fit: cover;
    display: block;
}
.jmacc-detail-name { color: #1A1A1A; }
.jmacc-detail-product-link {
    color: #1A1A1A;
    text-decoration: none;
    transition: color 200ms;
}
.jmacc-detail-product-link:hover { color: #D6B56A; }

.jmacc-detail-totals {
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid #dbdad5;
}
.jmacc-detail-total-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #4A4A4A;
}
.jmacc-detail-total-row span:last-child { color: #D6B56A; }
.jmacc-detail-total-final {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #dbdad5;
    font-size: 16px;
}
.jmacc-detail-total-final span { color: #1A1A1A !important; font-weight: 600; }

.jmacc-detail-addresses {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid #f0efeb;
}

.jmacc-detail-back {
    display: inline-block;
    margin-top: 20px;
    font-family: 'Manrope', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #7A7A7A;
    text-decoration: none;
    transition: color 200ms;
}
.jmacc-detail-back:hover { color: #D6B56A; }

@media (max-width: 600px) {
    .jmacc-detail-addresses { grid-template-columns: 1fr; }
}

/* ── Linien An/Aus via Elementor prefix_class ────────────────────────────── */
.jmacc-lines- .jmacc-detail-row td,
.jmacc-lines- .jmacc-detail-header,
.jmacc-lines- .jmacc-detail-totals,
.jmacc-lines- .jmacc-detail-total-final {
    border-top: none !important;
    border-bottom: none !important;
}
.jmacc-lines-on .jmacc-detail-row td { border-bottom: 1px solid #f0efeb !important; }
.jmacc-lines-on .jmacc-detail-header { border-bottom: 1px solid #f0efeb !important; }
.jmacc-lines-on .jmacc-detail-totals { border-top: 1px solid #dbdad5 !important; }
.jmacc-lines-on .jmacc-detail-total-final { border-top: 1px solid #dbdad5 !important; }
.jmacc-th-lines- .jmacc-detail-th { border-bottom: none !important; }
.jmacc-th-lines-on .jmacc-detail-th { border-bottom: 1px solid #dbdad5; }

/* ── Zahlungsmethoden ────────────────────────────────────────────────────── */
.jmacc-payment-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 0;
    border-bottom: 1px solid #f0efeb;
}
.jmacc-payment-item:last-child { border-bottom: none; }
.jmacc-payment-item:first-child { padding-top: 0; }

.jmacc-payment-info {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
.jmacc-payment-brand {
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: #1A1A1A;
}
.jmacc-payment-last4 {
    font-family: 'Manrope', sans-serif;
    font-size: 13px;
    color: #4A4A4A;
    letter-spacing: 0.05em;
}
.jmacc-payment-exp {
    font-family: 'Manrope', sans-serif;
    font-size: 11px;
    color: #9A9A9A;
}
.jmacc-payment-default {
    font-family: 'Manrope', sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #006D77;
    background: #E0F2F1;
    padding: 2px 8px;
    border-radius: 2px;
}
.jmacc-payment-actions {
    display: flex;
    gap: 16px;
    align-items: center;
    flex-shrink: 0;
}
.jmacc-payment-delete { color: #C05050 !important; }
.jmacc-payment-delete:hover { color: #a03030 !important; }

/* ── AJAX Notices ────────────────────────────────────────────────────────── */
.jmacc-notice {
    padding: 12px 16px;
    border-radius: 0;
    margin-bottom: 20px;
    font-family: 'Manrope', sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
}
.jmacc-notice--success {
    background: #f0fdf4;
    color: #166534;
    border: 1px solid #bbf7d0;
}
.jmacc-notice--error {
    background: #fef2f2;
    color: #991b1b;
    border: 1px solid #fecaca;
}

/* ── v2.19.1 Fixes ────────────────────────────────────────────────────────── */

/* Mehr Abstand: Passwort-Fieldset -> Speichern-Button */
.jmacc-wrap .woocommerce-EditAccountForm fieldset {
    margin-bottom: 32px;
}
.jmacc-wrap .woocommerce-EditAccountForm .woocommerce-form-row:last-of-type,
.jmacc-wrap .jmacc-form .form-row:last-of-type {
    margin-bottom: 0;
}
.jmacc-wrap .woocommerce-EditAccountForm > .woocommerce-form__label-for-checkbox + *,
.jmacc-wrap .woocommerce-EditAccountForm [type=submit],
.jmacc-wrap .woocommerce-EditAccountForm button[type=submit],
.jmacc-wrap .jmacc-form [type=submit],
.jmacc-wrap .jmacc-form button[type=submit] {
    margin-top: 32px;
}

/* Manrope auf alle WC-nativen Formularelemente erzwingen */
.jmacc-wrap fieldset,
.jmacc-wrap fieldset legend,
.jmacc-wrap .woocommerce-EditAccountForm *,
.jmacc-wrap .woocommerce-address-fields *,
.jmacc-wrap .woocommerce-form * {
    font-family: 'Manrope', sans-serif !important;
}

/* Adressen-Seite: Titel, Karten, Text */
.jmacc-wrap h1, .jmacc-wrap h2, .jmacc-wrap h3,
.jmacc-wrap p, .jmacc-wrap address, .jmacc-wrap span,
.jmacc-wrap a, .jmacc-wrap td, .jmacc-wrap th,
.jmacc-wrap label, .jmacc-wrap input, .jmacc-wrap select,
.jmacc-wrap textarea, .jmacc-wrap button {
    font-family: 'Manrope', sans-serif !important;
}
