.ap-calendar .ap-cal-widget{border:1px solid #d8dee5;border-radius:8px;padding:10px 12px;background:#fff;}
.ap-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}
.ap-cal-title{font-weight:600;}
.ap-cal-prev,.ap-cal-next{background:none;border:1px solid #ccd3da;border-radius:6px;width:30px;height:30px;cursor:pointer;font-size:18px;line-height:1;}
.ap-cal-prev:hover,.ap-cal-next:hover{background:#f0f4f8;}
.ap-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;}
.ap-cal-dow{text-align:center;font-size:11px;color:#8a97a5;padding:2px 0;}
.ap-cal-cell{text-align:center;padding:8px 0;border-radius:6px;font-size:14px;}
.ap-cal-cell.blank{background:transparent;}
.ap-cal-cell.na{color:#c2c9d1;}
.ap-cal-cell.avail{background:#eaf3ec;color:#1e5631;cursor:pointer;font-weight:600;}
.ap-cal-cell.avail:hover{background:#d5e9da;}
.ap-cal-cell.today{outline:1px dashed #9db4c4;}
.ap-cal-cell.sel{background:#16324f;color:#fff;}
.ap-cal-loading{color:#8a97a5;font-size:13px;padding:10px 2px;}
.ap-cal-slots-title{font-weight:600;margin:12px 0 6px;}
.ap-cal-slot-chips{display:flex;flex-wrap:wrap;gap:6px;}
.ap-cal-slot{border:1px solid #b7c9d8;background:#fff;border-radius:6px;padding:6px 12px;cursor:pointer;font-size:13px;}
.ap-cal-slot:hover{background:#eef4f9;}
.ap-cal-slot.on{background:#16324f;color:#fff;border-color:#16324f;}
.ap-cal-chosen{margin:10px 0 0;font-weight:600;color:#1e5631;font-size:13px;}

.ap-calendar.ap-invalid .ap-cal-widget{border-color:#c0392b;box-shadow:0 0 0 2px rgba(192,57,43,.15);}

.ap-cal-multi-hint{font-size:13px;color:#5a6b7a;margin:0 0 8px;font-style:italic;}
.ap-cal-picked{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.ap-cal-pick{display:inline-flex;align-items:center;gap:6px;background:#eaf3ec;color:#1e5631;border:1px solid #bcdcc4;border-radius:14px;padding:3px 6px 3px 12px;font-size:13px;}
.ap-cal-pick-x{background:none;border:none;cursor:pointer;font-size:15px;line-height:1;color:#1e5631;padding:0 2px;}
.ap-cal-pick-x:hover{color:#b32d2e;}
