/* A calm, legible agenda. Brand color identifies emphasis; text stays neutral. */
.dates-page{--dates-bg:#fff;--dates-soft:#f5f6f8;--dates-ink:#17202b;--dates-muted:#526070;--dates-line:#e3e6eb;--dates-active-bg:#edf7f3;--dates-active-ink:#17634b;padding:40px 0 64px;}
[data-bs-theme=dark] .dates-page{--dates-bg:var(--ep-surface);--dates-soft:var(--ep-soft);--dates-ink:var(--ep-text);--dates-muted:var(--ep-muted);--dates-line:var(--ep-border);--dates-active-bg:#203b32;--dates-active-ink:#a2e1c7;}
.dates-page .dates-heading{margin:0 0 20px;}
.dates-page .dates-eyebrow{font-size:11px;font-weight:600;letter-spacing:.12em;color:var(--dates-muted);margin:0 0 12px;}
.dates-page h1{font-size:clamp(30px,3vw,44px);line-height:1.15;letter-spacing:-.035em;font-weight:650;color:var(--dates-ink);margin:0 0 12px;}
.dates-intro{font-size:15px;line-height:1.6;color:var(--dates-muted);margin:0;}
.dates-workspace{color:var(--dates-ink);}
.dates-workspace [hidden]{display:none!important;}
.dates-context{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--dates-muted);font-size:12px;line-height:1.5;margin-bottom:24px;}
.dates-context i{margin-right:5px;}
.dates-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:28px;}
.dates-highlight{display:flex;flex-direction:column;gap:9px;min-width:0;padding:18px;border:1px solid var(--dates-line);border-radius:12px;text-decoration:none;background:var(--dates-bg);color:var(--dates-ink)!important;position:relative;}
.dates-highlight::before{content:'';position:absolute;left:18px;right:18px;top:0;height:2px;background:var(--bs-primary,var(--dates-line));}
.dates-highlight:hover{background:var(--dates-soft);border-color:var(--dates-muted);}
.dates-highlight-label{display:flex;gap:7px;align-items:center;font-size:11px;font-weight:500;color:var(--dates-muted);}
.dates-highlight>strong{font-size:20px;line-height:1.25;letter-spacing:-.02em;font-weight:600;}
.dates-highlight-title{font-size:12px;line-height:1.5;flex:1;}
.dates-highlight-status{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--dates-muted);margin-top:2px;}
.dates-controls{padding:16px 0;border-top:1px solid var(--dates-line);border-bottom:1px solid var(--dates-line);margin-bottom:14px;}
.dates-controls-top,.dates-controls-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.dates-controls-bottom{margin-top:14px;}
.dates-scope{display:flex;gap:2px;padding:3px;border-radius:9px;background:var(--dates-soft);}
.dates-workspace button{font:inherit;cursor:pointer;}
.dates-scope button{display:flex;gap:7px;align-items:center;border:0;border-radius:6px;padding:7px 10px;color:var(--dates-muted);font-size:12px;background:transparent;}
.dates-scope button[aria-pressed=true]{background:var(--dates-bg);color:var(--dates-ink);font-weight:600;box-shadow:0 1px 3px #0001;}
.dates-filter-count{font-size:10px;font-variant-numeric:tabular-nums;color:var(--dates-muted);}
.dates-tools{display:flex;align-items:center;gap:8px;}
.dates-tools button,.dates-no-results button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 10px;border:1px solid var(--dates-line);background:var(--dates-bg);color:var(--dates-ink);border-radius:8px;font-size:12px;line-height:1.4;}
.dates-tools button:hover,.dates-no-results button:hover{background:var(--dates-soft);}
.dates-workspace button:disabled{opacity:.5;cursor:default;}
.dates-categories{display:flex;flex-wrap:wrap;gap:4px;}
.dates-categories button{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:6px;background:transparent;color:var(--dates-muted);font-size:11px;line-height:1.4;padding:7px 8px;}
.dates-categories button[aria-pressed=true]{background:var(--dates-soft);color:var(--dates-ink);font-weight:600;box-shadow:inset 0 -2px var(--bs-primary,var(--dates-ink));}
.dates-categories button:hover{background:var(--dates-soft);color:var(--dates-ink);}
.dates-search{display:flex;align-items:center;gap:7px;max-width:190px;min-width:130px;padding:8px 10px;background:var(--dates-soft);border-radius:8px;border:1px solid transparent;color:var(--dates-muted);font-size:12px;}
.dates-search input{min-width:0;width:100%;padding:0;border:0!important;outline:0!important;box-shadow:none!important;background:transparent;color:var(--dates-ink);font:inherit;}
.dates-search input::placeholder{color:var(--dates-muted);opacity:1;}
.dates-search input::-webkit-search-cancel-button{-webkit-appearance:none;display:none;}
.dates-search button{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;padding:0;margin:-3px;border:0;border-radius:50%;background:transparent;color:var(--dates-muted);font-size:10px;}
.dates-search:focus-within{outline:2px solid var(--dates-ink);outline-offset:2px;}
.dates-workspace :is(a,button,h3):focus-visible{outline:2px solid var(--dates-ink)!important;outline-offset:3px;}
.dates-workspace .dates-search input:is(:focus,:focus-visible,:active){outline:0!important;border:0!important;box-shadow:none!important;}
.dates-results-meta{display:flex;justify-content:space-between;gap:12px;color:var(--dates-muted);font-size:11px;margin:0 0 18px;line-height:1.5;}
.dates-results-meta p{margin:0;}
.dates-workspace .dates-month{padding:0;margin:0 0 28px;}
.dates-month>h2{font-size:17px;font-weight:600;letter-spacing:-.015em;color:var(--dates-ink);margin:0 0 16px;}
.dates-day-list{list-style:none;padding:0;margin:0;}
.dates-day{display:grid;grid-template-columns:58px minmax(0,1fr);gap:16px;}
.dates-day-stamp{padding-top:20px;text-align:center;}
.dates-day-stamp time{display:flex;flex-direction:column;gap:2px;color:var(--dates-muted);}
.dates-day-stamp strong{font-size:25px;line-height:1.1;font-weight:500;color:var(--dates-ink);letter-spacing:-.04em;}
.dates-day-stamp span{font-size:11px;text-transform:uppercase;letter-spacing:.03em;}
.dates-day-events{min-width:0;border-inline-start:1px solid var(--dates-line);padding-left:20px;}
.dates-entry{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;padding:18px 0;border-top:1px solid var(--dates-line);scroll-margin-top:calc(var(--headerHeight,130px) + 24px);}
.dates-entry-main{min-width:0;}
.dates-entry-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:7px;font-size:11px;}
.dates-type{display:flex;gap:6px;align-items:center;color:var(--dates-muted);}
.dates-status{color:var(--dates-muted);border-radius:4px;background:var(--dates-soft);padding:2px 6px;font-size:10px;}
.dates-status-active{background:var(--dates-active-bg);color:var(--dates-active-ink);}
.dates-entry h3{font-size:16px;font-weight:600;line-height:1.45;letter-spacing:-.01em;color:var(--dates-ink);margin:0 0 6px;}
.dates-time{font-size:13px;font-weight:500;line-height:1.6;color:var(--dates-ink);margin:0;}
.dates-details{font-size:13px;line-height:1.65;color:var(--dates-ink);margin:9px 0 0;white-space:pre-line;}
.dates-description{font-size:12px;line-height:1.65;color:var(--dates-muted);margin:7px 0 0;white-space:pre-line;}
.dates-calendar-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;padding:7px;border:1px solid var(--dates-line);border-radius:7px;background:transparent;color:var(--dates-muted);font-size:12px!important;line-height:1.4;}
.dates-calendar-action span{display:none;}
.dates-calendar-action:hover{background:var(--dates-soft);color:var(--dates-ink);}
.dates-active .dates-entry-meta::before{content:'';display:block;width:5px;height:5px;border-radius:50%;background:var(--dates-active-ink);}
.dates-no-results,.dates-empty{text-align:center;padding:44px 20px;border:1px dashed var(--dates-line);border-radius:12px;color:var(--dates-muted);font-size:14px;}
.dates-no-results>i,.dates-empty>i{font-size:26px;display:block;margin-bottom:16px;}
.dates-no-results h2,.dates-empty h2{font-size:18px;color:var(--dates-ink);margin:0 0 8px;}
.dates-no-results p,.dates-empty p{margin:0 0 16px;}
@media(min-width:1400px){.dates-calendar-action span{display:inline;}}
@media(max-width:767.98px){.dates-page{padding:26px 0 44px;}.dates-overview{grid-template-columns:1fr;gap:8px;}.dates-highlight{display:grid;grid-template-columns:1fr auto;gap:5px 14px;padding:14px 16px;}.dates-highlight>strong{font-size:18px;grid-row:2;}.dates-highlight-title{grid-column:1;grid-row:3;}.dates-highlight-status{grid-column:2;grid-row:1/4;align-self:center;gap:10px;}.dates-controls-top{align-items:flex-start;}.dates-tools{flex-wrap:wrap;}.dates-controls-bottom{align-items:flex-start;}.dates-search{max-width:none;width:100%;}.dates-day{grid-template-columns:40px minmax(0,1fr);gap:10px;}.dates-day-events{padding-left:12px;}.dates-entry{gap:8px;padding:16px 0;}.dates-day-stamp strong{font-size:22px;}.dates-entry h3{font-size:15px;}.dates-view-note{display:none;}.dates-context{font-size:11px;}}
@media(prefers-reduced-motion:reduce){.dates-workspace *{scroll-behavior:auto!important;}}
@media print{.dates-controls,.dates-calendar-action,.dates-overview,#header,#offcanvasSidebar,.dates-results-meta,.dates-no-results{display:none!important;}.dates-page{padding:0;}.dates-entry{break-inside:avoid;}.dates-page [hidden]{display:none!important;}}

.dates-print-show{display:none;}
@media print{
 @page{margin:16mm;}
 html,body{background:#fff!important;color:#111!important;}
 #header,footer,.back-top,.intercom-lightweight-app,#portal-global-search{display:none!important;}
 .dates-page{--dates-bg:#fff;--dates-soft:#f5f5f5;--dates-ink:#111;--dates-muted:#444;--dates-line:#ccc;--dates-active-bg:#f5f5f5;--dates-active-ink:#111;background:#fff!important;}
 .dates-page .container{max-width:none;width:100%;padding:0;}
 .dates-page .row{display:block;margin:0;}
 .dates-page .row>[id]{width:100%!important;padding:0;}
 .dates-page .row>[id]:has(#offcanvasSidebar){display:none!important;}
 .dates-page .dates-heading{margin-bottom:16px;}
 .dates-page h1{font-size:28pt;}
 .dates-print-show{display:block;margin:8px 0;font-size:12pt;color:#111;}
 .dates-context{font-size:9pt;margin-bottom:16px;}
 .dates-intro,.dates-eyebrow{display:none;}
 .dates-workspace .dates-agenda .dates-month[hidden]{display:block!important;}
 .dates-workspace .dates-agenda .dates-day[hidden]{display:grid!important;}
 .dates-workspace .dates-agenda .dates-entry[hidden]{display:flex!important;}
 .dates-month>h2{font-size:14pt;break-after:avoid;}
 .dates-day-events{border-color:#ccc;}
 .dates-entry{padding:12px 0;break-inside:avoid;}
 .dates-entry h3{font-size:11pt;}
 .dates-time,.dates-details,.dates-description{font-size:9pt;color:#333;}
 .dates-status{background:none;color:#444;padding:0;}
 .dates-workspace a[href]::after{content:none!important;}
}

/* Shared account hierarchy and keyboard/touch scale. */
.dates-page h1{font-size:clamp(30px,3vw,40px);font-weight:600}
.dates-page :is(button,.dates-export,.dates-filter){min-height:44px}
.dates-page :is(button,a,input,select):focus-visible{outline:2px solid var(--ec-focus,var(--dates-ink));outline-offset:3px}
@media(prefers-reduced-motion:reduce){.dates-page *{scroll-behavior:auto!important;transition:none!important}}

/* Agenda collections share the account record boundary and secondary action language. */
.dates-day-list{border:1px solid var(--dates-line);border-radius:12px;background:var(--dates-bg)}
.dates-day{gap:0;border-bottom:1px solid var(--dates-line)}
.dates-day:last-child{border-bottom:0}
.dates-day-stamp{padding:20px 10px;background:var(--dates-soft)}
.dates-day:first-child .dates-day-stamp{border-top-left-radius:11px}
.dates-day:last-child .dates-day-stamp{border-bottom-left-radius:11px}
.dates-day-events{padding-left:0;border-inline-start:1px solid var(--dates-line)}
.dates-entry{padding:16px;border-top:0;border-bottom:1px solid var(--dates-line)}
.dates-entry:last-child{border-bottom:0}
.dates-entry:is(:hover,:focus-within){background:var(--dates-soft)}
.dates-day:first-child .dates-entry:first-child{border-top-right-radius:11px}
.dates-day:last-child .dates-entry:last-child{border-bottom-right-radius:11px}
.dates-calendar-action{gap:8px;min-height:44px;padding:8px 12px;border-radius:8px;font-size:14px!important;color:var(--dates-ink);background:var(--dates-bg)}
.dates-calendar-action>i{font-size:16px;line-height:1}
.dates-calendar-action span{display:inline}
@media(max-width:767.98px){.dates-day{grid-template-columns:48px minmax(0,1fr);gap:0}.dates-entry{flex-wrap:wrap;gap:12px}.dates-entry-main{flex:1 1 100%}.dates-day-stamp{padding:20px 6px}.dates-calendar-action{margin:0;max-width:100%;white-space:normal;text-align:left}}
@media print{.dates-day-list{border:0;border-radius:0}.dates-day{border:0}.dates-day-stamp{background:transparent}.dates-entry{border-bottom:1px solid var(--dates-line);padding:12px 16px}.dates-calendar-action{display:none!important}}

.dates-day-list{overflow:hidden}
.dates-day:nth-last-child(1 of :not([hidden])),.dates-entry:nth-last-child(1 of :not([hidden])){border-bottom:0}

/* Date types use the shared flat tab baseline, not segmented selection tiles. */
.dates-controls{border-bottom:0;padding-bottom:0}
.dates-controls-bottom{align-items:stretch;gap:12px 20px;border-bottom:1px solid var(--dates-line)}
.dates-categories{align-items:stretch;gap:24px;flex:1 1 auto;min-width:0;margin-bottom:-1px}
.dates-categories button{position:relative;gap:8px;min-height:44px;padding:12px 0 16px;border-radius:0;font-size:14px;line-height:1.5;white-space:nowrap;background:transparent;box-shadow:none}
.dates-categories button[aria-pressed=true]{background:transparent;box-shadow:none;color:var(--dates-ink);font-weight:600}
.dates-categories button:hover{background:transparent;color:var(--dates-ink)}
.dates-categories button[aria-pressed=true]::after{content:'';position:absolute;inset-inline:0;bottom:0;height:3px;background:var(--bs-primary,var(--dates-ink));border-radius:0}
.dates-controls-bottom .dates-search{align-self:center;margin-bottom:12px}
@media(max-width:767.98px){.dates-categories{flex:1 1 100%;flex-wrap:nowrap;overflow-x:auto;max-width:100%;gap:20px}.dates-categories button{flex-shrink:0}.dates-controls-bottom .dates-search{order:-1;margin-bottom:0}}

/* Agenda toolbar controls follow the shared secondary-action and search scale. */
.dates-page{--dates-control-line:#788493}
[data-bs-theme=dark] .dates-page{--dates-control-line:var(--ep-control-border)}
.dates-tools button,.dates-no-results button{min-height:44px;padding:8px 12px;gap:8px;font-size:14px;line-height:1.5;border-radius:8px}
.dates-tools button>i{font-size:16px;line-height:1}
.dates-search{min-height:44px;width:220px;max-width:220px;min-width:0;flex:0 1 220px;padding:0 12px;gap:8px;border:1px solid var(--dates-control-line);border-radius:8px;background:var(--dates-bg);font-size:14px;line-height:1.5}
.dates-search>i{font-size:16px;line-height:1;flex-shrink:0}
.dates-search input{min-height:42px}
.dates-search button{width:44px;min-width:44px;height:44px;min-height:44px;margin:-1px -12px -1px 0;padding:0;border-radius:0 7px 7px 0;font-size:14px;align-self:stretch}
@media(max-width:767.98px){.dates-controls-bottom .dates-search{flex:1 1 100%;width:100%;max-width:none}.dates-search button{min-height:44px}}
