/* Shared primitives. Commerce page layouts are implemented in their own phases. */
body.raaj-treats-theme .rt-cake-art { display: block; width: 100%; height: auto; }
body.raaj-treats-theme .rt-art-cream { fill: var(--rt-cream); }
body.raaj-treats-theme .rt-art-pink { fill: var(--rt-pink); }
body.raaj-treats-theme .rt-art-blush { fill: var(--rt-blush); }
body.raaj-treats-theme .rt-art-line { stroke: var(--rt-chocolate); }
body.raaj-treats-theme .rt-surface {
	background: var(--rt-white);
	color: var(--rt-chocolate);
	border: 1px solid var(--rt-chocolate);
	border-radius: var(--rt-radius-card);
	padding: clamp(var(--rt-space-6), 3vw, var(--rt-space-8));
}

body.raaj-treats-theme :where(.rt-button, .wp-element-button, .wp-block-button__link, input[type="submit"], input[type="button"], input[type="reset"]) {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--rt-space-2);
	min-height: var(--rt-button-height);
	max-width: 100%;
	padding: var(--rt-space-3) var(--rt-space-6);
	border: 1px solid var(--rt-crimson);
	border-radius: var(--rt-radius-control);
	background: var(--rt-crimson);
	color: var(--rt-white);
	box-shadow: none;
	font: 700 1rem/1.3 var(--rt-sans);
	text-align: center;
	text-decoration: none;
	white-space: normal;
	cursor: pointer;
	transition: background-color var(--rt-duration) var(--rt-easing), border-color var(--rt-duration) var(--rt-easing);
}

body.raaj-treats-theme :where(.rt-button, .wp-element-button, .wp-block-button__link, input[type="submit"], input[type="button"], input[type="reset"]):hover {
	border-color: var(--rt-crimson-dark);
	background: var(--rt-crimson-dark);
	color: var(--rt-white);
	box-shadow: none;
}

body.raaj-treats-theme .rt-button--secondary {
	border-color: var(--rt-chocolate);
	background: var(--rt-white);
	color: var(--rt-chocolate);
}

body.raaj-treats-theme .rt-button--secondary:hover {
	border-color: var(--rt-chocolate);
	background: var(--rt-cream);
	color: var(--rt-chocolate);
}

body.raaj-treats-theme .rt-button--full {
	width: 100%;
}

body.raaj-treats-theme :where(.rt-button, .wp-element-button, input[type="submit"]):disabled,
body.raaj-treats-theme .rt-button[aria-disabled="true"] {
	border-color: var(--rt-text-soft);
	background: var(--rt-cream);
	color: var(--rt-text-soft);
	cursor: not-allowed;
}

body.raaj-treats-theme :where(.rt-form, .entry-content, .woocommerce) :where(input[type="text"], input[type="email"], input[type="tel"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="date"], input[type="time"], select, textarea) {
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
	min-height: var(--rt-target);
	padding: var(--rt-space-3) var(--rt-space-4);
	border: 1px solid var(--rt-text-soft);
	border-radius: var(--rt-radius-control);
	background-color: var(--rt-white);
	color: var(--rt-chocolate);
	font: 400 1rem/1.5 var(--rt-sans);
	box-shadow: none;
}

body.raaj-treats-theme :where(.rt-form, .entry-content, .woocommerce) textarea {
	min-height: 8rem;
	resize: vertical;
}

body.raaj-treats-theme :where(.rt-form, .entry-content, .woocommerce) :where(input, textarea)::placeholder {
	color: var(--rt-text-soft);
	opacity: 1;
}

body.raaj-treats-theme :where(.rt-form, .entry-content, .woocommerce) :where(input[type="checkbox"], input[type="radio"]) {
	accent-color: var(--rt-chocolate);
	width: 1.125rem;
	height: 1.125rem;
}

body.raaj-treats-theme :where(.rt-form, .woocommerce) label {
	color: var(--rt-chocolate);
	font-weight: 600;
}

body.raaj-treats-theme .rt-field-help {
	display: block;
	margin-block-start: var(--rt-space-2);
	color: var(--rt-text-soft);
	font-size: var(--rt-font-small);
}

body.raaj-treats-theme .rt-status {
	border-inline-start: 4px solid var(--rt-chocolate);
	border-radius: var(--rt-radius-control);
	padding: var(--rt-space-4) var(--rt-space-6);
	background: var(--rt-cream);
	color: var(--rt-chocolate);
}

body.raaj-treats-theme .rt-price {
	color: var(--rt-pink);
	font: 800 clamp(1.5rem, 1.3rem + .5vw, 1.75rem)/1.25 var(--rt-sans);
	font-variant-numeric: tabular-nums;
}

body.raaj-treats-theme .rt-accent-link {
	color: var(--rt-pink);
	font-size: 1.1875rem;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: .2em;
}

@media (max-width: 29.999rem) {
	body.raaj-treats-theme .rt-button {
		padding-inline: var(--rt-space-4);
	}
}
