/* Checkout toggle */
.kdsc-checkout-box {
	border: 1px solid #e2e2e2;
	border-radius: 8px;
	padding: 14px 16px;
	margin: 0 0 18px;
	background: #fafafa;
}
.kdsc-checkout-box .kdsc-toggle {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	cursor: pointer;
	font-weight: 600;
}
.kdsc-checkout-box .kdsc-toggle input[type="checkbox"] {
	width: 18px;
	height: 18px;
	margin: 0;
}
.kdsc-checkout-box .kdsc-balance {
	font-weight: 400;
	opacity: 0.8;
}
.kdsc-checkout-box .kdsc-note {
	margin: 8px 0 0 28px;
	font-size: 0.92em;
	opacity: 0.85;
}

/* My Account tab */
.kdsc-balance-card {
	display: flex;
	flex-direction: column;
	gap: 4px;
	border: 1px solid #e2e2e2;
	border-radius: 10px;
	padding: 18px 20px;
	margin: 0 0 24px;
	background: #fafafa;
}
.kdsc-balance-label { font-size: 0.9em; opacity: 0.75; }
.kdsc-balance-amount { font-size: 2em; font-weight: 700; line-height: 1.1; }
.kdsc-balance-help { font-size: 0.9em; opacity: 0.75; }
.kdsc-history .kdsc-pos { color: #1e6b3a; }
.kdsc-history .kdsc-neg { color: #9b1c1c; }
.kdsc-pagination { display: flex; gap: 8px; margin-top: 12px; }

/* My Account filters and paging */
.kdsc-account { --kdsc-blue: #2563eb; --kdsc-blue-dark: #1d4ed8; --kdsc-border: #d9d9d9; --kdsc-h: 38px; }

.kdsc-account-filters { display: flex !important; flex-direction: column !important; gap: 10px !important; margin: 0 0 14px !important; }
.kdsc-filter-row { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 8px !important; }
.kdsc-filter-row .kdsc-export { margin-left: auto !important; }

/* Segmented All / Earned / Spent */
.kdsc-segmented { display: inline-flex !important; border: 1px solid var(--kdsc-border) !important; border-radius: 8px !important; overflow: hidden !important; background: #fff !important; height: var(--kdsc-h) !important; }
.kdsc-segmented .kdsc-seg { display: inline-flex !important; align-items: center !important; justify-content: center !important; height: 100% !important; padding: 0 18px !important; margin: 0 !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1 !important; color: #111 !important; background: #fff !important; text-decoration: none !important; border: 0 !important; border-right: 1px solid var(--kdsc-border) !important; box-shadow: none !important; }
.kdsc-segmented .kdsc-seg:last-child { border-right: 0 !important; }
.kdsc-segmented .kdsc-seg:hover { background: #f3f4f6 !important; color: #111 !important; text-decoration: none !important; }
.kdsc-segmented .kdsc-seg.is-active, .kdsc-segmented .kdsc-seg.is-active:hover { background: var(--kdsc-blue) !important; color: #fff !important; }

/* Buttons, pinned so the theme cannot stretch them */
.kdsc-account .kdsc-btn { display: inline-flex !important; align-items: center !important; justify-content: center !important; height: var(--kdsc-h) !important; padding: 0 18px !important; margin: 0 !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1 !important; border-radius: 8px !important; text-decoration: none !important; cursor: pointer !important; box-shadow: none !important; white-space: nowrap !important; box-sizing: border-box !important; }
.kdsc-account .kdsc-btn-primary { background: var(--kdsc-blue) !important; color: #fff !important; border: 1px solid var(--kdsc-blue) !important; }
.kdsc-account .kdsc-btn-primary:hover { background: var(--kdsc-blue-dark) !important; border-color: var(--kdsc-blue-dark) !important; color: #fff !important; }
.kdsc-account .kdsc-btn-outline { background: #fff !important; color: #111 !important; border: 1px solid var(--kdsc-border) !important; }
.kdsc-account .kdsc-btn-outline:hover { background: #f3f4f6 !important; color: #111 !important; }

/* Date fields */
.kdsc-field { display: inline-flex !important; align-items: center !important; gap: 8px !important; margin: 0 !important; font-size: 14px !important; font-weight: 500 !important; }
.kdsc-field input[type="date"] { height: var(--kdsc-h) !important; padding: 0 10px !important; margin: 0 !important; border: 1px solid var(--kdsc-border) !important; border-radius: 8px !important; background: #fff !important; color: #111 !important; font-size: 14px !important; line-height: 1 !important; box-shadow: none !important; box-sizing: border-box !important; }
.kdsc-field input[type="date"]:focus { outline: none !important; border-color: var(--kdsc-blue) !important; box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15) !important; }

.kdsc-summary { font-size: 0.9em; opacity: 0.8; margin: 0 0 8px; }

/* Paging */
.kdsc-pagination { display: flex !important; flex-wrap: wrap !important; gap: 6px !important; align-items: center !important; margin-top: 14px !important; }
.kdsc-pagination .button { display: inline-flex !important; align-items: center !important; height: var(--kdsc-h) !important; padding: 0 14px !important; line-height: 1 !important; font-size: 14px !important; border-radius: 8px !important; }
.kdsc-page { display: inline-flex !important; align-items: center !important; justify-content: center !important; min-width: var(--kdsc-h) !important; height: var(--kdsc-h) !important; padding: 0 10px !important; border: 1px solid var(--kdsc-border) !important; border-radius: 8px !important; text-decoration: none !important; color: #111 !important; background: #fff !important; font-size: 14px !important; box-sizing: border-box !important; }
.kdsc-page.current { background: var(--kdsc-blue) !important; color: #fff !important; border-color: var(--kdsc-blue) !important; }
.kdsc-ellipsis { padding: 0 4px; opacity: 0.6; }

@media (max-width: 600px) {
	.kdsc-filter-row .kdsc-export { margin-left: 0 !important; }
	.kdsc-segmented .kdsc-seg { padding: 0 14px !important; }
}
