/*
 * LatePoint in the site's look (Dreamer Site Core). Loaded only where
 * LatePoint's own stylesheet loads. Colours follow the theme's --dsc-*
 * tokens, type follows the page; themes refine further.
 */
:where(.latepoint-w, .latepoint-lightbox-w) {
	--latepoint-brand-primary: var(--dsc-accent);
	--latepoint-headings-color: currentColor;
	--latepoint-color-text-faded: var(--dsc-muted);
	--latepoint-timeslot-selected-color: var(--dsc-accent);
	--latepoint-side-panel-bg: var(--dsc-surface);
	--latepoint-summary-panel-bg: var(--dsc-input-bg);
	--latepoint-calendar-weekday-label-bg: var(--dsc-input-bg);
	--latepoint-border-radius: var(--dsc-radius-sm);
	--latepoint-border-radius-sm: calc(var(--dsc-radius-sm) * 0.6);
	--latepoint-border-radius-md: var(--dsc-radius);
	--latepoint-border-radius-lg: calc(var(--dsc-radius) * 1.4);
}

/* The page's fonts instead of LatePoint's own (its icon font is untouched). */
body .latepoint-w,
body .latepoint-lightbox-w,
body .latepoint-w *:not([class*="latepoint-icon"]),
body .latepoint-lightbox-w *:not([class*="latepoint-icon"]) {
	font-family: inherit;
}

body .latepoint-w {
	color: inherit;
}

/* Buttons follow the theme's buttons. */
body .latepoint-w .latepoint-btn,
body .latepoint-lightbox-w .latepoint-btn {
	border-radius: var(--dsc-btn-radius, var(--dsc-radius-sm));
}

body .latepoint-w .latepoint-btn-primary,
body .latepoint-lightbox-w .latepoint-btn-primary {
	background-color: var(--dsc-accent);
	border-color: var(--dsc-accent);
	color: var(--dsc-on-accent);
}

/* Focus rings that can be seen. */
body .latepoint-w :focus-visible,
body .latepoint-lightbox-w :focus-visible {
	outline: 2px solid var(--dsc-focus);
	outline-offset: 2px;
}

/* "Book" link on menu items (Core menu block). */
.dsc-menu__book {
	display: inline-flex;
	align-items: center;
	margin-top: 0.55rem;
	padding: 0.3rem 0.9rem;
	border: 1px solid var(--dsc-border);
	border-radius: 999px;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.4;
	color: inherit;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.dsc-menu__book:hover,
.dsc-menu__book:focus-visible {
	border-color: var(--dsc-accent);
	background: var(--dsc-accent);
	color: var(--dsc-on-accent);
}
