.cal-page{padding:40px 0 80px}.cal-title{font-size:var(--text-hub-title);font-weight:var(--font-weight-semibold);color:var(--bt-teal-heading);margin-bottom:10px}.cal-meta{display:flex;align-items:center;gap:10px;color:var(--bt-gray-nav);font-family:var(--font-family-secondary);font-size:14px;margin-bottom:28px}.cal-meta-sep{color:var(--input-border-color)}
.cal-card{background:var(--bt-cream);border:1px solid #E7E0D2;border-radius:var(--radius-card);margin-left:-24px;margin-right:-24px}@media (max-width:575.98px){.cal-card{margin-left:-16px;margin-right:-16px}}
.cal-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:20px}.cal-toolbar__nav{display:flex;align-items:center;gap:10px}.cal-toolbar__label{font-size:24px;font-weight:700;letter-spacing:1px;color:var(--bt-gold-brown);text-transform:uppercase;margin-right:6px}.cal-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--bt-gold) 0%,var(--bt-gold-brown) 100%);box-shadow:0 6px 16px 0 rgba(20,40,34,0.22);color:#fff;font-size:18px;line-height:1;text-decoration:none;transition:opacity 0.2s}.cal-nav-btn:hover{opacity:0.85;color:#fff;text-decoration:none}.cal-toolbar__actions{display:flex;align-items:center;gap:14px}.cal-today-btn{padding:5px 15px;border:1px solid rgba(197,160,89,0.20);border-radius:var(--radius-pill);background:#fff;color:var(--bt-gray-nav);font-family:var(--font-family-secondary);font-size:16px;font-weight:var(--font-weight-medium);text-decoration:none;transition:background 0.2s,color 0.2s}.cal-today-btn:hover{background:var(--bt-gold-dark);color:#fff;text-decoration:none}.cal-view-select{display:flex;align-items:center;gap:8px;font-family:var(--font-family-secondary);font-size:16px;color:var(--bt-gray-nav)}.cal-view-select select{padding:6px 10px;border:1px solid var(--input-border-color);border-radius:4px;background:#fff;font-family:var(--font-family-secondary);font-size:16px;color:var(--bt-gray-nav)}
.cal-grid{padding:0 20px 20px}.cal-grid__row{display:grid;grid-template-columns:repeat(7,1fr)}.cal-grid__row--head .cal-grid__cell--head{min-height:56px;background:var(--bt-gold-light);color:#fff;font-family:var(--font-family-secondary);font-weight:600;font-size:18px;text-align:center;padding:12px 20px}.cal-grid__row--head .cal-grid__cell--head.is-weekend{background:#DBC89E}.cal-grid__row--head .cal-grid__cell--head:first-child{border-radius:12px 0 0 0}.cal-grid__row--head .cal-grid__cell--head:last-child{border-radius:0 12px 0 0}.cal-grid__cell{min-height:165px;padding:20px;border:1px solid #E7E0D2;background:#fff}.cal-grid__cell.is-outside{background:#FFFCF5}.cal-grid__cell.is-outside .cal-grid__daynum{color:var(--bt-gold-light)}.cal-grid__cell.is-today{background:var(--bt-mint)}.cal-grid__cell.is-today .cal-grid__daynum{color:var(--bt-teal-accent);font-weight:700}.cal-grid__daynum{font-family:var(--font-family-secondary);font-size:20px;font-weight:600;color:var(--bt-gray-nav);margin-bottom:8px}.cal-grid__cell.is-weekend:not(.is-outside) .cal-grid__daynum{color:#7C7C7C}
.cal-badge{display:inline-flex;align-items:center;height:40px;padding:0 8px;border:0.5px dashed var(--bt-teal-accent);border-radius:var(--radius-pill);background:var(--bt-mint);color:var(--bt-teal-dark);font-family:var(--font-family-secondary);font-size:16px;line-height:1.25}.cal-badge--lg{height:auto;font-size:18px;padding:10px 20px}
.cal-badge-wrap{position:relative;display:inline-block}.cal-badge:focus{outline:none}.cal-badge-popover{display:none;position:absolute;top:calc(100% + 8px);left:0;z-index:20;width:320px;max-width:80vw;padding:20px;background:#fff;border:1px solid rgba(197,160,89,0.30);border-radius:16px;box-shadow:0 12px 32px rgba(20,40,34,0.18);text-align:left;white-space:normal}.cal-badge-wrap:hover .cal-badge-popover,
.cal-badge-wrap:focus-within .cal-badge-popover{display:block}.cal-badge-popover__title{font-family:var(--font-family-secondary);font-size:18px;font-weight:700;color:var(--bt-teal-heading);margin-bottom:10px}.cal-badge-popover__date{display:flex;align-items:center;gap:6px;color:var(--bt-gray-nav);font-family:var(--font-family-secondary);font-size:14px;margin-bottom:12px}.cal-badge-popover__note{font-family:var(--font-family-secondary);font-size:14px;line-height:1.6;color:var(--bt-charcoal)}.cal-badge-popover__note p{margin:0}.cal-badge-popover__note a{color:var(--bt-teal-accent);font-weight:600}.cal-day-detail{text-align:center;padding:40px 20px}.cal-day-detail__date{font-size:24px;font-weight:700;color:var(--bt-teal-dark);margin-bottom:16px}.cal-day-detail__empty{color:var(--bt-gray-nav);font-size:15px}@media (max-width:767px){.cal-grid__cell{min-height:70px;padding:6px}.cal-grid__daynum{font-size:13px;margin-bottom:4px}.cal-badge{height:auto;font-size:10px;padding:2px 6px}.cal-grid__row--head .cal-grid__cell--head{font-size:11px;padding:8px 2px}.cal-toolbar__label{}.cal-toolbar__nav{width:100%}.cal-toolbar__nav .cal-nav-btn:first-of-type{margin-left:auto}.cal-badge-popover{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(320px,calc(100vw - 32px));max-height:80vh;overflow-y:auto}}@media (max-width:576px){.cal-title{font-size:36px}}