/*
 * EistrupWeb Booking, formular.
 * Opbygning som Calendly. Farver og skrifttyper kan tilpasses pr. hjemmeside
 * ved at sætte variablerne på .ewb-bk.
 */
.ewb-bk {
	--ewb-accent: #009E97;
	--ewb-accent-dark: #024C48;
	--ewb-accent-soft: #EFFBFA;
	--ewb-accent-ring: #D2F4F2;
	--ewb-ink: #022824;
	--ewb-text: #354B48;
	--ewb-muted: #4A6360;
	--ewb-faint: #6B8885;
	--ewb-line: #E8F0EF;
	--ewb-line-strong: #D1DFDE;
	--ewb-surface: #FFFFFF;
	--ewb-soft: #F7FAFA;
	--ewb-picked: #4A6360;
	--ewb-danger: #EF4444;
	--ewb-danger-text: #C2362F;
	--ewb-font-heading: Manrope, "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--ewb-font-body: inherit;

	font-family: var(--ewb-font-body);
	font-size: 16px;
	line-height: 1.5;
	color: var(--ewb-text);
	width: 100%;
}
.ewb-bk *, .ewb-bk *::before, .ewb-bk *::after { box-sizing: border-box; }
.ewb-bk button { font-family: inherit; cursor: pointer; }
.ewb-bk button:disabled { cursor: default; }
.ewb-bk a { color: var(--ewb-accent); text-decoration: underline; text-underline-offset: 2px; }
.ewb-bk a:hover { color: var(--ewb-accent-dark); }
.ewb-bk button:focus-visible, .ewb-bk a:focus-visible, .ewb-bk [tabindex]:focus-visible { outline: 2px solid var(--ewb-accent); outline-offset: 2px; }
.ewb-bk [data-focus]:focus { outline: none; }
.ewb-bk p { margin: 0; }
.ewb-bk__i { display: inline-flex; flex-shrink: 0; }
.ewb-bk__i svg { display: block; }
.ewb-bk__i--accent { color: var(--ewb-accent); }
.ewb-bk__i--danger { color: var(--ewb-danger); }
.ewb-bk > p.ewb-bk__loading { color: var(--ewb-faint); padding: 24px 0; }

/* ---------- Kort ---------- */

.ewb-bk__card {
	margin: 0 auto;
	width: 100%;
	max-width: 1000px;
	background: var(--ewb-surface);
	border: 1px solid var(--ewb-line);
	border-radius: 16px;
	box-shadow: 0 1px 2px rgba(2, 40, 36, .06);
	overflow: hidden;
}
.ewb-bk__card--two { display: flex; min-height: 660px; }
.ewb-bk__card--one { min-height: 560px; display: flex; align-items: center; }
.ewb-bk--standalone .ewb-bk__card--one { max-width: 640px; }
.ewb-bk.is-busy .ewb-bk__card { cursor: progress; }

/* ---------- Venstre panel ---------- */

.ewb-bk__left { width: 40%; flex-shrink: 0; border-right: 1px solid var(--ewb-line); display: flex; flex-direction: column; }
.ewb-bk__logo { padding: 28px 32px; border-bottom: 1px solid var(--ewb-line); display: flex; justify-content: center; }
.ewb-bk__logo img { height: 44px; width: auto; max-width: 100%; display: block; }
.ewb-bk__left-body { padding: 28px 32px; display: flex; flex-direction: column; gap: 20px; flex: 1; }
.ewb-bk__host { display: flex; flex-direction: column; gap: 16px; align-items: flex-start; }
.ewb-bk__avatar { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; display: block; flex-shrink: 0; }
.ewb-bk__host-text { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.ewb-bk__hostname { font-size: 14px; font-weight: 500; color: var(--ewb-muted); }
.ewb-bk .ewb-bk__title {
	margin: 0; padding: 0;
	font-family: var(--ewb-font-heading); font-weight: 600; font-size: 24px; line-height: 1.25; letter-spacing: -.01em;
	color: var(--ewb-ink); text-wrap: balance;
}
.ewb-bk__facts { display: flex; flex-direction: column; gap: 12px; }
.ewb-bk__fact { display: flex; gap: 10px; align-items: flex-start; font-size: 15px; color: var(--ewb-muted); }
.ewb-bk__fact .ewb-bk__i { margin-top: 1px; }
.ewb-bk__fact.is-strong { font-weight: 600; }
.ewb-bk__fact > span:last-child { display: flex; flex-direction: column; }
.ewb-bk__fact-label { font-size: 13px; font-weight: 400; }
.ewb-bk__fact strong { font-weight: 600; }
.ewb-bk__modegroup { display: flex; flex-direction: column; gap: 10px; margin-top: 4px; }
.ewb-bk__modes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.ewb-bk .ewb-bk__mode {
	min-height: 44px; padding: 8px 12px; margin: 0;
	display: flex; align-items: center; gap: 10px; text-align: left; line-height: 1.25;
	border: 1px solid var(--ewb-line-strong); border-radius: 8px; background: var(--ewb-surface);
	font-size: 14px; font-weight: 500; color: var(--ewb-text);
	transition: border-color .2s, background .2s;
}
.ewb-bk .ewb-bk__mode:hover { border-color: var(--ewb-accent); }
.ewb-bk .ewb-bk__mode.is-selected { border-color: var(--ewb-accent); background: var(--ewb-accent-soft); font-weight: 600; color: var(--ewb-ink); }
.ewb-bk__radio { width: 16px; height: 16px; border-radius: 50%; border: 1.5px solid var(--ewb-line-strong); flex-shrink: 0; background: var(--ewb-surface); display: flex; align-items: center; justify-content: center; }
.ewb-bk__mode.is-selected .ewb-bk__radio { border-color: var(--ewb-accent); }
.ewb-bk__mode.is-selected .ewb-bk__radio::after { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--ewb-accent); }
.ewb-bk .ewb-bk__toggle {
	align-self: flex-start; min-height: 44px; padding: 0; margin: -8px 0 -12px; border: 0; background: none;
	display: flex; align-items: center; gap: 6px; font-size: 15px; font-weight: 600; color: var(--ewb-accent);
}
.ewb-bk__toggle .ewb-bk__i { transition: transform .2s; }
.ewb-bk__toggle .is-open { transform: rotate(180deg); }
.ewb-bk__desc { display: flex; flex-direction: column; gap: 16px; font-size: 15px; }
.ewb-bk__desc p { text-wrap: pretty; }
.ewb-bk ul.ewb-bk__bullets { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
.ewb-bk__bullets li { margin: 0; padding: 0; display: flex; gap: 10px; align-items: center; }
.ewb-bk__bullets li::before { content: none; }
.ewb-bk__privacy-link { margin-top: auto; padding-top: 8px; font-size: 14px; }

/* ---------- Højre panel ---------- */

.ewb-bk__right { flex: 1; min-width: 0; padding: 32px; display: flex; flex-direction: column; }
.ewb-bk__pane { display: flex; flex-direction: column; }
.ewb-bk__pane-head { display: flex; align-items: center; gap: 12px; }
.ewb-bk .ewb-bk__h {
	margin: 0; padding: 0;
	font-family: var(--ewb-font-heading); font-weight: 600; font-size: 20px; line-height: 1.3; color: var(--ewb-ink);
}
.ewb-bk .ewb-bk__circle {
	width: 44px; height: 44px; flex-shrink: 0; padding: 0; margin: 0;
	border-radius: 50%; border: 1px solid var(--ewb-line-strong); background: var(--ewb-surface); color: var(--ewb-accent);
	display: flex; align-items: center; justify-content: center; transition: background .2s, border-color .2s;
}
.ewb-bk .ewb-bk__circle:hover { border-color: var(--ewb-accent); background: var(--ewb-accent-soft); }
.ewb-bk__lead { margin-top: 8px !important; max-width: 440px; text-wrap: pretty; }
.ewb-bk__physnote { margin-top: 8px; display: flex; flex-wrap: wrap; align-items: center; column-gap: 8px; font-size: 14px; color: var(--ewb-muted); }
.ewb-bk .ewb-bk__textbtn {
	min-height: 32px; padding: 0; margin: 0; border: 0; background: none;
	font-size: 14px; font-weight: 600; color: var(--ewb-accent); text-decoration: underline; text-underline-offset: 2px;
}
.ewb-bk .ewb-bk__pane > .ewb-bk__alert { margin-top: 20px; }

/* Kalender */
.ewb-bk__calrow { display: flex; gap: 24px; margin-top: 24px; }
.ewb-bk__calendar { flex: 1; min-width: 0; }
.ewb-bk__monthnav { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 16px; }
.ewb-bk__month { font-family: var(--ewb-font-heading); font-weight: 600; font-size: 16px; color: var(--ewb-ink); }
.ewb-bk .ewb-bk__navbtn {
	width: 44px; height: 44px; padding: 0; margin: 0; border-radius: 50%; border: 0;
	background: var(--ewb-accent-soft); color: var(--ewb-accent);
	display: flex; align-items: center; justify-content: center; transition: background .15s;
}
.ewb-bk .ewb-bk__navbtn:hover:not(:disabled) { background: var(--ewb-accent-ring); }
.ewb-bk .ewb-bk__navbtn:disabled { background: none; color: var(--ewb-line-strong); }
.ewb-bk__weekdays { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); text-align: center; margin-bottom: 6px; font-size: 13px; font-weight: 500; color: var(--ewb-muted); }
.ewb-bk__gridwrap { position: relative; }
.ewb-bk__grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); row-gap: 6px; transition: opacity .2s; }
.ewb-bk__grid.is-dim { opacity: .5; }
.ewb-bk__cell { display: flex; justify-content: center; align-items: center; height: 48px; }
.ewb-bk .ewb-bk__day {
	position: relative; width: 44px; height: 44px; padding: 0; margin: 0;
	border-radius: 50%; border: 0; display: flex; align-items: center; justify-content: center;
	font-size: 15px; font-variant-numeric: tabular-nums;
}
.ewb-bk button.ewb-bk__day { background: var(--ewb-accent-soft); color: var(--ewb-accent); font-weight: 600; transition: background .15s; }
.ewb-bk button.ewb-bk__day:hover { background: var(--ewb-accent-ring); }
.ewb-bk button.ewb-bk__day.is-selected {
	background: var(--ewb-accent); color: #fff; font-weight: 700;
	box-shadow: 0 0 0 2px var(--ewb-surface), 0 0 0 4px var(--ewb-accent);
}
.ewb-bk span.ewb-bk__day.is-off { color: var(--ewb-faint); }
.ewb-bk__today { position: absolute; bottom: 6px; left: 50%; width: 4px; height: 4px; margin-left: -2px; border-radius: 50%; background: currentColor; }
.ewb-bk__loading { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; }
.ewb-bk__loading-pill {
	display: flex; align-items: center; gap: 10px; padding: 10px 16px;
	background: var(--ewb-surface); border: 1px solid var(--ewb-line); border-radius: 12px;
	box-shadow: 0 1px 2px rgba(2, 40, 36, .06); font-size: 14px; color: var(--ewb-text);
}
.ewb-bk__spinner { width: 16px; height: 16px; border-radius: 50%; border: 2px solid var(--ewb-accent-ring); border-top-color: var(--ewb-accent); display: inline-block; animation: ewb-spin .8s linear infinite; }
@keyframes ewb-spin { to { transform: rotate(360deg); } }
.ewb-bk__empty {
	margin-top: 20px; padding: 16px 18px; background: var(--ewb-accent-soft); border-radius: 12px;
	display: flex; flex-direction: column; gap: 12px; align-items: flex-start; font-size: 15px;
}
.ewb-bk__empty p { text-wrap: pretty; }
.ewb-bk__alert {
	margin-top: 20px; padding: 16px 18px; background: var(--ewb-soft); border: 1px solid var(--ewb-line); border-radius: 12px;
	display: flex; gap: 12px; align-items: flex-start; font-size: 15px;
}
.ewb-bk__alert .ewb-bk__i { margin-top: 2px; }
.ewb-bk__alert-body { display: flex; flex-direction: column; gap: 12px; align-items: flex-start; }
.ewb-bk__alert strong { color: var(--ewb-ink); font-weight: 600; }
.ewb-bk__tz { margin-top: 20px; display: flex; align-items: center; gap: 8px; font-size: 14px; color: var(--ewb-muted); }

/* Tider */
.ewb-bk__times { width: 184px; flex-shrink: 0; display: flex; flex-direction: column; gap: 12px; animation: ewb-slide .3s ease; }
@keyframes ewb-slide { from { opacity: 0; transform: translateX(12px); } to { opacity: 1; transform: none; } }
.ewb-bk .ewb-bk__daytitle { margin: 0; padding: 0; font-family: var(--ewb-font-heading); font-weight: 600; font-size: 16px; line-height: 44px; color: var(--ewb-ink); }
.ewb-bk__timelist { display: grid; grid-template-columns: 1fr; gap: 8px; max-height: 420px; overflow-y: auto; padding: 2px 4px 2px 2px; }
.ewb-bk .ewb-bk__time {
	height: 48px; padding: 0; margin: 0; border: 1px solid var(--ewb-accent); border-radius: 8px;
	background: var(--ewb-surface); color: var(--ewb-accent); font-size: 15px; font-weight: 600; font-variant-numeric: tabular-nums;
	display: flex; align-items: center; justify-content: center; gap: 6px;
	transition: box-shadow .15s, background .15s;
}
.ewb-bk button.ewb-bk__time:hover { box-shadow: inset 0 0 0 1px var(--ewb-accent); background: var(--ewb-accent-soft); }
.ewb-bk .ewb-bk__time.is-picked { border-color: var(--ewb-picked); background: var(--ewb-picked); color: #fff; }
.ewb-bk button.ewb-bk__time.is-picked:hover { box-shadow: none; background: var(--ewb-picked); }
.ewb-bk .ewb-bk__time.is-next { border-color: var(--ewb-accent); background: var(--ewb-accent); color: #fff; }
.ewb-bk button.ewb-bk__time.is-next:hover { background: var(--ewb-accent-dark); border-color: var(--ewb-accent-dark); box-shadow: none; }
.ewb-bk__split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }

/* Knapper */
.ewb-bk .ewb-bk__btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 44px; padding: 0 22px; margin: 0;
	border-radius: 8px; border: 1px solid transparent;
	font-size: 15px; font-weight: 600; line-height: 1.2; text-decoration: none;
	transition: background .2s, border-color .2s, transform .2s;
}
.ewb-bk .ewb-bk__btn--primary { background: var(--ewb-accent); color: #fff; }
.ewb-bk .ewb-bk__btn--primary:hover:not(:disabled) { background: var(--ewb-accent-dark); color: #fff; }
.ewb-bk .ewb-bk__btn--secondary { background: var(--ewb-surface); border-color: var(--ewb-line-strong); color: var(--ewb-ink); }
.ewb-bk .ewb-bk__btn--secondary:hover:not(:disabled) { border-color: var(--ewb-accent); background: var(--ewb-accent-soft); color: var(--ewb-ink); }
.ewb-bk .ewb-bk__btn--lg { min-height: 48px; padding: 0 28px; font-size: 16px; }
.ewb-bk .ewb-bk__btn--lg.ewb-bk__btn--primary:hover:not(:disabled) { transform: translateY(-1px); }
.ewb-bk .ewb-bk__btn--block { width: 100%; min-height: 48px; font-size: 16px; margin-top: 4px; }
.ewb-bk .ewb-bk__btn--start { align-self: flex-start; margin-top: 8px; }
.ewb-bk .ewb-bk__btn:disabled { opacity: .7; }

/* Formular */
.ewb-bk__zipform { margin-top: 28px; display: flex; flex-direction: column; gap: 8px; max-width: 380px; }
.ewb-bk__inline { display: flex; gap: 8px; }
.ewb-bk__inline .ewb-bk__input { flex: 1; min-width: 0; }
.ewb-bk__form { margin-top: 24px; display: flex; flex-direction: column; gap: 18px; max-width: 460px; }
.ewb-bk__field { display: flex; flex-direction: column; gap: 6px; }
.ewb-bk__field--left { width: 100%; margin-top: 24px; text-align: left; }
.ewb-bk__label { font-size: 14px; font-weight: 600; color: var(--ewb-ink); display: flex; gap: 6px; }
.ewb-bk__opt { font-weight: 400; color: var(--ewb-muted); }
.ewb-bk .ewb-bk__input {
	display: block; width: 100%; height: 44px; padding: 0 14px; margin: 0;
	border: 1px solid var(--ewb-line-strong); border-radius: 8px; background: var(--ewb-surface);
	font-family: inherit; font-size: 16px; line-height: 1.5; color: var(--ewb-ink);
	box-shadow: none; outline: none; transition: border-color .15s, box-shadow .15s;
}
.ewb-bk textarea.ewb-bk__input { height: auto; padding: 10px 14px; resize: vertical; }
.ewb-bk .ewb-bk__input::placeholder { color: var(--ewb-faint); opacity: 1; }
.ewb-bk .ewb-bk__input:focus { border-color: var(--ewb-accent); box-shadow: 0 0 0 3px var(--ewb-accent-ring); }
.ewb-bk .ewb-bk__input.has-error { border-color: var(--ewb-danger); }
.ewb-bk .ewb-bk__input.has-error:focus { box-shadow: 0 0 0 3px rgba(239, 68, 68, .15); }
.ewb-bk__err { display: flex; gap: 8px; align-items: flex-start; font-size: 14px; color: var(--ewb-danger-text); }
.ewb-bk__err .ewb-bk__i { margin-top: 3px; }
.ewb-bk__small { font-size: 14px; color: var(--ewb-muted); text-wrap: pretty; }
.ewb-bk__hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }

/* ---------- Én kolonne ---------- */

.ewb-bk__one { width: 100%; max-width: 520px; margin: 0 auto; padding: 64px 40px; display: flex; flex-direction: column; align-items: center; text-align: center; }
.ewb-bk__sig { display: flex; gap: 6px; margin-bottom: 20px; }
.ewb-bk__sig span { height: 2px; background: var(--ewb-accent); }
.ewb-bk__sig span:first-child { width: 40px; }
.ewb-bk__sig span:last-child { width: 12px; }
.ewb-bk .ewb-bk__one-title {
	margin: 0; padding: 0;
	font-family: var(--ewb-font-heading); font-weight: 600; font-size: 36px; line-height: 1.2; letter-spacing: -.02em; color: var(--ewb-ink);
}
.ewb-bk .ewb-bk__one-title em { font-style: normal; font-weight: 300; color: var(--ewb-accent); }
.ewb-bk__one-lead { margin-top: 10px !important; font-size: 17px; text-wrap: pretty; }
.ewb-bk__one-extra { margin-top: 20px !important; font-size: 15px; text-wrap: pretty; }
.ewb-bk__one-note { margin-top: 24px !important; font-size: 15px; color: var(--ewb-muted); text-wrap: pretty; }
.ewb-bk__one-note strong { color: var(--ewb-ink); font-weight: 600; }
.ewb-bk__one-actions { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; width: 100%; }
.ewb-bk__one-actions .ewb-bk__btn { flex: 1 1 180px; max-width: 240px; }
.ewb-bk__one .ewb-bk__alert { width: 100%; text-align: left; }
.ewb-bk__one > .ewb-bk__btn { margin-top: 28px; }

.ewb-bk__summary { width: 100%; margin-top: 32px; background: var(--ewb-soft); border: 1px solid var(--ewb-line); border-radius: 12px; padding: 4px 20px; text-align: left; }
.ewb-bk__srow { display: flex; gap: 14px; align-items: flex-start; padding: 16px 0; }
.ewb-bk__srow + .ewb-bk__srow { border-top: 1px solid var(--ewb-line); }
.ewb-bk__sicon { width: 40px; height: 40px; border-radius: 50%; background: var(--ewb-accent-soft); color: var(--ewb-accent); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.ewb-bk__stext { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ewb-bk__slabel { font-size: 13px; color: var(--ewb-muted); }
.ewb-bk__svalue { font-weight: 600; color: var(--ewb-ink); }
.ewb-bk a.ewb-bk__svalue { color: var(--ewb-accent); word-break: break-all; }
.ewb-bk__ssub { font-size: 14px; color: var(--ewb-muted); }

/* ---------- Smal visning (mobil eller smal kolonne) ---------- */

.ewb-bk.is-narrow .ewb-bk__card--two { flex-direction: column; min-height: 0; }
.ewb-bk.is-narrow .ewb-bk__card--one { min-height: 0; }
.ewb-bk.is-narrow .ewb-bk__left { width: 100%; border-right: 0; border-bottom: 1px solid var(--ewb-line); }
.ewb-bk.is-narrow .ewb-bk__logo { padding: 14px 20px; }
.ewb-bk.is-narrow .ewb-bk__logo img { height: 32px; }
.ewb-bk.is-narrow .ewb-bk__left-body { padding: 20px; }
.ewb-bk.is-narrow .ewb-bk__host { flex-direction: row; gap: 14px; align-items: center; }
.ewb-bk.is-narrow .ewb-bk__avatar { width: 52px; height: 52px; }
.ewb-bk.is-narrow .ewb-bk__title { font-size: 19px; }
.ewb-bk.is-narrow .ewb-bk__right { padding: 24px 20px 28px; }
.ewb-bk.is-narrow .ewb-bk__calrow { flex-direction: column; gap: 28px; }
.ewb-bk.is-narrow .ewb-bk__cell { height: 46px; }
.ewb-bk.is-narrow .ewb-bk__times { width: 100%; animation: none; }
.ewb-bk.is-narrow .ewb-bk__timelist { grid-template-columns: repeat(3, minmax(0, 1fr)); max-height: none; }
.ewb-bk.is-narrow .ewb-bk__daytitle { line-height: 1.4; }
.ewb-bk.is-narrow .ewb-bk__one { padding: 40px 20px; }
.ewb-bk.is-narrow .ewb-bk__one-title { font-size: 28px; }
.ewb-bk.is-narrow .ewb-bk__one-actions { flex-direction: column; align-items: center; }
.ewb-bk.is-narrow .ewb-bk__one-actions .ewb-bk__btn { width: 100%; max-width: 240px; flex-basis: auto; }

/* ---------- Selvstændig side (flyt eller aflys) ---------- */

body.ewb-standalone { margin: 0; background: #F7FAFA; color: #354B48; font-family: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.ewb-standalone__main { max-width: 1000px; margin: 0 auto; padding: 32px 16px 40px; }
.ewb-standalone__logo { display: flex; justify-content: center; padding: 16px 0 32px; }
.ewb-standalone__logo img { height: 40px; width: auto; display: block; }
.ewb-standalone__logo a { color: #022824; text-decoration: none; font-size: 20px; }

@media (prefers-reduced-motion: reduce) {
	.ewb-bk *, .ewb-bk { animation: none !important; transition: none !important; }
}

/* ---------- Værn mod temaets knapregler ----------
 * Temaer og sidebyggere styler ofte alle knapper ved hover og fokus, nogle
 * gange med !important (fx ".elementor-kit-X button:hover { background:#fff !important }").
 * Reglerne herunder har højere specificitet og vinder derfor altid.
 */
.ewb-bk button.ewb-bk__btn--primary,
.ewb-bk button.ewb-bk__btn--primary:focus { background: var(--ewb-accent) !important; background-image: none !important; color: #fff !important; border-color: transparent !important; }
.ewb-bk button.ewb-bk__btn--primary:hover:not(:disabled),
.ewb-bk button.ewb-bk__btn--primary:active:not(:disabled) { background: var(--ewb-accent-dark) !important; background-image: none !important; color: #fff !important; border-color: transparent !important; }
.ewb-bk button.ewb-bk__btn--primary:disabled:hover { background: var(--ewb-accent) !important; }

.ewb-bk button.ewb-bk__btn--secondary,
.ewb-bk button.ewb-bk__btn--secondary:focus { background: var(--ewb-surface) !important; background-image: none !important; color: var(--ewb-ink) !important; border-color: var(--ewb-line-strong) !important; }
.ewb-bk button.ewb-bk__btn--secondary:hover:not(:disabled),
.ewb-bk button.ewb-bk__btn--secondary:active:not(:disabled) { background: var(--ewb-accent-soft) !important; background-image: none !important; color: var(--ewb-ink) !important; border-color: var(--ewb-accent) !important; }

.ewb-bk button.ewb-bk__time,
.ewb-bk button.ewb-bk__time:focus { background: var(--ewb-surface) !important; background-image: none !important; color: var(--ewb-accent) !important; border-color: var(--ewb-accent) !important; }
.ewb-bk button.ewb-bk__time:hover,
.ewb-bk button.ewb-bk__time:active { background: var(--ewb-accent-soft) !important; background-image: none !important; color: var(--ewb-accent) !important; border-color: var(--ewb-accent) !important; }
.ewb-bk button.ewb-bk__time.is-picked,
.ewb-bk button.ewb-bk__time.is-picked:hover,
.ewb-bk button.ewb-bk__time.is-picked:focus,
.ewb-bk button.ewb-bk__time.is-picked:active { background: var(--ewb-picked) !important; color: #fff !important; border-color: var(--ewb-picked) !important; box-shadow: none !important; }
.ewb-bk button.ewb-bk__time.is-next,
.ewb-bk button.ewb-bk__time.is-next:focus { background: var(--ewb-accent) !important; color: #fff !important; border-color: var(--ewb-accent) !important; box-shadow: none !important; }
.ewb-bk button.ewb-bk__time.is-next:hover:not(:disabled),
.ewb-bk button.ewb-bk__time.is-next:active:not(:disabled) { background: var(--ewb-accent-dark) !important; color: #fff !important; border-color: var(--ewb-accent-dark) !important; }

.ewb-bk button.ewb-bk__day,
.ewb-bk button.ewb-bk__day:focus { background: var(--ewb-accent-soft) !important; background-image: none !important; color: var(--ewb-accent) !important; }
.ewb-bk button.ewb-bk__day:hover,
.ewb-bk button.ewb-bk__day:active { background: var(--ewb-accent-ring) !important; background-image: none !important; color: var(--ewb-accent) !important; }
.ewb-bk button.ewb-bk__day.is-selected,
.ewb-bk button.ewb-bk__day.is-selected:hover,
.ewb-bk button.ewb-bk__day.is-selected:focus,
.ewb-bk button.ewb-bk__day.is-selected:active { background: var(--ewb-accent) !important; color: #fff !important; }

.ewb-bk button.ewb-bk__navbtn,
.ewb-bk button.ewb-bk__navbtn:focus { background: var(--ewb-accent-soft) !important; background-image: none !important; color: var(--ewb-accent) !important; }
.ewb-bk button.ewb-bk__navbtn:hover:not(:disabled) { background: var(--ewb-accent-ring) !important; color: var(--ewb-accent) !important; }
.ewb-bk button.ewb-bk__navbtn:disabled,
.ewb-bk button.ewb-bk__navbtn:disabled:hover { background: transparent !important; color: var(--ewb-line-strong) !important; }

.ewb-bk button.ewb-bk__circle,
.ewb-bk button.ewb-bk__circle:focus { background: var(--ewb-surface) !important; background-image: none !important; color: var(--ewb-accent) !important; border-color: var(--ewb-line-strong) !important; }
.ewb-bk button.ewb-bk__circle:hover,
.ewb-bk button.ewb-bk__circle:active { background: var(--ewb-accent-soft) !important; color: var(--ewb-accent) !important; border-color: var(--ewb-accent) !important; }

.ewb-bk button.ewb-bk__mode,
.ewb-bk button.ewb-bk__mode:focus,
.ewb-bk button.ewb-bk__mode:hover,
.ewb-bk button.ewb-bk__mode:active { background: var(--ewb-surface) !important; background-image: none !important; color: var(--ewb-text) !important; }
.ewb-bk button.ewb-bk__mode:hover { border-color: var(--ewb-accent) !important; }
.ewb-bk button.ewb-bk__mode.is-selected,
.ewb-bk button.ewb-bk__mode.is-selected:hover,
.ewb-bk button.ewb-bk__mode.is-selected:focus { background: var(--ewb-accent-soft) !important; color: var(--ewb-ink) !important; border-color: var(--ewb-accent) !important; }

.ewb-bk button.ewb-bk__toggle,
.ewb-bk button.ewb-bk__toggle:hover,
.ewb-bk button.ewb-bk__toggle:focus,
.ewb-bk button.ewb-bk__textbtn,
.ewb-bk button.ewb-bk__textbtn:hover,
.ewb-bk button.ewb-bk__textbtn:focus { background: transparent !important; background-image: none !important; color: var(--ewb-accent) !important; border-color: transparent !important; box-shadow: none !important; }
