/* Shared Persian date picker. No remote fonts, calendar services, or date data. */
.date-control{position:relative;min-width:0;width:100%}
.field .date-control input[data-date],.content .filter-form .date-control input[data-date]{padding-left:43px;direction:ltr;text-align:right;font-variant-numeric:tabular-nums}
.date-open{position:absolute;left:5px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:33px;height:33px;padding:0;border:0;border-radius:8px;background:transparent;color:#7793b8;cursor:pointer}
.date-open>.icon{width:18px;height:18px}.date-open:hover,.date-open:focus-visible{background:#eaf1ff;color:#2563eb}
.date-open:focus-visible{outline:2px solid #8ab2fc;outline-offset:1px}
.filter-dates .date-control{display:flex;align-items:center}.filter-dates .date-control input[data-date]{padding:4px 0;text-align:center}.filter-dates .date-open{display:none}
dialog.date-picker{position:fixed;inset:auto;margin:0;padding:18px;width:344px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;border:1px solid #dce7f8;border-radius:22px;background:#fff;color:#243756;box-shadow:0 16px 65px #163b7530;z-index:400;font-size:13px;line-height:1.6}
dialog.date-picker::backdrop{background:#14305812;backdrop-filter:none}
.calendar-heading{display:flex;align-items:center;gap:10px;margin-bottom:18px}.calendar-heading strong{font-size:14px;font-weight:650}.calendar-heading small{display:block;color:#91a0b5;font-size:10px;margin-top:1px}
.calendar-mark{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:#edf4ff;color:#3d78e2}.calendar-mark>.icon{width:20px;height:20px}
.date-picker button{font:inherit;cursor:pointer;touch-action:manipulation}.date-picker button:disabled{cursor:default;opacity:.3}.calendar-close{display:grid;place-items:center;margin-inline-start:auto;padding:6px;border:0;border-radius:9px;background:transparent;color:#8e9bb0;width:32px;height:32px}.calendar-close>.icon{width:17px;height:17px}.calendar-close:hover{background:#f0f4fa}
.calendar-navigation{display:flex;align-items:center;gap:7px;margin-bottom:15px}.calendar-arrow{display:grid;place-items:center;width:32px;height:34px;flex:none;padding:6px;border:1px solid #e4ebf6;border-radius:10px;background:#fff;color:#7390b8}.calendar-arrow>.icon{width:17px;height:17px}.calendar-next>.icon{transform:rotate(180deg)}.calendar-arrow:hover{color:#2563eb;background:#f0f5ff;border-color:#c7dafa}
.calendar-selects{display:flex;flex:1;min-width:0;gap:6px;justify-content:center}.calendar-selects label{min-width:0}.calendar-selects select{font:inherit;font-size:13px;font-weight:600;min-height:34px;max-width:100%;padding:4px 7px;color:#33517b;border:0;border-radius:8px;background:#f4f7fc;cursor:pointer}.calendar-selects select:focus{outline:2px solid #9cbcf5;outline-offset:1px}
.calendar-grid{width:100%}.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.calendar-week [role=columnheader]{display:grid;place-items:center;height:25px;color:#9aa7ba;font-size:11px;font-weight:500;margin-bottom:4px}.calendar-week [role=columnheader]:last-child{color:#bd8c97}.calendar-week [role=gridcell]{display:grid;place-items:center;min-height:39px}
.calendar-day{position:relative;display:grid;place-items:center;width:100%;height:37px;border:1px solid transparent;border-radius:11px;padding:0;background:transparent;color:#405675;font-size:13px!important;font-variant-numeric:tabular-nums}.calendar-day.is-friday{color:#b97b8b}.calendar-day:hover{background:#eff5ff;color:#2563eb}.calendar-day.is-today{background:#f0f7ff;border-color:#96bafa;color:#2465d3;font-weight:650}.calendar-day.is-today i{position:absolute;bottom:3px;left:calc(50% - 2px);width:4px;height:4px;border-radius:50%;background:#397ce9}.calendar-day.is-selected{color:#fff;background:#3477eb;border-color:#3477eb;box-shadow:0 3px 9px #3477eb25;font-weight:650}.calendar-day.is-selected i{background:#fff}.calendar-day:focus-visible{outline:2px solid #83aef7;outline-offset:2px;z-index:1}
.calendar-today-note{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:12px;padding:9px 4px;border-radius:10px;background:#f5f8fd;color:#7c90ad;font-size:10px}.calendar-today-note>i{width:6px;height:6px;border-radius:50%;background:#4a88f1;flex:none}
.calendar-footer{display:flex;gap:5px;align-items:center;padding-top:12px;margin-top:12px;border-top:1px solid #edf1f8}.calendar-footer button{border:0;border-radius:9px;background:transparent;color:#8a9ab2;padding:8px 9px;min-height:35px;font-size:11px;white-space:nowrap}.calendar-footer .calendar-today{background:#edf4ff;color:#3477df;font-weight:600;margin-inline-end:auto}.calendar-footer button:hover{background:#e6efff;color:#2563eb}
.calendar-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:650px){dialog.date-picker{width:360px;padding:18px 16px;border-radius:24px}dialog.date-picker::backdrop{background:#132b5352;backdrop-filter:blur(2px)}.calendar-week [role=gridcell]{min-height:42px}.calendar-day{height:40px}.calendar-selects select{font-size:16px;min-height:38px}.calendar-arrow{width:36px;height:38px}.calendar-footer button{min-height:42px;font-size:12px}.date-control>.date-open{height:36px;width:36px;left:3px}.calendar-close{width:36px;height:36px}}
@media print{dialog.date-picker,.date-open{display:none!important}}
