.dhh .cal{margin-block:2rem}.dhh .cal h3{font-size:1.15rem;font-weight:800;letter-spacing:-.01em;margin-bottom:.9rem}.dhh .cal-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem}@media (max-width:560px){.dhh .cal-months{grid-template-columns:minmax(0,1fr);gap:1.25rem}}.dhh .cal-title{font-size:.95rem;font-weight:700;margin-bottom:.55rem;text-align:center}.dhh .cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.dhh .cal-dow{text-align:center;font-size:.68rem;font-weight:700;color:var(--muted);padding-block:.3rem}.dhh .cal-day,.dhh .cal-pad{aspect-ratio:1}.dhh .cal-day{display:flex;align-items:center;justify-content:center;font-size:.82rem;font-variant-numeric:tabular-nums;border-radius:6px}.dhh .cal-day.free{color:var(--ink);background:var(--wash);font-weight:600}.dhh .cal-day.busy{color:var(--muted);background:transparent;text-decoration:line-through;text-decoration-thickness:1.5px}.dhh .cal-day.past{color:#c3cad2;background:transparent}.dhh .cal-key{display:flex;align-items:center;gap:.4rem;margin-top:1rem;font-size:.8rem;color:var(--body)}.dhh .cal-swatch{inline-size:.85rem;block-size:.85rem;border-radius:3px;display:inline-block}.dhh .cal-swatch.free{background:var(--wash);border:1px solid var(--line)}.dhh .cal-swatch.busy{background:transparent;border:1px solid var(--line);position:relative}.dhh .cal-swatch.busy:after{content:"";position:absolute;inset-inline:1px;inset-block-start:50%;border-block-start:1.5px solid var(--muted)}.dhh .cal-key .cal-swatch:nth-of-type(2){margin-inline-start:.9rem}.dhh .cal-note{margin-top:.5rem;font-size:.8rem;color:var(--muted);max-inline-size:52ch}