/* ================================================================
   Codela Checkout Pro — Adres Seçici & Invoice fields Stilleri
   ⚠️  Genel WooCommerce checkout tasarımına MÜDAHALE ETMİYOR.
       Sadece .codela- / #codela- prefix'li elementler stillenir.
   ================================================================ */

/* ── Dinamik token'lar: PHP'den inline olarak override edilir ── */
:root {
    --codela-cp-accent:       #007aff;
    --codela-cp-accent-light: rgba(0, 122, 255, 0.10);
    --codela-cp-accent-ring:  rgba(0, 122, 255, 0.18);
    --codela-cp-surface:      #ffffff;
    --codela-cp-radius:       12px;
    --codela-cp-font:         inherit;

    /* İç token'lar — ayarlar sayfasından gelen değişkenlere bağlı */
    --wcp-border:      var(--codela-cp-card-border, #e2e8f0);
    --wcp-border-2:    #cbd5e1;
    --wcp-bg:          var(--codela-cp-muted-bg, #f8fafc);
    --wcp-bg-2:        #f1f5f9;
    --wcp-text:        var(--codela-cp-text, #0f172a);
    --wcp-text-2:      var(--codela-cp-text-soft, #475569);
    --wcp-text-3:      #94a3b8;
    --wcp-navy:        var(--codela-cp-accent, #1a2e4a);
    --wcp-navy-mid:    var(--codela-cp-accent-hover, #243d61);
    --wcp-navy-light:  var(--codela-cp-accent-light, #eef3f9);
    --wcp-navy-ring:   var(--codela-cp-accent-ring, rgba(26,46,74,.12));
    --wcp-red:         #ef4444;
    --wcp-mono:        'DM Mono', ui-monospace, monospace;
    --wcp-t:           .15s ease;
    --wcp-r:           var(--codela-cp-radius, 8px);
    --wcp-r-sm:        6px;
}

.codela-cp-save-options {
    display: grid;
    gap: 8px;
    margin: 14px 0 4px;
    padding: 12px 14px;
    border: 1px solid var(--wcp-border);
    border-radius: 8px;
    background: var(--wcp-bg);
}

.codela-cp-save-option {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin: 0;
    color: var(--wcp-text-2);
    font-size: 13px;
    line-height: 1.35;
    cursor: pointer;
}

.codela-cp-save-option input {
    width: 16px;
    height: 16px;
    margin: 1px 0 0;
    flex: 0 0 auto;
}

/* ── Animasyon ── */
.codela-cp-animate {
    opacity: 0;
    transform: translateY(6px);
    transition: opacity .22s ease, transform .22s ease;
}
.codela-cp-animate.is-visible { opacity: 1; transform: none; }

/* ================================================================
   KAYITLI ADRES SEÇİCİ (#codela-cp-address-picker)
   ================================================================ */
#codela-cp-address-picker {
    margin: 0 0 18px;
    font-family: var(--codela-cp-font, inherit);
}

#codela-cp-address-picker .codela-cp-section__label {
    display: block;
    margin: 0 0 10px;
    font-size: 12px;
    font-weight: 600;
    color: var(--wcp-text-2);
    letter-spacing: .04em;
    text-transform: uppercase;
}

.codela-cp-addr-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* ── Adres kartı ── */
.codela-cp-addr-card {
    display: flex;
    align-items: center;
    padding: 12px 14px;
    border: 1.5px solid var(--wcp-border);
    border-radius: 10px;
    background: var(--wcp-bg);
    cursor: pointer;
    position: relative;
    user-select: none;
    transition: border-color var(--wcp-t), background var(--wcp-t), box-shadow var(--wcp-t);
}
.codela-cp-addr-card:hover {
    border-color: var(--wcp-border-2);
    background: var(--codela-cp-surface, #fff);
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}
.codela-cp-addr-card.is-selected {
   
    background: rgba(249, 250, 251, 0.9) !important;
    border: 1.5px solid #e2e8f0 !important;
    border-radius: 14px !important;
    padding: 14px 16px !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: border-color 0.18s, background 0.18s;
}


/* ── Radio göstergesi ── */
.codela-radio-indicator {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid var(--wcp-border-2);
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    flex-shrink: 0;
    transition: background var(--wcp-t), border-color var(--wcp-t);
}
.codela-radio-indicator svg { width: 11px; height: 11px; opacity: 0; transition: opacity var(--wcp-t); }
.codela-cp-addr-card.is-selected .codela-radio-indicator {
    background: var(--codela-cp-accent);
    border-color: var(--codela-cp-accent);
}
.codela-cp-addr-card.is-selected .codela-radio-indicator svg { opacity: 1; }

/* ── Kart gövde ── */
.codela-cp-addr-card__body {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-width: 0;
    gap: 10px;
}
.codela-cp-addr-card__info { flex: 1; min-width: 0; }
.codela-cp-addr-card__top { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; margin-bottom: 2px; }
.codela-cp-addr-card__name {
    font-size: 14px;
    font-weight: 600;
    color: var(--wcp-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.codela-cp-addr-card.is-selected .codela-cp-addr-card__name { color: var(--codela-cp-accent); }

.codela-cp-addr-card__badge {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: 2px 6px;
    border-radius: 4px;
    flex-shrink: 0;
    line-height: 1.5;
}
.codela-cp-badge--individual { background: #dbeafe; color: #1e40af; }
.codela-cp-badge--company    { background: #fef3c7; color: #92400e; }

.codela-cp-addr-card__line {
    font-size: 12px;
    color: var(--wcp-text-2);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.codela-cp-addr-card.is-incomplete {
    border-color: #ef4444;
    background: #fff7f7;
}
.codela-cp-addr-card__error {
    margin-top: 4px;
    color: #b91c1c;
    font-size: 12px;
    font-weight: 700;
}

/* ── Kart aksiyonları ── */
.codela-cdl-card-actions {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 5px;
}
.codela-edit-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 10px;
    background: var(--wcp-bg-2);
    color: var(--wcp-text-2);
    border-radius: 7px;
    font-size: 12px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: background var(--wcp-t), color var(--wcp-t);
    white-space: nowrap;
}
.codela-edit-btn:hover { background: var(--wcp-border); color: var(--codela-cp-accent); }

.codela-delete-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 5px 7px;
    background: #fee2e2;
    color: var(--wcp-red);
    border-radius: 7px;
    border: none;
    cursor: pointer;
    transition: background var(--wcp-t);
}
.codela-delete-btn:hover { background: #fca5a5; }

/* ── Yeni adres kartı (dashed) ── */
.codela-cp-addr-card--new {
    border-style: dashed;
    background: transparent;
    min-height: 48px;
}
.codela-cp-addr-card--new .codela-cp-addr-card__body {
    justify-content: flex-start;
    gap: 10px;
}
.codela-cp-addr-card--new .codela-cp-addr-card__name { color: var(--codela-cp-accent); }
.codela-cp-addr-card--new:hover { background: var(--codela-cp-accent-light); border-color: var(--codela-cp-accent); }

.codela-cp-addr-card__plus {
    display: inline-flex;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: var(--codela-cp-accent-light);
    align-items: center;
    justify-content: center;
    color: var(--codela-cp-accent);
    flex-shrink: 0;
    transition: background var(--wcp-t);
}
.codela-cp-addr-card--new:hover .codela-cp-addr-card__plus { background: rgba(0,122,255,.2); }

/* Woo Blocks checkout match */
.wp-block-woocommerce-checkout #codela-cp-blocks-picker {
    margin: 0;
    color: #2f2f2f;
    font-family: inherit;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-section__label {
    display: none;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-list {
    gap: 0;
    overflow: hidden;
    border-radius: 4px;
    background: transparent;
    box-shadow: inset 0 0 0 1px #d5d5d5;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card {
    min-height: 0;
    margin: 0;
    padding: 16px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #2f2f2f;
    font-family: inherit;
    font-size: var(--wp--preset--font-size--small, 14px);
    font-style: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: 1.4;
    text-decoration: inherit;
    text-transform: inherit;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card + .codela-cp-addr-card {
    border-top: 1px solid #d5d5d5 !important;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card:hover {
    background: #f6f7f7 !important;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card.is-selected {
    background: transparent !important;
    border-radius: 4px !important;
    box-shadow: inset 0 0 0 2px #2f2f2f !important;
    cursor: pointer;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card.is-incomplete,
.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card.is-selected.is-incomplete {
    background: #fff7f7 !important;
    box-shadow: inset 0 0 0 2px #dc2626 !important;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-radio-indicator {
    width: 20px;
    height: 20px;
    margin-right: 12px;
    border: 1px solid #757575;
    background: #fff !important;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-radio-indicator svg {
    display: none;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card.is-selected .codela-radio-indicator {
    border-color: #2f2f2f;
    background: #fff !important;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card.is-selected .codela-radio-indicator::before {
    content: '';
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #2f2f2f;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card__body {
    gap: 12px;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card__top {
    gap: 8px;
    margin-bottom: 4px;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card__name,
.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-newcard-label {
    color: #2f2f2f !important;
    font-size: var(--wp--preset--font-size--small, 14px);
    font-weight: 500;
    line-height: 1.4;
    text-transform: none;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card.is-selected .codela-cp-addr-card__name {
    color: #2f2f2f !important;
    font-weight: 600;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card__badge {
    padding: 0 6px;
    border: 1px solid #d5d5d5;
    border-radius: 2px;
    background: transparent !important;
    color: #50575e !important;
    font-size: .75em;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0;
    text-transform: none;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card__line {
    color: #50575e;
    font-size: var(--wp--preset--font-size--small, 14px);
    line-height: 1.4;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-maa-card__actions {
    display: flex;
    flex-shrink: 0;
    gap: 6px;
    align-items: center;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-maa-icon-btn {
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: #50575e;
    opacity: 1;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-maa-icon-btn:hover {
    background: #f6f7f7;
    color: #2f2f2f;
    opacity: 1;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-blocks-add {
    display: none;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card.is-selected .codela-cp-blocks-add {
    display: inline-flex;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-maa-icon-btn--danger:hover {
    background: #fff0f0;
    color: #cc1818;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card--new {
    border-style: solid !important;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card--new .codela-cp-addr-card__body {
    justify-content: flex-start;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card__plus {
    width: 20px;
    height: 20px;
    border: 1px solid #757575;
    border-radius: 50%;
    background: #fff;
    color: #2f2f2f;
}

.wp-block-woocommerce-checkout #codela-cp-blocks-picker .codela-cp-addr-card--new:hover .codela-cp-addr-card__plus {
    background: #fff;
}

/* ================================================================
   KAYDET ÇUBUĞU (#codela-cp-save-bar)
   ================================================================ */
#codela-cp-save-bar {
    background: var(--wcp-bg);
    border: 1.5px solid var(--wcp-border);
    border-radius: 10px;
    padding: 14px 16px;
    margin-top: 14px;
}
.codela-save-toggle-wrap {
    display: flex;
    align-items: center;
    gap: 12px;
}
.codela-save-text {
    font-size: 13px;
    font-weight: 600;
    color: var(--wcp-text);
}
#codela-address-label-wrap {
    margin-top: 12px;
    display: flex;
    gap: 8px;
    align-items: center;
}
.codela-input {
    flex: 1;
    border: 1.5px solid var(--wcp-border);
    border-radius: 8px;
    background: #fff;
    padding: 9px 13px;
    font-size: 13px;
    color: var(--wcp-text);
    outline: none;
    height: 40px;
    box-sizing: border-box;
    transition: border-color var(--wcp-t), box-shadow var(--wcp-t);
}
.codela-input:focus {
    border-color: var(--codela-cp-accent);
    box-shadow: 0 0 0 3px var(--codela-cp-accent-ring);
}
.codela-input::placeholder { color: var(--wcp-text-3); }
.codela-btn-save {
    background: var(--codela-cp-accent) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 8px !important;
    height: 40px !important;
    padding: 0 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    transition: opacity var(--wcp-t) !important;
}
.codela-btn-save:hover { opacity: .85 !important; }

/* iOS Toggle */
.codela-ios-toggle { position: relative; display: inline-block; width: 44px; height: 26px; flex-shrink: 0; margin: 0; }
.codela-ios-toggle input { opacity: 0; width: 0; height: 0; position: absolute; }
.codela-ios-slider { position: absolute; cursor: pointer; inset: 0; background: #cbd5e1; transition: .28s; border-radius: 26px; }
.codela-ios-slider::before { content: ""; position: absolute; height: 22px; width: 22px; left: 2px; bottom: 2px; background: #fff; transition: .28s cubic-bezier(.4,0,.2,1); border-radius: 50%; box-shadow: 0 1px 3px rgba(0,0,0,.15); }
.codela-ios-toggle input:checked + .codela-ios-slider { background: #34c759; }
.codela-ios-toggle input:checked + .codela-ios-slider::before { transform: translateX(18px); }

/* ================================================================
   MÜŞTERİ TİPİ — Apple Segmented Control (Checkout Seçicisi)
   ================================================================ */
.codela-segmented-control {
    display: flex;
    background: var(--wcp-bg-2, #f1f5f9);
    padding: 3px;
    border-radius: 9px;
    width: 100%;
    gap: 2px;
}
.codela-segment-btn {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 12px;
    border-radius: 7px;
    font-size: 13px;
    font-weight: 600;
    color: var(--wcp-text-2, #475569);
    background: transparent;
    border: none;
    cursor: pointer;
    transition: all .2s cubic-bezier(.4,0,.2,1);
}
.codela-segment-btn.is-active {
    background: #fff;
    color: var(--wcp-text, #0f172a);
    box-shadow: 0 1px 4px rgba(0,0,0,.10);
}

/* Eski native select kutusunu gizle */
.codela-cp-native-hidden { display: none !important; }

/* ================================================================
   INVOICE FIELD VISIBILITY
   ================================================================ */
.wc-block-checkout__additional-fields .codela-invoice-hidden,
.codela-cp-hidden,
#codela_personal_id_field.codela-hidden,
#codela_business_id_field.codela-hidden,
#codela_tax_office_field.codela-hidden,
#codela_company_name_field.codela-hidden,
#codela_tckn_field.codela-hidden,
#codela_vkn_field.codela-hidden { display: none !important; }

/* ── Invoice fields özet satırı ── */
.codela-summary-card {
    background: var(--wcp-bg);
    border: 1.5px solid var(--wcp-border);
    border-radius: 10px;
    padding: 12px 16px;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.codela-summary-left { display: flex; align-items: center; gap: 10px; }
.codela-summary-icon {
    width: 36px; height: 36px; border-radius: 8px;
    background: var(--codela-cp-accent-light);
    display: flex; align-items: center; justify-content: center;
    color: var(--codela-cp-accent); flex-shrink: 0;
}
.codela-summary-title { font-size: 13px; font-weight: 600; color: var(--wcp-text); }
.codela-summary-desc { font-size: 12px; color: var(--wcp-text-2); margin-top: 2px; }
.codela-summary-edit-btn {
    background: none; border: none;
    color: var(--codela-cp-accent); font-weight: 600; font-size: 13px;
    cursor: pointer; padding: 5px 9px; border-radius: 7px;
    transition: background var(--wcp-t); white-space: nowrap;
}
.codela-summary-edit-btn:hover { background: var(--codela-cp-accent-light); }

/* ================================================================
   FORM SARMALAYICI — sadece #codela-cp-billing-form-wrap içi
   ================================================================ */
#codela-cp-billing-form-wrap { transition: none; }

/* ── Billing form Apple stili — SADECE #codela-cp-billing-form-wrap içinde ── */
#codela-cp-billing-form-wrap {
    margin-top: 14px;
    padding: 18px;
    border: 1.5px solid var(--wcp-border);
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(248,250,252,.96) 100%);
    box-shadow: 0 14px 34px rgba(15,23,42,.05);
}
#codela-cp-billing-form-wrap .form-row {
    margin-bottom: 14px;
}

#codela-cp-billing-form-wrap .codela-cp-field-label,
#codela-cp-billing-form-wrap .codela-invoice-field > label {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}
#codela-cp-billing-form-wrap .codela-cp-label-text {
    display: inline-block;
    min-height: 1em;
}
#codela-cp-billing-form-wrap .codela-invoice-field label .optional {
    display: none !important;
}
#codela-cp-billing-form-wrap label {
    display: block;
    margin-bottom: 6px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--wcp-text-2);
}
#codela-cp-billing-form-wrap input.input-text,
#codela-cp-billing-form-wrap input[type="text"],
#codela-cp-billing-form-wrap input[type="tel"],
#codela-cp-billing-form-wrap input[type="email"],
#codela-cp-billing-form-wrap textarea,
#codela-cp-billing-form-wrap select {
    width: 100%;
    min-height: 48px;
    border: 1.5px solid var(--wcp-border);
    border-radius: 12px;
    background: rgba(248,250,252,.92);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.85);
    color: var(--wcp-text);
    padding: 12px 14px;
    transition: border-color var(--wcp-t), box-shadow var(--wcp-t), background var(--wcp-t), transform var(--wcp-t);
}
#codela-cp-billing-form-wrap textarea {
    min-height: 108px;
    resize: vertical;
}
#codela-cp-billing-form-wrap input.input-text:focus,
#codela-cp-billing-form-wrap input[type="text"]:focus,
#codela-cp-billing-form-wrap input[type="tel"]:focus,
#codela-cp-billing-form-wrap input[type="email"]:focus,
#codela-cp-billing-form-wrap textarea:focus,
#codela-cp-billing-form-wrap select:focus {
    border-color: var(--codela-cp-accent);
    background: #fff;
    box-shadow: 0 0 0 4px var(--codela-cp-accent-ring);
    outline: none;
}
#codela-cp-billing-form-wrap .select2-container--default .select2-selection--single,
#codela-cp-billing-form-wrap .select2-container--default .select2-selection--multiple {
    min-height: 48px;
    border: 1.5px solid var(--wcp-border);
    border-radius: 12px;
    background: rgba(248,250,252,.92);
}
#codela-cp-billing-form-wrap .select2-container--default.select2-container--focus .select2-selection--single,
#codela-cp-billing-form-wrap .select2-container--default.select2-container--focus .select2-selection--multiple,
#codela-cp-billing-form-wrap .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--codela-cp-accent);
    box-shadow: 0 0 0 4px var(--codela-cp-accent-ring);
}


/* ================================================================
   HESABIM — ADRES DEFTERİ (myaccount.js)
   ================================================================ */
.woocommerce-MyAccount-content .woocommerce-Addresses { margin-bottom: 32px !important; }
.codela-maa-inline-section { clear: both; }
.codela-myaccount-addresses {
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    box-sizing: border-box;
}
.codela-maa-back-link:hover { opacity: 1 !important; }

.codela-maa-header {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 20px; flex-wrap: wrap; gap: 12px;
}
.codela-maa-header h2 { font-size: 1.05rem; font-weight: 700; color: var(--wcp-text); margin: 0; }

.codela-maa-btn {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 8px 14px; border-radius: var(--wcp-r-sm);
    font-size: .85rem; font-weight: 600; cursor: pointer;
    border: none; text-decoration: none;
    transition: background var(--wcp-t), transform var(--wcp-t);
}
.codela-maa-btn--primary { background: var(--wcp-navy); color: #fff; }
.codela-maa-btn--primary:hover { background: var(--wcp-navy-mid); transform: translateY(-1px); color: #fff; }
.codela-maa-btn--ghost { background: transparent; color: var(--wcp-text-2); border: 1.5px solid var(--wcp-border); }
.codela-maa-btn--ghost:hover { background: var(--wcp-bg); border-color: var(--wcp-border-2); }
.codela-maa-btn--danger { background: transparent; color: var(--wcp-red); border: 1.5px solid #fca5a5; }
.codela-maa-btn--danger:hover { background: #fef2f2; }

.codela-maa-grid {
    display: flex;
    width: 100%;
    max-width: none;
    flex-direction: column;
    gap: 8px;
}

/* ── Address card — compact horizontal row ── */
.codela-maa-card {
    width: 100%;
    background: #fff; border: 1.5px solid var(--wcp-border);
    border-radius: 14px; padding: 12px;
    display: flex; flex-direction: row; align-items: center;
    gap: 10px; min-height: 54px;
    transition: border-color var(--wcp-t), box-shadow var(--wcp-t);
    box-sizing: border-box;
}
.codela-maa-card:hover { border-color: var(--wcp-border-2); box-shadow: 0 2px 8px rgba(0,0,0,.06); }

/* ── Checkout: selectable ── */
.codela-maa-card--selectable { cursor: pointer; }
.codela-maa-card--selectable:hover { box-shadow: 0 2px 8px rgba(0,0,0,.06); }
.codela-maa-card--selectable.is-selected {
}

/* Radio dot — left, only in checkout */
.codela-maa-card__radio {
    width: 18px; height: 18px; min-width: 18px; flex-shrink: 0;
    border-radius: 50%; border: 2px solid var(--wcp-border-2, #94a3b8);
    background: #fff; display: flex; align-items: center; justify-content: center;
    transition: all .18s ease; box-sizing: border-box;
}
.codela-maa-card__radio svg { opacity: 0; transition: opacity .15s ease; display: block; }
.codela-maa-card--selectable.is-selected .codela-maa-card__radio {
    background: var(--wcp-navy, #1e3a5f); border-color: var(--wcp-navy, #1e3a5f);
}
.codela-maa-card--selectable.is-selected .codela-maa-card__radio svg { opacity: 1; }

/* Label (truncated, fixed width) */
.codela-maa-card__name {
    font-size: .85rem; font-weight: 700; color: var(--wcp-text);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    flex-shrink: 0; max-width: 110px;
}

/* Address block — stacked, fills remaining space */
.codela-maa-card__addr-block {
    flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 1px;
}
.codela-maa-card__addr-line {
    font-size: .72rem; color: var(--wcp-text-2); line-height: 1.3;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.codela-maa-card__addr-line--inv {
    font-family: var(--wcp-mono); font-size: .68rem; color: var(--wcp-text-3);
}

/* Actions: icon-only buttons */
.codela-maa-card__actions { display: flex; gap: 4px; flex-shrink: 0; align-items: center; }
.codela-maa-icon-btn {
    width: 28px; height: 28px; border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
    background: transparent; border: 1px solid var(--wcp-border);
    color: var(--wcp-text-2); cursor: pointer;
    transition: all .15s ease; flex-shrink: 0; padding: 0;
    line-height: 1;
}
.codela-maa-icon-btn:hover { background: var(--wcp-bg); border-color: var(--wcp-border-2); color: var(--wcp-text); }
.codela-maa-icon-btn--danger:hover { background: #fef2f2; border-color: #fca5a5; color: #dc2626; }

/* Type badge */
.codela-maa-card__badge { font-size: .6rem; font-weight: 700; padding: 2px 6px; border-radius: 4px; letter-spacing: .05em; text-transform: uppercase; flex-shrink: 0; }

/* ── Drawer (slide-up panel) ── */
.codela-maa-overlay {
    position: fixed; inset: 0;
    background: rgba(14,30,48,.5);
    z-index: 999999;
    display: flex; align-items: flex-end; justify-content: center;
    opacity: 0; transition: opacity .2s ease;
    backdrop-filter: blur(4px);
}
.codela-maa-overlay.is-open { opacity: 1; }

.codela-maa-drawer {
    background: #fff; width: 100%; max-width: 540px; max-height: 92vh;
    overflow-y: auto; border-radius: 14px 14px 0 0;
    padding: 22px 22px 40px;
    transform: translateY(100%);
    transition: transform .24s cubic-bezier(.32,1,.28,1);
    -webkit-overflow-scrolling: touch;
}
.codela-maa-overlay.is-open .codela-maa-drawer { transform: translateY(0); }

@media (min-width: 600px) {
    .codela-maa-overlay { align-items: center; }
    .codela-maa-drawer { border-radius: var(--wcp-r); max-height: 88vh; }
}

.codela-maa-drawer__handle { width: 36px; height: 4px; background: var(--wcp-border); border-radius: 3px; margin: 0 auto 18px; }
.codela-maa-drawer__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.codela-maa-drawer__title { font-size: 1rem; font-weight: 700; color: var(--wcp-text); margin: 0; }
.codela-maa-close-btn { background: none; border: none; cursor: pointer; color: var(--wcp-text-3); padding: 6px; border-radius: 6px; display: flex; transition: color var(--wcp-t); }
.codela-maa-close-btn:hover { color: var(--wcp-text); background: var(--wcp-bg); }

/* Form alanları — drawer içinde */
.codela-maa-form-group { margin-bottom: 12px; }
.codela-maa-form-group label {
    display: block; font-size: .66rem; font-weight: 700;
    letter-spacing: .08em; text-transform: uppercase;
    color: var(--wcp-text-2); margin-bottom: 5px;
}
.codela-maa-form-group input,
.codela-maa-form-group select {
    width: 100%; border: 1.5px solid var(--wcp-border);
    border-radius: var(--wcp-r-sm); padding: 10px 12px;
    font-size: .875rem; color: var(--wcp-text);
    background: var(--wcp-bg); outline: none;
    box-sizing: border-box; transition: border-color var(--wcp-t);
}
.codela-maa-form-group input:focus,
.codela-maa-form-group select:focus {
    border-color: var(--wcp-navy);
    background: #fff;
    box-shadow: 0 0 0 3px var(--wcp-navy-ring);
}
.codela-maa-form-error {
    margin: 0 0 14px;
    padding: 10px 12px;
    border-left: 3px solid #dc2626;
    background: #fef2f2;
    color: #991b1b;
    font-size: .8rem;
    line-height: 1.45;
}
.codela-maa-form-group.has-error input,
.codela-maa-form-group.has-error select {
    border-color: #dc2626;
    background: #fff7f7;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, .1);
}
.codela-maa-card.is-incomplete {
    border-color: #f59e0b;
    background: #fffbeb;
}
.codela-maa-card__addr-line--error {
    color: #b45309;
    font-weight: 700;
}

/* ── Müşteri tipi toggle (drawer'da) ── */
.codela-maa-type-toggle { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.codela-maa-type-btn {
    padding: 9px 10px; border: 1.5px solid var(--wcp-border);
    border-radius: var(--wcp-r-sm); background: var(--wcp-bg);
    cursor: pointer; font-size: .85rem; font-weight: 600;
    color: var(--wcp-text-2); display: flex; align-items: center;
    justify-content: center; gap: 6px; transition: all var(--wcp-t);
}
.codela-maa-type-btn.is-active { background: var(--wcp-navy-light); border-color: var(--wcp-navy); color: var(--wcp-navy); }

/* Fatura bilgileri bölüm ayracı */
.codela-maa-inv-divider {
    font-size: .63rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
    color: var(--wcp-text-3); margin: 14px 0 10px;
    display: flex; align-items: center; gap: 8px;
}
.codela-maa-inv-divider::after { content: ''; flex: 1; height: 1px; background: var(--wcp-border); }

.codela-maa-drawer__footer {
    display: flex; gap: 8px;
    margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--wcp-border);
}
.codela-maa-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
@media (max-width: 460px) { .codela-maa-form-grid { grid-template-columns: 1fr; } }

/* Woo Blocks checkout drawer match */
body.codela-cp-blocks-checkout #codela-maa-overlay {
    background: rgba(0, 0, 0, .42);
    backdrop-filter: none;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-drawer {
    width: min(100%, 560px);
    max-height: 92vh;
    padding: 24px 24px 0;
    border: 1px solid #d5d5d5;
    border-radius: 4px 4px 0 0;
    background: #fff;
    color: #2f2f2f;
    font-family: inherit;
    font-size: var(--wp--preset--font-size--small, 14px);
    line-height: 1.4;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .18);
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-drawer__handle {
    display: none;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-drawer__head {
    margin: 0 0 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid #d5d5d5;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-drawer__title {
    color: #2f2f2f;
    font-family: inherit;
    font-size: 1.25em;
    font-weight: 500;
    line-height: 1.4;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-close-btn {
    width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: #50575e;
    opacity: 1;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-close-btn:hover {
    background: #f6f7f7;
    color: #2f2f2f;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-form-grid {
    gap: 12px;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-form-group {
    margin-bottom: 14px;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-form-group label {
    margin: 0 0 6px;
    color: #2f2f2f;
    font-family: inherit;
    font-size: var(--wp--preset--font-size--small, 14px);
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0;
    text-transform: none;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-form-group input,
body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-form-group select {
    min-height: 48px;
    padding: 10px 12px;
    border: 1px solid #949494;
    border-radius: 4px;
    background: #fff;
    color: #2f2f2f;
    font-family: inherit;
    font-size: var(--wp--preset--font-size--small, 14px);
    line-height: 1.4;
    box-shadow: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-form-group input:focus,
body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-form-group select:focus {
    border-color: #2f2f2f;
    background: #fff;
    box-shadow: inset 0 0 0 1px #2f2f2f;
    outline: 1px solid #2f2f2f;
    outline-offset: 2px;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-type-toggle {
    gap: 0;
    overflow: hidden;
    border: 1px solid #d5d5d5;
    border-radius: 4px;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-type-btn {
    min-height: 48px;
    padding: 12px 16px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #2f2f2f;
    font-family: inherit;
    font-size: var(--wp--preset--font-size--small, 14px);
    font-weight: 400;
    line-height: 1.4;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-type-btn + .codela-maa-type-btn {
    border-left: 1px solid #d5d5d5;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-type-btn:hover {
    background: #f6f7f7;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-type-btn.is-active {
    background: #f0f0f0;
    color: #2f2f2f;
    font-weight: 500;
    box-shadow: inset 0 0 0 2px #2f2f2f;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-inv-divider {
    margin: 20px 0 12px;
    color: #2f2f2f;
    font-size: var(--wp--preset--font-size--small, 14px);
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: 0;
    text-transform: none;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-inv-divider::after {
    background: #d5d5d5;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-drawer__footer {
    gap: 8px;
    margin: 24px -24px 0;
    padding: 16px 24px 24px;
    border-top: 1px solid #d5d5d5;
    background: #fff;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-btn {
    min-height: 48px;
    justify-content: center;
    padding: 12px 18px;
    border-radius: 4px;
    font-family: inherit;
    font-size: var(--wp--preset--font-size--small, 14px);
    font-weight: 500;
    line-height: 1.4;
    transform: none;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-btn--primary {
    border: 1px solid #2f2f2f;
    background: #2f2f2f;
    color: #fff;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-btn--primary:hover {
    background: #1e1e1e;
    color: #fff;
    transform: none;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-btn--ghost {
    border: 1px solid #949494;
    background: transparent;
    color: #2f2f2f;
}

body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-btn--ghost:hover {
    border-color: #2f2f2f;
    background: #f6f7f7;
}

@media (min-width: 600px) {
    body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-drawer {
        border-radius: 4px;
        max-height: 88vh;
    }
}

@media (max-width: 460px) {
    body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-drawer {
        width: 100%;
        padding: 20px 20px 0;
    }

    body.codela-cp-blocks-checkout #codela-maa-overlay .codela-maa-drawer__footer {
        margin-right: -20px;
        margin-left: -20px;
        padding-right: 20px;
        padding-left: 20px;
    }
}

.codela-maa-empty { text-align: center; padding: 48px 24px; color: var(--wcp-text-3); }
.codela-maa-empty__icon { font-size: 2.5rem; margin-bottom: 12px; }
.codela-maa-empty__title { font-size: .95rem; font-weight: 700; color: var(--wcp-text-2); margin-bottom: 6px; }
.codela-maa-empty__sub { font-size: .85rem; }
.codela-maa-limit-note { font-size: .78rem; color: var(--wcp-text-3); }



/* Responsive */

@media (max-width: 600px) {
    .codela-cp-addr-card__body { flex-wrap: wrap; }
    .codela-cdl-card-actions { width: 100%; justify-content: flex-start; margin-top: 4px; }
    .codela-cp-addr-card { height: auto; padding: 12px; }
}

.codela-maa-required{display:inline-block;margin-left:4px;color:var(--codela-cp-accent,#2563eb);font-weight:700;}

/* ════════════════════════════════════════════════════════════════════════
   BLOCK CHECKOUT tweaks — selectors are block-only, classic checkout unaffected.
   ════════════════════════════════════════════════════════════════════════ */

/* #2 — Saved-address picker cards: no border at all (selection is shown by the
   radio check + background). */
#codela-cp-blocks-picker .codela-cp-addr-card,
#codela-cp-blocks-picker .codela-cp-addr-card.is-selected,
#codela-cp-blocks-picker .codela-cp-addr-card:hover {
    border: none !important;
    box-shadow: none !important;
}

/* Saved-address cards: square corners. Block picker uses .codela-cp-addr-card;
   the classic checkout list uses .codela-maa-card--selectable. */
.codela-cp-addr-card,
.codela-cp-addr-card.is-selected,
.codela-cp-addr-card--new,
.codela-maa-card--selectable,
.codela-maa-card--selectable.is-selected {
    border-radius: 0 !important;
}

/* ════════════════════════════════════════════════════════════════════════
   CLASSIC CHECKOUT saved-address cards → match the BLOCK picker design.
   Scoped to the checkout-only `.codela-maa-card--selectable` variant, so the
   my-account address list keeps its own look. CSS-grid re-flows the existing
   flat markup into the block's two-row layout (radio | name+badge / address |
   actions) — no myaccount.js change needed.
   ════════════════════════════════════════════════════════════════════════ */

/* The list becomes ONE bordered container; cards are joined by thin separators. */
#codela-maa-grid:has( .codela-maa-card--selectable ) {
    display: flex;
    flex-direction: column;
    gap: 0 !important;
    overflow: hidden;
    border-radius: 4px;
    box-shadow: inset 0 0 0 1px #d5d5d5;
}

.codela-maa-card--selectable {
    display: grid !important;
    grid-template-columns: auto auto auto 1fr auto; /* radio | title | badge | spacer | actions */
    align-items: center;
    column-gap: 8px;
    row-gap: 3px;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 14px 16px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #2f2f2f;
}
.codela-maa-card--selectable + .codela-maa-card--selectable {
    border-top: 1px solid #d5d5d5 !important;
}
.codela-maa-card--selectable:hover {
    background: #f6f7f7 !important;
    box-shadow: none !important;
}
.codela-maa-card--selectable.is-selected {
    background: transparent !important;
    border-radius: 4px !important;
    box-shadow: inset 0 0 0 2px #2f2f2f !important;
}

/* Two rows: title + badge on top; name + address below. Radio & actions span both. */
.codela-maa-card--selectable > .codela-maa-card__radio      { grid-column: 1; grid-row: 1 / 3; }
.codela-maa-card--selectable > .codela-maa-card__name       { grid-column: 2; grid-row: 1; }
.codela-maa-card--selectable > .codela-maa-card__badge      { grid-column: 3; grid-row: 1; justify-self: start; }
.codela-maa-card--selectable > .codela-maa-card__addr-block { grid-column: 2 / 5; grid-row: 2; min-width: 0; }
.codela-maa-card--selectable > .codela-maa-card__actions    { grid-column: 5; grid-row: 1 / 3; }

/* Lower line: name + address flow on ONE line (middot separators); TCKN/VKN hidden. */
.codela-maa-card--selectable .codela-maa-card__addr-block {
    display: flex;
    flex-flow: row wrap;
    align-items: baseline;
    column-gap: 0;
    row-gap: 2px;
}
.codela-maa-card--selectable .codela-maa-card__addr-line {
    white-space: normal;
    overflow: visible;
}
.codela-maa-card--selectable .codela-maa-card__addr-line--inv { display: none; }
.codela-maa-card--selectable .codela-maa-card__addr-line:not( :first-child )::before {
    content: '·';
    margin: 0 6px;
    color: #b0b6bd;
}

/* "Add new address" + icon lives in the selected card's actions (block style). */
.codela-maa-card--selectable .codela-maa-add-card-btn { display: none; }
.codela-maa-card--selectable.is-selected .codela-maa-add-card-btn {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Radio → hollow circle with a filled dot when selected (no checkmark). */
.codela-maa-card--selectable .codela-maa-card__radio {
    width: 20px; height: 20px; min-width: 20px;
    border: 1px solid #757575 !important;
    background: #fff !important;
    position: relative;
}
.codela-maa-card--selectable .codela-maa-card__radio svg { display: none !important; }
.codela-maa-card--selectable.is-selected .codela-maa-card__radio {
    border-color: #2f2f2f !important;
    background: #fff !important;
}
.codela-maa-card--selectable.is-selected .codela-maa-card__radio::before {
    content: '';
    position: absolute;
    top: 50%; left: 50%;
    width: 10px; height: 10px;
    transform: translate( -50%, -50% );
    border-radius: 50%;
    background: #2f2f2f;
}

/* Name → block weight/colour, no truncation. */
.codela-maa-card--selectable .codela-maa-card__name {
    max-width: none;
    font-size: 14px;
    font-weight: 500;
    color: #2f2f2f;
    white-space: normal;
    overflow: visible;
}
.codela-maa-card--selectable.is-selected .codela-maa-card__name { font-weight: 600; }

/* Address lines → block grey, no mono. */
.codela-maa-card--selectable .codela-maa-card__addr-line {
    font-size: 13px;
    color: #50575e;
}
.codela-maa-card--selectable .codela-maa-card__addr-line--inv {
    font-family: inherit;
    color: #50575e;
}

/* Badge → subtle bordered chip (not a filled uppercase pill). */
.codela-maa-card--selectable .codela-maa-card__badge {
    padding: 0 6px !important;
    border: 1px solid #d5d5d5 !important;
    border-radius: 2px !important;
    background: transparent !important;
    color: #50575e !important;
    font-size: .72em !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

/* Action icons → borderless, hover background. */
.codela-maa-card--selectable .codela-maa-icon-btn {
    border: 0 !important;
    border-radius: 4px !important;
    background: transparent !important;
    color: #50575e !important;
}
.codela-maa-card--selectable .codela-maa-icon-btn:hover {
    background: #f6f7f7 !important;
    color: #2f2f2f !important;
}
.codela-maa-card--selectable .codela-maa-icon-btn--danger:hover {
    background: #fff0f0 !important;
    color: #cc1818 !important;
}

/* Shipping-address role lives in the card header next to the address type. */
.codela-shipping-choice {
    display: inline-flex !important;
    align-items: center;
    gap: 5px;
    width: fit-content;
    min-height: 26px;
    margin: 0 !important;
    padding: 3px 7px;
    border: 1px solid #c3c4c7;
    border-radius: 4px;
    background: #fff;
    color: #50575e;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.2;
    cursor: pointer;
    box-sizing: border-box;
    white-space: nowrap;
}
.codela-shipping-choice input[type="radio"] {
    width: 14px;
    height: 14px;
    min-width: 14px;
    margin: 0 !important;
    accent-color: var(--codela-cp-accent, #2271b1);
}
.codela-cp-addr-card.is-shipping .codela-shipping-choice,
.codela-maa-card--selectable.is-shipping .codela-shipping-choice {
    border-color: #4f8a65;
    background: #edf7f0;
    color: #1d5f3a;
    font-weight: 600;
}

/*
 * Classic checkout: when saved-address cards provide the delivery-address
 * choice, retain WooCommerce's native fields for submission but remove the
 * duplicate question and form from the visible interface.
 */
body.codela-cp-manages-native-shipping form.checkout #ship-to-different-address,
body.codela-cp-manages-native-shipping form.woocommerce-checkout #ship-to-different-address,
body.codela-cp-manages-native-shipping form.checkout .ship-to-different-address,
body.codela-cp-manages-native-shipping form.woocommerce-checkout .ship-to-different-address,
body.codela-cp-manages-native-shipping form.checkout .woocommerce-shipping-fields > h3,
body.codela-cp-manages-native-shipping form.woocommerce-checkout .woocommerce-shipping-fields > h3,
body.codela-cp-manages-native-shipping form.checkout .woocommerce-shipping-fields .shipping_address,
body.codela-cp-manages-native-shipping form.woocommerce-checkout .woocommerce-shipping-fields .shipping_address {
    display: none !important;
}

/* Classic checkout: place the shipping role in the header spacer. */
.codela-maa-card--selectable > .codela-shipping-choice {
    grid-column: 4;
    grid-row: 1;
    justify-self: start;
}

@media (max-width: 600px) {
    .codela-shipping-choice {
        white-space: normal;
    }

    .codela-maa-card--selectable > .codela-shipping-choice {
        grid-column: 2 / 5;
        grid-row: 3;
        margin-top: 5px !important;
    }

    .codela-maa-card--selectable > .codela-maa-card__radio,
    .codela-maa-card--selectable > .codela-maa-card__actions {
        grid-row: 1 / 4;
    }
}

/* Checkout address overview: one delivery summary and one billing summary. */
.codela-checkout-address-overview {
    display: grid;
    gap: 12px;
    margin: 0 0 20px;
    font-family: var(--codela-cp-font, inherit);
}
.codela-checkout-address-summary {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    min-width: 0;
    padding: 16px;
    border: 1px solid var(--codela-cp-card-border, #e5e7eb);
    border-radius: 0;
    background: var(--codela-cp-surface, #fff);
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
    box-sizing: border-box;
}
.codela-checkout-address-summary__icon {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    width: 40px;
    height: 34px;
    border: 0;
    border-right: 1px solid #e5e7eb;
    border-radius: 0;
    background: transparent;
    color: #1f2937;
    box-sizing: border-box;
}
.codela-checkout-address-summary__icon svg {
    width: 24px;
    height: 24px;
    shape-rendering: geometricPrecision;
    stroke-width: 1.75;
    vector-effect: non-scaling-stroke;
}
.codela-checkout-address-summary__body {
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 4px;
}
.codela-checkout-address-summary__body strong {
    color: var(--codela-cp-text, #0f172a);
    font-size: 14px;
    line-height: 1.3;
}
.codela-checkout-address-summary__body > span {
    overflow: hidden;
    color: var(--codela-cp-text-soft, #475569);
    font-size: 13px;
    line-height: 1.45;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.codela-checkout-address-summary__change {
    min-height: 36px;
    padding: 7px 12px;
    border: 1px solid var(--codela-cp-card-border, #dcdcde);
    border-radius: 8px;
    background: #fff;
    color: #111827;
    font-size: 13px;
    font-weight: 650;
    line-height: 1;
    cursor: pointer;
}
.codela-checkout-address-summary__change:hover,
.codela-checkout-address-summary__change:focus-visible {
    border-color: #111827;
    box-shadow: 0 0 0 3px rgba(17, 24, 39, .12);
    outline: none;
}
.codela-checkout-address-summary.is-incomplete {
    border-color: #f97316;
    background: #fff7ed;
    box-shadow: 0 0 0 2px rgba(249, 115, 22, .09);
}
.codela-checkout-address-summary.is-incomplete .codela-checkout-address-summary__icon {
    border-right-color: #fed7aa;
    color: #c2410c;
}
.codela-checkout-address-summary__body > .codela-checkout-address-summary__status {
    display: block;
    overflow: visible;
    color: #c2410c;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;
    text-overflow: clip;
    white-space: normal;
}
.codela-checkout-address-summary__status[hidden] {
    display: none !important;
}
.codela-checkout-address-summary.is-incomplete .codela-checkout-address-summary__change {
    border-color: #fdba74;
    background: #fff;
    color: #9a3412;
}
.codela-address-needs-attention {
    animation: codela-address-attention .4s ease 2;
}
@keyframes codela-address-attention {
    0%, 100% { transform: translateX(0); }
    35% { transform: translateX(-4px); }
    70% { transform: translateX(4px); }
}

/* Hide the native form from the first paint when a saved-address summary is rendered. */
#codela-cp-billing-form-wrap.codela-cp-native-billing-fallback {
    display: none;
}
body.codela-cp-enhanced-ready #codela-cp-billing-form-wrap.codela-cp-native-billing-fallback {
    display: none !important;
}

#codela-maa-picker-overlay {
    z-index: 100002;
}
.codela-maa-picker-drawer {
    width: min(560px, calc(100vw - 32px));
}
.codela-maa-picker-list {
    display: grid;
    gap: 10px;
    max-height: min(58vh, 520px);
    overflow: auto;
    padding: 2px;
}
.codela-maa-picker-card {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr) auto auto;
    gap: 10px;
    align-items: center;
    padding: 13px;
    border: 1px solid var(--codela-cp-card-border, #e5e7eb);
    border-radius: 10px;
    background: #fff;
    cursor: pointer;
    box-sizing: border-box;
}
.codela-maa-picker-card:hover,
.codela-maa-picker-card.is-selected {
    border-color: var(--codela-cp-accent, #2271b1);
    background: var(--codela-cp-accent-light, rgba(37, 99, 235, .06));
}
.codela-maa-picker-card.is-incomplete {
    border-color: #fdba74;
    background: #fff7ed;
}
.codela-maa-picker-card__body > .codela-maa-picker-card__error {
    color: #c2410c;
    font-weight: 700;
    white-space: normal;
}
.codela-maa-picker-card__check {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border: 1px solid #cbd5e1;
    border-radius: 50%;
    color: transparent;
}
.codela-maa-picker-card.is-selected .codela-maa-picker-card__check {
    border-color: var(--codela-cp-accent, #2271b1);
    background: var(--codela-cp-accent, #2271b1);
    color: #fff;
}
.codela-maa-picker-card__check svg {
    width: 12px;
    height: 12px;
}
.codela-maa-picker-card__body {
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 3px;
}
.codela-maa-picker-card__body strong {
    color: var(--codela-cp-text, #0f172a);
    font-size: 14px;
    line-height: 1.3;
}
.codela-maa-picker-card__body > span {
    overflow: hidden;
    color: var(--codela-cp-text-soft, #475569);
    font-size: 12px;
    line-height: 1.4;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.codela-maa-picker-card__actions {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
#codela-maa-overlay.is-shipping-context .codela-maa-billing-only,
#codela-maa-overlay.is-shipping-context .codela-maa-inv-section {
    display: none !important;
}

@media (max-width: 600px) {
    .codela-checkout-address-summary {
        grid-template-columns: 36px minmax(0, 1fr) auto;
        gap: 9px;
        padding: 13px;
    }
    .codela-checkout-address-summary__icon {
        width: 36px;
        height: 32px;
    }
    .codela-checkout-address-summary__body > span {
        font-size: 12px;
    }
    .codela-checkout-address-summary__change {
        min-height: 34px;
        padding: 6px 9px;
        font-size: 12px;
    }
    .codela-maa-picker-drawer {
        width: 100%;
    }
    .codela-maa-picker-card {
        grid-template-columns: 22px minmax(0, 1fr) auto;
    }
    .codela-maa-picker-card > .codela-maa-card__badge {
        display: none;
    }
    .codela-maa-picker-card__actions {
        grid-column: 3;
        grid-row: 1;
    }
}

/* ──────────────────────────────────────────────────────────────
 * My Account → "My Billing Addresses" cards.
 *
 * Adopt the account surface's monochrome editorial tokens (border,
 * radius, shadow, accent) so the cards match the rest of My Account.
 * Scoped to the account body class only — the checkout address
 * selector keeps its own look. Nothing here changes layout, sizing
 * or the address-book markup/JS; these are colour/border/radius only.
 * ────────────────────────────────────────────────────────────── */
body.codela-my-account-layout .codela-maa-header h2 {
    color: var(--cdl-account-ink);
}
body.codela-my-account-layout .codela-maa-btn--primary {
    border-radius: var(--cdl-sf-radius-control);
    background: var(--cdl-account-accent);
    color: var(--cdl-account-on-accent);
    font-size: .75rem;
    letter-spacing: var(--cdl-sf-label-tracking);
    text-transform: uppercase;
}
body.codela-my-account-layout .codela-maa-btn--primary:hover {
    background: var(--cdl-account-accent-hover);
    color: var(--cdl-account-on-accent-hover);
}
body.codela-my-account-layout .codela-maa-btn--ghost {
    border-radius: var(--cdl-sf-radius-control);
    border-color: var(--cdl-account-line);
    color: var(--cdl-account-text);
}
body.codela-my-account-layout .codela-maa-btn--ghost:hover {
    background: var(--cdl-account-soft);
    border-color: var(--cdl-account-line-strong);
}
body.codela-my-account-layout .codela-maa-btn--danger {
    border-radius: var(--cdl-sf-radius-control);
    border-color: var(--cdl-sf-danger);
    color: var(--cdl-sf-danger);
}
body.codela-my-account-layout .codela-maa-btn--danger:hover {
    background: var(--cdl-sf-danger-soft);
}
body.codela-my-account-layout .codela-maa-card:not(.codela-maa-card--selectable) {
    border-width: 1px;
    border-color: var(--cdl-account-line);
    border-radius: var(--cdl-sf-radius-surface);
    background: var(--cdl-account-surface);
}
body.codela-my-account-layout .codela-maa-card:not(.codela-maa-card--selectable):hover {
    border-color: var(--cdl-account-line-strong);
    box-shadow: none;
}
body.codela-my-account-layout .codela-maa-card__name {
    color: var(--cdl-account-ink);
}
body.codela-my-account-layout .codela-maa-card__addr-line {
    color: var(--cdl-account-muted);
}
body.codela-my-account-layout .codela-maa-card__addr-line--inv {
    color: var(--cdl-account-muted);
}
body.codela-my-account-layout .codela-maa-icon-btn {
    border-radius: var(--cdl-sf-radius-control);
    border-color: var(--cdl-account-line);
    color: var(--cdl-account-muted);
}
body.codela-my-account-layout .codela-maa-icon-btn:hover {
    background: var(--cdl-account-soft);
    border-color: var(--cdl-account-line-strong);
    color: var(--cdl-account-ink);
}
body.codela-my-account-layout .codela-maa-icon-btn--danger:hover {
    background: var(--cdl-sf-danger-soft);
    border-color: var(--cdl-sf-danger);
    color: var(--cdl-sf-danger);
}
body.codela-my-account-layout .codela-maa-card__badge {
    border-radius: var(--cdl-sf-radius-control);
}
/* Type badge (individual/company): drop the blue/amber pastels for a
   neutral chip; the label text still says which type it is. */
body.codela-my-account-layout .codela-cp-badge--individual,
body.codela-my-account-layout .codela-cp-badge--company {
    background: var(--cdl-account-soft);
    color: var(--cdl-account-muted);
}
body.codela-my-account-layout .codela-maa-card.is-incomplete {
    border-color: var(--cdl-sf-warning);
    background: var(--cdl-sf-warning-soft);
}
