.date-picker-dialog{width:min(400px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 24px);padding:18px;border:0;background:#fff;color:#213a32;border-radius:18px;overflow:auto;overscroll-behavior:contain;box-sizing:border-box}
.date-picker-dialog::backdrop{background:#142d2466;backdrop-filter:blur(3px)}
body.date-picker-open{overflow:hidden}
.date-picker-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.date-picker-heading h2{font-size:20px;font-weight:650;line-height:1.3;margin:3px 0 4px;letter-spacing:-.3px}
.date-picker-heading p{font-size:13px;line-height:1.5;margin:0;color:#687d70}
.date-picker-close{flex:0 0 44px;width:44px;min-height:44px;border:1px solid #e3eae3;background:#f5f8f3;color:#466454;border-radius:10px;font-size:27px;font-weight:400;line-height:1}
.date-picker-shortcuts{display:flex;gap:10px;margin:18px 0 14px}
.date-picker-shortcuts button{flex:1;min-height:44px;padding:10px;border:1px solid #dce6da;border-radius:9px;background:#f5f8f2;color:#335d45;font-size:15px;font-weight:600}
.date-picker-shortcuts button[aria-pressed=true]{border-color:#7cae8f;background:#e7f2e8;color:#175b49}
.date-picker-navigation{display:grid;grid-template-columns:44px minmax(0,1fr) 80px 44px;align-items:center;gap:6px;margin-bottom:5px}
.date-picker-navigation select{height:44px;min-width:0;padding:0 5px;font:inherit;font-size:16px;border:1px solid #dce6da;border-radius:8px;background:#fff;color:#284f3d}
.date-picker-arrow{min-height:44px;width:44px;border:1px solid #dce6da;border-radius:8px;background:#fff;color:#285b40;font-size:30px;line-height:1}
.date-picker-arrow:disabled{cursor:default;opacity:.35}
.date-picker-calendar{width:100%;min-width:0}
.date-picker-dialog .flatpickr-calendar{width:100%!important;max-width:100%;background:transparent;box-shadow:none;border:0;top:0;padding:0;margin:0;overflow:hidden;font:inherit;color:#264d39}
.date-picker-dialog .flatpickr-months{display:none}
.date-picker-dialog .flatpickr-innerContainer,.date-picker-dialog .flatpickr-rContainer,.date-picker-dialog .flatpickr-days{width:100%;min-width:0;max-width:100%}
.date-picker-dialog .flatpickr-weekdays{height:34px}
.date-picker-dialog span.flatpickr-weekday{font:inherit;font-size:12px;font-weight:600;color:#7a8a7c}
.date-picker-dialog .dayContainer{width:100%;min-width:0;max-width:100%;padding:0;justify-content:flex-start}
.date-picker-dialog .flatpickr-day{flex:0 0 calc(100% / 7);width:calc(100% / 7);max-width:none;height:44px;line-height:42px;margin:0;border-radius:10px;font-size:16px;color:#2c4c39}
.date-picker-dialog .flatpickr-day.prevMonthDay,.date-picker-dialog .flatpickr-day.nextMonthDay{color:#9ba69a}
.date-picker-dialog .flatpickr-day.today{border-color:#76a689}
.date-picker-dialog .flatpickr-day:hover,.date-picker-dialog .flatpickr-day:focus{background:#edf4e9;border-color:#c0d7bf;color:#1b5e41}
.date-picker-dialog .flatpickr-day:focus-visible{outline:2px solid #266a4c;outline-offset:-3px}
.date-picker-dialog .flatpickr-day.selected,.date-picker-dialog .flatpickr-day.selected:hover,.date-picker-dialog .flatpickr-day.selected:focus{background:#175b49;border-color:#175b49;color:white}
.date-picker-dialog .flatpickr-day.flatpickr-disabled{color:#c1c8bd;cursor:default}
.date-picker-footer{display:flex;justify-content:space-between;gap:14px;border-top:1px solid #e6ede2;margin-top:14px;padding-top:12px}
.date-picker-footer button{min-height:44px;border:0;border-radius:8px;background:transparent;color:#52705c;font:inherit;font-size:14px;padding:10px 12px}
.date-picker-footer [data-date-cancel]{background:#eff5eb;color:#335942;font-weight:600}
@media(max-width:600px){
  .date-picker-dialog{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:none;max-height:calc(100dvh - 12px);padding:16px 12px calc(12px + env(safe-area-inset-bottom,0px));border-radius:20px 20px 0 0}
  .date-picker-navigation{grid-template-columns:44px minmax(0,1fr) 76px 44px;gap:5px}
  .date-picker-calendar,.date-picker-navigation,.date-picker-shortcuts,.date-picker-heading,.date-picker-footer{max-width:400px;margin-left:auto;margin-right:auto}
}
