/* Shared control rows above the list and pane. Both start at the first card. */
#patient-calendar.pc-appointments-mode .pc-split-workspace{
 display:grid;
 grid-template-columns:minmax(0,1.35fr) minmax(350px,.9fr);
 grid-template-rows:auto auto auto auto minmax(0,1fr);
 grid-template-areas:"navigation navigation" "notices notices" "filters filters" "controls controls" "appointments details";
 gap:0 14px;min-height:0;overflow:hidden;
}
#patient-calendar.pc-appointments-mode .pc-list-surface,
#patient-calendar.pc-appointments-mode .pc-list-surface>.pc-appointments{display:contents;container-type:normal}
#patient-calendar.pc-appointments-mode .pc-list-surface>.pc-page-toolbar{grid-area:navigation;justify-content:flex-start;margin:0 0 9px;gap:8px}
#patient-calendar.pc-appointments-mode .pc-page-toolbar>button{margin:0;min-height:34px}
#patient-calendar.pc-appointments-mode .pc-list-alerts{grid-area:notices;min-width:0}
#patient-calendar.pc-appointments-mode .pc-list-alerts:empty{display:none}
#patient-calendar.pc-appointments-mode .pc-list-alerts>p{margin:0 0 8px}
#patient-calendar.pc-appointments-mode .pc-list-headerbar{grid-area:filters;display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;min-width:0;margin:0 0 9px}
#patient-calendar.pc-appointments-mode .pc-list-headerbar>.pc-list-heading{display:contents}
#patient-calendar.pc-appointments-mode .pc-list-headerbar h2{order:0;flex:none;margin:0;font-size:1rem;line-height:1.4}
#patient-calendar.pc-appointments-mode .pc-list-headerbar h2>span{font-weight:400;color:#64776a}
#patient-calendar.pc-appointments-mode .pc-list-headerbar>.pc-list-filters{order:1;display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:5px;margin:0 0 0 auto;padding:0}
#patient-calendar.pc-appointments-mode .pc-list-headerbar .pn-summary{order:2;flex:none;min-height:32px}
#patient-calendar.pc-appointments-mode .pc-list-headerbar .pc-list-filters>button{min-height:32px}
#patient-calendar.pc-appointments-mode .pc-list-controls{grid-area:controls;display:flex;flex-wrap:wrap;align-items:end;gap:8px 10px;margin:0 0 10px;min-width:0;padding:8px 10px}
#patient-calendar.pc-appointments-mode .pc-list-surface .pc-list-controls .pc-list-search{flex:1 1 230px;min-width:170px}
#patient-calendar.pc-appointments-mode .pc-list-controls>label{margin:0}
#patient-calendar.pc-appointments-mode .pc-list-controls label:has([data-pc-sort]){flex:0 1 125px;min-width:105px}
#patient-calendar.pc-appointments-mode .pc-list-controls label:has([data-pc-direction]){flex:0 1 150px;min-width:130px}
#patient-calendar.pc-appointments-mode .pc-list-controls select{width:100%;min-width:0}
#patient-calendar.pc-appointments-mode .pc-list-surface .pc-list-controls>.pc-select-all{flex:0 0 auto;align-self:flex-end;min-height:34px;font-size:.76rem;white-space:nowrap}
#patient-calendar.pc-appointments-mode .pc-list-controls>[data-pc-action="bulk-remove"]{flex:0 0 auto;min-height:34px;white-space:nowrap}
#patient-calendar.pc-appointments-mode .pc-list-surface .pc-appointment-list{grid-area:appointments;min-width:0;min-height:0;overflow-y:auto;margin:0;container-type:inline-size;align-self:stretch}
#patient-calendar.pc-appointments-mode .pc-sidepanel{grid-area:details;min-height:0;align-self:stretch;margin:0}
@media(min-width:1700px){#patient-calendar.pc-appointments-mode .pc-split-workspace{grid-template-columns:minmax(0,1.55fr) minmax(440px,1fr)}}
@media(max-width:1050px){
 #patient-calendar.pc-appointments-mode .pc-split-workspace{grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);column-gap:10px}
 #patient-calendar.pc-appointments-mode .pc-list-headerbar>.pc-list-filters{margin-left:0;flex:1 1 auto}
 #patient-calendar.pc-appointments-mode .pc-list-headerbar h2{flex:1 1 auto}
 #patient-calendar.pc-appointments-mode .pc-list-headerbar .pn-summary{margin-left:auto}
 #patient-calendar.pc-appointments-mode .pc-list-controls .pc-list-search{flex-basis:200px}
}
@media(max-width:760px){
 #patient-calendar.pc-appointments-mode .pc-split-workspace{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto auto minmax(140px,1fr) minmax(160px,.8fr);grid-template-areas:"navigation" "notices" "filters" "controls" "appointments" "details";gap:0}
 #patient-calendar.pc-appointments-mode .pc-split-workspace:has(.pc-sidepanel[data-pane-mode="empty"]){grid-template-rows:auto auto auto auto minmax(0,1fr) 0}
 #patient-calendar.pc-appointments-mode .pc-list-headerbar{gap:7px;margin-bottom:8px}
 #patient-calendar.pc-appointments-mode .pc-list-headerbar h2{font-size:.94rem}
 #patient-calendar.pc-appointments-mode .pc-list-headerbar>.pc-list-filters{order:3;flex:1 1 100%;margin:0}
 #patient-calendar.pc-appointments-mode .pc-list-controls{gap:7px;padding:7px}
 #patient-calendar.pc-appointments-mode .pc-list-surface .pc-list-controls .pc-list-search{flex-basis:100%;min-width:0}
 #patient-calendar.pc-appointments-mode .pc-list-controls label:has([data-pc-sort]),#patient-calendar.pc-appointments-mode .pc-list-controls label:has([data-pc-direction]){flex:1 1 120px}
 #patient-calendar.pc-appointments-mode .pc-list-surface .pc-list-controls>.pc-select-all{flex:1 1 auto}
 #patient-calendar.pc-appointments-mode .pc-sidepanel{margin-top:9px;min-height:0}
 #patient-calendar.pc-appointments-mode .pc-list-surface .pc-appointment-list{min-height:0}
}
@media print{
 #patient-calendar.pc-appointments-mode .pc-split-workspace{display:block;overflow:visible}
 #patient-calendar.pc-appointments-mode .pc-list-headerbar,#patient-calendar.pc-appointments-mode .pc-list-controls,#patient-calendar.pc-appointments-mode .pc-page-toolbar{display:none}
}
