/**
 * Alukas Jewelry Price Breakup Styles
 * Uses official theme color variables for visual consistency
 */

.pls-jewelry-price-breakup-container {
	margin-top: 20px;
	margin-bottom: 24px;
	width: 100%;
}

.pls-price-breakup-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 14px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--pls-border-color, #e5e5e5);
}

.pls-price-breakup-title {
	font-size: 15px;
	font-weight: 500;
	color: var(--pls-heading-color, #111111);
	margin: 0;
	letter-spacing: 0.3px;
	text-transform: uppercase;
}

.pls-price-breakup-toggle {
	background: transparent;
	border: none;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--pls-text-color, #666666);
	font-size: 13px;
	font-weight: 500;
	padding: 4px 8px;
	border-radius: 4px;
	transition: color 0.2s ease, background-color 0.2s ease;
}

.pls-price-breakup-toggle:hover {
	color: var(--pls-heading-color, #111111);
	background-color: rgba(0, 0, 0, 0.04);
}

.pls-price-breakup-toggle .pls-toggle-icon {
	transition: transform 0.25s ease;
}

.pls-price-breakup-card.is-collapsed .pls-price-breakup-toggle .pls-toggle-icon {
	transform: rotate(180deg);
}

.pls-price-breakup-content {
	transition: max-height 0.3s ease, opacity 0.3s ease;
	overflow: hidden;
}

.pls-price-breakup-card.is-collapsed .pls-price-breakup-content {
	display: none;
}

.pls-price-breakup-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.pls-breakup-item {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	padding: 8px 0;
	font-size: 14px;
	color: var(--pls-text-color, #444444);
	border-bottom: 1px solid var(--pls-border-color, #e0e0e0);
	transition: background-color 0.15s ease;
}

.pls-breakup-item:last-child {
	border-bottom: none;
}

.pls-breakup-item:hover {
	background-color: rgba(0, 0, 0, 0.015);
}

.pls-breakup-label-group {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.pls-breakup-label {
	font-weight: 400;
	color: var(--pls-heading-color, #222222);
}

.pls-breakup-subtext {
	font-size: 12px;
	color: var(--pls-text-color, #777777);
}

.pls-breakup-value {
	font-weight: 500;
	color: var(--pls-heading-color, #111111);
	white-space: nowrap;
}

.pls-breakup-item.is-discount .pls-breakup-label {
	color: #d9534f;
}

.pls-breakup-item.is-discount .pls-breakup-value {
	color: #d9534f;
	font-weight: 600;
}

.pls-price-breakup-total {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 14px;
	padding-top: 12px;
	border-top: 2px solid var(--pls-heading-color, #111111);
}

.pls-total-label {
	font-size: 15px;
	font-weight: 500;
	color: var(--pls-heading-color, #111111);
	text-transform: uppercase;
	letter-spacing: 0.3px;
}

.pls-total-value {
	font-size: 17px;
	font-weight: 600;
	color: var(--pls-heading-color, #111111);
}

/* Variation update flash animation */
@keyframes plsPriceBreakupUpdateFlash {
	0% { opacity: 0.5; transform: scale(0.99); }
	100% { opacity: 1; transform: scale(1); }
}

.pls-breakup-updating {
	animation: plsPriceBreakupUpdateFlash 0.3s ease-out;
}
