/* Calendar surfaces inherit each theme; no global palette or control rewrite. */
html[data-theme] .site-date-field{display:inline-flex;align-items:center;position:relative;width:100%;min-width:0;max-width:202px;vertical-align:middle}
html[data-theme] .site-date-field>input{width:100%;min-width:0;max-width:100%;padding-right:46px;cursor:text}
html[data-theme] .site-date-trigger{display:inline-flex;align-items:center;justify-content:center;position:absolute;right:1px;top:1px;bottom:1px;width:42px;min-height:40px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--theme-muted,var(--muted,#9eacc0));cursor:pointer}
html[data-theme] .site-date-trigger:hover{background:var(--theme-raised,var(--raised,#16243a));color:var(--theme-ink,var(--text,#f7f5f6))}
html[data-theme] .site-date-trigger:disabled{opacity:.45;cursor:not-allowed}
html[data-theme] .site-date-trigger:focus-visible{outline:2px solid var(--theme-focus,var(--focus,#ff8aae));outline-offset:-3px}
.site-date-help{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
html[data-theme] .calledm-calendar{
  --cal-bg:var(--theme-surface,#101b2d);--cal-text:var(--theme-ink,#f7f5f6);--cal-muted:var(--theme-muted,#9eacc0);--cal-accent:var(--theme-accent,#c84272);--cal-link:var(--theme-link,#f09abb);--cal-line:var(--theme-border,#2b3a52);--cal-hover:var(--theme-raised,#16243a);
  box-sizing:border-box;width:344px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:0;padding:12px;border:0;border-radius:14px;background:var(--cal-bg);color:var(--cal-text);box-shadow:0 12px 36px var(--theme-shadow,rgba(0,0,0,.3));font:14px/1.5 "Microsoft YaHei UI","PingFang SC",system-ui,sans-serif;overflow:auto;z-index:100000;
}
html[data-theme] .calledm-calendar::before,html[data-theme] .calledm-calendar::after{display:none}
html[data-theme] .calledm-calendar[popover]:not(:popover-open){display:none}
html[data-theme] .calledm-calendar.open{display:block;animation:calendar-reveal 140ms ease-out}
html[data-theme] .calledm-calendar .flatpickr-months{position:relative;align-items:center;height:44px;margin-bottom:9px}
html[data-theme] .calledm-calendar .flatpickr-month{height:44px;background:transparent;color:var(--cal-text);fill:var(--cal-text)}
html[data-theme] .calledm-calendar .flatpickr-current-month{display:flex;align-items:center;justify-content:center;gap:3px;left:44px;right:44px;width:auto;height:44px;padding:0;font-size:15px;line-height:1.4}
html[data-theme] .calledm-calendar .flatpickr-current-month .numInputWrapper{order:-1;width:72px;border-radius:7px;background:transparent}
html[data-theme] .calledm-calendar .numInputWrapper span{border:0}
html[data-theme] .calledm-calendar .numInputWrapper span:hover{background:var(--cal-hover)}
html[data-theme] .calledm-calendar .numInputWrapper span::after{border-top-color:var(--cal-muted);border-bottom-color:var(--cal-muted)}
html[data-theme] .calledm-calendar input.cur-year{height:36px;min-height:36px;margin:0;padding:4px 16px 4px 7px;border:0;border-radius:7px;background:transparent;color:var(--cal-text);font:inherit;font-weight:700;box-shadow:none}
html[data-theme] .calledm-calendar select.flatpickr-monthDropdown-months{width:auto;min-height:36px;max-width:96px;margin:0;padding:3px;border:0;border-radius:7px;background:var(--cal-bg);color:var(--cal-text);font:inherit;font-weight:700;cursor:pointer}
html[data-theme] .calledm-calendar .flatpickr-prev-month,html[data-theme] .calledm-calendar .flatpickr-next-month{display:grid;place-items:center;width:44px;height:44px;min-height:44px;padding:12px;border-radius:9px;background:transparent;color:var(--cal-text);fill:var(--cal-text)}
html[data-theme] .calledm-calendar .flatpickr-prev-month:hover,html[data-theme] .calledm-calendar .flatpickr-next-month:hover{background:var(--cal-hover);color:var(--cal-accent);fill:var(--cal-accent)}
html[data-theme] .calledm-calendar .flatpickr-innerContainer,html[data-theme] .calledm-calendar .flatpickr-rContainer{display:block;width:100%}
html[data-theme] .calledm-calendar .flatpickr-weekdays{height:32px;background:transparent}
html[data-theme] .calledm-calendar span.flatpickr-weekday{background:transparent;color:var(--cal-muted);font-size:12px;font-weight:500}
html[data-theme] .calledm-calendar .flatpickr-days{width:100%;border:0}
html[data-theme] .calledm-calendar .dayContainer{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px 0;min-width:0;max-width:none;width:100%;padding:0;opacity:1}
html[data-theme] .calledm-calendar .flatpickr-day{display:flex;align-items:center;justify-content:center;justify-self:center;box-sizing:border-box;width:100%;max-width:42px;height:40px;margin:0;border:0;border-radius:9px;background:transparent;color:var(--cal-text);font-size:13px;line-height:1;box-shadow:none}
html[data-theme] .calledm-calendar .flatpickr-day.prevMonthDay,html[data-theme] .calledm-calendar .flatpickr-day.nextMonthDay{color:var(--cal-muted);opacity:.7}
html[data-theme] .calledm-calendar .flatpickr-day:hover,html[data-theme] .calledm-calendar .flatpickr-day:focus{background:var(--cal-hover);color:var(--cal-text)}
html[data-theme] .calledm-calendar .flatpickr-day.today:not(.selected){outline:1px solid var(--cal-accent);outline-offset:-2px;color:var(--cal-link)}
html[data-theme] .calledm-calendar .flatpickr-day.selected,html[data-theme] .calledm-calendar .flatpickr-day.selected:hover{background:var(--cal-accent);color:white}
html[data-theme] .calledm-calendar .flatpickr-day.flatpickr-disabled,html[data-theme] .calledm-calendar .flatpickr-day.flatpickr-disabled:hover{background:transparent;color:var(--cal-muted);opacity:.35;cursor:not-allowed}
html[data-theme] .calledm-calendar .flatpickr-monthSelect-months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:6px 0 14px}
html[data-theme] .calledm-calendar .flatpickr-monthSelect-month{display:flex;align-items:center;justify-content:center;width:auto;min-height:44px;margin:0;padding:8px;border:0;border-radius:9px;color:var(--cal-text);background:transparent;font-size:13px}
html[data-theme] .calledm-calendar .flatpickr-monthSelect-month:hover{background:var(--cal-hover)}
html[data-theme] .calledm-calendar .flatpickr-monthSelect-month.selected{background:var(--cal-accent);color:white}
html[data-theme] .calledm-calendar .flatpickr-monthSelect-month.flatpickr-disabled{color:var(--cal-muted);opacity:.35}
html[data-theme] .calledm-calendar .calendar-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--cal-line)}
html[data-theme] .calledm-calendar .calendar-footer button{min-width:64px;min-height:40px;margin:0;padding:8px 12px;border:0;border-radius:8px;background:transparent;color:var(--cal-link);font:inherit;font-size:13px;cursor:pointer}
html[data-theme] .calledm-calendar .calendar-footer button:hover{background:var(--cal-hover)}
html[data-theme] .calledm-calendar .calendar-footer button:disabled{opacity:.4;cursor:not-allowed}
html[data-theme] .calledm-calendar :focus-visible{outline:2px solid var(--theme-focus,var(--cal-accent));outline-offset:-2px}
@keyframes calendar-reveal{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(max-width:700px){html[data-theme] .desk-date .site-date-field{width:100%;max-width:100%}html[data-theme] .calledm-calendar .flatpickr-day{height:42px}html[data-theme] .calledm-calendar .calendar-footer button{min-height:44px}}
@media(prefers-reduced-motion:reduce){html[data-theme] .calledm-calendar.open{animation:none}}
