/* ==========================================================================
   Bogens sider — /bog-ai-i-hverdagen og /bestil-bogen
   --------------------------------------------------------------------------
   Siderne skal ligne bogen, læseren holder i hånden. Paletten er omslagets:
   creme bund, mørkeblå tekst, teal og en lys sol. Overskrifter er en kraftig
   grotesk som omslagets titel; bogens egne ord (citater og forbehold) står
   i kursiv antikva, så man kan se forskel på bogen og siden.

   Farvernes roller, også uden for denne fil:
     teal  = det, man kan trykke på, og det, der er kontrolleret
     sol   = bogens egne ord
     blå   = tekst og overskrifter

   Bygget til en telefon i hånden: én kolonne, klikflader på mindst 44 px,
   intet der kræver JavaScript. På store skærme får oversigten over siden
   sin egen kolonne.
   ========================================================================== */

.ml-bog,
.ml-bogside {
	--bog-creme: #fdfbf4;
	--bog-papir: #f6f1e4;
	--bog-hvid: #fff;
	--bog-blaa: #01274c;
	--bog-tekst: #1c2b3a;
	--bog-daempet: #566472;      /* 5,9:1 mod creme */
	--bog-teal: #007a8c;         /* 4,9:1 mod creme */
	--bog-teal-dyb: #005e6c;     /* 7,2:1 mod creme */
	--bog-teal-lys: #e4f1ef;
	--bog-sol: #f2c46d;
	--bog-sol-lys: #fdf3dc;
	--bog-orange: #b8651a;       /* tekst på sol-lys: 4,6:1 */
	--bog-linje: #e5dece;
	--bog-felt: #8a8576;         /* feltkanter: 3,4:1 mod hvid */
	--bog-radius: 10px;
	--focus-ring: var(--bog-teal-dyb);

	background: var(--bog-creme);
	color: var(--bog-tekst);
}

.ml-bog h1,
.ml-bog h2,
.ml-bog h3,
.ml-bogside h1,
.ml-bogside h2,
.ml-bogside h3 {
	font-family: var(--font-body);
	font-weight: 700;
	letter-spacing: -0.015em;
	color: var(--bog-blaa);
}

.ml-bog [id],
.ml-bogside [id] { scroll-margin-top: calc(var(--header-h) + 1rem); }

/* ---------- Knap i bogens farve ------------------------------------------ */

.ml-btn--bog,
.ml-prose a.ml-btn--bog {
	--btn-bg: var(--bog-teal-dyb);
	--btn-fg: #fff;
	--btn-bd: var(--bog-teal-dyb);
	gap: 0.6rem;
	border-radius: 999px;
	padding-inline: 1.6rem;
	font-size: 0.95rem;
	letter-spacing: 0.01em;
	text-transform: none;
	text-decoration: none;
	color: #fff;
}
.ml-btn--bog:hover,
.ml-prose a.ml-btn--bog:hover { --btn-bg: var(--bog-blaa); --btn-bd: var(--bog-blaa); color: #fff; }

/* ---------- Hoved ------------------------------------------------------- */

.ml-bog-head {
	position: relative;
	padding-top: calc(var(--header-h) + clamp(1.25rem, 3vw, 2.75rem));
	background: var(--bog-creme);
}
.ml-bog-head__inner { position: relative; z-index: 1; padding-bottom: clamp(3.25rem, 6vw, 4.5rem); }
.ml-bog:not(.ml-bog--hub) .ml-bog-head__inner > * { max-width: 46rem; }

/* Det lille omslag: "du er det rigtige sted". */
.ml-bog-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	min-height: 44px;
	margin-bottom: 1.1rem;
	padding: 0.3rem 0.9rem 0.3rem 0.3rem;
	border: 1px solid var(--bog-linje);
	border-radius: 999px;
	background: var(--bog-hvid);
	color: var(--bog-blaa);
	text-decoration: none;
	line-height: 1.25;
	transition: border-color 0.2s var(--ease);
}
.ml-bog-badge:hover { border-color: var(--bog-teal); }
.ml-bog-badge img {
	width: 36px;
	height: auto;
	border-radius: 3px 6px 6px 3px;
	box-shadow: 0 1px 2px rgba(1, 39, 76, 0.18), 0 3px 8px rgba(1, 39, 76, 0.1);
}
.ml-bog-badge__tekst { display: grid; }
.ml-bog-badge__bog { font-weight: 700; font-size: 0.95rem; }
.ml-bog-badge__kapitel { font-size: var(--fs-small); color: var(--bog-daempet); }

.ml-bog-head__titel {
	margin: 0;
	font-size: clamp(2.05rem, 1.45rem + 3vw, 3.5rem);
	line-height: 1.06;
	letter-spacing: -0.028em;
	text-wrap: balance;
}
.ml-bog-head__loefte {
	max-width: 40rem;
	margin: 0.9rem 0 0;
	font-size: clamp(1.1rem, 1rem + 0.45vw, 1.3rem);
	line-height: 1.5;
	color: var(--bog-tekst);
	text-wrap: pretty;
}

/* Kontroldatoen: øverst, synlig uden at scrolle, og igen ved hvert afsnit. */
.ml-bog-tjek {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.1rem 0.4rem;
	margin: 1.1rem 0 0;
	padding-left: 1.55rem;
	font-size: var(--fs-small);
	line-height: 1.45;
	color: var(--bog-daempet);
	background: no-repeat left 0.08em / 1.1rem url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23007a8c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8.2 12.3 2.5 2.5 5.1-5.6'/%3E%3C/svg%3E");
}
.ml-bog-tjek__label { font-weight: 600; color: var(--bog-teal-dyb); }
.ml-bog-tjek time { font-weight: 600; color: var(--bog-tekst); }
.ml-bog-tjek__hvad { color: var(--bog-daempet); }
.ml-bog-head .ml-bog-tjek { font-size: 0.95rem; }
.ml-prose .ml-bog-tjek { margin-top: 0.85em; }

/* Horisonten fra omslaget, i bunden af hovedet. */
.ml-bog-horisont {
	position: absolute;
	inset: auto 0 0;
	height: clamp(2.75rem, 5vw, 4rem);
	pointer-events: none;
}
.ml-bog-horisont svg { display: block; width: 100%; height: 100%; }
/* På navet står solen allerede på omslaget. */
.ml-bog--hub .ml-bog-horisont__sol { display: none; }

/* ---------- Navets præsentation: forfatteren med bogen, og køb ---------
   Telefon: titel, foto, krog, emner, køb — i den rækkefølge. Stor skærm:
   tekst til venstre, foto til højre. */

.ml-bog-hero {
	display: grid;
	gap: 1rem;
	align-items: start;
}
.ml-bog-hero__tekst { display: contents; }
.ml-bog-hero__eyebrow {
	order: 1;
	margin: 0;
	font-size: var(--fs-xs);
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--bog-teal-dyb);
}
.ml-bog-hero .ml-bog-head__titel { order: 2; }
.ml-bog-hero__undertitel {
	order: 3;
	margin: -0.35rem 0 0;
	font-size: clamp(1.15rem, 1rem + 0.8vw, 1.6rem);
	line-height: 1.3;
	color: var(--bog-blaa);
}
.ml-bog-hero__foto { order: 4; margin: 0.5rem 0 0.25rem; }
.ml-bog-hero__krog { order: 5; }
.ml-bog-hero__pitch { order: 6; }
.ml-bog-hero__emner { order: 7; }
.ml-bog-koeb { order: 8; }
.ml-bog-hero__fakta { order: 9; }

.ml-bog-hero__foto img {
	width: 100%;
	height: auto;
	border-radius: 16px;
	box-shadow: 0 2px 6px rgba(1, 39, 76, 0.1), 0 24px 48px -20px rgba(1, 39, 76, 0.4);
}
.ml-bog-hero__krog {
	margin: 0.25rem 0 0;
	max-width: 34rem;
	font-size: clamp(1.25rem, 1.1rem + 0.7vw, 1.6rem);
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -0.01em;
	color: var(--bog-blaa);
	text-wrap: balance;
}
.ml-bog-hero__pitch {
	margin: 0;
	max-width: 34rem;
	font-size: clamp(1.05rem, 1rem + 0.25vw, 1.15rem);
	line-height: 1.6;
	color: var(--bog-tekst);
}
.ml-bog-hero__emner {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin: 0.25rem 0 0;
	padding: 0;
	list-style: none;
}
.ml-bog-hero__emner li {
	padding: 0.3rem 0.7rem;
	border-radius: 999px;
	background: var(--bog-teal-lys);
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--bog-teal-dyb);
}
.ml-bog-hero__fakta { margin: 0; font-size: var(--fs-small); color: var(--bog-daempet); }
.ml-bog-hero__fakta span { white-space: nowrap; }

.ml-bog-koeb {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem 1.25rem;
	margin-top: 0.75rem;
	padding: 1.1rem 1.25rem;
	border: 1px solid var(--bog-linje);
	border-radius: 14px;
	background: var(--bog-hvid);
}
.ml-bog-koeb__pris { display: grid; margin: 0; line-height: 1.2; }
.ml-bog-koeb__pris strong { font-size: 1.6rem; color: var(--bog-blaa); }
.ml-bog-koeb__pris span { font-size: var(--fs-small); color: var(--bog-daempet); }
.ml-bog-koeb__note { flex-basis: 100%; margin: 0; font-size: var(--fs-small); line-height: 1.5; color: var(--bog-daempet); }

@media (min-width: 900px) {
	.ml-bog-hero {
		grid-template-columns: minmax(0, 1fr) minmax(0, 26rem);
		column-gap: clamp(3rem, 6vw, 6rem);
		align-items: center;
	}
	.ml-bog-hero__tekst { display: grid; gap: 1rem; align-content: center; grid-column: 1; grid-row: 1; }
	.ml-bog-hero__foto { grid-column: 2; grid-row: 1; margin: 0; }
}

/* Bogens online-supplement: det trykte løfte som overskrift og tekst. */
.ml-bog-supplement { margin-bottom: 1.25rem; }
.ml-bog-supplement h2 { margin: 0; font-size: clamp(1.45rem, 1.25rem + 0.9vw, 1.9rem); line-height: 1.18; }
.ml-bog-supplement p { max-width: 40rem; margin: 0.5rem 0 0; font-size: 1.0625rem; line-height: 1.6; }
.ml-bog-supplement .ml-bog-tjek { margin-top: 0.75rem; }

/* Siderne som en indholdsfortegnelse i en bog. */
.ml-prose .ml-bog-indhold { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--bog-linje); }
.ml-prose .ml-bog-indhold li { margin: 0; border-bottom: 1px solid var(--bog-linje); }
.ml-prose .ml-bog-indhold a {
	display: grid;
	gap: 0.15rem;
	padding: 0.9rem 0;
	color: var(--bog-tekst);
	text-decoration: none;
}
.ml-bog-indhold__kap { font-size: var(--fs-xs); font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--bog-daempet); }
.ml-bog-indhold__side { display: grid; gap: 0.1rem; }
.ml-bog-indhold__titel { font-size: 1.1rem; font-weight: 700; line-height: 1.3; color: var(--bog-blaa); }
.ml-bog-indhold__til { font-size: 0.97rem; line-height: 1.5; color: var(--bog-daempet); }
.ml-prose .ml-bog-indhold a:hover .ml-bog-indhold__titel,
.ml-prose .ml-bog-indhold a:focus-visible .ml-bog-indhold__titel { color: var(--bog-teal-dyb); text-decoration: underline; text-decoration-color: rgba(0, 122, 140, 0.45); text-underline-offset: 0.2em; }
.ml-prose .ml-bog-indhold__note { margin-top: 0.75rem; font-size: var(--fs-small); color: var(--bog-daempet); }
/* Aktuelle eksempler: type og dato over overskriften, kilder foldet sammen. */
.ml-prose .ml-bog-eksempel { margin-top: 2.25rem; padding-top: 1.5rem; border-top: 1px solid var(--bog-linje); }
.ml-bog .ml-prose .ml-bog-eksempel > * + * { margin-top: 1em; }
.ml-bog .ml-prose .ml-bog-eksempel > :first-child { margin-top: 0; }
.ml-bog .ml-prose .ml-bog-eksempel h3 { margin: 0.5rem 0 0; font-size: clamp(1.2rem, 1.1rem + 0.5vw, 1.4rem); }
.ml-bog .ml-prose .ml-bog-eksempel li + li { margin-top: 0.45em; }
.ml-prose .ml-bog-eksempel__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; font-size: var(--fs-small); color: var(--bog-daempet); }
.ml-bog-eksempel__type {
	padding: 0.1rem 0.55rem;
	border-radius: 4px;
	background: var(--bog-teal-lys);
	font-size: var(--fs-xs);
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--bog-teal-dyb);
}
.ml-bog-eksempel--forældet .ml-bog-eksempel__type { background: var(--bog-papir); color: var(--bog-daempet); }
.ml-prose .ml-bog-eksempel ul,
.ml-prose .ml-bog-eksempel ol { padding-left: 1.25em; }
.ml-prose .ml-bog-eksempel__kilder { margin-top: 1rem; font-size: var(--fs-small); color: var(--bog-daempet); }
.ml-prose .ml-bog-eksempel__kilder summary { display: inline-flex; align-items: center; min-height: 44px; cursor: pointer; font-weight: 600; color: var(--bog-teal-dyb); }
.ml-prose .ml-bog-eksempel__kilder ul { margin-top: 0.25rem; }
.ml-prose .ml-bog-eksempel__kilder li + li { margin-top: 0.35rem; }

@media (min-width: 640px) {
	.ml-prose .ml-bog-indhold a { grid-template-columns: 8.5rem minmax(0, 1fr); column-gap: 1.25rem; align-items: baseline; }
	.ml-bog-indhold__kap { padding-top: 0.15rem; }
}

/* ---------- Brødtekst og oversigt --------------------------------------- */

.ml-bog-body { padding-block: clamp(1.75rem, 4vw, 3rem) clamp(4rem, 8vw, 6rem); }
.ml-bog-body__inner { display: grid; gap: 1.5rem; }
.ml-bog-main { min-width: 0; max-width: 46rem; }

.ml-bog .ml-prose {
	max-width: none;
	font-size: 1.0625rem;
	line-height: 1.68;
	color: var(--bog-tekst);
}
.ml-bog .ml-prose > :first-child { margin-top: 0; }
.ml-bog .ml-prose h2 {
	margin-top: 2.6em;
	margin-bottom: -0.25em;
	font-size: clamp(1.45rem, 1.25rem + 0.9vw, 1.9rem);
	line-height: 1.18;
	text-wrap: balance;
}
.ml-bog .ml-prose > h2:first-child { margin-top: 0; }
.ml-bog .ml-prose h3 { margin-top: 1.9em; font-size: clamp(1.15rem, 1.08rem + 0.35vw, 1.3rem); }
.ml-bog .ml-prose a { color: var(--bog-teal-dyb); text-decoration-color: rgba(0, 122, 140, 0.45); }
.ml-bog .ml-prose a:hover { color: var(--bog-blaa); text-decoration-color: currentColor; }
.ml-bog .ml-prose li::marker { color: var(--bog-teal); }
.ml-bog .ml-prose strong { color: var(--bog-blaa); }

/* Oversigten over siden. Telefon: en række, der kan skubbes vandret.
   Stor skærm: en kolonne, der bliver stående. */
.ml-bog-toc { min-width: 0; }
.ml-bog-toc__titel {
	margin: 0 0 0.5rem;
	font-size: var(--fs-xs) !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase;
	color: var(--bog-daempet) !important;
}
.ml-bog-toc ol {
	display: flex;
	gap: 0.5rem;
	margin: 0 calc(var(--gutter) * -1);
	padding: 0 var(--gutter) 0.5rem;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x proximity;
	scroll-padding-inline: var(--gutter);
	scrollbar-width: none;
}
/* Chippen, der stikker ud til højre, viser, at rækken kan skubbes. */
.ml-bog-toc ol::-webkit-scrollbar { display: none; }
.ml-bog-toc li { flex: none; scroll-snap-align: start; }
.ml-bog-toc a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0.5rem 0.95rem;
	border: 1px solid var(--bog-linje);
	border-radius: 999px;
	background: var(--bog-hvid);
	max-width: 15rem;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.25;
	color: var(--bog-blaa);
	text-decoration: none;
}
.ml-bog-toc a:hover { border-color: var(--bog-teal); color: var(--bog-teal-dyb); }

@media (min-width: 1080px) {
	.ml-bog-body__inner { grid-template-columns: minmax(0, 46rem) 15rem; column-gap: clamp(3rem, 6vw, 6.5rem); align-items: start; }
	.ml-bog-toc { grid-column: 2; grid-row: 1; position: sticky; top: calc(var(--header-h) - var(--topbar-h) + 1.5rem); }
	.ml-bog-main { grid-column: 1; grid-row: 1; }
	.ml-bog-toc ol { display: grid; gap: 0; margin: 0; padding: 0; overflow: visible; border-left: 2px solid var(--bog-linje); }
	.ml-bog-toc a {
		display: block;
		min-height: 0;
		margin-left: -2px;
		padding: 0.45rem 0 0.45rem 1rem;
		border: 0;
		border-left: 2px solid transparent;
		border-radius: 0;
		background: none;
		max-width: none;
		font-weight: 500;
		color: var(--bog-daempet);
	}
	.ml-bog-toc a:hover { border-left-color: var(--bog-teal); color: var(--bog-blaa); }
	.ml-bog-toc a.is-aktiv { border-left-color: var(--bog-teal-dyb); color: var(--bog-blaa); font-weight: 600; }
}

/* ---------- Noter øverst ------------------------------------------------ */

.ml-bog-note {
	margin: 0 0 1.25rem;
	padding: 0.85rem 1.1rem;
	border-radius: var(--bog-radius);
	background: var(--bog-papir);
	font-size: 0.95rem;
	line-height: 1.55;
	color: var(--bog-tekst);
}
.ml-bog-note strong { color: var(--bog-blaa); }
.ml-bog-note--status { border: 1px dashed var(--bog-felt); background: transparent; color: var(--bog-daempet); }
.ml-bog-note--jura { background: var(--bog-teal-lys); }
.ml-bog-note--intern { border: 1px solid #b32d2e; background: #fff; font-size: var(--fs-small); }
.ml-prose .ml-bog-note { margin-bottom: 0; }

/* ---------- Indgange: navet og "efter emne" ----------------------------- */

.ml-bog-grupper { display: grid; gap: 2rem; margin-top: 1.5rem !important; }
.ml-bog .ml-prose .ml-bog-gruppe__titel {
	margin: 0 0 0.75rem;
	font-size: var(--fs-xs);
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--bog-teal-dyb);
}
.ml-prose .ml-bog-indgange,
.ml-prose .ml-bog-refs,
.ml-prose .ml-bog-links,
.ml-prose .ml-bog-legend,
.ml-prose .ml-bog-bindende,
.ml-bog-kildeliste,
.ml-bog-nav__liste,
.ml-bog-log__liste,
.ml-bog-forbeholdsliste,
.ml-bog-indeks ol {
	margin-left: 0;
	padding-left: 0;
	list-style: none;
}
.ml-prose .ml-bog-indgange { display: grid; gap: 0.75rem; margin-top: 0; }
.ml-prose .ml-bog-indgange li { margin: 0; }
.ml-prose .ml-bog-indgange a {
	display: grid;
	gap: 0.2rem;
	height: 100%;
	padding: 1.05rem 2.75rem 1.1rem 1.15rem;
	border: 1px solid var(--bog-linje);
	border-radius: var(--bog-radius);
	background: var(--bog-hvid) no-repeat right 1.1rem center / 1.15rem url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23007a8c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12h15M13.5 6l6 6-6 6'/%3E%3C/svg%3E");
	color: var(--bog-tekst);
	text-decoration: none;
	line-height: 1.45;
	transition: border-color 0.2s var(--ease), box-shadow 0.2s var(--ease), transform 0.2s var(--ease);
}
.ml-prose .ml-bog-indgange a:hover,
.ml-prose .ml-bog-indgange a:focus-visible {
	border-color: var(--bog-teal);
	box-shadow: 0 6px 18px -10px rgba(1, 39, 76, 0.35);
	color: var(--bog-tekst);
}
.ml-bog-indgange__kap { font-size: var(--fs-xs); font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--bog-teal-dyb); }
.ml-bog-indgange__titel { font-size: 1.15rem; font-weight: 700; line-height: 1.25; color: var(--bog-blaa); }
.ml-bog-indgange__til { font-size: 0.95rem; color: var(--bog-daempet); }
@media (min-width: 720px) {
	.ml-prose .ml-bog-indgange { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ---------- Henvisninger: værktøjer og myndigheder ---------------------- */

.ml-prose .ml-bog-refs { margin-top: 1rem; border-top: 1px solid var(--bog-linje); }
.ml-prose .ml-bog-refs > li { margin: 0; padding: 1.15rem 0 1.2rem; border-bottom: 1px solid var(--bog-linje); }
.ml-bog .ml-prose .ml-bog-ref__navn {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0 0.6rem;
	margin: 0;
	font-size: 1.15rem;
	line-height: 1.3;
}
.ml-bog .ml-prose .ml-bog-ref__navn a {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	min-height: 44px;
	margin-block: -0.4rem;
	text-decoration: none;
	color: var(--bog-blaa);
}
.ml-bog .ml-prose .ml-bog-ref__navn a::after {
	content: "";
	width: 0.9em;
	height: 0.9em;
	flex: none;
	background: currentColor;
	-webkit-mask: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 16 16 8M9.5 8H16v6.5'/%3E%3C/svg%3E");
	mask: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 16 16 8M9.5 8H16v6.5'/%3E%3C/svg%3E");
	color: var(--bog-teal);
}
.ml-bog .ml-prose .ml-bog-ref__navn a:hover { color: var(--bog-teal-dyb); text-decoration: underline; text-decoration-color: rgba(0, 122, 140, 0.45); }
.ml-bog-ref__leverandoer { font-size: var(--fs-small); font-weight: 400; letter-spacing: 0; color: var(--bog-daempet); }
.ml-prose .ml-bog-ref > p { margin: 0.4rem 0 0; font-size: 1rem; line-height: 1.6; }
.ml-prose .ml-bog-ref__url,
.ml-prose .ml-bog-ref__tjek { display: inline; margin: 0; font-size: var(--fs-small) !important; color: var(--bog-daempet); }
.ml-prose .ml-bog-ref__url { overflow-wrap: anywhere; }
.ml-prose .ml-bog-ref__url + .ml-bog-ref__tjek::before { content: " · "; }
.ml-prose .ml-bog-ref__url,
.ml-prose .ml-bog-ref__kort + .ml-bog-ref__tjek { margin-top: 0.5rem; display: inline-block; }
.ml-bog-ref__tidligere { font-style: italic; color: var(--bog-daempet); }
.ml-bog-ref--udgaaet .ml-bog-ref__navn { text-decoration: line-through; text-decoration-thickness: 1px; color: var(--bog-daempet) !important; }
.ml-bog-ref__udgaaet { padding: 0.5rem 0.75rem; border-radius: 6px; background: var(--bog-papir); }
.ml-bog-ref__fakta { margin: 0.75rem 0 0; font-size: 0.97rem; line-height: 1.5; }
.ml-bog-ref__fakta dt { margin-top: 0.6rem; font-weight: 600; color: var(--bog-blaa); }
.ml-bog-ref__fakta dd { margin: 0.1rem 0 0; }
@media (min-width: 720px) {
	.ml-bog-ref__fakta { display: grid; grid-template-columns: minmax(11rem, 1fr) 2fr; gap: 0.55rem 1.25rem; }
	.ml-bog-ref__fakta dt,
	.ml-bog-ref__fakta dd { margin-top: 0; }
}

/* Lister med adresser til primærkilder. */
.ml-prose .ml-bog-links { border-top: 1px solid var(--bog-linje); }
.ml-prose .ml-bog-links li { margin: 0; padding: 0.75rem 0; border-bottom: 1px solid var(--bog-linje); line-height: 1.5; }

/* ---------- Bogens egne ord: citater og forbehold ----------------------- */

.ml-bog .ml-prose .ml-bog-forbehold,
.ml-bog .ml-prose .ml-bog-citat,
.ml-bogside .ml-prose .ml-bog-citat {
	position: relative;
	margin: 1.5em 0 0;
	padding: 1.05rem 1.2rem 1rem 1.25rem;
	border: 0;
	border-left: 4px solid var(--bog-sol);
	border-radius: 0 var(--bog-radius) var(--bog-radius) 0;
	background: var(--bog-sol-lys);
	font-family: var(--font-display);
	font-size: 1.08rem;
	font-style: italic;
	line-height: 1.55;
	color: var(--bog-blaa);
}
.ml-bog-forbehold p,
.ml-bog-citat p { margin: 0; }
.ml-bog-citat strong { font-weight: 600; }
.ml-bog-forbehold footer,
.ml-bog-citat footer {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-top: 0.6rem;
	font-family: var(--font-body);
	font-size: var(--fs-xs);
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--bog-orange);
}
.ml-bog-forbehold footer::before,
.ml-bog-citat footer::before {
	content: "";
	width: 1.1rem;
	height: 1.1rem;
	background: currentColor;
	-webkit-mask: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M12 6.6C10.4 5.2 8.3 4.6 5 4.6v12.6c3.3 0 5.4.6 7 2 1.6-1.4 3.7-2 7-2V4.6c-3.3 0-5.4.6-7 2Z'/%3E%3Cpath d='M12 6.6v14'/%3E%3C/svg%3E");
	mask: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M12 6.6C10.4 5.2 8.3 4.6 5 4.6v12.6c3.3 0 5.4.6 7 2 1.6-1.4 3.7-2 7-2V4.6c-3.3 0-5.4.6-7 2Z'/%3E%3Cpath d='M12 6.6v14'/%3E%3C/svg%3E");
}

/* ---------- Tekst til kopiering ----------------------------------------- */

.ml-bog-kopi {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	margin: 1.5em 0 0;
	border: 1px solid var(--bog-linje);
	border-radius: var(--bog-radius);
	background: var(--bog-hvid);
	overflow: hidden;
}
.ml-bog-kopi__titel {
	grid-column: 1;
	grid-row: 1;
	align-self: center;
	margin: 0 !important;
	padding: 0.65rem 1rem;
	font-size: var(--fs-small) !important;
	font-weight: 700;
	color: var(--bog-blaa) !important;
}
.ml-bog-kopi__bar {
	grid-column: 2;
	grid-row: 1;
	display: flex;
	align-items: center;
	padding: 0.35rem 0.4rem;
}
.ml-bog-kopi:not(:has(.ml-bog-kopi__titel)) .ml-bog-kopi__bar { grid-column: 1 / -1; justify-content: flex-end; }
.ml-bog-kopi__titel,
.ml-bog-kopi__bar { background: var(--bog-teal-lys); }
.ml-bog-kopi__tekst {
	grid-column: 1 / -1;
	grid-row: 2;
	margin: 0;
	padding: 1rem 1.1rem 1.1rem;
	font-family: var(--font-body);
	font-size: 1rem;
	line-height: 1.6;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
	color: var(--bog-tekst);
	user-select: all;
	-webkit-user-select: all;
	background: none;
}
.ml-bog-kopi__tekst:focus-visible { outline: 2px solid var(--focus-ring); outline-offset: -4px; }
.ml-bog-kopi__knap {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	min-height: 40px;
	padding: 0.4rem 1rem;
	border: 0;
	border-radius: 999px;
	background: var(--bog-teal-dyb);
	font: inherit;
	font-size: var(--fs-small);
	font-weight: 700;
	color: #fff;
	cursor: pointer;
}
.ml-bog-kopi__knap:hover { background: var(--bog-blaa); }
.ml-bog-kopi__knap[data-kopieret] { background: var(--bog-blaa); }
.ml-bog-kopi__status {
	grid-column: 1 / -1;
	grid-row: 3;
	margin: 0;
	padding: 0 1.1rem;
	font-size: var(--fs-small);
	color: var(--bog-teal-dyb);
}
.ml-bog-kopi__status:not(:empty) { padding-bottom: 0.85rem; }
ol.ml-bog-trin > li + li { margin-top: 1.5em; }
ol.ml-bog-trin > li::marker { font-weight: 700; }

/* ---------- Status: kontrolleret, omstridt, åbent ------------------------
   Formen adskiller dem også uden farve: fuld, stiplet og prikket kant.   */

.ml-bog-status {
	display: inline-block;
	margin-right: 0.35rem;
	padding: 0.05rem 0.5rem;
	border: 1.5px solid;
	border-radius: 4px;
	font-size: var(--fs-xs);
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	line-height: 1.6;
	white-space: nowrap;
	vertical-align: 0.1em;
}
.ml-bog-status--kontrolleret { border-color: #1d6b48; background: #e9f4ee; color: #175a3c; }
.ml-bog-status--omstridt { border-style: dashed; border-color: #8a5200; background: #fff4df; color: #6a3f00; }
.ml-bog-status--aaben { border-style: dotted; border-color: #4a5560; background: #fff; color: #36414c; }
.ml-prose .ml-bog-legend li,
.ml-prose .ml-bog-bindende li { margin-top: 0.7rem; line-height: 1.6; }

/* ---------- Kildesiden --------------------------------------------------- */

.ml-bog-soeg { margin-top: 2rem; padding: 1.1rem; border-radius: var(--bog-radius); background: var(--bog-papir); }
.ml-bog-soeg label { display: block; margin-bottom: 0.4rem; font-weight: 700; color: var(--bog-blaa); }
.ml-bog-soeg__row { display: flex; gap: 0.5rem; }
.ml-bog-soeg input[type="search"],
.ml-bog-fejl textarea,
.ml-bog-fejl input[type="email"],
.ml-bestil input[type="text"],
.ml-bestil input[type="email"],
.ml-bestil input[type="tel"],
.ml-bestil input[type="number"] {
	width: 100%;
	min-height: 48px;
	padding: 0.7rem 0.85rem;
	border: 1px solid var(--bog-felt);
	border-radius: 8px;
	background: var(--bog-hvid);
	font: inherit;
	font-size: 1rem;
	color: var(--bog-tekst);
}
.ml-bog-soeg input:focus,
.ml-bog-fejl textarea:focus,
.ml-bog-fejl input:focus,
.ml-bestil input:focus { outline: 2px solid var(--bog-teal); outline-offset: 1px; border-color: var(--bog-teal-dyb); }
.ml-bog-soeg .ml-btn { flex: none; min-height: 48px; border-radius: 8px; }
.ml-bog-soeg .ml-btn--gold { --btn-bg: var(--bog-teal-dyb); --btn-bd: var(--bog-teal-dyb); letter-spacing: 0.02em; text-transform: none; font-size: 0.95rem; }
.ml-bog-soeg__status { margin: 0.6rem 0 0; font-size: 0.97rem; }

.ml-bog-indeks { margin-top: 2.25rem; }
.ml-bog-indeks ol { columns: 1; font-size: 0.97rem; line-height: 1.4; }
.ml-bog-indeks li { break-inside: avoid; margin-top: 0 !important; }
.ml-bog-indeks a { display: inline-block; min-height: 44px; padding-block: 0.7rem; }
.ml-bog-indeks li.is-empty { padding-block: 0.45rem; color: var(--bog-daempet); }
.ml-bog-indeks__antal {
	display: inline-block;
	min-width: 1.6rem;
	margin-left: 0.25rem;
	padding: 0 0.35rem;
	border-radius: 999px;
	background: var(--bog-teal-lys);
	font-size: var(--fs-xs);
	font-weight: 700;
	text-align: center;
	color: var(--bog-teal-dyb);
}
.ml-bog-indeks__note { margin-top: 0.75rem; font-size: var(--fs-small); color: var(--bog-daempet); }

.ml-bog-kapitel { margin-top: 2.75rem; }
.ml-bog-kildeliste,
.ml-prose .ml-bog-kildeliste { margin-top: 1rem; margin-left: 0; padding-left: 0; list-style: none; border-top: 1px solid var(--bog-linje); }
.ml-bog-kildeliste > li {
	margin: 0 !important;
	padding: 1rem 0 1rem 1rem;
	border-bottom: 1px solid var(--bog-linje);
	border-left: 3px solid transparent;
	font-size: 0.98rem;
	line-height: 1.55;
}
.ml-bog-kilde--kontrolleret { border-left-color: #1d6b48 !important; }
.ml-bog-kilde--omstridt { border-left-color: #8a5200 !important; border-left-style: dashed !important; }
.ml-bog-kilde--aaben { border-left-color: #4a5560 !important; border-left-style: dotted !important; }
.ml-bog-kilde > p { margin: 0.35rem 0 0; }
.ml-bog-kilde > p:first-child { margin-top: 0; }
.ml-bog-kilde__titel a { color: var(--bog-blaa) !important; text-decoration-color: rgba(0, 122, 140, 0.45) !important; }
.ml-bog-kilde__titel a:hover { color: var(--bog-teal-dyb) !important; }
.ml-bog-kilde__url { overflow-wrap: anywhere; font-size: var(--fs-small); color: var(--bog-daempet); }
.ml-bog-kilde__url a { display: inline-block; min-height: 44px; padding-block: 0.7rem; color: var(--bog-daempet) !important; }
.ml-bog-kilde__brug span,
.ml-bog-kilde__nr { font-weight: 600; }
.ml-bog-kilde__meta { margin-top: 0.6rem !important; font-size: var(--fs-small); color: var(--bog-daempet); }
.ml-bog-kilde__type::after { content: " ·"; }
.ml-bog-kilde__note { padding: 0.5rem 0.75rem; border-radius: 6px; background: var(--bog-papir); }
.ml-bog-anker { margin-left: 0.35rem; font-size: 0.7em; font-weight: 400; text-decoration: none; color: var(--bog-daempet) !important; }
.ml-bog-anker:hover,
.ml-bog-anker:focus-visible { color: var(--bog-teal-dyb) !important; }

/* ---------- Tabeller: må rulle vandret inde i sig selv, aldrig siden ----- */

.ml-bog-tabel { margin-top: 1.35em; overflow-x: auto; border: 1px solid var(--bog-linje); border-radius: var(--bog-radius); background: var(--bog-hvid); }
.ml-bog-tabel table { width: 100%; border-collapse: collapse; font-size: 0.97rem; line-height: 1.5; }
.ml-bog-tabel th,
.ml-bog-tabel td { padding: 0.75rem 0.85rem; border: 0; border-bottom: 1px solid var(--bog-linje); text-align: left; vertical-align: top; background: none; }
.ml-bog-tabel tr:last-child > * { border-bottom: 0; }
.ml-bog-tabel thead th,
.ml-bog-tabel thead td { background: var(--bog-blaa); color: #fff; font-weight: 600; }
.ml-bog-tabel tbody th { background: var(--bog-papir); font-weight: 700; color: var(--bog-blaa); }
@media (max-width: 479px) {
	.ml-bog-tabel table { font-size: 0.9rem; }
	.ml-bog-tabel th,
	.ml-bog-tabel td { padding: 0.6rem 0.5rem; }
}
@media (min-width: 480px) {
	.ml-bog-tabel tbody th { white-space: nowrap; }
}

ol.ml-bog-huskeseddel > li + li { margin-top: 0.85em; }

/* ---------- Faste sektioner i bunden ------------------------------------ */

.ml-bog-sektion {
	margin-top: clamp(3rem, 7vw, 4.5rem);
	padding-top: clamp(1.75rem, 4vw, 2.5rem);
	border-top: 1px solid var(--bog-linje);
}
.ml-bog-sektion > h2 { margin: 0; font-size: clamp(1.35rem, 1.2rem + 0.8vw, 1.75rem); }
.ml-bog-sektion__intro { margin: 0.5rem 0 0; color: var(--bog-daempet); line-height: 1.6; }

.ml-bog-forbeholdsliste {
	display: grid;
	gap: 0.9rem;
	margin-top: 1.25rem;
	padding: 0.15rem 0 0.15rem 1.25rem;
	border-left: 3px solid var(--bog-sol);
}
.ml-bog-forbeholdsliste li {
	font-family: var(--font-display);
	font-size: 1.08rem;
	font-style: italic;
	line-height: 1.55;
	color: var(--bog-blaa);
}

/* "Holder noget ikke?" */
.ml-bog-sigtil {
	padding: clamp(1.4rem, 4vw, 2rem);
	border: 0;
	border-radius: 14px;
	background: var(--bog-teal-lys);
}
.ml-bog-sigtil .ml-bog-sektion__intro { color: var(--bog-tekst); }
.ml-bog-fejl { position: relative; margin-top: 0.75rem; }
.ml-bog-fejl p { margin: 1rem 0 0; }
.ml-bog-fejl label { display: block; margin-bottom: 0.35rem; font-weight: 700; color: var(--bog-blaa); }
.ml-bog-fejl textarea { min-height: 7.5rem; resize: vertical; }
.ml-bog-fejl .ml-btn--gold {
	--btn-bg: var(--bog-teal-dyb);
	--btn-bd: var(--bog-teal-dyb);
	border-radius: 999px;
	font-size: 0.95rem;
	letter-spacing: 0.01em;
	text-transform: none;
}
.ml-bog-fejl .ml-btn--gold:hover { --btn-bg: var(--bog-blaa); --btn-bd: var(--bog-blaa); }
.ml-bog-fejl__alt { font-size: var(--fs-small); color: var(--bog-daempet); }
.ml-bog-fejl__alt a,
.ml-bog-kvit a { color: var(--bog-teal-dyb); }
.ml-bog-kvit { margin: 1rem 0 0; padding: 0.85rem 1rem; border-radius: 8px; background: var(--bog-hvid); line-height: 1.55; border-left: 4px solid; }
.ml-bog-kvit--ok { border-color: #1d6b48; }
.ml-bog-kvit--fejl { border-color: #b32d2e; }

/* Bogens andre sider. */
.ml-bog-nav__liste { margin-top: 1rem; display: grid; border-top: 1px solid var(--bog-linje); }
.ml-bog-nav__liste li { margin: 0; border-bottom: 1px solid var(--bog-linje); }
.ml-bog-nav__liste a,
.ml-bog-nav__liste [aria-current] {
	display: grid;
	gap: 0.1rem;
	min-height: 48px;
	padding: 0.75rem 0;
	color: var(--bog-blaa);
	text-decoration: none;
	line-height: 1.35;
}
.ml-bog-nav__liste a:hover strong { color: var(--bog-teal-dyb); text-decoration: underline; text-decoration-color: rgba(0, 122, 140, 0.45); text-underline-offset: 0.2em; }
.ml-bog-nav__kap { font-size: var(--fs-xs); font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--bog-daempet); }
.ml-bog-nav__liste .is-current [aria-current] strong { color: var(--bog-teal-dyb); }
.ml-bog-nav__liste .is-current .ml-bog-nav__kap::after { content: " · du er her"; color: var(--bog-teal-dyb); }
@media (min-width: 720px) {
	.ml-bog-nav__liste { grid-template-columns: 1fr 1fr; column-gap: 2rem; }
}

/* Ændringsloggen: til den, der vil se efter. */
.ml-bog-log { margin-top: 2.5rem; border-top: 1px solid var(--bog-linje); }
.ml-bog-log summary {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem 0.75rem;
	min-height: 52px;
	padding: 0.85rem 0;
	cursor: pointer;
	font-weight: 700;
	color: var(--bog-blaa);
	list-style: none;
}
.ml-bog-log summary::-webkit-details-marker { display: none; }
.ml-bog-log summary::before {
	content: "";
	width: 0.55rem;
	height: 0.55rem;
	border-right: 2px solid var(--bog-teal);
	border-bottom: 2px solid var(--bog-teal);
	transform: rotate(-45deg);
	transition: transform 0.2s var(--ease);
}
.ml-bog-log[open] summary::before { transform: rotate(45deg); }
.ml-bog-log__seneste { font-size: var(--fs-small); font-weight: 400; color: var(--bog-daempet); }
.ml-bog-log__forklaring { margin: 0 0 0.75rem; font-size: var(--fs-small); color: var(--bog-daempet); }
.ml-bog-log__liste li { padding: 0.6rem 0; border-top: 1px solid var(--bog-linje); font-size: 0.97rem; line-height: 1.55; }
.ml-bog-log__liste time { display: block; font-size: var(--fs-small); font-weight: 700; color: var(--bog-blaa); }

/* En rettelse (vi tog fejl) ser anderledes ud end en opdatering (verden
   flyttede sig) — også uden farve: fuld mod stiplet kant. */
.ml-bog-log__type {
	display: inline-block;
	margin-right: 0.35rem;
	padding: 0 0.45rem;
	border: 1.5px solid;
	border-radius: 4px;
	font-size: var(--fs-xs);
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	line-height: 1.6;
}
.ml-bog-log__type--rettelse { border-color: #8f2a25; background: #fdecea; color: #7a201c; }
.ml-bog-log__type--opdatering { border-style: dashed; border-color: #1d4f7a; background: #e9f1f8; color: #17405f; }

/* Kolofon. */
.ml-bog-kolofon {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	margin-top: 2.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--bog-linje);
	font-size: var(--fs-small);
	line-height: 1.6;
	color: var(--bog-daempet);
}
.ml-bog-kolofon img { width: 56px; height: auto; flex: none; border-radius: 2px 5px 5px 2px; box-shadow: 0 2px 8px rgba(1, 39, 76, 0.18); }
.ml-bog-kolofon p { margin: 0; }
.ml-bog-kolofon strong { color: var(--bog-blaa); }
.ml-bog-kolofon__isbn { white-space: nowrap; }
.ml-bog-kolofon__motto { margin-top: 0.3rem !important; font-weight: 700; color: var(--bog-teal-dyb); }
.ml-bog-kolofon__koeb { margin-top: 0.5rem !important; }
.ml-bog-kolofon__koeb a { font-weight: 600; color: var(--bog-teal-dyb); }

/* ---------- Navet: emner, fakta og de fire færdigheder ------------------ */

.ml-prose .ml-bog-emner {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.5rem;
	margin-left: 0;
	padding-left: 0;
	list-style: none;
}
.ml-prose .ml-bog-emner li {
	margin: 0;
	padding: 0.55rem 0.8rem;
	border-radius: 8px;
	background: var(--bog-teal-lys);
	font-size: 0.95rem;
	font-weight: 600;
	color: var(--bog-blaa);
}
@media (min-width: 720px) { .ml-prose .ml-bog-emner { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.ml-bog-fakta {
	display: grid;
	grid-template-columns: max-content 1fr;
	gap: 0.4rem 1.25rem;
	padding: 1rem 1.15rem;
	border-radius: var(--bog-radius);
	background: var(--bog-papir);
	font-size: 0.97rem;
	line-height: 1.5;
}
.ml-bog-fakta dt { font-weight: 600; color: var(--bog-daempet); }
.ml-bog-fakta dd { margin: 0; color: var(--bog-blaa); }
.ml-prose .ml-bog-faerdigheder { counter-reset: faerdighed; margin-left: 0; padding-left: 0; list-style: none; display: grid; gap: 1rem; }
.ml-prose .ml-bog-faerdigheder li { counter-increment: faerdighed; position: relative; margin: 0; padding-left: 3rem; }
.ml-prose .ml-bog-faerdigheder li::before {
	content: counter(faerdighed);
	position: absolute;
	left: 0;
	top: 0.05rem;
	display: grid;
	place-items: center;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	background: var(--bog-blaa);
	font-size: 0.95rem;
	font-weight: 700;
	color: #fff;
}
.ml-prose .ml-bog-i-aften {
	padding: clamp(1.25rem, 4vw, 1.75rem);
	border-radius: 14px;
	background: var(--bog-blaa);
	color: #e8eef5;
}
.ml-prose .ml-bog-i-aften p { margin: 0; }
.ml-prose .ml-bog-i-aften p + p { margin-top: 0.75em; }
.ml-prose .ml-bog-i-aften strong { color: #fff; }

/* ---------- Bestillingssiden -------------------------------------------- */

.ml-bogside { padding-block: calc(var(--header-h) + clamp(1.5rem, 4vw, 3rem)) clamp(4rem, 8vw, 6rem); }
.ml-bogside__inner { display: grid; gap: 1.5rem; }
.ml-bogside__omslag { margin: 0; justify-self: center; width: min(44vw, 11rem); }
.ml-bogside__omslag img {
	width: 100%;
	height: auto;
	border-radius: 3px 8px 8px 3px;
	box-shadow: 0 2px 4px rgba(1, 39, 76, 0.12), 0 22px 44px -14px rgba(1, 39, 76, 0.4);
}
.ml-bogside__fakta { margin: 1rem 0 0; display: grid; gap: 0.3rem; font-size: var(--fs-small); color: var(--bog-daempet); text-align: center; }
.ml-bogside__fakta dt { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.ml-bogside__fakta dd { margin: 0; }
.ml-bogside__titel { margin: 0; font-size: clamp(2rem, 1.4rem + 2.8vw, 3.1rem); line-height: 1.06; letter-spacing: -0.028em; }
.ml-bogside__undertitel { margin: 0.4rem 0 0; font-size: clamp(1.1rem, 1rem + 0.6vw, 1.4rem); color: var(--bog-blaa); }
.ml-bogside .ml-prose { max-width: 40rem; margin-top: 1.25rem; font-size: 1.0625rem; color: var(--bog-tekst); }
.ml-bogside .ml-prose > :first-child { margin-top: 0; }
.ml-bogside .ml-prose h2 { margin-top: 2.4em; font-size: clamp(1.35rem, 1.2rem + 0.8vw, 1.7rem); }
.ml-bogside .ml-prose a:not(.ml-btn) { color: var(--bog-teal-dyb); text-decoration-color: rgba(0, 122, 140, 0.45); }
.ml-bogside .ml-prose li::marker { color: var(--bog-teal); }
@media (min-width: 900px) {
	.ml-bogside__inner { grid-template-columns: 17rem minmax(0, 40rem); column-gap: clamp(3rem, 7vw, 7rem); justify-content: center; align-items: start; }
	.ml-bogside__aside { position: sticky; top: calc(var(--header-h) - var(--topbar-h) + 1.5rem); }
	.ml-bogside__omslag { width: 100%; }
	.ml-bogside__fakta { text-align: left; }
}

/* Formularen. */
.ml-bestil { margin-top: 1.75rem !important; }
.ml-bestil__trin {
	margin: 0 0 1rem;
	padding: clamp(1.15rem, 3.5vw, 1.6rem);
	border: 1px solid var(--bog-linje);
	border-radius: 14px;
	background: var(--bog-hvid);
}
.ml-bestil__trin legend {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	float: left;
	width: 100%;
	margin: 0 0 1rem;
	padding: 0;
	font-size: 1.15rem;
	font-weight: 700;
	color: var(--bog-blaa);
}
.ml-bestil__trin legend + * { clear: both; }
.ml-bestil__nr {
	display: grid;
	place-items: center;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 50%;
	background: var(--bog-teal-lys);
	font-size: 0.9rem;
	color: var(--bog-teal-dyb);
}
.ml-bestil__felt { margin: 0 0 1rem !important; }
.ml-bestil__felt label,
.ml-bestil__antal label { display: block; margin-bottom: 0.35rem; font-weight: 600; color: var(--bog-blaa); }
.ml-bestil__valgfri { font-weight: 400; color: var(--bog-daempet); }
.ml-bestil__hint { display: block; margin-top: 0.3rem; font-size: var(--fs-small); line-height: 1.45; color: var(--bog-daempet); }
.ml-bestil__raekke { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: 0.75rem; }
.ml-bestil [aria-invalid="true"] { border-color: #b32d2e; box-shadow: 0 0 0 1px #b32d2e; }
.ml-bestil__firma { margin-top: 0.25rem; }
.ml-bestil__firma summary { display: inline-flex; align-items: center; min-height: 44px; cursor: pointer; font-size: 0.95rem; font-weight: 600; color: var(--bog-teal-dyb); }
.ml-bestil__firma[open] summary { margin-bottom: 0.5rem; }

.ml-bestil__antal { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.75rem 1rem; }
.ml-bestil__antal label { margin: 0; }
.ml-stepper { display: inline-flex; align-items: stretch; border: 1px solid var(--bog-felt); border-radius: 999px; background: var(--bog-hvid); overflow: hidden; }
.ml-bestil .ml-stepper input[type="number"] {
	width: 3.5rem;
	min-height: 46px;
	border: 0;
	border-radius: 0;
	text-align: center;
	font-size: 1.1rem;
	font-weight: 700;
	-moz-appearance: textfield;
	appearance: textfield;
}
.ml-stepper input::-webkit-outer-spin-button,
.ml-stepper input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.ml-stepper__btn {
	width: 46px;
	border: 0;
	background: var(--bog-teal-lys);
	font: inherit;
	font-size: 1.35rem;
	font-weight: 600;
	line-height: 1;
	color: var(--bog-teal-dyb);
	cursor: pointer;
}
.ml-stepper__btn:hover:not(:disabled) { background: #cfe6e3; }
.ml-stepper__btn:disabled { color: #9fb6b8; cursor: default; }

.ml-bestil__sum { margin: 1.15rem 0 0; padding-top: 0.9rem; border-top: 1px dashed var(--bog-linje); font-size: 0.98rem; }
.ml-bestil__sum > div { display: flex; justify-content: space-between; gap: 1rem; padding: 0.2rem 0; }
.ml-bestil__sum dt { color: var(--bog-daempet); }
.ml-bestil__sum dd { margin: 0; font-variant-numeric: tabular-nums; color: var(--bog-tekst); }
.ml-bestil__total { margin-top: 0.35rem; padding-top: 0.55rem !important; border-top: 1px solid var(--bog-linje); }
.ml-bestil__total dt,
.ml-bestil__total dd { font-size: 1.1rem; font-weight: 700; color: var(--bog-blaa) !important; }

.ml-bestil__levering { margin: 0 0 1rem !important; padding: 0.8rem 1rem; border-radius: 8px; background: var(--bog-sol-lys); font-size: 0.97rem; line-height: 1.5; }
.ml-bestil__accept { display: flex; gap: 0.7rem; align-items: flex-start; margin: 0 0 1.25rem !important; font-size: 0.97rem; line-height: 1.5; }
.ml-bestil__accept input { flex: none; width: 1.3rem; height: 1.3rem; margin-top: 0.12rem; accent-color: var(--bog-teal-dyb); }
.ml-bestil__send { margin: 0 !important; }
.ml-bestil__send .ml-btn { width: 100%; min-height: 3.5rem; font-size: 1.05rem; }
.ml-bestil__knapsum { padding-left: 0.6rem; border-left: 1px solid rgba(255, 255, 255, 0.35); font-variant-numeric: tabular-nums; }
.ml-bestil__send .ml-btn[aria-busy="true"] { opacity: 0.75; cursor: progress; }
.ml-bestil__sikker {
	margin: 0.85rem 0 0 !important;
	padding-left: 1.4rem;
	font-size: var(--fs-small);
	line-height: 1.5;
	color: var(--bog-daempet);
	background: no-repeat left 0.1em / 1rem url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23566472' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='10.5' width='14' height='10' rx='2'/%3E%3Cpath d='M8 10.5V8a4 4 0 0 1 8 0v2.5'/%3E%3C/svg%3E");
}
.ml-bestil__besked { margin: 0 0 1rem !important; padding: 0.85rem 1rem; border-radius: 8px; background: var(--bog-teal-lys); font-size: 0.97rem; }
.ml-bestil__besked--fejl { background: #fdecea; color: #7a201c; }
.ml-bestil__besked[hidden] { display: none; }
.ml-bestil__sandbox { margin: 0 0 1rem !important; padding: 0.85rem 1rem; border: 2px dashed #b32d2e; border-radius: 8px; background: #fff; font-size: 0.95rem; line-height: 1.5; color: #7a201c; }
.ml-bestil--lukket { padding: 1.25rem; border-radius: 14px; background: var(--bog-papir); }
.ml-bestil--lukket p { margin: 0; }

/* Tak-siden. */
.ml-bogtak { max-width: 40rem; }
.ml-bogtak__kort { margin-top: 1.5rem; padding: clamp(1.25rem, 4vw, 1.75rem); border: 1px solid var(--bog-linje); border-radius: 14px; background: var(--bog-hvid); }
.ml-bogtak__kort > * + * { margin-top: 1rem; }
.ml-bogtak__fakta { display: grid; gap: 0.6rem; margin: 0; }
.ml-bogtak__fakta > div { display: grid; grid-template-columns: 9rem minmax(0, 1fr); gap: 1rem; }
.ml-bogtak__fakta dt { color: var(--bog-daempet); }
.ml-bogtak__fakta dd { margin: 0; color: var(--bog-blaa); font-weight: 600; }
.ml-bogtak__handlinger { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.ml-bogtak__lille { font-size: var(--fs-small); color: var(--bog-daempet); }
.ml-bogtak .ml-resend { font-size: var(--fs-small); color: var(--bog-daempet); }

/* ---------- Print: reglerne skal kunne tages med ------------------------- */

@media print {
	.ml-bog-sigtil,
	.ml-bog-nav,
	.ml-bog-toc,
	.ml-bog-soeg,
	.ml-bog-indeks,
	.ml-bog-kopi__bar,
	.ml-bog-kopi__status,
	.ml-bog-anker,
	.ml-bog-note--status,
	.ml-bog-horisont,
	.ml-bog-koeb,
	.ml-bog-badge img,
	.ml-bog-log,
	.ml-topbar,
	.ml-skip { display: none !important; }

	.ml-bog,
	.ml-bog-head,
	.ml-bog-refs > li,
	.ml-bog-kildeliste > li,
	.ml-bog-kopi,
	.ml-bog-forbehold,
	.ml-bog-citat,
	.ml-bog-forbeholdsliste li,
	.ml-bog-note { background: #fff !important; color: #000 !important; }

	.ml-bog-head { padding-block: 0 0.5rem; border-bottom: 1px solid #000; }
	.ml-bog-head__inner { padding-bottom: 0.5rem; }
	.ml-bog-head *,
	.ml-bog-badge { color: #000 !important; border-color: #000 !important; }
	.ml-bog-body { padding-block: 0.5rem 0; }
	.ml-bog-body__inner { display: block; }
	.ml-bog-main,
	.ml-bog .ml-prose,
	.ml-bog-sektion { max-width: none; font-size: 11pt; line-height: 1.45; }
	.ml-bog h2,
	.ml-bog h3 { break-after: avoid; }
	.ml-bog-refs > li,
	.ml-bog-kildeliste > li,
	.ml-bog-kopi,
	.ml-bog-tabel tr,
	.ml-bog-forbehold { break-inside: avoid; }

	/* Adresserne skrives ud. En QR-læser har kun papiret. */
	.ml-bog .ml-prose a[href^="http"]::after {
		content: " (" attr(href) ")";
		font-size: 9pt;
		font-weight: 400;
		overflow-wrap: anywhere;
	}
	.ml-bog .ml-bog-ref__navn a::after,
	.ml-bog .ml-bog-kilde__url a::after { content: none !important; }
	.ml-bog-head::after {
		content: "AI i hverdagen (ISBN 978-87-430-7353-6). Udskrevet fra liechtenstein.dk/bog-ai-i-hverdagen. Tjek datoen: reglerne kan være ændret siden.";
		display: block;
		margin-top: 0.5rem;
		font-size: 9pt;
	}
}
