.date-clear[hidden]{display:none!important}
.date-summary-controls{display:flex;align-items:center;gap:3px;max-width:100%}.date-open{display:flex;align-items:center;gap:7px;max-width:100%;text-align:left}.date-open svg{width:16px;height:16px;flex-shrink:0}.date-open span{overflow-wrap:anywhere}.date-clear{width:32px;height:38px;padding:0;background:transparent;color:var(--ink,#ede9fe);font-size:1.2rem}
.date-calendar{box-sizing:border-box;width:min(360px,calc(100vw - 24px));max-height:85dvh;padding:20px;border:1px solid var(--edge,#655386);border-radius:22px;color:var(--ink,#ede9fe);background:var(--card,#211735);box-shadow:0 20px 70px #0008;overflow:auto;font:inherit}.date-calendar::backdrop{background:#0007;backdrop-filter:blur(3px)}.date-calendar button,.date-calendar select{font:inherit;color:inherit;cursor:pointer}.date-calendar button:disabled{cursor:default;opacity:.32}.date-calendar button:focus-visible,.date-calendar select:focus-visible{outline:2px solid var(--accent,#c4b5fd);outline-offset:2px}.date-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.date-heading h2{font-size:1.05rem;margin:0}.date-close{width:34px;height:34px;padding:0;border:0;border-radius:50%;background:var(--wash,#ffffff10);font-size:1.5rem!important}.date-modes{display:flex;gap:4px;border-radius:14px;background:var(--wash,#ffffff10);padding:4px}.date-action,.date-apply{padding:10px 12px;border:1px solid var(--edge,#655386);border-radius:12px;background:var(--wash,#ffffff10);font-size:.85rem!important;min-height:40px}.date-modes button{flex:1;border:0}.date-modes [aria-pressed=true],.date-day[aria-pressed=true],.date-apply{background:var(--accent,#c4b5fd);color:var(--accent-ink,#171124)}.date-navigation{display:flex;align-items:center;gap:8px;margin-top:16px}.date-navigation select{flex:1;min-width:0;border:1px solid var(--edge,#655386);border-radius:10px;padding:8px;background:var(--card,#211735);text-align:center}.date-navigation button{min-width:38px}.date-instruction,.date-timezone{font-size:.78rem;line-height:1.5;color:var(--muted,#c4b5d6);margin:12px 0}.date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.date-weekday{text-align:center;font-size:.65rem;padding:4px 0;color:var(--muted,#c4b5d6)}.date-day{min-width:0;height:38px;border:1px solid transparent;border-radius:10px;background:transparent;padding:0;font-size:.85rem!important}.date-day.in-range:not([aria-pressed=true]){background:var(--wash-hover,#ffffff20)}.date-day:not(:disabled):not([aria-pressed=true]){border-color:var(--edge,#655386)}.date-footer{display:flex;justify-content:space-between;gap:12px;margin-top:16px}
@media(max-width:600px){.date-calendar{margin:auto auto 12px;max-height:90dvh;padding:18px}.date-day{height:40px}}

.date-summary-controls,.date-open,.date-open span{min-width:0}.date-clear{flex-shrink:0}

.date-calendar .date-navigation>button{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;min-height:40px;padding:0}.date-navigation>button svg{width:22px;height:22px}
.date-month{position:relative;flex:1;min-width:0}.date-month select{display:block;width:100%;height:40px;appearance:none;-webkit-appearance:none;padding:8px 38px 8px 12px}.date-month-arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:19px;height:19px;pointer-events:none;display:grid;place-items:center}.date-month-arrow svg{width:100%;height:100%}
@media(hover:hover) and (pointer:fine){.date-clear:hover{background:transparent;color:var(--accent,#c4b5fd)}.date-calendar button:not(:disabled):hover{background:var(--wash-hover,#ffffff20);color:var(--ink,#ede9fe)}.date-calendar button:disabled:hover{background:var(--wash,#ffffff10)}.date-calendar .date-day:disabled:hover{background:transparent}.date-calendar :is(.date-apply,[aria-pressed=true]):hover{background:var(--accent,#c4b5fd);color:var(--accent-ink,#171124)}}
.date-summary-controls{position:relative;gap:0}.date-summary-controls.has-selection .date-open{padding-inline-end:38px}.date-summary-controls .date-clear{position:absolute;inset-inline-end:4px;top:50%;transform:translateY(-50%);width:30px;height:30px;min-height:30px;display:grid;place-items:center;border:0;border-radius:50%;line-height:1;padding:0}
.date-calendar .date-close{display:grid;place-items:center;width:34px;height:34px;min-height:34px;padding:0;line-height:1}.date-close svg{display:block}.date-calendar .date-apply{color:var(--accent-ink,#171124)}.date-open span{line-height:1.2;transform:translateY(1px)}
@media(hover:hover) and (pointer:fine){.date-calendar button.date-apply:not(:disabled):hover{background:var(--accent,#c4b5fd);color:var(--accent-ink,#171124);box-shadow:inset 0 0 0 2px var(--accent-ink,#171124);filter:brightness(1.08)}.date-calendar button[aria-pressed=true]:not(:disabled):hover{background:var(--accent,#c4b5fd);color:var(--accent-ink,#171124)}}

.date-summary-controls .date-open{align-items:center;line-height:1}.date-summary-controls .date-open span{display:flex;align-items:center;min-height:16px;line-height:16px;transform:none}.date-summary-controls .date-open svg,.date-summary-controls .date-clear svg{display:block;align-self:center}
:root .date-summary-controls.is-applied .date-open{background:var(--accent,#ddd6fe);color:var(--accent-ink,#4c1d95);border-color:var(--accent,#ddd6fe)}:root .date-summary-controls.is-applied .date-clear{color:var(--accent-ink,#4c1d95)}
@media(hover:hover) and (pointer:fine){:root .date-summary-controls.is-applied .date-open:hover{background:var(--accent,#ddd6fe);color:var(--accent-ink,#4c1d95)}}

/* Keep month choices inside Fetch, including on mobile browsers. */
.date-calendar .date-month-toggle{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:40px;min-height:40px;padding:8px 38px 8px 12px;border:1px solid var(--edge,#655386);border-radius:12px;background:var(--wash,#ffffff10);color:var(--ink,#ede9fe);font-size:.9rem}
.date-month-toggle>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.date-month-toggle[aria-expanded=true]{border-color:var(--accent,#c4b5fd);box-shadow:0 0 0 2px var(--wash-hover,#ffffff20)}
.date-month-menu[hidden]{display:none!important}
.date-month-menu{position:absolute;z-index:5;inset-inline:0;top:calc(100% + 7px);display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto;overscroll-behavior:contain;padding:6px;border:1px solid var(--edge,#655386);border-radius:15px;background:var(--opaque,#211735);box-shadow:0 12px 28px #0006}
.date-calendar .date-month-option{flex:none;min-width:0;width:100%;min-height:44px;display:flex;align-items:center;text-align:start;padding:10px 12px;border:1px solid transparent;border-radius:10px;background:var(--wash,#ffffff10);color:var(--ink,#ede9fe);font-size:.85rem}
.date-calendar .date-month-option[aria-selected=true]{background:var(--accent,#c4b5fd);color:var(--accent-ink,#171124);font-weight:700}
.date-month-option[aria-selected=true]::after{content:'\2713';margin-inline-start:auto;padding-inline-start:8px}
@media(hover:hover) and (pointer:fine){.date-calendar .date-month-option[aria-selected=true]:hover{background:var(--accent,#c4b5fd);color:var(--accent-ink,#171124)}}

.date-calendar .date-popular[aria-pressed=true]{background:var(--accent,#c4b5fd);color:var(--accent-ink,#171124);border-color:var(--accent,#c4b5fd)}

.date-sort.has-popular{gap:3px}
.date-sort.has-popular>button{min-width:0;flex:1;padding-inline:2px;font-size:.75rem!important;white-space:normal;line-height:1.2}

.date-calendar .date-popular{display:inline-flex;align-items:center;justify-content:center;gap:4px}
.date-popular-icon,.date-popular-icon svg{display:block;width:11px;height:11px;flex:none}

.date-popular>span:last-child{min-width:0;white-space:normal}
.date-summary-controls.is-icon-only .date-open span{position:absolute;visibility:hidden;width:max-content;pointer-events:none}
.date-summary-controls .date-open svg{width:22px;height:22px;stroke-width:2.1}
.date-summary-controls.is-icon-only .date-open{justify-content:center;width:46px;padding-inline:11px}
