/* ============================================================
calendar.css — шторка-календарь и связанные элементы шапки
============================================================ */
.date-title-row{ display:flex; align-items:center; }
.date-chevron{ color:var(--text-muted); font-size:10px; margin-left:4px; }
.menu-btn{ margin-left:6px; }
#calendarBackdrop{ position:fixed; inset:0; z-index:60; background:var(--backdrop); opacity:0; pointer-events:none; transition:opacity .22s; touch-action:none; /* v9mvp-UI-ZOOM-MODAL-FIX */ }
#calendarBackdrop.show{ opacity:1; pointer-events:auto; }
.cal-head{ display:flex; align-items:center; gap:8px; }
.cal-head .sheet-title{ flex:1; }
.cal-weekdays{ display:grid; grid-template-columns:repeat(7,1fr); gap:4px; margin-top:12px; }
.cal-weekdays span{ text-align:center; font-size:10.5px; font-weight:600; color:var(--text-faint); letter-spacing:.06em; text-transform:uppercase; padding:4px 0; }
.cal-grid{ display:grid; grid-template-columns:repeat(7,1fr); gap:4px; margin-top:6px; }
.cal-grid .guide-loading{ grid-column:1 / -1; }
.cal-cell{
aspect-ratio:1; border-radius:10px;
background:var(--surface-control); border:1px solid var(--line);
display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px;
font-size:13px; font-weight:600; color:var(--text-primary);
transition:border-color .15s, background .15s, transform .12s;
}
.cal-cell:hover{ border-color:var(--accent); background:var(--surface-control-hover); }
.cal-cell:active{ transform:scale(.94); }
.cal-blank{ background:transparent; border-color:transparent; pointer-events:none; }
.cal-badge{ font-size:10px; font-weight:700; color:var(--accent-light); line-height:1; }
.cal-today{ border-color:var(--accent); box-shadow:0 0 0 1px var(--accent) inset; }
.cal-selected{ background:var(--accent-focus); border-color:var(--accent-line-strong); }
/* v8mvp-D фикс: ☰ в первой строке шапки, справа от «Сегодня» (мобильный) */
@media (max-width:700px){
.date-nav{ order:-2; }
.menu-btn{ order:-1; }
}
