.appointment-calendar-dialog { box-sizing:border-box; width:min(34rem, calc(100% - 24px)); max-height:calc(100dvh - 24px); overflow:auto; border:1px solid #cbd5e1; border-radius:12px; padding:20px; color:#172b43; background:white; overflow-wrap:anywhere; }
.appointment-calendar-dialog::backdrop { background:rgb(15 23 42 / 45%); }
.appointment-calendar-dialog h2 { font-size:1.25rem; margin-top:0; }
.appointment-calendar-dialog fieldset { min-width:0; border:0; padding:0; margin:12px 0; }
.appointment-calendar-dialog label { display:block; margin:12px 0; }
.appointment-calendar-dialog label:has(input[type="radio"]) { display:flex; align-items:center; gap:8px; }
.appointment-calendar-dialog input[type="radio"] { width:auto; margin:0; flex:none; }
.appointment-calendar-dialog select, .appointment-calendar-dialog .calendar-name { box-sizing:border-box; width:100%; min-width:0; margin-top:6px; padding:9px; }
.appointment-calendar-dialog button { margin:6px 6px 6px 0; max-width:100%; white-space:normal; padding:10px; }
.appointment-calendar-dialog .calendar-status { min-height:1.5em; }
.appointment-calendar-dialog [hidden] { display:none; }
