/* CLOSE-4C.2 — the Accommodation Partner Agreement surfaces: the public
   standalone page, the Partner acceptance page, and the Admin
   record/audit page. Reuses workspace.css's own tokens (--pine/--coral/
   --sand/--line/--ink/--muted/--sans) rather than a competing design
   system — deliberately plain: readable content column, a restrained
   metadata line, no editorial hero, no cards around every paragraph. */
.pa-skip { position: fixed; left: 1rem; top: -5rem; z-index: 99; background: var(--pine); color: #fff; padding: .8rem 1rem; }
.pa-skip:focus { top: 1rem; }
.pa-header { height: 64px; display: flex; align-items: center; gap: 1rem; padding: 0 clamp(1.2rem, 5vw, 3rem); border-bottom: 1px solid var(--line); background: var(--paper, #fff); }
.pa-brand { font-weight: 800; color: var(--pine); font-size: 1.2rem; }
.pa-header-label { color: var(--muted); font-size: .88rem; }
.pa-page { max-width: 100%; }
.pa-page-header { max-width: 760px; margin: 0 auto; padding: clamp(1.6rem, 4vw, 3rem) clamp(1.2rem, 5vw, 3rem) 0; }
.pa-page-header h1 { font-size: clamp(1.5rem, 1.2rem + 1.1vw, 2.1rem); font-weight: 700; color: var(--pine); margin: 0 0 .5rem; }
.pa-meta { color: var(--muted); font-size: .85rem; margin: 0 0 1rem; }
.pa-intro { color: var(--ink); font-size: .95rem; line-height: 1.6; max-width: 640px; }
.pa-content { max-width: 760px; margin: 0 auto; padding: 1rem clamp(1.2rem, 5vw, 3rem) clamp(2.5rem, 6vw, 4rem); font-size: .95rem; line-height: 1.7; color: var(--ink); }
.pa-content h2 { font-family: var(--sans); font-size: 1.05rem; font-weight: 700; color: var(--pine); margin: 2rem 0 .6rem; }
.pa-content h2:first-child { margin-top: 0; }
.pa-content p { margin: 0 0 1rem; }

/* Partner/Admin acceptance surfaces — layered on top of the shared
   .ws-card/.ws-header/.ws-form/.ws-button classes already established in
   workspace.css, not a parallel component system. */
.pa-status { display: inline-flex; align-items: center; gap: .4rem; padding: .3rem .7rem; border-radius: 99px; font-size: .82rem; font-weight: 650; }
.pa-status--current { background: #e6f4ea; color: #1e7a34; }
.pa-status--outdated { background: #fdeeea; color: var(--danger); }
.pa-status--none { background: var(--sand); color: var(--muted); }
.pa-schedule-table { width: 100%; border-collapse: collapse; font-size: .88rem; margin: .5rem 0 1rem; }
.pa-schedule-table th, .pa-schedule-table td { text-align: left; padding: .5rem .6rem; border-bottom: 1px solid var(--line); }
.pa-schedule-table th { color: var(--muted); font-weight: 600; width: 42%; }
.pa-history-table { width: 100%; border-collapse: collapse; font-size: .84rem; margin: .5rem 0; }
.pa-history-table th, .pa-history-table td { text-align: left; padding: .5rem .6rem; border-bottom: 1px solid var(--line); vertical-align: top; }
.pa-history-table th { color: var(--muted); font-weight: 600; }
.pa-agreement-scroll { max-height: 420px; overflow-y: auto; border: 1px solid var(--line); border-radius: 10px; padding: 1rem 1.2rem; background: var(--paper, #fff); margin: 1rem 0; }
.pa-agreement-scroll h2 { font-size: .95rem; }

@media (max-width: 600px) {
    .pa-schedule-table th, .pa-history-table th { width: auto; }
    .pa-agreement-scroll { max-height: 320px; }
}
