/*
 * Fortryd aftale – nyt design (indlæses oven på form.css, når "Design" = Nyt design).
 * Arver temaets skrift og farver. Accentfarve kan styres med --fawc-accent.
 */
.fawc--modern {
	--fawc-accent: var(--global-palette1, var(--wp--preset--color--primary, #2f6f4e));
	--fawc-line: rgba(0, 0, 0, .12);
	--fawc-soft: rgba(0, 0, 0, .035);
	--fawc-radius: 8px;
	--fawc-gap: 1.75rem;
}
.fawc--modern .fawc-m { max-width: var(--fawc-max-width, none); }
.fawc--modern .fawc-title { margin: 0 0 .5rem; }
.fawc--modern .fawc-intro { margin: 0 0 1.5rem; }
.fawc--modern .fawc-m-help { display: block; font-size: 1em; opacity: .72; margin: 0 0 .75rem; }
.fawc--modern .fawc-m-sep { opacity: .45; margin: 0 .35em; }
.fawc--modern .fawc-m-link { font-size: 1em; }

/* Trin */
.fawc--modern .fawc-m-steps { display: flex; gap: .5rem; list-style: none; margin: 0 0 1.75rem !important; padding: 0 !important; counter-reset: none; font-size: 1em; }
.fawc--modern .fawc-m-steps__step { display: flex; align-items: center; gap: .5rem; flex: 1 1 0; min-width: 0; margin: 0; opacity: .55; }
.fawc--modern .fawc-m-steps__step:not(:last-child)::after { content: ""; flex: 1 1 auto; height: 1px; background: var(--fawc-line); margin-left: .25rem; }
.fawc--modern .fawc-m-steps__num { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 1.75rem; height: 1.75rem; border-radius: 50%; border: 1px solid currentColor; font-weight: 700; line-height: 1; font-size: 1em; }
.fawc--modern .fawc-m-steps__label { white-space: nowrap; font-weight: 600; }
.fawc--modern .fawc-m-steps__step.is-current,
.fawc--modern .fawc-m-steps__step.is-done { opacity: 1; }
.fawc--modern .fawc-m-steps__step.is-current .fawc-m-steps__num,
.fawc--modern .fawc-m-steps__step.is-done .fawc-m-steps__num { background: var(--fawc-accent); border-color: var(--fawc-accent); color: #fff; }
.fawc--modern .fawc-m-steps__step.is-done .fawc-m-steps__label { font-weight: 400; }

/* Kort */
.fawc--modern .fawc-m-card { border: 1px solid var(--fawc-line); border-radius: var(--fawc-radius); padding: 1rem 1.25rem; margin: 0 0 var(--fawc-gap); }
.fawc--modern .fawc-m-card--accent { border: 2px solid var(--fawc-accent); background: var(--fawc-soft); background: color-mix(in srgb, var(--fawc-accent) 6%, transparent); }

/* Ordrekort */
.fawc--modern .fawc-m-order { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; background: var(--fawc-soft); }
.fawc--modern .fawc-m-order p { margin: 0; }
.fawc--modern .fawc-m-order__title { font-size: 1.05em; }
.fawc--modern .fawc-m-order__meta { font-size: 1em; opacity: .8; margin-top: .2rem !important; }
.fawc--modern .fawc-m-order__status { font-size: 1em; margin-top: .45rem !important; opacity: .8; }
.fawc--modern .fawc-m-order__status::before { content: ""; display: inline-block; width: .5em; height: .5em; border-radius: 50%; background: currentColor; opacity: .5; margin-right: .45em; vertical-align: middle; }
.fawc--modern .fawc-m-order__edit { flex: 0 0 auto; }

/* Afsnit */
.fawc--modern .fawc-m-section { margin: 0 0 var(--fawc-gap); }
.fawc--modern .fawc-m-section__title { font-size: 1.15em; margin: 0 0 .5rem; }

/* Varer */
.fawc--modern .fawc-m-items { list-style: none; margin: 0 !important; padding: 0 !important; }
.fawc--modern .fawc-m-item { display: flex; align-items: center; gap: .9rem; margin: 0 0 .5rem; padding: .7rem .9rem; border: 1px solid var(--fawc-line); border-radius: var(--fawc-radius); transition: border-color .15s, background-color .15s; }
.fawc--modern .fawc-m-item:last-child { margin-bottom: 0; }
.fawc--modern .fawc-m-item__media { flex: 0 0 56px; width: 56px; margin: 0; cursor: inherit; }
.fawc--modern .fawc-m-item__media img { display: block; width: 56px !important; height: 56px !important; max-width: none; object-fit: cover; border-radius: 6px; margin: 0; }
.fawc--modern .fawc-m-item__body { display: flex; flex-direction: column; gap: .2rem; min-width: 0; flex: 1 1 auto; }
.fawc--modern .fawc-form .fawc-m-item__name { font-weight: 600; margin: 0; }
.fawc--modern .fawc-m-item__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .6rem; font-size: 1em; opacity: .8; }
.fawc--modern .fawc-form .fawc-m-item__meta label { font-weight: 400; }
.fawc--modern .fawc-m-item__meta select { width: auto; min-width: 4rem; margin: 0; padding-block: .2rem; }
.fawc--modern .fawc-m-item__note { font-style: italic; }
.fawc--modern .fawc-m-check { flex: 0 0 auto; width: 1.25rem; height: 1.25rem; margin: 0; accent-color: var(--fawc-accent); cursor: pointer; }
.fawc--modern .fawc-m-items--select .fawc-m-item__name,
.fawc--modern .fawc-m-items--select .fawc-m-item__media { cursor: pointer; }
.fawc--modern .fawc-m-items--select .fawc-m-item:has(.fawc-m-check:checked) { border-color: var(--fawc-accent); background: var(--fawc-soft); }
.fawc--modern .fawc-form .fawc-m-selectall { display: flex; align-items: center; gap: .9rem; margin: 0 0 .5rem; padding: .7rem .9rem; font-weight: 600; cursor: pointer; border: 1px dashed var(--fawc-line); border-radius: var(--fawc-radius); }
.fawc--modern .fawc-m-selectall[hidden] { display: none !important; }
.fawc--modern .fawc-m-selectall:has(input:checked) { border-style: solid; border-color: var(--fawc-accent); }
.fawc--modern .fawc-m-items--done .fawc-m-item { opacity: .65; padding: .5rem .75rem; }
.fawc--modern .fawc-m-items--done .fawc-m-item__media,
.fawc--modern .fawc-m-items--done .fawc-m-item__media img { width: 40px !important; height: 40px !important; flex-basis: 40px; }
.fawc--modern .fawc-m-items--compact .fawc-m-item { border: 0; border-top: 1px solid var(--fawc-line); border-radius: 0; padding: .6rem 0; margin: 0; }
.fawc--modern .fawc-m-items--compact .fawc-m-item__media,
.fawc--modern .fawc-m-items--compact .fawc-m-item__media img { width: 44px !important; height: 44px !important; flex-basis: 44px; }

/* Sammenfoldelige afsnit */
.fawc--modern .fawc-m-details { margin: 0; }
.fawc--modern .fawc-m-details > summary { display: flex; align-items: center; gap: .4rem; cursor: pointer; list-style: none; font-weight: 600; }
.fawc--modern .fawc-m-details > summary::-webkit-details-marker { display: none; }
.fawc--modern .fawc-m-details > summary::after { content: ""; width: .45em; height: .45em; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); margin-left: .35rem; transition: transform .15s; opacity: .7; }
.fawc--modern .fawc-m-details[open] > summary::after { transform: rotate(-135deg) translateY(-2px); }
.fawc--modern .fawc-m-details__body { padding-top: .85rem; }
.fawc--modern .fawc-m-details__body > :last-child { margin-bottom: 0; }
.fawc--modern .fawc-m-optional { font-weight: 400; opacity: .65; }
.fawc--modern .fawc-m-details--link > summary { display: inline-flex; font-weight: 400; font-size: 1em; text-decoration: underline; text-underline-offset: .2em; }
.fawc--modern .fawc-m-done { margin-top: .9rem; }
.fawc--modern .fawc-m-done { margin-top: 1.25rem; }
.fawc--modern .fawc-m-done__title { margin: 0 0 .5rem; font-weight: 600; }
.fawc--modern .fawc-m-done .fawc-m-help { margin: .6rem 0 0; }
.fawc--modern .fawc-m-reason { border: 1px solid var(--fawc-line); border-radius: var(--fawc-radius); padding: .9rem 1.25rem; margin: 0 0 var(--fawc-gap); }
.fawc--modern .fawc-m-reason select,
.fawc--modern .fawc-m-reason textarea { width: 100%; max-width: 100%; }
.fawc--modern .fawc-m-reason:has(#fawc_reason option[value=""]:checked) .fawc-m-note { display: none; }
.fawc--modern .fawc-m-reason .fawc-field:last-child { margin-bottom: 0; }

/* Returnering */
.fawc--modern .fawc-m-return__summary ul { margin: 0 0 .75rem !important; padding: 0 !important; list-style: none; }
.fawc--modern .fawc-m-return__summary li { position: relative; padding-left: 1.5rem; margin: 0 0 .35rem; }
.fawc--modern .fawc-m-return__summary li::before { content: ""; position: absolute; left: .2rem; top: .45em; width: .35em; height: .65em; border-right: 2px solid var(--fawc-accent); border-bottom: 2px solid var(--fawc-accent); transform: rotate(45deg); }
.fawc--modern .fawc-m-return__summary > :last-child { margin-bottom: .75rem; }
.fawc--modern .fawc-m-rules { font-size: 1em; }
.fawc--modern .fawc-m-rules > :first-child { margin-top: 0; }
.fawc--modern .fawc-form .fawc-m-ack { display: flex; align-items: flex-start; gap: .65rem; margin: 1rem 0 0; padding: .85rem 1rem; background: var(--fawc-soft); border-radius: var(--fawc-radius); font-weight: 600; cursor: pointer; }
.fawc--modern .fawc-m-ack input { flex: 0 0 auto; width: 1.2rem; height: 1.2rem; margin: .15em 0 0; accent-color: var(--fawc-accent); }

/* Bekræft */
.fawc--modern .fawc-m-submit { border-top: 1px solid var(--fawc-line); padding-top: 1.5rem; display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.25rem; }
.fawc--modern .fawc-m-declaration { flex: 1 1 100%; margin: 0; padding: .9rem 1rem; background: var(--fawc-soft); border-left: 3px solid var(--fawc-accent); border-radius: 0 var(--fawc-radius) var(--fawc-radius) 0; font-weight: 600; }
.fawc--modern .fawc-m-declaration > :last-child { margin-bottom: 0; }
.fawc--modern .fawc-m-declaration--partial { display: none; }
.fawc--modern .fawc-m-form:has(.fawc-m-check:not(:checked)) .fawc-m-declaration--partial,
.fawc--modern .fawc-m-form:has(.fawc-m-qty option:checked:not(:last-child)) .fawc-m-declaration--partial { display: block; }
.fawc--modern .fawc-m-form:has(.fawc-m-check:not(:checked)) .fawc-m-declaration--entire,
.fawc--modern .fawc-m-form:has(.fawc-m-qty option:checked:not(:last-child)) .fawc-m-declaration--entire { display: none; }
.fawc--modern .fawc-m-button { min-width: 15rem; }

/* Beskeder */
.fawc--modern .fawc-m-msg { padding: .85rem 1.1rem; margin: 0 0 1.25rem; border-radius: var(--fawc-radius); border: 1px solid var(--fawc-line); background: var(--fawc-soft); }
.fawc--modern .fawc-m-msg > :last-child,
.fawc--modern .fawc-m-msg p { margin-bottom: 0; margin-top: 0; }
.fawc--modern .fawc-m-msg--error { border-color: rgba(179, 45, 46, .35); border-left: 4px solid #b32d2e; background: rgba(179, 45, 46, .06); }
.fawc--modern .fawc-m-msg ul { margin: 0; padding-left: 1.1rem; }

/* Trin 1 */
.fawc--modern .fawc-m-fields { display: grid; grid-template-columns: 1fr; gap: 0 1.25rem; padding: 1.25rem; }
.fawc--modern .fawc-m-fields .fawc-field { margin-bottom: 1.1rem; }
.fawc--modern .fawc-m-fields .fawc-m-details { margin-bottom: .25rem; }
.fawc--modern .fawc-m-fields .fawc-m-details .fawc-field { margin-bottom: .5rem; }
@media (min-width: 640px) {
	.fawc--modern .fawc-m-fields { grid-template-columns: 1fr 1fr; }
	.fawc--modern .fawc-m-col-full { grid-column: 1 / -1; }
}
.fawc--modern .fawc-m-fields .fawc-m-help { margin: 0; }
.fawc--modern .fawc-m-form > .fawc-m-submit:only-of-type { }

/* Kvittering */
.fawc--modern .fawc-m-next { padding: 1.25rem 1.4rem; }
.fawc--modern .fawc-m-next__text > :first-child { margin-top: 0; }
.fawc--modern .fawc-m-next__text ol { margin: 0 0 1rem 1.25rem; padding: 0; }
.fawc--modern .fawc-m-next__text li { margin: 0 0 .35rem; }
.fawc--modern .fawc-m-dl { margin: 0 0 .75rem; }
.fawc--modern .fawc-m-dl > div { display: flex; justify-content: space-between; gap: 1rem; padding: .45rem 0; border-bottom: 1px solid var(--fawc-line); }
.fawc--modern .fawc-m-dl > div:last-child { border-bottom: 0; }
.fawc--modern .fawc-m-dl dt { opacity: .7; font-weight: 400; margin: 0; }
.fawc--modern .fawc-m-dl dd { margin: 0; text-align: right; overflow-wrap: anywhere; }
.fawc--modern .fawc-m-success > .fawc-m-details { margin: 0 0 var(--fawc-gap); }

@media (max-width: 600px) {
	.fawc--modern .fawc-m-steps__step:not(.is-current) .fawc-m-steps__label { display: none; }
	/* Det aktive trin får plads til sin tekst, så den ikke støder op mod næste trin. */
	.fawc--modern .fawc-m-steps__step.is-current { flex: 1 0 auto; }
	.fawc--modern .fawc-m-steps__step:not(:last-child)::after { min-width: .75rem; }
	.fawc--modern .fawc-m-card { padding: .9rem 1rem; }
	.fawc--modern .fawc-m-button { width: 100%; min-width: 0; }
	.fawc--modern .fawc-m-submit { justify-content: center; }
	.fawc--modern .fawc-m-item { padding: .6rem .7rem; gap: .7rem; }
	.fawc--modern .fawc-m-dl > div { flex-direction: column; gap: .1rem; }
	.fawc--modern .fawc-m-dl dd { text-align: left; }
}
/* Læsbarhed: al brødtekst i temaets grundstørrelse (typisk 16px); hierarki via vægt og farve i stedet for små tekster. */
.fawc--modern { font-size: 1rem; }
.fawc--modern .fawc-m-help,
.fawc--modern .fawc-m-order__meta,
.fawc--modern .fawc-m-item__meta,
.fawc--modern .fawc-m-dl dt { opacity: .78; }
.fawc--modern .fawc-m-steps__num { font-size: .8125rem; }
.fawc--modern .fawc-m-rules p { margin: 0 0 .85em; line-height: 1.6; }
.fawc--modern .fawc-m-rules p:empty,
.fawc--modern .fawc-m-rules br + br { display: none; }
.fawc--modern .fawc-m-return__summary li { line-height: 1.55; }
.fawc--modern .fawc-m-details > summary:focus { outline: none; }
.fawc--modern .fawc-m-details > summary:focus-visible { outline: 2px solid var(--fawc-accent); outline-offset: 3px; border-radius: 4px; }
.fawc--modern .fawc-m-details--link > summary { color: var(--fawc-accent); }
.fawc--modern .fawc-m-item__meta select { font-size: 1em; }
.fawc--modern .fawc-m-order__status { opacity: .85; }
.fawc--modern .fawc-m-terms { margin: 0 0 .25rem; }
.fawc--modern .fawc-m-terms a { color: var(--fawc-accent); text-underline-offset: .2em; }

/* Samlet flueben ved knappen */
.fawc--modern .fawc-form .fawc-m-ack.fawc-m-declaration { margin: 0; display: flex; align-items: flex-start; gap: .75rem; padding: 1rem 1.1rem; border-left: 3px solid var(--fawc-accent); border-radius: 0 var(--fawc-radius) var(--fawc-radius) 0; }
.fawc--modern .fawc-m-ack.fawc-m-declaration input { margin-top: .2em; }
.fawc--modern .fawc-m-ack .fawc-m-declaration--entire,
.fawc--modern .fawc-m-ack .fawc-m-declaration--partial { border: 0; padding: 0; background: none; margin: 0; }
.fawc--modern .fawc-m-ack .fawc-m-declaration--partial { display: none; }
.fawc--modern .fawc-m-form:has(.fawc-m-check:not(:checked)) .fawc-m-ack .fawc-m-declaration--partial,
.fawc--modern .fawc-m-form:has(.fawc-m-qty option:checked:not(:last-child)) .fawc-m-ack .fawc-m-declaration--partial { display: inline; }
.fawc--modern .fawc-m-form:has(.fawc-m-check:not(:checked)) .fawc-m-ack .fawc-m-declaration--entire,
.fawc--modern .fawc-m-form:has(.fawc-m-qty option:checked:not(:last-child)) .fawc-m-ack .fawc-m-declaration--entire { display: none; }
.fawc--modern .fawc-m-form:not(:has(.fawc-m-check:not(:checked))):not(:has(.fawc-m-qty option:checked:not(:last-child))) .fawc-m-ack .fawc-m-declaration--entire { display: inline; }


/* Hele varekortet er klikbart (større tryk-flade på tablet/mobil); antal-vælgeren ligger ovenpå. */
.fawc--modern .fawc-m-items--select .fawc-m-item { position: relative; }
.fawc--modern .fawc-m-items--select .fawc-m-item__name::after { content: ""; position: absolute; inset: 0; border-radius: inherit; cursor: pointer; }
.fawc--modern .fawc-m-items--select .fawc-m-item__meta select,
.fawc--modern .fawc-m-items--select .fawc-m-item__meta label,
.fawc--modern .fawc-m-items--select .fawc-m-check { position: relative; z-index: 1; }
.fawc--modern .fawc-m-items--select .fawc-m-item:hover { border-color: var(--fawc-accent); }
.fawc--modern .fawc-m-check:focus-visible { outline: 2px solid var(--fawc-accent); outline-offset: 2px; }

/* Ingen opacity på meta-linjen (opacity skaber et lag, der lægger sig over det klikbare kort) */
.fawc--modern .fawc-m-item__meta { opacity: 1; color: rgba(0, 0, 0, .68); color: color-mix(in srgb, currentColor 72%, transparent); }
.fawc--modern .fawc-m-items--select .fawc-m-item__name::after { z-index: 1; }
.fawc--modern .fawc-m-items--select .fawc-m-item__meta select,
.fawc--modern .fawc-m-items--select .fawc-m-item__meta label { z-index: 2; }

/* Brede skærme: varekort i to kolonner, så de ikke strækkes ud over hele bredden */
@media (min-width: 1100px) {
	.fawc--modern .fawc-m-items:not(.fawc-m-items--compact) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; }
	.fawc--modern .fawc-m-items:not(.fawc-m-items--compact) > .fawc-m-item { margin: 0; }
}

/* Luft mellem sektioner */
.fawc--modern { --fawc-gap: 3rem; }
.fawc--modern .fawc-m-steps { margin-bottom: 2.5rem !important; }
.fawc--modern .fawc-title { margin-bottom: .75rem; }
.fawc--modern .fawc-intro { margin-bottom: 2rem; }
.fawc--modern .fawc-m-section__title { margin-bottom: .75rem; }
.fawc--modern .fawc-m-section > .fawc-m-help { margin-bottom: 1rem; }
.fawc--modern .fawc-m-selectall { margin-bottom: .75rem !important; }
.fawc--modern .fawc-m-done { margin-top: 2rem; }
.fawc--modern .fawc-m-done > div > .fawc-m-help { margin-top: .75rem; }
.fawc--modern .fawc-m-msg { margin-bottom: 2rem; }
.fawc--modern .fawc-m-submit { padding-top: 2rem; }
.fawc--modern .fawc-m-terms { margin-top: 1rem; }
.fawc--modern .fawc-m-next,
.fawc--modern .fawc-m-receipt { margin-bottom: var(--fawc-gap); }
@media (max-width: 767px) {
	.fawc--modern { --fawc-gap: 2.25rem; }
	.fawc--modern .fawc-m-steps { margin-bottom: 1.75rem !important; }
	.fawc--modern .fawc-intro { margin-bottom: 1.5rem; }
}

/* Ensartet spacing på alle trin: 48px mellem sektioner, 32px efter intro/beskeder, 24px mellem blokke, 16px under overskrifter */
.fawc--modern { --fawc-s-section: var(--fawc-gap); --fawc-s-block: 1.5rem; --fawc-s-head: 1rem; }
.fawc--modern .fawc-title { margin: 0 0 var(--fawc-s-head); }
.fawc--modern .fawc-title + .fawc-m-card,
.fawc--modern .fawc-title + .fawc-errors { margin-top: .5rem; }
.fawc--modern .fawc-intro { margin: 0 0 2rem; }
.fawc--modern .fawc-intro > :last-child { margin-bottom: 0; }
.fawc--modern .fawc-m-msg { margin-bottom: 2rem; }
.fawc--modern .fawc-m-section__title { margin: 0 0 var(--fawc-s-head); }
.fawc--modern .fawc-m-section__title + .fawc-m-help { margin-top: -.25rem; }
.fawc--modern .fawc-m-section > .fawc-m-help { margin-bottom: 1.25rem; }
/* Trin 1 */
.fawc--modern .fawc-m-fields { padding: 1.5rem; }
.fawc--modern .fawc-m-fields .fawc-field { margin-bottom: var(--fawc-s-block); gap: .4rem; }
.fawc--modern .fawc-m-fields .fawc-m-details { margin-bottom: 0; }
.fawc--modern .fawc-m-fields .fawc-m-details__body { padding-top: 1rem; }
/* Årsag */
.fawc--modern .fawc-m-reason { padding: 1.1rem 1.5rem; }
.fawc--modern .fawc-m-reason .fawc-m-details__body { padding-top: 1rem; }
.fawc--modern .fawc-m-reason .fawc-field { margin-bottom: 1.25rem; }
/* Returnering */
.fawc--modern .fawc-m-return__summary > :last-child,
.fawc--modern .fawc-m-return__summary ul { margin-bottom: 0 !important; }
.fawc--modern .fawc-m-terms { margin: 1.25rem 0 0; }
/* Bekræft */
.fawc--modern .fawc-m-submit { gap: var(--fawc-s-block) 1.25rem; padding-top: 2rem; }
/* Kvittering */
.fawc--modern .fawc-m-next { padding: 1.5rem; }
.fawc--modern .fawc-m-next__text > :last-child,
.fawc--modern .fawc-m-next__text ol { margin-bottom: 0; }
.fawc--modern .fawc-m-next .fawc-m-button { margin-top: var(--fawc-s-block); }
.fawc--modern .fawc-m-receipt { padding: 1.5rem; }
.fawc--modern .fawc-m-receipt .fawc-m-section__title { margin-bottom: .5rem; }
.fawc--modern .fawc-m-dl { margin: 0 0 var(--fawc-s-block); }
.fawc--modern .fawc-m-dl > div { padding: .65rem 0; }
.fawc--modern .fawc-m-dl + .fawc-m-items--compact .fawc-m-item:first-child { border-top: 1px solid var(--fawc-line); }
@media (max-width: 600px) {
	.fawc--modern .fawc-m-fields,
	.fawc--modern .fawc-m-next,
	.fawc--modern .fawc-m-receipt { padding: 1.1rem; }
	.fawc--modern .fawc-m-reason { padding: 1rem 1.1rem; }
}
.fawc--modern .fawc-m-next__text li:last-child { margin-bottom: 0; }
.fawc--modern .fawc-title + .fawc-m-card { margin-top: 1.5rem; }
.fawc--modern .fawc-m-order:has(+ .fawc-m-msg) { margin-bottom: 1.5rem; }
.fawc--modern .fawc-m-order + .fawc-m-msg { margin-bottom: var(--fawc-gap); }
