/* Tư-Trà UI Kit — Sheet v2.20.0
   A <dialog> opened with showModal() (the top layer: above every z-index, the page behind inert). The dialog is a
   transparent full-screen frame holding the engine's own scrim and panel; ::backdrop stays transparent.
   Geometry is concentric: the corner = the bar button's radius + its inset from the edges. The engine clips the panel
   with the UI Kit's shape library (TTUkShape): top corners concentric with the current page's bar buttons (a circle
   next to a round button, the offset G2 capsule end next to a wide one); G2 bottom corners. Buttons wider than tall wear
   the G2 capsule. border-radius is the fallback without the shape library. */

/* the sheet's position (0 closed, 1 large) as a registered number, so it can be transitioned during snaps: the
   background's blur radius ramps with it */
@property --tt-pl-uk-sheet-p {
	syntax: "<number>";
	inherits: true;
	initial-value: 0;
}
dialog.tt-pl-uk-sheet.is-snapping { transition: --tt-pl-uk-sheet-p var(--tt-pl-uk-sheet-ms) var(--tt-pl-uk-sheet-ease); }
dialog.tt-pl-uk-sheet {
	/* Geometry from the site's Bricks tokens; every length below derives from them. The px after a token is only its
	   fallback (the token's own minimum) for a page without the site's variables. */
	--tt-pl-uk-sheet-btn: calc(var(--space-l, 2rem) + var(--space-xs, 0.75rem));   /* the bar buttons, the iOS 44pt target */
	--tt-pl-uk-sheet-inset: var(--space-s, 1rem);                                   /* bar buttons from the top and side edges */
	--tt-pl-uk-sheet-r: calc(var(--tt-pl-uk-sheet-btn) / 2 + var(--tt-pl-uk-sheet-inset));   /* concentric corner */
	--tt-pl-uk-sheet-top: env(safe-area-inset-top, 0px);   /* at large the sheet meets the status bar (in the browser: the page's top) */
	--tt-pl-uk-sheet-keyboard: var(--space-m, 1.5rem);                              /* a focused field's margin above the keyboard */
	--tt-pl-uk-sheet-side: var(--space-xs, 0.75rem);                                /* the floating gap at medium */
	/* colours follow the site, never the phone's scheme: the site's Bricks colour variables; text inherits the page's colour */
	--tt-pl-uk-sheet-bg: var(--color-camelia, rgb(252, 250, 241));
	--tt-pl-uk-sheet-btn-bg: color-mix(in srgb, currentColor 16%, transparent);   /* the header button's disc */
	--tt-pl-uk-sheet-accent: var(--color-the, rgb(98, 112, 77));
	--tt-pl-uk-sheet-accent-ink: var(--color-camelia, rgb(252, 250, 241));
	--tt-pl-uk-sheet-icon: var(--step-1, 1.25rem);                                  /* the PWA Header Button's icon size */
	--tt-pl-uk-sheet-scrim: 0;                                                      /* a dim behind the sheet (0 to 1); the blur replaces it */
	--tt-pl-uk-sheet-backdrop: var(--space-xs, 0.75rem);                            /* how far the page behind blurs when the sheet is up */
	--tt-pl-uk-sheet-blur: 1;                                                     /* the header's blur multiplier */
	--tt-pl-uk-sheet-max: 34rem;                                                    /* the form sheet's width on a wide screen */
	--tt-pl-uk-sheet-ease: cubic-bezier(0.32, 0.72, 0, 1);
	--tt-pl-uk-sheet-ms: 0.38s;
	position: fixed;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	color: inherit;   /* the browser gives <dialog> CanvasText, which follows the phone's scheme: take the page's colour */
	overflow: clip;   /* not hidden: a hidden box can still be scrolled by focus, which shifted the whole sheet */
	overscroll-behavior: none;
	outline: none;
}
dialog.tt-pl-uk-sheet:not([open]) { display: none; }
html.tt-pl-uk-sheet-open, html.tt-pl-uk-sheet-open body { overscroll-behavior: none; }
/* resolves the geometry tokens to px for the engine */
.tt-pl-uk-sheet__probe {
	position: absolute;
	top: 0;
	left: 0;
	box-sizing: content-box;
	width: var(--tt-pl-uk-sheet-side);
	height: var(--tt-pl-uk-sheet-r);
	padding: var(--tt-pl-uk-sheet-top) 0 0 var(--tt-pl-uk-sheet-keyboard);
	visibility: hidden;
	pointer-events: none;
}
dialog.tt-pl-uk-sheet::backdrop { background: transparent; }

.tt-pl-uk-sheet__scrim {
	position: absolute;
	inset: 0;
	pointer-events: none;   /* the background takes no taps; data-sheet-scrim="dismiss" makes a tap close the sheet */
	background: rgba(0, 0, 0, calc(var(--tt-pl-uk-sheet-scrim) * min(1, calc(var(--tt-pl-uk-sheet-p, 0) / var(--tt-pl-uk-sheet-pm, 1)))));
	/* The page behind blurs as the sheet rises: the radius ramps from 0 (closed) to --tt-pl-uk-sheet-backdrop at the
	   sheet's lowest height (medium; --tt-pl-uk-sheet-pm, set by the engine), then holds from medium to large. A
	   single-height sheet ramps over its whole slide. A drag scrubs it; during the open, close and snaps the position
	   itself is animated (--tt-pl-uk-sheet-p is a registered number transitioned with the slide), so the radius ramps
	   in step with the sheet. The blur is re-rendered on every frame of a slide. */
	--tt-pl-uk-sheet-ramp: min(1, calc(var(--tt-pl-uk-sheet-p, 0) / var(--tt-pl-uk-sheet-pm, 1)));
	-webkit-backdrop-filter: blur(calc(var(--tt-pl-uk-sheet-backdrop) * var(--tt-pl-uk-sheet-ramp)));
	backdrop-filter: blur(calc(var(--tt-pl-uk-sheet-backdrop) * var(--tt-pl-uk-sheet-ramp)));
}
dialog.tt-pl-uk-sheet[data-sheet-scrim="dismiss"] .tt-pl-uk-sheet__scrim { pointer-events: auto; }
/* without transparency effects: no blur, a dim instead */
@media (prefers-reduced-transparency: reduce) {
	.tt-pl-uk-sheet__scrim { -webkit-backdrop-filter: none; backdrop-filter: none; background: rgba(0, 0, 0, calc(0.36 * min(1, calc(var(--tt-pl-uk-sheet-p, 0) / var(--tt-pl-uk-sheet-pm, 1))))); }
}

.tt-pl-uk-sheet__panel {
	--tt-pl-uk-sheet-gap: calc(var(--tt-pl-uk-sheet-side) * (1 - var(--tt-pl-uk-sheet-l, 0)));
	position: absolute;
	left: var(--tt-pl-uk-sheet-gap);
	right: var(--tt-pl-uk-sheet-gap);
	bottom: var(--tt-pl-uk-sheet-gap);
	height: calc(100% - var(--tt-pl-uk-sheet-top) + var(--tt-pl-uk-sheet-stretch, 0px));   /* stretch: the rubber band */
	background: var(--tt-pl-uk-sheet-bg);
	border-radius: var(--tt-pl-uk-sheet-r) var(--tt-pl-uk-sheet-r)
		calc(var(--tt-pl-uk-sheet-r) * (1 - var(--tt-pl-uk-sheet-l, 0))) calc(var(--tt-pl-uk-sheet-r) * (1 - var(--tt-pl-uk-sheet-l, 0)));
	overflow: clip;
	box-shadow: 0 -1px 0 rgba(255, 255, 255, 0.6) inset;   /* a hairline highlight; an outer shadow would be cut by the clip */
	transform: translateY(var(--tt-pl-uk-sheet-y, 100%));
	will-change: transform;
}
/* on a page change the corners follow the new page's buttons */
.tt-pl-uk-sheet__panel.is-paging { transition: clip-path var(--tt-pl-uk-sheet-ms) var(--tt-pl-uk-sheet-ease); }
.tt-pl-uk-sheet__panel.is-snapping {
	transition: transform var(--tt-pl-uk-sheet-ms) var(--tt-pl-uk-sheet-ease), left var(--tt-pl-uk-sheet-ms) var(--tt-pl-uk-sheet-ease),
		right var(--tt-pl-uk-sheet-ms) var(--tt-pl-uk-sheet-ease), bottom var(--tt-pl-uk-sheet-ms) var(--tt-pl-uk-sheet-ease),
		border-radius var(--tt-pl-uk-sheet-ms) var(--tt-pl-uk-sheet-ease), height var(--tt-pl-uk-sheet-ms) var(--tt-pl-uk-sheet-ease),
		clip-path var(--tt-pl-uk-sheet-ms) var(--tt-pl-uk-sheet-ease);
}

/* Past a phone's width: a form sheet, as on iPad. A fixed width (--tt-pl-uk-sheet-max), centred, floating with all four
   corners rounded at every height (the engine keeps it floating), the page behind visible on both sides. The breakpoint
   is a literal (media queries cannot read custom properties): 43.75rem, 700px. */
@media (min-width: 43.75rem) {
	.tt-pl-uk-sheet__panel {
		left: 0;
		right: 0;
		width: min(calc(100% - 2 * var(--tt-pl-uk-sheet-side)), var(--tt-pl-uk-sheet-max));
		margin-inline: auto;
	}
}

/* The bar: an overlay the pages scroll under, always draggable; buttons absolutely in their slots, the title centred
   between them. Its background is the header's: a progressive blur under a fade of the sheet's colour. */
.tt-pl-uk-sheet__bar {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	right: 0;
	height: calc(var(--tt-pl-uk-sheet-btn) + 2 * var(--tt-pl-uk-sheet-inset));
	isolation: isolate;
	touch-action: none;
	cursor: grab;
}
.tt-pl-uk-sheet__barbg {
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	right: 0;
	height: calc(100% + var(--tt-pl-uk-sheet-inset));   /* the fade finishes a step below the buttons */
	pointer-events: none;
	/* the scroll edge: nothing at rest; fades in over the first inset's worth of scroll (set by the engine per page) */
	opacity: var(--tt-pl-uk-sheet-edge, 0);
}
/* the header's fade: opaque at the top, eased transparent by cubic-bezier(0.75, 0, 0.75, 1), 15 stops */
.tt-pl-uk-sheet__barbg::after {
	content: "";
	position: absolute;
	inset: 0;
	/* opaque behind the buttons and the title (nothing shows through them), then the header's fade below the bar:
	   eased by cubic-bezier(0.75, 0, 0.75, 1), 15 stops over one inset */
	background: linear-gradient(to bottom,
		var(--tt-pl-uk-sheet-bg) 0%,
		var(--tt-pl-uk-sheet-bg) calc(100% - var(--tt-pl-uk-sheet-inset)),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 100%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.0),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 99.7%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.0667),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 98.9%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.1333),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 97.3%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.2),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 95%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.2667),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 91.7%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.3333),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 87.4%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.4),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 81.7%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.4667),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 74.5%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.5333),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 65.4%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.6),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 54%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.6667),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 40.3%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.7333),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 25.1%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.8),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 11.3%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.8667),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 2.6%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 0.9333),
		color-mix(in srgb, var(--tt-pl-uk-sheet-bg) 0%, transparent) calc(100% - var(--tt-pl-uk-sheet-inset) + var(--tt-pl-uk-sheet-inset) * 1.0));
}
/* the header's progressive blur (tt-el-nav), its recipe unchanged: 8 layers, radii doubling 0.5 to 64 units of 0.0625rem
   (its own rem-based ramp, scaled by --tt-pl-uk-sheet-blur), masks stepping 12.5% with a four-stop overlap, heaviest at
   the top; half-resolution layers (200% box scaled to 0.5) for a quarter of the fill cost */
.tt-pl-uk-sheet__blur {
	display: none;   /* shown only while the page is scrolled under the bar (.is-under); data-sheet-blur="off" never */
	position: absolute;
	inset: 0;
	pointer-events: none;
	contain: strict;
	isolation: isolate;
}
.tt-pl-uk-sheet__blur-layer {
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	transform: scale(0.5) translateZ(0);
	transform-origin: center center;
	-webkit-backdrop-filter: blur(calc(var(--tt-pl-uk-sheet-bl) * var(--tt-pl-uk-sheet-blur) * 0.0625rem));
	backdrop-filter: blur(calc(var(--tt-pl-uk-sheet-bl) * var(--tt-pl-uk-sheet-blur) * 0.0625rem));
	will-change: transform;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.tt-pl-uk-sheet__blur-layer:nth-child(1) { --tt-pl-uk-sheet-bl: 0.5; -webkit-mask: linear-gradient(to top, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 12.5%, rgba(0,0,0,1) 25%, rgba(0,0,0,0) 37.5%); mask: linear-gradient(to top, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 12.5%, rgba(0,0,0,1) 25%, rgba(0,0,0,0) 37.5%); }
.tt-pl-uk-sheet__blur-layer:nth-child(2) { --tt-pl-uk-sheet-bl: 1; -webkit-mask: linear-gradient(to top, rgba(0,0,0,0) 12.5%, rgba(0,0,0,1) 25%, rgba(0,0,0,1) 37.5%, rgba(0,0,0,0) 50%); mask: linear-gradient(to top, rgba(0,0,0,0) 12.5%, rgba(0,0,0,1) 25%, rgba(0,0,0,1) 37.5%, rgba(0,0,0,0) 50%); }
.tt-pl-uk-sheet__blur-layer:nth-child(3) { --tt-pl-uk-sheet-bl: 2; -webkit-mask: linear-gradient(to top, rgba(0,0,0,0) 25%, rgba(0,0,0,1) 37.5%, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 62.5%); mask: linear-gradient(to top, rgba(0,0,0,0) 25%, rgba(0,0,0,1) 37.5%, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 62.5%); }
.tt-pl-uk-sheet__blur-layer:nth-child(4) { --tt-pl-uk-sheet-bl: 4; -webkit-mask: linear-gradient(to top, rgba(0,0,0,0) 37.5%, rgba(0,0,0,1) 50%, rgba(0,0,0,1) 62.5%, rgba(0,0,0,0) 75%); mask: linear-gradient(to top, rgba(0,0,0,0) 37.5%, rgba(0,0,0,1) 50%, rgba(0,0,0,1) 62.5%, rgba(0,0,0,0) 75%); }
.tt-pl-uk-sheet__blur-layer:nth-child(5) { --tt-pl-uk-sheet-bl: 8; -webkit-mask: linear-gradient(to top, rgba(0,0,0,0) 50%, rgba(0,0,0,1) 62.5%, rgba(0,0,0,1) 75%, rgba(0,0,0,0) 87.5%); mask: linear-gradient(to top, rgba(0,0,0,0) 50%, rgba(0,0,0,1) 62.5%, rgba(0,0,0,1) 75%, rgba(0,0,0,0) 87.5%); }
.tt-pl-uk-sheet__blur-layer:nth-child(6) { --tt-pl-uk-sheet-bl: 16; -webkit-mask: linear-gradient(to top, rgba(0,0,0,0) 62.5%, rgba(0,0,0,1) 75%, rgba(0,0,0,1) 87.5%, rgba(0,0,0,0) 100%); mask: linear-gradient(to top, rgba(0,0,0,0) 62.5%, rgba(0,0,0,1) 75%, rgba(0,0,0,1) 87.5%, rgba(0,0,0,0) 100%); }
.tt-pl-uk-sheet__blur-layer:nth-child(7) { --tt-pl-uk-sheet-bl: 32; -webkit-mask: linear-gradient(to top, rgba(0,0,0,0) 75%, rgba(0,0,0,1) 87.5%, rgba(0,0,0,1) 100%); mask: linear-gradient(to top, rgba(0,0,0,0) 75%, rgba(0,0,0,1) 87.5%, rgba(0,0,0,1) 100%); }
.tt-pl-uk-sheet__blur-layer:nth-child(8) { --tt-pl-uk-sheet-bl: 64; -webkit-mask: linear-gradient(to top, rgba(0,0,0,0) 87.5%, rgba(0,0,0,1) 100%); mask: linear-gradient(to top, rgba(0,0,0,0) 87.5%, rgba(0,0,0,1) 100%); }
.tt-pl-uk-sheet__panel.is-under .tt-pl-uk-sheet__blur { display: block; }
dialog.tt-pl-uk-sheet[data-sheet-blur="off"] .tt-pl-uk-sheet__blur { display: none; }
@media (prefers-reduced-transparency: reduce) {
	.tt-pl-uk-sheet__panel.is-under .tt-pl-uk-sheet__blur { display: none; }
}
.tt-pl-uk-sheet__lead, .tt-pl-uk-sheet__trail, .tt-pl-uk-sheet__title { z-index: 1; }
.tt-pl-uk-sheet__lead, .tt-pl-uk-sheet__trail { position: absolute; top: var(--tt-pl-uk-sheet-inset); height: var(--tt-pl-uk-sheet-btn); }
.tt-pl-uk-sheet__lead { left: var(--tt-pl-uk-sheet-inset); }
.tt-pl-uk-sheet__trail { right: var(--tt-pl-uk-sheet-inset); }
.tt-pl-uk-sheet__title {
	position: absolute;
	top: var(--tt-pl-uk-sheet-inset);
	left: calc(var(--tt-pl-uk-sheet-inset) * 2 + var(--tt-pl-uk-sheet-btn));
	right: calc(var(--tt-pl-uk-sheet-inset) * 2 + var(--tt-pl-uk-sheet-btn));
	height: var(--tt-pl-uk-sheet-btn);
	display: grid;
	place-items: center;
	font-size: var(--step-0, 1rem);
	font-weight: 600;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Bar buttons: two classes deep, so a glass's own position never puts them back in the flow. Plain styles here; the
   UI Kit glass (rest glass, lift on press) replaces the fill while the sheet is open (.is-glass). */
.tt-pl-uk-sheet__bar .tt-pl-uk-sheet__btn {
	position: absolute;
	top: 0;
	height: var(--tt-pl-uk-sheet-btn);
	min-width: var(--tt-pl-uk-sheet-btn);
	padding: 0;
	border: 0;
	border-radius: 999px;   /* a pill at any height */
	display: inline-grid;
	place-items: center;
	font: inherit;
	font-size: var(--step-0, 1rem);
	font-weight: 600;
	color: inherit;
	background: var(--tt-pl-uk-sheet-btn-bg);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14), 0 0 0 0.5px rgba(0, 0, 0, 0.22), 0 1px 3px rgba(0, 0, 0, 0.1);   /* the header button's hairlines */
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition: opacity 0.25s var(--tt-pl-uk-sheet-ease), transform 0.35s var(--tt-pl-uk-sheet-ease);
}
.tt-pl-uk-sheet__lead > .tt-pl-uk-sheet__btn { left: 0; }
.tt-pl-uk-sheet__trail > .tt-pl-uk-sheet__btn { right: 0; }
.tt-pl-uk-sheet__bar .tt-pl-uk-sheet__btn--trail {
	padding: 0 var(--space-m, 1.5rem);
	background: var(--tt-pl-uk-sheet-accent);
	color: var(--tt-pl-uk-sheet-accent-ink);
}
.tt-pl-uk-sheet__bar .tt-pl-uk-sheet__btn.is-glass { background: transparent; box-shadow: none; }
.tt-pl-uk-sheet__bar .tt-pl-uk-sheet__btn:disabled { opacity: 0.45; cursor: default; }
.tt-pl-uk-sheet__bar .tt-pl-uk-sheet__btn.is-off { opacity: 0; transform: scale(0.6); pointer-events: none; }
.tt-pl-uk-sheet__bar .tt-pl-uk-sheet__btn .tt-pl-uk-sheet__svg {
	display: block;
	width: var(--tt-pl-uk-sheet-icon);
	height: var(--tt-pl-uk-sheet-icon);
	fill: none;
	stroke: currentColor;
}

/* Pages: a pushed page slides in from the right while the previous one moves to -28% and fades to 0.4 */
.tt-pl-uk-sheet__stack { position: absolute; inset: 0; overflow: clip; }
.tt-pl-uk-sheet__page {
	position: absolute;
	inset: 0;
	overflow: auto;
	overscroll-behavior: contain;   /* keeps iOS's bounce, without chaining the scroll to the page behind */
	-webkit-overflow-scrolling: touch;
	/* the pages start under the bar, so they scroll beneath its blur */
	padding: calc(var(--tt-pl-uk-sheet-btn) + 2 * var(--tt-pl-uk-sheet-inset) + var(--space-xs, 0.75rem)) var(--space-m, 1.5rem)
		calc(var(--space-l, 2rem) + env(safe-area-inset-bottom, 0px));
	background: var(--tt-pl-uk-sheet-bg);
	transition: transform var(--tt-pl-uk-sheet-ms) var(--tt-pl-uk-sheet-ease), opacity var(--tt-pl-uk-sheet-ms) var(--tt-pl-uk-sheet-ease);
}
.tt-pl-uk-sheet__page.is-right { transform: translateX(100%); }
.tt-pl-uk-sheet__page.is-left { transform: translateX(-28%); opacity: 0.4; pointer-events: none; }
/* at medium the body drags the sheet (its scroll is off); at large it only scrolls */
.tt-pl-uk-sheet__panel[data-detent="medium"] .tt-pl-uk-sheet__page { overflow: hidden; touch-action: none; }
.tt-pl-uk-sheet__panel[data-detent="large"] .tt-pl-uk-sheet__page { touch-action: pan-y; }

@media (prefers-reduced-motion: reduce) {
	.tt-pl-uk-sheet__panel.is-snapping, .tt-pl-uk-sheet__page, .tt-pl-uk-sheet__bar .tt-pl-uk-sheet__btn { transition-duration: 0.01s; }
}
