.period-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:5px;background:var(--soft);border:1px solid var(--line);border-radius:16px;margin:0 0 10px;scroll-margin-top:85px}
.period-tabs button{font:inherit;font-size:15px;min-height:46px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--muted);cursor:pointer}
.period-tabs button[aria-pressed=true]{background:var(--panel);border-color:var(--graph-personality);color:var(--text)}
.period-tabs button:focus-visible{outline:2px solid var(--graph-personality);outline-offset:2px}
.calendar-zone,.calendar-source{font-size:12px;color:var(--muted);line-height:1.6;margin:8px 0 18px}
.calendar-digest{background:var(--soft);border:1px solid var(--line);border-top:4px solid var(--graph-personality);border-radius:20px;padding:26px;margin:20px 0}
.calendar-digest h2{font-size:29px;line-height:1.3;margin:14px 0}
.calendar-digest p,.calendar-segment p{font-size:15px;line-height:1.75}
.calendar-highlights{margin:28px 0}.calendar-highlights h2{font-size:21px}
.calendar-segments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.calendar-segment{min-width:0;padding:24px;border:1px solid var(--line);background:var(--panel);border-radius:18px}
.calendar-segment h3{font-size:22px;line-height:1.4;margin:12px 0}
.calendar-segment .eyebrow{text-transform:uppercase;color:var(--graph-personality)}
.calendar-action{padding:14px 16px;background:var(--soft);border-radius:12px}
.calendar-action p{margin:6px 0 0}
.calendar-personal{padding:12px 16px;border-left:3px solid var(--graph-design);margin:18px 0;background:var(--panel)}
.calendar-personal p{font-size:13px;line-height:1.65;margin:7px 0}.calendar-personal small,.calendar-segment small{display:block;color:var(--muted);font-size:12px;line-height:1.6;margin:6px 0}
.calendar-segment summary{cursor:pointer;padding:14px 0;min-height:44px;font-size:14px}
.calendar-segment .text-button{white-space:normal;text-align:left;min-height:44px}
#periodStatus{font-size:14px;line-height:1.65}#periodStatus:empty{display:none}
@media(min-width:901px){.period-tabs{max-width:580px}.calendar-zone{text-align:right}}
@media(max-width:900px){.period-tabs,.calendar-zone,#calendarPanel{max-width:560px;margin-left:auto;margin-right:auto}.period-tabs button{font-size:13px}.calendar-segments{grid-template-columns:1fr}.calendar-digest,.calendar-segment{padding:20px 18px}.calendar-digest h2{font-size:25px}}
