/* Month agenda */
.month-calendar{overflow:hidden}
.month-weekdays{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--line);background:#fcf8f6}
.month-weekdays div{padding:11px 10px;text-align:center;color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.month-day{min-height:132px;padding:10px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;color:var(--ink);text-align:left}
.month-day:nth-child(7n){border-right:0}
.month-day:hover{background:#fdf7f5}
.month-day.outside{background:#faf8f7;color:#b7aaa6}
.month-day.today{box-shadow:inset 0 0 0 2px var(--rose)}
.month-day-number{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;font-size:11px;font-weight:900}
.month-day.today .month-day-number{background:var(--rose);color:#fff}
.month-day-content{display:grid;gap:4px;margin-top:8px}
.month-event{display:flex;align-items:center;gap:5px;min-width:0;padding:4px 6px;border-radius:8px;background:#f7f1ef;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.month-event i{width:6px;height:6px;border-radius:50%;background:var(--rose);flex:0 0 auto}
.month-event.agus i{background:#bd7778}
.month-event.mica i{background:#7b879e}
.month-event.agostina i{background:#8f745d}
.month-event strong{font-size:9px}
.month-more,.month-blocked{font-size:8px;color:var(--muted);font-weight:800}
.month-blocked{color:#8b7470}

/* Advanced schedules */
.config-mode-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:12px 0;margin-bottom:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.config-mode-head>div{display:grid;gap:4px}
.config-label{font-size:9px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.config-mode-head strong{font-size:11px}
.config-hint{margin:12px 0 0;padding:10px 11px;border-radius:11px;background:#faf4f1;color:var(--muted);font-size:9px;line-height:1.45}
.advanced-note{padding:11px 12px;border-radius:12px;background:#f8efec;color:var(--muted);font-size:11px;line-height:1.5}
.advanced-week{display:grid;gap:9px}
.advanced-day-row{display:grid;grid-template-columns:105px 1fr;gap:12px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff}
.advanced-day-toggle{display:flex;align-items:center;gap:8px;min-height:36px;font-size:11px;font-weight:900}
.advanced-day-toggle input{accent-color:var(--rose)}
.advanced-intervals{display:grid;gap:7px}
.interval-row{display:grid;grid-template-columns:minmax(110px,1fr) auto minmax(110px,1fr);align-items:center;gap:7px}
.interval-row input{width:100%;border:1px solid var(--line);border-radius:10px;padding:9px 10px;background:#fff}
.secondary-interval{grid-template-columns:minmax(110px,1fr) auto minmax(110px,1fr) auto}
.secondary-interval small{color:var(--muted);font-size:8px;white-space:nowrap}

@media(max-width:900px){
  .month-day{min-height:110px;padding:7px}
  .month-event{font-size:8px;padding:3px 4px}
  .month-event strong{font-size:8px}
}
@media(max-width:680px){
  .month-calendar{overflow-x:auto}
  .month-weekdays,.month-grid{min-width:700px}
  .month-day{min-height:105px}
  .advanced-day-row{grid-template-columns:1fr}
  .interval-row{grid-template-columns:1fr auto 1fr}
  .secondary-interval{grid-template-columns:1fr auto 1fr}
  .secondary-interval small{grid-column:1/-1}
}

/* Agenda density switch */
@media(min-width:821px){
  .toolbar{grid-template-columns:auto auto auto 1fr}
}
.density-switch button,.client-view-switch button{padding:8px 12px;font-size:10px}
.day-agenda .hour-row{border-bottom-color:#dfd0cb}
.day-agenda .half-hour-row{border-bottom-color:#f2e9e6}
.day-agenda.compact .agenda-row{min-height:38px}
.day-agenda.compact .half-hour-row{min-height:32px}
.day-agenda.compact .time-cell{padding:9px 9px 0 0;font-size:9px}
.day-agenda.compact .agenda-cell{padding:3px 6px}
.day-agenda.compact .slot-stack{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:4px}
.day-agenda.compact .empty-slot{min-height:26px;border-radius:8px}
.day-agenda.compact .booking-card{min-height:32px;padding:4px 8px;gap:7px;border-radius:10px}
.day-agenda.compact .booking-color{width:5px;height:22px}
.day-agenda.compact .booking-main strong{font-size:11px}
.day-agenda.compact .booking-main span{margin-top:1px;font-size:9px}
.day-agenda.compact .status-pill{padding:3px 6px;font-size:8px}
.day-agenda.compact .block-card{min-height:30px;padding:5px 8px;border-radius:9px;font-size:9px}
.day-agenda.compact .block-card:before{width:4px;height:19px}

/* Client detail/list view */
.client-grid.client-list-view{display:block}
.client-list-head,.client-list-row{
  display:grid;
  grid-template-columns:minmax(150px,1.25fr) minmax(145px,1.05fr) minmax(95px,.7fr) minmax(160px,1.2fr) minmax(130px,1fr) auto;
  gap:14px;
  align-items:center;
}
.client-list-head{
  padding:0 14px 8px;
  color:var(--muted);
  font-size:8px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.client-list-row{
  min-height:58px;
  margin-bottom:6px;
  padding:9px 12px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:12px;
}
.client-list-row:hover{border-color:#d7bdb8;background:#fffdfc}
.client-list-row strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.client-list-row small{display:block;margin-top:3px;color:var(--muted);font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.client-list-main strong{font-family:var(--serif);font-size:17px;font-weight:600}
.client-list-tags{display:flex;gap:4px;flex-wrap:wrap;min-width:0}
.client-list-tags .tag{padding:4px 6px;font-size:8px}
.client-list-actions{display:flex;gap:5px;justify-content:flex-end}
.client-list-actions .mini-btn{padding:6px 8px;font-size:9px}
.client-view-switch{flex:0 0 auto}

@media(max-width:1100px){
  .client-list-head,.client-list-row{grid-template-columns:minmax(145px,1.3fr) minmax(135px,1fr) 90px minmax(150px,1.2fr) auto}
  .client-list-head span:nth-child(5),.client-list-row>div:nth-child(5){display:none}
}
@media(max-width:820px){
  .density-switch{width:max-content}
  .list-toolbar .client-view-switch{align-self:flex-start}
  .client-list-head{display:none}
  .client-list-row{grid-template-columns:1.4fr 1fr auto;gap:10px}
  .client-list-row>div:nth-child(3),.client-list-row>div:nth-child(5){display:none}
  .client-list-row>div:nth-child(4){display:block}
}
@media(max-width:580px){
  .density-switch{width:100%}
  .density-switch button{flex:1}
  .client-list-row{grid-template-columns:1fr auto}
  .client-list-row>div:nth-child(2),.client-list-row>div:nth-child(3),.client-list-row>div:nth-child(4),.client-list-row>div:nth-child(5){display:none}
}
