.calendar-modal-overlay{z-index:9999;background:#00000073;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.premium-calendar-modal{width:min(420px,100%)}
.cal-shell{background:var(--bg);width:100%;box-shadow:0 24px 80px var(--shadow-light);border-radius:20px;padding:20px}.cal-header{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-bottom:18px;display:grid}.cal-nav-group{gap:8px;display:flex}.cal-nav-btn,.cal-title,.cal-day,.cal-year-item{cursor:pointer;background:0 0;border:0}.cal-nav-btn{border:1px solid var(--lines);background:var(--bg-soft,#fdfaf3);width:36px;height:36px;color:var(--text-1);border-radius:10px;justify-content:center;align-items:center;font-size:18px;display:inline-flex}.cal-title{color:var(--text-1);justify-self:center;align-items:center;gap:8px;font-size:18px;font-weight:700;display:inline-flex}.cal-weekdays,.cal-grid{grid-template-columns:repeat(7,1fr);display:grid}.cal-weekdays{color:var(--text-3);text-align:center;margin-bottom:10px;font-size:12px;font-weight:600}.cal-grid{gap:6px}.cal-day{aspect-ratio:1;color:var(--text-1);border-radius:12px;font-size:14px;position:relative}.cal-day:hover:not(:disabled):not(.is-selected){background:var(--grey-2)}.cal-day.is-selected{background:var(--accent);color:var(--white);font-weight:600}.cal-day.is-outside{color:var(--text-3);opacity:.45;cursor:default}.cal-day:disabled{opacity:.45;cursor:default}.cal-day.has-highlight:after{content:"";background:var(--accent);border-radius:999px;width:5px;height:5px;position:absolute;bottom:8px}.cal-year-view{flex-direction:column;gap:14px;display:flex}.cal-year-toolbar{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;display:grid}.cal-year-range{text-align:center;color:var(--text-1);font-size:15px;font-weight:700}.cal-year-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.cal-year-item{background:var(--grey-1);color:var(--text-1);border-radius:12px;min-height:48px;padding:14px 10px;font-weight:600}.cal-year-item:hover{background:var(--grey-2)}.cal-year-item.is-selected{background:var(--accent);color:var(--white)}@media (max-width:480px){.cal-shell{padding:16px}.cal-title{font-size:16px}.cal-nav-btn{width:32px;height:32px}.cal-year-grid{gap:8px}.cal-year-item{min-height:44px;padding:12px 8px}}
