.rw-schedule-dialog { box-sizing: border-box; width: min(540px, calc(100% - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 24px; border: 1px solid #cbd1d9; border-radius: 8px; background: #fff; color: #20252d; overflow: auto; }
.rw-schedule-dialog::backdrop { background: rgb(0 0 0 / 35%); }
.rw-schedule-dialog form { display: grid; gap: 16px; min-width: 0; }
.rw-schedule-dialog h2 { margin: 0; font-size: 20px; line-height: 1.3; letter-spacing: 0; }
.rw-schedule-subject { margin: 0; overflow-wrap: anywhere; }
.rw-schedule-dialog label { display: grid; gap: 6px; min-width: 0; font-size: 14px; }
.rw-schedule-dialog input, .rw-schedule-dialog select { box-sizing: border-box; width: 100%; min-width: 0; font-size: 16px; }
.rw-schedule-calendar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 12px; }
.rw-schedule-dialog [hidden] { display: none; }
.rw-schedule-dialog .rw-schedule-toggle { display: flex; align-items: center; gap: 8px; }
.rw-schedule-toggle input { width: 18px; height: 18px; flex: none; }
.rw-schedule-error { color: #ae2533; margin: 0; overflow-wrap: anywhere; }
.rw-schedule-error:empty { display: none; }
.rw-schedule-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 8px; }
@media (max-width: 480px) { .rw-schedule-calendar { grid-template-columns: minmax(0, 1fr); } .rw-schedule-dialog { padding: 20px; } }
