/**
 * FLORILANDA B2B — სტილები.
 *
 * თემის CSS custom properties-ს ვიყენებთ, რომ ბრენდის ფერები ერთ ადგილას რჩებოდეს.
 * თუ თემა შეიცვალა და ცვლადები არ არსებობს, fallback მნიშვნელობები მოქმედებს.
 */

.fl-b2b {
	padding: clamp(1.25rem, 3vw, 2rem);
	background: var(--fl-surface, #fff);
	border: 1px solid var(--fl-border, #e5e2da);
	border-radius: var(--fl-radius-lg, 16px);
}

.fl-b2b .fl-form__grid { display: flex; flex-wrap: wrap; gap: 0 1rem; }
.fl-b2b .fl-form__row { flex: 1 1 100%; margin: 0 0 1rem; }
.fl-b2b .fl-form__row label { display: block; margin-bottom: 0.3rem; font-size: 0.9rem; font-weight: 500; }
.fl-b2b .fl-form__required { color: var(--fl-sale, #a62b2b); }

.fl-b2b .fl-form__hint {
	display: block;
	margin-top: 0.35rem;
	color: var(--fl-muted, #6c6c6c);
	font-size: 0.8rem;
}

.fl-b2b .fl-form__hp {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
}

.fl-b2b .fl-form__consent { margin: 0 0 1rem; }

.fl-b2b .fl-form__check {
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
	font-size: 0.85rem;
	line-height: 1.5;
	color: var(--fl-muted, #6c6c6c);
	font-weight: 400;
}

.fl-b2b .fl-form__check input {
	width: 18px;
	height: 18px;
	min-height: 0;
	margin-top: 0.15rem;
	flex: 0 0 auto;
}

.fl-b2b .fl-form__note {
	margin: 0 0 1.25rem;
	color: var(--fl-muted, #6c6c6c);
	font-size: 0.82rem;
}

.fl-b2b .fl-form__actions { margin: 0 0 0.75rem; }
.fl-b2b .fl-form__actions .button { min-width: 220px; }

@media (min-width: 640px) {
	.fl-b2b .fl-form__row--half { flex: 1 1 calc(50% - 0.5rem); }
}

/* სტატუსის ბარათი */

.fl-b2b__facts {
	list-style: none;
	margin: 0 0 1.25rem;
	padding: 0;
	display: grid;
	gap: 0.5rem;
}

.fl-b2b__facts li {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.6rem 0;
	border-bottom: 1px solid var(--fl-border, #e5e2da);
}

.fl-b2b__facts li:last-child { border-bottom: 0; }
.fl-b2b__facts span { color: var(--fl-muted, #6c6c6c); font-size: 0.88rem; }

/* კაბინეტის პანელი */

.fl-b2b-panel {
	margin: 0 0 1.5rem;
	padding: 1rem 1.2rem;
	border-radius: var(--fl-radius, 12px);
	border-inline-start: 4px solid var(--fl-primary, #234b3d);
	background: var(--fl-secondary-soft, #eef1ec);
}

.fl-b2b-panel p { margin: 0; }
.fl-b2b-panel p + p { margin-top: 0.35rem; font-size: 0.88rem; color: var(--fl-muted, #6c6c6c); }
.fl-b2b-panel--pending { border-inline-start-color: var(--fl-accent, #c8a96a); }

/* ფასის ნიშნული */

.fl-b2b-badge {
	display: inline-block;
	margin-inline-start: 0.4rem;
	padding: 0.1rem 0.5rem;
	border-radius: 999px;
	background: var(--fl-primary, #234b3d);
	color: #fff;
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	vertical-align: middle;
}

/* რაოდენობის მინიშნება პროდუქტის გვერდზე */

.fl-b2b-qty-note {
	flex-basis: 100%;
	margin: 0 0 0.75rem;
	color: var(--fl-muted, #6c6c6c);
	font-size: 0.85rem;
}

/* --------------------------------------------------------------------------
   ანგარიშის ტიპი WooCommerce-ის რეგისტრაციაში
   -------------------------------------------------------------------------- */

.fl-account-type {
	margin: 0 0 1.25rem;
	padding: 0;
	border: 0;
}

.fl-account-type__legend {
	padding: 0;
	margin-bottom: 0.6rem;
	font-size: 0.9rem;
	font-weight: 600;
}

.fl-account-type__option {
	display: flex;
	align-items: flex-start;
	gap: 0.7rem;
	padding: 0.85rem 1rem;
	border: 1px solid var(--fl-border, #e5e2da);
	border-radius: var(--fl-radius, 12px);
	cursor: pointer;
	transition: border-color 0.2s ease, background 0.2s ease;
}

.fl-account-type__option + .fl-account-type__option { margin-top: 0.6rem; }

.fl-account-type__option:hover { border-color: var(--fl-primary, #234b3d); }

.fl-account-type__option:has(input:checked) {
	border-color: var(--fl-primary, #234b3d);
	background: var(--fl-secondary-soft, #eef1ec);
}

.fl-account-type__option:has(input:focus-visible) {
	outline: 2px solid var(--fl-primary, #234b3d);
	outline-offset: 2px;
}

.fl-account-type__option input {
	width: 18px;
	height: 18px;
	min-height: 0;
	margin-top: 0.15rem;
	flex: 0 0 auto;
	accent-color: var(--fl-primary, #234b3d);
}

.fl-account-type__option span { display: block; }
.fl-account-type__option strong { display: block; font-size: 0.95rem; }

.fl-account-type__option em {
	display: block;
	margin-top: 0.15rem;
	color: var(--fl-muted, #6c6c6c);
	font-size: 0.8rem;
	font-style: normal;
	line-height: 1.45;
}

.fl-company-fields {
	margin: 0 0 0.5rem;
	padding: 1rem 1.1rem 0.25rem;
	border: 1px dashed var(--fl-border, #e5e2da);
	border-radius: var(--fl-radius, 12px);
	background: var(--fl-bg, #faf8f3);
}

.fl-company-fields.is-collapsed { display: none; }

.fl-company-fields__note {
	margin: 0 0 1rem;
	color: var(--fl-muted, #6c6c6c);
	font-size: 0.8rem;
	line-height: 1.5;
}

/* --------------------------------------------------------------------------
   სწრაფი შეკვეთა და პერიოდული გამოწერები
   -------------------------------------------------------------------------- */

.fl-quick__intro,
.fl-schedules .fl-quick__intro {
	margin: 0 0 1.25rem;
	color: var(--fl-muted, #6c6c6c);
	font-size: 0.9rem;
	line-height: 1.6;
}

.fl-picker { position: relative; margin: 0 0 1.25rem; }

.fl-picker__label {
	display: block;
	margin-bottom: 0.35rem;
	font-size: 0.9rem;
	font-weight: 500;
}

.fl-picker__results {
	position: absolute;
	z-index: 20;
	inset-inline: 0;
	top: calc(100% + 4px);
	max-height: 340px;
	overflow-y: auto;
	background: var(--fl-surface, #fff);
	border: 1px solid var(--fl-border, #e5e2da);
	border-radius: var(--fl-radius, 12px);
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.1);
}

.fl-picker__state {
	margin: 0;
	padding: 0.9rem 1rem;
	color: var(--fl-muted, #6c6c6c);
	font-size: 0.88rem;
}

.fl-picker__item {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	width: 100%;
	padding: 0.6rem 0.85rem;
	background: none;
	border: 0;
	border-bottom: 1px solid var(--fl-border, #e5e2da);
	text-align: start;
	cursor: pointer;
	min-height: 0;
	color: inherit;
	font: inherit;
	border-radius: 0;
}

.fl-picker__item:last-child { border-bottom: 0; }
.fl-picker__item:hover:not(:disabled) { background: var(--fl-secondary-soft, #eef1ec); }
.fl-picker__item:disabled { opacity: 0.5; cursor: not-allowed; }

.fl-picker__item img { flex: 0 0 auto; border-radius: 8px; object-fit: cover; }
.fl-picker__info { display: block; min-width: 0; }
.fl-picker__name { display: block; font-weight: 500; font-size: 0.92rem; }

.fl-picker__meta {
	display: block;
	margin-top: 0.1rem;
	color: var(--fl-muted, #6c6c6c);
	font-size: 0.8rem;
}

/* სია */

.fl-quick__table,
.fl-schedules__table {
	width: 100%;
	margin: 0 0 1rem;
	border-collapse: collapse;
}

.fl-quick__table th,
.fl-schedules__table th {
	padding: 0.5rem 0.6rem;
	border-bottom: 1px solid var(--fl-border, #e5e2da);
	text-align: start;
	font-size: 0.8rem;
	font-weight: 600;
	color: var(--fl-muted, #6c6c6c);
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.fl-quick__table td,
.fl-schedules__table td {
	padding: 0.7rem 0.6rem;
	border-bottom: 1px solid var(--fl-border, #e5e2da);
	vertical-align: middle;
}

.fl-quick__product { display: flex; align-items: center; gap: 0.7rem; }
.fl-quick__product img { border-radius: 8px; object-fit: cover; flex: 0 0 auto; }
.fl-quick__product em { display: block; font-style: normal; font-size: 0.78rem; color: var(--fl-muted, #6c6c6c); }

.fl-quick__qty { width: 96px; min-height: 40px; padding: 0.4rem 0.55rem; }

.fl-quick__remove,
.fl-schedules__button {
	min-height: 0;
	padding: 0.35rem 0.7rem;
	background: none;
	border: 1px solid var(--fl-border, #e5e2da);
	border-radius: 999px;
	color: var(--fl-muted, #6c6c6c);
	font-size: 0.8rem;
	font-weight: 500;
	cursor: pointer;
}

.fl-quick__remove:hover,
.fl-schedules__button:hover { border-color: var(--fl-sale, #a62b2b); color: var(--fl-sale, #a62b2b); }

.fl-schedules__button.is-primary {
	border-color: var(--fl-primary, #234b3d);
	background: var(--fl-primary, #234b3d);
	color: #fff;
}

.fl-schedules__button.is-primary:hover {
	background: var(--fl-primary-dark, #1a3a2f);
	border-color: var(--fl-primary-dark, #1a3a2f);
	color: #fff;
}

.fl-quick__empty {
	margin: 0 0 1.25rem;
	padding: 1.25rem;
	border: 1px dashed var(--fl-border, #e5e2da);
	border-radius: var(--fl-radius, 12px);
	color: var(--fl-muted, #6c6c6c);
	text-align: center;
	font-size: 0.88rem;
}

.fl-quick__footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding-top: 0.5rem;
}

.fl-quick__total { margin: 0; font-size: 0.9rem; }
.fl-quick__total strong { margin-inline-start: 0.35rem; font-size: 1.1rem; }
.fl-quick__total span { display: block; color: var(--fl-muted, #6c6c6c); font-size: 0.78rem; }

/* გამოწერების სია */

.fl-schedules__heading { margin: 2rem 0 1rem; font-size: 1.05rem; }
.fl-schedules__actions { display: flex; flex-wrap: wrap; gap: 0.4rem; }
.fl-schedules__actions form { margin: 0; }
.fl-schedules__table tr.is-paused td { opacity: 0.6; }

.fl-schedules__paused {
	display: inline-block;
	margin-inline-start: 0.4rem;
	padding: 0.05rem 0.45rem;
	border-radius: 999px;
	background: var(--fl-border, #e5e2da);
	color: var(--fl-muted, #6c6c6c);
	font-size: 0.7rem;
	font-style: normal;
}

@media (max-width: 640px) {
	.fl-quick__table thead,
	.fl-schedules__table thead { display: none; }

	.fl-quick__table tr,
	.fl-schedules__table tr {
		display: grid;
		gap: 0.4rem;
		padding: 0.75rem 0;
		border-bottom: 1px solid var(--fl-border, #e5e2da);
	}

	.fl-quick__table td,
	.fl-schedules__table td { border: 0; padding: 0; }
}
