/* SarisanDijital V20 — sifirdan ödeme ve sepet arayüzü */
body.page-order,
body.page-payment {
    --c20-bg: #f3f5fb;
    --c20-surface: #ffffff;
    --c20-surface-soft: #f8f9fd;
    --c20-text: #0d1733;
    --c20-muted: #6c7690;
    --c20-line: rgba(13, 23, 51, .10);
    --c20-line-strong: rgba(13, 23, 51, .16);
    --c20-primary: #6550ff;
    --c20-blue: #2f7bff;
    --c20-pink: #ef2f73;
    --c20-success: #20b77a;
    --c20-danger: #ef2f73;
    --c20-radius-xl: 28px;
    --c20-radius-lg: 22px;
    --c20-radius-md: 16px;
    --c20-shadow: 0 24px 70px rgba(19, 31, 70, .10);
    --c20-shadow-soft: 0 12px 34px rgba(19, 31, 70, .07);
    background: var(--c20-bg) !important;
    color: var(--c20-text);
}

body.page-order *,
body.page-payment * {
    box-sizing: border-box;
}

/* Başlık */
body.page-order .checkout20-hero,
body.page-payment .checkout20-hero {
    position: relative !important;
    min-height: 0 !important;
    padding: 62px 0 64px !important;
    overflow: hidden !important;
    background:
        linear-gradient(rgba(13, 23, 51, .035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(13, 23, 51, .035) 1px, transparent 1px),
        radial-gradient(circle at 9% 18%, rgba(45, 191, 241, .18), transparent 31%),
        radial-gradient(circle at 90% 12%, rgba(244, 91, 160, .16), transparent 29%),
        linear-gradient(115deg, #edf6ff 0%, #f0efff 54%, #fff1f8 100%) !important;
    background-size: 42px 42px, 42px 42px, auto, auto, auto !important;
    clip-path: none !important;
}

body.page-order .checkout20-hero::before,
body.page-payment .checkout20-hero::before,
body.page-order .checkout20-hero::after,
body.page-payment .checkout20-hero::after {
    display: none !important;
}

body.page-order .checkout20-hero .container,
body.page-payment .checkout20-hero .container,
body.page-order .checkout20-page .container,
body.page-payment .checkout20-page .container {
    width: min(1280px, calc(100% - 48px)) !important;
    max-width: none !important;
}

body.page-order .checkout20-hero-inner,
body.page-payment .checkout20-hero-inner {
    display: grid !important;
    grid-template-columns: 82px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 24px !important;
    max-width: 1000px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    text-align: left !important;
}

body.page-order .checkout20-hero-icon,
body.page-payment .checkout20-hero-icon {
    position: static !important;
    display: grid !important;
    width: 82px !important;
    min-width: 82px !important;
    height: 82px !important;
    place-items: center !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 24px !important;
    color: #fff !important;
    background: linear-gradient(135deg, var(--c20-primary), var(--c20-blue)) !important;
    box-shadow: 0 18px 42px rgba(68, 87, 255, .25) !important;
    font-size: 32px !important;
}

body.page-order .checkout20-hero-icon i,
body.page-payment .checkout20-hero-icon i {
    margin: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
    line-height: 1 !important;
}

body.page-order .checkout20-hero-copy,
body.page-payment .checkout20-hero-copy {
    position: static !important;
    display: block !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: normal !important;
}

body.page-order .checkout20-eyebrow,
body.page-payment .checkout20-eyebrow {
    display: block;
    margin: 0 0 7px;
    color: var(--c20-primary);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .14em;
}

body.page-order .checkout20-hero h1,
body.page-payment .checkout20-hero h1 {
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    color: var(--c20-text) !important;
    font-size: clamp(42px, 5vw, 64px) !important;
    font-weight: 900 !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

body.page-order .checkout20-hero p,
body.page-payment .checkout20-hero p {
    display: block !important;
    max-width: 850px !important;
    margin: 14px 0 0 !important;
    color: var(--c20-muted) !important;
    font-size: 17px !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
    word-break: normal !important;
}

/* Sayfa yerleşimi */
body.page-order .checkout20-page,
body.page-payment .checkout20-page {
    position: relative !important;
    min-height: 620px;
    padding: 44px 0 100px !important;
    background: var(--c20-bg) !important;
}

body.page-order .checkout20-form,
body.page-payment .checkout20-form {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}

body.page-order .checkout20-grid,
body.page-payment .checkout20-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1.65fr) minmax(350px, .72fr) !important;
    align-items: start !important;
    gap: 28px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.page-order .checkout20-main,
body.page-payment .checkout20-main,
body.page-order .checkout20-sidebar,
body.page-payment .checkout20-sidebar {
    display: grid !important;
    min-width: 0 !important;
    width: 100% !important;
    gap: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.page-order .checkout20-card,
body.page-payment .checkout20-card {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 28px !important;
    overflow: visible !important;
    border: 1px solid var(--c20-line) !important;
    border-radius: var(--c20-radius-xl) !important;
    background: var(--c20-surface) !important;
    box-shadow: var(--c20-shadow-soft) !important;
    transform: none !important;
}

body.page-order .checkout20-summary-card,
body.page-payment .checkout20-summary-card {
    position: sticky !important;
    top: 110px !important;
    padding: 26px !important;
    box-shadow: var(--c20-shadow) !important;
}

body.page-order .checkout20-card-head,
body.page-payment .checkout20-card-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    width: 100% !important;
    margin: 0 0 22px !important;
    padding: 0 0 20px !important;
    border-bottom: 1px solid var(--c20-line) !important;
}

body.page-order .checkout20-card-head > div,
body.page-payment .checkout20-card-head > div {
    min-width: 0;
}

body.page-order .checkout20-section-kicker,
body.page-payment .checkout20-section-kicker {
    display: block;
    margin: 0 0 5px;
    color: var(--c20-primary);
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .13em;
}

body.page-order .checkout20-card-head h2,
body.page-payment .checkout20-card-head h2 {
    margin: 0 !important;
    color: var(--c20-text) !important;
    font-size: 23px !important;
    font-weight: 850 !important;
    line-height: 1.15 !important;
    letter-spacing: -.025em !important;
}

body.page-order .checkout20-order-count,
body.page-payment .checkout20-order-count,
body.page-order .checkout20-secure-badge,
body.page-payment .checkout20-secure-badge {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 7px !important;
    min-height: 36px !important;
    padding: 0 13px !important;
    border: 1px solid rgba(101, 80, 255, .16) !important;
    border-radius: 999px !important;
    color: var(--c20-primary) !important;
    background: rgba(101, 80, 255, .07) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    white-space: nowrap !important;
}

body.page-order .checkout20-secure-badge,
body.page-payment .checkout20-secure-badge {
    color: var(--c20-success) !important;
    border-color: rgba(32, 183, 122, .18) !important;
    background: rgba(32, 183, 122, .07) !important;
}

/* Sepet */
body.page-order #sepet-items.checkout20-cart-list,
body.page-payment #sepet-items.checkout20-cart-list,
body.page-order #sepet-items,
body.page-payment #sepet-items {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.page-order .checkout20-cart-item,
body.page-payment .checkout20-cart-item {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 68px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 18px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 112px !important;
    margin: 0 !important;
    padding: 18px !important;
    border: 1px solid var(--c20-line) !important;
    border-radius: 20px !important;
    background: var(--c20-surface-soft) !important;
    color: var(--c20-text) !important;
    box-shadow: none !important;
}

body.page-order .checkout20-platform-icon,
body.page-payment .checkout20-platform-icon {
    position: relative !important;
    display: grid !important;
    width: 68px !important;
    height: 68px !important;
    place-items: center !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 19px !important;
    color: #fff !important;
    background: var(--cart-platform-color, var(--c20-primary)) !important;
    box-shadow: 0 13px 28px rgba(33, 45, 85, .16) !important;
    overflow: hidden !important;
}

body.page-order .checkout20-platform-icon::after,
body.page-payment .checkout20-platform-icon::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(145deg, rgba(255, 255, 255, .22), transparent 58%);
    pointer-events: none;
}

body.page-order .checkout20-platform-icon i,
body.page-payment .checkout20-platform-icon i {
    position: relative !important;
    z-index: 1 !important;
    margin: 0 !important;
    color: #fff !important;
    font-size: 29px !important;
    line-height: 1 !important;
}

body.page-order .checkout20-cart-copy,
body.page-payment .checkout20-cart-copy {
    display: flex !important;
    min-width: 0 !important;
    width: 100% !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 4px !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.page-order .checkout20-platform-name,
body.page-payment .checkout20-platform-name {
    display: block !important;
    color: var(--cart-platform-color, var(--c20-primary)) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
}

body.page-order .checkout20-package-name,
body.page-payment .checkout20-package-name {
    display: block !important;
    max-width: 100% !important;
    margin: 0 !important;
    color: var(--c20-text) !important;
    font-size: 17px !important;
    font-weight: 850 !important;
    line-height: 1.35 !important;
    overflow-wrap: anywhere !important;
}

body.page-order .checkout20-target,
body.page-payment .checkout20-target {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    max-width: 100% !important;
    margin: 2px 0 0 !important;
    color: var(--c20-muted) !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

body.page-order .checkout20-target i,
body.page-payment .checkout20-target i {
    flex: 0 0 auto;
    font-size: 14px;
}

body.page-order .checkout20-target span,
body.page-payment .checkout20-target span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.page-order .checkout20-quantity,
body.page-payment .checkout20-quantity {
    display: inline-flex;
    margin-top: 5px;
    padding: 4px 8px;
    border-radius: 8px;
    color: var(--c20-muted);
    background: #eef1f8;
    font-size: 11px;
    font-weight: 800;
}

body.page-order .checkout20-cart-actions,
body.page-payment .checkout20-cart-actions {
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 !important;
}

body.page-order .checkout20-price,
body.page-payment .checkout20-price {
    display: inline-flex !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 14px !important;
    border-radius: 13px !important;
    color: var(--c20-text) !important;
    background: #e9ecf4 !important;
    font-size: 15px !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
}

body.page-order .checkout20-remove,
body.page-payment .checkout20-remove {
    display: grid !important;
    width: 42px !important;
    height: 42px !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(239, 47, 115, .12) !important;
    border-radius: 13px !important;
    color: var(--c20-danger) !important;
    background: rgba(239, 47, 115, .09) !important;
    font-size: 19px !important;
    cursor: pointer !important;
    transition: transform .2s ease, background-color .2s ease !important;
}

body.page-order .checkout20-remove:hover,
body.page-payment .checkout20-remove:hover {
    color: #fff !important;
    background: var(--c20-danger) !important;
    transform: translateY(-2px) !important;
}

body.page-order .checkout20-empty,
body.page-payment .checkout20-empty,
body.page-order .checkout20-loading,
body.page-payment .checkout20-loading {
    display: flex !important;
    min-height: 128px !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 25px !important;
    border: 1px dashed var(--c20-line-strong) !important;
    border-radius: 20px !important;
    color: var(--c20-muted) !important;
    background: var(--c20-surface-soft) !important;
    text-align: center !important;
}

body.page-order .checkout20-empty i,
body.page-payment .checkout20-empty i {
    color: var(--c20-primary);
    font-size: 28px;
}

body.page-order .checkout20-empty strong,
body.page-payment .checkout20-empty strong {
    color: var(--c20-text);
    font-size: 16px;
}

body.page-order .checkout20-empty a,
body.page-payment .checkout20-empty a {
    color: var(--c20-primary);
    font-weight: 800;
}

.checkout20-spinner {
    width: 26px;
    height: 26px;
    border: 3px solid rgba(101, 80, 255, .16);
    border-top-color: var(--c20-primary);
    border-radius: 50%;
    animation: checkout20-spin .8s linear infinite;
}

@keyframes checkout20-spin { to { transform: rotate(360deg); } }

/* Form */
body.page-order .checkout20-fields,
body.page-payment .checkout20-fields {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 17px !important;
    width: 100% !important;
}

body.page-order .checkout20-field,
body.page-payment .checkout20-field {
    display: block !important;
    min-width: 0 !important;
    margin: 0 !important;
}

body.page-order .checkout20-field-full,
body.page-payment .checkout20-field-full {
    grid-column: 1 / -1 !important;
}

body.page-order .checkout20-field > label,
body.page-payment .checkout20-field > label {
    display: block !important;
    margin: 0 0 8px !important;
    color: #46506a !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

body.page-order .checkout20-input-wrap,
body.page-payment .checkout20-input-wrap {
    position: relative !important;
    display: flex !important;
    min-height: 58px !important;
    align-items: center !important;
    width: 100% !important;
    border: 1px solid var(--c20-line-strong) !important;
    border-radius: 16px !important;
    background: #fff !important;
    transition: border-color .2s ease, box-shadow .2s ease !important;
}

body.page-order .checkout20-input-wrap:focus-within,
body.page-payment .checkout20-input-wrap:focus-within {
    border-color: rgba(101, 80, 255, .58) !important;
    box-shadow: 0 0 0 4px rgba(101, 80, 255, .09) !important;
}

body.page-order .checkout20-input-wrap > i,
body.page-payment .checkout20-input-wrap > i {
    display: grid !important;
    width: 54px !important;
    min-width: 54px !important;
    height: 28px !important;
    place-items: center !important;
    margin: 0 !important;
    border-right: 1px solid var(--c20-line) !important;
    color: #7d87a0 !important;
    font-size: 19px !important;
}

body.page-order .checkout20-field .form-control,
body.page-payment .checkout20-field .form-control {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 17px !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 0 16px 16px 0 !important;
    color: var(--c20-text) !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 15px !important;
    font-weight: 550 !important;
}

body.page-order .checkout20-field select.form-control,
body.page-payment .checkout20-field select.form-control {
    border: 1px solid var(--c20-line-strong) !important;
    border-radius: 16px !important;
    background: #fff !important;
}

body.page-order .checkout20-textarea-wrap,
body.page-payment .checkout20-textarea-wrap {
    align-items: flex-start !important;
}

body.page-order .checkout20-textarea-wrap > i,
body.page-payment .checkout20-textarea-wrap > i {
    margin-top: 14px !important;
}

body.page-order .checkout20-field textarea.form-control,
body.page-payment .checkout20-field textarea.form-control {
    min-height: 105px !important;
    padding-top: 16px !important;
    resize: vertical !important;
}

body.page-order .checkout20-save-contact,
body.page-payment .checkout20-save-contact {
    margin-top: 20px !important;
    padding-top: 20px !important;
    border-top: 1px solid var(--c20-line) !important;
}

body.page-order .checkout20-save-label,
body.page-payment .checkout20-save-label {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    margin: 0 !important;
    cursor: pointer !important;
}

body.page-order #saveContact724,
body.page-payment #saveContact724,
body.page-order #success,
body.page-payment #success {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.page-order .checkout20-save-box,
body.page-payment .checkout20-save-box,
body.page-order .checkout20-contract-box,
body.page-payment .checkout20-contract-box {
    display: grid !important;
    width: 24px !important;
    min-width: 24px !important;
    height: 24px !important;
    place-items: center !important;
    border: 1px solid var(--c20-line-strong) !important;
    border-radius: 8px !important;
    color: transparent !important;
    background: #fff !important;
    font-size: 15px !important;
    transition: .2s ease !important;
}

body.page-order #saveContact724:checked + .checkout20-save-box,
body.page-payment #saveContact724:checked + .checkout20-save-box,
body.page-order #success:checked + .checkout20-contract-box,
body.page-payment #success:checked + .checkout20-contract-box {
    border-color: var(--c20-primary) !important;
    color: #fff !important;
    background: var(--c20-primary) !important;
}

body.page-order .checkout20-save-copy,
body.page-payment .checkout20-save-copy {
    display: flex !important;
    min-width: 0 !important;
    flex-direction: column !important;
    gap: 3px !important;
}

body.page-order .checkout20-save-copy strong,
body.page-payment .checkout20-save-copy strong {
    color: var(--c20-text) !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1.35 !important;
}

body.page-order .checkout20-save-copy small,
body.page-payment .checkout20-save-copy small {
    color: var(--c20-muted) !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
}

/* Ödeme özeti */
body.page-order .checkout20-summary-head,
body.page-payment .checkout20-summary-head {
    margin-bottom: 8px !important;
}

body.page-order .checkout20-lock,
body.page-payment .checkout20-lock {
    display: grid !important;
    width: 42px !important;
    height: 42px !important;
    place-items: center !important;
    border-radius: 13px !important;
    color: var(--c20-primary) !important;
    background: rgba(101, 80, 255, .08) !important;
    font-size: 19px !important;
}

body.page-order #totals.checkout20-totals,
body.page-payment #totals.checkout20-totals,
body.page-order .checkout20-totals,
body.page-payment .checkout20-totals {
    display: grid !important;
    gap: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 8px 0 0 !important;
    list-style: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}

body.page-order #totals li,
body.page-payment #totals li {
    display: flex !important;
    min-height: 42px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 8px 0 !important;
    border: 0 !important;
    color: var(--c20-muted) !important;
    background: transparent !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}

body.page-order #totals li strong,
body.page-payment #totals li strong,
body.page-order #totals li > span:last-child,
body.page-payment #totals li > span:last-child {
    margin: 0 !important;
    padding: 0 !important;
    color: #3e4863 !important;
    background: transparent !important;
    font-size: 15px !important;
    font-weight: 850 !important;
    white-space: nowrap !important;
}

body.page-order #totals .checkout20-total-row,
body.page-payment #totals .checkout20-total-row {
    min-height: 48px !important;
    margin-top: 6px !important;
    padding: 13px 0 8px !important;
    border-top: 1px solid var(--c20-line) !important;
    border-radius: 0 !important;
    color: var(--c20-text) !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 15px !important;
    font-weight: 850 !important;
}

body.page-order #totals .checkout20-total-row strong,
body.page-payment #totals .checkout20-total-row strong {
    color: var(--c20-primary) !important;
    font-size: 19px !important;
    font-weight: 900 !important;
}

body.page-order .checkout20-divider,
body.page-payment .checkout20-divider {
    width: 100%;
    height: 1px;
    margin: 20px 0;
    background: var(--c20-line);
}

body.page-order .checkout20-method-title,
body.page-payment .checkout20-method-title {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 0 0 12px !important;
}

body.page-order .checkout20-method-title > span,
body.page-payment .checkout20-method-title > span {
    color: var(--c20-text) !important;
    font-size: 15px !important;
    font-weight: 850 !important;
}

body.page-order .checkout20-method-title small,
body.page-payment .checkout20-method-title small {
    color: var(--c20-muted) !important;
    font-size: 11px !important;
}

body.page-order .PaymentMethod.checkout20-methods,
body.page-payment .PaymentMethod.checkout20-methods,
body.page-order .checkout20-methods,
body.page-payment .checkout20-methods {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
}

body.page-order .checkout20-methods ul,
body.page-payment .checkout20-methods ul {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 11px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body.page-order .checkout20-methods li,
body.page-payment .checkout20-methods li {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 46px minmax(0, 1fr) 22px !important;
    align-items: center !important;
    gap: 13px !important;
    width: 100% !important;
    min-height: 76px !important;
    margin: 0 !important;
    padding: 13px 14px !important;
    overflow: hidden !important;
    border: 1px solid var(--c20-line) !important;
    border-radius: 17px !important;
    color: var(--c20-text) !important;
    background: var(--c20-surface-soft) !important;
    box-shadow: none !important;
    cursor: pointer !important;
    user-select: none !important;
    transition: border-color .2s ease, background-color .2s ease, transform .2s ease !important;
}

body.page-order .checkout20-methods li:hover,
body.page-payment .checkout20-methods li:hover {
    border-color: rgba(101, 80, 255, .30) !important;
    transform: translateY(-1px) !important;
}

body.page-order .checkout20-methods li.selected,
body.page-payment .checkout20-methods li.selected {
    border-color: rgba(101, 80, 255, .72) !important;
    background: rgba(101, 80, 255, .055) !important;
    box-shadow: 0 0 0 3px rgba(101, 80, 255, .07) !important;
}

body.page-order .checkout20-method-icon,
body.page-payment .checkout20-method-icon {
    display: grid !important;
    width: 46px !important;
    height: 46px !important;
    place-items: center !important;
    border-radius: 14px !important;
    color: var(--c20-primary) !important;
    background: rgba(101, 80, 255, .10) !important;
    font-size: 21px !important;
}

body.page-order .checkout20-method-copy,
body.page-payment .checkout20-method-copy {
    display: flex !important;
    min-width: 0 !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 4px !important;
}

body.page-order .checkout20-methods li .top,
body.page-payment .checkout20-methods li .top,
body.page-order .checkout20-methods li .bottom,
body.page-payment .checkout20-methods li .bottom {
    position: static !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

body.page-order .checkout20-methods li .top span,
body.page-payment .checkout20-methods li .top span {
    color: var(--c20-text) !important;
    font-size: 15px !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
}

body.page-order .checkout20-methods li .bottom span,
body.page-payment .checkout20-methods li .bottom span {
    color: var(--c20-muted) !important;
    font-size: 12px !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
}

body.page-order .checkout20-methods li .bottom .selected,
body.page-payment .checkout20-methods li .bottom .selected {
    display: none !important;
    color: var(--c20-primary) !important;
}

body.page-order .checkout20-methods li.selected .bottom .default,
body.page-payment .checkout20-methods li.selected .bottom .default {
    display: none !important;
}

body.page-order .checkout20-methods li.selected .bottom .selected,
body.page-payment .checkout20-methods li.selected .bottom .selected {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
}

body.page-order .checkout20-method-radio,
body.page-payment .checkout20-method-radio {
    position: relative !important;
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    border: 2px solid #c5cad8 !important;
    border-radius: 50% !important;
    background: #fff !important;
}

body.page-order .checkout20-methods li.selected .checkout20-method-radio,
body.page-payment .checkout20-methods li.selected .checkout20-method-radio {
    border: 6px solid var(--c20-primary) !important;
}

body.page-order .checkout20-payment-detail,
body.page-payment .checkout20-payment-detail {
    display: flex !important;
    align-items: flex-start !important;
    gap: 9px !important;
    width: 100% !important;
    margin: 12px 0 0 !important;
    padding: 12px 13px !important;
    border: 1px solid rgba(47, 123, 255, .14) !important;
    border-radius: 14px !important;
    color: #55617d !important;
    background: rgba(47, 123, 255, .055) !important;
    text-align: left !important;
}

body.page-order .checkout20-payment-detail[hidden],
body.page-payment .checkout20-payment-detail[hidden] {
    display: none !important;
}

body.page-order .checkout20-payment-detail i,
body.page-payment .checkout20-payment-detail i {
    flex: 0 0 auto;
    color: var(--c20-blue);
    font-size: 17px;
}

body.page-order .checkout20-payment-detail p,
body.page-payment .checkout20-payment-detail p {
    margin: 0 !important;
    color: inherit !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
}

body.page-order .checkout20-contract,
body.page-payment .checkout20-contract {
    display: flex !important;
    align-items: flex-start !important;
    gap: 11px !important;
    margin: 18px 0 0 !important;
    cursor: pointer !important;
}

body.page-order .checkout20-contract-copy,
body.page-payment .checkout20-contract-copy {
    display: block !important;
    min-width: 0 !important;
    color: var(--c20-muted) !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
}

body.page-order .checkout20-contract-copy a,
body.page-payment .checkout20-contract-copy a {
    margin-right: 3px !important;
    color: var(--c20-blue) !important;
    font-weight: 850 !important;
}

body.page-order .checkout20-submit,
body.page-payment .checkout20-submit {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    min-height: 58px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    margin: 20px 0 0 !important;
    padding: 0 22px !important;
    border: 0 !important;
    border-radius: 17px !important;
    color: #fff !important;
    background: linear-gradient(115deg, var(--c20-primary), var(--c20-blue)) !important;
    box-shadow: 0 16px 32px rgba(68, 87, 255, .23) !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    cursor: pointer !important;
    transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease !important;
}

body.page-order .checkout20-submit:hover:not(:disabled),
body.page-payment .checkout20-submit:hover:not(:disabled) {
    transform: translateY(-2px) !important;
    box-shadow: 0 20px 40px rgba(68, 87, 255, .30) !important;
}

body.page-order .checkout20-submit:disabled,
body.page-payment .checkout20-submit:disabled {
    cursor: not-allowed !important;
    opacity: .48 !important;
    box-shadow: none !important;
}

body.page-order .checkout20-submit.is-loading,
body.page-payment .checkout20-submit.is-loading {
    color: transparent !important;
    pointer-events: none !important;
}

body.page-order .checkout20-submit.is-loading::after,
body.page-payment .checkout20-submit.is-loading::after {
    content: "";
    position: absolute;
    width: 22px;
    height: 22px;
    border: 3px solid rgba(255, 255, 255, .35);
    border-top-color: #fff;
    border-radius: 50%;
    animation: checkout20-spin .8s linear infinite;
}

body.page-order .checkout20-security-note,
body.page-payment .checkout20-security-note {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 7px !important;
    margin: 13px 0 0 !important;
    color: var(--c20-muted) !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
    text-align: center !important;
}

body.page-order .checkout20-security-note i,
body.page-payment .checkout20-security-note i {
    flex: 0 0 auto;
    margin-top: 1px;
    color: var(--c20-success);
}

body.page-order .checkout20-alert,
body.page-payment .checkout20-alert {
    width: 100% !important;
    margin: 0 !important;
}

/* Eski kupon alanlarını kesin olarak gizle */
body.page-order [data-couponcode],
body.page-payment [data-couponcode],
body.page-order input[name="sp_musteri_kupon"],
body.page-payment input[name="sp_musteri_kupon"],
body.page-order .coupon-code,
body.page-payment .coupon-code,
body.page-order .coupon-area,
body.page-payment .coupon-area,
body.page-order #totals .coupon-discount,
body.page-payment #totals .coupon-discount {
    display: none !important;
}

/* Eski tema kutularının checkout üzerinde etkisini kaldır */
body.page-order .checkout20-page .order--step_area,
body.page-payment .checkout20-page .order--step_area,
body.page-order .checkout20-page .order--first_area,
body.page-payment .checkout20-page .order--first_area,
body.page-order .checkout20-page .order--step,
body.page-payment .checkout20-page .order--step,
body.page-order .checkout20-page .baco-step,
body.page-payment .checkout20-page .baco-step {
    display: revert !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

/* Modal okunabilirliği */
body.page-order #myModal .modal-dialog,
body.page-payment #myModal .modal-dialog {
    max-width: 760px !important;
}

body.page-order #myModal .modal-content,
body.page-payment #myModal .modal-content {
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 22px !important;
    box-shadow: var(--c20-shadow) !important;
}

body.page-order #myModal .modal-body,
body.page-payment #myModal .modal-body {
    max-height: 65vh !important;
    overflow: auto !important;
    color: #4d5872 !important;
    font-size: 14px !important;
    line-height: 1.7 !important;
}

@media (max-width: 1080px) {
    body.page-order .checkout20-grid,
    body.page-payment .checkout20-grid {
        grid-template-columns: minmax(0, 1.25fr) minmax(330px, .75fr) !important;
        gap: 22px !important;
    }

    body.page-order .checkout20-card,
    body.page-payment .checkout20-card {
        padding: 24px !important;
    }
}

@media (max-width: 900px) {
    body.page-order .checkout20-grid,
    body.page-payment .checkout20-grid {
        grid-template-columns: 1fr !important;
    }

    body.page-order .checkout20-sidebar,
    body.page-payment .checkout20-sidebar {
        order: 2 !important;
    }

    body.page-order .checkout20-summary-card,
    body.page-payment .checkout20-summary-card {
        position: static !important;
        top: auto !important;
    }
}

@media (max-width: 768px) {
    body.page-order .checkout20-hero,
    body.page-payment .checkout20-hero {
        padding: 42px 0 46px !important;
    }

    body.page-order .checkout20-hero .container,
    body.page-payment .checkout20-hero .container,
    body.page-order .checkout20-page .container,
    body.page-payment .checkout20-page .container {
        width: min(100% - 28px, 680px) !important;
    }

    body.page-order .checkout20-hero-inner,
    body.page-payment .checkout20-hero-inner {
        grid-template-columns: 70px minmax(0, 1fr) !important;
        gap: 18px !important;
    }

    body.page-order .checkout20-hero-icon,
    body.page-payment .checkout20-hero-icon {
        width: 70px !important;
        min-width: 70px !important;
        height: 70px !important;
        border-radius: 21px !important;
        font-size: 28px !important;
    }

    body.page-order .checkout20-hero h1,
    body.page-payment .checkout20-hero h1 {
        font-size: clamp(38px, 10vw, 52px) !important;
    }

    body.page-order .checkout20-hero p,
    body.page-payment .checkout20-hero p {
        font-size: 15px !important;
    }

    body.page-order .checkout20-page,
    body.page-payment .checkout20-page {
        padding: 28px 0 130px !important;
    }

    body.page-order .checkout20-main,
    body.page-payment .checkout20-main,
    body.page-order .checkout20-sidebar,
    body.page-payment .checkout20-sidebar {
        gap: 18px !important;
    }

    body.page-order .checkout20-card,
    body.page-payment .checkout20-card,
    body.page-order .checkout20-summary-card,
    body.page-payment .checkout20-summary-card {
        padding: 20px !important;
        border-radius: 22px !important;
    }

    body.page-order .checkout20-fields,
    body.page-payment .checkout20-fields {
        grid-template-columns: 1fr !important;
    }

    body.page-order .checkout20-field,
    body.page-payment .checkout20-field {
        grid-column: auto !important;
    }
}

@media (max-width: 560px) {
    body.page-order .checkout20-hero-inner,
    body.page-payment .checkout20-hero-inner {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 16px !important;
        text-align: center !important;
    }

    body.page-order .checkout20-hero-copy,
    body.page-payment .checkout20-hero-copy {
        text-align: center !important;
    }

    body.page-order .checkout20-hero p,
    body.page-payment .checkout20-hero p {
        margin-inline: auto !important;
    }

    body.page-order .checkout20-card-head,
    body.page-payment .checkout20-card-head {
        align-items: flex-start !important;
    }

    body.page-order .checkout20-order-count,
    body.page-payment .checkout20-order-count,
    body.page-order .checkout20-secure-badge,
    body.page-payment .checkout20-secure-badge {
        min-height: 32px !important;
        padding: 0 10px !important;
        font-size: 10px !important;
    }

    body.page-order .checkout20-cart-item,
    body.page-payment .checkout20-cart-item {
        grid-template-columns: 58px minmax(0, 1fr) !important;
        gap: 13px !important;
        min-height: 0 !important;
        padding: 15px !important;
    }

    body.page-order .checkout20-platform-icon,
    body.page-payment .checkout20-platform-icon {
        width: 58px !important;
        height: 58px !important;
        border-radius: 17px !important;
    }

    body.page-order .checkout20-platform-icon i,
    body.page-payment .checkout20-platform-icon i {
        font-size: 25px !important;
    }

    body.page-order .checkout20-cart-actions,
    body.page-payment .checkout20-cart-actions {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        justify-content: flex-end !important;
        padding-top: 12px !important;
        border-top: 1px solid var(--c20-line) !important;
    }

    body.page-order .checkout20-price,
    body.page-payment .checkout20-price {
        margin-right: auto !important;
    }

    body.page-order .checkout20-card,
    body.page-payment .checkout20-card,
    body.page-order .checkout20-summary-card,
    body.page-payment .checkout20-summary-card {
        padding: 18px !important;
        border-radius: 20px !important;
    }

    body.page-order .checkout20-methods li,
    body.page-payment .checkout20-methods li {
        grid-template-columns: 42px minmax(0, 1fr) 20px !important;
        min-height: 72px !important;
        padding: 12px !important;
    }

    body.page-order .checkout20-method-icon,
    body.page-payment .checkout20-method-icon {
        width: 42px !important;
        height: 42px !important;
    }
}

/* V20.1 router fallback: order form marks the document when loaded through a single-page route. */
html:has(.checkout20-page) body:not(.page-order):not(.page-payment) {
    background: #f3f5fb !important;
}


/* V20.2: sade bireysel iletişim formu */
body.page-order .checkout20-contact-card .customerType,
body.page-payment .checkout20-contact-card .customerType,
body.page-order .checkout20-contact-card .companyInfo,
body.page-payment .checkout20-contact-card .companyInfo {
    display: none !important;
}


/* ========================================================================
   V22 — sepet başlığı, ödeme ikonları ve şeffaf iç alanlar
   ======================================================================== */
body.page-order .checkout20-method-icon,
body.page-payment .checkout20-method-icon {
    display: inline-flex !important;
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    align-items: center !important;
    justify-content: center !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--c20-primary) !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 26px !important;
    line-height: 1 !important;
}
body.page-order .checkout20-method-icon i,
body.page-payment .checkout20-method-icon i {
    display: block !important;
    color: inherit !important;
    font-size: inherit !important;
    line-height: 1 !important;
}
body.page-order .checkout20-methods li,
body.page-payment .checkout20-methods li {
    grid-template-columns: 34px minmax(0, 1fr) 22px !important;
    gap: 14px !important;
}

/* AJAX ile yenilenen toplam HTML'i dahil bütün iç beyaz kutuları kaldır. */
body.page-order #totals,
body.page-payment #totals,
body.page-order #totals.checkout20-totals,
body.page-payment #totals.checkout20-totals,
body.page-order #totals > li,
body.page-payment #totals > li,
body.page-order #totals .checkout20-total-row,
body.page-payment #totals .checkout20-total-row,
body.page-order #totals .checkout724-total-row,
body.page-payment #totals .checkout724-total-row {
    background: transparent !important;
    box-shadow: none !important;
}
body.page-order #totals,
body.page-payment #totals {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    overflow: visible !important;
}
body.page-order #totals > li,
body.page-payment #totals > li {
    padding: 10px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
}
body.page-order #totals .checkout20-total-row,
body.page-payment #totals .checkout20-total-row,
body.page-order #totals .checkout724-total-row,
body.page-payment #totals .checkout724-total-row {
    margin-top: 5px !important;
    padding-top: 16px !important;
    border-top: 1px solid var(--c20-line) !important;
}

@media (max-width: 768px) {
    body.page-order .checkout20-hero h1,
    body.page-payment .checkout20-hero h1 {
        font-size: clamp(38px, 12vw, 52px) !important;
    }
}
