/* Hopping shared article palette · 2026-08-14 */
:root{--hp-ink:#19313d;--hp-muted:#52616f;--hp-brand:#0b6380;--hp-brand-soft:#e9f5f8;--hp-panel:#f4f7f9;--hp-card:#fff;--hp-border:#d8e1e8;--hp-warn:#fff7ed;--hp-warn-border:#c76b3d;--hp-hold:#fff8db;--hp-hold-border:#a76f00;--hp-closed:#fff0ee;--hp-closed-border:#b53a2d}
.hp-rr{--ink:var(--hp-ink);--muted:var(--hp-muted);--panel:var(--hp-panel);--card:var(--hp-card);--border:var(--hp-border);--alert:var(--hp-warn);--alert-border:var(--hp-warn-border);--link:var(--hp-brand);color:var(--ink);line-height:1.75}.hp-rr a{color:var(--link);text-decoration:underline;text-underline-offset:2px}.hp-rr__alert,.hp-rr__box{margin:24px 0;padding:18px;border-radius:14px}.hp-rr__alert{background:var(--alert);border:1px solid #f0c79a;border-left:6px solid var(--alert-border)}.hp-rr__box{background:var(--panel);border:1px solid var(--border)}.hp-rr__badge{display:inline-block;padding:3px 9px;border-radius:999px;background:#a94e24;color:#fff;font-size:.82rem;font-weight:800}.hp-rr li{margin:.45em 0}.hp-rr__sources{font-size:.92rem;color:var(--muted)}[data-hp-theme="dark"] .hp-rr,[data-theme="dark"] .hp-rr{--ink:#e8f0f3;--muted:#b8c5cb;--panel:#17252d;--card:#111e25;--border:#38505b;--alert:#33251a;--alert-border:#f0a05c;--link:#8ed8f0}[data-hp-reader="on"] .hp-rr{max-width:760px;margin-inline:auto}@media(prefers-color-scheme:dark){html:not([data-hp-theme="light"]):not([data-theme="light"]) .hp-rr{--ink:#e8f0f3;--muted:#b8c5cb;--panel:#17252d;--card:#111e25;--border:#38505b;--alert:#33251a;--alert-border:#f0a05c;--link:#8ed8f0}}@media(max-width:640px){.hp-rr__alert,.hp-rr__box{padding:15px;border-radius:11px}}
.hp-rr__section-title{margin:.65rem 0 .35rem}.hp-rr__flush{margin:0}.hp-rr__first-title{margin-top:0}
.hp-calendar{--ink:var(--hp-ink);--muted:var(--hp-muted);--brand:var(--hp-brand);--brand-soft:var(--hp-brand-soft);--panel:var(--hp-panel);--card:var(--hp-card);--border:var(--hp-border);--warn:var(--hp-warn);--warn-border:var(--hp-warn-border);--hold:var(--hp-hold);--hold-border:var(--hp-hold-border);--closed:var(--hp-closed);--closed-border:var(--hp-closed-border);color:var(--ink);background:var(--card);padding:clamp(18px,4vw,36px);border-radius:18px;line-height:1.75}

.hp-calendar *{box-sizing:border-box}.hp-calendar a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}.hp-calendar__lead{font-size:1.08rem}.hp-calendar__figure{margin:24px 0 28px}.hp-calendar__figure img{display:block;width:100%;height:auto;border-radius:14px}.hp-calendar__figure figcaption,.hp-calendar__fine{font-size:.86rem;line-height:1.55;color:var(--muted)}

.hp-calendar__legend,.hp-calendar__toc{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}.hp-calendar__toc a{display:inline-flex;align-items:center;min-height:42px;padding:7px 12px;border:1px solid var(--border);border-radius:999px;background:var(--card);text-decoration:none;font-weight:750}

.hp-calendar__badge{display:inline-flex;align-items:center;width:max-content;padding:3px 9px;border-radius:999px;font-size:.78rem;font-weight:850;letter-spacing:.01em}.hp-calendar__badge--official{background:#d9f1e4;color:#175b37}.hp-calendar__badge--personal{background:#e8eef9;color:#294d80}.hp-calendar__badge--provider{background:#f1e8fa;color:#65418a}.hp-calendar__badge--life{background:#e9f5f8;color:#15586d}.hp-calendar__badge--hold{background:#fff0bd;color:#735000}.hp-calendar__badge--closed{background:#f8d8d2;color:#83281e}

.hp-calendar__notice,.hp-calendar__hold,.hp-calendar__closed,.hp-calendar__panel{margin:24px 0;padding:18px;border-radius:14px}.hp-calendar__notice{background:var(--warn);border:1px solid #f0c79a;border-left:6px solid var(--warn-border)}.hp-calendar__hold{background:var(--hold);border:1px solid #e0c96e;border-left:6px solid var(--hold-border)}.hp-calendar__closed{background:var(--closed);border:1px solid #e6aca5;border-left:6px solid var(--closed-border)}.hp-calendar__panel{background:var(--panel);border:1px solid var(--border)}

.hp-calendar__timeline{display:grid;gap:14px;margin:18px 0 30px}.hp-calendar__event{display:grid;grid-template-columns:minmax(118px,150px) 1fr;gap:17px;padding:17px;background:var(--card);border:1px solid var(--border);border-left:5px solid var(--brand);border-radius:13px}.hp-calendar__date{font-weight:850;line-height:1.35}.hp-calendar__event h3{margin:.35rem 0 .25rem;font-size:1.05rem}.hp-calendar__event p{margin:.3rem 0}.hp-calendar__event--warn{border-left-color:var(--warn-border)}.hp-calendar__event--hold{border-left-color:var(--hold-border)}

.hp-calendar__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.hp-calendar__card{padding:17px;background:var(--card);border:1px solid var(--border);border-radius:13px}.hp-calendar__card h3{margin:.35rem 0}.hp-calendar__sources li{margin:.55rem 0}.hp-calendar :focus-visible{outline:3px solid #f5a623;outline-offset:3px}

[data-hp-theme="dark"] .hp-calendar,[data-theme="dark"] .hp-calendar{--ink:#e8f0f3;--muted:#b8c5cb;--brand:#8ed8f0;--brand-soft:#163540;--panel:#17252d;--card:#111e25;--border:#38505b;--warn:#33251a;--warn-border:#f0a05c;--hold:#302a17;--hold-border:#e0b34c;--closed:#321c1c;--closed-border:#ff8a75}.hp-calendar[data-hp-reader="on"], [data-hp-reader="on"] .hp-calendar{max-width:780px;margin-inline:auto}

@media(prefers-color-scheme:dark){html:not([data-hp-theme="light"]):not([data-theme="light"]) .hp-calendar{--ink:#e8f0f3;--muted:#b8c5cb;--brand:#8ed8f0;--brand-soft:#163540;--panel:#17252d;--card:#111e25;--border:#38505b;--warn:#33251a;--warn-border:#f0a05c;--hold:#302a17;--hold-border:#e0b34c;--closed:#321c1c;--closed-border:#ff8a75}}

@media(max-width:680px){.hp-calendar{padding:18px 14px;border-radius:12px}.hp-calendar__event{grid-template-columns:1fr;gap:8px;padding:15px}.hp-calendar__grid{grid-template-columns:1fr}.hp-calendar__notice,.hp-calendar__hold,.hp-calendar__closed,.hp-calendar__panel{padding:15px;border-radius:11px}.hp-calendar__toc a{width:100%;justify-content:center}}

@media print{.hp-calendar__toc{display:none}.hp-calendar__event,.hp-calendar__card{break-inside:avoid}.hp-calendar a{color:inherit}}

.hp-calendar__compact-title{margin:.55rem 0 .25rem}.hp-calendar__flush{margin:0}.hp-calendar__first-title{margin-top:0}
