.ecv .date-block{--db-bg:var(--color-ink);--db-day:var(--color-accent);--db-text:var(--color-paper);--db-dot:oklch(100% 0 0/.17);--db-width:4rem;--db-height:4.5rem;--db-num:2rem;isolation:isolate;width:var(--db-width);min-height:var(--db-height);border:1px solid var(--db-bg);border-radius:var(--radius-sm);background-color:var(--db-bg);background-image:radial-gradient(circle at center, var(--db-dot) 0 1px, transparent 1.6px);color:var(--db-text);text-align:center;transition:background-color var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);background-position:50%;background-size:8px 8px;flex:none;align-content:center;justify-items:center;gap:.5rem;padding:.375rem .25rem;display:grid;position:relative}.ecv .date-block[data-tone=accent]{--db-bg:var(--color-accent);--db-day:var(--color-ink);--db-text:var(--color-ink);--db-dot:oklch(16% 0 0/.22)}.ecv .date-block[data-tone=paper]{--db-bg:var(--color-paper);--db-day:var(--color-ink);--db-text:var(--color-ink);--db-dot:oklch(16% 0 0/.14);border-color:var(--color-ink)}.ecv .date-block[data-size=sm]{--db-width:3rem;--db-height:3.5rem;--db-num:1.5rem;gap:.375rem}.ecv .date-block[data-size=lg]{--db-width:6rem;--db-height:7rem;--db-num:3.5rem;gap:.75rem}.ecv .date-day{min-width:2ch;color:var(--db-day);font-weight:900;font-size:var(--db-num);text-box:trim-both cap alphabetic;transition:color var(--duration-fast) var(--ease-out);line-height:1;display:block;translate:.055em}.ecv .date-month,.ecv .date-until{font-family:var(--font-display);font-weight:700;font-stretch:85%;font-size:var(--text-micro);letter-spacing:var(--tracking-label);text-transform:uppercase;text-box:trim-both cap alphabetic;padding-inline-start:var(--tracking-label);line-height:1;display:block}.ecv .date-until{opacity:.8}.ecv .date-block[data-size=lg] .date-month,.ecv .date-block[data-size=lg] .date-until{font-size:.875rem}.ecv .card,.ecv .tile{isolation:isolate;position:relative}.ecv .stretch{color:inherit;text-decoration:none}.ecv .stretch:after{content:"";z-index:0;position:absolute;inset:0}.ecv .stretch:focus-visible{outline:none}.ecv .stretch:focus-visible:after{outline:2px solid var(--color-ink);outline-offset:2px}.ecv .name{font-size:var(--text-h3);line-height:var(--text-h3--line-height);overflow-wrap:anywhere}.ecv .place{color:var(--color-muted);font-size:var(--text-small);line-height:var(--text-small--line-height)}.ecv .place-distance{font-variant-numeric:tabular-nums;white-space:nowrap}.ecv .chips{flex-wrap:wrap;align-items:center;gap:.375rem .5rem;margin:0;display:flex}.ecv .more{color:var(--color-muted);font-size:var(--text-caption);font-weight:600}.ecv .distances{font-size:var(--text-small);font-variant-numeric:tabular-nums;margin:0;font-weight:600}.ecv .price{font-size:var(--text-small);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-weight:700}.ecv .opens{color:var(--color-muted);font-size:var(--text-caption);white-space:nowrap}.ecv .card{border-block-end:var(--hairline) solid var(--color-line);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;column-gap:.875rem;padding-block:1rem;display:grid}.ecv .card:before{content:"";z-index:-1;border-radius:var(--radius-sm);background-color:var(--color-wash);opacity:0;transition:opacity var(--duration-fast) var(--ease-out);position:absolute;inset:0 -.5rem}.ecv .body{flex-direction:column;gap:.625rem;min-width:0;display:flex}.ecv .main{flex-direction:column;gap:.25rem;min-width:0;display:flex}.ecv .main .chips{margin-block-start:.25rem}.ecv .side{flex-direction:column;align-items:flex-start;gap:.375rem;display:flex}.ecv .card .watch{margin-block:-.5rem;margin-inline-end:-.625rem}.ecv .card[data-inactive] .name{color:var(--color-muted)}@media (width>=48rem){.ecv .card{column-gap:1.25rem}.ecv .body{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:1.5rem}.ecv .side{text-align:end;flex-direction:column;flex:none;align-items:flex-end;gap:.5rem;min-width:9.5rem}}@media (hover:hover) and (pointer:fine){.ecv .card:hover:before{opacity:1}.ecv .card:hover .stretch,.ecv .tile:hover .stretch{text-underline-offset:.15em;text-decoration:underline 2px}.ecv .card:hover .date-block[data-tone=ink],.ecv .tile:hover .date-block[data-tone=ink]{--db-bg:var(--color-accent);--db-day:var(--color-ink);--db-text:var(--color-ink);--db-dot:oklch(16% 0 0/.22)}}.ecv .card .watch,.ecv .tile .watch{z-index:1;position:relative}.ecv .tile{border:1px solid var(--color-ink);border-radius:var(--radius-md);background-color:var(--color-paper);transition:background-color var(--duration-fast) var(--ease-out);flex-direction:column;gap:.5rem;padding:.875rem;display:flex}.ecv .tile-top{align-items:flex-start;gap:.625rem;margin-block-end:.25rem;display:flex}.ecv .tile-top .badge{margin-block-start:.125rem}.ecv .tile-top .watch{margin:-.5rem -.625rem 0 auto}.ecv .tile[data-inactive] .name{color:var(--color-muted)}@media (hover:hover) and (pointer:fine){.ecv .tile:hover{background-color:var(--color-wash)}}.ecv .event-list{flex-direction:column;gap:2rem;display:flex}.ecv .month-head{z-index:2;border-block-end:2px solid var(--color-ink);background-color:var(--color-paper);justify-content:space-between;align-items:baseline;gap:1rem;padding-block:.625rem;display:flex;position:sticky;top:0}@media (width>=48rem){.ecv .month-head{top:var(--header-h)}}.ecv .month-count{color:var(--color-muted);font-size:var(--text-small);font-variant-numeric:tabular-nums}.ecv .month-items{margin:0;padding:0;list-style:none}.ecv .month-items>li:last-child .card{border-block-end:0}.ecv .load-more{text-align:center;flex-direction:column;align-items:stretch;gap:.75rem;max-width:24rem;margin-inline:auto;display:flex}.ecv .load-more-count{color:var(--color-muted);font-size:var(--text-small);font-variant-numeric:tabular-nums}.ecv .load-more-count strong{color:var(--color-ink)}.ecv .load-more-meter{background-color:var(--color-wash-strong);height:4px}.ecv .load-more-meter span{background-color:var(--color-ink);height:100%;display:block}.ecv .empty-state{border:1px solid var(--color-ink);border-radius:var(--radius-md);flex-direction:column;justify-content:center;align-items:flex-start;gap:1.25rem;min-height:16rem;padding:2rem 1.5rem;display:flex}.ecv .empty-value{font-size:var(--text-num-xl);line-height:.9}.ecv .empty-copy{flex-direction:column;gap:.5rem;max-width:32rem;display:flex}.ecv .empty-description{color:var(--color-muted)}.ecv .empty-actions{flex-wrap:wrap;gap:.75rem;display:flex}
