:root{--green:#30B000;--green-dark:#249200;--text:#232323;--muted:#555;--paper:#f2f2f2;--card:#fff;--line:rgba(0,0,0,.08);--shadow:0 14px 34px rgba(0,0,0,.08)}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{font-family:Poppins,Arial,sans-serif;background:#eef0ee;color:var(--text);-webkit-font-smoothing:antialiased}#cita-helens-display{width:100vw;height:100vh}.chd-loading{width:100%;height:100%;display:grid;place-items:center;align-content:center;gap:22px;background:radial-gradient(circle at 82% 12%,rgba(48,176,0,.1),transparent 30%),#fff}.chd-loading img{width:min(250px,26vw);max-height:190px;object-fit:contain}.chd-loading p{margin:0;color:#666;font-weight:600}.chd-loader-line{height:5px;width:min(300px,40vw);border-radius:8px;background:linear-gradient(90deg,var(--green) 0 35%,#e5e5e5 35% 100%);animation:chdPulse 1.1s ease-in-out infinite alternate}@keyframes chdPulse{to{filter:brightness(.9);transform:scaleX(.94)}}
.chd-shell{height:100vh;display:grid;grid-template-rows:122px minmax(0,1fr) 52px;background:linear-gradient(135deg,#f6f7f6 0%,#eef1ed 100%)}.chd-header{background:#fff;border-bottom:4px solid var(--green);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:14px 34px;gap:28px;box-shadow:0 5px 16px rgba(0,0,0,.04)}.chd-brand{display:flex;align-items:center;gap:20px;min-width:0}.chd-brand img{width:122px;height:88px;object-fit:contain;flex:0 0 auto}.chd-brand-copy{min-width:0}.chd-brand-kicker{font-size:12px;letter-spacing:.14em;color:var(--green-dark);font-weight:800;text-transform:uppercase;margin-bottom:3px}.chd-brand-title{font-size:28px;line-height:1.08;font-weight:800;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chd-brand-sub{margin-top:3px;font-size:14px;color:#666;font-weight:600}.chd-datebox{text-align:right;min-width:360px}.chd-datebox .chd-mode{font-size:12px;letter-spacing:.14em;color:var(--green-dark);font-weight:800;text-transform:uppercase}.chd-datebox .chd-date{font-size:24px;line-height:1.2;font-weight:800;margin-top:3px}.chd-datebox .chd-clock{margin-top:5px;display:flex;justify-content:flex-end;align-items:baseline;gap:7px}.chd-datebox .chd-clock-label{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#777;font-weight:800}.chd-datebox .chd-clock-value{font-size:15px;color:#444;font-weight:800}.chd-stage{position:relative;min-height:0;padding:24px 34px 18px;overflow:hidden}.chd-slide{position:absolute;inset:24px 34px 18px;opacity:0;transform:translateX(22px);pointer-events:none;transition:opacity .48s ease,transform .48s ease;display:grid;grid-template-rows:auto minmax(0,1fr);gap:16px}.chd-slide.active{opacity:1;transform:translateX(0);pointer-events:auto}.chd-slide-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.chd-slide-head .chd-section-kicker{font-size:12px;letter-spacing:.14em;color:var(--green-dark);font-weight:800;text-transform:uppercase}.chd-slide-head h1{font-size:34px;line-height:1.1;margin:3px 0 0;font-weight:800;letter-spacing:-.025em}.chd-slide-note{font-size:14px;color:#666;font-weight:600}.chd-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:14px;min-height:0}.chd-time-card{background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);display:grid;grid-template-columns:150px minmax(0,1fr);overflow:hidden;min-height:0}.chd-time-card.next{border:2px solid rgba(48,176,0,.55);box-shadow:0 14px 34px rgba(48,176,0,.11)}.chd-time{background:#f1faed;border-right:1px solid rgba(48,176,0,.18);display:flex;align-items:center;justify-content:center;text-align:center;padding:15px 12px;font-size:22px;line-height:1.12;font-weight:800;color:#1f1f1f}.chd-time-card.next .chd-time{background:var(--green);color:#fff}.chd-events{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:12px 17px}.chd-event{padding:5px 0}.chd-event+.chd-event{border-top:1px solid #ededed}.chd-event-title{font-size:20px;line-height:1.18;font-weight:800;color:#232323}.chd-event-meta{margin-top:3px;font-size:13px;color:#555;line-height:1.35;font-weight:600}.chd-event-notes{margin-top:3px;font-size:12px;color:#727272;line-height:1.35}.chd-next-tag{display:inline-flex;margin-left:8px;vertical-align:middle;background:#e7f7e1;color:var(--green-dark);border-radius:7px;padding:3px 7px;font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:800}.chd-special-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;min-height:0}.chd-special-grid.single{grid-template-columns:1fr}.chd-special-col{background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);padding:18px;min-height:0;overflow:hidden}.chd-special-col h2{font-size:22px;margin:0 0 12px;color:#232323}.chd-special-list{display:grid;gap:10px}.chd-special-item{display:grid;grid-template-columns:125px minmax(0,1fr);gap:14px;align-items:center;background:#f7f7f7;border-left:4px solid var(--green);border-radius:10px;padding:11px 13px}.chd-special-time{font-size:16px;font-weight:800;color:#232323}.chd-special-title{font-size:17px;line-height:1.2;font-weight:800}.chd-special-meta{font-size:12px;color:#5d5d5d;margin-top:3px;line-height:1.35}.chd-ann-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-height:0}.chd-ann-grid.single{grid-template-columns:1fr}.chd-ann-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:24px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.chd-ann-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:7px;background:var(--green)}.chd-ann-card.important{background:linear-gradient(135deg,#f2fbea,#fff)}.chd-ann-card .label{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:var(--green-dark);margin-bottom:8px}.chd-ann-card h2{font-size:25px;line-height:1.15;margin:0 0 8px}.chd-ann-card p{font-size:17px;line-height:1.55;margin:0;color:#4d4d4d;font-weight:500}.chd-empty-card{height:100%;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);display:grid;place-items:center;text-align:center;padding:50px}.chd-empty-card img{width:180px;max-height:135px;object-fit:contain;margin-bottom:16px}.chd-empty-card h2{font-size:32px;margin:0 0 8px}.chd-empty-card p{font-size:17px;color:#666;margin:0}.chd-footer{height:52px;background:#fff;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;align-items:center;padding:0 34px;gap:20px}.chd-footer-left{display:flex;align-items:center;gap:16px;min-width:0}.chd-tagline{font-size:12px;letter-spacing:.08em;color:var(--green-dark);font-weight:800;white-space:nowrap}.chd-connection{font-size:11px;color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chd-rotation{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700;color:#555}.chd-countdown{--p:100;width:29px;height:29px;border-radius:50%;background:conic-gradient(var(--green) calc(var(--p)*1%),#e5e5e5 0);display:grid;place-items:center}.chd-countdown:after{content:"";width:19px;height:19px;background:#fff;border-radius:50%}.chd-screen-index{white-space:nowrap}.chd-progress-text{white-space:nowrap}.chd-no-rotation .chd-countdown,.chd-no-rotation .chd-progress-text{display:none}
@media(max-width:1200px){.chd-shell{grid-template-rows:110px minmax(0,1fr) 48px}.chd-header{padding:12px 24px}.chd-brand img{width:105px;height:76px}.chd-brand-title{font-size:24px}.chd-datebox{min-width:300px}.chd-datebox .chd-date{font-size:21px}.chd-stage{padding:18px 24px 14px}.chd-slide{inset:18px 24px 14px}.chd-slide-head h1{font-size:29px}.chd-time-card{grid-template-columns:125px 1fr}.chd-time{font-size:18px}.chd-event-title{font-size:17px}.chd-footer{padding:0 24px}}
@media(max-width:900px){.chd-header{grid-template-columns:1fr auto}.chd-brand-copy .chd-brand-sub{display:none}.chd-brand-title{font-size:20px}.chd-datebox{min-width:240px}.chd-datebox .chd-date{font-size:18px}.chd-grid,.chd-special-grid,.chd-ann-grid{grid-template-columns:1fr}.chd-time-card{grid-template-columns:135px 1fr}.chd-slide-head h1{font-size:25px}}

/* v1.0.2 — labeled current-time clock */
.chd-loading img{width:min(375px,39vw);max-height:285px}
.chd-shell{grid-template-rows:160px minmax(0,1fr) 52px}
.chd-shell.has-announcements{grid-template-rows:160px 76px minmax(0,1fr) 52px}
.chd-brand img{width:183px;height:132px}
.chd-empty-card img{width:270px;max-height:203px}
.chd-announcement-bar{margin:10px 34px 0;background:#fff;border:1px solid rgba(48,176,0,.24);border-left:6px solid var(--green);border-radius:12px;box-shadow:0 8px 22px rgba(0,0,0,.06);padding:10px 16px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;overflow:hidden}
.chd-announcement-bar.important{background:linear-gradient(90deg,#f1faed 0%,#fff 70%);border-color:rgba(48,176,0,.34)}
.chd-ann-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--green-dark);font-weight:800;white-space:nowrap}
.chd-ann-copy{min-width:0;display:flex;align-items:baseline;gap:10px;white-space:nowrap;overflow:hidden}
.chd-ann-copy strong{font-size:15px;color:#232323;flex:0 0 auto}
.chd-ann-copy span{font-size:13px;color:#555;font-weight:600;overflow:hidden;text-overflow:ellipsis}
.chd-ann-count{font-size:10px;color:#777;font-weight:800;white-space:nowrap}
@media(max-width:1200px){
  .chd-shell{grid-template-rows:140px minmax(0,1fr) 48px}
  .chd-shell.has-announcements{grid-template-rows:140px 70px minmax(0,1fr) 48px}
  .chd-brand img{width:158px;height:114px}
  .chd-announcement-bar{margin:8px 24px 0;padding:9px 13px}
}
@media(max-width:900px){
  .chd-brand img{width:158px;height:114px}
  .chd-ann-copy strong{font-size:13px}.chd-ann-copy span{font-size:12px}
}

/* v1.0.3 — logos increased another 25% */
.chd-loading img{width:min(469px,49vw);max-height:356px}
.chd-shell{grid-template-rows:200px minmax(0,1fr) 52px}
.chd-shell.has-announcements{grid-template-rows:200px 76px minmax(0,1fr) 52px}
.chd-brand img{width:229px;height:165px}
.chd-empty-card img{width:338px;max-height:254px}
@media(max-width:1200px){
  .chd-shell{grid-template-rows:175px minmax(0,1fr) 48px}
  .chd-shell.has-announcements{grid-template-rows:175px 70px minmax(0,1fr) 48px}
  .chd-brand img{width:198px;height:143px}
}
@media(max-width:900px){
  .chd-brand img{width:198px;height:143px}
}

/* v1.0.4 — full-day schedule screen + longer resident-specific screen */
.chd-grid-all{grid-auto-rows:minmax(0,1fr);align-content:stretch}
.chd-grid-all.chd-relaxed{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.chd-grid-all.chd-standard{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.chd-grid-all.chd-compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.chd-grid-all.chd-dense{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.chd-grid-all.chd-extra-dense{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}

.chd-grid-all.chd-standard .chd-time-card,
.chd-grid-all.chd-compact .chd-time-card{grid-template-columns:108px minmax(0,1fr)}
.chd-grid-all.chd-dense .chd-time-card{grid-template-columns:92px minmax(0,1fr)}
.chd-grid-all.chd-extra-dense .chd-time-card{grid-template-columns:80px minmax(0,1fr)}

.chd-grid-all.chd-standard .chd-time{font-size:18px;padding:10px 8px}
.chd-grid-all.chd-compact .chd-time{font-size:17px;padding:8px 7px}
.chd-grid-all.chd-dense .chd-time{font-size:15px;padding:7px 5px}
.chd-grid-all.chd-extra-dense .chd-time{font-size:14px;padding:6px 4px}

.chd-grid-all.chd-standard .chd-events{padding:9px 11px}
.chd-grid-all.chd-compact .chd-events{padding:7px 9px}
.chd-grid-all.chd-dense .chd-events{padding:6px 8px}
.chd-grid-all.chd-extra-dense .chd-events{padding:5px 7px}

.chd-grid-all.chd-standard .chd-event-title{font-size:17px}
.chd-grid-all.chd-compact .chd-event-title{font-size:16px}
.chd-grid-all.chd-dense .chd-event-title{font-size:14px;line-height:1.12}
.chd-grid-all.chd-extra-dense .chd-event-title{font-size:13px;line-height:1.1}

.chd-grid-all.chd-compact .chd-event-meta,
.chd-grid-all.chd-dense .chd-event-meta,
.chd-grid-all.chd-extra-dense .chd-event-meta{font-size:11px;margin-top:2px}
.chd-grid-all.chd-dense .chd-event-notes,
.chd-grid-all.chd-extra-dense .chd-event-notes{font-size:10px;margin-top:2px}
.chd-grid-all.chd-dense .chd-next-tag,
.chd-grid-all.chd-extra-dense .chd-next-tag{font-size:8px;padding:2px 5px;margin-left:4px}

.chd-special-slide .chd-special-col{display:flex;flex-direction:column}
.chd-special-slide .chd-special-list{grid-auto-rows:minmax(0,1fr);flex:1;min-height:0}
.chd-special-slide .chd-special-item{min-height:0}

@media(max-width:1400px){
  .chd-grid-all.chd-standard,.chd-grid-all.chd-compact{grid-template-columns:repeat(3,minmax(0,1fr))}
  .chd-grid-all.chd-dense,.chd-grid-all.chd-extra-dense{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:1000px){
  .chd-grid-all.chd-relaxed,.chd-grid-all.chd-standard,.chd-grid-all.chd-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
  .chd-grid-all.chd-dense,.chd-grid-all.chd-extra-dense{grid-template-columns:repeat(3,minmax(0,1fr))}
}


/* v1.0.5 — resident name is the primary visual on Appointments & Duties */
.chd-special-content{min-width:0;display:flex;flex-direction:column;justify-content:center}
.chd-special-resident{font-size:24px;line-height:1.08;font-weight:800;color:#232323;letter-spacing:-.01em;overflow-wrap:anywhere}
.chd-special-title{margin-top:4px;font-size:16px;line-height:1.2;font-weight:800;color:var(--green-dark)}
.chd-special-meta{font-size:13px;color:#555;margin-top:4px;line-height:1.35;font-weight:600}
.chd-special-notes{font-weight:500;color:#6b6b6b}
.chd-special-item{padding:12px 14px}
@media(max-width:1200px){
  .chd-special-resident{font-size:21px}
  .chd-special-title{font-size:15px}
}


/* v1.0.8 — TV-first lobby readability and chronological two-column flow */
.chd-shell{grid-template-rows:170px minmax(0,1fr) 54px}
.chd-shell.has-announcements{grid-template-rows:170px 112px minmax(0,1fr) 54px}
.chd-header{padding:16px 42px;gap:34px}
.chd-brand{gap:24px}
.chd-brand img{width:205px;height:148px}
.chd-brand-kicker{font-size:14px;letter-spacing:.13em;margin-bottom:4px}
.chd-brand-title{font-size:34px;line-height:1.05}
.chd-brand-sub{margin-top:5px;font-size:17px}
.chd-datebox{min-width:390px}
.chd-datebox .chd-mode{font-size:14px}
.chd-datebox .chd-date{font-size:30px;margin-top:4px}
.chd-datebox .chd-clock{margin-top:7px;gap:9px}
.chd-datebox .chd-clock-label{font-size:12px}
.chd-datebox .chd-clock-value{font-size:20px}

.chd-announcement-bar{margin:12px 42px 0;padding:14px 20px;border-left-width:8px;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;overflow:visible}
.chd-announcement-bar.important{background:linear-gradient(90deg,#eaf8e5 0%,#f7fcf5 62%,#fff 100%);border-color:rgba(48,176,0,.48);box-shadow:0 10px 28px rgba(48,176,0,.10)}
.chd-ann-label{font-size:13px;letter-spacing:.1em;padding:6px 9px;border-radius:7px;background:#edf7e9;color:var(--green-dark)}
.chd-announcement-bar.important .chd-ann-label{background:var(--green);color:#fff}
.chd-ann-copy{align-items:center;gap:14px;white-space:normal;overflow:visible;line-height:1.25}
.chd-ann-copy strong{font-size:22px;line-height:1.18}
.chd-ann-copy span{font-size:19px;line-height:1.32;color:#444;font-weight:600;overflow:visible;text-overflow:clip;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.chd-announcement-bar.important .chd-ann-copy strong{font-size:24px}
.chd-announcement-bar.important .chd-ann-copy span{font-size:20px;font-weight:700;color:#333}
.chd-ann-count{font-size:12px}

.chd-stage{padding:22px 42px 18px}
.chd-slide{inset:22px 42px 18px;gap:18px}
.chd-slide-head{align-items:flex-end}
.chd-slide-head .chd-section-kicker{font-size:14px;letter-spacing:.13em}
.chd-slide-head h1{font-size:42px;line-height:1.05;margin-top:4px}
.chd-slide-note{font-size:17px}

/* Fill the left schedule column from earliest to latest, then continue at the top of the right. */
.chd-grid-all,.chd-grid-all.chd-relaxed,.chd-grid-all.chd-standard,.chd-grid-all.chd-compact,.chd-grid-all.chd-dense,.chd-grid-all.chd-extra-dense{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1fr);gap:18px;align-content:stretch;min-height:0}
.chd-schedule-column{display:grid;grid-template-rows:repeat(var(--chd-schedule-rows),minmax(0,1fr));gap:12px;min-height:0}
.chd-time-card,.chd-grid-all.chd-standard .chd-time-card,.chd-grid-all.chd-compact .chd-time-card,.chd-grid-all.chd-dense .chd-time-card,.chd-grid-all.chd-extra-dense .chd-time-card{grid-template-columns:145px minmax(0,1fr);border-radius:12px}
.chd-time,.chd-grid-all.chd-standard .chd-time,.chd-grid-all.chd-compact .chd-time,.chd-grid-all.chd-dense .chd-time,.chd-grid-all.chd-extra-dense .chd-time{font-size:24px;line-height:1.08;padding:12px 10px}
.chd-events,.chd-grid-all.chd-standard .chd-events,.chd-grid-all.chd-compact .chd-events,.chd-grid-all.chd-dense .chd-events,.chd-grid-all.chd-extra-dense .chd-events{padding:10px 16px}
.chd-event{padding:4px 0}
.chd-event-title,.chd-grid-all.chd-standard .chd-event-title,.chd-grid-all.chd-compact .chd-event-title,.chd-grid-all.chd-dense .chd-event-title,.chd-grid-all.chd-extra-dense .chd-event-title{font-size:23px;line-height:1.12}
.chd-event-meta,.chd-grid-all.chd-compact .chd-event-meta,.chd-grid-all.chd-dense .chd-event-meta,.chd-grid-all.chd-extra-dense .chd-event-meta{font-size:15px;line-height:1.25;margin-top:3px}
.chd-event-notes,.chd-grid-all.chd-dense .chd-event-notes,.chd-grid-all.chd-extra-dense .chd-event-notes{font-size:14px;line-height:1.25;margin-top:3px}
.chd-next-tag,.chd-grid-all.chd-dense .chd-next-tag,.chd-grid-all.chd-extra-dense .chd-next-tag{font-size:10px;padding:3px 7px;margin-left:7px}

/* Slightly tighten only when a day contains many distinct time rows. */
.chd-grid-all.chd-standard .chd-schedule-column{gap:10px}
.chd-grid-all.chd-standard .chd-time{font-size:22px}
.chd-grid-all.chd-standard .chd-event-title{font-size:21px}
.chd-grid-all.chd-compact .chd-schedule-column{gap:8px}
.chd-grid-all.chd-compact .chd-time{font-size:20px;padding:8px}
.chd-grid-all.chd-compact .chd-events{padding:7px 12px}
.chd-grid-all.chd-compact .chd-event-title{font-size:19px}
.chd-grid-all.chd-compact .chd-event-meta{font-size:13px}
.chd-grid-all.chd-compact .chd-event-notes{font-size:12px}
.chd-grid-all.chd-dense .chd-schedule-column,.chd-grid-all.chd-extra-dense .chd-schedule-column{gap:6px}
.chd-grid-all.chd-dense .chd-time,.chd-grid-all.chd-extra-dense .chd-time{font-size:18px;padding:6px}
.chd-grid-all.chd-dense .chd-events,.chd-grid-all.chd-extra-dense .chd-events{padding:5px 10px}
.chd-grid-all.chd-dense .chd-event-title,.chd-grid-all.chd-extra-dense .chd-event-title{font-size:17px}
.chd-grid-all.chd-dense .chd-event-meta,.chd-grid-all.chd-extra-dense .chd-event-meta{font-size:12px}
.chd-grid-all.chd-dense .chd-event-notes,.chd-grid-all.chd-extra-dense .chd-event-notes{font-size:11px}

.chd-special-grid{gap:20px}
.chd-special-col{border-radius:12px;padding:20px}
.chd-special-col h2{font-size:27px;margin-bottom:14px}
.chd-special-list{gap:11px}
.chd-special-item{grid-template-columns:145px minmax(0,1fr);gap:16px;border-radius:9px;padding:13px 15px}
.chd-special-time{font-size:20px}
.chd-special-resident{font-size:27px}
.chd-special-title{font-size:18px;margin-top:4px}
.chd-special-meta{font-size:14px}

.chd-footer{height:54px;padding:0 42px}
.chd-tagline{font-size:13px}
.chd-connection{font-size:12px}
.chd-rotation{font-size:13px;gap:11px}

@media(max-width:1400px), (max-height:820px){
  .chd-shell{grid-template-rows:138px minmax(0,1fr) 48px}
  .chd-shell.has-announcements{grid-template-rows:138px 94px minmax(0,1fr) 48px}
  .chd-header{padding:12px 28px;gap:24px}
  .chd-brand{gap:18px}.chd-brand img{width:170px;height:122px}.chd-brand-title{font-size:27px}.chd-brand-kicker{font-size:11px}.chd-brand-sub{font-size:14px}
  .chd-datebox{min-width:310px}.chd-datebox .chd-mode{font-size:11px}.chd-datebox .chd-date{font-size:23px}.chd-datebox .chd-clock-label{font-size:10px}.chd-datebox .chd-clock-value{font-size:16px}
  .chd-announcement-bar{margin:9px 28px 0;padding:10px 15px;gap:12px}.chd-ann-label{font-size:10px}.chd-ann-copy strong{font-size:18px}.chd-ann-copy span{font-size:16px}.chd-announcement-bar.important .chd-ann-copy strong{font-size:20px}.chd-announcement-bar.important .chd-ann-copy span{font-size:17px}.chd-ann-count{font-size:10px}
  .chd-stage{padding:16px 28px 13px}.chd-slide{inset:16px 28px 13px;gap:12px}.chd-slide-head .chd-section-kicker{font-size:11px}.chd-slide-head h1{font-size:32px}.chd-slide-note{font-size:14px}
  .chd-grid-all,.chd-grid-all.chd-relaxed,.chd-grid-all.chd-standard,.chd-grid-all.chd-compact,.chd-grid-all.chd-dense,.chd-grid-all.chd-extra-dense{gap:13px}.chd-schedule-column{gap:8px}
  .chd-time-card,.chd-grid-all.chd-standard .chd-time-card,.chd-grid-all.chd-compact .chd-time-card,.chd-grid-all.chd-dense .chd-time-card,.chd-grid-all.chd-extra-dense .chd-time-card{grid-template-columns:118px minmax(0,1fr)}
  .chd-time,.chd-grid-all.chd-standard .chd-time{font-size:19px;padding:8px}.chd-events,.chd-grid-all.chd-standard .chd-events{padding:7px 11px}.chd-event-title,.chd-grid-all.chd-standard .chd-event-title{font-size:18px}.chd-event-meta,.chd-grid-all.chd-standard .chd-event-meta{font-size:12px}.chd-event-notes,.chd-grid-all.chd-standard .chd-event-notes{font-size:11px}
  .chd-grid-all.chd-compact .chd-time{font-size:17px}.chd-grid-all.chd-compact .chd-event-title{font-size:16px}.chd-grid-all.chd-dense .chd-time,.chd-grid-all.chd-extra-dense .chd-time{font-size:15px}.chd-grid-all.chd-dense .chd-event-title,.chd-grid-all.chd-extra-dense .chd-event-title{font-size:14px}
  .chd-special-col{padding:15px}.chd-special-col h2{font-size:21px}.chd-special-item{grid-template-columns:118px 1fr;padding:10px 12px}.chd-special-time{font-size:16px}.chd-special-resident{font-size:21px}.chd-special-title{font-size:15px}.chd-special-meta{font-size:12px}
  .chd-footer{height:48px;padding:0 28px}.chd-tagline{font-size:11px}.chd-connection{font-size:10px}.chd-rotation{font-size:11px}
}

@media(max-width:900px){
  .chd-grid-all,.chd-grid-all.chd-relaxed,.chd-grid-all.chd-standard,.chd-grid-all.chd-compact,.chd-grid-all.chd-dense,.chd-grid-all.chd-extra-dense{grid-template-columns:1fr;overflow:auto}
  .chd-schedule-column{grid-template-rows:none;grid-auto-rows:minmax(70px,auto)}
  .chd-header{grid-template-columns:minmax(0,1fr) auto}.chd-brand-title{font-size:20px}.chd-brand-sub{display:none}.chd-datebox{min-width:220px}
}


/* v1.0.9 — appointments and duties now use schedule-like cards with safer text fitting */
.chd-special-grid{gap:18px;align-items:start}
.chd-special-col{background:transparent;border:none;box-shadow:none;padding:0;min-height:0;display:flex;flex-direction:column}
.chd-special-col h2{font-size:25px;line-height:1.1;margin:0 0 12px;color:#232323;font-weight:800;letter-spacing:-.02em}
.chd-special-list{display:grid;gap:10px;min-height:0;align-content:start}
.chd-special-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);display:grid;grid-template-columns:128px minmax(0,1fr);overflow:hidden;min-height:0}
.chd-special-timeblock{background:#f1faed;border-right:1px solid rgba(48,176,0,.18);display:flex;align-items:center;justify-content:center;text-align:center;padding:10px 8px;font-size:20px;line-height:1.08;font-weight:800;color:#1f1f1f}
.chd-special-body{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:10px 14px}
.chd-special-resident{font-size:22px;line-height:1.08;font-weight:800;color:#232323;letter-spacing:-.01em;overflow-wrap:anywhere}
.chd-special-title{margin-top:4px;font-size:15px;line-height:1.18;font-weight:800;color:var(--green-dark);overflow-wrap:anywhere}
.chd-special-meta{margin-top:4px;font-size:12px;line-height:1.28;font-weight:600;color:#555;overflow-wrap:anywhere}
.chd-special-notes{margin-top:4px;font-size:12px;line-height:1.28;font-weight:500;color:#6b6b6b;overflow-wrap:anywhere}

@media(max-width:1400px), (max-height:820px){
  .chd-special-col h2{font-size:20px;margin-bottom:10px}
  .chd-special-list{gap:8px}
  .chd-special-card{grid-template-columns:108px minmax(0,1fr)}
  .chd-special-timeblock{font-size:17px;padding:8px 6px}
  .chd-special-body{padding:8px 11px}
  .chd-special-resident{font-size:18px}
  .chd-special-title{font-size:13px}
  .chd-special-meta,.chd-special-notes{font-size:11px;line-height:1.22}
}

@media(max-width:900px){
  .chd-special-card{grid-template-columns:110px minmax(0,1fr)}
}


/* v1.0.10 — each schedule item gets its own card; add new schedule screens after 10 items */
.chd-grid-all.single{grid-template-columns:minmax(0,1fr)}
.chd-schedule-slide .chd-schedule-column{align-content:start}


/* v1.0.11 — unified 8-card pages, multi-highlight, cleaner header spacing, and mobile/tablet fit */
.chd-shell{grid-template-rows:184px minmax(0,1fr) 54px}
.chd-shell.has-announcements{grid-template-rows:184px 112px minmax(0,1fr) 54px}
.chd-header{padding:18px 42px 26px;gap:34px}
.chd-grid-all{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-height:0;align-items:stretch}
.chd-grid-all.single{grid-template-columns:minmax(0,1fr)}
.chd-schedule-column{display:grid;grid-template-rows:repeat(4,minmax(0,1fr));gap:12px;min-height:0;align-content:start}
.chd-grid-all.single .chd-schedule-column{grid-template-rows:repeat(8,minmax(0,1fr))}
.chd-special-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;min-height:0;align-items:stretch}
.chd-special-grid.single{grid-template-columns:minmax(0,1fr)}
.chd-special-col{display:flex;flex-direction:column;min-height:0}
.chd-special-col h2{font-size:24px;line-height:1.1;margin:0 0 12px;color:#232323;font-weight:800;letter-spacing:-.02em}
.chd-special-list{display:grid;grid-template-rows:repeat(4,minmax(0,1fr));gap:12px;min-height:0;align-content:start}
.chd-special-grid.single .chd-special-list{grid-template-rows:repeat(8,minmax(0,1fr))}
.chd-time-card,.chd-special-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);display:grid;grid-template-columns:128px minmax(0,1fr);overflow:hidden;min-height:0}
.chd-time,.chd-special-timeblock{background:#f1faed;border-right:1px solid rgba(48,176,0,.18);display:flex;align-items:center;justify-content:center;text-align:center;padding:10px 8px;font-size:21px;line-height:1.08;font-weight:800;color:#1f1f1f}
.chd-events,.chd-special-body{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:10px 14px}
.chd-event{padding:0}
.chd-event-title{font-size:20px;line-height:1.12;font-weight:800;color:#232323;overflow-wrap:anywhere}
.chd-event-meta{margin-top:4px;font-size:12px;line-height:1.28;color:#555;font-weight:600;overflow-wrap:anywhere}
.chd-event-notes{margin-top:4px;font-size:12px;line-height:1.28;color:#6b6b6b;font-weight:500;overflow-wrap:anywhere}
.chd-special-resident{font-size:20px;line-height:1.08;font-weight:800;color:#232323;letter-spacing:-.01em;overflow-wrap:anywhere}
.chd-special-title{margin-top:4px;font-size:15px;line-height:1.18;font-weight:800;color:var(--green-dark);overflow-wrap:anywhere}
.chd-special-meta{margin-top:4px;font-size:12px;line-height:1.28;font-weight:600;color:#555;overflow-wrap:anywhere}
.chd-special-notes{margin-top:4px;font-size:12px;line-height:1.28;font-weight:500;color:#6b6b6b;overflow-wrap:anywhere}
.chd-time-card.next,.chd-special-card.next{border:2px solid rgba(48,176,0,.55);box-shadow:0 14px 34px rgba(48,176,0,.11)}
.chd-time-card.next .chd-time,.chd-special-card.next .chd-special-timeblock{background:var(--green);color:#fff}
.chd-next-tag{display:inline-flex;margin-left:8px;vertical-align:middle;background:#e7f7e1;color:var(--green-dark);border-radius:7px;padding:3px 7px;font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:800}
.chd-time-card.next .chd-next-tag,.chd-special-card.next .chd-next-tag{background:#e7f7e1;color:var(--green-dark)}

@media(max-width:1400px), (max-height:820px){
  .chd-shell{grid-template-rows:152px minmax(0,1fr) 48px}
  .chd-shell.has-announcements{grid-template-rows:152px 94px minmax(0,1fr) 48px}
  .chd-header{padding:14px 28px 20px;gap:24px}
  .chd-grid-all,.chd-special-grid{gap:14px}
  .chd-schedule-column,.chd-special-list{gap:10px}
  .chd-time-card,.chd-special-card{grid-template-columns:110px minmax(0,1fr)}
  .chd-time,.chd-special-timeblock{font-size:17px;padding:8px 6px}
  .chd-events,.chd-special-body{padding:8px 11px}
  .chd-event-title{font-size:16px}
  .chd-event-meta,.chd-event-notes,.chd-special-meta,.chd-special-notes{font-size:11px;line-height:1.22}
  .chd-special-resident{font-size:17px}
  .chd-special-title{font-size:13px}
  .chd-special-col h2{font-size:20px;margin-bottom:10px}
}

@media(max-width:1100px){
  html,body{height:auto;overflow:auto}
  #cita-helens-display{height:auto;min-height:100vh}
  .chd-shell,.chd-shell.has-announcements{height:auto;min-height:100vh;grid-template-rows:auto auto minmax(0,1fr) auto}
  .chd-stage{overflow:auto;padding:16px 20px 14px}
  .chd-slide{position:static;inset:auto;transform:none;opacity:1;display:none;gap:14px}
  .chd-slide.active{display:grid}
  .chd-header{padding:14px 20px 18px;gap:18px}
  .chd-brand{gap:14px}
  .chd-brand img{width:128px;height:92px}
  .chd-brand-title{font-size:22px;white-space:normal}
  .chd-brand-kicker{font-size:11px}
  .chd-brand-sub{font-size:13px}
  .chd-datebox{min-width:210px}.chd-datebox .chd-mode{font-size:11px}.chd-datebox .chd-date{font-size:20px}.chd-datebox .chd-clock-label{font-size:10px}.chd-datebox .chd-clock-value{font-size:15px}
  .chd-announcement-bar{margin:8px 20px 0;padding:10px 12px;gap:10px}.chd-ann-label{font-size:10px}.chd-ann-copy strong{font-size:17px}.chd-ann-copy span{font-size:14px}.chd-announcement-bar.important .chd-ann-copy strong{font-size:18px}.chd-announcement-bar.important .chd-ann-copy span{font-size:15px}
  .chd-slide-head .chd-section-kicker{font-size:11px}.chd-slide-head h1{font-size:28px}.chd-slide-note{font-size:13px}
  .chd-grid-all,.chd-special-grid{grid-template-columns:1fr}
  .chd-schedule-column,.chd-grid-all.single .chd-schedule-column,.chd-special-list,.chd-special-grid.single .chd-special-list{grid-template-rows:none;grid-auto-rows:minmax(90px,auto)}
  .chd-time-card,.chd-special-card{grid-template-columns:108px minmax(0,1fr)}
  .chd-time,.chd-special-timeblock{font-size:16px}.chd-event-title{font-size:17px}.chd-special-resident{font-size:18px}.chd-special-title{font-size:14px}
  .chd-footer{padding:0 20px}
}

@media(max-width:680px){
  .chd-header{grid-template-columns:1fr;align-items:start}
  .chd-datebox{text-align:left;min-width:0}
  .chd-datebox .chd-clock{justify-content:flex-start}
  .chd-brand-title{font-size:20px}
  .chd-announcement-bar{grid-template-columns:1fr}
  .chd-time-card,.chd-special-card{grid-template-columns:92px minmax(0,1fr)}
  .chd-time,.chd-special-timeblock{font-size:14px;padding:8px 5px}
  .chd-events,.chd-special-body{padding:8px 10px}
  .chd-event-title{font-size:16px}
  .chd-special-resident{font-size:17px}
  .chd-rotation{font-size:10px;gap:8px}
}


/* v1.0.12 — fix second-page left-first flow and repair appointments/duties layout */
.chd-grid-all{grid-template-columns:repeat(2,minmax(0,1fr));}
.chd-grid-all.single{grid-template-columns:minmax(0,1fr)}
.chd-schedule-column{display:grid;grid-template-rows:repeat(4,minmax(0,1fr));gap:12px;min-height:0;align-content:start}
.chd-grid-all.single .chd-schedule-column{grid-template-rows:repeat(4,minmax(0,1fr))}
.chd-special-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch;min-height:0}
.chd-special-grid.single{grid-template-columns:minmax(0,1fr)}
.chd-special-col{display:flex;flex-direction:column;min-height:0}
.chd-special-col-single .chd-special-grid-inner{display:grid;gap:18px;min-height:0}
.chd-special-col-single .chd-special-grid-inner.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}
.chd-special-col-single .chd-special-grid-inner.one-col{grid-template-columns:minmax(0,1fr)}
.chd-special-list{display:grid;grid-template-rows:repeat(4,minmax(0,1fr));gap:12px;min-height:0;align-content:start}
.chd-special-col-single .chd-special-list{grid-template-rows:repeat(4,minmax(0,1fr))}

@media(max-width:1100px){
  .chd-special-col-single .chd-special-grid-inner.two-col{grid-template-columns:1fr}
  .chd-schedule-column,.chd-grid-all.single .chd-schedule-column,.chd-special-list,.chd-special-col-single .chd-special-list{grid-template-rows:none;grid-auto-rows:minmax(90px,auto)}
}


/* v1.0.13 — mobile announcement stacking/fitting fix */
@media(max-width:680px){
  .chd-announcement-bar{
    grid-template-columns:minmax(0,1fr);
    align-items:start;
    gap:10px;
    margin:10px 16px 0;
    padding:12px;
    overflow:hidden;
  }
  .chd-ann-label{
    display:block;
    width:100%;
    white-space:normal;
    text-align:left;
    font-size:10px;
    line-height:1.2;
    padding:7px 9px;
  }
  .chd-ann-copy{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:6px;
    width:100%;
    min-width:0;
    white-space:normal;
    overflow:visible;
    line-height:1.3;
  }
  .chd-ann-copy strong,
  .chd-announcement-bar.important .chd-ann-copy strong{
    display:block;
    width:100%;
    min-width:0;
    flex:none;
    font-size:18px;
    line-height:1.2;
    overflow-wrap:anywhere;
  }
  .chd-ann-copy span,
  .chd-announcement-bar.important .chd-ann-copy span{
    display:block;
    width:100%;
    min-width:0;
    font-size:14px;
    line-height:1.35;
    font-weight:600;
    overflow:visible;
    text-overflow:clip;
    white-space:normal;
    overflow-wrap:anywhere;
    -webkit-line-clamp:unset;
    -webkit-box-orient:unset;
  }
  .chd-ann-count{
    display:block;
    font-size:10px;
    white-space:normal;
  }
}


/* v1.0.14 — appointments/duties match schedule cards and mobile items stack cleanly */
.chd-special-card{
  grid-template-columns:128px minmax(0,1fr);
}
.chd-special-timeblock{
  background:#f1faed;
  border-right:1px solid rgba(48,176,0,.18);
}
.chd-special-body{
  padding:10px 14px;
}
.chd-special-card .chd-event-title{
  font-size:20px;
  line-height:1.12;
}
.chd-special-card .chd-event-meta{
  margin-top:4px;
  font-size:12px;
  line-height:1.28;
}
.chd-special-card .chd-event-notes{
  margin-top:4px;
  font-size:12px;
  line-height:1.28;
}

@media(max-width:1100px){
  .chd-grid-all,
  .chd-special-grid,
  .chd-special-col-single .chd-special-grid-inner{
    grid-template-columns:1fr !important;
  }
  .chd-schedule-column,
  .chd-special-list{
    display:grid;
    grid-template-rows:none !important;
    grid-auto-rows:minmax(90px,auto);
    gap:10px;
  }
}

@media(max-width:680px){
  .chd-stage{
    padding:14px 16px 12px;
  }
  .chd-grid-all,
  .chd-special-grid,
  .chd-special-col-single .chd-special-grid-inner{
    display:grid;
    grid-template-columns:1fr !important;
    gap:12px;
  }
  .chd-schedule-column,
  .chd-special-list{
    gap:12px;
  }
  .chd-time-card,
  .chd-special-card{
    grid-template-columns:92px minmax(0,1fr);
  }
  .chd-time,
  .chd-special-timeblock{
    font-size:14px;
    padding:8px 5px;
  }
  .chd-events,
  .chd-special-body{
    padding:8px 10px;
  }
  .chd-special-card .chd-event-title,
  .chd-event-title{
    font-size:16px;
  }
  .chd-special-card .chd-event-meta,
  .chd-special-card .chd-event-notes,
  .chd-event-meta,
  .chd-event-notes{
    font-size:11px;
    line-height:1.3;
  }
}

/* v1.0.15 — keep Appointments & Duties cards full-height like Daily Schedule cards */
@media(min-width:1101px){
  /* The section heading uses only the space it needs; the card area fills everything below it. */
  .chd-special-col{
    height:100%;
    min-height:0;
  }
  .chd-special-col > .chd-special-list{
    flex:1 1 auto;
    min-height:0;
    grid-template-rows:repeat(4,minmax(0,1fr));
  }
  .chd-special-col-single > .chd-special-grid-inner{
    flex:1 1 auto;
    min-height:0;
    align-items:stretch;
  }
  .chd-special-col-single > .chd-special-grid-inner > .chd-special-list{
    height:100%;
    min-height:0;
    grid-template-rows:repeat(4,minmax(0,1fr));
  }
  .chd-special-card{
    height:100%;
    min-height:0;
  }
}

/* v1.0.18 — robust TV fitting for Appointments & Duties notes */
/* Notes on resident-specific cards are intentionally kept on the same detail flow as the
   appointment/duty description. This prevents a third stacked text row from being clipped on
   full-HD TV browsers while keeping the resident name prominent and the notes readable. */
.chd-special-card.has-notes .chd-special-body{
  padding-top:7px;
  padding-bottom:7px;
}
.chd-special-card.has-notes .chd-event-title{
  line-height:1.06;
}
.chd-special-details{
  margin-top:3px;
  font-size:12px;
  line-height:1.22;
  color:#555;
  font-weight:600;
  overflow-wrap:anywhere;
}
.chd-special-details .chd-event-meta,
.chd-special-details .chd-event-notes{
  display:inline;
  margin:0;
  font-size:inherit;
  line-height:inherit;
}
.chd-special-details .chd-event-notes{
  color:#666;
  font-weight:500;
}
.chd-special-detail-sep{
  color:#777;
  font-weight:600;
}

@media(min-width:1101px){
  .chd-special-slide{
    gap:10px;
  }
  .chd-special-col h2{
    margin-bottom:8px;
  }
  .chd-special-list{
    gap:8px;
  }
  .chd-special-card.has-notes .chd-special-body{
    padding:6px 12px;
  }
  .chd-special-card.has-notes .chd-event-title{
    font-size:19px;
  }
}

@media (min-width:1101px) and (max-width:1400px), (min-width:1101px) and (max-height:820px){
  .chd-special-slide{
    gap:8px;
  }
  .chd-special-col h2{
    margin-bottom:6px;
  }
  .chd-special-list{
    gap:6px;
  }
  .chd-special-card.has-notes .chd-special-body{
    padding:4px 10px;
  }
  .chd-special-card.has-notes .chd-event-title{
    font-size:16px;
    line-height:1.04;
  }
  .chd-special-details{
    margin-top:2px;
    font-size:11px;
    line-height:1.16;
  }
}

