body:has(.calendar--light),body.calendar-light-theme{background:#f8f8f8!important;background-image:none!important}body:has(.calendar--light)::before,body.calendar-light-theme::before{display:none!important}body:has(.calendar--light) .site-nav,body:has(.calendar--light) header.site-header,body:has(.calendar--light) .global-header,body.calendar-light-theme .site-nav,body.calendar-light-theme header.site-header,body.calendar-light-theme .global-header{background:rgba(255,255,255,.95)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,8%)!important}body:has(.calendar--light) .site-nav a,body:has(.calendar--light) .site-nav__link,body:has(.calendar--light) .nav-link,body.calendar-light-theme .site-nav a,body.calendar-light-theme .site-nav__link,body.calendar-light-theme .nav-link{color:#1a1a1a!important}body:has(.calendar--light) .site-nav a:hover,body:has(.calendar--light) .site-nav__link:hover,body:has(.calendar--light) .nav-link:hover,body.calendar-light-theme .site-nav a:hover,body.calendar-light-theme .site-nav__link:hover,body.calendar-light-theme .nav-link:hover{color:#7c3aed!important}body:has(.calendar--light) .site-footer,body:has(.calendar--light) footer,body.calendar-light-theme .site-footer,body.calendar-light-theme footer{background:#fff!important;border-top:1px solid rgba(0,0,0,8%)!important;color:#666!important}body:has(.calendar--light) .site-footer a,body.calendar-light-theme .site-footer a{color:#1a1a1a!important}.calendar--light{--cal-bg:#f8f8f8;--cal-bg-grid:#fff;--cal-text:#1a1a1a;--cal-text-muted:#666;--cal-text-subtle:#999;--cal-border:rgba(0, 0, 0, 0.08);--cal-border-hover:rgba(0, 0, 0, 0.15);--cal-shadow:rgba(0, 0, 0, 0.08);--cal-accent:#7c3aed;--cal-today:#3b82f6}.calendar--light .calendar-section{background:var(--cal-bg)!important;padding:clamp(1.5rem,4vw,3rem)0!important}.calendar--light .calendar-section--page{background:linear-gradient(180deg,#fff 0%,var(--cal-bg) 100%)!important}.calendar--light .calendar-wrapper{max-width:1200px}.calendar--light .calendar-month{background:0 0!important;border:none!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;gap:clamp(.75rem,2vw,1.25rem)!important}.calendar--light .calendar-month__header{padding:0 0 clamp(.5rem,1.5vw,1rem)!important;background:0 0!important;border:none!important}.calendar--light .calendar-month__title{font-size:clamp(1.25rem,2.5vw,1.75rem)!important;font-weight:600!important;color:var(--cal-text)!important;letter-spacing:-.02em!important}.calendar--light .calendar-grid{background:0 0!important;border:none!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding:0!important;gap:clamp(8px,1.5vw,14px)!important}.calendar--light .calendar-grid::before{display:none!important}.calendar--light .calendar-head{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--cal-text-subtle);padding:0 0 clamp(.75rem,1.5vw,1rem);background:0 0;border:none;min-height:auto;text-align:center}.calendar--light .day{aspect-ratio:1/1;border-radius:clamp(12px,2vw,18px);border:none;background:#e8e8e8;overflow:hidden;position:relative;transition:transform .25s cubic-bezier(.25,.46,.45,.94),box-shadow .25s ease}.calendar--light .day__num{position:absolute;top:clamp(6px,1vw,10px);left:clamp(6px,1vw,10px);z-index:3;font-size:clamp(.85rem,1.3vw,1.1rem);font-weight:700;color:#fff;background:rgba(0,0,0,.45);padding:4px 10px;border-radius:6px;text-shadow:0 1px 2px rgba(0,0,0,.3);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);line-height:1}.calendar--light .day.day--pad{background:0 0}.calendar--light .day[data-state=has]{background:#ddd;cursor:pointer;box-shadow:0 2px 8px var(--cal-shadow)}.calendar--light .day[data-state=has]::before,.calendar--light .day[data-state=has]::after{display:none}.calendar--light .day[data-state=has] picture{position:absolute;inset:0;display:block;margin:0;border-radius:inherit;overflow:hidden}.calendar--light .day[data-state=has] picture img,.calendar--light .day[data-state=has] img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s cubic-bezier(.25,.46,.45,.94)}.calendar--light .day[data-state=has]:hover{transform:scale(1.03);box-shadow:0 8px 24px rgba(0,0,0,.15);z-index:5}.calendar--light .day[data-state=has]:hover img{transform:scale(1.05)}.calendar--light .day[data-state=has]:focus-visible{outline:3px solid var(--cal-accent);outline-offset:2px;transform:scale(1.02)}.calendar--light .day[data-state=has].is-active,.calendar--light .day[data-state=has][aria-expanded=true]{outline:3px solid #1a1a1a;outline-offset:0;transform:scale(1.02);z-index:5}.calendar--light .day[data-state=empty]:not([data-future=true]){background:#e0e0e0;border:none;box-shadow:none}.calendar--light .day[data-state=empty] .day__num{background:0 0;color:var(--cal-text-subtle);text-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.calendar--light .day[data-future=true]{background:#ebebeb;border:none;opacity:.7}.calendar--light .day[data-future=true]::before,.calendar--light .day[data-future=true]::after{display:none}.calendar--light .day[data-future=true] .day__num{background:0 0;color:var(--cal-text-subtle);text-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.calendar--light .day[data-today=true]{outline:3px solid var(--cal-today);outline-offset:-3px;opacity:1}.calendar--light .day[data-today=true] .day__num{background:var(--cal-today);color:#fff}.calendar--light .day[data-state=has][data-today=true]{outline-offset:0}.calendar--light .day[data-today=true] .day__num::after{content:none}.calendar--light .day[data-today=true],.calendar--light .day[data-state=has][data-today=true]{animation:none}.calendar--light .day[data-weekend=true]:not([data-state=has]){background:#e5e5e5}@media(max-width:768px){.calendar--light .calendar-grid{gap:clamp(4px,1vw,8px)}.calendar--light .day{border-radius:clamp(8px,1.5vw,12px)}.calendar--light .day__num{font-size:.7rem;padding:2px 6px;border-radius:4px}.calendar--light .calendar-head{font-size:.65rem}}@media(max-width:500px){.calendar--light .day{border-radius:8px}.calendar--light .day__num{font-size:.65rem;padding:2px 5px;top:4px;left:4px}}@media(prefers-reduced-motion:reduce){.calendar--light .day,.calendar--light .day[data-state=has] img{transition:none}}