/* Blöcke rp/woerterbuch und rp/redensarten. Farben und Schriften kommen aus dem Theme
   (theme.json-Presets); die Rückfallwerte gelten, falls ein anderes Theme aktiv ist. */
.rp-woerterbuch, .rp-redensarten {
	--rp-grund: var(--wp--preset--color--kalk, #F3F4F1);
	--rp-text: var(--wp--preset--color--schiefer, #1E2A2E);
	--rp-neben: var(--wp--preset--color--nebel, #556064);
	--rp-linie: var(--wp--preset--color--linie, #D6DAD5);
	--rp-hecke: var(--wp--preset--color--hecke, #2D5238);
	--rp-hecke-hell: var(--wp--preset--color--hecke-hell, #E3EBE4);
	--rp-heide: var(--wp--preset--color--heide, #7B3D6F);
	--rp-serif: var(--wp--preset--font-family--serif, Georgia, serif);
}
.rp-woerterbuch [hidden], .rp-redensarten [hidden] { display: none !important; }
.rp-woerterbuch .dp, .rp-redensarten .dp { color: var(--rp-heide); font-weight: 700; }
.rp-woerterbuch mark, .rp-redensarten mark { background: color-mix(in srgb, var(--rp-heide) 18%, transparent); color: inherit; border-radius: 2px; }

/* Suchfeld */
.rp-suche label { display: block; font-weight: 600; margin-bottom: .4rem; }
.rp-suche-feld { position: relative; }
.rp-suche input { width: 100%; min-height: 3rem; padding: .55rem 1rem .55rem 3rem; font: inherit; font-size: 1.1875rem; color: var(--rp-text); background: var(--rp-grund); border: 2px solid var(--rp-linie); border-radius: 6px; box-sizing: border-box; }
.rp-suche input:focus { outline: none; border-color: var(--rp-hecke); box-shadow: 0 0 0 3px var(--rp-hecke-hell); }
.rp-lupe { position: absolute; left: 1rem; top: 50%; translate: 0 -50%; width: 1.25rem; height: 1.25rem; color: var(--rp-neben); pointer-events: none; }
.rp-info { color: var(--rp-neben); font-size: .9375rem; margin: .5rem 0 0; min-height: 1.5em; }

/* Steuerleiste des Wörterbuchs bleibt beim Scrollen stehen */
.rp-woerterbuch .rp-steuer { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--rp-kopf-hoehe, 0px)); z-index: 10; background: var(--rp-grund); border-bottom: 1px solid var(--rp-linie); padding-block: .75rem; display: grid; gap: .5rem; }
.rp-woerterbuch .rp-info:empty { display: none; }
.rp-woerterbuch .rp-suche label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.rp-abc { display: flex; gap: 2px; overflow-x: auto; scrollbar-width: thin; }
.rp-abc a, .rp-abc span { flex: 1 0 2.25rem; min-height: 44px; display: grid; place-items: center; font: 600 1.0625rem var(--rp-serif); border-radius: 6px; text-decoration: none; }
.rp-abc a { color: var(--rp-hecke); }
.rp-abc a:hover { background: var(--rp-hecke-hell); }
.rp-abc span { color: var(--rp-linie); }

/* Wörterbuch-Liste */
.rp-gruppe { display: grid; grid-template-columns: 5rem minmax(0, 1fr); gap: 0 1.5rem; border-top: 1px solid var(--rp-linie); padding-top: 1.25rem; margin-top: 1.25rem; scroll-margin-top: 12rem; }
.rp-gruppe h2 { font-family: var(--rp-serif); font-size: 3.5rem; line-height: .9; color: var(--rp-hecke); font-weight: 400; margin: 0; }
.rp-eintraege { margin: 0; columns: 2 22rem; column-gap: 3rem; }
.rp-eintrag { break-inside: avoid; padding: .55rem 0 .65rem; border-bottom: 1px solid color-mix(in srgb, var(--rp-linie) 60%, transparent); scroll-margin-top: 13rem; }
.rp-eintrag dt { font-family: var(--rp-serif); font-size: 1.25rem; font-weight: 500; line-height: 1.3; }
.rp-eintrag dt a { color: inherit; text-decoration: none; }
.rp-eintrag dt a:hover { color: var(--rp-hecke); text-decoration: underline; }
.rp-anm { font-style: italic; font-weight: 400; font-size: .85em; color: var(--rp-neben); }
.rp-eintrag dd { margin: .1rem 0 0; color: var(--rp-neben); line-height: 1.45; }
.rp-eintrag:target { background: var(--rp-hecke-hell); box-shadow: 0 0 0 .5rem var(--rp-hecke-hell); }
@media (max-width: 40rem) {
	.rp-gruppe { grid-template-columns: 1fr; }
	.rp-gruppe h2 { position: static; font-size: 2.5rem; margin-bottom: .5rem; }
}

/* Redensarten */
.rp-steuer-zeile { display: flex; flex-wrap: wrap; gap: 1rem; align-items: end; padding-bottom: 1.5rem; }
.rp-steuer-zeile .rp-suche { flex: 1 1 20rem; max-width: 34rem; }
.rp-steuer-zeile .rp-info { flex-basis: 100%; order: 3; margin: 0; }
.rp-knopf { display: inline-flex; align-items: center; gap: .5rem; min-height: 44px; padding: 0 1rem; border-radius: 6px; font: 600 1rem inherit; font-family: inherit; cursor: pointer; border: 1px solid var(--rp-hecke); background: transparent; color: var(--rp-hecke); }
.rp-knopf:hover { background: var(--rp-hecke-hell); }
.rp-knopf svg { width: 1.125rem; height: 1.125rem; }
.rp-ra-kopf { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; font-size: .9375rem; color: var(--rp-neben); padding-bottom: .4rem; }
.rp-ra { list-style: none; margin: 0; padding: 0; border-top: 2px solid var(--rp-text); }
.rp-ra li { display: grid; align-items: baseline; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: .35rem 3rem; padding: 1.1rem 0 1.2rem; border-bottom: 1px solid var(--rp-linie); }
.rp-ra .platt { font-family: var(--rp-serif); font-size: 1.4375rem; line-height: 1.3; font-weight: 500; }
.rp-woertl { display: block; color: var(--rp-neben); font-size: .9375rem; margin-top: .2rem; }
.rp-ra li.rp-blitz { animation: rp-blitz 1.6s ease-out; }
@keyframes rp-blitz { from { background: color-mix(in srgb, var(--rp-heide) 22%, transparent); } to { background: transparent; } }
@media (max-width: 44rem) { .rp-ra li { grid-template-columns: 1fr; } .rp-ra-kopf { display: none; } }
@media (prefers-reduced-motion: reduce) { .rp-ra li.rp-blitz { animation: none; } }

/* Startseite, Geschichten */
.rp-wdt, .rp-startsuche, .rp-rdt, .rp-geschichten, .rp-gkopf {
	--rp-text: var(--wp--preset--color--schiefer, #1E2A2E); --rp-neben: var(--wp--preset--color--nebel, #556064);
	--rp-linie: var(--wp--preset--color--linie, #D6DAD5); --rp-hecke: var(--wp--preset--color--hecke, #2D5238);
	--rp-hecke-hell: var(--wp--preset--color--hecke-hell, #E3EBE4); --rp-heide: var(--wp--preset--color--heide, #7B3D6F);
	--rp-grund: var(--wp--preset--color--kalk, #F3F4F1); --rp-serif: var(--wp--preset--font-family--serif, Georgia, serif);
}
.rp-wdt .dp, .rp-startsuche .dp, .rp-rdt .dp, .rp-geschichten .dp { color: var(--rp-heide); font-weight: 700; }
.rp-wdt-label { font-size: 1rem; color: var(--rp-neben); margin: 0 0 .25rem; }
.rp-wdt-wort { font-family: var(--rp-serif); font-weight: 500; font-size: clamp(2.75rem, 8.5vw, 7.25rem); line-height: .98; letter-spacing: -.02em; margin: 0; overflow-wrap: break-word; }
.rp-wdt-wort.lang { font-size: clamp(2.25rem, 5.5vw, 4.75rem); }
.rp-wdt-wort a { color: inherit; text-decoration: none; }
.rp-wdt-bed { font-size: clamp(1.125rem, 1.8vw, 1.5rem); margin: .6rem 0 0; max-width: 30ch; }
.rp-wdt-bed .rp-anm { display: block; font-style: italic; color: var(--rp-neben); font-size: .85em; }
.rp-wdt-aktion { margin: 1rem 0 0; }
.rp-hilfe { font-size: .9375rem; color: var(--rp-neben); margin: .5rem 0 0; }
.rp-vorschau { list-style: none; margin: 1rem 0 0; padding: 0; border-top: 1px solid var(--rp-linie); }
.rp-vorschau li { border-bottom: 1px solid var(--rp-linie); }
.rp-vorschau a { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 1rem; padding: .7rem 0; color: inherit; text-decoration: none; }
.rp-vorschau .platt { font-size: 1.1875rem; }
.rp-vorschau a:hover .platt { color: var(--rp-hecke); text-decoration: underline; }
.rp-vorschau .rp-hd { color: var(--rp-neben); }
.rp-knopf.rp-voll { background: var(--rp-hecke); color: var(--rp-grund); text-decoration: none; }
.rp-rdt h2 { font-size: 1.5rem; margin: 0 0 1.25rem; }
.rp-spruch { margin: 0; }
.rp-spruch blockquote { margin: 0; padding: 0; border: 0; font-family: var(--rp-serif); font-size: clamp(2rem, 4.2vw, 3.25rem); line-height: 1.1; letter-spacing: -.01em; font-weight: 500; }
.rp-spruch figcaption { margin-top: 1rem; font-size: 1.25rem; max-width: 34ch; }
.rp-gliste { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--rp-linie); }
.rp-gliste li { border-bottom: 1px solid var(--rp-linie); }
.rp-gliste a { display: block; padding: .85rem 0; text-decoration: none; color: inherit; }
.rp-t { font-family: var(--rp-serif); font-size: 1.25rem; line-height: 1.25; }
.rp-gliste a:hover .rp-t { color: var(--rp-hecke); text-decoration: underline; }
.rp-m { display: block; color: var(--rp-neben); font-size: .9375rem; margin-top: .2rem; }
.rp-gruppiert { display: grid; gap: 3rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); }
.rp-gruppiert h2 { font-size: 1.5rem; margin: 0 0 .35rem; }
.rp-erkl { color: var(--rp-neben); margin: 0 0 1.25rem; }
.rp-meta { color: var(--rp-neben); display: flex; flex-wrap: wrap; gap: .25rem 1.25rem; margin: 0 0 1rem; }
.rp-werkzeug { display: flex; gap: .5rem; align-items: center; flex-wrap: wrap; padding-block: .75rem; border-block: 1px solid var(--rp-linie); }
.rp-werkzeug > span:first-child { color: var(--rp-neben); font-size: .9375rem; }
.rp-werkzeug .rp-knopf { padding: 0 .85rem; font-size: .9375rem; }
.rp-legende { margin-left: auto; font-size: .9375rem; color: var(--rp-neben); }
.rp-legende b { font-weight: 500; color: var(--rp-heide); font-size: 1.0625rem; }
@media (max-width: 40rem) { .rp-legende { margin-left: 0; flex-basis: 100%; } }
.wp-block-post-content { font-size: calc(1.125rem * var(--rp-zoom, 1)); }
