.be-calendar { font-family:var(--be-font-body); background:var(--be-white); border:1px solid var(--be-border); border-radius:var(--be-radius); box-shadow:var(--be-shadow-raised); color:var(--be-ink); width:308px; max-width:calc(100vw - 24px); padding:8px; box-sizing:border-box; }
.be-calendar .flatpickr-innerContainer,.be-calendar .flatpickr-rContainer,.be-calendar .flatpickr-days,.be-calendar .dayContainer { width:100%; min-width:0; max-width:100%; }
.be-calendar .dayContainer { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); }
.be-calendar .flatpickr-day { width:100%; max-width:none; height:38px; line-height:36px; border-radius:6px; color:var(--be-ink); }
.be-calendar .flatpickr-day:hover,.be-calendar .flatpickr-day:focus { background:var(--be-accent-wash); border-color:var(--be-accent-wash); }
.be-calendar .flatpickr-day.today { border-color:var(--be-accent); }
.be-calendar .flatpickr-day.selected,.be-calendar .flatpickr-day.selected:hover { background:var(--be-accent); border-color:var(--be-accent); color:white; }
.be-calendar .flatpickr-day.flatpickr-disabled { color:#9B9CA6; text-decoration:line-through; background:transparent; }
.be-calendar .flatpickr-months .flatpickr-month,.be-calendar .flatpickr-current-month { color:var(--be-ink); fill:var(--be-ink); }
.be-calendar .flatpickr-current-month { font-size:15px; padding-top:6px; }
.be-calendar .flatpickr-monthDropdown-months,.be-calendar .numInput.cur-year { font-family:var(--be-font-body); font-weight:600; }
.be-calendar .flatpickr-weekday { color:var(--be-ink-muted); font-weight:500; }
.be-calendar .flatpickr-prev-month:hover svg,.be-calendar .flatpickr-next-month:hover svg { fill:var(--be-accent); }
.be-calendar-clear { width:100%; margin-top:8px; min-height:40px; border:0; border-top:1px solid var(--be-border); background:white; color:var(--be-accent); font:inherit; font-size:14px; font-weight:600; cursor:pointer; }
.be-calendar button:focus-visible,.be-calendar select:focus-visible,.be-calendar input:focus-visible { outline:2px solid var(--be-accent); outline-offset:2px; }
input.be-input[readonly] { cursor:pointer; }
