/* Elevens Hjem (2026-10-19, ombygget): én kolonne på højst 720 px, hvor alle sektioner flugter. 48 px mellem
   sektionerne, 8-grid indeni. Tre tekststørrelser: 28 / 16 / 13. Én accentfarve – kun til det, der kræver
   handling nu (sendt tilbage, frist inden for et døgn), og altid sammen med tekst eller "!", aldrig farve alene.
   "Næste"-kortet har radius 12 px efter briefen (undtaget fra style.css' skarpe-hjørner-regel).
   --pg-tokens giver lyst/mørkt tema. */

.home {
  --home-ink: var(--pg-ink, #1a1a18);
  --home-muted: var(--pg-muted, #6b6b66);
  --home-line: var(--pg-line, #e6e6e3);
  --home-lift: var(--pg-surface, #fff);
  --home-hover: var(--pg-soft, #f3f3f1);
  --home-accent: #a33a22;
  --home-big: 28px;
  --home-body: 16px;
  --home-small: 13px;
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  color: var(--home-ink);
  font-size: var(--home-body);
}
:root[data-theme="dark"] .home { --home-accent: #e58a6c; }

.layout > main.app.home-page { display: block; }
.layout > main.app.home-page > * + * { margin-top: 0; }
.home-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

/* 1. Topbjælke: én linje, højst 60 px */
.home-top { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; min-height: 40px; max-height: 60px; }
.home-hello { margin: 0; font-size: var(--home-big); font-weight: 600; letter-spacing: -0.01em; line-height: 1.2; }
.home-date { margin: 0; font-size: var(--home-small); color: var(--home-muted); white-space: nowrap; }

/* Sektioner og deres små overskrifter (ingen streger) */
.home-sec { margin-top: 48px; }
.home-top + .home-sec { margin-top: 32px; }
/* .layout > main.app … :is(h1–h4) i style.css farver overskrifter sorte; sektionsoverskrifterne skal være grå */
.layout > main.app .home .home-kicker {
  margin: 0 0 16px; font-size: var(--home-small); font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--home-muted);
}

/* 2. Næste */
.layout > main.app .home .home-next { border-radius: 12px; }
.home-next { padding: 32px; background: var(--home-lift); border: 1px solid var(--home-line); }
.home-status {
  display: flex; align-items: center; gap: 8px; margin: 0 0 8px;
  font-size: var(--home-small); font-weight: 600; color: var(--home-muted);
}
.home-status.is-action { color: var(--home-accent); }
.home-flag {
  display: inline-grid; place-items: center; width: 16px; height: 16px;
  background: var(--home-accent); color: var(--home-lift); font-size: var(--home-small); font-weight: 700; line-height: 1;
}
.layout > main.app .home .home-flag { border-radius: 50%; }
.home-title { margin: 0; font-size: var(--home-big); font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; }
.home-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 8px 0 0; font-size: var(--home-small); color: var(--home-muted); }
.home-tag {
  display: inline-block; padding: 2px 8px; border: 1px solid var(--home-line);
  font-size: var(--home-small); font-weight: 500; color: var(--home-ink); white-space: nowrap;
}

.home-quote { margin: 24px 0 0; padding: 0 0 0 16px; border-left: 2px solid var(--home-line); }
.home-quote figcaption { font-size: var(--home-small); color: var(--home-muted); }
.home-quote blockquote {
  margin: 8px 0 0; font-size: var(--home-body); line-height: 1.5; white-space: pre-line;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.home-quote blockquote.is-open { display: block; }
.home-more { margin-top: 8px; }

.home-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin-top: 24px; }
.home-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 24px;
  background: var(--home-ink); color: var(--home-lift); font-size: var(--home-body); font-weight: 600; text-decoration: none;
}
.layout > main.app .home .home-btn { border-radius: 8px; }
.home-btn:hover { opacity: 0.88; }
.home-textlink {
  padding: 0; border: 0; background: none; cursor: pointer; font: inherit;
  font-size: var(--home-body); font-weight: 500; color: var(--home-ink);
  text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px;
}
.home-textlink:hover { text-decoration-thickness: 2px; }
:is(.home-btn, .home-textlink, .home-row):focus-visible { outline: 2px solid var(--home-ink); outline-offset: 2px; }

/* 3. Kommende og 4. Nyt: rækker med tynde skillelinjer, ingen kort */
.home-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--home-line); }
.home-row {
  display: grid; grid-template-columns: minmax(0, 1fr) auto 112px 96px; align-items: center; gap: 16px;
  min-height: 56px; padding: 8px 8px; border-bottom: 1px solid var(--home-line);
  color: var(--home-ink); text-decoration: none; transition: background-color 0.15s ease;
}
.home-row:hover { background: var(--home-hover); }
.home-row__title { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 500; }
.home-row__due, .home-row__status { font-size: var(--home-small); color: var(--home-muted); white-space: nowrap; }
.home-row__status { text-align: right; }
.home-row.is-action .home-row__due { color: var(--home-accent); font-weight: 600; }
.home-row--news { grid-template-columns: 20px minmax(0, 1fr) auto; }
.home-icon { width: 20px; height: 20px; fill: none; stroke: var(--home-muted); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.home-all { display: inline-block; margin-top: 16px; font-size: var(--home-small); }
.home-error { margin-top: 32px; color: var(--home-muted); }

/* Skelet: samme mål som den færdige side */
.home-next.is-loading { display: grid; gap: 16px; }
.sk { display: block; height: 16px; background: var(--home-hover); animation: home-pulse 1.2s ease-in-out infinite alternate; }
.sk--s { width: 30%; height: 13px; }
.sk--l { width: 70%; height: 28px; }
.sk--m { width: 45%; height: 13px; }
.sk--btn { width: 120px; height: 48px; margin-top: 8px; }
.home-list.is-loading li { padding: 20px 8px; border-bottom: 1px solid var(--home-line); }
.sk--row { width: 100%; }
@keyframes home-pulse { from { opacity: 1; } to { opacity: 0.45; } }

@media (max-width: 639px) {
  .home-next { padding: 24px; }
  .home-top { flex-direction: column; gap: 0; max-height: none; }
  .home-actions { flex-direction: column; align-items: stretch; text-align: center; }
  .home-btn { width: 100%; }
  .home-row { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "title status" "meta due"; gap: 4px 16px; padding: 12px 8px; }
  .home-row__title { grid-area: title; white-space: normal; }
  .home-row .home-tag { grid-area: meta; justify-self: start; }
  .home-row__due { grid-area: due; text-align: right; }
  .home-row__status { grid-area: status; }
  .home-row--news { grid-template-columns: 20px minmax(0, 1fr); grid-template-areas: "icon title" "icon due"; }
  .home-row--news .home-icon { grid-area: icon; }
  .home-row--news .home-row__due { text-align: left; }
}
@media (prefers-reduced-motion: reduce) { .sk { animation: none; } .home-row { transition: none; } }
