.jalali-date-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem;align-items:stretch;width:100%}
.jalali-date-control>input{min-width:0;width:100%}
.jalali-calendar-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-width:4.9rem;padding-inline:.7rem!important;border:1px solid #b2d6da!important;border-radius:.7rem!important;background:#f0fdfa!important;color:#0e6968!important;font:inherit;font-size:.82rem!important;font-weight:700;cursor:pointer}
.jalali-calendar-button svg,.jalali-calendar-card svg{width:1.3rem;height:1.3rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.jalali-calendar-button:hover{background:#def5ee!important}.jalali-calendar-button:disabled{opacity:.45;cursor:default}
.jalali-calendar-dialog{width:min(94vw,25rem);max-height:92dvh;margin:auto;padding:0;border:0;border-radius:1.25rem;background:#fff;color:#193a46;box-shadow:0 24px 80px #082f4966;overflow:auto}
.jalali-calendar-dialog::backdrop{background:#102b3e6b;backdrop-filter:blur(3px)}
.jalali-calendar-card{padding:1rem;border:1px solid #dbe8ea;border-radius:1.25rem;background:#fff;font-family:StationDigits,Tahoma,Arial,sans-serif}
.jalali-calendar-caption{display:flex;align-items:center;justify-content:space-between;color:#647b86;font-size:.8rem;margin:0 .15rem .9rem}
.jalali-calendar-year{padding:.3rem .7rem;border-radius:.55rem;background:#eef5f6;color:#315d6a;font-size:1rem;font-weight:bold}
.jalali-calendar-header{display:grid;grid-template-columns:2.7rem minmax(0,1fr) 2.7rem;gap:.5rem;align-items:center}
.jalali-calendar-card button{margin:0;border:1px solid transparent;border-radius:.65rem;background:#fff;color:#193a46;font:inherit;cursor:pointer;box-shadow:none;min-width:0}
.jalali-calendar-card .jalali-calendar-header button{display:grid;place-items:center;width:2.7rem;height:2.7rem;padding:0;border-color:#dfebed;background:#f8fbfc}
.jalali-calendar-header label{margin:0;display:block}.jalali-calendar-header select{width:100%;min-width:0;height:2.7rem;padding:.35rem .6rem;font:inherit;font-size:1.1rem;font-weight:bold;text-align:center;color:#164d5a;border:1px solid #dfebed;border-radius:.65rem;background:#f8fbfc;cursor:pointer}
.jalali-calendar-card button:disabled{opacity:.3;cursor:default}.jalali-calendar-card button:focus-visible,.jalali-calendar-header select:focus-visible{outline:3px solid #087c91;outline-offset:2px}
.jalali-calendar-card table{width:100%;margin:.7rem 0;border-collapse:separate;border-spacing:.15rem;table-layout:fixed;border:0;box-shadow:none;background:transparent}
.jalali-calendar-card th{padding:.45rem 0;background:#f0f5f6;border:0;border-radius:.4rem;font-size:.82rem;color:#556b78;text-align:center}.jalali-calendar-card abbr{text-decoration:none}
.jalali-calendar-card td{height:2.6rem;padding:0;text-align:center;border:0;background:transparent}
.jalali-calendar-card td button{width:100%;height:2.6rem;padding:0;font-size:1rem;line-height:1;border-radius:.6rem}
.jalali-calendar-card .friday{color:#b73b43}.jalali-calendar-card td button.adjacent{color:#9aabb2;font-size:.92rem}
.jalali-calendar-card td button:hover{background:#eef8f7;border-color:#b6ddda}.jalali-calendar-card td button.today{border-color:#0f8982;background:#f0fbf8;position:relative}
.jalali-calendar-card td button.today::after{content:'';position:absolute;bottom:.18rem;left:calc(50% - .12rem);width:.24rem;height:.24rem;border-radius:50%;background:currentColor}
.jalali-calendar-card td button.selected{background:#0c7774;border-color:#0c7774;color:white;font-weight:bold;box-shadow:0 3px 9px #0f766e2a}
.jalali-calendar-legend{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .8rem;padding:.6rem .1rem;color:#657b86;font-size:.67rem}
.jalali-calendar-legend>span{display:inline-flex;align-items:center;gap:.3rem}.jalali-calendar-legend i{width:.48rem;height:.48rem;display:inline-block;border-radius:50%}.selected-dot{background:#0c7774}.today-dot{border:1px solid #0c7774}
.jalali-calendar-legend output{margin-inline-start:auto;font-weight:700;color:#35606d;font-size:.76rem;direction:ltr;unicode-bidi:isolate}
.jalali-calendar-card footer{display:flex;gap:.5rem;align-items:center;border-top:1px solid #e4ecee;padding-top:.75rem}
.jalali-calendar-card footer button{padding:.55rem .8rem;min-height:2.5rem;font-size:.8rem;font-weight:700;color:#37616d;background:#f1f6f7;border-color:#e1eaed}
.jalali-calendar-card footer [data-calendar-today]{background:#0c7774;color:white;border-color:#0c7774}.jalali-calendar-card footer [data-calendar-close]{margin-inline-start:auto}
.jalali-calendar-card [hidden]{display:none!important}.calendar-sr-only{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:380px){.jalali-calendar-card{padding:.75rem}.jalali-calendar-card td,.jalali-calendar-card td button{height:2.45rem}.jalali-calendar-legend output{width:100%;margin:0;text-align:center}.jalali-calendar-button span{display:none}.jalali-calendar-button{min-width:2.7rem}}
@media(prefers-reduced-motion:reduce){.jalali-calendar-dialog::backdrop{backdrop-filter:none}}
@media print{.jalali-calendar-dialog,.jalali-calendar-button{display:none!important}}
.jalali-calendar-caption label{display:block;margin:0}.jalali-calendar-caption .jalali-calendar-year{font:inherit;font-size:1rem;min-width:5.5rem;max-width:7rem;padding:.35rem .6rem;border:1px solid #d8e6eb;cursor:pointer}
.jalali-month-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:1rem 0}.jalali-month-grid button{min-height:3rem!important;background:#f1f7f8;border:1px solid #d7e7e9}.jalali-month-grid button.selected{background:#0c7774;color:white}
.jalali-calendar-card footer{flex-wrap:wrap}.date-range-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}.date-range-fields label{min-width:0}.date-range-fields input{width:100%;min-width:0}.archive-date-filter{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.archive-date-filter .date-range-fields{flex:1 1 460px}.archive-date-filter button[type=submit]{min-height:44px;background:#0f766e}.date-filter-reset{display:inline-flex;align-items:center;justify-content:center;padding:10px 13px;min-height:44px;border:1px solid #cee2e6;border-radius:10px;background:#f5fafb;color:#285e6c;text-decoration:none;font-size:12px}
@media(max-width:600px){.date-range-fields{grid-template-columns:minmax(0,1fr);width:100%}.archive-date-filter .date-range-fields{flex-basis:100%}.archive-date-filter button[type=submit]{width:100%}}
/* Compact, equal-sized range fields, independent of available desktop width. */
.date-filter-panel{padding:18px 22px;margin-block:18px}.archive-date-filter>.date-range-fields{flex:0 1 30rem;max-width:30rem;grid-template-columns:repeat(2,minmax(0,1fr))}.date-range-fields label{display:grid;gap:6px;font-size:13px}.date-range-fields input{height:44px!important;min-height:44px!important;box-sizing:border-box;padding:9px 10px!important;font-size:14px!important;direction:ltr;text-align:center;font-variant-numeric:tabular-nums}.date-range-fields .jalali-calendar-button{min-width:44px!important;width:44px;height:44px;min-height:44px!important;margin:0!important;padding:0!important}.date-range-fields .jalali-calendar-button span{display:none}.date-range-fields .jalali-date-control{grid-template-columns:minmax(0,1fr) 44px;gap:7px}.date-filter-panel .archive-date-filter>label{flex:0 1 190px;min-width:0}.date-filter-panel .archive-date-filter>label select{height:44px;min-height:44px;width:100%}.date-filter-panel .archive-date-filter>button{height:44px;min-height:44px;margin:0;padding-block:9px}.source-day-start>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;color:#164b60}.source-day-start>summary span{font-size:12px;color:#64748b}.source-day-start[open] .source-day-form{margin-top:16px}
@media(max-width:600px){.date-filter-panel{padding:16px}.archive-date-filter>.date-range-fields{flex-basis:100%;max-width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.date-range-fields .jalali-date-control{grid-template-columns:minmax(0,1fr) 38px;gap:5px}.date-range-fields .jalali-calendar-button{width:38px;min-width:38px!important}.date-range-fields input{font-size:13px!important;padding-inline:6px!important}.date-filter-panel .archive-date-filter>label{flex-basis:100%}}
.source-day-start>summary::after{content:'+';font-size:22px;color:#0f766e}.source-day-start[open]>summary::after{content:'−'}.gd-page .gd-search{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto}@media(max-width:650px){.gd-page .gd-search{grid-template-columns:minmax(0,1fr)}}
