/* Lord of the Lands: pagina's van de groep rest, eenvoudig en compact. @author Ferhat Remory */

/* ==========================================================================
   Bouwstenen (zoals .feiten, .rij, .tegels, .slots in spel.css), met het voorvoegsel lr- zodat ze niet botsen met de andere groepen.
   Elke pagina van deze groep draagt de klasse .lr op haar buitenste blok; overschrijvingen van oude klassen hangen daaronder.
   ========================================================================== */

.lr { --lr-amber: var(--color-brass); --lr-zacht: color-mix(in oklab, var(--color-ink) 4%, transparent); }
.lr .tabular, .lr-getal { font-variant-numeric: lining-nums tabular-nums; }

/* Kapitaaltjes en kleine uitleg. */
.lr-kap { display: block; font: 600 9.5px/1 var(--font-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--color-muted); }
.lr-uitleg { font-size: 12.5px; line-height: 1.45; color: var(--color-muted); }
.lr-motto { font: italic 500 15px/1.3 var(--font-kop); color: var(--color-muted); }
.lr-goud { color: var(--lr-amber) !important; }
.lr-goud .icon { color: var(--lr-amber); }
.lr-leeg { padding: 16px 0; text-align: center; font: italic 500 15px/1.3 var(--font-kop); color: var(--color-muted); }
.lr-sectie { padding: 10px 16px 14px; }
.lr-sectie-s { padding: 8px 16px 10px; }

/* Feiten: een rij vakjes met een haarlijn, label in kapitaaltjes en waarde in EB Garamond. */
.lr-feiten { display: grid; grid-template-columns: repeat(auto-fit, minmax(118px, 1fr)); border: 1px solid var(--color-line); border-radius: var(--radius-ui); overflow: hidden; }
.lr-feiten > * { min-width: 0; padding: 8px 12px 9px; border-right: 1px solid var(--color-line); border-bottom: 1px solid var(--color-line); margin: 0 -1px -1px 0; }
.lr-feit dt, .lr-feit > span:first-child { display: flex; align-items: center; gap: 5px; font: 600 9px/1.1 var(--font-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--color-muted); }
.lr-feit dt .icon { width: 12px; height: 12px; color: var(--color-faint); }
.lr-feit dd, .lr-feit b { display: flex; flex-wrap: wrap; align-items: center; gap: 0 5px; margin-top: 4px; overflow-wrap: anywhere; font: 600 17px/1.1 var(--font-kop); color: var(--color-ink); font-variant-numeric: lining-nums tabular-nums; }
.lr-feit img { width: 18px; height: 18px; object-fit: contain; }
.lr-feit small { display: block; margin-top: 2px; font-size: 11px; color: var(--color-muted); }
a.lr-feit:hover { background: var(--lr-zacht); }

/* Rijen: klein beeld links, naam in EB Garamond, korte regel, rechts de waarde of de knop. */
.lr-rijen { display: grid; }
.lr-rij { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--color-line); color: var(--color-ink); }
.lr-rij:last-child { border-bottom: 0; }
.lr-rij.zonder-beeld { grid-template-columns: minmax(0, 1fr) auto; }
.lr-rij > img, .lr-rij > .lr-ico { width: 34px; height: 34px; object-fit: contain; }
.lr-ico { display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--color-line); border-radius: var(--radius-ui); color: var(--color-muted); }
.lr-ico .icon { width: 17px; height: 17px; }
.lr-rij-tekst { min-width: 0; }
.lr-rij-tekst b { display: block; font: 600 15.5px/1.15 var(--font-kop); color: var(--color-ink); }
.lr-rij-tekst small { display: block; margin-top: 2px; font-size: 11.5px; line-height: 1.35; color: var(--color-muted); }
.lr-rij-eind { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; font: 600 15px/1 var(--font-kop); }
a.lr-rij:hover .lr-rij-tekst b { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.lr-rij.dicht { opacity: .55; }
.lr-rij.dicht > img { filter: grayscale(1); }

/* Tegels: gelijke vakken met een haarlijn, zoals de keuzes in Lord of the Lands. */
.lr-tegels { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 8px; }
.lr-tegel { display: grid; align-content: start; gap: 4px; padding: 10px 11px; border: 1px solid var(--color-line); border-top: 2px solid var(--lr-kleur, var(--color-ink)); border-radius: var(--radius-ui); color: var(--color-ink); min-width: 0; }
.lr-tegel b { font: 600 15.5px/1.15 var(--font-kop); }
.lr-tegel big { font: 600 24px/1 var(--font-kop); font-variant-numeric: lining-nums tabular-nums; }
.lr-tegel small, .lr-tegel p { font-size: 11.5px; line-height: 1.4; color: var(--color-muted); }

/* Slots: een smal kader met een gekleurde linkerrand, voor wachttijden en dergelijke. */
.lr-slots { display: grid; grid-template-columns: repeat(auto-fill, minmax(168px, 1fr)); gap: 6px; }
.lr-slot { position: relative; display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; gap: 8px; align-items: center; min-height: 40px; padding: 5px 8px; border: 1px solid var(--color-line); border-left: 3px solid var(--lr-kleur, var(--color-line-strong)); border-radius: var(--radius-ui); color: var(--color-ink); }
.lr-slot:hover { border-color: var(--color-ink); border-left-color: var(--lr-kleur, var(--color-ink)); }
.lr-slot > .icon { width: 18px; height: 18px; color: var(--color-muted); }
.lr-slot > img { width: 22px; height: 22px; object-fit: contain; }
.lr-slot b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: 600 14px/1.15 var(--font-kop); }
.lr-slot small { display: block; font-size: 10.5px; color: var(--color-muted); }
.lr-slot-waarde { font: 600 14px/1 var(--font-kop); font-variant-numeric: lining-nums tabular-nums; white-space: nowrap; }
.lr-slot.klaar { --lr-kleur: var(--color-success); }
.lr-slot.klaar .lr-slot-waarde { color: var(--color-success); }
.lr-slot.wacht { --lr-kleur: var(--color-brass); }
.lr-slot.slot { --lr-kleur: var(--color-line); opacity: .6; }
.lr-slot-link { position: absolute; inset: 0; z-index: 0; }
.lr-slot form, .lr-slot .btn { position: relative; z-index: 1; }

/* Dunne voortgangslijn. */
.lr-voort { display: block; height: 3px; overflow: hidden; background: var(--color-card-deep); }
.lr-voort > i { display: block; height: 100%; background: var(--color-ink); }
.lr-voort.goed > i { background: var(--color-success); }
.lr-voort.goud > i { background: var(--color-brass); }

/* Een lichte strook (melding, uitleg) zonder donker vlak. */
.lr-strook { display: flex; align-items: center; gap: 10px; padding: 8px 12px; border: 1px solid var(--color-line); border-left: 3px solid var(--lr-kleur, var(--color-ink)); border-radius: var(--radius-ui); font-size: 12.5px; line-height: 1.4; color: var(--color-ink); background: color-mix(in oklab, var(--lr-kleur, var(--color-ink)) 5%, transparent); }
.lr-strook > .icon { flex: none; width: 16px; height: 16px; color: var(--lr-kleur, var(--color-muted)); }

/* Meldingen in deze pagina's: licht, met de tekst in inkt. */
.lr .alert { color: var(--color-ink); }
.lr .alert-error { border-color: color-mix(in oklab, var(--color-danger) 40%, transparent); background: color-mix(in oklab, var(--color-danger) 7%, transparent); color: var(--color-ink); }
.lr .alert-success { border-color: color-mix(in oklab, var(--color-success) 40%, transparent); background: color-mix(in oklab, var(--color-success) 7%, transparent); color: var(--color-ink); }
.lr .text-white { color: var(--color-ink); }

/* Status
   ========================================================================== */
.lr-status-split { display: grid; gap: 16px; }
@media (min-width: 900px) { .lr-status-split { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; } }

@media (max-width: 640px) {
  .lr-sectie { padding: 8px 12px 12px; }
  .lr-slots { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lr-slot { grid-template-columns: minmax(0, 1fr) auto; }
  .lr-slot > .icon, .lr-slot > img { display: none; }
  .lr-feiten { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lr-tegels { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Lege toestand (partial don-empty, ook op pagina's van andere groepen): de uitspraak in cursief, geen groot beeld. */
.don-empty.lr-leeg-blok { gap: 6px; padding-top: 14px; padding-bottom: 16px; }
.lr-motto-lijn { display: flex; align-items: center; gap: 12px; width: min(320px, 100%); }
.lr-motto-lijn::before, .lr-motto-lijn::after { content: ""; flex: 1; height: 1px; background: var(--color-line); }
.lr-motto-lijn .lr-kap { color: var(--color-accent); }
.lr-leeg-zin { max-width: 30rem; font: italic 500 16px/1.35 var(--font-kop); color: var(--color-ink); }

/* Account
   ========================================================================== */
.lr .lang-choice { background: transparent; color: var(--color-muted); }
.lr .lang-choice[aria-current="true"] { border-color: var(--color-ink); background: transparent; box-shadow: inset 0 0 0 1px var(--color-ink); color: var(--color-ink); }
.lr .preset-pick { background: transparent; }
.lr .preset-pick.is-active { border-color: var(--color-ink); box-shadow: inset 0 0 0 1px var(--color-ink); }
.lr input[type="file"]::file-selector-button { margin-right: 10px; padding: 5px 10px; border: 1px solid var(--color-ink); border-radius: var(--radius-ui); background: transparent; color: var(--color-ink); font: 700 9.5px/1 var(--font-sans); letter-spacing: .14em; text-transform: uppercase; cursor: pointer; }
/* Schakelaar zoals in Lord of the Lands: een inkten kader, het blokje schuift en het geheel wordt inkt. */
.lr .push-switch { width: 38px; height: 20px; border: 1px solid var(--color-ink); border-radius: var(--radius-ui); background: transparent; }
.lr .push-switch::after { top: 2px; left: 2px; width: 14px; height: 14px; border-radius: 2px; background: var(--color-ink); }
.lr .push-switch:checked { background: var(--color-ink); }
.lr .push-switch:checked::after { transform: translateX(18px); background: var(--color-card); }
.lr-account .card-body { padding-top: 10px; padding-bottom: 12px; }
.lr-naam { font: 600 15.5px/1.15 var(--font-kop); color: var(--color-ink); }

/* Persoonlijke opdrachten
   ========================================================================== */
.lr-van { display: inline !important; margin: 0 !important; font: 500 12px var(--font-sans); color: var(--color-faint); }
.lr-feiten > .lr-feit-breed { grid-column: span 2; }
.lr-paarden { display: flex; flex-wrap: wrap; gap: 4px 12px; margin-top: 6px; }
.lr-paarden li { display: inline-flex; align-items: center; gap: 4px; font: 600 14px/1.1 var(--font-kop); color: var(--color-faint); }
.lr-paarden li.is-binnen { color: var(--color-ink); }
.lr-paarden li.is-binnen .icon { color: var(--color-success); }
.lr-niveaus { margin-top: 8px; }
.lr-niveaus .lr-feit b { font-size: 16px; }
.lr-zegels { display: flex; flex-wrap: wrap; gap: 3px 12px; margin-top: 4px; font-size: 11px; color: var(--color-faint); }
.lr-zegels li { display: inline-flex; align-items: center; gap: 3px; }
.lr-zegels li.is-next { color: var(--color-ink); }
.lr-zegels li.is-got { color: var(--color-success); }
.lr-zegels .tabular { font: 600 12.5px/1 var(--font-kop); }
.lr-opdrachten .lr-rij { align-items: start; }
.lr-opdrachten .lr-rij-eind { padding-top: 2px; white-space: nowrap; }
.lr-opdrachten .lr-rij.is-klaar > img { opacity: .9; }
@media (min-width: 900px) {
  .lr-opdrachten { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
  .lr-opdrachten .lr-rij:nth-last-child(2):nth-child(odd) { border-bottom: 0; }
}
@media (max-width: 640px) {
  .lr-feiten > .lr-feit-breed, .lr-feiten > :has(+ .lr-feit-breed) { grid-column: 1 / -1; }
  .lr-feiten.lr-niveaus { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .lr-niveaus .lr-feit { padding: 7px 8px; }
  .lr-niveaus .lr-feit b { font-size: 13.5px; white-space: normal; }
}
/* Gsm: een oneven laatste vakje vult de rij, zodat er geen leeg vak overblijft. */
@media (max-width: 640px) { .lr-feiten:not(.lr-niveaus) > :last-child:nth-child(odd) { grid-column: 1 / -1; } }
.lr-twee { display: grid; gap: 12px; align-items: start; }
@media (min-width: 900px) { .lr-twee { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.lr .mission-row { background: none; }
.lr .mission-row:target { animation: anchor-flash 2s ease-out; }
.lr .lr-rij-eind.lr-stapel { flex-direction: column; align-items: flex-end; gap: 2px; }
.lr-getal-kop { font: 600 17px/1 var(--font-kop); color: var(--color-ink); font-variant-numeric: lining-nums tabular-nums; }
.lr-klein { font: 400 11px/1.2 var(--font-sans); color: var(--color-faint); }
.lr-ico.text-success { color: var(--color-success); }

/* Gunsten en de gunstenhal
   ========================================================================== */
.lr-kas { display: flex; align-items: center; gap: 12px; padding: 8px 12px; border: 1px solid var(--color-line); border-top: 2px solid var(--color-brass); border-radius: var(--radius-ui); }
.lr-kas > img { flex: none; width: 34px; height: 34px; object-fit: contain; }
.lr-kas b { display: block; margin-top: 3px; font: 600 24px/1 var(--font-kop); font-variant-numeric: lining-nums tabular-nums; }
.lr-kas .lr-motto { font-size: 14px; }
.lr-gunsten .lr-rij-eind form { min-width: 120px; }
.lr .perk-card.is-active .lr-ico { border-color: var(--color-success); color: var(--color-success); }
.lr-strook.lr-happy, .lr .happy-banner { --lr-kleur: var(--color-brass); box-shadow: none; }
.lr .happy-banner { color: var(--color-ink); }
@media (max-width: 640px) {
  .lr-rij { gap: 8px; }
  .lr-gunsten .lr-rij-eind form { min-width: 0; }
  .lr-rij.met-knop .btn { padding-inline: 9px; letter-spacing: .1em; }
  .lr-kas { flex-wrap: wrap; }
}
.lr-kas-zin { flex: 2; min-width: 0; }
@media (max-width: 640px) { .lr-kas-zin { display: none; } }

/* Beschermheer worden: de ladder als dunne lijn, de pakketten als keuzevakjes. */
.lr-ladder { padding: 4px 2px 0; }
.lr .donor-ladder { height: 3px; margin: 12px 8px 26px; border-radius: 0; background: var(--color-card-deep); }
.lr .donor-ladder-fill { border-radius: 0; background: var(--color-ink); }
.lr .donor-ladder-step { width: 10px; height: 10px; border-radius: 2px; border: 1px solid var(--tier); }
.lr .donor-ladder-label { top: 14px; font: 600 9.5px/1 var(--font-sans); letter-spacing: .12em; text-transform: uppercase; }
.lr .donor-ladder-step:last-child .donor-ladder-label { right: -2px; }
.lr-donor-split { display: grid; gap: 12px; align-items: start; }
@media (min-width: 1100px) { .lr-donor-split { grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); } }
.lr .table th.is-huidig, .lr .table td.is-huidig { background: color-mix(in oklab, var(--color-ink) 4%, transparent); }
.lr-keus { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 8px 6px; border: 1px solid var(--color-line); border-radius: var(--radius-ui); cursor: pointer; text-align: center; font-size: 12px; color: var(--color-muted); }
.lr-keus b { font: 600 18px/1 var(--font-kop); color: var(--color-ink); }
.lr-keus:hover { border-color: var(--color-line-strong); }
.lr-keus:has(input:checked) { border-color: var(--color-ink); box-shadow: inset 0 0 0 1px var(--color-ink); }
.lr-keus:has(input:focus-visible) { outline: 2px solid var(--color-ink); outline-offset: 1px; }
.lr-betaalvak { padding: 12px; border: 1px solid var(--color-line); border-radius: var(--radius-ui); background: #fffdf8; }
.lr .havana-total { gap: 12px; padding: 10px 12px; border: 1px solid var(--color-line); border-top: 2px solid var(--color-brass); background: none; }
.lr-getal-kop.text-\[30px\] { font-size: 30px; }
.lr-getal-kop.text-\[24px\] { font-size: 24px; }
.lr-getal-kop.text-\[22px\] { font-size: 22px; }
.lr-getal-kop.\!text-\[15px\] { font-size: 15px; }
.lr .lr-stap { min-height: 28px; padding: 0 9px; letter-spacing: .08em; }
.lr .lr-stap[aria-pressed="true"] { background: var(--color-ink); color: var(--color-card); }
.lr-vink { accent-color: var(--color-ink); }
.lr .bank-range { accent-color: var(--color-ink); }

/* Klikopdracht: stembussen als rijen met drie omlijnde keuzes, de kraam als rijen. */
.lr .vote-row { padding: 8px 16px; border-top: 1px solid var(--color-line); }
.lr .vote-row.is-done { opacity: .6; }
.lr .vote-picks { gap: 6px; margin-top: 6px; }
.lr .vote-pick { padding: 5px 4px; border-color: var(--color-line-strong); background: transparent; }
.lr .vote-pick-amount { font: 600 15px/1.1 var(--font-kop); }
.lr .vote-pick-kind { font: 600 9px/1.2 var(--font-sans); letter-spacing: .12em; text-transform: uppercase; }
.lr .vote-pick.is-cash { border-color: var(--color-line-strong); }
.lr .vote-pick.is-cash .vote-pick-amount { color: var(--color-money); }
.lr .vote-pick:not(:disabled):hover { border-color: var(--color-ink); background: transparent; transform: none; box-shadow: inset 0 0 0 1px var(--color-ink); }
.lr .vote-shop { display: grid; flex-direction: initial; padding: 7px 0; border: 0; border-radius: 0; background: none; text-align: left; }
.lr-kraam > li { border-bottom: 1px solid var(--color-line); }
.lr-kraam > li:last-child { border-bottom: 0; }
.lr-kraam .lr-rij > img { width: 30px; height: 30px; }
@media (min-width: 900px) { .lr-kraam { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; } .lr-kraam > li:nth-last-child(2):nth-child(odd) { border-bottom: 0; } }
.lr-rij.lr-rij-s { padding: 5px 0; }

/* Te doen, dagelijkse beloning, eerste stappen, e-mail bevestigen
   ========================================================================== */
.lr .todo-row { padding: 8px 0; border-top: 0; font-size: 13px; }
.lr .todo-row:hover { background: none; }
.lr.app-bonus { background: transparent; }
.lr .app-bonus-row { padding: 8px 0; border: 0; border-bottom: 1px solid var(--color-line); border-radius: 0; background: none; }
.lr .app-bonus-row:last-child { border-bottom: 0; }
.lr .app-bonus-icon { width: 34px; height: 34px; border: 1px solid var(--color-line); background: none; color: var(--color-muted); }
.lr .app-bonus-row.is-done { border-color: var(--color-line); }
.lr .app-bonus-row.is-done .app-bonus-icon { border-color: var(--color-success); background: none; }
.lr .app-bonus-amount { padding: 2px 5px; border: 1px solid currentColor; background: none; font: 700 9px/1 var(--font-sans); letter-spacing: .08em; }
.lr .app-bonus-amount:not(.text-money) { color: var(--color-brass); }
@media (min-width: 900px) { .lr-stappen { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; } .lr-stappen > li:nth-last-child(2):nth-child(odd) { border-bottom: 0; } }

/* Dagelijkse beloning als scheurkalender in velijn: haarlijnen, de dag in EB Garamond, de brief als inkten knop. */
.lr .daily-cal { gap: 6px; max-width: 30rem; }
.lr .daily-page { border-radius: var(--radius-ui); background: transparent; box-shadow: none; }
.lr .daily-page::before { content: none; }
.lr .daily-page-head { min-height: 0; padding: 5px 0 4px; border-bottom: 1px solid var(--color-line); background: none; color: var(--color-muted); font: 600 8.5px/1 var(--font-sans); letter-spacing: .14em; }
.lr .daily-page-num { padding: 6px 0 2px; font: 600 22px/1 var(--font-kop); font-variant-numeric: lining-nums; }
.lr .daily-page-what { font-size: 11px; }
.lr .daily-page.is-claimed, .lr .daily-page.is-future, .lr .daily-page.is-before { filter: none; }
.lr .daily-page.is-claimed .daily-page-head { background: none; color: var(--color-success); }
.lr .daily-page.is-missed { background: none; }
.lr .daily-page-ribbon { background: var(--color-accent); font: 700 8px/1.4 var(--font-sans); letter-spacing: .14em; }
.lr .daily-page.is-today, .lr .daily-page.is-opened { border-color: var(--color-ink); box-shadow: inset 0 0 0 1px var(--color-ink); }
.lr .daily-page.is-today .daily-page-head, .lr .daily-page.is-opened .daily-page-head { background: var(--color-ink); border-color: var(--color-ink); color: var(--color-card); }
.lr .daily-page.is-today .daily-page-num, .lr .daily-page.is-opened .daily-page-num { font-size: 28px; }
.lr .daily-envelope { width: 54px; height: 36px; margin: 2px auto 8px; border-radius: var(--radius-ui); background: var(--color-ink); color: var(--color-card); box-shadow: none; }
.lr .daily-envelope.is-button:hover { box-shadow: none; background: #000; }
.lr .daily-envelope.is-open { background: none; color: var(--color-brass); }
.lr .daily-page.is-gold { border-top: 2px solid var(--color-brass); }
.lr .daily-page.is-gold .daily-envelope:not(.is-open) { background: var(--color-brass); box-shadow: none; }
.lr .daily-page.is-future.is-gold { border-color: var(--color-brass); }
.lr.daily.daily-compact { border-color: transparent; }

/* Gebeurtenissen en de kalender
   ========================================================================== */
.lr-events { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.lr .event-card { --lr-kleur: var(--color-accent); background: none; border-color: var(--color-line); border-top: 2px solid var(--color-accent); }
.lr-oorlog { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.lr .war-card { background: none; }
.lr .war-card.is-mine { border-top-color: var(--color-news); }
.lr .war-card.is-captured { border-top-color: var(--color-success); }
.lr-voort.slecht > i { background: var(--color-danger); }
.lr-gewesten { display: flex; gap: 16px; overflow-x: auto; margin: 0 16px; border-bottom: 1px solid var(--color-line); scrollbar-width: none; }
.lr-gewesten a { flex: none; padding: 9px 0 7px; border-bottom: 2px solid transparent; margin-bottom: -1px; font: 700 9.5px/1 var(--font-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--color-faint); }
.lr-gewesten a:hover { color: var(--color-ink); }
.lr-gewesten a.is-aan { color: var(--color-ink); border-bottom-color: var(--color-accent); }
.lr-rij.zonder-eind { grid-template-columns: 34px minmax(0, 1fr); align-items: start; }
.lr-weekdagen { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 4px; padding: 4px 0; text-align: center; font: 600 9px/1 var(--font-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--color-faint); }
.lr .cal-day { min-height: 2.4rem; padding: 3px 5px; background: none; }
.lr .cal-day.has-event { background: color-mix(in oklab, var(--color-ink) 3%, transparent); }
.lr .cal-day.is-today { border-color: var(--color-ink); box-shadow: inset 0 0 0 1px var(--color-ink); }
.lr .cal-day.is-happy { border-color: var(--color-brass); background: color-mix(in oklab, var(--color-brass) 10%, transparent); color: var(--color-ink); font-weight: 600; box-shadow: none; }
.lr .cal-day.is-happy.is-today { border-color: var(--color-ink); }
.lr-streep { display: block; height: 3px; }
.lr-tint-amber { background: var(--color-brass); }
.lr-tint-karmijn { background: var(--color-accent); }
.lr-tint-inkt { background: var(--color-ink); }
.lr-tint-salie { background: var(--color-success); }
.lr-tint-violet { background: var(--color-news); }
.lr-tint-blauw { background: #1f5f86; }
.lr-tint-roest { background: #b4570f; }
.lr-getal-kop.\!text-\[14px\] { font-size: 14px; }
.lr-naam.\!text-\[18px\] { font-size: 18px; }
.lr-kap.\!text-accent { color: var(--color-accent); }
.lr-rij-tekst small.\!text-ink { color: var(--color-ink); }
.lr-rijen > li:last-child { border-bottom: 0; }

/* Activiteiten: plaatsen als rijen met het nummer in EB Garamond, prijzen als drie vakjes. */
.lr-plaats { grid-template-columns: 22px minmax(0, 1fr) auto; }
.lr-plaats.is-ik { background: color-mix(in oklab, var(--color-accent) 6%, transparent); }
.lr .medal-silver { color: #6f7b80; }
.lr .medal-bronze { color: #8c5a2b; }
.lr-prijs { padding: 5px 4px; border: 1px solid var(--color-line); border-radius: var(--radius-ui); text-align: center; }
.lr-prijs .text-money { font: 600 13.5px/1.2 var(--font-kop); }
.lr-leeg.\!py-2\.5 { padding-top: 10px; padding-bottom: 10px; }
.lr-leeg.\!text-\[14px\] { font-size: 14px; }

/* Alles in het Rijk (klassen uit kaart.css en lotl.css; die laden na dit bestand, dus met .cs-alles ervoor): elke plek met een inkten lijn onder de kop. */
.cs-alles .cs-alles-plek h2 { padding-bottom: 6px; border-bottom: 1px solid var(--color-ink); }
.cs-alles .cs-alles-toon { font: 700 8.5px/1 var(--font-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--color-faint); }
.cs-alles .cs-alles-toon:hover { color: var(--color-ink); }
.cs-alles .cs-alles-plek li + li { border-top: 1px solid color-mix(in oklab, var(--color-line) 60%, transparent); }
.cs-alles .cs-alles-plek li a, .cs-alles .cs-alles-uitlog { border-radius: 0; }
.cs-alles .cs-alles-plek li a:hover, .cs-alles .cs-alles-uitlog:hover { background: color-mix(in oklab, var(--color-ink) 4%, transparent); }
.cs-alles .cs-alles-plek li em { font: 700 8.5px/1 var(--font-sans); letter-spacing: .12em; text-transform: uppercase; }
.cs-alles .cs-alles-plek li em:not(.is-klaar) { font: 600 13px/1 var(--font-kop); letter-spacing: 0; text-transform: none; font-variant-numeric: lining-nums tabular-nums; }
.cs-alles .cs-alles-uitlog span { font: 500 15px/1.2 var(--font-kop); }
.lr-instelrij { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 9px 2px; border-top: 1px solid var(--color-line); }

/* Vastleggen, verbannen */
.lr-ban { padding: 22px 18px; border: 1px solid var(--color-line); border-radius: var(--radius-card); background: var(--color-card); box-shadow: inset 0 0 0 3px var(--color-card), inset 0 0 0 4px var(--color-line); text-align: center; color: var(--color-ink); }
.lr-ban .lr-ico { border-color: currentColor; }
.lr-naam.\!text-\[22px\] { font-size: 22px; }
.lr-ban .lr-ico { color: var(--color-danger); }

/* Informatie
   ========================================================================== */
.lr-info { border-top: 1px solid var(--color-ink); }
.lr-info > li { border-bottom: 1px solid var(--color-line); }
.lr-info .lr-rij { border-bottom: 0; }
@media (min-width: 900px) { .lr-info { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; } .lr-info > li:nth-last-child(2):nth-child(odd) { border-bottom: 0; } }
.lr-ronde .lr-feit b { font-size: 20px; }
.lr-feit b.\!whitespace-normal { white-space: normal; font-size: 16px; }
.lr-tekst { font-size: 13.5px; line-height: 1.6; color: var(--color-ink); }
.lr-tekst h2, .lr-tekst h3, .lr-tekst b, .lr-tekst strong { font-family: var(--font-kop); }
.lr-faq details + details { border-top: 1px solid var(--color-line); }
.lr-vraag { display: flex; align-items: center; gap: 10px; padding: 9px 0; list-style: none; cursor: pointer; font: 600 15px/1.25 var(--font-kop); color: var(--color-ink); }
.lr-vraag::-webkit-details-marker { display: none; }
.lr-vraag:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.lr-drie { display: grid; gap: 12px; align-items: start; }
@media (min-width: 760px) { .lr-drie { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1400px) { .lr-drie { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.lr-rij > img.\!object-cover { object-fit: cover; border-radius: var(--radius-ui); }
.lr-rij-eind.lr-status { gap: 6px; font: 400 11.5px/1.2 var(--font-sans); }
.lr-uitleg.\!text-warning { color: var(--color-warning); }
.lr .stamp { border-radius: var(--radius-ui); }
.lr-donor-split > *, .lr-twee > *, .lr-drie > * { min-width: 0; }
@media (max-width: 640px) {
  .lr .donor-ladder { margin-inline: 4px; }
  .lr .donor-ladder-label { font-size: 8.5px; letter-spacing: .08em; }
  .lr .donor-ladder-fill + .donor-ladder-step .donor-ladder-label { left: -4px; transform: none; }
}
