
.planner-intro{padding-bottom:48px}.planner{margin-bottom:90px}.planner-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:28px;background:#f4f4f3;border-radius:6px}.planner-control label{display:block;font-size:13px;font-weight:650;margin-bottom:12px}.planner-control input,.planner-control select{width:100%;padding:13px 12px;background:#fff;border:1px solid #d8d8d6;border-radius:3px;color:#353535;font:inherit;font-size:13px;min-height:48px}.planner-summary{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:30px;padding:34px 4px;border-bottom:1px solid #ddd}.planner-kicker{display:block;color:#888;font-size:12px;margin-bottom:8px}.planner-summary strong{font-size:clamp(20px,2.6vw,31px);font-weight:500;letter-spacing:-.035em}.planner-summary-note{font-size:13px;line-height:1.7;color:#777;max-width:340px}.planner-chart-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:52px 0 30px}.planner-chart-heading h2,.planner-faq h2{font-size:clamp(26px,3.5vw,43px);font-weight:500;letter-spacing:-.045em;margin:10px 0}.planner-chart-heading p{font-size:13px;color:#777;max-width:280px}.planner-axis{display:flex;justify-content:space-between;font-size:11px;color:#999;padding-bottom:15px;border-bottom:1px solid #ddd}.planner-stage{display:grid;grid-template-columns:235px 1fr;gap:25px;padding:20px 0;border-bottom:1px solid #e4e4e4}.planner-stage-button{border:0;background:transparent;text-align:left;font:inherit;cursor:pointer;color:inherit;padding:0}.planner-stage-button strong{display:block;font-size:14px;font-weight:600}.planner-stage-button small{display:block;color:#999;margin-top:6px;font-size:11px}.planner-track{height:12px;border-radius:2px;background:#f2f2f2;position:relative;align-self:center;overflow:hidden}.planner-bar{position:absolute;top:0;height:100%;background:#586777;border-radius:2px;min-width:4px}.planner-stage.clear .planner-bar{background:#a88c69}.planner-stage.client .planner-bar{background:#9b9b98}.planner-detail{grid-column:1/-1;padding:0 0 4px 260px;font-size:13px;line-height:1.8;color:#666;display:none}.planner-stage.open .planner-detail{display:block}.planner-legend{display:flex;gap:25px;flex-wrap:wrap;padding:24px 0;font-size:12px;color:#777}.planner-legend span{display:flex;align-items:center;gap:8px}.planner-legend i{width:10px;height:10px;display:inline-block;background:#586777}.planner-legend .legend-clear{background:#a88c69}.planner-legend .legend-client{background:#9b9b98}.planner-disclaimer{font-size:12px;color:#888;line-height:1.8;max-width:820px}.planner-faq{margin-bottom:100px}.planner-faq details{border-bottom:1px solid #ddd;padding:19px 0}.planner-faq summary{font-size:16px;font-weight:500;cursor:pointer}.planner-faq details p{font-size:14px;line-height:1.8;color:#777;max-width:740px;padding-top:12px}@media(max-width:760px){.planner-controls{grid-template-columns:1fr;padding:20px}.planner-summary{grid-template-columns:1fr 1fr;gap:20px}.planner-summary-note{grid-column:1/-1}.planner-stage{grid-template-columns:130px 1fr;gap:12px}.planner-detail{padding-left:0}.planner-chart-heading{display:block}.planner-chart-heading p{margin-top:10px}}

/* Planner refinement: brand palette and readable weekly scale */
.planner{--brand-coral:#f44327;--brand-pink:#fec0c2;--brand-sage:#99baa5;--brand-ink:#353535}
.planner-control input[type=date]{font-size:17px;min-height:64px;padding:15px 17px;cursor:pointer;accent-color:var(--brand-coral);color-scheme:light}
.planner-control input[type=date]::-webkit-calendar-picker-indicator{width:22px;height:22px;cursor:pointer;opacity:.8}
.planner-control:focus-within label{color:#cf3b26}
.planner-control input:focus-visible,.planner-control select:focus-visible{outline:2px solid var(--brand-coral);outline-offset:2px}
.planner-axis{margin-left:260px}
.planner-week-axis{display:grid;grid-template-columns:235px 1fr;gap:25px;align-items:end;padding:15px 0 7px;border-bottom:1px solid #ddd}
.planner-week-label{font-size:11px;color:#777;letter-spacing:.02em}
.planner-weekmarks{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#777;font-variant-numeric:tabular-nums}
.planner-weekmarks span:last-child{font-weight:700;color:#cf3b26}
.planner-track{background:repeating-linear-gradient(to right,transparent 0,transparent calc(100% / var(--planner-weeks) - 1px),#dededc calc(100% / var(--planner-weeks) - 1px),#dededc calc(100% / var(--planner-weeks))),#f5f5f3;height:17px}
.planner-bar{background:var(--brand-coral)}
.planner-stage.clear .planner-bar{background:var(--brand-sage)}
.planner-stage.client .planner-bar{background:var(--brand-pink);box-shadow:inset 0 0 0 1px #dca8aa}
.planner-legend i{background:var(--brand-coral)}
.planner-legend .legend-clear{background:var(--brand-sage)}
.planner-legend .legend-client{background:var(--brand-pink)}
@media(max-width:760px){.planner-axis{margin-left:142px}.planner-week-axis{grid-template-columns:130px 1fr;gap:12px}.planner-weekmarks{font-size:9px}.planner-weekmarks span:nth-child(even){opacity:.5}}

/* V3: calm focus treatment, legible timeline, full-size custom calendar */
.planner-control:focus-within label{color:#353535}
.planner-control input:focus-visible,.planner-control select:focus-visible,.da-date-trigger:focus-visible{outline:2px solid #777;outline-offset:2px}
.planner-control select:focus{outline:1px solid #999;box-shadow:none;border-color:#999}
.planner-control select{accent-color:#555}
.planner-axis{font-size:13px;color:#454545;font-weight:600}
.planner-week-label{font-size:13px;color:#454545}
.planner-weekmarks{font-size:13px;color:#383838;font-weight:600}
.planner-weekmarks span:last-child{color:#d9442b}
.da-date-wrap{position:relative}
.da-native-date{display:none!important}
.da-date-trigger{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:64px;padding:13px 17px;border:1px solid #d8d8d6;border-radius:3px;background:#fff;color:#353535;font:inherit;font-size:17px;text-align:left;cursor:pointer}
.da-date-trigger span:last-child{font-size:24px;color:#666}
.da-date-popover{position:absolute;top:calc(100% + 8px);left:0;width:min(370px,calc(100vw - 44px));padding:18px;background:white;border:1px solid #d6d6d6;box-shadow:0 12px 36px #0002;border-radius:8px;z-index:30}
.da-date-popover[hidden]{display:none}
.da-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;font-size:18px}
.da-cal-head button{width:42px;height:42px;border:0;background:#f3f3f3;border-radius:5px;color:#333;font-size:28px;cursor:pointer}
.da-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}
.da-cal-grid .day-label{font-size:13px;font-weight:600;color:#666;padding:9px 0}
.da-cal-grid button{height:43px;border:0;background:transparent;color:#333;border-radius:5px;font:inherit;font-size:16px;cursor:pointer}
.da-cal-grid button:hover{background:#eee}
.da-cal-grid button[aria-pressed=true]{background:#e5e5e5;color:#222;font-weight:700;outline:2px solid #777;outline-offset:-2px}
.da-cal-grid .outside{color:#aaa}
.da-cal-today{margin-top:12px;padding:10px 16px;border:1px solid #ddd;background:#fafafa;border-radius:4px;font:inherit;cursor:pointer}
@media(max-width:760px){.planner-weekmarks{font-size:10px}.planner-weekmarks span:nth-child(even){opacity:.75}.da-date-popover{width:min(350px,calc(100vw - 50px))}}

/* Calendar V5: quieter production bars and compact date picker */
.planner-bar,.planner-stage.production .planner-bar{background:#78818A}
.planner-legend i,.planner-legend .legend-prod{background:#78818A}
.da-date-popover{width:min(280px,calc(100vw - 36px));padding:13px}
.da-cal-head{font-size:15px;margin-bottom:10px}
.da-cal-head button{width:32px;height:32px;font-size:22px}
.da-cal-grid{gap:3px}
.da-cal-grid .day-label{font-size:11px;padding:6px 0}
.da-cal-grid button{height:32px;font-size:13px}
.da-cal-today{margin-top:9px;padding:7px 12px;font-size:12px}
@media(max-width:760px){.da-date-popover{width:min(280px,calc(100vw - 36px))}}

/* V9: unobtrusive expansion cue on each timeline stage */
.planner-stage-button strong{display:inline-flex;align-items:center;gap:9px}
.planner-expand-chevron{display:inline-block;width:7px;height:7px;border-right:1.7px solid #818a91;border-bottom:1.7px solid #818a91;transform:rotate(45deg);transition:transform .18s ease;flex:none;margin-top:-3px}
.planner-stage.open .planner-expand-chevron{transform:rotate(225deg);margin-top:3px}
@media(prefers-reduced-motion:reduce){.planner-expand-chevron{transition:none}}

/* V11: clearer stage dates and simple print-friendly schedule */
.planner-stage-button small{font-size:14px;font-weight:600;color:#525d66;letter-spacing:.005em;line-height:1.55}
.planner-print-actions{display:flex;justify-content:flex-end;margin:24px 0 12px}
.planner-print-button{font:600 13px Manrope,sans-serif;color:#414b53;background:#fff;border:1px solid #bfc5c8;border-radius:4px;padding:11px 17px;cursor:pointer}
.planner-print-button:hover,.planner-print-button:focus-visible{background:#f4f5f5;border-color:#79848b}
@media print{
 @page{size:A4 landscape;margin:12mm}
 body{background:white!important;color:#222!important;font-size:10pt!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 header{position:static!important;padding:0 0 10px!important;min-height:0!important}header nav,header .menu,footer,.planner-faq,.planner-controls,.planner-print-actions,.planner-intro p{display:none!important}
 .planner-intro{padding-top:0!important;padding-bottom:12px!important}.planner-intro h1{font-size:22pt!important;line-height:1.2!important;margin:0!important}
 .planner{padding-top:0!important}.planner-summary{margin:10px 0!important;padding:10px!important}.planner-chart-heading{margin:8px 0!important}.planner-chart-heading h2{font-size:16pt!important}
 .planner-stage{break-inside:avoid;page-break-inside:avoid}.planner-stage-button{cursor:default}.planner-stage-button small{color:#333!important;font-weight:700!important}
 .planner-stage .planner-detail{display:block!important;font-size:8pt!important;line-height:1.35!important;padding-bottom:5px!important}
 .planner-stage-button strong{font-size:10pt!important}.planner-expand-chevron{display:none!important}
 .planner-milestones{margin-top:5px!important}.planner-disclaimer{font-size:8pt!important}.planner-bar{print-color-adjust:exact;-webkit-print-color-adjust:exact}
}

/* V17: compact timeline rows make overlaps easier to compare */
@media screen and (min-width:761px){
 .planner-stage{padding:12px 0;gap:18px;grid-template-columns:235px minmax(0,1fr)}
 .planner-detail{padding-left:253px;line-height:1.55;padding-bottom:3px}
 .planner-stage-button small{margin-top:3px}
}
@media screen and (max-width:760px){
 .planner-stage{padding-top:12px;padding-bottom:12px}
}

/* V18: clear invitation to choose a transmission date */
.planner-empty{margin:22px 0 28px;padding:24px 18px;background:#f7f7f7;color:#555;font-size:15px;border-radius:4px}
.da-date-trigger:has(#date-display){color:#555}
.planner-print-button:disabled{opacity:.4;cursor:not-allowed}
.planner-axis[hidden],.planner-week-axis[hidden]{display:none!important}

/* V20: unobtrusive guidance beneath the suggested transmission date */
.planner-suggested-date{display:block;margin-top:7px;font-size:12px;line-height:1.5;color:#777;order:3}.da-date-wrap{display:flex;flex-direction:column}.da-date-popover{order:2}.da-native-date{position:absolute}

/* V21: consistent, accessible supporting copy across the planner */
@media screen{
 .planner-summary-note,.planner-chart-heading p,.planner-detail,.planner-legend,.planner-disclaimer,.planner-faq details p,.planner-empty,.planner-suggested-date{font-size:16px;line-height:1.6;color:#626262}
 .planner-kicker{font-size:14px;color:#626262}
 .planner-axis,.planner-weekmarks{color:#626262}
 .planner-disclaimer{max-width:1000px}
 .planner-chart-heading p{max-width:340px}
 .planner-summary-note{max-width:380px}
}

/* V22: aligned, higher-contrast stage chevrons on desktop and mobile */
.planner-stage-button{width:100%;min-width:0;text-align:left}
.planner-stage-button strong{display:grid;grid-template-columns:minmax(0,1fr) 16px;align-items:center;column-gap:10px;width:100%;min-width:0}
.planner-stage-name{min-width:0;overflow-wrap:normal}
.planner-expand-chevron{justify-self:center;align-self:center;width:9px;height:9px;border-right:2px solid #555f68;border-bottom:2px solid #555f68;margin:0;transform:rotate(45deg) translate(-1px,-1px)}
.planner-stage.open .planner-expand-chevron{margin:0;transform:rotate(225deg) translate(-1px,-1px)}
@media screen and (max-width:760px){.planner-stage-button strong{grid-template-columns:minmax(0,1fr) 16px;column-gap:8px}}

/* V23: continuous, subtle weekly guides through the timeline rows.
   Align the overlay with the chart column; it sits behind stage bars and text. */
.planner-milestones{position:relative;isolation:isolate}
.planner-milestones::before{
 content:"";position:absolute;top:0;bottom:0;left:253px;right:0;
 pointer-events:none;z-index:0;
 background:repeating-linear-gradient(to right,
  transparent 0,
  transparent calc(100% / var(--planner-weeks) - 1px),
  #e3e6e7 calc(100% / var(--planner-weeks) - 1px),
  #e3e6e7 calc(100% / var(--planner-weeks)));
}
.planner-stage{position:relative;z-index:1}
@media screen and (max-width:760px){
 .planner-milestones::before{left:142px;background:repeating-linear-gradient(to right,
  transparent 0,
  transparent calc(100% / var(--planner-weeks) - 1px),
  #d5dadd calc(100% / var(--planner-weeks) - 1px),
  #d5dadd calc(100% / var(--planner-weeks)))}
}
@media print{.planner-milestones::before{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* V24: keep weekly guides visible in the schedule, but not behind expanded explanations. */
.planner-stage.open .planner-detail{
 position:relative;
 z-index:2;
 background:var(--paper,#fbfbfa);
}

/* V25: week labels and guide lines share exact computed coordinates. */
.planner-weekmarks{position:relative;display:block;min-height:20px}
.planner-weekmarks>span{position:absolute;top:0;transform:translateX(-50%);white-space:nowrap}
.planner-week-guides{position:absolute;top:0;bottom:0;left:253px;right:0;pointer-events:none;z-index:0}
.planner-week-guides>span{position:absolute;top:0;bottom:0;width:1px;background:#e3e6e7;transform:translateX(-.5px)}
.planner-milestones::before{display:none!important}
.planner-week-axis{grid-template-columns:235px minmax(0,1fr);gap:18px}
.planner-axis{margin-left:253px}
@media(max-width:760px){
 .planner-week-axis{grid-template-columns:130px minmax(0,1fr);gap:12px}
 .planner-week-guides{left:142px}
 .planner-week-guides>span{background:#d5dadd}
 .planner-axis{margin-left:142px}
}
