/* A seven-day, hour-by-hour review surface. No schedule or content mutations. */
#boardModal .board-stage { min-height:0; padding:14px; overflow:hidden; }
#boardModal #postBoard { height:100%; min-height:0; display:flex; flex-direction:column; gap:0; }
#boardModal .content-calendar { display:flex; flex:1; flex-direction:column; min-height:0; overflow:hidden; background:#fff; border:1px solid #e7e8eb; border-radius:20px; box-shadow:0 12px 36px #10121608; }
.content-calendar-toolbar { flex:none; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:20px 62px 18px 20px; border-bottom:1px solid #e7e8eb; }
.content-calendar-heading { min-width:0; }
.content-calendar-heading h2 { margin:6px 0; font-size:clamp(21px,2.4vw,30px); line-height:1.1; letter-spacing:-.045em; font-weight:850; }
.content-calendar-heading p { margin:0; font-size:12px; color:#727782; line-height:1.4; }
.content-calendar-controls { display:flex; align-items:center; justify-content:flex-end; gap:9px; flex-wrap:wrap; }
.calendar-segment { display:inline-flex; gap:3px; padding:3px; background:#f2f3f5; border:1px solid #e7e8eb; border-radius:11px; }
.calendar-segment button,.calendar-control { padding:9px 12px; min-height:36px; border:0; border-radius:8px; background:transparent; color:#656a73; font:750 12px/1.2 Geist,Arial,sans-serif; cursor:pointer; white-space:nowrap; }
.calendar-segment button[aria-pressed="true"] { background:#101216; color:white; box-shadow:0 2px 5px #10121618; }
.calendar-control { background:white; color:#101216; border:1px solid #e0e2e6; }
.calendar-control:hover,.calendar-segment button:hover { box-shadow:0 0 0 1px #ff5b16; }
.calendar-control:focus-visible,.calendar-segment button:focus-visible,.week-day-heading:focus-visible,.week-post:focus-visible,.month-post-chip:focus-visible { outline:3px solid #ff5b16; outline-offset:2px; }
.calendar-navigation { display:flex; gap:4px; }
.calendar-navigation .calendar-control { padding:9px 10px; }
.calendar-fullscreen svg { width:15px; height:15px; vertical-align:-3px; margin-right:5px; }
.calendar-footer { flex:none; display:flex; justify-content:space-between; gap:12px; padding:10px 18px; border-top:1px solid #e7e8eb; background:white; color:#7c818b; font-size:10px; }
.calendar-footer .month-calendar-legend { font-size:9px; letter-spacing:.04em; }
.week-calendar-scroll { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; scroll-behavior:auto; }
.week-timeline { display:grid; grid-template-columns:78px repeat(7,minmax(160px,1fr)); min-width:1198px; position:relative; isolation:isolate; }
.week-time-corner,.week-day-heading { position:sticky; top:0; z-index:3; background:#fff; border:0; border-bottom:1px solid #e7e8eb; min-height:78px; padding:12px 9px; text-align:left; }
.week-time-corner { left:0; z-index:4; font-size:10px; color:#8c919b; display:flex; align-items:center; }
.week-day-heading { cursor:pointer; border-left:1px solid #e7e8eb; }
.week-day-heading span { display:block; color:#737a86; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.09em; }
.week-day-heading strong { display:block; margin-top:6px; font-size:27px; font-weight:800; letter-spacing:-.05em; }
.week-day-heading em { float:right; color:#828893; font-size:10px; font-style:normal; font-weight:700; }
.week-day-heading.today strong { color:#ff5b16; }
.week-time-label { position:sticky; left:0; z-index:2; background:#fff; border-bottom:1px solid #eceef1; padding:15px 9px; font-size:19px; font-weight:800; letter-spacing:-.04em; color:#101216; }
.week-time-label small { display:block; margin-top:3px; font-size:10px; letter-spacing:.05em; color:#878d97; }
.week-hour-cell { display:flex; flex-direction:column; gap:12px; min-width:0; min-height:96px; padding:10px; border-left:1px solid #eceef1; border-bottom:1px solid #eceef1; background:#fafbfc; }
.week-hour-cell.today { background:#fffaf7; }
.week-post { flex:none; min-width:0; overflow:hidden; border:1px solid #e3e6eb; border-radius:13px; background:white; box-shadow:0 4px 12px #141b2609; cursor:pointer; transition:box-shadow .15s,border-color .15s; }
.week-post:hover { border-color:#ff5b16; box-shadow:0 8px 24px #141b2614; }
.week-post-top { display:flex; align-items:center; justify-content:space-between; gap:5px; padding:12px 10px 10px; }
.week-post-time { font-size:21px; font-weight:850; line-height:1; letter-spacing:-.05em; color:#101216; white-space:nowrap; }
.calendar-platform { display:inline-flex; align-items:center; gap:6px; min-width:0; }
.calendar-platform .social-logo-mark { flex:none; width:27px; height:27px; border-radius:8px; }
.week-post-image { display:block; width:100%; padding:0; border:0; background:#eef0f2; cursor:zoom-in; }
.week-post-image img { display:block; width:100%; height:170px; object-fit:cover; }
.week-post.story .week-post-image img { height:235px; object-fit:contain; background:#eeeef0; }
.week-post-copy { padding:12px 10px 14px; }
.week-post-kind { display:flex; align-items:center; gap:5px; margin-bottom:6px; color:#7c828c; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.calendar-status-dot { width:6px; height:6px; flex:none; border-radius:50%; background:#ff5b16; }
.calendar-status-dot.published { background:#23b86b; }
.week-post-title { display:block; font-size:14px; line-height:1.35; letter-spacing:-.02em; color:#171b23; overflow-wrap:anywhere; }
.week-post-caption { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; margin-top:7px; font-size:11px; line-height:1.5; color:#7a808b; }
.calendar-compact .week-timeline { grid-template-columns:64px repeat(7,minmax(115px,1fr)); min-width:869px; }
.calendar-compact .week-hour-cell { min-height:45px; padding:5px; gap:5px; }
.calendar-compact .week-time-label { font-size:15px; padding:9px 7px; }
.calendar-compact .week-post { display:grid; grid-template-columns:34px minmax(0,1fr); grid-template-rows:auto auto; padding:6px; border-radius:8px; column-gap:6px; box-shadow:none; }
.calendar-compact .week-post-top { grid-column:1/-1; padding:0 0 5px; }
.calendar-compact .week-post-time { font-size:13px; letter-spacing:0; }
.calendar-compact .week-post-image { grid-row:2; grid-column:1; border-radius:5px; overflow:hidden; align-self:start; }
.calendar-compact .week-post-image img,.calendar-compact .week-post.story .week-post-image img { height:34px; object-fit:cover; }
.calendar-compact .week-post-copy { grid-row:2; grid-column:2; padding:0; }
.calendar-compact .week-post-title { font-size:10px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
.calendar-compact .week-post-kind { font-size:8px; margin-bottom:3px; }
.calendar-compact .week-post-caption { display:none; }
.calendar-compact .calendar-platform .social-logo-mark { width:20px; height:20px; border-radius:5px; font-size:12px; }
.calendar-compact .calendar-platform .social-logo-mark.wordpress { font-size:15px; }
.month-calendar-scroll { flex:1; min-height:0; overflow:auto; padding:14px; overscroll-behavior:contain; }
#boardModal .month-calendar-grid { grid-auto-rows:minmax(135px,1fr); gap:7px; }
#boardModal .month-day { display:flex; flex-direction:column; padding:9px; border-radius:13px; background:#fafbfc; }
#boardModal .month-day.today { background:#fffaf7; }
#boardModal .month-day-posts { width:100%; }
#boardModal .month-day-number { font-size:15px; }
#boardModal .month-post-chip { gap:6px; padding:6px; text-align:left; }
#boardModal .month-post-chip .social-logo-mark { width:23px; height:23px; border-radius:6px; }
.month-image-button { flex:none; width:28px; height:32px; overflow:hidden; border:0; border-radius:5px; padding:0; background:#eef0f2; cursor:zoom-in; }
.month-image-button img { display:block; width:100%; height:100%; object-fit:cover; }
#boardModal .month-post-channel { color:#737b87; font-size:8px; letter-spacing:0; }
#boardModal .month-post-title { margin-top:2px; font-size:11px; }
#boardModal .month-day-more { display:block; margin-top:7px; }
.board-modal.is-fullscreen .board-shell { width:100vw; height:100dvh; max-width:none; border-radius:0; }
.board-modal.is-fullscreen .board-stage { padding:8px; }
.board-modal.is-fullscreen .content-calendar { border-radius:14px; }
@media(max-width:1000px) { .content-calendar-toolbar { align-items:flex-start; flex-direction:column; gap:12px; } .content-calendar-controls { justify-content:flex-start; } }
@media(max-width:720px) { #boardModal .board-shell { width:calc(100vw - 12px); height:96dvh; border-radius:17px; } #boardModal .board-stage { padding:6px; } .content-calendar-toolbar { padding:15px 48px 12px 12px; } .content-calendar-heading h2 { font-size:23px; } .content-calendar-heading p { font-size:11px; } .content-calendar-controls { gap:6px; } .calendar-control,.calendar-segment button { padding:8px 9px; font-size:11px; } .calendar-footer { padding:8px 10px; flex-wrap:wrap; } .month-calendar-scroll { padding:8px; } #boardModal .month-calendar-weekdays,#boardModal .month-calendar-grid { min-width:850px; } }
@media(prefers-reduced-motion:reduce) { .week-post { transition:none; } }
