.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}.calendar-day{background:#1e293b66;min-height:120px;padding:16px;border-radius:16px;border:1px solid var(--border);font-weight:600;display:flex;flex-direction:column;gap:8px;transition:all .3s ease;color:var(--text-muted)}.calendar-day:hover{border-color:var(--primary);box-shadow:0 0 20px #10b98133;transform:translateY(-2px);color:var(--text-dark)}.calendar-day.today{border:1px solid var(--primary);background:#10b9811a;color:var(--primary)}.calendar-day.empty{background:transparent;border:none;pointer-events:none}.month-nav{display:flex;justify-content:space-between;align-items:center;padding:24px;background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border);margin-bottom:32px;box-shadow:var(--shadow-soft)}.nav-btn{background:#1e293b80;border:1px solid var(--border);color:var(--text-dark);width:44px;height:44px;border-radius:50%;cursor:pointer;transition:.2s;display:flex;align-items:center;justify-content:center}.nav-btn:hover{background:var(--primary);border-color:var(--primary)}@media(max-width:768px){.calendar-grid{gap:6px}.calendar-day{min-height:80px;padding:8px;font-size:.8rem}.month-nav{padding:16px;margin-bottom:24px}#currentMonthLabel{font-size:1.1rem}}@media(max-width:480px){.calendar-day{min-height:60px}.calendar-day span{font-size:.7rem}}
