/* ==========================================================================
   Class Manager — theme polish. Colours come from the pinned --clm-* tokens
   (inc/integrations/class-manager.php); this file only adds the theme's
   typography, shape and motion.
   ========================================================================== */

:is(.clm-schedule, .clm-event, .clm-block, .clm-upcoming, .clm-instructors, .clm-instructor, .clm-catalog) :is(h2, h3, h4) {
	font-family: var(--f-heading);
	text-transform: var(--heading-case);
	letter-spacing: var(--heading-spacing);
}

/* Cards: the theme's card shape and hover lift. */
:is(.clm-schedule, .clm-block, .clm-upcoming, .clm-catalog) .clm-card {
	border-radius: var(--radius-lg);
	transition: transform .22s var(--ease), box-shadow .22s, border-color .22s;
}
:is(.clm-schedule, .clm-block, .clm-upcoming, .clm-catalog) .clm-card:hover {
	transform: translateY(-3px);
	box-shadow: var(--shadow);
}
:is(.clm-schedule, .clm-block, .clm-upcoming) .clm-card--slider:hover { transform: none; }

/* Rows and the toolbar get the theme's corner rounding. */
.clm-schedule :is(.clm-row, .clm-toolbar, .clm-calendar) { border-radius: var(--radius-lg); }

/* Buttons: same weight and feel as the theme's own. */
:is(.clm-schedule, .clm-event, .clm-block, .clm-upcoming, .clm-catalog, .clm-modal, .clm-checkout) .clm-button {
	min-height: 44px;
	transition: background-color .18s, transform .18s var(--ease), box-shadow .18s;
}
:is(.clm-schedule, .clm-event, .clm-block, .clm-upcoming, .clm-catalog, .clm-modal) .clm-button:not(.clm-button--muted):hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 20px -8px rgba(var(--c-accent-rgb), .6);
}

/* Class pages and the schedule use the wide column, not the reading column. */
.entry-content > :is(.clm-event, .clm-details, .clm-schedule, .clm-catalog, .clm-instructor, .clm-instructors, .clm-checkout) {
	max-width: calc(var(--wide) + var(--gutter) * 2);
}
