.calendar-input{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%2395a0aa'%3E%3Crect x='2.5' y='3.5' width='11' height='10' rx='1'/%3E%3Cpath d='M5 2v3m6-3v3M3 7h10'/%3E%3C/svg%3E");background-size:13px;background-position:right 7px center;background-repeat:no-repeat;padding-right:23px!important}.sf-dates .calendar-input{min-width:0;width:calc(50% - 10px);padding-left:8px!important;font-size:11px}.sf-dates .calendar-input:first-child{background-image:none;padding-right:0!important}.calendar-popup{position:fixed;z-index:100000;width:260px;max-width:calc(100vw - 16px);background:#fff;color:#6e7780;border:1px solid #e9edf1;border-radius:7px;box-shadow:0 5px 22px #243b5326;font-size:12px;padding:0 8px 6px}.calendar-popup.calendar-range{width:510px}.calendar-popup button{border:0;background:transparent;color:inherit;cursor:pointer;border-radius:3px;font:inherit;padding:0}.calendar-popup button:hover{color:#008fd3;background:#eaf6fc}.calendar-popup button:focus-visible{outline:2px solid #56afe0;outline-offset:1px}.calendar-shortcuts{display:flex;justify-content:space-around;border-bottom:1px solid #edf0f3;padding:10px 0;gap:4px}.calendar-shortcuts button{color:#008ed1;font-size:12px}.calendar-nav{display:flex;position:absolute;left:12px;right:12px;top:9px;pointer-events:none}.calendar-range .calendar-nav{top:49px}.calendar-nav span{flex:1}.calendar-nav button{pointer-events:auto;width:18px;height:22px;color:#aaa}.calendar-months{display:flex;gap:16px}.calendar-months section{flex:1;min-width:0}.calendar-month{height:40px;display:flex;align-items:center;justify-content:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;row-gap:4px}.calendar-grid span{height:27px;line-height:27px}.calendar-grid button{height:24px;min-width:0;font-size:11px}.calendar-grid .outside{color:#c3c6c9}.calendar-grid .today{box-shadow:inset 0 0 0 1px #159ce1}.calendar-grid .in-range{background:#edf7fd;border-radius:0}.calendar-grid .selected{background:#169bda;color:white}.calendar-grid button:disabled{opacity:.3;cursor:default}.calendar-footer{display:flex;align-items:center;gap:10px;border-top:1px solid #edf0f3;margin-top:7px;padding:7px 5px 0;font-size:11px;color:#99a2aa}.calendar-footer>span{flex:1}.calendar-footer button{color:#008ed1}.calendar-footer input{width:100px;border:1px solid #e5eaf0;border-radius:4px}@media print{.calendar-popup{display:none}}

/* Date and second-precision time in adjoining panels. */
.calendar-popup.calendar-datetime{width:404px;padding:0;border-radius:0;font-size:11px}
.calendar-datetime-body{display:grid;grid-template-columns:minmax(0,252px) minmax(0,152px)}
.calendar-date-side{position:relative;padding:0 10px 4px;border-right:1px solid #eee}
.calendar-datetime .calendar-nav{left:8px;right:8px;top:8px}
.calendar-datetime .calendar-month{height:37px}
.calendar-datetime .calendar-grid{row-gap:3px}
.calendar-datetime .calendar-grid button{height:24px}
.calendar-datetime .calendar-grid .selected{background:#007db5;border-radius:0}
.calendar-time-caption{height:37px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid #eee;white-space:nowrap;font-size:11px}
.calendar-time-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:205px}
.calendar-time-column{overflow-y:auto;scrollbar-width:none;border-right:1px solid #f2f2f2}
.calendar-time-column::-webkit-scrollbar{display:none}
.calendar-time-column button{display:block;width:100%;height:26px;border-radius:0}
.calendar-time-column button.selected{background:#def1f5;color:#657583}
.calendar-datetime .calendar-footer{margin-top:0;padding:8px 10px;height:40px}
.calendar-datetime .calendar-confirm{background:#007db5;color:white;padding:4px 9px;border-radius:0}
