/* coordinacion.css — Rewrite Fase 2
   Tokens: --lk-* con fallback legacy + hardcoded
   Borders: 0.5px uniforme
   Status colors (hardcoded): ok=#16a34a warn=#d97706 danger=#dc2626 blue=#2563eb
   Brand alpha: rgba(109,40,217,.XX) */

/* ══ Layout ══ */
.coord-wrap{display:flex;flex-direction:column;height:100%;overflow:hidden;--lk-bg-body:#f1f5f9;--lk-bg-card:#fff;--lk-text-primary:#1e293b;--lk-text-secondary:#64748b;--lk-border-soft:#e2e8f0;--lk-brand:#6d28d9;--lk-radius-md:8px}

/* ══ Topbar ══ */
.coord-topbar{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));background:var(--lk-bg-card,var(--bg-card,#fff));flex-shrink:0;min-height:48px}
.coord-topbar-left{flex-shrink:0}
.coord-topbar-center{display:flex;align-items:center;gap:2px;margin:0 auto}
.coord-topbar-right{flex-shrink:0;display:flex;align-items:center;gap:8px}
.coord-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.coord-title svg{color:var(--lk-brand,var(--c-brand,#6d28d9))}

/* ══ View toggles ══ */
.coord-view-btn{width:140px;height:32px;border:none;border-radius:var(--lk-radius-md,var(--radius-md,6px));background:transparent;color:var(--lk-text-secondary,var(--tx-muted,#64748b));font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,color .15s}
.coord-view-btn:hover{background:rgba(109,40,217,.04)}
.coord-view-btn.--active{background:rgba(109,40,217,.08);color:var(--lk-brand,var(--c-brand,#6d28d9));font-weight:600}

/* ══ Period toggles ══ */
.coord-periods{display:flex;gap:2px}
.coord-period-btn{height:30px;padding:0 14px;border:none;border-radius:var(--lk-radius-md,var(--radius-md,6px));background:transparent;color:var(--lk-text-secondary,var(--tx-muted,#64748b));font-size:12px;font-weight:500;cursor:pointer;transition:background .15s,color .15s}
.coord-period-btn:hover{background:rgba(109,40,217,.04)}
.coord-period-btn.--active{background:rgba(109,40,217,.08);color:var(--lk-brand,var(--c-brand,#6d28d9));font-weight:600}

/* ══ Month nav ══ */
.coord-month-nav{display:flex;align-items:center;gap:8px}
.coord-month-arrow{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:var(--lk-radius-md,var(--radius-md,6px));background:transparent;color:var(--lk-text-secondary,var(--tx-muted,#64748b));cursor:pointer;transition:background .15s}
.coord-month-arrow:hover{background:rgba(109,40,217,.06)}
.coord-month-label{font-size:13px;font-weight:600;color:var(--lk-text-primary,var(--tx-primary,#1e293b));min-width:110px;text-align:center}

/* ══ Action buttons ══ */
.coord-action-btn{display:flex;align-items:center;gap:6px;height:32px;padding:0 14px;border:none;border-radius:var(--lk-radius-md,var(--radius-md,6px));background:var(--lk-brand,var(--c-brand,#6d28d9));color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:opacity .15s}
.coord-action-btn:hover{opacity:.9}
.coord-action-btn--outline{background:transparent;color:var(--lk-brand,var(--c-brand,#6d28d9));border:0.5px solid var(--lk-brand,var(--c-brand,#6d28d9))}
.coord-action-btn--danger{background:#dc2626}

/* ══ Summary bar ══ */
.coord-summary{display:flex;align-items:center;gap:24px;padding:8px 16px;background:rgba(109,40,217,.04);flex-shrink:0;min-height:36px}
.coord-stat{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--lk-text-secondary,var(--tx-muted,#64748b))}
.coord-stat b{color:var(--lk-text-primary,var(--tx-primary,#1e293b));font-weight:600}
.coord-stat svg{flex-shrink:0}
.coord-stat--ok svg,.coord-stat--ok b{color:#16a34a}
.coord-stat--warn svg,.coord-stat--warn b{color:#d97706}
.coord-stat--danger svg,.coord-stat--danger b{color:#dc2626}

/* ══ Content ══ */
.coord-content{flex:1;overflow-y:auto;padding:0;background:var(--lk-bg-body,#f1f5f9)}
.coord-loading,.coord-empty{display:flex;align-items:center;justify-content:center;height:120px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));font-size:13px}

/* ══ Table ══ */
.coord-table{width:100%;border-collapse:collapse}
.coord-table thead th{position:sticky;top:0;z-index:2;padding:8px 12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--lk-text-secondary,var(--tx-muted,#64748b));background:var(--lk-bg-body,var(--bg-body,#f1f5f9));border-bottom:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));text-align:left;white-space:nowrap}
.coord-row{border-bottom:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));cursor:pointer;transition:background .12s}
.coord-row:hover{background:rgba(109,40,217,.03)}
tr.coord-row.coord-row--sel{background:rgba(109,40,217,.06)}
tr.coord-row.coord-row--sel:hover{background:rgba(109,40,217,.08)}
.coord-row--blocked{background:rgba(220,38,38,.03)}
.coord-row--blocked:hover{background:rgba(220,38,38,.06)}
.coord-table td{padding:10px 12px;font-size:13px;color:var(--lk-text-primary,var(--tx-primary,#1e293b));vertical-align:middle;white-space:nowrap}
.coord-th--prof{min-width:220px}
.coord-td--prof{display:flex;align-items:center;gap:10px}

/* ══ Avatar ══ */
.coord-avatar{position:relative;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;flex-shrink:0}
.coord-avatar img{width:34px;height:34px;border-radius:50%;object-fit:cover}
.coord-avatar-letter{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#fff}
.coord-avatar--ok .coord-avatar-letter{background:#16a34a}
.coord-avatar--warn .coord-avatar-letter{background:#d97706}
.coord-avatar--danger .coord-avatar-letter{background:#dc2626}
.coord-avatar--ok img{box-shadow:0 0 0 2px #16a34a}
.coord-avatar--warn img{box-shadow:0 0 0 2px #d97706}
.coord-avatar--danger img{box-shadow:0 0 0 2px #dc2626}
.coord-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}
.coord-dot--on{background:#16a34a;animation:coord-pulse 2s ease-in-out infinite}
.coord-dot--avatar{position:absolute;bottom:0;right:0;width:10px;height:10px;border:2px solid var(--lk-bg-card,var(--bg-card,#fff))}
@keyframes coord-pulse{0%,100%{opacity:1}50%{opacity:.5}}

/* ══ Prof info ══ */
.coord-prof-info{display:flex;flex-direction:column;gap:1px;min-width:0}
.coord-prof-name{font-size:13px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b));overflow:hidden;text-overflow:ellipsis}
.coord-prof-spec{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));overflow:hidden;text-overflow:ellipsis}

/* ══ Chips ══ */
.coord-chip{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:22px;padding:0 8px;border-radius:11px;font-size:12px;font-weight:600}
.coord-chip--ok{background:rgba(22,163,106,.1);color:#16a34a}
.coord-chip--warn{background:rgba(217,119,6,.1);color:#d97706}
.coord-chip--danger{background:rgba(220,38,38,.1);color:#dc2626}
.coord-chip--muted{background:var(--lk-bg-body,var(--bg-body,#f1f5f9));color:var(--lk-text-secondary,var(--tx-muted,#64748b))}
.coord-conn{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#64748b))}
.coord-conn--on{color:#16a34a;font-weight:500}
.coord-conn--off{color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}

/* ══════════════════════════════════════════
   Performance blade
   ══════════════════════════════════════════ */
.coord-perf{padding:20px 24px;max-width:960px}

/* Hero */
.coord-perf-hero{display:flex;align-items:center;gap:16px;padding:16px 0;border-bottom:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));margin-bottom:20px}
.coord-perf-avatar{width:56px;height:56px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--lk-bg-body,var(--bg-body,#f1f5f9))}
.coord-perf-avatar img{width:56px;height:56px;object-fit:cover}
.coord-perf-initial{width:56px;height:56px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;color:#fff;background:var(--lk-brand,var(--c-brand,#6d28d9));border-radius:50%}
.coord-perf-info{flex:1;min-width:0}
.coord-perf-name{font-size:18px;font-weight:600;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.coord-perf-meta{font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-top:2px}
.coord-perf-badges{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}
.coord-perf-score{text-align:center;flex-shrink:0;padding:8px 16px;border-radius:var(--lk-radius-md,var(--radius-md,6px))}
.coord-perf-score--ok{background:rgba(22,163,106,.08)}
.coord-perf-score--warn{background:rgba(217,119,6,.08)}
.coord-perf-score--danger{background:rgba(220,38,38,.08)}
.coord-perf-score-num{font-size:28px;font-weight:700;line-height:1}
.coord-perf-score--ok .coord-perf-score-num{color:#16a34a}
.coord-perf-score--warn .coord-perf-score-num{color:#d97706}
.coord-perf-score--danger .coord-perf-score-num{color:#dc2626}
.coord-perf-score-label{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#64748b))}

/* Sections */
.coord-perf-section{font-size:13px;font-weight:600;color:var(--lk-text-primary,var(--tx-primary,#1e293b));margin:20px 0 10px;padding-bottom:6px;border-bottom:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0))}
.coord-perf-sub{font-weight:400;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-left:8px}

/* KPI grid */
.coord-kpi-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.coord-kpi-grid--3{grid-template-columns:repeat(3,1fr)}
.coord-kpi-grid--5{grid-template-columns:repeat(5,1fr)}
.coord-kpi{background:var(--lk-bg-card,var(--bg-card,#fff));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:var(--lk-radius-md,var(--radius-md,6px));padding:12px;text-align:center}
.coord-kpi-val{font-size:22px;font-weight:700;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.coord-kpi-label{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-top:2px}
.coord-delta{font-size:11px;font-weight:500;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.coord-delta--up{color:#16a34a}
.coord-delta--down{color:#dc2626}

/* OKR */
.coord-okr{background:var(--lk-bg-card,var(--bg-card,#fff));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:var(--lk-radius-md,var(--radius-md,6px));padding:12px}
.coord-okr-title{font-size:11px;font-weight:600;color:var(--lk-text-secondary,var(--tx-muted,#64748b));text-transform:uppercase;letter-spacing:.03em}
.coord-okr-val{font-size:18px;font-weight:700;color:var(--lk-text-primary,var(--tx-primary,#1e293b));margin:4px 0}
.coord-okr-meta{font-size:11px;font-weight:400;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}

/* Progress bar */
.coord-pbar{height:6px;background:var(--lk-bg-body,var(--bg-body,#f1f5f9));border-radius:3px;overflow:hidden;margin-top:6px}
.coord-pbar-fill{height:100%;border-radius:3px;transition:width .3s}
.coord-pbar--ok{background:#16a34a}
.coord-pbar--warn{background:#d97706}
.coord-pbar--danger{background:#dc2626}
.coord-pbar--brand{background:var(--lk-brand,var(--c-brand,#6d28d9))}

/* Likert */
.coord-likert{background:var(--lk-bg-card,var(--bg-card,#fff));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:var(--lk-radius-md,var(--radius-md,6px));padding:10px;text-align:center}
.coord-likert-val{font-size:20px;font-weight:700}
.coord-likert--ok{color:#16a34a}
.coord-likert--warn{color:#d97706}
.coord-likert--danger{color:#dc2626}
.coord-likert-label{font-size:10px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-top:2px;text-transform:uppercase;letter-spacing:.03em}

/* Pendientes */
.coord-pend-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.coord-pend-col{min-width:0}
.coord-pend-title{font-size:12px;font-weight:600;color:var(--lk-text-primary,var(--tx-primary,#1e293b));margin-bottom:8px}
.coord-pend-item{display:flex;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0))}
.coord-pend-name{font-size:12px;color:var(--lk-text-primary,var(--tx-primary,#1e293b));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;margin-right:8px}
.coord-pend-empty{font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));padding:8px 0}

/* Footer */
.coord-perf-footer{display:flex;gap:10px;margin-top:24px;padding-top:16px;border-top:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0))}

/* ══════════════════════════════════════════
   Gestion panel
   ══════════════════════════════════════════ */
.coord-gest{padding:16px}
.coord-gest-title{font-size:15px;font-weight:600;color:var(--lk-text-primary,var(--tx-primary,#1e293b));margin-bottom:16px}
.coord-gest-group{margin-bottom:12px}
.coord-gest-group-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-bottom:8px}
.coord-gest-group-label--danger{color:#dc2626}
.coord-gest-separator{height:0.5px;background:var(--lk-border-soft,var(--border-soft,#e2e8f0));margin:16px 0}
.coord-gest-btn{display:flex;align-items:flex-start;gap:12px;width:100%;padding:12px;border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:var(--lk-radius-md,var(--radius-md,6px));background:var(--lk-bg-card,var(--bg-card,#fff));cursor:pointer;text-align:left;transition:background .12s;margin-bottom:6px}
.coord-gest-btn:hover{background:rgba(109,40,217,.03)}
.coord-gest-btn--warn{border-color:rgba(217,119,6,.3)}
.coord-gest-btn--warn:hover{background:rgba(217,119,6,.04)}
.coord-gest-btn--danger{border-color:rgba(220,38,38,.3)}
.coord-gest-btn--danger:hover{background:rgba(220,38,38,.04)}
.coord-gest-icon{font-size:18px;flex-shrink:0;width:24px;text-align:center;margin-top:2px}
.coord-gest-btn-info{flex:1;min-width:0}
.coord-gest-btn-title{font-size:13px;font-weight:600;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.coord-gest-btn-desc{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-top:2px;display:block}

/* ══ Modal form ══ */
.coord-modal-form{display:flex;flex-direction:column;gap:8px}
.coord-modal-form label{font-size:12px;font-weight:600;color:var(--lk-text-primary,var(--tx-primary,#1e293b));margin-top:4px}
.coord-modal-form select,.coord-modal-form input,.coord-modal-form textarea{padding:8px 10px;border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:var(--lk-radius-md,var(--radius-md,6px));font-size:13px;font-family:inherit;background:var(--lk-bg-card,var(--bg-card,#fff));color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.coord-modal-form textarea{resize:vertical}
.coord-modal-warn{font-size:11px;color:#dc2626;padding:8px;background:rgba(220,38,38,.05);border-radius:var(--lk-radius-md,var(--radius-md,6px));margin-top:8px}

/* ══════════════════════════════════════════
   Supervisiones (E3)
   ══════════════════════════════════════════ */
.csup-section{margin-bottom:20px}
.csup-section-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-bottom:10px}
.csup-card{background:var(--lk-bg-card,var(--bg-card,#fff));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:var(--lk-radius-md,var(--radius-md,8px));padding:14px 16px;margin-bottom:10px}
.csup-card--live{border-color:var(--lk-brand,var(--c-brand,#6d28d9))}
.csup-card-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.csup-card-date{font-size:13px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.csup-card-meta{font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#64748b))}
.csup-card-tema{font-size:13px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-bottom:8px}
.csup-card-actions{display:flex;gap:8px;margin-top:10px}
.csup-rsvp{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.csup-rsvp-item{display:inline-flex;align-items:center;gap:4px;font-size:12px;padding:2px 8px;border-radius:99px;background:var(--lk-bg-body,var(--bg-body,#f1f5f9));color:var(--lk-text-secondary,var(--tx-muted,#64748b))}
.csup-rsvp-ok{color:#16a34a}
.csup-rsvp-pend{color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.csup-chips{display:flex;flex-wrap:wrap;gap:6px}
.csup-chip{padding:5px 12px;border-radius:99px;border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));background:var(--lk-bg-card,var(--bg-card,#fff));font-size:12px;cursor:pointer;color:var(--lk-text-secondary,var(--tx-muted,#64748b));transition:all .15s}
.csup-chip:hover{border-color:var(--lk-brand,var(--c-brand,#6d28d9))}
.csup-chip--sel{background:rgba(109,40,217,.08);border-color:var(--lk-brand,var(--c-brand,#6d28d9));color:var(--lk-brand,var(--c-brand,#6d28d9));font-weight:500}
.csup-hist{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--lk-radius-md,var(--radius-md,8px));cursor:pointer;transition:background .15s}
.csup-hist:hover{background:var(--lk-bg-body,var(--bg-body,#f1f5f9))}
.csup-hist-date{font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));min-width:110px}
.csup-hist-tema{font-size:13px;color:var(--lk-text-primary,var(--tx-primary,#1e293b));flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.csup-hist-dots{display:flex;gap:3px}
.csup-hist-ratio{font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));min-width:32px;text-align:right}

/* ══════════════════════════════════════════
   Sesion en vivo (E3)
   ══════════════════════════════════════════ */
.cses-live{margin-top:10px}
.cses-bar{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--lk-bg-body,var(--bg-body,#f1f5f9));border-radius:var(--lk-radius-md,var(--radius-md,8px));margin-bottom:12px}
.cses-timer{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.cses-timer--warn{color:#d97706}
.cses-timer--over{color:#dc2626;animation:cses-blink 1.5s ease-in-out infinite}
@keyframes cses-blink{0%,100%{opacity:1}50%{opacity:.4}}
.cses-dur{font-size:13px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.cses-counts{display:flex;gap:10px;margin-left:auto}
.cses-count{font-size:12px}
.cses-count--green{color:#16a34a}
.cses-count--red{color:#dc2626}
.cses-count--amber{color:#d97706}
.cses-list{display:flex;flex-direction:column;gap:4px}
.cses-prof{display:flex;align-items:center;gap:10px;padding:6px 12px;border-radius:var(--lk-radius-md,var(--radius-md,8px));background:var(--lk-bg-card,var(--bg-card,#fff));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0))}
.cses-prof-name{font-size:13px;color:var(--lk-text-primary,var(--tx-primary,#1e293b));flex:1}
.cses-prof-btns{display:flex;gap:4px}
.cses-btn{width:30px;height:30px;border-radius:6px;border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));background:var(--lk-bg-card,var(--bg-card,#fff));cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.cses-btn:hover{background:var(--lk-bg-body,var(--bg-body,#f1f5f9))}
.cses-btn--green.cses-btn--active{background:#dcfce7;border-color:#16a34a;color:#16a34a}
.cses-btn--red.cses-btn--active{background:#fef2f2;border-color:#dc2626;color:#dc2626}
.cses-btn--amber.cses-btn--active{background:#fffbeb;border-color:#d97706;color:#d97706}
.cses-nota{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));padding:2px 12px 0 42px}
.cses-actions{margin-top:14px;display:flex;gap:8px}

/* ══════════════════════════════════════════
   Acta (E3)
   ══════════════════════════════════════════ */
.cacta-body{font-size:13px;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.cacta-section{margin-bottom:20px}
.cacta-section-title{font-size:12px;font-weight:600;color:var(--lk-text-secondary,var(--tx-muted,#64748b));text-transform:uppercase;letter-spacing:.03em;padding-bottom:6px;border-bottom:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));margin-bottom:10px}
.cacta-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.cacta-meta-item{display:flex;flex-direction:column;gap:2px}
.cacta-meta-label{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.cacta-meta-val{font-size:13px;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.cacta-asist-list{display:flex;flex-direction:column;gap:4px}
.cacta-asist-row{display:flex;align-items:center;gap:6px;font-size:13px;padding:3px 0}
.cacta-asist-icon{display:inline-flex}
.cacta-asist--green{color:#16a34a}
.cacta-asist--red{color:#dc2626}
.cacta-asist--amber{color:#d97706}
.cacta-asist--muted{color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.cacta-asist-nota{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));margin-left:auto}
.cacta-input{width:100%;padding:6px 10px;border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:6px;font-size:13px;background:var(--lk-bg-card,var(--bg-card,#fff));color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.cacta-input:disabled{background:var(--lk-bg-body,var(--bg-body,#f1f5f9));color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));cursor:default}
.cacta-tema{background:var(--lk-bg-body,var(--bg-body,#f1f5f9));border-radius:var(--lk-radius-md,var(--radius-md,8px));padding:12px 14px;margin-bottom:10px}
.cacta-tema-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.cacta-tema-num{width:24px;height:24px;border-radius:50%;background:var(--lk-brand,var(--c-brand,#6d28d9));color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cacta-tema-titulo{flex:1;font-weight:500}
.cacta-tema-del{width:28px;height:28px;border:none;background:none;cursor:pointer;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));border-radius:6px;display:flex;align-items:center;justify-content:center}
.cacta-tema-del:hover{background:#fef2f2;color:#dc2626}
.cacta-tema-field{margin-bottom:10px}
.cacta-tema-field label{font-size:11px;font-weight:600;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));display:block;margin-bottom:4px}
.cacta-tareas{display:flex;flex-direction:column;gap:6px}
.cacta-tarea{display:flex;gap:8px}
.cacta-tarea input{flex:1}
.cacta-tarea select{width:160px;padding:6px 8px;border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:6px;font-size:12px;background:var(--lk-bg-card,var(--bg-card,#fff))}
.cacta-add-tarea,.cacta-add-tema{display:flex;align-items:center;gap:4px;padding:6px 12px;border:0.5px dashed var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:6px;background:none;font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));cursor:pointer;width:100%;justify-content:center;transition:all .15s}
.cacta-add-tarea:hover,.cacta-add-tema:hover{border-color:var(--lk-brand,var(--c-brand,#6d28d9));color:var(--lk-brand,var(--c-brand,#6d28d9))}
.cacta-add-tema{margin-top:8px}
.cacta-save-ind{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));margin-left:8px;font-weight:400}
.cacta-firma{padding:14px;border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:var(--lk-radius-md,var(--radius-md,8px));background:rgba(109,40,217,.03)}
.cacta-firma-legal{font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));display:flex;align-items:center;gap:6px;margin-bottom:10px}
.cacta-firma-btn{width:100%}
.cacta-firma--signed{background:rgba(22,163,74,.04);border-color:rgba(22,163,74,.2)}
.cacta-firma-detail{font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-bottom:10px}
.cacta-firma-detail code{font-size:10px;word-break:break-all}
.cacta-firma-actions{display:flex;gap:8px}

/* ══════════════════════════════════════════
   Richtext editor (E3)
   ══════════════════════════════════════════ */
.crt-wrap{border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:6px;overflow:hidden;background:var(--lk-bg-card,var(--bg-card,#fff))}
.crt-toolbar{display:flex;align-items:center;gap:2px;padding:4px 6px;border-bottom:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));background:var(--lk-bg-body,var(--bg-body,#f1f5f9))}
.crt-btn{width:28px;height:28px;border:none;background:none;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--lk-text-secondary,var(--tx-muted,#64748b));transition:all .12s}
.crt-btn:hover{background:rgba(0,0,0,.06);color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.crt-sep{width:1px;height:16px;background:var(--lk-border-soft,var(--border-soft,#e2e8f0));margin:0 4px}
.crt-editor{min-height:60px;padding:8px 10px;font-size:13px;color:var(--lk-text-primary,var(--tx-primary,#1e293b));outline:none;line-height:1.5}
.crt-editor:empty::before{content:attr(data-placeholder);color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));pointer-events:none}
.crt-editor ul,.crt-editor ol{margin:4px 0;padding-left:20px}
.crt-editor li{margin-bottom:2px}

/* ══════════════════════════════════════════
   Capacidad (E4)
   ══════════════════════════════════════════ */
.ccap-section{margin-bottom:20px;padding:16px 20px 0}
.ccap-section-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-bottom:10px}
.ccap-card{background:var(--lk-bg-card,var(--bg-card,#fff));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:var(--lk-radius-md,var(--radius-md,8px));padding:16px}
.ccap-indicator{margin-bottom:4px}
.ccap-ind-label{font-size:12px;font-weight:600;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-bottom:6px}
.ccap-ind-row{display:flex;align-items:baseline;gap:6px;margin-bottom:6px}
.ccap-ind-val{font-size:15px;font-weight:600;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.ccap-ind-of{font-size:13px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.ccap-ind-pct{font-size:14px;font-weight:700;margin-left:auto}
.ccap-ind-pct--green{color:#16a34a}
.ccap-ind-pct--amber{color:#d97706}
.ccap-ind-pct--red{color:#dc2626}
.ccap-ind-pct--blue{color:#2563eb}
.ccap-bar{height:8px;border-radius:4px;background:var(--lk-bg-body,var(--bg-body,#f1f5f9));overflow:hidden;margin-bottom:6px}
.ccap-bar-fill{height:100%;border-radius:4px;transition:width .4s ease}
.ccap-bar--green{background:#16a34a}
.ccap-bar--amber{background:#d97706}
.ccap-bar--red{background:#dc2626}
.ccap-bar--blue{background:#2563eb}
.ccap-bar--brand{background:var(--lk-brand,var(--c-brand,#6d28d9))}
.ccap-verdict{font-size:12px;padding:6px 10px;border-radius:6px;margin-top:4px}
.ccap-verdict--ok{background:rgba(22,163,74,.06);color:#16a34a}
.ccap-verdict--warn{background:rgba(217,119,6,.06);color:#d97706}
.ccap-verdict--danger{background:rgba(220,38,38,.06);color:#dc2626}

/* Profesionales */
.ccap-prof-list{display:flex;flex-direction:column;gap:6px}
.ccap-prof{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--lk-bg-card,var(--bg-card,#fff));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:var(--lk-radius-md,var(--radius-md,8px))}
.ccap-prof-av{width:32px;height:32px;border-radius:50%;background:var(--lk-brand,var(--c-brand,#6d28d9));color:#fff;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;position:relative}
.ccap-prof-info{flex:1;min-width:0}
.ccap-prof-name{font-size:13px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.ccap-prof-meta{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.ccap-prof-bar-wrap{width:100px;flex-shrink:0}
.ccap-prof-pct{font-size:13px;font-weight:700;width:40px;text-align:right;flex-shrink:0}

/* Recomendaciones */
.ccap-rec{display:flex;gap:12px;padding:14px;background:var(--lk-bg-card,var(--bg-card,#fff));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:var(--lk-radius-md,var(--radius-md,8px));margin-bottom:8px}
.ccap-rec-icon{color:var(--lk-brand,var(--c-brand,#6d28d9));flex-shrink:0;padding-top:2px}
.ccap-rec-body{flex:1}
.ccap-rec-title{font-size:13px;font-weight:600;color:var(--lk-text-primary,var(--tx-primary,#1e293b));margin-bottom:4px}
.ccap-rec-desc{font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-bottom:8px}
.ccap-rec-prof{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--lk-text-primary,var(--tx-primary,#1e293b));padding:4px 0}

/* Avance anual */
.ccap-anual-big{font-size:28px;font-weight:700;color:var(--lk-text-primary,var(--tx-primary,#1e293b));margin-bottom:8px}
.ccap-anual-meta{font-size:16px;font-weight:400;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.ccap-anual-meses{display:flex;justify-content:space-between;margin:6px 0 14px}
.ccap-mes{font-size:10px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.ccap-mes--actual{font-weight:700;color:var(--lk-brand,var(--c-brand,#6d28d9))}
.ccap-anual-panel{border-top:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));padding-top:12px}
.ccap-anual-row{display:flex;justify-content:space-between;font-size:13px;color:var(--lk-text-primary,var(--tx-primary,#1e293b));padding:3px 0}
.ccap-anual-verdict{font-size:13px;font-weight:600;padding:8px 10px;border-radius:6px;margin-top:8px;text-align:center}
.ccap-danger{color:#dc2626;font-weight:600}

/* ══════════════════════════════════════════
   Responsive
   ══════════════════════════════════════════ */
@media(max-width:768px){
  .coord-topbar{flex-wrap:wrap;gap:8px;padding:8px 12px}
  .coord-topbar-left{display:none}
  .coord-topbar-center{order:-1;width:100%;justify-content:center}
  .coord-topbar-right{width:100%;justify-content:center}
  .coord-view-btn{width:110px;height:36px;font-size:12px}
  .coord-summary{flex-wrap:wrap;gap:12px 20px;padding:8px 12px}
  .coord-content{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .coord-avatar,.coord-avatar img,.coord-avatar-letter{width:28px;height:28px}
  .coord-avatar-letter{font-size:12px}
  .coord-table td,.coord-table thead th{padding:8px;font-size:12px}
  .coord-kpi-grid{grid-template-columns:repeat(2,1fr)}
  .coord-kpi-grid--3{grid-template-columns:1fr}
  .coord-kpi-grid--5{grid-template-columns:repeat(2,1fr)}
  .coord-pend-grid{grid-template-columns:1fr}
  .coord-perf{padding:12px}
  .coord-perf-hero{flex-wrap:wrap}
  .coord-perf-footer{flex-direction:column}
}
@media(max-width:480px){
  .coord-view-btn{width:100px;min-height:44px}
  .coord-period-btn{min-height:44px}
  .coord-month-arrow{min-width:44px;min-height:44px}
  .coord-kpi-grid{grid-template-columns:1fr 1fr}
}


/* ══════════════════════════════════════════════════════════
   COORDINACION — Vista Resumen
   ══════════════════════════════════════════════════════════ */

/* ── Shell ── */
.coord-summary:empty{display:none}
.coord-topbar-left{flex:1}
.coord-topbar-right{flex:1;display:flex;justify-content:flex-end}
.coord-topbar-center{display:inline-flex;align-items:center;background:var(--bg-surface,#f8fafc);border:0.5px solid var(--border,#e2e8f0);border-radius:8px;padding:3px;gap:2px}
.coord-view-btn{display:inline-flex;align-items:center;gap:5px;padding:0 16px;height:28px;border-radius:6px;background:transparent;color:var(--tx-muted,#64748b);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;border:none;white-space:nowrap}
.coord-view-btn svg{flex-shrink:0;opacity:.6;transition:opacity .15s}
.coord-view-btn:hover{background:rgba(109,40,217,.04)}
.coord-view-btn.--active{background:var(--c-brand,#6d28d9);color:#fff}
.coord-view-btn.--active svg{opacity:1}

/* ── Blade fix ── */
.ld-blade{top:56px;height:calc(100vh - 56px - 32px)}

/* ── Layout ── */
.cres-wrap{padding:28px 20px 32px}
@keyframes cres-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.cres-anim{animation:cres-in .35s ease-out both;animation-delay:calc(var(--d,0) * .07s)}

/* ── Collapsible ── */
.cres-group{margin-bottom:32px}
.cres-section{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b));margin:0 0 10px;padding:0;border:none;cursor:pointer;user-select:none;transition:color .15s}
.cres-section:hover{color:var(--lk-brand,var(--c-brand,#6d28d9))}
.cres-chev{margin-left:auto;transition:transform .25s ease;flex-shrink:0;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.cres-body{overflow:hidden;max-height:5000px;opacity:1;transition:max-height .3s ease,opacity .2s ease}
.cres-group.--collapsed .cres-chev{transform:rotate(-90deg)}
.cres-group.--collapsed .cres-body{max-height:0;opacity:0;transition:max-height .25s ease,opacity .15s ease}
.cres-num{width:24px;height:24px;border-radius:50%;background:var(--lk-brand,var(--c-brand,#6d28d9));color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cres-badge{font-size:11px;font-weight:600;background:rgba(109,40,217,.08);color:var(--lk-brand,var(--c-brand,#6d28d9));padding:2px 10px;border-radius:99px;margin-left:4px}

/* ── Card ── */
.cres-card{background:var(--lk-bg-card,var(--bg-card,#fff));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:12px;padding:28px 32px;box-shadow:0 1px 4px rgba(0,0,0,.04)}
.cres-stitle{font-size:15px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b));margin-bottom:14px}
.cres-div{height:0.5px;background:var(--lk-border-soft,var(--border-soft,#e2e8f0));margin:20px 0}

/* ── Hero ── */
.cres-hero{display:flex;gap:16px;margin-bottom:0}
.cres-hero>div{flex:1;background:var(--lk-bg-body,var(--bg-body,#f8fafc));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:10px;padding:14px 18px}
.cres-hero-r{text-align:right}
.cres-label{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));margin-bottom:6px}
.cres-big{font-size:32px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b));line-height:1.1}
.cres-big.green{color:#16a34a} .cres-big.red{color:#dc2626} .cres-big.amber{color:#d97706} .cres-big.muted{color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.cres-sub{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-top:6px}

/* ── Track ── */
.cres-track{position:relative;height:8px;border-radius:4px;background:var(--lk-border-soft,var(--border-soft,#e2e8f0));overflow:visible;margin:16px 0 8px}
.cres-track-fill{height:100%;border-radius:4px;transition:width .6s ease}
.cres-track-marker{position:absolute;top:-3px;width:2px;height:14px;background:var(--lk-text-primary,var(--tx-primary,#1e293b));border-radius:1px}
.cres-track-marker--meta{background:var(--lk-brand,var(--c-brand,#6d28d9))}
.cres-stats{display:flex;justify-content:space-between;font-size:12px;margin-bottom:0}
.green{color:#16a34a} .red{color:#dc2626} .amber{color:#d97706} .muted{color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}

/* ── Verdict ── */
@keyframes cres-pulse{0%,100%{opacity:1}50%{opacity:.65}}
@keyframes cres-glow{0%,100%{border-color:rgba(217,119,6,.12);box-shadow:0 0 0 rgba(217,119,6,0)}50%{border-color:rgba(217,119,6,.3);box-shadow:0 0 8px rgba(217,119,6,.08)}}
@keyframes cres-glow-ok{0%,100%{border-color:rgba(22,163,74,.12);box-shadow:0 0 0 rgba(22,163,74,0)}50%{border-color:rgba(22,163,74,.25);box-shadow:0 0 8px rgba(22,163,74,.06)}}
.cres-verdict{padding:10px 14px;border-radius:10px;font-size:13px;margin-top:8px;line-height:1.6}
.cres-verdict b{font-weight:600}
.cres-verdict--ok{background:rgba(22,163,74,.04);color:#16a34a;border:0.5px solid rgba(22,163,74,.12)}
.cres-verdict--warn{background:rgba(217,119,6,.04);color:#d97706;border:0.5px solid rgba(217,119,6,.12)}
.cres-verdict svg{vertical-align:-2px;margin-right:6px;flex-shrink:0}
.cres-verdict-anim{animation:cres-glow 3s ease-in-out infinite}
.cres-verdict-anim.cres-verdict--ok{animation-name:cres-glow-ok}
.cres-verdict-anim svg{animation:cres-pulse 2.5s ease-in-out infinite}

/* ── Pend ── */
.cres-pend{background:var(--lk-bg-body,var(--bg-body,#f1f5f9));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:10px;padding:14px 16px;margin-top:10px}
.cres-pend-head{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b));margin-bottom:6px}
.cres-pend-body{font-size:13px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));line-height:1.7}
.cres-pend-body b{color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.cres-pend-body b.amber{color:#d97706}

/* ── Avance ── */
.cres-meses{display:flex;justify-content:space-between;margin:8px 0 14px}
.cres-mes{font-size:10px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.cres-mes--now{font-weight:600;color:var(--lk-brand,var(--c-brand,#6d28d9))}
.cres-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:10px 0 14px}
.cres-kpi{background:var(--lk-bg-body,var(--bg-body,#f1f5f9));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:10px;padding:12px;text-align:center}
.cres-kpi-val{font-size:20px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.cres-kpi-label{font-size:10px;color:var(--lk-text-secondary,var(--tx-muted,#64748b));margin-top:3px}

/* ── Recs — 3 zones: top + impact + profs ── */
.cres-rec{background:var(--lk-bg-card,var(--bg-card,#fff));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:12px;padding:20px 24px;margin-bottom:10px;box-shadow:0 1px 3px rgba(0,0,0,.03);transition:border-color .2s,box-shadow .2s,transform .15s}
.cres-rec:hover{border-color:rgba(109,40,217,.25);box-shadow:0 4px 16px rgba(109,40,217,.06);transform:translateY(-1px)}
.cres-rec-top{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}
.cres-rec-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cres-rec-head-wrap{flex:1;min-width:0}
.cres-rec-head{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.cres-rec-cat{font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.cres-pri{font-size:10px;font-weight:500;padding:2px 8px;border-radius:4px;text-transform:capitalize}
.cres-pri--danger{background:rgba(220,38,38,.08);color:#dc2626}
.cres-pri--amber{background:rgba(217,119,6,.08);color:#d97706}
.cres-pri--blue{background:rgba(37,99,235,.08);color:#2563eb}
.cres-rec-title{font-size:14px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b));margin-bottom:2px}
.cres-rec-desc{font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#64748b))}
.cres-impact{display:grid;grid-template-columns:repeat(var(--cols,3),1fr);background:var(--lk-bg-body,var(--bg-body,#f8fafc));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:8px;margin-bottom:14px;overflow:hidden}
.cres-impact-item{padding:10px 14px;text-align:center;border-right:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0))}
.cres-impact-item:last-child{border-right:none}
.cres-impact-val{font-size:15px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.cres-impact-lbl{font-size:10px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));margin-top:2px}
.cres-rec-profs{border-top:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));padding-top:0;display:flex;flex-direction:column;gap:0}
.cres-rec-hdr{display:grid;grid-template-columns:30px 1.2fr 0.8fr 0.6fr 100px;gap:10px;padding:8px 12px;font-size:10px;font-weight:500;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));text-transform:uppercase;letter-spacing:.04em}
.cres-rec-hdr span:nth-child(3){text-align:center}
.cres-rec-hdr span:nth-child(4){text-align:center}
.cres-rec-hdr span:nth-child(5){text-align:right}
.cres-rec-row{display:grid;grid-template-columns:30px 1.2fr 0.8fr 0.6fr 100px;gap:10px;align-items:center;padding:8px 12px;border-radius:8px;cursor:pointer;transition:background .15s;border-bottom:0.5px solid var(--lk-border-soft,var(--border-soft,#f1f5f9))}
.cres-rec-row:last-child{border-bottom:none}
.cres-rec-row:hover{background:rgba(109,40,217,.02)}
.cres-rec-prof{min-width:0}
.cres-rec-pn{font-size:13px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b));transition:color .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cres-rec-row:hover .cres-rec-pn{color:var(--lk-brand,var(--c-brand,#6d28d9))}
.cres-rec-psub{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));display:flex;align-items:center;gap:4px;margin-top:1px}
.cres-rec-activity{text-align:center}
.cres-rec-actv{font-size:13px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b))}
.cres-rec-acts{font-size:10px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.cres-rec-status{text-align:center}
.cres-badge-sm{font-size:10px;font-weight:500;padding:2px 8px;border-radius:4px;white-space:nowrap}
.cres-badge--red{background:rgba(220,38,38,.08);color:#dc2626}
.cres-badge--amber{background:rgba(217,119,6,.08);color:#d97706}
.cres-badge--green{background:rgba(22,163,74,.08);color:#16a34a}
.cres-btn-brand{display:inline-flex;align-items:center;gap:4px;padding:6px 14px;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;border:1px solid var(--lk-brand,var(--c-brand,#6d28d9));background:rgba(109,40,217,.04);color:var(--lk-brand,var(--c-brand,#6d28d9));transition:all .15s;white-space:nowrap;justify-self:end}
.cres-btn-brand:hover{background:var(--lk-brand,var(--c-brand,#6d28d9));color:#fff}
.cres-btn-cta{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;border:none;background:var(--lk-brand,var(--c-brand,#6d28d9));color:#fff;transition:background .15s}
.cres-btn-cta:hover{background:#5b21b6}
.cres-go{color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));flex-shrink:0;transition:transform .2s,color .2s}
.cres-rec:hover .cres-go,.cres-rec-row:hover .cres-go,.cres-prof:hover .cres-go,.cres-btn-brand:hover .cres-go,.cres-btn-cta:hover .cres-go{transform:translateX(3px);color:currentColor}
.cres-empty{padding:24px;text-align:center;font-size:13px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}

/* ── Profs — redesigned ── */
.cres-prof-list{display:flex;flex-direction:column;gap:8px}
.cres-prof{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--lk-bg-card,var(--bg-card,#fff));border:0.5px solid var(--lk-border-soft,var(--border-soft,#e2e8f0));border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.03);cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .15s}
.cres-prof:hover{border-color:rgba(109,40,217,.25);box-shadow:0 4px 16px rgba(109,40,217,.06);transform:translateY(-1px)}
.cres-prof:active{transform:translateY(0)}
.cres-prof-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.cres-prof-name{font-size:14px;font-weight:500;color:var(--lk-text-primary,var(--tx-primary,#1e293b));transition:color .15s}
.cres-prof:hover .cres-prof-name{color:var(--lk-brand,var(--c-brand,#6d28d9))}
.cres-prof-spec{font-size:12px;color:var(--lk-text-secondary,var(--tx-muted,#64748b))}
.cres-mod-ic{vertical-align:-1px;margin:0 1px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.cres-prof-tags{display:flex;align-items:center;gap:6px}
.cres-tag{font-size:10px;font-weight:500;padding:2px 8px;border-radius:4px}
.cres-tag--green{background:rgba(22,163,74,.08);color:#16a34a}
.cres-tag--amber{background:rgba(217,119,6,.08);color:#d97706}
.cres-tag--red{background:rgba(220,38,38,.08);color:#dc2626}
.cres-tag--blue{background:rgba(37,99,235,.08);color:#2563eb}
.cres-prof-counts{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8))}
.cres-prof-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;width:200px;flex-shrink:0}
.cres-prof-bar-row{display:flex;align-items:center;gap:8px;width:100%}
.cres-prof-track{margin:0;height:8px;flex:1;cursor:pointer;transition:height .15s}
.cres-prof:hover .cres-prof-track{height:12px}
.cres-prof-pct{font-size:16px;font-weight:500;width:44px;text-align:right;flex-shrink:0}
.cres-prof-hrs{font-size:11px;color:var(--lk-text-secondary,var(--tx-muted,#94a3b8));text-align:right}

/* ── Avatar ── */
.cres-av{display:flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:600;font-size:13px;flex-shrink:0}
.cres-av-img{border-radius:50%;object-fit:cover;display:block}

/* ── Responsive ── */
@media(max-width:768px){
  .cres-wrap{padding:12px 14px 24px}
  .cres-card{padding:16px}
  .cres-hero{flex-direction:column;gap:12px}
  .cres-hero-r{text-align:left}
  .cres-big{font-size:28px}
  .cres-trio{grid-template-columns:1fr}
  .cres-prof-right{width:120px}
  .coord-view-btn{padding:0 10px;height:32px;font-size:12px}
  .ld-blade{top:44px;height:calc(100vh - 44px)}
}

/* ═══ coord-supervisiones — csup-* styles v3 ═══ */

/* ── Summary bar override (Agenda Focus format) ──────────── */
.coord-summary{min-height:34px;padding:6px 20px;font-size:12px;display:flex;align-items:center;gap:12px}
.coord-sep{width:0.5px;height:14px;background:var(--border,#2a2e3d);flex-shrink:0}
.coord-stat--warn b{color:#d97706 !important}

/* ── Avatar ──────────────────────────────────────────────── */
.csup-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:600;flex-shrink:0;letter-spacing:-0.3px}

/* ── Section ─────────────────────────────────────────────── */
.csup-section{display:flex;flex-direction:column;gap:10px;margin-bottom:8px}
.csup-section-title{font-size:12px;font-weight:500;color:var(--tx-muted,#64748b);text-transform:uppercase;letter-spacing:0.5px;display:flex;align-items:center;gap:8px}

/* ── Cards ───────────────────────────────────────────────── */
.csup-card{background:var(--bg-card,#1a1d27);border:0.5px solid var(--border,#2a2e3d);border-radius:10px;padding:20px}
.csup-card--live{border-color:var(--c-brand,#6d28d9);background:linear-gradient(180deg,rgba(109,40,217,0.06) 0%,var(--bg-card,#1a1d27) 100%)}
.csup-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.csup-card-title{font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px}
.csup-card-footer{margin-top:14px;padding-top:14px;border-top:0.5px solid var(--border-soft,#1e2233)}

/* ── Badge ───────────────────────────────────────────────── */
.csup-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:500;border:0.5px solid}
.csup-badge--blue{color:#2563eb;border-color:#2563eb;background:rgba(37,99,235,0.12)}
.csup-badge--green{color:#16a34a;border-color:#16a34a;background:rgba(22,163,74,0.12)}
.csup-badge--muted{color:var(--tx-muted,#64748b);border-color:var(--border,#2a2e3d);background:var(--bg-elevated,#222533)}

/* ── Programada meta ─────────────────────────────────────── */
.csup-prog-meta{display:flex;align-items:center;gap:16px;font-size:12px;color:var(--tx-muted,#64748b);margin-bottom:14px;padding-bottom:12px;border-bottom:0.5px solid var(--border-soft,#1e2233)}
.csup-meta-item{display:flex;align-items:center;gap:4px}
.csup-prog-tema{margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ── RSVP ────────────────────────────────────────────────── */
.csup-rsvp-section{margin-bottom:4px}
.csup-rsvp-header{font-size:11px;text-transform:uppercase;letter-spacing:0.5px;color:var(--tx-dim,#475569);margin-bottom:6px;font-weight:500}
.csup-rsvp-row{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:0.5px solid var(--border-soft,#1e2233)}
.csup-rsvp-row:last-child{border-bottom:none}
.csup-rsvp-left{display:flex;align-items:center;gap:10px;font-size:13px}
.csup-rsvp-status{font-size:12px;display:flex;align-items:center;gap:4px}
.csup-rsvp--ok{color:#16a34a}
.csup-rsvp--pend{color:var(--tx-muted,#64748b)}

/* ── Buttons ─────────────────────────────────────────────── */
.csup-btn-iniciar{width:100%;padding:10px;border-radius:6px;border:0.5px solid var(--border,#2a2e3d);background:var(--bg-elevated,#222533);color:var(--tx-muted,#64748b);font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:all 0.15s}
.csup-btn-iniciar:hover{background:var(--bg-hover,#262a38);color:var(--tx-base,#e2e8f0)}

/* ── Historial ───────────────────────────────────────────── */
.csup-hist-wrap{background:var(--bg-card,#1a1d27);border:0.5px solid var(--border,#2a2e3d);border-radius:10px;overflow:hidden}
.csup-hist-row{display:grid;grid-template-columns:110px 1fr auto auto;align-items:center;gap:16px;padding:10px 16px;border-bottom:0.5px solid var(--border-soft,#1e2233);cursor:pointer;transition:background 0.1s}
.csup-hist-row:hover{background:var(--bg-hover,#262a38)}
.csup-hist-row:last-child{border-bottom:none}
.csup-hist-date{font-weight:500;font-size:13px}
.csup-hist-tema{font-size:12px;color:var(--tx-muted,#64748b);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.csup-hist-dots{display:flex;gap:3px;flex-shrink:0}
.csup-hist-ratio{font-size:12px;color:var(--tx-muted,#64748b);font-variant-numeric:tabular-nums;min-width:40px;text-align:right}
.csup-hist-ratio.csup-ratio--full{color:#16a34a}
.csup-hist-ratio.csup-ratio--low{color:#d97706}
.csup-dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.csup-dot--green{background:#16a34a}
.csup-dot--red{background:#dc2626}
.csup-dot--amber{background:#d97706}
.csup-dot--muted{background:var(--tx-dim,#475569)}

/* ── Modal form ──────────────────────────────────────────── */
.csup-modal-form{display:flex;flex-direction:column;gap:14px;padding:4px 0}
.csup-field{display:flex;flex-direction:column;gap:4px}
.csup-field label{font-size:12px;font-weight:500;color:var(--tx-muted,#64748b)}
.csup-field-hint{font-size:11px;color:var(--tx-dim,#475569)}
.csup-field input,.csup-field select,.csup-field textarea{background:var(--bg-surface,#14161e);border:0.5px solid var(--border,#2a2e3d);border-radius:6px;padding:8px 10px;color:var(--tx-base,#e2e8f0);font-family:inherit;font-size:13px}
.csup-field textarea{resize:vertical}
.csup-row-2{display:flex;gap:10px}
.csup-row-2 .csup-field{flex:1}
.csup-chips{display:flex;flex-wrap:wrap;gap:8px}
.csup-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px 5px 5px;border-radius:20px;border:0.5px solid var(--border,#2a2e3d);background:transparent;color:var(--tx-muted,#64748b);font-family:inherit;font-size:12px;cursor:pointer;transition:all 0.15s}
.csup-chip:hover{border-color:var(--c-brand-light,#8b5cf6);color:var(--tx-base,#e2e8f0)}
.csup-chip--sel{border-color:var(--c-brand,#6d28d9);background:rgba(109,40,217,0.12);color:var(--c-brand-light,#8b5cf6)}
.csup-modal-actions{display:flex;gap:10px;justify-content:center;padding-top:10px;border-top:0.5px solid var(--border-soft,#1e2233);margin-top:6px}
.csup-modal-btn{padding:10px 28px;border-radius:6px;border:0.5px solid var(--border,#2a2e3d);background:transparent;color:var(--tx-base,#e2e8f0);font-family:inherit;font-size:14px;font-weight:500;cursor:pointer}
.csup-modal-btn:hover{background:var(--bg-hover,#262a38)}
.csup-modal-btn--brand{background:var(--c-brand,#6d28d9);border-color:var(--c-brand,#6d28d9);color:#fff}
.csup-modal-btn--brand:hover{background:var(--c-brand-light,#8b5cf6)}

/* ── Empty state ─────────────────────────────────────────── */
.csup-empty-wrap{display:flex;flex-direction:column;align-items:center;gap:20px;padding:24px 0 12px}
.csup-empty-card{background:var(--bg-card,#1a1d27);border:0.5px solid var(--border,#2a2e3d);border-radius:10px;padding:32px 40px;max-width:520px;width:100%;text-align:center}
.csup-empty-icon{width:56px;height:56px;border-radius:50%;background:var(--bg-surface,#14161e);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:var(--c-brand,#6d28d9)}
.csup-empty-icon svg{width:28px;height:28px;stroke-width:1.5}
.csup-empty-title{font-size:16px;font-weight:500;margin-bottom:6px}
.csup-empty-sub{font-size:13px;color:var(--tx-muted,#64748b);margin-bottom:20px;line-height:1.6}
.csup-empty-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 20px;border-radius:6px;background:var(--c-brand,#6d28d9);color:#fff;font-family:inherit;font-size:13px;font-weight:500;border:none;cursor:pointer;transition:background 0.15s}
.csup-empty-btn:hover{background:var(--c-brand-light,#8b5cf6)}
.csup-empty-features{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;text-align:left}
.csup-empty-feat{display:flex;gap:8px;align-items:flex-start;font-size:12px;color:var(--tx-muted,#64748b);line-height:1.4}
.csup-empty-feat svg{flex-shrink:0;margin-top:1px;color:var(--c-brand,#6d28d9);opacity:.7}

/* ── Ghost cards (skeleton preview) ──────────────────────── */
.csup-ghost-section{max-width:520px;width:100%;display:flex;flex-direction:column;gap:8px}
.csup-ghost-label{font-size:11px;color:var(--tx-dim,#475569);text-transform:uppercase;letter-spacing:0.5px;display:flex;align-items:center;gap:6px}
.csup-ghost-row{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--bg-card,#1a1d27);border:0.5px solid var(--border,#2a2e3d);border-radius:8px;opacity:.4}
.csup-ghost-avatar{width:28px;height:28px;border-radius:50%;background:var(--border,#2a2e3d);flex-shrink:0}
.csup-ghost-lines{flex:1;display:flex;flex-direction:column;gap:4px}
.csup-ghost-bar{height:8px;border-radius:4px;background:var(--border,#2a2e3d)}
.csup-ghost-bar--sm{opacity:.6}
.csup-ghost-badge{padding:3px 10px;border-radius:12px;border:0.5px solid var(--border,#2a2e3d);font-size:11px;color:var(--tx-dim,#475569)}
.csup-ghost-dots{display:flex;gap:4px}
.csup-ghost-dot{width:8px;height:8px;border-radius:50%;background:var(--border,#2a2e3d)}

