/* Apexa — üyelik, sepet, ödeme ve sipariş sayfaları için stiller */

/* --- Başlıktaki hesap / sepet butonları --- */
.apx-header-actions .apx-icon-btn {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .5rem .85rem;
    border: 1px solid rgba(0, 0, 0, .1);
    border-radius: 999px;
    background: #fff;
    color: #2d4258;
    font-size: .875rem;
    font-weight: 600;
    text-decoration: none;
    line-height: 1;
    white-space: nowrap;
    transition: border-color .2s, color .2s, background .2s;
}

.apx-header-actions .apx-icon-btn:hover {
    border-color: #3b7ddd;
    color: #2f6fd0;
    background: rgba(59, 125, 221, .05);
}

.apx-header-actions .apx-icon-btn i {
    font-size: 1.05rem;
}

.apx-cart-btn {
    position: relative;
}

.apx-cart-badge {
    position: absolute;
    top: -6px;
    right: -6px;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    border-radius: 999px;
    background: #e05c78;
    color: #fff;
    font-size: .7rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (max-width: 1399.98px) {
    .apx-user-name {
        display: none;
    }
}

/* --- Form kartları (giriş, kayıt, profil, ödeme) --- */
.apx-auth-card {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .07);
    border-radius: 16px;
    padding: 2rem;
    box-shadow: 0 4px 24px rgba(45, 66, 88, .06);
}

.apx-form-section {
    font-size: .8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #7d8ea3;
    padding-bottom: .6rem;
    margin-bottom: 1.1rem;
    border-bottom: 1px solid rgba(0, 0, 0, .07);
}

.apx-auth-card .form-label {
    font-size: .85rem;
    font-weight: 600;
    color: #4a5c70;
    margin-bottom: .35rem;
}

.apx-auth-card .form-control {
    border-radius: 10px;
    border-color: #dde5ef;
    padding: .65rem .9rem;
}

.apx-auth-card .form-control:focus {
    border-color: #3b7ddd;
    box-shadow: 0 0 0 .2rem rgba(59, 125, 221, .12);
}

/* --- Kart bilgileri bloğu --- */
.apx-card-form {
    border-color: rgba(59, 125, 221, .3);
    background: linear-gradient(180deg, #fbfdff 0%, #f4f8fd 100%);
}

.apx-card-privacy {
    display: flex;
    align-items: flex-start;
    gap: .6rem;
    font-size: .8rem;
    line-height: 1.55;
    color: #5a6b7e;
    padding: .8rem 1rem;
    border-radius: 10px;
    background: rgba(74, 222, 155, .1);
    border: 1px solid rgba(74, 222, 155, .28);
}

.apx-card-privacy i {
    color: #26a86b;
    font-size: 1rem;
    flex-shrink: 0;
}

/* --- Sepet satırları --- */
.apx-cart-line {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    flex-wrap: wrap;
    padding: 1.15rem;
    margin-bottom: 1rem;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .07);
    border-radius: 14px;
}

.apx-cart-thumb {
    width: 84px;
    height: 84px;
    object-fit: contain;
    background: #f5f9fe;
    border-radius: 10px;
    flex-shrink: 0;
}

.apx-cart-info {
    flex: 1 1 220px;
    min-width: 0;
}

.apx-cart-info h5 {
    font-size: 1rem;
    line-height: 1.4;
}

.apx-cart-info h5 a {
    color: #2d4258;
    text-decoration: none;
}

.apx-cart-info h5 a:hover {
    color: #2f6fd0;
}

.apx-cart-actions {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    flex-wrap: wrap;
    margin-left: auto;
}

.apx-qty {
    width: 78px;
    text-align: center;
    border-radius: 8px;
}

.apx-cart-total {
    font-size: 1.1rem;
    font-weight: 700;
    color: #2d4258;
    min-width: 110px;
    text-align: right;
}

/* --- Sipariş özeti kutusu --- */
.apx-summary-card {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .07);
    border-radius: 16px;
    padding: 1.75rem;
    box-shadow: 0 4px 24px rgba(45, 66, 88, .06);
}

.apx-sticky {
    position: sticky;
    top: 100px;
}

.apx-summary-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: .5rem 0;
    font-size: .925rem;
    color: #5a6b7e;
}

.apx-summary-total {
    margin-top: .5rem;
    padding-top: 1rem;
    border-top: 2px solid rgba(0, 0, 0, .08);
    font-size: 1.1rem;
    color: #2d4258;
}

.apx-summary-total strong {
    font-size: 1.35rem;
    color: #2f6fd0;
}

.apx-summary-item {
    display: flex;
    align-items: center;
    gap: .85rem;
    padding: .6rem 0;
    font-size: .875rem;
}

.apx-summary-item img {
    width: 48px;
    height: 48px;
    object-fit: contain;
    background: #f5f9fe;
    border-radius: 8px;
    flex-shrink: 0;
}

.apx-summary-item-name {
    font-weight: 600;
    color: #2d4258;
    line-height: 1.35;
}

/* --- Ürün kartı butonları --- */
.apx-card-actions {
    display: grid;
    gap: .5rem;
}

.apx-add-to-cart .apx-qty {
    width: 90px;
}

/* --- Sipariş listesi --- */
.apx-order-card {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .07);
    border-radius: 14px;
    margin-bottom: 1.15rem;
    overflow: hidden;
}

.apx-order-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
    padding: 1.15rem 1.35rem;
    background: #f7fafe;
    border-bottom: 1px solid rgba(0, 0, 0, .06);
}

.apx-order-number {
    font-weight: 700;
    color: #2d4258;
    font-size: 1.05rem;
}

.apx-order-amount {
    font-size: 1.15rem;
    font-weight: 700;
    color: #2f6fd0;
    margin-top: .3rem;
}

.apx-order-body {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    flex-wrap: wrap;
    padding: 1.15rem 1.35rem;
}

.apx-order-thumbs {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.apx-order-thumbs img {
    width: 52px;
    height: 52px;
    object-fit: contain;
    background: #f5f9fe;
    border: 1px solid rgba(0, 0, 0, .06);
    border-radius: 8px;
}

.apx-order-more {
    font-size: .8rem;
    font-weight: 600;
    color: #7d8ea3;
    padding: 0 .35rem;
}

.apx-order-meta {
    display: flex;
    align-items: center;
    gap: .75rem;
    flex-wrap: wrap;
    font-size: .85rem;
    color: #5a6b7e;
    margin-left: auto;
}

/* --- Sipariş tablosu --- */
.apx-order-table th {
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #7d8ea3;
    font-weight: 700;
    border-bottom-width: 1px;
}

.apx-order-thumb {
    width: 52px;
    height: 52px;
    object-fit: contain;
    background: #f5f9fe;
    border-radius: 8px;
    flex-shrink: 0;
}

.apx-order-table td a {
    color: #2d4258;
    text-decoration: none;
}

.apx-order-table td a:hover {
    color: #2f6fd0;
}

.apx-order-table tfoot td {
    border-top: 1px solid rgba(0, 0, 0, .06);
    font-size: .9rem;
}

.apx-order-table .apx-order-total td {
    font-size: 1.05rem;
    font-weight: 700;
    color: #2d4258;
    border-top: 2px solid rgba(0, 0, 0, .1);
}

/* --- Bilgi kartları (sipariş detayı) --- */
.apx-info-card {
    height: 100%;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .07);
    border-radius: 14px;
    padding: 1.35rem;
}

.apx-info-card h6 {
    font-size: .78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #7d8ea3;
    margin-bottom: .8rem;
}

/* --- Başarı kutusu --- */
.apx-success-box {
    background: #fff;
    border: 1px solid rgba(74, 222, 155, .35);
    border-radius: 16px;
    padding: 2.5rem 2rem;
}

.apx-success-box > i {
    font-size: 3.5rem;
    color: #26a86b;
}

.apx-success-total {
    font-size: 2rem;
    font-weight: 700;
    color: #2d4258;
}

/* --- Boş durum ikonu --- */
.apx-empty-icon {
    font-size: 4rem;
    color: #c3d4e8;
}
