/* Dashboard editorial: agenda semanal, entregas y avance de proyectos. */

.editorial-page { background: var(--color-background); color: var(--color-text); font-family: Georgia, "Times New Roman", serif; }
.editorial-app { min-height: 100vh; --ed-paper: var(--color-background); --ed-surface: var(--color-surface); --ed-ink: var(--color-text); --ed-text: var(--color-text-soft); --ed-muted: var(--color-text-muted); --ed-rule: var(--color-border); --ed-rule-strong: var(--color-border-strong); --ed-accent: var(--color-primary); --ed-accent-dark: var(--color-primary-dark); --ed-profile: var(--color-primary-dark); background: var(--ed-paper); color: var(--ed-ink); }
.editorial-nav { display: grid; grid-template-columns: 1fr auto 1fr; min-height: 5rem; align-items: stretch; border-bottom: 1px solid var(--ed-rule-strong); background: var(--ed-surface); }
.editorial-brand { display: flex; align-items: center; padding: 0 clamp(1.25rem, 4vw, 4rem); font-size: clamp(1.6rem, 3vw, 2.3rem); letter-spacing: -0.07em; }
.editorial-nav nav { display: flex; align-items: stretch; gap: clamp(1.25rem, 3vw, 3.25rem); }
.editorial-nav__link { display: flex; position: relative; align-items: center; padding: 0 0.1rem; color: var(--ed-text); font-size: 1rem; }
.editorial-nav__link:hover, .editorial-nav__link:focus-visible, .editorial-nav__link--active { color: var(--ed-accent); }
.editorial-nav__link--active::after { position: absolute; right: 0; bottom: -1px; left: 0; height: 3px; background: var(--ed-accent); content: ""; }
.editorial-profile { display: grid; width: 2.3rem; height: 2.3rem; align-self: center; justify-self: end; margin-right: clamp(1.25rem, 4vw, 4rem); place-items: center; border: 1px solid var(--ed-rule-strong); border-radius: 50%; color: var(--ed-profile); font-family: Inter, ui-sans-serif, sans-serif; font-size: 0.75rem; font-weight: 700; }
.weekly-planner { width: min(100% - 2.5rem, 87rem); margin: 0 auto; padding: clamp(2.5rem, 6vw, 5rem) 0 1.5rem; }
.weekly-planner__header { display: flex; align-items: end; justify-content: space-between; gap: 2rem; padding-bottom: 2.3rem; }
.planner-kicker, .planner-date, .agenda-entry p, .agenda-day--quiet p, .delivery-list p, .editorial-project p, .editorial-footer { color: var(--ed-muted); }
.planner-kicker { margin-bottom: 0.85rem; font-family: Inter, ui-sans-serif, sans-serif; font-size: 0.72rem; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; }
.weekly-planner h1 { margin: 0; font-size: clamp(4rem, 8vw, 7rem); font-weight: 400; line-height: 0.85; letter-spacing: -0.08em; }
.planner-date { margin: 1.2rem 0 0; padding-top: 0.7rem; border-top: 2px solid var(--ed-accent); color: var(--ed-accent-dark); font-family: Inter, ui-sans-serif, sans-serif; font-size: 0.75rem; font-weight: 750; letter-spacing: 0.12em; text-transform: uppercase; }
.editorial-action { display: inline-flex; gap: 0.8rem; padding: 0.75rem 0; border-bottom: 1px solid var(--ed-accent-dark); color: var(--ed-accent-dark); font-family: Inter, ui-sans-serif, sans-serif; font-size: 0.83rem; font-weight: 750; }
.editorial-summary { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0 0 clamp(2.5rem, 5vw, 4rem); border-top: 1px solid var(--ed-rule-strong); border-bottom: 1px solid var(--ed-rule-strong); }
.editorial-summary article { min-width: 0; padding: 1.1rem clamp(0.75rem, 1.7vw, 1.5rem); border-right: 1px solid var(--ed-rule); }
.editorial-summary article:last-child { border-right: 0; }
.editorial-summary p { margin: 0 0 0.3rem; color: var(--ed-muted); font-family: Inter, ui-sans-serif, sans-serif; font-size: 0.68rem; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; }
.editorial-summary strong { color: var(--ed-accent); font-size: clamp(1.65rem, 3vw, 2.35rem); font-weight: 400; line-height: 1; }
.planner-layout { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(20rem, 0.9fr); gap: clamp(2.5rem, 6vw, 5.5rem); }
.agenda-day { display: grid; grid-template-columns: 7.3rem minmax(0, 1fr); min-height: 8.4rem; border-top: 1px solid var(--ed-rule); }
.agenda-day__date { padding: 1.25rem 1rem 1rem 0; color: var(--ed-text); }
.agenda-day__date span { display: block; font-family: Inter, ui-sans-serif, sans-serif; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.agenda-day__date strong { display: block; margin-top: 0.15rem; color: var(--ed-accent); font-size: 2rem; font-weight: 400; line-height: 1; }
.agenda-day__items { position: relative; padding: 1.1rem 0 1.1rem 2.2rem; border-left: 1px solid var(--ed-rule-strong); }
.agenda-day__items::before { position: absolute; top: 1.45rem; left: -0.32rem; width: 0.55rem; height: 0.55rem; border-radius: 50%; background: var(--ed-accent); content: ""; }
.agenda-entry { display: grid; grid-template-columns: 4rem minmax(0, 1fr); gap: 1rem; padding: 0.25rem 0 1rem; }
.agenda-entry + .agenda-entry { padding-top: 0.5rem; }
.agenda-entry time, .delivery-list time { color: var(--ed-accent); font-family: Inter, ui-sans-serif, sans-serif; font-size: 0.77rem; font-weight: 700; }
.agenda-entry h3, .delivery-list h3, .editorial-project h3 { margin: 0; font-size: 1.12rem; font-weight: 400; }
.agenda-entry p, .delivery-list p, .editorial-project p { margin: 0.18rem 0 0; font-size: 0.92rem; font-style: italic; }
.agenda-day--quiet { min-height: 5.6rem; border-bottom: 1px solid var(--ed-rule); }
.agenda-day--quiet .agenda-day__items { display: flex; align-items: center; }
.agenda-day--quiet p { margin: 0; font-size: 0.95rem; font-style: italic; }
.planner-aside { padding-left: clamp(1.5rem, 4vw, 3.2rem); border-left: 1px solid var(--ed-rule-strong); }
.planner-aside__section + .planner-aside__section { margin-top: 3.4rem; }
.planner-aside h2 { margin: 0 0 1rem; padding-bottom: 0.8rem; border-bottom: 2px solid var(--ed-accent); font-size: clamp(1.7rem, 3vw, 2.15rem); font-weight: 400; letter-spacing: -0.04em; }
.delivery-list { margin: 0; padding: 0; list-style: none; }
.delivery-list li { display: grid; grid-template-columns: 4.7rem minmax(0, 1fr); gap: 0.8rem; padding: 1.25rem 0; border-bottom: 1px solid var(--ed-rule); }
.editorial-project { padding: 1.15rem 0 1.35rem; border-bottom: 1px solid var(--ed-rule); }
.editorial-project header, .editorial-project p { display: flex; justify-content: space-between; gap: 1rem; }
.editorial-project strong { color: var(--ed-accent); font-size: 1.15rem; font-weight: 400; }
.editorial-progress { height: 0.75rem; margin: 0.9rem 0; background: color-mix(in srgb, var(--ed-rule) 82%, transparent); }
.editorial-progress__bar { display: block; height: 100%; background: var(--ed-accent); }
.editorial-progress__bar--68 { width: 68%; }
.editorial-progress__bar--42 { width: 42%; }
.editorial-project p { font-size: 0.76rem; }
.editorial-footer { display: flex; justify-content: space-between; gap: 1rem; margin-top: 3rem; padding-top: 1rem; border-top: 1px solid var(--ed-rule); font-family: Inter, ui-sans-serif, sans-serif; font-size: 0.75rem; }
.editorial-footer p { margin: 0; }
.editorial-footer a { color: var(--ed-accent-dark); }

@media (max-width: 52rem) {
  .editorial-nav { grid-template-columns: 1fr auto; }
  .editorial-nav nav { grid-column: 1 / -1; grid-row: 2; overflow-x: auto; justify-content: flex-start; padding: 0 1.25rem; }
  .editorial-nav__link { min-height: 3.1rem; flex: 0 0 auto; }
  .editorial-profile { margin-right: 1.25rem; }
  .weekly-planner { width: min(100% - 2rem, 87rem); padding-top: 2.8rem; }
  .weekly-planner__header { align-items: flex-start; flex-direction: column; }
  .editorial-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .editorial-summary article:nth-child(3) { border-right: 0; }
  .planner-layout { grid-template-columns: 1fr; }
  .planner-aside { padding-top: 2.2rem; padding-left: 0; border-top: 1px solid var(--ed-rule-strong); border-left: 0; }
}

@media (max-width: 31rem) {
  .editorial-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .editorial-summary article:nth-child(3) { border-right: 1px solid var(--ed-rule); }
  .editorial-summary article:nth-child(even) { border-right: 0; }
  .weekly-planner h1 { font-size: 3.7rem; }
  .agenda-day { grid-template-columns: 4.1rem minmax(0, 1fr); }
  .agenda-day__items { padding-left: 1.25rem; }
  .agenda-entry { grid-template-columns: 1fr; gap: 0.25rem; }
  .agenda-entry h3 { font-size: 1rem; }
  .editorial-project header, .editorial-project p, .editorial-footer { align-items: flex-start; flex-direction: column; }
}
