/* Calendar presentation only. Time geometry, interaction and event shapes stay unchanged. */
.calendar-main{--calendar-tint:color-mix(in srgb,var(--primary) 6%,var(--surface,#fff));--calendar-hairline:color-mix(in srgb,var(--line) 68%,transparent);--calendar-shadow:color-mix(in srgb,var(--primary) 9%,transparent)}
.calendar-main .calendar-toolbar{padding-bottom:18px}
.calendar-main .calendar-toolbar h1{font-size:29px;font-weight:500;letter-spacing:-1.1px}
.calendar-main .eyebrow{color:var(--primary);letter-spacing:1.8px;font-weight:500}
.calendar-main .calendar-toolbar>div>p:last-child{margin-top:5px}
.calendar-main .calendar-surface{border-radius:16px;border-color:var(--line);box-shadow:0 8px 30px -12px var(--calendar-shadow),0 1px 3px #00000005}
.calendar-main .weekdays{background:var(--calendar-tint)}
.calendar-main .weekdays span{font-weight:500;padding-top:14px;padding-bottom:14px}
.calendar-main #calendar[data-view=week] .week-header{background:var(--surface,#fff);box-shadow:0 3px 10px -6px var(--calendar-shadow);padding-top:12px}
.calendar-main .week-header>div{padding-top:3px;border-top:2px solid transparent}
.calendar-main .week-header>div.is-today{border-top-color:var(--primary);background:var(--calendar-tint);border-radius:8px 8px 0 0}
.calendar-main .week-header>div>span:first-child{font-weight:500;font-size:11px}
.calendar-main .week-header .date-number{width:32px;height:32px;font-size:17px}
.calendar-main .weekdays span:first-child,.calendar-main .week-header>div:nth-child(2)>span:first-child{color:#b65e52}
.calendar-main .weekdays span:last-child,.calendar-main .week-header>div:last-child>span:first-child{color:var(--primary)}
.calendar-main .day-cell{border-color:var(--calendar-hairline)}
.calendar-main .day-cell:not(.outside){background:var(--surface,#fff)}
.calendar-main .day-cell:not(.outside):nth-child(7n+1),.calendar-main .day-cell:not(.outside):nth-child(7n){background:color-mix(in srgb,var(--bg) 60%,var(--surface,#fff))}
.calendar-main .day-cell.is-today:not(.is-selected-date){background:var(--calendar-tint);box-shadow:inset 0 3px 0 color-mix(in srgb,var(--primary) 55%,transparent)}
.calendar-main #calendar .day-cell.is-selected-date{background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary)}
.calendar-main .day-cell:hover:not(.is-selected-date){background:var(--calendar-tint)}
.calendar-main .day-cell>.date-number{font-weight:500;margin-bottom:10px}
.calendar-main .all-day-row{background:color-mix(in srgb,var(--bg) 55%,var(--surface,#fff));border-bottom-color:var(--line)}
.calendar-main .all-day-row>span{font-weight:500}
.calendar-main .week-column{border-left-color:var(--calendar-hairline)}
.calendar-main .hours{background:var(--surface,#fff)}
.calendar-main .hours>span{font-size:10px;color:var(--muted)}
.calendar-main #calendar .week-grid{background:repeating-linear-gradient(to bottom,transparent 0,transparent 29px,color-mix(in srgb,var(--line) 35%,transparent) 29px,color-mix(in srgb,var(--line) 35%,transparent) 30px,transparent 30px,transparent 59px,var(--line) 59px,var(--line) 60px)}
body[data-theme] .calendar-main .event{background-image:linear-gradient(135deg,#ffffff18,transparent 75%);box-shadow:inset 0 0 0 1px #00000005,0 2px 3px #00000004}
body[data-theme] .calendar-main .event:hover{background-image:linear-gradient(135deg,#ffffff22,transparent 75%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 30%,transparent)}
body[data-theme] .calendar-main .event.selected{box-shadow:inset 0 0 0 1px var(--primary)}
.calendar-main .event-name{font-weight:500;letter-spacing:-.15px}
.calendar-main .current-time-line{box-shadow:0 1px 4px #ff8a4c30}
.calendar-main .current-time-line::before{box-shadow:0 0 0 3px #ff8a4c20}
.calendar-main .calendar-bottom{padding:0 4px}
body[data-mode=dark] .calendar-main .weekdays span:first-child,body[data-mode=dark] .calendar-main .week-header>div:nth-child(2)>span:first-child{color:#e7a296}
body[data-mode=dark] .calendar-main .calendar-surface{box-shadow:0 8px 28px -12px #0008}
body[data-mode=dark] .calendar-main .event{background-image:linear-gradient(135deg,#ffffff06,transparent 75%)}
@media(max-width:720px){.calendar-main .calendar-toolbar h1{font-size:25px}.calendar-main .calendar-surface{border-radius:12px}}
