.slot-time-compact,.slot-status-compact{display:none}
.slot.busy .slot-status-full{font-size:.8rem}
@media(max-width:780px){
 .calendar-shell .calendar-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:7px}
 .calendar-shell .day{padding:4px 3px;border-radius:9px;min-width:0}
 .calendar-shell .day-heading{font-size:.85rem;min-height:18px;padding:0 0 2px;gap:2px;line-height:1.1}
 .calendar-shell .day-number{padding:0 2px;white-space:nowrap;min-width:0;line-height:1.1}
 .calendar-shell .mobile-weekday{font-size:.67rem;font-weight:600}
 .calendar-shell .day-holiday{font-size:0;width:5px;height:5px;padding:0;flex-shrink:0;border-radius:50%;background:#efba65}
 .calendar-shell .day-slots{display:grid;grid-template-columns:1fr;gap:2px}
 .calendar-shell .slot{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:2px;width:100%;margin:0;min-height:20px;padding:2px;border-radius:4px;font-size:clamp(10.5px,2.7vw,13px);line-height:1.15;white-space:nowrap}
 .calendar-shell .slot-time-full,.calendar-shell .slot-status-full,.calendar-shell .slot small{display:none}
 .calendar-shell .slot-time-compact,.calendar-shell .slot-status-compact{display:inline;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
 .calendar-shell .slot strong{font-size:clamp(11.5px,3vw,14px);line-height:1.15;letter-spacing:-.02em}
 .calendar-shell .slot.busy .slot-status-compact{font-size:clamp(9px,2.5vw,12px);line-height:1.15;letter-spacing:-.02em}
 .calendar-toolbar{padding:11px 12px;gap:8px}
 .calendar-controls{gap:8px}
 .calendar-controls select{padding:8px;font-size:.78rem}
 .calendar-controls .soft-button{padding:8px 10px;font-size:.76rem}
 .month-nav h3{font-size:1.15rem}
 .calendar-footer{padding:11px 12px;gap:5px}
}
@media(max-width:360px){.extras-layout{grid-template-columns:minmax(0,1fr)}.extras-layout>*{min-width:0}.extras-mascot{max-width:40%;right:0;margin:0}}
