/**
 * Store Picker Styles - Custom Dropdown
 * Works with both classic and block checkout
 *
 * @package Piktorfestek_Core
 * @since 1.7.0
 */

/* ===== CUSTOM DROPDOWN ===== */

/* Container */
.pf-store-dropdown {
	position: relative;
	width: 100%;
}

/* Selected Display (clickable trigger) - Woodmart Style */
.pf-store-dropdown__selected {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 12px 16px;
	background: #fff;
	border: 1px solid var(--wd-form-brd-color, #e0e0e0);
	border-radius: var(--wd-brd-radius, 5px);
	cursor: pointer;
	transition: border-color 0.25s ease;
	position: relative;
	text-align: right;
	align-items: flex-end;
}

/* Force right alignment in checkout table */
.pf-store-picker-row td,
.pf-store-picker td {
	text-align: right !important;
}

.pf-store-dropdown__selected:hover {
	border-color: var(--wd-form-brd-color-focus, #ccc);
}

.pf-store-dropdown.open .pf-store-dropdown__selected {
	border-color: var(--wd-primary-color, #e52d2e);
	border-radius: var(--wd-brd-radius, 5px) var(--wd-brd-radius, 5px) 0 0;
}

.pf-store-dropdown__text {
	font-size: 14px;
	color: #333;
}

/* Selected content (when store is chosen) */
.pf-store-dropdown__selected-content {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding-left: 24px; /* Space for arrow */
	align-items: flex-end;
}

.pf-store-dropdown__selected-content .pf-store-name {
	font-weight: 600;
	font-size: 14px;
	color: var(--color-gray-800, #333);
}

.pf-store-dropdown__selected-content .pf-store-address {
	font-size: 12px;
	color: var(--color-gray-500, #666);
}

.pf-store-dropdown__selected-content .pf-store-hours {
	font-size: 12px;
	color: var(--wd-primary-color, #e52d2e);
	font-weight: 500;
}

.pf-store-dropdown__selected-content .pf-store-stock {
	display: inline-block;
	font-size: 11px;
	padding: 2px 8px;
	border-radius: 3px;
	font-weight: 500;
	width: fit-content;
}

/* Arrow positioned in top-left corner */
.pf-store-dropdown__arrow {
	position: absolute;
	top: 16px;
	left: 16px;
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 5px solid var(--color-gray-500, #666);
	transition: transform 0.2s;
}

.pf-store-dropdown.open .pf-store-dropdown__arrow {
	transform: rotate(180deg);
}

/* Options List - Woodmart Style */
.pf-store-dropdown__options {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	max-height: 300px;
	overflow-y: auto;
	background: #fff;
	border: 1px solid var(--wd-primary-color, #e52d2e);
	border-top: none;
	border-radius: 0 0 var(--wd-brd-radius, 5px) var(--wd-brd-radius, 5px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	z-index: 1000;
}

.pf-store-dropdown.open .pf-store-dropdown__options {
	display: block;
}

/* Single Option */
.pf-store-dropdown__option {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 12px 16px;
	cursor: pointer;
	border-bottom: 1px solid #f0f0f0;
	transition: background-color 0.15s;
}

.pf-store-dropdown__option:last-child {
	border-bottom: none;
}

.pf-store-dropdown__option:hover {
	background: var(--wd-primary-color-light, #fff5f5);
}

.pf-store-dropdown__option.selected {
	background: var(--wd-primary-color-light, #fff5f5);
}

.pf-store-dropdown__option .pf-store-name {
	font-weight: 600;
	font-size: 14px;
	color: var(--color-gray-800, #333);
}

.pf-store-dropdown__option.selected .pf-store-name {
	color: var(--wd-primary-color, #e52d2e);
}

.pf-store-dropdown__option .pf-store-distance {
	font-weight: 400;
	font-size: 12px;
	color: var(--color-gray-500, #666);
}

.pf-store-dropdown__option .pf-store-address {
	font-size: 12px;
	color: var(--color-gray-500, #666);
}

.pf-store-dropdown__option .pf-store-hours {
	font-size: 12px;
	color: var(--wd-primary-color, #e52d2e);
	font-weight: 500;
}

.pf-store-dropdown__option .pf-store-meta {
	font-size: 12px;
	color: var(--color-gray-500, #666);
}

/* ===== STOCK AVAILABILITY BADGES ===== */

.pf-store-stock {
	display: inline-block;
	font-size: 11px;
	padding: 2px 8px;
	border-radius: 3px;
	font-weight: 500;
	width: fit-content;
	margin-top: 2px;
}

.pf-stock-ok {
	background: #d4edda;
	color: #155724;
}

.pf-stock-partial {
	background: #fff3cd;
	color: #856404;
}

.pf-stock-none {
	background: #f8d7da;
	color: #721c24;
}

/* Hint to check other stores (only in closed state) - positioned left */
.pf-store-hint {
	position: absolute;
	left: 16px;
	bottom: 12px;
	font-size: 11px;
	color: var(--color-gray-500, #666);
	font-style: italic;
	margin: 0;
	max-width: 140px;
	text-align: left;
	line-height: 1.3;
}

/* Hide hint when dropdown is open */
.pf-store-dropdown.open .pf-store-hint {
	display: none;
}

/* ===== CLASSIC CHECKOUT STYLES ===== */

.pf-store-picker-row th {
	vertical-align: top;
	padding-top: 15px;
}

.pf-store-picker {
	padding: 0;
	background: transparent;
}

/* ===== BLOCK CHECKOUT STYLES - Woodmart ===== */

.pf-block-store-picker {
	margin: 16px 0;
	padding: 16px;
	background: #f8f9fa;
	border-radius: var(--wd-brd-radius, 5px);
	border: 1px solid var(--wd-form-brd-color, #e0e0e0);
}

.pf-store-picker-title {
	margin: 0 0 12px 0;
	font-size: 14px;
	font-weight: 600;
	color: var(--color-gray-800, #333);
}

.pf-store-picker-loading {
	padding: 20px;
	text-align: center;
	color: var(--color-gray-500, #666);
	font-size: 14px;
}

.pf-block-store-picker .pf-store-picker-list {
	background: transparent;
	padding: 0;
}

/* ===== RESPONSIVE ===== */

@media (max-width: 768px) {
	.pf-store-dropdown__options {
		max-height: 250px;
	}

	.pf-store-dropdown__selected,
	.pf-store-dropdown__option {
		padding: 10px 14px;
	}

	.pf-store-dropdown__option .pf-store-name {
		font-size: 13px;
	}

	.pf-block-store-picker {
		margin: 12px 0;
		padding: 12px;
	}
}

/* ===== ADDRESS REQUIRED MESSAGE ===== */

.pf-shipping-address-required {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 14px 16px;
	background: linear-gradient(135deg, #f0f8ff 0%, #e6f2ff 100%);
	border: 1px solid #b8d4f0;
	border-radius: var(--wd-brd-radius, 5px);
	color: #1e5a8a;
	font-size: 14px;
	line-height: 1.5;
}

.pf-shipping-address-required__icon {
	font-size: 18px;
	line-height: 1;
	flex-shrink: 0;
	color: #2271b1;
}

.pf-shipping-address-required__text {
	flex: 1;
}
