.ht-calendar{--cal-accent:var(--ht-brand-600,#4f46e5);--cal-accent-soft:var(--ht-brand-50,#eef2ff);--cal-world:var(--ht-teal-600,#0c7f73);--cal-holiday:var(--ht-danger-600,#c52e3c);--cal-border:var(--ht-neutral-200,#e2e8f0);--cal-muted:var(--ht-neutral-500,#64748b);--cal-marker-size:8px;color:var(--ht-neutral-900,#172033)}.ht-calendar [hidden]{display:none!important}.ht-calendar button,.ht-calendar input,.ht-calendar select{font:inherit}.ht-calendar button{cursor:pointer}.ht-calendar button:focus-visible,.ht-calendar input:focus-visible,.ht-calendar select:focus-visible{outline:3px solid var(--cal-accent);outline-offset:3px}.ht-calendar input,.ht-calendar select{border:1px solid var(--cal-border);min-width:0;max-width:100%;min-height:42px;color:inherit;background-color:#fff;border-radius:10px;padding:.5rem .7rem;font-size:.9rem}.ht-calendar select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%2364748b' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:18px;padding-right:2rem}.ht-calendar-toolbar,.ht-calendar-period,.ht-calendar-nav,.ht-calendar-month-heading,.ht-calendar-agenda-heading,.ht-calendar-filters{align-items:center;gap:.6rem;display:flex}.ht-calendar-toolbar{flex-wrap:wrap;justify-content:space-between;margin-bottom:1.2rem}.ht-calendar-period select{width:125px;font-weight:700}.ht-calendar-period input{width:95px;font-weight:700}.ht-calendar-nav button{border:1px solid var(--cal-border);min-width:40px;height:40px;color:var(--cal-muted);background:#fff;border-radius:10px;justify-content:center;align-items:center;padding:.5rem .65rem;font-size:.85rem;font-weight:650;display:inline-flex}.ht-calendar-nav button:hover:not(:disabled){background:var(--cal-accent-soft);color:var(--cal-accent)}.ht-calendar-nav button:disabled{opacity:.4;cursor:default}.ht-calendar-nav .ht-icon{width:18px;height:18px}.ht-calendar-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:1.25rem;display:grid}.ht-calendar-month{min-width:0}.ht-calendar-month-heading{flex-wrap:wrap;justify-content:space-between;gap:.25rem;margin-bottom:.85rem}.ht-calendar-month-heading h3{margin:0;font-size:1.05rem;font-weight:750}.ht-calendar-month-heading span{color:var(--cal-muted);font-size:.8125rem}.ht-calendar-grid{table-layout:fixed;border-collapse:separate;border-spacing:5px;width:100%}.ht-calendar-grid th{color:var(--cal-muted);text-align:center;border:0;padding:.2rem 0 .55rem;font-size:.8125rem;font-weight:650}.ht-calendar-grid th:last-child{color:var(--cal-holiday)}.ht-calendar-grid td{vertical-align:top;border:0;height:78px;padding:0}.ht-calendar-date{background:var(--ht-neutral-50,#f8fafc);width:100%;height:100%;min-height:78px;color:inherit;border:1px solid #0000;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:7px 2px;transition:background .16s,border-color .16s;display:flex}.ht-calendar-date:hover{background:var(--cal-accent-soft);border-color:var(--cal-border)}.ht-calendar-date strong{font-size:1.1rem;font-weight:700;line-height:1.25}.ht-calendar-date small{color:var(--cal-muted);font-size:.8125rem;line-height:1.3}.ht-calendar-date.is-other{color:var(--cal-muted);background:0 0}.ht-calendar-date.is-other strong,.ht-calendar-date.is-other small{opacity:.55}.ht-calendar-date.is-sunday:not(.is-selected) strong,.ht-calendar-date.is-holiday:not(.is-selected) strong{color:var(--cal-holiday)}.ht-calendar-date.is-today{border-color:var(--cal-accent)}.ht-calendar-date.is-selected{background:var(--cal-accent);color:#fff;border-color:var(--cal-accent);opacity:1;box-shadow:0 4px 10px #4f46e526}.ht-calendar-date.is-selected small{color:#ffffffd9}.ht-calendar-dots{border-radius:999px;flex:none;justify-content:center;align-items:center;gap:3px;height:12px;margin-top:2px;padding:2px 3px;display:flex}.ht-calendar-dots i,.ht-calendar-legend i{width:var(--cal-marker-size);height:var(--cal-marker-size);background:var(--cal-accent);border-radius:50%;flex:none;display:inline-block;box-shadow:0 0 0 1px #0f172a1f}.ht-calendar-dots i.is-holiday,.ht-calendar-legend i.is-holiday{background:var(--cal-holiday)}.ht-calendar-dots i.is-world,.ht-calendar-legend i.is-world{background:var(--cal-world)}.ht-calendar-date.is-selected .ht-calendar-dots:has(i){background:var(--ht-neutral-0,white)}.ht-calendar-legend{color:var(--ht-neutral-600,#475569);flex-wrap:wrap;align-items:center;gap:.55rem 1rem;padding:.75rem .3rem;font-size:.8125rem;display:flex}.ht-calendar-legend span{align-items:center;gap:.35rem;display:inline-flex}.ht-calendar-legend__hint{margin-left:auto}.ht-calendar-day{overflow-wrap:anywhere;border:1px solid var(--cal-border);background:linear-gradient(160deg, var(--cal-accent-soft), white 65%);border-radius:18px;min-width:0;padding:1.4rem;scroll-margin-top:110px}.ht-calendar-day__date>span{color:var(--cal-accent);font-size:.8125rem;font-weight:650}.ht-calendar-day__date>strong{letter-spacing:-.06em;margin:.4rem 0;font-size:4.5rem;font-weight:750;line-height:1.2;display:block}.ht-calendar-day h3{margin:0;font-size:.95rem;font-weight:700}.ht-calendar-day__lunar{color:var(--cal-accent);margin:.8rem 0 .25rem;font-size:.88rem;font-weight:600}.ht-calendar-day__year{color:var(--cal-muted);margin:0;font-size:.8125rem}.ht-calendar-day-events{border-top:1px solid var(--cal-border);margin-top:1.2rem;padding-top:1rem}.ht-calendar-day-events>p{color:var(--cal-muted);margin:0;font-size:.82rem}.ht-calendar-day-event+.ht-calendar-day-event{margin-top:.9rem}.ht-calendar-day-event strong{margin:.25rem 0;font-size:.85rem;line-height:1.5;display:block}.ht-calendar-day-event a{color:var(--cal-muted);font-size:.8125rem;text-decoration:none}.ht-calendar-day-event a:hover{color:var(--cal-accent);text-decoration:underline}.ht-calendar-event-note{color:var(--cal-muted);margin:.3rem 0;font-size:.8125rem;line-height:1.6}.ht-calendar-badge{background:var(--cal-accent-soft);color:var(--cal-accent);border-radius:6px;align-items:center;gap:.25rem;padding:.15rem .45rem;font-size:.8125rem;font-weight:650;display:inline-flex}.ht-calendar-badge.is-holiday{background:var(--ht-danger-50);color:var(--cal-holiday)}.ht-calendar-badge.is-world{background:var(--ht-teal-50);color:var(--cal-world)}.ht-calendar-converter{border-block:1px solid var(--cal-border);margin-top:1.6rem;padding:1.25rem 0}.ht-calendar-converter>header{align-items:center;gap:.7rem;margin-bottom:1rem;display:flex}.ht-calendar-section-icon{background:var(--cal-accent-soft);width:38px;height:38px;color:var(--cal-accent);border-radius:10px;flex:none;place-items:center;display:grid}.ht-calendar-section-icon .ht-icon{width:20px;height:20px}.ht-calendar-converter h3{margin:0;font-size:1rem}.ht-calendar-converter header p{color:var(--cal-muted);margin:.2rem 0 0;font-size:.8125rem}.ht-calendar-convert-fields{flex-wrap:wrap;align-items:end;gap:.8rem;display:flex}.ht-calendar-field{flex-direction:column;flex:180px;gap:.35rem;min-width:0;display:flex}.ht-calendar-field label{color:var(--ht-neutral-600,#475569);font-size:.8125rem;font-weight:650}.ht-calendar-field input,.ht-calendar-field select{width:100%}.ht-calendar-convert-fields>button{flex:none;height:42px;font-size:.85rem}.ht-calendar-lunar-fields{flex:2 260px;gap:.65rem;display:flex}.ht-calendar-lunar-fields .ht-calendar-field{flex-basis:70px}.ht-calendar-leap{align-items:center;gap:.4rem;margin-top:.65rem;font-size:.8125rem;display:flex}.ht-calendar-leap input{min-height:unset;width:16px;height:16px;accent-color:var(--cal-accent)}.ht-calendar-convert-result{background:var(--cal-accent-soft);border-radius:12px;align-items:center;gap:.7rem;margin-top:1rem;padding:1rem;scroll-margin-top:110px;display:flex}.ht-calendar-convert-result>.ht-icon{width:24px;color:var(--cal-accent);flex:none}.ht-calendar-convert-result strong{font-size:.9rem}.ht-calendar-convert-result p{color:var(--cal-muted);margin:.3rem 0 0;font-size:.8125rem}.ht-calendar-convert-result button{white-space:nowrap;margin-left:auto;font-size:.8125rem}.ht-calendar-error,[data-convert-error]{color:var(--cal-holiday);margin-top:.6rem;font-size:.85rem}.ht-calendar-agenda{margin-top:1.7rem}.ht-calendar-agenda-heading{flex-wrap:wrap;justify-content:space-between;gap:.6rem;margin-bottom:1rem}.ht-calendar-agenda-heading p{color:var(--cal-accent);margin:0 0 .25rem;font-size:.8125rem;font-weight:700}.ht-calendar-agenda-heading h3{margin:0;font-size:1.12rem}.ht-calendar-agenda-heading>span{color:var(--cal-muted);font-size:.8125rem}.ht-calendar-search{flex:1;align-items:center;min-width:0;display:flex;position:relative}.ht-calendar-search>.ht-icon{width:17px;height:17px;color:var(--cal-muted);pointer-events:none;position:absolute;left:.7rem}.ht-calendar-search input{width:100%;padding-left:2.2rem}.ht-calendar-tabs{flex-wrap:wrap;gap:.4rem;margin:.85rem 0 1rem;display:flex}.ht-calendar-tabs button{border:1px solid var(--cal-border);color:var(--cal-muted);background:#fff;border-radius:100px;padding:.4rem .8rem;font-size:.8125rem;font-weight:650}.ht-calendar-tabs button[aria-pressed=true]{color:var(--cal-accent);background:var(--cal-accent-soft);border-color:var(--cal-accent)}.ht-calendar-event-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.4rem;display:grid}.ht-calendar-event-row{border-bottom:1px solid var(--cal-border);align-items:start;gap:.8rem;min-width:0;padding:1rem .15rem;display:flex}.ht-calendar-event-date{border:1px solid var(--cal-border);background:var(--ht-neutral-50,#f8fafc);width:50px;min-height:52px;color:var(--cal-accent);border-radius:10px;flex-direction:column;flex:none;justify-content:center;align-items:center;padding:.3rem;display:flex}.ht-calendar-event-date strong{font-size:1.05rem;line-height:1.2}.ht-calendar-event-date span{color:var(--cal-muted);font-size:.8125rem}.ht-calendar-event-copy{flex:1;min-width:0}.ht-calendar-event-copy>button{text-align:left;color:inherit;overflow-wrap:anywhere;background:0 0;border:0;padding:0;font-size:.85rem;font-weight:650;line-height:1.55;display:block}.ht-calendar-event-copy>button:hover{color:var(--cal-accent)}.ht-calendar-event-meta{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.4rem;display:flex}.ht-calendar-event-meta>span:not(.ht-calendar-badge){color:var(--cal-muted);font-size:.8125rem}.ht-calendar-event-meta a{color:var(--cal-muted);margin-left:auto;font-size:.8125rem;text-decoration:none}.ht-calendar-event-meta a:hover{color:var(--cal-accent)}.ht-calendar-note{background:var(--ht-neutral-50,#f8fafc);color:var(--cal-muted);border-radius:10px;gap:.6rem;margin:1.2rem 0 0;padding:.85rem;font-size:.8125rem;line-height:1.6;display:flex}.ht-calendar-note .ht-icon{flex:none;width:17px;height:17px;margin-top:.1rem}.ht-calendar-empty{color:var(--cal-muted);padding:1rem 0;font-size:.85rem}[data-calendar-more]{margin:1rem auto 0;font-size:.8125rem}.ht-calendar-guide{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 2rem;display:grid}.ht-calendar-guide h3,.ht-calendar-sources h3{margin:0 0 .5rem;font-size:1rem}.ht-calendar-guide p,.ht-calendar-sources p{color:var(--ht-neutral-600);margin:0;font-size:.9rem;line-height:1.8}.ht-calendar-sources{border-top:1px solid var(--ht-neutral-200);margin-top:1.5rem;padding-top:1.5rem}.ht-calendar-sources>div{flex-wrap:wrap;gap:.6rem 1rem;margin-top:.8rem;display:flex}.ht-calendar-sources a{color:var(--ht-brand-600);align-items:center;gap:.25rem;font-size:.8125rem;display:inline-flex}.ht-calendar-sources .ht-icon{width:14px;height:14px}.flatpickr-calendar.ht-calendar-picker{z-index:1000;font-family:inherit}@media (width<=1023px){.ht-calendar-layout{grid-template-columns:minmax(0,1fr) 240px;gap:.8rem}.ht-calendar input,.ht-calendar select,.ht-calendar .flatpickr-input{font-size:16px}}@media (pointer:coarse){.ht-calendar input,.ht-calendar select,.ht-calendar .flatpickr-input{font-size:16px}}@media (width<=767px){.ht-calendar-layout{grid-template-columns:minmax(0,1fr)}.ht-calendar-toolbar{gap:.6rem}.ht-calendar-period{gap:.4rem}.ht-calendar-period select{width:112px}.ht-calendar-period input{width:82px}.ht-calendar-nav{gap:.25rem}.ht-calendar-nav button{min-width:32px;height:38px;padding:.4rem;font-size:.8125rem}.ht-calendar-nav .ht-icon{width:16px}.ht-calendar-grid{border-spacing:3px}.ht-calendar-grid td{height:65px}.ht-calendar-date{border-radius:9px;min-height:65px;padding-block:5px}.ht-calendar-date strong{font-size:1rem}.ht-calendar-day{grid-template-columns:1fr 1.5fr;column-gap:1rem;padding:1.1rem;display:grid}.ht-calendar-day__date{grid-row:span 2}.ht-calendar-day__date>strong{margin-block:.2rem;font-size:3.5rem}.ht-calendar-day__lunar{align-self:end;margin:0 0 .2rem}.ht-calendar-day__year{align-self:start}.ht-calendar-day-events{grid-column:1/-1;margin-top:.8rem;padding-top:.8rem}.ht-calendar-filters{flex-wrap:wrap}.ht-calendar-search{flex-basis:100%}.ht-calendar-filters select{width:100%}.ht-calendar-event-list,.ht-calendar-guide{grid-template-columns:minmax(0,1fr)}.ht-calendar-convert-fields>.ht-calendar-field,.ht-calendar-lunar-fields{flex-basis:100%}.ht-calendar-convert-fields>button{width:100%}.ht-calendar-convert-result{flex-wrap:wrap}.ht-calendar-convert-result>div{flex:1}.ht-calendar-convert-result button{width:100%;margin:.4rem 0 0}.ht-calendar-legend__hint{flex-basis:100%;margin-left:0}}@media (width<=400px){.ht-calendar{--cal-marker-size:7px}}@media (prefers-reduced-motion:reduce){.ht-calendar *{scroll-behavior:auto!important;transition:none!important}}
