/**
 * Tailwinder i18n — locale-aware direction + LTR islands.
 * Document direction comes from html[dir] via language_attributes().
 *
 * @package Tailwinder
 */

.tailwinder-theme input[type="text"]:not(.tw-input-ltr),
.tailwinder-theme textarea,
.tailwinder-theme select {
	direction: inherit;
	text-align: start;
}

.tw-input-ltr,
.tailwinder-theme input[type="email"],
.tailwinder-theme input[type="url"],
.tailwinder-theme input[type="tel"],
.tailwinder-theme input[type="number"] {
	direction: ltr;
	unicode-bidi: isolate;
	text-align: start;
}

.tailwinder-theme select {
	background-repeat: no-repeat;
	background-position: inline-end 12px center;
	padding-inline-end: 36px;
}

/*
 * Carousel arrows: real Lucide chevron SVGs, flex-centered.
 * Forbidden: rotated CSS borders (off-center + RTL ^/v).
 * Left button always points left; right button always points right.
 */
.tw-carousel__arrow::after {
	content: none;
	display: none;
	border: 0;
	width: 0;
	height: 0;
	margin: 0;
	transform: none;
}

.tw-carousel__arrow svg {
	display: block;
	width: 1.15rem;
	height: 1.15rem;
	margin: 0;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	overflow: visible;
	transform: none;
}

.tw-carousel__arrow svg path {
	fill: none;
	stroke: inherit;
}

/*
 * Physical left points left; physical right points right.
 * Prev sits at inline-start (right in RTL) with a left-facing SVG — flip both
 * chevrons in RTL so the glyph matches the physical side (and travel direction).
 * Do not use .tw-icon-dir on carousel chevrons.
 */
html[dir="rtl"] .tw-carousel__arrow--prev svg,
html[dir="rtl"] .tw-carousel__arrow--next svg,
.tw-carousel.is-rtl .tw-carousel__arrow--prev svg,
.tw-carousel.is-rtl .tw-carousel__arrow--next svg {
	transform: scaleX(-1);
}

/* Forward-pointing left/right glyphs follow reading direction. */
.tw-icon-dir:dir(rtl),
[dir="rtl"] .tw-icon-dir {
	transform: scaleX(-1);
}
