/* DFB Andet tempel (Sefaria) – Pergament & Oxblod, samme udtryk som DFB BiblIndex */
.dfb-sef-widget, .dfb-sef-overlay {
	--dfb-sef-ox: var(--bb-oxblod, #8b1a1a);
	--dfb-sef-ox-lys: rgba(139, 26, 26, .12);
	--dfb-sef-graa: #6b6259;
	--dfb-sef-linje: rgba(60, 40, 20, .14);
	--dfb-sef-papir: var(--bb-papir, #fbf7ef);
}

/* ---- Widget ---- */
.dfb-sef-widget { font-size: .92rem; }
.dfb-sef-status { margin: 0; color: var(--dfb-sef-graa); }
.dfb-sef-sum { margin: 0 0 .4rem; }
.dfb-sef-sum strong { color: var(--dfb-sef-ox); }
.dfb-sef-chips { display: flex; flex-wrap: wrap; gap: .3rem; margin: 0 0 .6rem; }
.dfb-sef-chip { font-size: .78rem; padding: .1rem .55rem; border-radius: 999px; background: var(--dfb-sef-ox-lys); color: #5a2a1e; white-space: nowrap; }
.dfb-sef-chip b { font-weight: 600; font-variant-numeric: tabular-nums; }
.dfb-sef-lbl { margin: .7rem 0 .2rem; color: var(--dfb-sef-graa); font-size: .82rem; }
.dfb-sef-versliste { max-height: 300px; overflow-y: auto; margin: 0 -2px; padding: 0 2px; }
.dfb-sef-versrk {
	display: grid; grid-template-columns: 3.1em 1fr 2.6em; grid-template-areas: "nr bar n" "f f f";
	align-items: center; column-gap: .45em; width: 100%; margin: 0; padding: .32em .3em;
	background: none; border: 0; border-bottom: 1px solid var(--dfb-sef-linje); text-align: left;
	font: inherit; color: inherit; cursor: pointer; border-radius: 3px;
}
.dfb-sef-versrk:hover, .dfb-sef-versrk:focus-visible { background: var(--dfb-sef-ox-lys); outline: none; }
.dfb-sef-vnr { grid-area: nr; font-weight: 600; white-space: nowrap; }
.dfb-sef-vbar { grid-area: bar; height: 6px; background: var(--dfb-sef-linje); border-radius: 3px; overflow: hidden; }
.dfb-sef-vbar > span { display: block; height: 100%; background: var(--dfb-sef-ox); border-radius: 3px; }
.dfb-sef-vn { grid-area: n; text-align: right; font-variant-numeric: tabular-nums; color: var(--dfb-sef-graa); }
.dfb-sef-vf { grid-area: f; font-size: .82em; color: var(--dfb-sef-graa); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dfb-sef-afsnit { list-style: none; margin: 0; padding: 0; max-height: 220px; overflow-y: auto; }
.dfb-sef-afsnit li { border-bottom: 1px solid var(--dfb-sef-linje); }
.dfb-sef-afsnit-knap { display: block; width: 100%; text-align: left; background: none; border: 0; padding: .32em .3em; font: inherit; font-size: .88em; color: inherit; cursor: pointer; border-radius: 3px; line-height: 1.35; }
.dfb-sef-afsnit-knap:hover, .dfb-sef-afsnit-knap:focus-visible { background: var(--dfb-sef-ox-lys); outline: none; }
.dfb-sef-spaend { font-weight: 600; white-space: nowrap; }
.dfb-sef-kilde-lille { margin: .5rem 0 0; font-size: .78em; color: var(--dfb-sef-graa); }
.dfb-sef-kilde-lille a { color: inherit; }

/* ---- Popup ---- */
.dfb-sef-overlay {
	position: fixed; inset: 0; z-index: 100001; background: rgba(20, 12, 6, .55);
	display: flex; align-items: center; justify-content: center; padding: 16px;
}
.dfb-sef-pop {
	position: relative; background: var(--dfb-sef-papir); color: #2b2118; width: 100%; max-width: 760px;
	max-height: calc(100vh - 32px); overflow-y: auto; border-radius: 10px; padding: 1.3rem 1.4rem 1rem;
	box-shadow: 0 18px 50px rgba(0, 0, 0, .35); box-sizing: border-box;
}
.dfb-sef-luk {
	position: absolute; top: .4rem; right: .6rem; background: none; border: 0; font-size: 1.8rem;
	line-height: 1; cursor: pointer; color: var(--dfb-sef-graa);
}
.dfb-sef-luk:hover { color: var(--dfb-sef-ox); }
.dfb-sef-pop-titel { font-family: Georgia, 'Times New Roman', serif; margin: 0 2rem .3rem 0; color: var(--dfb-sef-ox); font-size: 1.35rem; }
.dfb-sef-pop-meta { margin: 0 0 .8rem; color: var(--dfb-sef-graa); font-size: .92rem; }
.dfb-sef-pop-meta a { color: var(--dfb-sef-ox); }
.dfb-sef-gruppe { border-top: 2px solid var(--dfb-sef-linje); padding: .55rem 0 .3rem; }
.dfb-sef-gruppe-titel { display: flex; align-items: baseline; gap: .5em; margin: 0 0 .3rem; font-size: 1rem; font-family: Georgia, 'Times New Roman', serif; }
.dfb-sef-antal {
	margin-left: auto; background: var(--dfb-sef-ox-lys); color: var(--dfb-sef-ox); border-radius: 999px;
	padding: 0 .55em; font-size: .8em; font-weight: 600; font-variant-numeric: tabular-nums; font-family: inherit;
}
.dfb-sef-vaerk { margin: .2rem 0 .35rem; }
.dfb-sef-vaerk > summary { cursor: pointer; }
.dfb-sef-vaerk-navn { font-weight: 600; }
.dfb-sef-n { color: var(--dfb-sef-graa); font-size: .85em; }
.dfb-sef-steder { list-style: none; margin: .2rem 0 .2rem 1rem; padding: 0; font-size: .92rem; }
.dfb-sef-sted { margin: .1rem 0; }
.dfb-sef-sted-knap {
	display: flex; flex-wrap: wrap; align-items: baseline; gap: .35em; width: 100%; text-align: left;
	background: none; border: 0; padding: .2em .3em; font: inherit; color: inherit; cursor: pointer; border-radius: 3px;
}
.dfb-sef-sted-knap:hover, .dfb-sef-sted-knap:focus-visible { background: var(--dfb-sef-ox-lys); outline: none; }
.dfb-sef-lok { font-variant-numeric: tabular-nums; font-weight: 600; }
.dfb-sef-spaend-lille { color: var(--dfb-sef-graa); font-size: .88em; }
.dfb-sef-vis { margin-left: auto; font-size: .8em; color: var(--dfb-sef-ox); white-space: nowrap; }
.dfb-sef-tekst { margin: .25rem 0 .6rem .3rem; padding: .55rem .8rem; border-left: 3px solid var(--dfb-sef-ox); background: #fffdf9; border-radius: 0 6px 6px 0; font-family: Georgia, 'Times New Roman', serif; font-size: .95rem; line-height: 1.55; }
.dfb-sef-tekst p { margin: 0 0 .5rem; }
.dfb-sef-tekst-kilde { font-family: system-ui, sans-serif; font-size: .78rem !important; color: var(--dfb-sef-graa); margin: .3rem 0 0 !important; }
.dfb-sef-tekst-kilde a { color: var(--dfb-sef-ox); }
.dfb-sef-fejl { font-style: italic; color: var(--dfb-sef-graa); }
.dfb-sef-kilde { font-size: .8rem; color: var(--dfb-sef-graa); margin-top: 1rem; }
.dfb-sef-kilde a { color: inherit; }
