/* Shared date-range picker. It progressively enhances every date_from/date_to pair. */
.period-picker-native{display:none!important}
.period-picker-control{display:grid;gap:5px;min-width:228px;color:#65708a;font:700 12px Inter,Segoe UI,Arial,sans-serif}
.period-picker-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:40px;border:1px solid #d5dbea;border-radius:8px;background:#fff;padding:0 11px;color:#26334b;font:700 13px Inter,Segoe UI,Arial,sans-serif;cursor:pointer;text-align:left;transition:border-color .16s ease,box-shadow .16s ease}
.period-picker-trigger:hover{border-color:#9bb4ef}.period-picker-trigger:focus-visible{outline:3px solid #a9c0ff;outline-offset:2px}.period-picker-trigger::after{content:"▾";margin-left:auto;color:#536078;font-size:16px;line-height:1}.period-picker-trigger strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 13px Inter,Segoe UI,Arial,sans-serif}
.period-picker-dialog{width:min(1020px,calc(100vw - 28px));max-width:none;margin:auto;border:0;border-radius:16px;background:#fff;padding:0;box-shadow:0 25px 80px rgba(16,27,52,.34)}
.period-picker-dialog::backdrop{background:rgba(18,28,51,.5);backdrop-filter:blur(2px)}
.period-picker-shell{overflow:hidden}.period-picker-head{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e6ebf4;padding:17px 20px}.period-picker-head-copy{display:grid;gap:3px}.period-picker-head-copy span{color:#77849a;font-size:12px;font-weight:700}.period-picker-head-copy strong{color:#26334b;font-size:18px}.period-picker-close{display:grid;place-items:center;width:34px;height:34px;border:1px solid #d8dfec;border-radius:8px;background:#f8faff;color:#536078;font-size:22px;line-height:1;cursor:pointer}.period-picker-close:hover{background:#edf3ff;color:#315fe7}.period-picker-close:focus-visible,.period-picker-quick:focus-visible,.period-picker-day:focus-visible,.period-picker-nav:focus-visible,.period-picker-apply:focus-visible,.period-picker-cancel:focus-visible{outline:3px solid #a9c0ff;outline-offset:2px}
.period-picker-body{display:grid;grid-template-columns:194px minmax(0,1fr)}.period-picker-quick-list{display:flex;align-content:flex-start;align-items:flex-start;flex-wrap:wrap;gap:8px;border-right:1px solid #e6ebf4;padding:18px}.period-picker-quick{border:0;border-radius:999px;background:#eef0f4;padding:8px 12px;color:#2f3744;font:700 13px Inter,Segoe UI,Arial,sans-serif;cursor:pointer}.period-picker-quick:hover,.period-picker-quick.is-active{background:#dce9ff;color:#1d5fc1}.period-picker-calendars{display:grid;grid-template-columns:1fr 1fr;min-width:0}.period-picker-month{min-width:0;padding:16px 18px 20px}.period-picker-month+.period-picker-month{border-left:1px solid #e6ebf4}.period-picker-month-head{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;margin-bottom:12px}.period-picker-month-title{color:#26334b;font-size:18px;font-weight:800;text-align:center;text-transform:capitalize}.period-picker-nav{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:8px;background:transparent;color:#6c788d;font-size:33px;font-weight:400;line-height:1;cursor:pointer}.period-picker-nav:hover{background:#edf3ff;color:#315fe7}.period-picker-nav.is-placeholder{visibility:hidden}.period-picker-weekdays,.period-picker-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.period-picker-weekdays{margin-bottom:4px}.period-picker-weekdays span{display:grid;place-items:center;min-height:28px;color:#78849a;font-size:12px;font-weight:700}.period-picker-day,.period-picker-day-empty{display:grid;place-items:center;min-width:0;height:36px;border:0;border-radius:50%;background:transparent;color:#26334b;font:600 14px Inter,Segoe UI,Arial,sans-serif}.period-picker-day{cursor:pointer}.period-picker-day:hover{background:#e9f1ff;color:#1d5fc1}.period-picker-day.is-today{box-shadow:inset 0 0 0 1px #6d94eb}.period-picker-day.is-start,.period-picker-day.is-end{border-radius:50%;background:#1f6dca;color:#fff;font-weight:800}.period-picker-day.is-in-range{border-radius:0;background:#e3edfB}.period-picker-grid>button.is-in-range:first-child{border-radius:18px 0 0 18px}.period-picker-grid>button.is-in-range:nth-child(7n){border-radius:0 18px 18px 0}.period-picker-day.is-start.is-end{border-radius:50%}.period-picker-foot{display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid #e6ebf4;padding:14px 20px}.period-picker-foot-note{margin-right:auto;color:#7b879b;font-size:12px}.period-picker-apply,.period-picker-cancel{min-height:39px;border-radius:8px;padding:0 15px;font:800 13px Inter,Segoe UI,Arial,sans-serif;cursor:pointer}.period-picker-cancel{border:1px solid #d4dceb;background:#fff;color:#56637a}.period-picker-cancel:hover{background:#f4f7fc}.period-picker-apply{border:1px solid #2864cf;background:#2864cf;color:#fff}.period-picker-apply:hover{background:#1d55b4}
@media(max-width:760px){.period-picker-control{min-width:0}.period-picker-dialog{position:fixed;inset:auto 0 0;width:100%;max-width:none;max-height:calc(100dvh - 10px);margin:0;border-radius:18px 18px 0 0}.period-picker-shell{max-height:calc(100dvh - 10px);overflow:auto}.period-picker-head{padding:15px 16px}.period-picker-head-copy strong{font-size:16px}.period-picker-body{grid-template-columns:1fr}.period-picker-quick-list{border-right:0;border-bottom:1px solid #e6ebf4;padding:12px 16px}.period-picker-quick{padding:7px 10px;font-size:12px}.period-picker-calendars{display:block}.period-picker-month{padding:14px 16px}.period-picker-month+.period-picker-month{border-top:1px solid #e6ebf4;border-left:0}.period-picker-day,.period-picker-day-empty{height:34px}.period-picker-foot{position:sticky;bottom:0;flex-wrap:wrap;padding:12px 16px;background:#fff}.period-picker-foot-note{flex:1 0 100%;margin:0}.period-picker-apply,.period-picker-cancel{flex:1}}
