/* Private agenda extends the existing Notice palette and mobile sheets. */
.planning-sheet { width: min(580px, 100vw); }
.planning-sheet .sheet-inner { padding-bottom: max(28px, env(safe-area-inset-bottom)); }
.planning-sheet .close-dialog { min-width: 44px; min-height: 44px; }
.planning-help, .planning-empty, #planning-status { font-size: 14px; line-height: 1.65; color: var(--muted); margin: 16px 0 24px; }
#planning-status:empty { display: none; }
#planning-status { color: var(--ink); }
.planning-sheet fieldset { min-width: 0; padding: 0; margin: 24px 0 0; border: 0; }
.planning-sheet .field-label { font-size: 14px; }
.planning-sheet input, .planning-sheet select, .planning-sheet textarea { display: block; width: 100%; min-width: 0; min-height: 48px; font: 400 16px/1.5 Manrope, Arial, sans-serif; color: var(--ink); background: var(--white); border: 1px solid var(--line); border-radius: 8px; padding: 12px; margin-top: 8px; }
.planning-sheet textarea { min-height: 100px; }
.planning-sheet input::placeholder, .planning-sheet textarea::placeholder { color: var(--muted); opacity: 1; }
.planning-sheet .button { min-height: 48px; white-space: normal; }
.planning-sheet [type=submit] { width: 100%; }
.planning-section { margin: 32px 0; }
.planning-section h3 { font-size: 18px; line-height: 1.4; font-weight: 750; margin-bottom: 8px; }
.planning-section ol { list-style: none; padding: 0; margin: 0; }
.planning-item { border-top: 1px solid var(--line); padding: 20px 0; overflow-wrap: anywhere; }
.planning-item h4, .planning-item strong { font-size: 16px; line-height: 1.4; }
.planning-item p { line-height: 1.65; margin: 8px 0; font-size: 14px; white-space: pre-wrap; }
.planning-meta { color: var(--muted); font-size: 13px; line-height: 1.65; font-variant-numeric: tabular-nums; }
.planning-status { color: var(--accent-ink); font-weight: 700; font-size: 14px; font-variant-numeric: tabular-nums; }
.planning-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.planning-sheet :focus-visible { outline: 2px solid var(--focus); outline-offset: 3px; }
.planning-sheet :disabled { cursor: wait; }
@media (max-width: 600px) {
  .planning-actions .button { flex: 1 1 140px; }
  #planning-refresh { width: 100%; }
}
.planning-actions .text-button { min-height: 44px; padding-block: 10px; text-align: left; }
.navigation .nav-label { margin: 0; padding: 0; border-radius: 0; background: none; font: inherit; }
.navigation .nav-label-compact { display: none; }
/* Five account destinations stay inside the phone width, without hiding one. */
@media (max-width: 800px) {
  .header { height: auto; min-height: 112px; }
  .navigation { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); width: 100%; min-width: 0; gap: 0; }
  .navigation .nav-link { min-width: 0; min-height: 44px; white-space: nowrap; overflow-wrap: normal; font-size: 10px; line-height: 1.3; letter-spacing: normal; padding: 6px 0; }
  .navigation .nav-label-full { display: none; }
  .navigation .nav-label-compact { display: inline; }
  .navigation #account-button { font-size: 9px; }
  .navigation #mine-count, .navigation .planning-count { position: absolute; top: -8px; right: 0; margin: 0; }
}
