.cf-calendar{box-sizing:border-box;width:min(420px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:20px;margin:auto;border:1px solid #777b69;border-radius:16px;background:#263b32;color:#f3efe5;font:15px/1.5 Arial,Helvetica,sans-serif;box-shadow:0 18px 70px #0008;overflow-y:auto;overscroll-behavior:contain}
.cf-calendar::backdrop{background:#10261fdc;backdrop-filter:blur(3px)}.cf-calendar *{box-sizing:border-box}.cf-calendar .cf-cal-head{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:0 0 18px}.cf-calendar h2{font:25px/1.2 Georgia,serif;color:#f3efe5;letter-spacing:0;margin:0}.cf-calendar button{font:14px/1.2 Arial,Helvetica,sans-serif;cursor:pointer;border:1px solid #686d5b;border-radius:7px;background:transparent;color:#f3efe5;min-height:42px;min-width:0;padding:8px;letter-spacing:0;box-shadow:none;text-transform:none}.cf-calendar button:hover{background:#3e4434}.cf-calendar button:focus-visible{outline:2px solid #f1d49d;outline-offset:2px}.cf-calendar button:disabled{opacity:.3;cursor:default}.cf-calendar .cf-cal-close{border:0;font-size:28px;width:42px;flex:0 0 42px}.cf-calendar .cf-cal-choices{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}.cf-calendar .cf-cal-choices button{padding:12px;text-align:left;background:#20221e;min-height:72px}.cf-calendar .cf-cal-choices span{display:block;font-size:10px;letter-spacing:1.5px;margin-bottom:8px;color:#c7c6b9}.cf-calendar .cf-cal-choices strong{font-size:14px;font-weight:600}.cf-calendar .cf-cal-choices .active{border:2px solid #e7c383;background:#3d4132}.cf-calendar .cf-cal-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}.cf-calendar .cf-cal-nav button{font-size:25px;width:42px}.cf-calendar .cf-cal-nav strong{text-transform:capitalize;font-size:16px}.cf-calendar .cf-cal-weekdays,.cf-calendar .cf-cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cf-calendar .cf-cal-weekdays{text-align:center;font-size:11px;color:#c1c4b5;margin-bottom:10px}.cf-calendar .cf-cal-day{border-color:transparent;border-radius:7px;padding:8px 0;aspect-ratio:1;min-height:38px;font-size:14px}.cf-calendar .cf-cal-day.between{background:#425b42}.cf-calendar .cf-cal-day.arrival,.cf-calendar .cf-cal-day.departure{background:#e7c383;color:#24251e;font-weight:700;border-color:#f2d8aa;opacity:1}.cf-calendar .cf-cal-hint{font:12px/1.65 Arial,Helvetica,sans-serif;color:#cacdbf;margin:18px 0 0;padding-top:14px;border-top:1px solid #555e47}
@media(max-width:390px){.cf-calendar{padding:16px}.cf-calendar h2{font-size:23px}.cf-calendar .cf-cal-choices{gap:10px}.cf-calendar .cf-cal-day{min-height:34px}}
