/* Zweck: Fahrplan, Wartezeiten und mobile Phasenleiste | Schicht: Content | Seiten: /heiraten/ */
.marriage-progress-rail { min-width: 0; display: grid; gap: .7rem; }
.marriage-roadmap,.marriage-roadmap-extra { padding: .8rem; border: 1px solid var(--book-line); border-radius: 10px; background: var(--amg-paper); min-width: 0; }
.marriage-guide .marriage-roadmap-title { font-size: inherit; text-transform: uppercase; letter-spacing: .035em; margin: 0 0 .75rem; }
.marriage-roadmap-phase { padding: .5rem .65rem; margin-bottom: .4rem; border: 1px solid var(--marriage-open-border); border-radius: 10px; background: var(--marriage-open-bg); color: var(--marriage-status-ink); }
.marriage-roadmap-phase:last-child { margin-bottom: 0; }
.marriage-roadmap-phase[data-status="done"] { background: var(--marriage-done-bg); border-color: var(--marriage-done-border); }
.marriage-roadmap-phase[data-status="working"] { background: var(--marriage-working-bg); border: 3px solid var(--marriage-working-border); }
.marriage-roadmap-phase[data-clarification="true"] { border-color: var(--amg-orange-copy); }
.marriage-guide .marriage-roadmap :is(.marriage-roadmap-current,.marriage-roadmap-warning) { margin: 0 0 .25rem; font-weight: 750; text-transform: uppercase; }
.marriage-roadmap-link { display: block; width: 100%; border: 0; padding: 0; min-height: 44px; background: transparent; color: inherit; font: inherit; line-height: 1.5; font-weight: 650; text-align: left; cursor: pointer; overflow-wrap: anywhere; }
.marriage-roadmap-link:hover { text-decoration: underline; }
.marriage-guide .marriage-roadmap p.marriage-roadmap-meta { margin: .3rem 0 0; line-height: 1.5; }
.marriage-guide .marriage-roadmap-tasks { list-style: none; margin: .4rem 0 0; padding: 0; }
.marriage-roadmap-tasks>li { display: flex; align-items: baseline; gap: .5rem; margin: .15rem 0; line-height: 1.5; }
.marriage-roadmap-tasks .marriage-roadmap-link { font-weight: 400; }
.marriage-roadmap-extra ul { margin: 0; padding-left: 1.25rem; }
.marriage-roadmap-extra li+li { margin-top: .5rem; }
.marriage-roadmap-extra .marriage-roadmap-link { font-weight: 400; }
.marriage-roadmap-storage { min-width: 0; }
.marriage-storage { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; }
.marriage-storage>p { flex: 1 1 20rem; margin: 0; }
.marriage-storage-actions { display: flex; flex-wrap: wrap; gap: .6rem; }
.marriage-storage[data-state="error"]>p { font-weight: 650; }
.marriage-phase-bar { display: none; }
@media(max-width:1200px) {
  .marriage-progress-rail { grid-column: 1/-1; }
}
@media(max-width:760px) {
  .marriage-phase-bar {
    position: sticky;
    z-index: 4;
    top: 62px;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    padding: 0;
    border-bottom: 1px solid var(--book-line);
    background: var(--amg-paper);
    color: var(--book-ink);
  }
  .marriage-phase-bar ol { display: flex; justify-content: space-between; gap: .3rem; width: 100%; padding: 0; margin: 0; list-style: none; }
  .marriage-phase-bar button { display: grid; place-items: center; box-sizing: border-box; border: 2px solid var(--marriage-open-border); border-radius: 50%; width: 44px; height: 44px; background: var(--marriage-open-bg); color: var(--marriage-status-ink); font: inherit; font-weight: 750; cursor: pointer; }
  .marriage-phase-bar button[data-status="done"] { background: var(--marriage-done-bg); border-color: var(--marriage-done-border); }
  .marriage-phase-bar button[data-status="working"] { background: var(--marriage-working-bg); border: 3px solid var(--marriage-working-border); }
  .marriage-phase-bar p { position: absolute; width: 1px; height: 1px; margin: 0; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .marriage-progress-rail .marriage-roadmap { display: none; }
}
@media print {
  .marriage-phase-bar { display: none; }
}
