/* Reuse the Calendar's cards and controls inside an article-sized frame. */
body main .article-calendar, .article-calendar{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin:24px 0;padding:16px;border:1px solid var(--line);border-top:3px solid var(--coral);border-radius:8px;background:var(--paper);font:13px/1.5 Arial,sans-serif;overflow:hidden}
.article-calendar .calendar-embed-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}
.article-calendar .calendar-embed-heading strong{font:25px/1.2 Georgia,serif;color:var(--ink)}
.article-calendar .calendar-embed-heading a,.article-calendar .calendar-embed-note a{font:12px/1.5 Arial,sans-serif;color:#934b40;text-decoration:underline;text-underline-offset:3px}
.article-calendar .calendar-tools{padding:10px 0;gap:10px;align-items:center}
.article-calendar .calendar-tools>.week-tabs{margin:0;gap:8px;width:auto;padding:0}
.article-calendar .week-tabs button+button:before{display:none}
.article-calendar .week-tabs button{padding:10px 12px;min-height:44px;font-size:12px;letter-spacing:0;border-radius:6px}
.article-calendar .zone{margin:0 0 0 auto;gap:6px;max-width:100%;width:auto}
.article-calendar .zone select{max-width:185px;font-size:12px}
.article-calendar .week-section{margin:12px 0 0;padding:0;border:0;background:transparent;min-width:0}
.article-calendar .week-section .section-top{margin:0 0 10px;gap:8px;align-items:center;flex-direction:row;flex-wrap:wrap}
.article-calendar .week-section .section-top h3{font:20px/1.3 Georgia,serif;letter-spacing:0;margin:0;border:0;padding:0}
.article-calendar .week-controls{gap:6px}
.article-calendar .week-controls>span{font:11px/1.4 Arial,sans-serif;margin:0}
.article-calendar .week-controls button{display:inline-block;width:44px;height:44px;border-radius:6px;font-size:20px;padding:0}
.article-calendar .week-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(270px,85%);gap:14px;overflow-x:auto;max-width:100%;min-width:0;padding-bottom:8px;overscroll-behavior-x:contain;scroll-snap-type:x mandatory}
.article-calendar .agenda-day{width:auto;min-width:0;min-height:0;scroll-snap-align:start}
.article-calendar .agenda-day>h3{font:15px/1.4 Georgia,serif;margin:0;padding:10px;justify-content:center}
.article-calendar .agenda-day>h3 time{font:11px Arial,sans-serif}
.article-calendar .agenda-card{display:grid;grid-template-columns:60px minmax(0,1fr);gap:10px;padding:12px 10px}
.article-calendar .agenda-card>.calendar-art{width:60px;height:90px}
.article-calendar .agenda-copy h4{font:16px/1.2 Georgia,serif;margin:0;letter-spacing:0}
.article-calendar .slot,.article-calendar .slot strong{font:11px/1.5 Arial,sans-serif;letter-spacing:0;margin:0}
.article-calendar .quiet-day{font:italic 13px/1.5 Georgia,serif;padding:20px 10px;margin:0}
.article-calendar .calendar-embed-note,.article-calendar .calendar-embed-empty{font:11px/1.6 Arial,sans-serif;color:var(--muted);margin:12px 0 0}
.article-calendar [hidden]{display:none!important}
.article-calendar :is(button,select,a,.week-grid):focus-visible{outline:2px solid var(--ink);outline-offset:3px}
@media(max-width:650px){body main .article-calendar,.article-calendar{padding:12px;margin:20px 0}.article-calendar .calendar-embed-heading{flex-wrap:wrap;gap:6px}.article-calendar .calendar-tools{flex-direction:row;flex-wrap:wrap}.article-calendar .calendar-tools>.week-tabs{width:auto}.article-calendar .calendar-tools>.zone{width:100%;margin:0;justify-content:space-between}.article-calendar .week-controls button{display:inline-block}.article-calendar .week-grid{display:grid;flex-direction:initial}.article-calendar .week-section .section-top h3{font-size:19px}}
.article-body .article-calendar .week-tabs button{white-space:nowrap;width:auto;flex:0 0 auto;font:600 12px/1.4 Arial,sans-serif;padding:10px 12px}
.article-calendar .week-grid{align-items:start}
