/* One calm recent-posts feed, shared across every format in this test. */
.unified-recent .post-summary-section{background:transparent!important;border:0!important;padding:0!important}
.unified-recent .post-summary-scroll{overflow:visible}
.unified-recent .post-summary-table{display:block;width:100%;min-width:0;border:0;background:none}
.unified-recent .post-summary-table thead{display:none}
.unified-recent .post-summary-table tbody{display:grid;gap:12px}
.unified-recent .post-summary-table tr{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(110px,auto);gap:10px 20px;background:white;border:1px solid #e9e2ef;border-radius:16px;padding:18px;box-shadow:0 3px 12px #21172d04}
.unified-recent .post-summary-table td{display:block!important;width:auto!important;min-width:0;padding:0!important;border:0!important;background:transparent!important;overflow-wrap:anywhere}
.unified-recent .post-summary-table td:first-child{grid-column:1;grid-row:1}
.unified-recent .post-summary-table td:first-child>small{display:inline-block;margin:10px 0 2px;color:#796f85;font-size:12px}
.unified-recent .post-summary-table td:first-child:before{display:none!important}
.unified-recent .post-summary-table td:first-child strong{font-size:15px;line-height:1.5;word-break:normal}
.unified-recent .post-summary-table td[data-label=Status]{grid-column:2;grid-row:1/3;font-size:12px}
.unified-recent .post-summary-table td[data-label=Created]{grid-column:1;font-size:11px;color:#796f85}
.unified-recent .post-summary-table td[data-label="Scheduled for"]{grid-column:1;font-size:11px;color:#796f85}
.unified-recent td[data-label]:before{content:attr(data-label) ' · ';font-size:11px;font-weight:500;color:#796f85;display:inline!important}
.unified-recent td[data-label=Status]:before{display:none!important}
.unified-recent .post-date,.unified-recent .post-time{display:inline!important;margin-right:5px}
.unified-recent details{margin-top:10px}
@media(max-width:420px){.unified-recent .post-summary-table tr{grid-template-columns:minmax(0,1fr);gap:8px}.unified-recent .post-summary-table td[data-label=Status]{grid-column:1;grid-row:auto}}
/* Upcoming entries retain their preview, progress, warnings and cancel controls. */
.upcoming-feed.card{background:transparent!important;border:0!important;padding:0!important}
.upcoming-feed .card{background:white;border:1px solid #e9e2ef;border-radius:16px;padding:18px;margin:12px 0;box-shadow:0 3px 12px #21172d04}
.upcoming-feed .row{align-items:center;gap:10px;flex-wrap:wrap}
.upcoming-feed .grow{min-width:0!important;overflow-wrap:anywhere;flex:1 1 200px}
.upcoming-feed .grow>a{display:block;text-decoration:none;color:#21172d;font-size:15px;line-height:1.5}
.upcoming-format{display:block;color:#796f85;font-size:11px;font-weight:500;margin-bottom:4px}
.upcoming-feed .muted{font-size:12px;color:#796f85;line-height:1.7}
.upcoming-feed form{margin-bottom:0}
.upcoming-feed .bar{border-radius:8px;overflow:hidden}
.upcoming-feed .upcoming-processing>h2{font-size:14px;color:#796f85}
@media(min-width:801px){
 .designed-app .unified-recent .post-summary-table tr{grid-template-columns:minmax(220px,2fr) minmax(145px,1fr) minmax(145px,1fr) minmax(120px,1fr);align-items:start}
 .designed-app .unified-recent .post-summary-table td:first-child{grid-column:1;grid-row:1}
 .designed-app .unified-recent .post-summary-table td[data-label=Created]{grid-column:2;grid-row:1}
 .designed-app .unified-recent .post-summary-table td[data-label="Scheduled for"]{grid-column:3;grid-row:1}
 .designed-app .unified-recent .post-summary-table td[data-label=Status]{grid-column:4;grid-row:1}
 .designed-app .unified-recent td[data-label]:before{display:block!important;margin-bottom:8px}
 .designed-app .unified-recent td[data-label=Status]:before{display:none!important}
}
@media(min-width:801px) and (max-width:1100px){
 .designed-app .unified-recent .post-summary-table tr{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .designed-app .unified-recent .post-summary-table td[data-label=Created]{grid-column:1;grid-row:2}
 .designed-app .unified-recent .post-summary-table td[data-label="Scheduled for"]{grid-column:2;grid-row:2}
 .designed-app .unified-recent .post-summary-table td[data-label=Status]{grid-column:2;grid-row:1}
}

.calendar-week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-bottom:20px}
.calendar-week-strip[hidden]{display:none}
.calendar-week-strip button{padding:10px 2px;border:0;background:transparent;border-radius:14px;display:grid;gap:6px;text-align:center;color:#796f85;min-width:0}
.calendar-week-strip button span{font-size:10px}
.calendar-week-strip button strong{font-size:17px;color:#21172d}
.calendar-week-strip button[aria-current]{background:#c00058;color:white;box-shadow:0 5px 16px #c0005820}
.calendar-week-strip button[aria-current] strong{color:white}
.calendar-page .calendar-grid.daily .calendar-day{background:transparent!important;border:0!important;padding:0!important}
.calendar-page .daily .calendar-day-heading{display:flex;justify-content:space-between;align-items:center}
.calendar-page .daily .cal-event{background:white!important;padding:18px!important;border-radius:16px!important;box-shadow:0 3px 12px #21172d04;border:1px solid #e9e2ef!important;border-left:4px solid #c00058!important}
.calendar-page .daily .cal-event[data-platform=facebook]{border-left-color:#1877f2!important}
.calendar-page .daily .cal-event[data-platform=youtube]{border-left-color:#ff0033!important}
.calendar-page .daily .cal-event[data-platform=tiktok]{border-left-color:#21172d!important}
.calendar-page .daily .cal-event time{font-size:12px;font-weight:600;color:#796f85}
.calendar-page .daily .cal-type{font-size:12px}
.calendar-page .daily .mobile-event-title{font-size:15px!important;color:#21172d}
.calendar-page .daily .cal-plan{width:100%;text-align:left;padding:18px!important;border-radius:16px!important;background:#f4eefb!important}
.calendar-page .cal-plan strong{font-size:15px}
.calendar-empty{text-align:center;padding:38px 18px;background:white;border:1px dashed #ded4e8;border-radius:18px}
.calendar-empty h3{font-size:18px}.calendar-empty p{font-size:13px;color:#796f85}
.calendar-page .saved-preview-dialog{width:min(700px,calc(100vw - 24px));box-sizing:border-box;max-height:90dvh}
.calendar-page .calendar-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 0}
.calendar-page .calendar-controls>label{font-size:12px;display:grid;gap:6px;min-width:0}
.calendar-page .calendar-controls>label select{min-width:0;width:100%;box-sizing:border-box;min-height:44px}

@media(max-width:700px){
.calendar-page .design-hero{background:transparent!important;padding:8px 0 12px!important;min-height:0}
.calendar-page .design-hero h1{font-size:28px!important}
.calendar-page .design-hero p{font-size:12px;color:#796f85}
.calendar-page>section.card{padding:0!important;border:0;background:transparent}
.calendar-page .calendar-controls{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px!important}
.calendar-page #cal-heading{font-size:20px;text-align:center;margin:22px 0 16px}
.calendar-page .calendar-filter-box{margin-top:14px}
.calendar-page .calendar-filter-box summary{font-size:13px;min-height:40px;align-content:center}
.calendar-page .daily .mobile-event-title{font-size:15px!important}
.calendar-page .calendar-filters{gap:10px}
.calendar-page .calendar-filters label{min-height:40px}
.calendar-page .calendar-grid.daily .calendar-day{border:0!important;background:transparent!important;padding:0!important}
.calendar-page .daily .calendar-day-heading{display:flex;justify-content:space-between;align-items:center}
.calendar-page .calendar-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}

.calendar-month-day{display:none}
.calendar-page .daily .calendar-day-empty .calendar-day-heading{display:none}
.plan-save-note{margin:20px 0 10px;font-size:12px}
@media(max-width:700px){
 /* Weeks use readable day cards; months use tappable dates, never tiny post text. */
 .calendar-page #calendar-grid{overflow:visible}
 .calendar-page .calendar-grid:not(.daily){min-width:0!important;width:100%;border:0;gap:12px}
 .calendar-page .calendar-mode-week{grid-template-columns:minmax(0,1fr)}
 .calendar-page .calendar-mode-week .calendar-dayname{display:none}
 .calendar-page .calendar-mode-week .calendar-day{min-height:0;border:1px solid var(--line);border-radius:14px;padding:14px;background:white;min-width:0}
 .calendar-page .calendar-day-heading{display:flex;justify-content:space-between;gap:8px;align-items:center}
 .calendar-page .calendar-mode-week .cal-compact-line{display:flex!important;flex-wrap:wrap!important;gap:7px;min-width:0}
 .calendar-page .calendar-mode-week .mobile-event-title{flex-basis:100%;white-space:normal!important;overflow-wrap:anywhere}
 .calendar-page .calendar-mode-week .cal-event,.calendar-page .calendar-mode-week .cal-plan{min-width:0;max-width:100%;box-sizing:border-box}
 .calendar-page .calendar-mode-month{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px!important}
 .calendar-page .calendar-mode-month .calendar-day{padding:0;min-height:62px;border:1px solid var(--line);border-radius:9px;min-width:0;overflow:hidden;background:white}
 .calendar-page .calendar-mode-month .calendar-day>*:not(.calendar-month-day){display:none!important}
 .calendar-page .calendar-mode-month .calendar-day.outside{opacity:.45}
 .calendar-page .calendar-month-day{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:100%;height:100%;min-height:62px;padding:6px 0;border:0;background:transparent;color:var(--ink)}
 .calendar-month-day strong{font-size:14px}.calendar-month-day small{font-size:9px;white-space:nowrap;color:var(--pink)}
 .calendar-page .calendar-dayname{padding:6px 0;font-size:10px}
 /* A single-column planner with large controls and no overflowing native date fields. */
 .calendar-page .calendar-plan-editor{width:calc(100vw - 20px);max-width:520px!important;max-height:calc(100dvh - 24px);padding:20px 18px calc(20px + env(safe-area-inset-bottom));border-radius:20px;overflow:auto;overscroll-behavior:contain}
 .calendar-plan-editor #calendar-plan-form{min-width:0;margin:0}
 .calendar-plan-editor h2{font-size:22px;margin:0 0 18px}
 .calendar-plan-editor input:not([type=checkbox]):not([type=hidden]),.calendar-plan-editor select,.calendar-plan-editor textarea{font-size:16px!important;min-height:48px;max-width:100%;width:100%;border-radius:12px}
 .calendar-plan-editor .plan-date-fields{grid-template-columns:minmax(0,1fr)!important;gap:0}
 .calendar-plan-editor .plan-platforms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;margin:18px 0;padding:0;border:0}
 .calendar-plan-editor .plan-platforms legend{font-weight:600;margin-bottom:10px;font-size:13px}
 .calendar-plan-editor .plan-platforms legend small{display:block;font-weight:400}
 .calendar-plan-editor .plan-platforms label{display:flex;align-items:center;gap:7px;min-height:46px;padding:8px;border:1px solid var(--line);border-radius:10px;min-width:0;font-size:12px}
 .calendar-plan-editor .plan-platforms label:has(input:checked){background:#fff0f7;border-color:var(--pink)}
 .calendar-plan-editor .plan-platforms img{width:18px;height:18px}
 .calendar-plan-editor .plan-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .calendar-plan-editor .plan-actions button{min-height:48px;margin:0}
 .calendar-plan-editor #plan-save{grid-column:1/-1;font-size:16px}
 .calendar-plan-editor #plan-delete-confirm button{min-height:44px}
 .calendar-plan-editor [hidden]{display:none!important}
}

.plan-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.plan-editor-heading h2{margin:0!important}
.plan-editor-heading #plan-dismiss{min-width:44px;min-height:44px;font-size:24px;line-height:1}

/* View and Filters share a row; expanded filters use the full width below. */
.calendar-page .calendar-controls{align-items:end}
.calendar-page .calendar-controls>.calendar-filter-box{display:contents}
.calendar-page .calendar-controls>.calendar-filter-box>summary{grid-column:2;grid-row:1;box-sizing:border-box;min-height:44px;margin:0;padding:10px 14px;border:1px solid var(--line);border-radius:8px;background:white;align-content:center}
.calendar-page .calendar-controls .calendar-filter-options{grid-column:1/-1;min-width:0;border:1px solid var(--line);border-radius:12px;background:white}
.calendar-page .calendar-controls>.calendar-filter-box:not([open])>.calendar-filter-options{display:none}
