.agenda-navigation{justify-content:center;min-width:310px}.agenda-navigation strong{min-width:190px;text-align:center;text-transform:none}.agenda-arrow{width:34px;padding-left:0!important;padding-right:0!important}.agenda-toolbar [data-agenda-views] button{min-width:44px}
.view:has(.agenda-workspace) .agenda-toolbar{position:sticky;top:64px;z-index:11;margin-left:-8px;margin-right:-8px;padding:9px 8px;background:rgba(247,248,245,.96);border-bottom:1px solid rgba(220,228,224,.9);box-shadow:0 8px 18px rgba(24,48,41,.04);backdrop-filter:blur(12px)}
.agenda-week-view .week-calendar-scroll,.agenda-day-view .week-calendar-scroll{height:clamp(460px,calc(100dvh - 275px),720px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.agenda-week-view .week-header,.agenda-day-view .week-header{top:0;z-index:10;box-shadow:0 1px 0 var(--line)}
.agenda-week-view .all-day-row,.agenda-day-view .all-day-row{position:sticky;top:49px;z-index:9;box-shadow:0 4px 10px rgba(26,49,43,.04)}
.agenda-day-view .week-calendar-scroll{overflow-x:hidden}.agenda-day-view .week-header,.agenda-day-view .all-day-row,.agenda-day-view .week-grid{width:100%}
.month-calendar{padding:14px}.month-weekdays{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--line)}.month-weekdays span{padding:8px;text-align:center;color:var(--muted);font-size:9px;font-weight:700;text-transform:uppercase}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(90px,1fr));grid-auto-rows:minmax(105px,1fr)}.month-day{min-width:0;border:0;border-right:1px solid #edf0ed;border-bottom:1px solid #edf0ed;background:#fff;padding:8px;text-align:left;cursor:pointer}.month-day:nth-child(7n){border-right:0}.month-day:hover{background:#f5f9f7}.month-day.outside{background:#fafbfa;color:#a6afac}.month-day>strong{display:grid;place-items:center;width:25px;height:25px;margin-bottom:5px;border-radius:50%;font-size:11px}.month-day.today>strong{background:var(--forest);color:#fff}.month-day>div{display:grid;gap:3px}.month-day>div>span{display:block;overflow:hidden;border-left:3px solid var(--item-color);border-radius:4px;background:color-mix(in srgb,var(--item-color) 12%,white);padding:4px 5px;color:var(--ink);font-size:8px;white-space:nowrap;text-overflow:ellipsis}.month-day>div>span b{font-size:7px}.month-day>div>small{padding-left:6px;color:var(--muted);font-size:8px}
.agenda-list{padding:18px}.agenda-list>header{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid var(--line)}.agenda-list>header h3{margin:3px 0 0;font-size:18px}.agenda-list>header>strong{border-radius:999px;background:var(--mint);padding:7px 10px;color:var(--forest);font-size:9px}.agenda-list>button{display:grid;width:100%;grid-template-columns:44px 4px minmax(0,1fr) auto 18px;align-items:center;gap:12px;border:0;border-bottom:1px solid #edf0ed;background:#fff;padding:12px 4px;text-align:left;cursor:pointer}.agenda-list>button:hover{background:#f7faf8}.agenda-list time{display:grid;text-align:center}.agenda-list time b{font-size:16px}.agenda-list time span{color:var(--muted);font-size:8px;text-transform:uppercase}.agenda-list>button>i{width:4px;height:34px;border-radius:4px;background:var(--item-color)}.agenda-list>button>div strong,.agenda-list>button>div small{display:block}.agenda-list>button>div strong{font-size:11px}.agenda-list>button>div small{margin-top:3px;color:var(--muted);font-size:8px}.agenda-list-repeat{color:var(--teal);font-size:8px}.agenda-list>button>em{color:#91a09b;font-size:18px;font-style:normal}.agenda-list-empty{display:grid;place-items:center;gap:5px;padding:70px 20px;text-align:center}.agenda-list-empty>span{font-size:28px;color:var(--teal)}.agenda-list-empty strong{font-size:13px}.agenda-list-empty small{color:var(--muted);font-size:9px}
.agenda-editor{scrollbar-width:thin;scrollbar-color:#b8cac4 transparent}.agenda-editor::-webkit-scrollbar{width:6px}.agenda-editor::-webkit-scrollbar-track{background:transparent}.agenda-editor::-webkit-scrollbar-thumb{border-radius:999px;background:#b8cac4}.agenda-editor-form .editor-two:has(input[type="datetime-local"]){grid-template-columns:1fr}.agenda-editor-form input[type="datetime-local"]{min-width:0}
.repeat-end{display:flex;flex-direction:column;gap:7px;padding:10px;border:1px solid #dfe8e4;border-radius:11px;background:#f7faf8}.repeat-end[hidden]{display:none}.repeat-end-head{display:grid;gap:2px;padding:0 2px 4px}.repeat-end-head span{font-size:9px;font-weight:750}.repeat-end-head small{color:var(--muted);font-size:7px}.repeat-end-option{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:8px!important;border:1px solid #e2e8e5;border-radius:9px;background:#fff;padding:9px!important;cursor:pointer}.repeat-end-option:has(input:checked){border-color:#8fb9ac;background:#f0f7f4}.repeat-end-option>input{width:auto!important;margin-top:2px;accent-color:var(--teal)}.repeat-end-option>span{display:grid;gap:2px}.repeat-end-option strong{font-size:8px}.repeat-end-option small{color:var(--muted);font-size:7px;font-weight:400;line-height:1.35}.repeat-end-control{padding:2px 4px 5px 28px}.repeat-end-control[hidden]{display:none}.repeat-end-control label{display:grid;gap:5px;font-size:8px;font-weight:700}.repeat-end-control input{min-height:38px}
@media(max-width:1180px){.agenda-navigation{min-width:0}.agenda-navigation strong{min-width:170px}}
@media(max-width:760px){.view:has(.agenda-workspace) .agenda-toolbar{top:60px;margin:0;padding:7px;background:rgba(247,248,245,.98)}.agenda-week-view .week-calendar-scroll,.agenda-day-view .week-calendar-scroll{height:calc(100dvh - 205px);min-height:430px}.agenda-week-view .all-day-row,.agenda-day-view .all-day-row{top:36px}.agenda-toolbar [data-agenda-views] button:last-child{display:block}.agenda-navigation strong{min-width:0;flex:1}.month-calendar{padding:6px;overflow-x:auto}.month-weekdays,.month-grid{min-width:680px}.agenda-list{padding:12px}.agenda-list>button{grid-template-columns:38px 3px minmax(0,1fr) 14px;gap:8px}.agenda-list-repeat{display:none}.agenda-editor{padding-bottom:calc(24px + env(safe-area-inset-bottom))}}

/* Agenda de alta densidad: precisión de 10 min y referencias visuales cada 50 min. */
.agenda-workspace{grid-template-columns:minmax(0,1fr) minmax(320px,32%)}
.main-area:has(.agenda-workspace){overflow-x:hidden}
.agenda-week-view .week-calendar-scroll,.agenda-day-view .week-calendar-scroll{height:clamp(560px,calc(100dvh - 235px),760px)}
.time-column,.slot-grid{grid-template-rows:repeat(82,11px)}
.time-column span{height:11px;padding:0 7px 0 0;border-top-color:transparent;line-height:11px;transform:translateY(-5px)}
.time-column span:not(:empty){color:#687873;font-size:8px;font-weight:650}
.agenda-slot{border-top-color:#f5f6f5}
.agenda-slot.major-slot{border-top-color:#dfe5e2}
.calendar-item{min-height:20px}
@media(max-width:1180px){.agenda-workspace{grid-template-columns:minmax(0,1fr) 320px}}
@media(max-width:1400px){.agenda-toolbar{align-items:flex-start;flex-wrap:wrap}.agenda-filters{order:3;width:100%;overflow-x:auto}}
@media(max-width:980px){.agenda-workspace{grid-template-columns:1fr}}
@media(max-width:760px){.agenda-workspace{grid-template-columns:1fr}.time-column,.slot-grid{grid-template-rows:repeat(82,10px)}.agenda-week-view .week-calendar-scroll,.agenda-day-view .week-calendar-scroll{height:calc(100dvh - 205px)}}

/* Semana completa y tipografía legible en pantallas de escritorio. */
@media(min-width:761px){
  .agenda-workspace:has(.agenda-editor-empty){grid-template-columns:minmax(0,1fr)}
  .agenda-workspace:has(.agenda-editor-empty) .agenda-editor-empty{display:none}
  .agenda-week-view .week-day{padding:9px 4px}
  .agenda-week-view .week-day small{font-size:9px;font-weight:700}
  .agenda-week-view .week-day strong{font-size:18px}
  .agenda-week-view .time-column span:not(:empty){font-size:9px}
  .agenda-week-view .calendar-item{padding:5px 5px}
  .agenda-week-view .calendar-item strong{font-size:9px;line-height:1.15}
  .agenda-week-view .calendar-item span{font-size:10.5px;line-height:1.15}
  .agenda-week-view .calendar-item small{font-size:8px;line-height:1.15}
  .view:has(.agenda-workspace) .agenda-rule-strip span{font-size:10px}
  .view:has(.agenda-workspace) .agenda-navigation strong{font-size:13px}
  .view:has(.agenda-workspace) .agenda-filters .field{font-size:11px}
}
