/* Zweck: Aktuelle Phase und geöffnete Aufgabe | Schicht: Content | Seiten: /heiraten/ */
.marriage-plan-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.marriage-plan-header>div { min-width: 0; }
.marriage-plan-header h2 { margin: 0 0 .65rem; }
.marriage-plan-header p:last-child { margin-bottom: .5rem; }
.marriage-guide .marriage-plan-menu { position: relative; flex: 0 0 auto; margin: 0; padding: 0; border: 0; }
.marriage-plan-menu>summary { border: 2px solid var(--amg-teal); border-radius: 8px; padding: .5rem .75rem; color: var(--book-ink); white-space: nowrap; list-style: none; }
.marriage-plan-menu>summary::-webkit-details-marker { display: none; }
.marriage-guide .marriage-plan-menu[open]>summary { margin-bottom: 0; }
.marriage-plan-menu-items {
  position: absolute;
  z-index: 5;
  right: 0;
  top: calc(100% + .4rem);
  width: min(19rem,calc(100vw - 4rem));
  padding: .4rem;
  border: 1px solid var(--book-line);
  border-radius: 10px;
  background: var(--amg-paper);
  box-shadow: var(--book-soft-shadow);
}
.marriage-plan-menu-items>button { display: block; width: 100%; border: 0; background: transparent; color: var(--book-ink); padding: .65rem; min-height: 44px; text-align: left; font: inherit; cursor: pointer; }
.marriage-plan-menu-items>button:hover { background: var(--amg-mint-soft); }
.marriage-plan-menu-items>[data-plan-menu-action="restart"] { color: var(--amg-orange-copy); border-top: 1px solid var(--book-line); margin-top: .35rem; }
.marriage-next-task { margin: 1rem 0; padding: 1rem; border: 2px solid var(--marriage-working-border); border-radius: 10px; background: var(--marriage-working-bg); color: var(--marriage-status-ink); }
.marriage-next-task>p { margin: .4rem 0 .65rem; }
.marriage-guide .marriage-next-task .marriage-eyebrow { color: var(--marriage-status-ink); }
.marriage-next-task>strong { display: block; }
.marriage-next-actions { display: flex; align-items: flex-start; gap: .8rem; flex-wrap: wrap; }
.marriage-guide .marriage-parallel { margin: 0; padding: .6rem 0; border: 0; }
.marriage-parallel>.marriage-button { display: block; margin: .5rem 0; color: var(--marriage-status-ink)!important; }
.marriage-phase-checklist { min-width: 0; }
.marriage-guide .marriage-task-row { margin: .55rem 0; padding: 0; border: 1px solid var(--book-line); border-radius: 9px; min-width: 0; background: var(--amg-paper); }
.marriage-task-row>summary { display: flex; align-items: center; gap: .65rem; padding: .7rem .8rem; min-height: 48px; box-sizing: border-box; list-style: none; font-weight: 500; }
.marriage-task-row>summary::-webkit-details-marker { display: none; }
.marriage-task-row-title { min-width: 0; overflow-wrap: anywhere; }
.marriage-task-row-meta { margin-left: auto; text-align: right; color: var(--book-muted); flex: 0 1 35%; min-width: 9rem; }
.marriage-guide .marriage-task-row[open] { border: 2px solid var(--amg-teal); }
.marriage-guide .marriage-task-row[open]>summary { margin-bottom: 0; border-bottom: 1px solid var(--book-line); font-weight: 700; }
.marriage-status-dot { display: inline-block; width: .7rem; height: .7rem; box-sizing: border-box; border-radius: 50%; border: 2px solid var(--marriage-open-border); background: var(--marriage-open-bg); flex: 0 0 .7rem; }
[data-status="working"]>summary>.marriage-status-dot,[data-status="working"]>.marriage-status-dot { background: var(--marriage-working-border); border-color: var(--marriage-working-border); }
[data-status="done"]>summary>.marriage-status-dot,[data-status="done"]>.marriage-status-dot { background: var(--marriage-done-border); border-color: var(--marriage-done-border); }
.marriage-step--interactive { padding: 1rem; min-width: 0; scroll-margin-top: 82px; color: var(--book-ink); }
.marriage-step--interactive>h3 { margin: 0 0 .5rem; overflow-wrap: anywhere; scroll-margin-top: 82px; }
.marriage-task-section { padding: 1rem 0; border-top: 1px solid var(--book-line); min-width: 0; }
.marriage-task-section>p:last-child { margin-bottom: 0; }
.marriage-task-text { white-space: pre-line; overflow-wrap: anywhere; margin-top: 0; }
.marriage-meta { display: grid; grid-template-columns: 4rem minmax(0,1fr); gap: .35rem .8rem; }
.marriage-meta dt { font-weight: 750; }
.marriage-meta dd { margin: 0; overflow-wrap: anywhere; }
.marriage-task-completion { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; margin-top: .8rem; padding-top: 1rem; border-top: 1px solid var(--book-line); }
.marriage-task-completion>p { margin: 0; flex: 1 1 20rem; }
.marriage-guide .marriage-phase-fold { margin: .65rem 0; padding: .8rem 1rem; background: var(--marriage-open-bg); border-color: var(--marriage-open-border); color: var(--marriage-status-ink); }
.marriage-guide .marriage-phase-fold[data-status="done"] { background: var(--marriage-done-bg); border-color: var(--marriage-done-border); }
.marriage-phase-fold>summary { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: .5rem 1rem; }
.marriage-phase-fold>summary>span { font-weight: 400; }
.marriage-phase-fold>.marriage-button { margin: .3rem .5rem .3rem 0; color: var(--marriage-status-ink)!important; }
.marriage-phase-fold .marriage-task-row { color: var(--book-ink); }
.marriage-list-confirmations>summary { scroll-margin-top: 82px; }
.marriage-plan-advisories { overflow-wrap: anywhere; }
.marriage-document-planning { min-width: 0; overflow-wrap: anywhere; background: var(--amg-paper); color: var(--book-ink); }
.marriage-document-planning>fieldset { margin: 1rem 0; }
.marriage-planning-metrics { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: .3rem 1rem; margin: .8rem 0 1rem; }
.marriage-planning-metrics dt { font-weight: 650; }
.marriage-planning-metrics dd { margin: 0; }
.marriage-planning-document>.marriage-person-fields { margin: 1rem 0; }
.marriage-planning-status { padding: .75rem; border-left: 4px solid var(--marriage-working-border); background: var(--marriage-working-bg); color: var(--marriage-status-ink); font-weight: 650; }
.marriage-planning-status[data-status="ready"] { border-color: var(--marriage-done-border); background: var(--marriage-done-bg); }
.marriage-planning-missing:empty { display: none; }
@media(max-width:860px) {
  .marriage-step--interactive,.marriage-step--interactive>h3,.marriage-list-confirmations>summary { scroll-margin-top: 74px; }
}
@media(max-width:760px) {
  .marriage-step--interactive>h3 { scroll-margin-top: calc(74px + 44px); }
}
@media(max-width:600px) {
  .marriage-plan-header { gap: .5rem; }
  .marriage-plan-menu>summary { padding: .4rem .5rem; }
  .marriage-task-row>summary { flex-wrap: wrap; }
  .marriage-task-row-title { flex: 1; }
  .marriage-task-row-meta { flex: 1 1 100%; min-width: 0; text-align: left; margin-left: 1.35rem; }
  .marriage-step--interactive { padding: .8rem; }
  .marriage-task-completion { flex-direction: column; align-items: stretch; }
  .marriage-task-completion>p { flex-basis: auto; }
  .marriage-meta,.marriage-planning-metrics { grid-template-columns: minmax(0,1fr); }
  .marriage-meta dd,.marriage-planning-metrics dd { margin-bottom: .5rem; }
}
