/* Plus Jakarta Sans (SIL OFL 1.1) · fuente variable alojada en el propio plugin: pesos 200–800, normal y cursiva. */
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:200 800;font-display:swap;src:url("../fonts/PlusJakartaSans-VF.woff2") format("woff2")}
@font-face{font-family:"Plus Jakarta Sans";font-style:italic;font-weight:200 800;font-display:swap;src:url("../fonts/PlusJakartaSans-Italic-VF.woff2") format("woff2")}
.chc-portal{--chc-accent:#2563eb;--chc-border:#e2e4e9;--chc-muted:#6b7280;--chc-bg:#f7f8fa;max-width:1200px;width:100%;box-sizing:border-box;margin:0 auto}
.chc-portal *{box-sizing:border-box}
.chc-portal .chc-note{background:var(--chc-bg);border:1px solid var(--chc-border);border-radius:8px;padding:8px 12px;color:var(--chc-muted);font-size:.9em}
.chc-portal .chc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:16px 0}
.chc-portal .chc-card{display:block;border:1px solid var(--chc-border);border-radius:12px;padding:16px;text-decoration:none;color:inherit;background:#fff;transition:box-shadow .15s,transform .15s}
.chc-portal .chc-card:hover,.chc-portal .chc-card:focus{box-shadow:0 4px 14px rgba(0,0,0,.08);transform:translateY(-1px)}
.chc-portal .chc-card h3{margin:8px 0 12px;font-size:1.1em}
.chc-portal .chc-card small{display:block;margin-top:8px;color:var(--chc-muted)}
.chc-portal .chc-badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:.78em;background:var(--chc-bg);color:var(--chc-muted);border:1px solid var(--chc-border)}
.chc-portal .chc-status-active{background:#ecfdf3;color:#067647;border-color:#abefc6}
.chc-portal .chc-status-paused{background:#fffaeb;color:#93370d;border-color:#fedf89}
.chc-portal .chc-status-completed{background:#eff8ff;color:#175cd3;border-color:#b2ddff}

.chc-portal .chc-bar{position:relative;height:18px;background:#e5e7eb;border-radius:999px;overflow:hidden}
.chc-portal .chc-bar span{display:block;height:100%;background:var(--chc-accent);border-radius:999px;transition:width .4s}
.chc-portal .chc-bar em{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:.72em;font-weight:600;color:#111827;text-shadow:0 0 3px #fff}

.chc-portal .chc-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:16px 0;padding:16px;border:1px solid var(--chc-border);border-radius:12px;background:var(--chc-bg)}
.chc-portal .chc-summary strong{display:block;margin-bottom:6px}
.chc-portal .chc-summary small{color:var(--chc-muted)}
.chc-portal .chc-desc{margin:16px 0}
.chc-portal .chc-phase{border:1px solid var(--chc-border);border-radius:12px;padding:16px;margin:16px 0;background:#fff}
.chc-portal .chc-phase header{display:grid;grid-template-columns:1fr minmax(120px,240px);gap:12px;align-items:center;margin-bottom:8px}
.chc-portal .chc-phase h3{margin:0;font-size:1.05em}
.chc-portal .chc-tasks{list-style:none;margin:0;padding:0}
.chc-portal .chc-tasks li{display:flex;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--chc-border)}
.chc-portal .chc-tasks li:first-child{border-top:0}
.chc-portal .chc-check{flex:0 0 20px;height:20px;border:2px solid #cbd5e1;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:12px;color:#fff;line-height:1}
.chc-portal .chc-tasks li.is-done .chc-check{background:var(--chc-accent);border-color:var(--chc-accent)}
.chc-portal .chc-tasks li.is-done .chc-task-title{color:var(--chc-muted);text-decoration:line-through}
.chc-portal .chc-tasks small{margin-left:auto;color:var(--chc-muted)}
.chc-portal .chc-empty{color:var(--chc-muted);margin:0}
.chc-portal .chc-logout{text-align:right;font-size:.9em}
.chc-portal .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.chc-portal.chc-login{max-width:420px}
.chc-portal.chc-login input[type=text],.chc-portal.chc-login input[type=password]{width:100%}

.chc-lead{max-width:520px}
.chc-lead input[type=text],.chc-lead input[type=email],.chc-lead input[type=tel],.chc-lead textarea{width:100%}
.chc-lead-ok{background:#ecfdf3;color:#067647;padding:10px 14px;border-radius:8px}
.chc-lead-error{background:#fef3f2;color:#b42318;padding:10px 14px;border-radius:8px}

@media (max-width:560px){.chc-portal .chc-phase header{grid-template-columns:1fr}}

/* ---------- Navegación, cabeceras y botones ---------- */
.chc-portal .chc-tabs{display:flex;gap:4px;border-bottom:1px solid var(--chc-border);margin:0 0 16px;flex-wrap:wrap}
.chc-portal .chc-tabs a{padding:10px 16px;text-decoration:none;color:var(--chc-muted);border-bottom:3px solid transparent;margin-bottom:-1px;font-weight:600}
.chc-portal .chc-tabs a:hover,.chc-portal .chc-tabs a:focus{color:var(--chc-accent)}
.chc-portal .chc-tabs a.is-active{color:var(--chc-accent);border-bottom-color:var(--chc-accent)}
.chc-portal .chc-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0}
.chc-portal .chc-head h2{margin:0}
.chc-portal .chc-btn{display:inline-block;padding:8px 16px;border:1px solid var(--chc-accent);border-radius:8px;background:var(--chc-accent);color:#fff;font:inherit;font-weight:600;line-height:1.3;text-decoration:none;cursor:pointer}
.chc-portal .chc-btn:hover,.chc-portal .chc-btn:focus{filter:brightness(.92);color:#fff}
.chc-portal .chc-btn-secondary{background:#fff;color:var(--chc-accent)}
.chc-portal .chc-btn-secondary:hover,.chc-portal .chc-btn-secondary:focus{background:var(--chc-bg);color:var(--chc-accent)}
.chc-portal .chc-btn-small{padding:4px 10px;font-size:.85em}
.chc-portal .chc-btn-danger{background:#fff;border-color:#d92d20;color:#b42318}
.chc-portal .chc-btn-danger:hover,.chc-portal .chc-btn-danger:focus{background:#fef3f2;color:#b42318}
.chc-portal .chc-flash{padding:10px 14px;border-radius:8px;margin:0 0 16px}
.chc-portal .chc-flash-success{background:#ecfdf3;color:#067647}
.chc-portal .chc-flash-error{background:#fef3f2;color:#b42318}
.chc-portal .chc-box-msg{padding:16px;border:1px solid var(--chc-border);border-radius:12px;background:var(--chc-bg)}

/* ---------- Formularios ---------- */
.chc-portal .chc-formbox{max-width:620px;border:1px solid var(--chc-border);border-radius:12px;padding:20px;background:#fff}
.chc-portal .chc-formbox h2{margin-top:0}
.chc-portal .chc-form label{display:block;font-weight:600}
.chc-portal .chc-form input[type=text],.chc-portal .chc-form input[type=number],.chc-portal .chc-form input[type=date],.chc-portal .chc-form select,.chc-portal .chc-form textarea{width:100%;margin-top:4px;padding:8px 10px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;font-weight:400}
.chc-portal .chc-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px}
.chc-portal form.chc-inline,.chc-portal form.chc-inline-form{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap;margin:0}
.chc-portal form.chc-add{display:flex;margin-top:10px}
.chc-portal form.chc-add input[type=text]{flex:1 1 200px;min-width:0}
.chc-portal .chc-phase input[type=text],.chc-portal .chc-phase input[type=date]{padding:6px 8px;border:1px solid #cbd5e1;border-radius:8px;font:inherit}
.chc-portal details.chc-edit{margin:0 0 8px;font-size:.9em}
.chc-portal details.chc-edit summary{cursor:pointer;color:var(--chc-accent)}
.chc-portal details.chc-edit form{margin:6px 8px 0 0}
.chc-portal .chc-check-btn{padding:0;background:#fff;cursor:pointer}
.chc-portal .chc-tasks li.is-done .chc-check-btn{background:var(--chc-accent)}
.chc-portal .chc-x-form{margin-left:auto}
.chc-portal .chc-x{background:none;border:0;color:var(--chc-muted);font-size:1.3em;line-height:1;cursor:pointer;padding:0 4px}
.chc-portal .chc-x:hover,.chc-portal .chc-x:focus{color:#b42318}
.chc-portal .chc-phase-new h3{margin-bottom:10px}

/* ---------- Kanban de iniciativas ---------- */
.chc-portal .chc-kanban{display:flex;gap:12px;overflow-x:auto;padding:4px 2px 14px;align-items:flex-start;-webkit-overflow-scrolling:touch}
.chc-portal .chc-kcol{flex:0 0 240px;background:var(--chc-bg);border:1px solid var(--chc-border);border-top:3px solid #94a3b8;border-radius:10px;padding:10px;min-height:120px}
.chc-portal .chc-kcol h3{margin:0;font-size:.95em;display:flex;justify-content:space-between;align-items:center;gap:6px}
.chc-portal .chc-kcol h3 span{background:#e5e7eb;border-radius:999px;padding:0 8px;font-size:.8em;font-weight:500}
.chc-portal .chc-ktotal{margin:2px 0 10px;color:var(--chc-muted);font-size:.85em}
.chc-portal .chc-stage-new{border-top-color:#94a3b8}
.chc-portal .chc-stage-contacted{border-top-color:#38bdf8}
.chc-portal .chc-stage-consensus{border-top-color:#8b5cf6}
.chc-portal .chc-stage-proposal{border-top-color:#f59e0b}
.chc-portal .chc-stage-negotiation{border-top-color:#f97316}
.chc-portal .chc-stage-won{border-top-color:#16a34a}
.chc-portal .chc-stage-lost{border-top-color:#dc2626}
.chc-portal .chc-kcard{background:#fff;border:1px solid var(--chc-border);border-radius:8px;padding:10px;margin-bottom:8px}
.chc-portal .chc-kcard a{text-decoration:none;color:inherit}
.chc-portal .chc-kcard a:hover,.chc-portal .chc-kcard a:focus{color:var(--chc-accent)}
.chc-portal .chc-kcard small{display:block;color:var(--chc-muted)}
.chc-portal .chc-kamount{font-weight:600;margin:2px 0}
.chc-portal .chc-move{display:flex;gap:4px;margin-top:8px}
.chc-portal .chc-move select{flex:1 1 auto;min-width:0;padding:3px 4px;border:1px solid #cbd5e1;border-radius:6px;font:inherit;font-size:.85em}
.chc-portal .chc-kanban.is-dnd .chc-kcard[draggable=true]{cursor:grab}
.chc-portal .chc-kcard.is-dragging{opacity:.4}
.chc-portal .chc-kcol.is-over{outline:2px dashed var(--chc-accent);outline-offset:-4px;background:#eff6ff}

/* El embed [chc_project] no lleva el contenedor del portal */
.chc-project{max-width:1200px;width:100%;box-sizing:border-box}

@media (max-width:560px){.chc-portal .chc-kcol{flex-basis:78vw}.chc-portal .chc-head{align-items:flex-start}}

/* ---------- Agenda: contactos y empresas ---------- */
.chc-portal .chc-tablewrap{overflow-x:auto;margin:12px 0}
.chc-portal .chc-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--chc-border);border-radius:12px;overflow:hidden;font-size:.95em}
.chc-portal .chc-table th{text-align:left;font-size:.8em;text-transform:uppercase;letter-spacing:.03em;color:var(--chc-muted);background:var(--chc-bg);padding:10px 12px}
.chc-portal .chc-table td{padding:10px 12px;border-top:1px solid var(--chc-border);vertical-align:top}
.chc-portal .chc-table .chc-sub{display:block;color:var(--chc-muted);font-weight:400}
.chc-portal .chc-dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;margin:12px 0}
.chc-portal .chc-dl dt{color:var(--chc-muted);font-weight:600}
.chc-portal .chc-dl dd{margin:0}
.chc-portal .chc-legal label{font-weight:400}
.chc-portal .chc-form small{display:block;margin-top:4px}

/* ---------- Contactos asignados ---------- */
.chc-portal .chc-assign{border:1px solid var(--chc-border);border-radius:12px;padding:16px;margin:16px 0;background:#fff}
.chc-portal .chc-assign h3{margin:0 0 10px;font-size:1.05em}
.chc-portal .chc-chips{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chc-portal .chc-chips li{display:inline-flex;align-items:center;gap:4px;background:var(--chc-bg);border:1px solid var(--chc-border);border-radius:999px;padding:3px 6px 3px 12px}
.chc-portal .chc-chips li small{color:var(--chc-muted)}
.chc-portal .chc-chips .chc-x-form{margin-left:0}
.chc-portal .chc-checks{border:1px solid var(--chc-border);border-radius:8px;padding:8px 12px;margin:8px 0;max-height:220px;overflow:auto}
.chc-portal .chc-checks legend{padding:0 6px;font-weight:600}
.chc-portal .chc-checks label{display:block;padding:4px 0;font-weight:400}
.chc-portal .chc-kcard .chc-kwho{margin-top:2px}

@media (max-width:640px){
.chc-portal .chc-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.chc-portal .chc-table,.chc-portal .chc-table tbody,.chc-portal .chc-table tr,.chc-portal .chc-table td{display:block;width:100%}
.chc-portal .chc-table tr{border-top:1px solid var(--chc-border);padding:8px 0}
.chc-portal .chc-table tr:first-child{border-top:0}
.chc-portal .chc-table td{border:0;padding:2px 12px}
.chc-portal .chc-table td[data-label]::before{content:attr(data-label) ": ";color:var(--chc-muted);font-size:.85em}
.chc-portal .chc-table td:empty{display:none}
}

/* ---------- Categoría de contacto ---------- */
.chc-portal .chc-cat{display:inline-block;margin-top:4px;padding:2px 8px;border-radius:999px;font-size:.75em;font-weight:600;line-height:1.5;background:#e2e8f0;color:#334155}
.chc-portal .chc-cat-consensus_sponsor{background:#e0f2fe;color:#075985}
.chc-portal .chc-cat-value_administrator{background:#ede9fe;color:#5b21b6}
.chc-portal .chc-cat-reputation_seeker{background:#fef3c7;color:#92400e}
.chc-portal .chc-cat-equipo{background:#dcfce7;color:#166534}

/* ---------- Consensus Matrix ---------- */
.chc-portal .chc-mx-sub{color:#64748b;margin:0 0 12px}
.chc-portal .chc-mx-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:12px}
.chc-portal .chc-pills{display:flex;gap:6px}
.chc-portal .chc-pills a{padding:5px 12px;border-radius:6px;background:#e2e8f0;color:#475569;font-size:.8em;font-weight:700;letter-spacing:.03em;text-transform:uppercase;text-decoration:none}
.chc-portal .chc-pills a.is-active{background:#e0f2fe;color:#0284c7}
.chc-portal .chc-mx-pick{display:flex;gap:6px;align-items:center}
.chc-portal .chc-mx-pick select{min-width:220px;max-width:100%;padding:6px 8px;border:1px solid #cbd5e1;border-radius:6px;font:inherit}
.chc-portal .chc-mx-title{margin:0 0 8px}
.chc-portal .chc-mx-msg{margin:0 0 10px;padding:10px 12px;border-radius:8px;background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
.chc-portal .chc-mx-scroll{overflow-x:auto;padding-bottom:6px}
.chc-portal .chc-mx{display:grid;grid-template-columns:165px repeat(3,minmax(220px,1fr));gap:8px;min-width:840px}
.chc-portal .chc-mx-corner{display:flex;align-items:center;justify-content:center;font-size:.8em;font-weight:700;color:#0f172a}
.chc-portal .chc-mx-colh{background:#0f172a;color:#f8fafc;border-radius:6px;padding:8px;text-align:center;font-size:.9em;font-weight:700}
.chc-portal .chc-mx-rowh{background:#e2e8f0;border-left:4px solid #0284c7;border-radius:6px;display:flex;align-items:center;padding:8px 8px;font-size:.8em;overflow-wrap:anywhere;font-weight:700;color:#0f172a}
.chc-portal .chc-mx-cell,.chc-portal .chc-mx-tray{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:12px;min-height:112px;transition:background .1s}
.chc-portal .chc-mx-cellhead strong{display:block;font-size:.9em;color:#0f172a}
.chc-portal .chc-mx-cellhead span{display:block;font-size:.8em;color:#475569;margin:2px 0 8px}
.chc-portal .chc-mx-cards{display:flex;flex-direction:column;gap:6px;min-height:8px}
.chc-portal .chc-mx-card{background:#f8fafc;border:1px solid #cbd5e1;border-left:3px solid #0284c7;border-radius:6px;padding:8px 10px;font-size:.88em}
.chc-portal .chc-mx-card small{display:block;color:#64748b}
.chc-portal .chc-mxmove{display:flex;gap:4px;margin-top:6px}
.chc-portal .chc-mxmove label{flex:1 1 auto;min-width:0}
.chc-portal .chc-mxmove select{width:100%;padding:3px 4px;border:1px solid #cbd5e1;border-radius:6px;font:inherit;font-size:.85em}
.chc-portal .chc-mx-tray{margin:0 0 12px;min-height:0;background:#f8fafc;border-style:dashed}
.chc-portal .chc-mx-tray h3{margin:0 0 8px;font-size:.95em}
.chc-portal .chc-mx-tray .chc-mx-cards{flex-direction:row;flex-wrap:wrap}
.chc-portal .chc-mx-tray .chc-mx-card{min-width:200px;flex:0 1 240px}
.chc-portal .chc-mx.is-dnd .chc-mx-card[draggable=true],.chc-portal .chc-mx-tray.is-dnd .chc-mx-card[draggable=true]{cursor:grab}
.chc-portal .chc-mx-card.is-dragging{opacity:.4}
.chc-portal .chc-mx-card.is-busy{opacity:.55;pointer-events:none}
.chc-portal .chc-mx-cell.is-over,.chc-portal .chc-mx-tray.is-over{outline:2px dashed #0284c7;outline-offset:-4px;background:#f0f9ff}

/* Tablero 2×2 (External / Internal Stakeholders) */
.chc-portal .chc-mx.chc-mx-c2{grid-template-columns:165px repeat(2,minmax(260px,1fr));min-width:640px}
.chc-portal .chc-mx.chc-mx-c2 .chc-mx-corner{font-size:.7em;letter-spacing:.04em;text-align:center;padding:4px}
.chc-portal .chc-mx.chc-mx-c2 .chc-mx-cell{min-height:170px}

/* v0.24.0: kanban de tareas 4 columnas × 12 filas */
.chc-portal .chc-mx.chc-mx-c4{grid-template-columns:190px repeat(4,minmax(230px,1fr));min-width:1110px}
.chc-portal .chc-mx.chc-mx-c4 .chc-mx-cell{min-height:92px}
.chc-portal .chc-mx.chc-mx-c4 .chc-mx-colh{position:sticky;top:0;z-index:1}

/* v0.6.0: tablero en árbol (Impacto Orgánico / Gestionado) y tablero de tareas */
.chc-portal .chc-tree{display:grid;grid-template-columns:repeat(3,minmax(200px,1fr));gap:8px;min-width:660px}
.chc-portal .chc-tree-col{display:flex;flex-direction:column;gap:8px}
.chc-portal .chc-tree-cells{display:flex;flex-direction:column;gap:8px;flex:1}
.chc-portal .chc-tree-cells .chc-mx-cell{flex:1 1 0;min-height:130px}
.chc-portal .chc-taskboard{margin-top:18px}
.chc-portal .chc-taskboard .chc-add{margin:0 0 12px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.chc-portal .chc-task{position:relative;padding-right:26px}
.chc-portal .chc-task.is-done .chc-task-title{text-decoration:line-through;color:#64748b}
.chc-portal .chc-task .chc-x-form{position:absolute;top:4px;right:4px;margin:0}
.chc-portal .chc-project{max-width:100%}

/* Ancho completo: el portal sale del contenedor del tema y ocupa todo el ancho de la ventana. */
.chc-portal.chc-full{max-width:none;width:100vw;position:relative;left:50%;transform:translateX(-50%);margin-left:0;margin-right:0;padding-left:24px;padding-right:24px}
body:has(.chc-portal.chc-full){overflow-x:hidden}
@media (max-width:640px){.chc-portal.chc-full{padding-left:12px;padding-right:12px}}
.chc-portal .chc-mx-desc summary{cursor:pointer;list-style:none}
.chc-portal .chc-mx-desc summary::-webkit-details-marker{display:none}
.chc-portal .chc-mx-desc summary strong::before{content:"▸ ";color:#64748b}
.chc-portal .chc-mx-desc[open] summary strong::before{content:"▾ "}
.chc-portal .chc-mx-desc p{margin:6px 0 0;font-size:.9em;color:#475569;overflow-wrap:anywhere}
.chc-portal .chc-task-contact{display:block;margin-top:2px;color:#0f172a}
.chc-portal .chc-mxcontact{display:flex;gap:4px;margin-top:6px}
.chc-portal .chc-mxcontact label{flex:1 1 auto;min-width:0}
.chc-portal .chc-mxcontact select{width:100%;padding:3px 4px;border:1px solid #cbd5e1;border-radius:6px;font:inherit;font-size:.85em}
.chc-portal .chc-delform{display:inline-block;margin:6px 0 0}
.chc-portal .chc-cardwrap{display:flex;flex-direction:column;gap:6px}
.chc-portal .chc-cardwrap .chc-card{flex:1}
.chc-portal .chc-table .chc-delform{margin:0}

/* Desplegable «Data» del menú */
.chc-portal .chc-dd{position:relative}
.chc-portal .chc-dd summary{list-style:none;cursor:pointer;padding:10px 16px;color:var(--chc-muted);font-weight:600;border-bottom:3px solid transparent;margin-bottom:-1px;user-select:none}
.chc-portal .chc-dd summary::-webkit-details-marker{display:none}
.chc-portal .chc-dd summary::after{content:" ▾";font-size:.8em}
.chc-portal .chc-dd[open] summary::after{content:" ▴"}
.chc-portal .chc-dd summary:hover,.chc-portal .chc-dd summary:focus{color:var(--chc-accent)}
.chc-portal .chc-dd.is-active summary{color:var(--chc-accent);border-bottom-color:var(--chc-accent)}
.chc-portal .chc-dd-menu{position:absolute;z-index:20;top:100%;left:0;min-width:180px;background:#fff;border:1px solid var(--chc-border);border-radius:8px;box-shadow:0 6px 18px rgba(15,23,42,.12);padding:4px;display:flex;flex-direction:column}
.chc-portal .chc-tabs .chc-dd-menu a{padding:8px 12px;border-bottom:0;margin:0;border-radius:6px;white-space:nowrap}
.chc-portal .chc-tabs .chc-dd-menu a:hover,.chc-portal .chc-tabs .chc-dd-menu a:focus{background:#f1f5f9}
.chc-portal .chc-tabs .chc-dd-menu a.is-active{background:#eff6ff}
.chc-portal .chc-forum-deal{margin:16px 0 8px}
.chc-portal .chc-forum-new{margin-top:20px;max-width:760px}
.chc-portal .chc-forum-msg{border:1px solid var(--chc-border);border-radius:10px;padding:12px 14px;margin:0 0 10px;background:#fff;max-width:900px}
.chc-portal .chc-forum-msg.is-first{background:#f8fafc;border-left:4px solid var(--chc-accent)}
.chc-portal .chc-forum-msg header{display:flex;gap:10px;align-items:baseline;color:var(--chc-muted);margin-bottom:6px}
.chc-portal .chc-forum-msg header strong{color:#0f172a}
.chc-portal .chc-forum-msg time{font-size:.85em}
.chc-portal .chc-forum-body{overflow-wrap:anywhere}
.chc-portal .chc-forum-new textarea,.chc-portal .chc-forum-new input[type=text]{width:100%;box-sizing:border-box}

/* Código de colores (Accountability) */
.chc-portal .chc-mx-cell.chc-tone-green{background:#D9EAD3}
.chc-portal .chc-mx-cell.chc-tone-yellow{background:#FFF2CC}
.chc-portal .chc-mx-cell.chc-tone-red{background:#F4CCCC}
.chc-portal .chc-mx-cell.chc-tone-orange{background:#FCE5CD}
.chc-portal .chc-mx-cell.chc-tone-blue{background:#CFE2F3}
.chc-portal .chc-mx-cell.chc-tone-white{background:#fff}
.chc-portal .chc-mx-cell.chc-tone.is-over{background:#e0f2fe}
.chc-portal .chc-acc{margin-top:16px}
.chc-portal .chc-acc h3{margin:0 0 8px}
.chc-portal .chc-acc ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 24px}
.chc-portal .chc-acc li{display:flex;align-items:center;gap:8px;margin:0}
.chc-portal .chc-acc-sw{width:18px;height:18px;border:1px solid #94a3b8;border-radius:3px;display:inline-block;flex:none}
.chc-portal .chc-acc-sw.chc-tone-green{background:#D9EAD3}
.chc-portal .chc-acc-sw.chc-tone-yellow{background:#FFF2CC}
.chc-portal .chc-acc-sw.chc-tone-red{background:#F4CCCC}
.chc-portal .chc-acc-sw.chc-tone-orange{background:#FCE5CD}
.chc-portal .chc-acc-sw.chc-tone-blue{background:#CFE2F3}
.chc-portal .chc-acc-sw.chc-tone-white{background:#fff}

/* =====================================================================
   v0.8.0 · Tema profesional (estilo CRM tipo HubSpot)
   Capa de diseño: sólo apariencia, no cambia la estructura ni el JS.
   ===================================================================== */
.chc-portal{
 --chc-accent:#d9461f;--chc-accent-d:#b93a18;--chc-accent-l:#fff1ec;
 --chc-ink:#2d3e50;--chc-text:#33475b;--chc-muted:#516f90;
 --chc-border:#cbd6e2;--chc-line:#e5ebf1;--chc-bg:#f5f8fa;--chc-teal:#00a4bd;
 --chc-shadow:0 1px 2px rgba(45,62,80,.08),0 2px 8px rgba(45,62,80,.06);
 font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
 color:var(--chc-text);line-height:1.5;font-size:15px;
 background:var(--chc-bg);padding:20px 24px 32px;
}
.chc-portal.chc-full{padding-left:24px;padding-right:24px}
.chc-portal h1,.chc-portal h2,.chc-portal h3,.chc-portal h4{color:var(--chc-ink);font-family:inherit;line-height:1.25;letter-spacing:-.01em}
.chc-portal h2{font-size:1.5rem;font-weight:700}
.chc-portal h3{font-size:1.05rem;font-weight:600}
.chc-portal a{color:#0b7285}
.chc-portal a:hover{color:var(--chc-accent-d)}
.chc-portal :focus-visible{outline:2px solid var(--chc-teal);outline-offset:2px}

/* Navegación superior */
.chc-portal .chc-tabs{background:#fff;border:1px solid var(--chc-border);border-radius:8px;box-shadow:var(--chc-shadow);padding:0 8px;gap:2px;margin:0 0 24px}
.chc-portal .chc-tabs a,.chc-portal .chc-dd summary{padding:14px 14px;font-weight:600;font-size:.93rem;color:var(--chc-muted);border-bottom:3px solid transparent;margin-bottom:0}
.chc-portal .chc-tabs a:hover,.chc-portal .chc-tabs a:focus,.chc-portal .chc-dd summary:hover,.chc-portal .chc-dd summary:focus{color:var(--chc-ink);background:none}
.chc-portal .chc-tabs a.is-active,.chc-portal .chc-dd.is-active summary{color:var(--chc-ink);border-bottom-color:var(--chc-accent)}
.chc-portal .chc-dd-menu{border-radius:8px;border-color:var(--chc-border);box-shadow:0 8px 24px rgba(45,62,80,.16);padding:6px;margin-top:2px}
.chc-portal .chc-tabs .chc-dd-menu a{border-radius:6px;padding:9px 12px;color:var(--chc-text)}
.chc-portal .chc-tabs .chc-dd-menu a:hover,.chc-portal .chc-tabs .chc-dd-menu a:focus{background:var(--chc-bg);color:var(--chc-ink)}
.chc-portal .chc-tabs .chc-dd-menu a.is-active{background:var(--chc-accent-l);color:var(--chc-ink)}

/* Cabeceras de página */
.chc-portal .chc-head{margin:0 0 18px;padding:0 0 14px;border-bottom:1px solid var(--chc-line)}
.chc-portal .chc-mx-sub{color:var(--chc-muted)}
.chc-portal .chc-note{background:#eaf6f8;border:1px solid #b6dde4;color:#33566a;border-radius:6px}

/* Botones */
.chc-portal .chc-btn{padding:9px 18px;border-radius:6px;background:var(--chc-accent);border:1px solid var(--chc-accent);color:#fff;font-weight:600;filter:none;transition:background .12s,border-color .12s,box-shadow .12s}
.chc-portal .chc-btn:hover,.chc-portal .chc-btn:focus{background:var(--chc-accent-d);border-color:var(--chc-accent-d);color:#fff;filter:none}
.chc-portal .chc-btn-secondary{background:#fff;color:var(--chc-ink);border-color:var(--chc-border)}
.chc-portal .chc-btn-secondary:hover,.chc-portal .chc-btn-secondary:focus{background:var(--chc-bg);border-color:#99acc2;color:var(--chc-ink)}
.chc-portal .chc-btn-small{padding:5px 11px;font-size:.84rem}
.chc-portal .chc-btn-danger{background:#fff;color:#b42318;border-color:#f1b5ae}
.chc-portal .chc-btn-danger:hover,.chc-portal .chc-btn-danger:focus{background:#fef3f2;border-color:#d92d20;color:#b42318}

/* Tarjetas y paneles */
.chc-portal .chc-card,.chc-portal .chc-phase,.chc-portal .chc-assign,.chc-portal .chc-formbox,.chc-portal .chc-summary,.chc-portal .chc-box-msg,.chc-portal .chc-forum-msg{background:#fff;border:1px solid var(--chc-line);border-radius:8px;box-shadow:var(--chc-shadow)}
.chc-portal .chc-summary{background:#fff}
.chc-portal .chc-card{border-top:3px solid var(--chc-teal)}
.chc-portal .chc-card:hover,.chc-portal .chc-card:focus{box-shadow:0 4px 16px rgba(45,62,80,.14);transform:none;border-color:var(--chc-border)}
.chc-portal .chc-badge{border-radius:4px;font-weight:600;background:#eaf0f6;color:var(--chc-muted);border-color:transparent}
.chc-portal .chc-status-active{background:#e5f5f8;color:#0b6b7b}
.chc-portal .chc-status-paused{background:#fff4e5;color:#93370d}
.chc-portal .chc-status-completed{background:#e7f6ec;color:#1b6b3a}
.chc-portal .chc-bar{height:16px;background:var(--chc-line)}
.chc-portal .chc-bar span{background:var(--chc-teal)}

/* Tablas */
.chc-portal .chc-table{border:1px solid var(--chc-line);border-radius:8px;box-shadow:var(--chc-shadow);border-collapse:separate;border-spacing:0}
.chc-portal .chc-table th{background:#eaf0f6;color:var(--chc-muted);font-size:.82rem;text-transform:none;letter-spacing:0;font-weight:600;padding:11px 14px;border-bottom:1px solid var(--chc-border)}
.chc-portal .chc-table td{padding:12px 14px;border-top:1px solid var(--chc-line)}
.chc-portal .chc-table tbody tr:first-child td{border-top:0}
.chc-portal .chc-table tbody tr:hover td{background:#f9fbfc}
.chc-portal .chc-table td a{font-weight:600}

/* Formularios */
.chc-portal input[type=text],.chc-portal input[type=email],.chc-portal input[type=tel],.chc-portal input[type=number],.chc-portal input[type=date],.chc-portal input[type=password],.chc-portal select,.chc-portal textarea{border:1px solid var(--chc-border);border-radius:4px;background:#fff;color:var(--chc-ink);font-family:inherit}
.chc-portal input:focus,.chc-portal select:focus,.chc-portal textarea:focus{border-color:var(--chc-teal);outline:0;box-shadow:0 0 0 3px rgba(0,164,189,.2)}
.chc-portal .chc-form label{color:var(--chc-ink);font-size:.92rem}
.chc-portal .chc-checks{border-color:var(--chc-border);border-radius:6px}
.chc-portal .chc-chips li{background:#eaf0f6;border-color:transparent;border-radius:999px}
.chc-portal .chc-flash{border-radius:6px;border:1px solid transparent}
.chc-portal .chc-flash-success{background:#e7f6ec;color:#1b6b3a;border-color:#b5e0c5}
.chc-portal .chc-flash-error{background:#fef3f2;color:#b42318;border-color:#fecdca}
.chc-portal .chc-cat{border-radius:4px}

/* Pipeline de iniciativas */
.chc-portal .chc-kcol{background:#eaf0f6;border:0;border-top:4px solid #99acc2;border-radius:8px;padding:12px}
.chc-portal .chc-kcol h3{font-size:.92rem}
.chc-portal .chc-kcol h3 span{background:#fff;color:var(--chc-muted);font-weight:600}
.chc-portal .chc-kcol.is-over{outline:2px dashed var(--chc-teal);background:#e5f5f8}
.chc-portal .chc-kcard{border:1px solid var(--chc-line);border-radius:6px;box-shadow:var(--chc-shadow);padding:12px}
.chc-portal .chc-kamount{color:var(--chc-ink);font-size:1.02rem}

/* Tableros (Consensus, Stakeholders, Impactos) */
.chc-portal .chc-pills a{border-radius:4px;background:#eaf0f6;color:var(--chc-muted)}
.chc-portal .chc-pills a.is-active{background:var(--chc-ink);color:#fff}
.chc-portal .chc-mx-colh{background:var(--chc-ink);border-radius:6px;letter-spacing:0}
.chc-portal .chc-mx-rowh{background:#eaf0f6;border-left:4px solid var(--chc-accent);color:var(--chc-ink)}
.chc-portal .chc-mx-cell,.chc-portal .chc-mx-tray{border:1px solid var(--chc-border);border-radius:8px;box-shadow:none}
.chc-portal .chc-mx-tray{background:#fff;border-style:dashed}
.chc-portal .chc-mx-card{background:#fff;border:1px solid var(--chc-border);border-left:3px solid var(--chc-teal);border-radius:6px;box-shadow:var(--chc-shadow)}
.chc-portal .chc-mx-cell.is-over,.chc-portal .chc-mx-tray.is-over{outline-color:var(--chc-teal);background:#e5f5f8}
.chc-portal .chc-mx-cell.chc-tone.is-over{background:#d5eef3}
.chc-portal .chc-mx-corner{color:var(--chc-muted)}
.chc-portal .chc-acc{background:#fff;border:1px solid var(--chc-line);border-radius:8px;padding:14px 16px;box-shadow:var(--chc-shadow)}
.chc-portal .chc-acc-sw{border-radius:4px}

/* Foro */
.chc-portal .chc-forum-msg.is-first{background:#fff;border-left:4px solid var(--chc-teal)}

/* Pie y acceso */
.chc-portal .chc-logout{margin-top:20px}
.chc-portal.chc-login{background:#fff;border:1px solid var(--chc-line);border-radius:8px;box-shadow:var(--chc-shadow);padding:28px}
@media (max-width:640px){.chc-portal{padding:12px 12px 24px}.chc-portal .chc-tabs a,.chc-portal .chc-dd summary{padding:11px 10px}}
@media (prefers-reduced-motion:reduce){.chc-portal *{transition:none!important}}

/* Logotipo sobre el menú */
.chc-portal .chc-brand{margin:0 0 14px;line-height:0}
.chc-portal .chc-brand{display:flex;align-items:center;gap:12px}
.chc-portal .chc-brand img{display:block;height:44px;width:auto;max-width:100%}
.chc-portal .chc-brand-name{color:var(--chc-text,inherit)}
.chc-portal .chc-brand-links a{font-weight:600;text-decoration:none}
.chc-portal .chc-brand-links a:hover{text-decoration:underline}
.chc-portal .chc-brand-tag{font-size:1.15em;font-weight:600;line-height:1.2;color:var(--chc-muted)}
@media (max-width:640px){.chc-portal .chc-brand img{height:36px}}

/* =====================================================================
   v0.9.0 · Tipografía: Plus Jakarta Sans en todo el portal
   ===================================================================== */
.chc-portal,.chc-project,.chc-lead{--chc-font:"Plus Jakarta Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-family:var(--chc-font)}
.chc-portal *,.chc-project *,.chc-lead *{font-family:inherit}
.chc-portal button,.chc-portal input,.chc-portal select,.chc-portal textarea,.chc-project button,.chc-project input,.chc-project select,.chc-project textarea,.chc-lead input,.chc-lead textarea,.chc-lead button{font-family:inherit}
.chc-portal{font-weight:400;font-feature-settings:"kern" 1;-webkit-font-smoothing:antialiased}
/* Jerarquía por peso: títulos 800/700, etiquetas 600, apoyo 500, cursiva para notas y descripciones */
.chc-portal h1,.chc-portal h2{font-weight:800;letter-spacing:-.02em}
.chc-portal h3,.chc-portal h4{font-weight:700;letter-spacing:-.01em}
.chc-portal .chc-tabs a,.chc-portal .chc-dd summary{font-weight:600}
.chc-portal .chc-tabs a.is-active,.chc-portal .chc-dd.is-active summary{font-weight:700}
.chc-portal .chc-btn{font-weight:700}
.chc-portal .chc-btn-secondary,.chc-portal .chc-btn-danger{font-weight:600}
.chc-portal .chc-table th{font-weight:600}
.chc-portal .chc-table td a{font-weight:700}
.chc-portal .chc-form label,.chc-portal .chc-dl dt{font-weight:600}
.chc-portal .chc-kamount{font-weight:800}
.chc-portal .chc-mx-colh{font-weight:700}
.chc-portal .chc-mx-rowh{font-weight:700}
.chc-portal .chc-mx-cellhead strong{font-weight:700}
.chc-portal .chc-mx-cellhead span,.chc-portal .chc-kcard small,.chc-portal .chc-table .chc-sub,.chc-portal .chc-mx-card small,.chc-portal .chc-card small,.chc-portal .chc-ktotal{font-weight:500;font-style:italic}
.chc-portal .chc-mx-sub,.chc-portal .chc-note,.chc-portal .chc-empty{font-weight:400;font-style:italic}
.chc-portal .chc-badge,.chc-portal .chc-cat,.chc-portal .chc-pills a{font-weight:700}
.chc-portal .chc-forum-msg time{font-weight:500;font-style:italic}
.chc-portal .chc-forum-msg header strong{font-weight:700}
.chc-portal .chc-acc h3{font-weight:700}
.chc-portal .chc-bar em{font-weight:700}

/* Estrategia de gestión de Impacto */
.chc-portal .chc-strategy{background:#fff;border:1px solid var(--chc-line);border-radius:8px;box-shadow:var(--chc-shadow);padding:16px 18px;margin:0 0 20px}
.chc-portal .chc-strategy h3{margin:0 0 10px}
.chc-portal .chc-strategy textarea{width:100%;min-height:120px;padding:10px 12px;resize:vertical;line-height:1.55}
.chc-portal .chc-strategy form p{margin:10px 0 0}
.chc-portal .chc-strategy-read{overflow-wrap:anywhere;line-height:1.6}

/* =====================================================================
   v0.11.0 · Dashboard
   ===================================================================== */
.chc-portal .chc-dash-pick{margin:0 0 18px}
.chc-portal .chc-dash{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:18px;align-items:start}
.chc-portal .chc-dash-card{background:#fff;border:1px solid var(--chc-line);border-radius:8px;box-shadow:var(--chc-shadow);padding:18px 20px 20px;min-width:0}
.chc-portal .chc-dash-card h3{margin:0 0 4px;font-size:1.05rem}
.chc-portal .chc-dash-sub{margin:0 0 14px;color:var(--chc-muted);font-size:.9rem;font-style:italic}
.chc-portal .chc-dash-card>h3+.chc-pie-wrap{margin-top:14px}
.chc-portal .chc-pie-wrap{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.chc-portal .chc-pie{width:190px;height:190px;flex:none}
.chc-portal .chc-pie-n{font-size:30px;font-weight:800;fill:var(--chc-ink);font-family:inherit}
.chc-portal .chc-pie-u{font-size:9.5px;font-weight:500;fill:var(--chc-muted);font-family:inherit}
.chc-portal .chc-legend{list-style:none;margin:0;padding:0;flex:1 1 180px;min-width:180px}
.chc-portal .chc-legend li{display:flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid var(--chc-line)}
.chc-portal .chc-legend li:last-child{border-bottom:0}
.chc-portal .chc-legend .is-zero{opacity:.55}
.chc-portal .chc-sw{width:12px;height:12px;border-radius:3px;flex:none}
.chc-portal .chc-lg-name{flex:1;min-width:0;overflow-wrap:anywhere}
.chc-portal .chc-lg-val{white-space:nowrap}
.chc-portal .chc-lg-val small{color:var(--chc-muted);font-weight:500;margin-left:4px}
.chc-portal .chc-rel{display:flex;align-items:center;gap:20px;margin:6px 0 16px}
.chc-portal .chc-rel-n{font-size:3.2rem;font-weight:800;line-height:1;letter-spacing:-.03em;color:var(--chc-ink)}
.chc-portal .chc-rel-n span{font-size:1.5rem;font-weight:700;margin-left:2px;color:var(--chc-muted)}
.chc-portal .chc-rel-bar{flex:1;height:12px;background:var(--chc-line);border-radius:999px;overflow:hidden}
.chc-portal .chc-rel-bar span{display:block;height:100%;background:var(--chc-teal);border-radius:999px}
.chc-portal .chc-rel-table{box-shadow:none}
.chc-portal .chc-rel-table td:not(:first-child),.chc-portal .chc-rel-table th:not(:first-child){text-align:right;width:28%}
.chc-portal .chc-tabs a,.chc-portal .chc-dd summary{padding-left:11px;padding-right:11px}

/* v0.12.0 · Dashboard en 3 columnas (2 filas) y selector Por etapa / Por dimensión */
.chc-portal .chc-dash{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px){.chc-portal .chc-dash{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:700px){.chc-portal .chc-dash{grid-template-columns:minmax(0,1fr)}}
.chc-portal .chc-pie{width:160px;height:160px}
.chc-portal .chc-pie-wrap{gap:16px}
.chc-portal .chc-legend{flex:1 1 150px;min-width:150px}
.chc-portal .chc-seg>input{position:absolute;opacity:0;width:1px;height:1px}
.chc-portal .chc-seg>label{display:inline-block;padding:5px 12px;margin:0 4px 12px 0;border:1px solid var(--chc-border);border-radius:6px;background:#fff;color:var(--chc-muted);font-weight:600;font-size:.85rem;cursor:pointer}
.chc-portal .chc-seg>input:checked+label{background:var(--chc-ink);border-color:var(--chc-ink);color:#fff}
.chc-portal .chc-seg>input:focus-visible+label{outline:2px solid var(--chc-teal);outline-offset:2px}
.chc-portal .chc-seg-p2{display:none}
.chc-portal .chc-seg>#chc-mxv2:checked~.chc-seg-p1{display:none}
.chc-portal .chc-seg>#chc-mxv2:checked~.chc-seg-p2{display:block}
.chc-portal .chc-dash{align-items:stretch}

/* v0.13.0 · Tablero Consensus 5×5 */
.chc-portal .chc-mx.chc-mx-c5{grid-template-columns:90px repeat(5,minmax(150px,1fr));min-width:860px}
.chc-portal .chc-mx.chc-mx-c5 .chc-mx-corner{font-size:.68em;letter-spacing:.04em;text-align:center;padding:4px}
.chc-portal .chc-mx.chc-mx-c5 .chc-mx-cell{min-height:96px;padding:8px}
.chc-portal .chc-mx.chc-mx-c5 .chc-mx-colh{font-size:.85em}
.chc-portal .chc-cw-n{font-size:3.2rem;font-weight:800;line-height:1;letter-spacing:-.03em;color:var(--chc-ink);margin:2px 0 14px}
.chc-portal .chc-cw-n span{font-size:1.5rem;font-weight:700;margin-left:2px;color:var(--chc-muted)}
.chc-portal .chc-cw-none{color:var(--chc-muted)}
.chc-portal .chc-cw-table{width:100%;border-collapse:collapse}
.chc-portal .chc-cw-table th,.chc-portal .chc-cw-table td{padding:6px 0;border-bottom:1px solid var(--chc-line);text-align:left;font-size:.92rem;font-weight:500}
.chc-portal .chc-cw-table thead th{font-size:.8rem;color:var(--chc-muted);font-weight:600}
.chc-portal .chc-cw-table tbody th{font-weight:600;color:var(--chc-ink);white-space:nowrap;padding-right:12px}
.chc-portal .chc-cw-table th:last-child,.chc-portal .chc-cw-c{text-align:right;width:4.5em}
.chc-portal .chc-cw-bar{width:100%}
.chc-portal .chc-cw-bar span{display:block;height:10px;min-width:0;background:var(--chc-teal);border-radius:999px}

/* Iniciativa estratégica: registro tipo foro con adjuntos */
.chc-portal .chc-strategy-form{margin:0 0 14px}
.chc-portal .chc-strategy-attach{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:10px 0 0}
.chc-portal .chc-strategy-attach small,.chc-portal .chc-strategy .chc-hint{color:var(--chc-muted,#667085)}
.chc-portal .chc-strategy-entry{margin:0 0 10px;padding:12px 14px;border:1px solid var(--chc-line);border-radius:8px;background:#f9fafb}
.chc-portal .chc-strategy-entry .chc-edited{color:var(--chc-muted,#667085);font-size:12px;margin-left:6px}
.chc-portal .chc-files{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.chc-portal .chc-files li{margin:0}
.chc-portal .chc-files a{display:inline-block;padding:4px 10px;border:1px solid var(--chc-line);border-radius:999px;background:#fff;font-size:13px;text-decoration:none}
.chc-portal .chc-strategy-actions{display:flex;gap:10px;align-items:flex-start;margin-top:10px;flex-wrap:wrap}
.chc-portal .chc-strategy-actions form{margin:0}
.chc-portal .chc-strategy-entry details.chc-edit{flex:1 1 100%}
.chc-portal .chc-strategy-entry details.chc-edit textarea{width:100%;min-height:90px}
.chc-portal .chc-form textarea{width:100%;padding:10px 12px;resize:vertical;line-height:1.55}
.chc-portal .chc-knotes{display:block;color:var(--chc-muted,#667085);overflow-wrap:anywhere}
.chc-portal .chc-vendor{margin:0 0 12px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* Impacto Orgánico / Gestionado: las casillas de Nivel 3 crecen con su contenido */
.chc-portal .chc-tree{grid-template-columns:minmax(200px,1fr) minmax(200px,1fr) minmax(260px,1.4fr);min-width:760px}
.chc-portal .chc-tree-cells .chc-mx-cell{flex:1 1 auto;min-height:130px}
.chc-portal .chc-tree-col:last-child .chc-mx-cell{min-height:200px}
.chc-portal .chc-eq{margin:6px 0 12px;display:grid;gap:14px}
.chc-portal .chc-eq dt{font-size:.85rem;font-weight:700;color:var(--chc-muted);text-transform:uppercase;letter-spacing:.04em}
.chc-portal .chc-eq dd{margin:2px 0 0;font-size:1.9rem;font-weight:800;letter-spacing:-.02em;color:var(--chc-ink);overflow-wrap:anywhere}
.chc-portal .chc-eq-h{margin:18px 0 8px;font-size:.85rem;font-weight:700;color:var(--chc-muted);text-transform:uppercase;letter-spacing:.04em}
.chc-portal .chc-msg-bar{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}
.chc-portal .chc-msg-new{margin-left:auto}
.chc-portal .chc-msg-unread td{font-weight:700;background:#f8fafc}
.chc-portal .chc-msg{border:1px solid var(--chc-border);border-radius:10px;padding:12px 14px;margin:0 0 10px;background:#fff;max-width:900px}
.chc-portal .chc-msg header{margin-bottom:8px}
.chc-portal .chc-msg-body{white-space:normal;word-wrap:break-word}
.chc-portal .chc-msg-form{max-width:820px}
.chc-portal .chc-msg-rcpt{border:1px solid var(--chc-border);border-radius:8px;margin:0 0 10px;padding:6px 10px}
.chc-portal .chc-msg-rcpt .chc-opt{display:inline-block;margin:2px 14px 2px 0}
.chc-portal .chc-msgcount{display:inline-block;min-width:18px;padding:0 6px;border-radius:9px;background:#dc2626;color:#fff;font-size:11px;line-height:18px;text-align:center}
.chc-portal .chc-roles{border:0;padding:0;margin:4px 0}
.chc-portal .chc-roles .chc-opt,.chc-portal .chc-roles label{display:inline-block;margin:2px 14px 2px 0}
/* Consensus Matrix: marca de fila (azul = Impacto Orgánico, verde = Impacto Gestionado) y leyenda */
.chc-portal .chc-mx-rowh.chc-mx-rk-opinion,.chc-portal .chc-mx-rowh.chc-mx-rk-knowledge{border-left-color:#2563eb}
.chc-portal .chc-mx-rowh.chc-mx-rk-preference,.chc-portal .chc-mx-rowh.chc-mx-rk-behavior{border-left-color:#16a34a}
.chc-portal .chc-mx-legend{margin:10px 0 0;font-size:.9em}
.chc-portal .chc-lg{display:inline-block;width:12px;height:12px;border-radius:2px;margin:0 6px 0 10px;vertical-align:-1px}
.chc-portal .chc-lg:first-child{margin-left:0}
.chc-portal .chc-lg-blue{background:#2563eb}
.chc-portal .chc-lg-green{background:#16a34a}
.chc-portal .chc-pdf-bar{margin:0 0 10px;text-align:right}
@media print{
	@page{size:landscape;margin:12mm}
	body.chc-print-mode *{visibility:hidden}
	body.chc-print-mode .chc-print-area,body.chc-print-mode .chc-print-area *{visibility:visible}
	body.chc-print-mode .chc-print-area{position:absolute;left:0;top:0;width:100%}
	body.chc-print-mode .chc-print-area button,body.chc-print-mode .chc-print-area .chc-btn,body.chc-print-mode .chc-print-area .chc-inline,body.chc-print-mode .chc-noprint{display:none!important}
	body.chc-print-mode .chc-print-area .chc-mx-scroll{overflow:visible}
	body.chc-print-mode .chc-print-area *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
.chc-portal .chc-tabs a.chc-tab-logout{margin-left:auto}
.chc-portal .chc-team-role{margin:6px 0}.chc-portal .chc-assign-roles{margin:0 0 8px 22px}
.chc-portal .chc-team-role{margin:6px 0}.chc-portal .chc-assign-roles{margin:0 0 8px 22px}
.chc-portal .chc-opt{display:inline-flex;align-items:center;gap:6px;font-weight:400;font-size:.92rem;color:var(--chc-ink)}
.chc-portal .chc-cat.chc-role-tag{background:#dcfce7;color:#166534;margin-right:4px}

/* Keep */
.chc-portal .chc-keep-nav{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.chc-portal .chc-keep-nav a{padding:5px 12px;border:1px solid #d1d5db;border-radius:16px;text-decoration:none;color:inherit;font-size:14px}
.chc-portal .chc-keep-nav a.is-active{background:#1f2937;color:#fff;border-color:#1f2937}
.chc-portal .chc-keep-search{margin:0 0 6px}
.chc-portal .chc-keep-card,.chc-portal .chc-keep-card h3,.chc-portal .chc-keep-card small{color:#1f2937}
.chc-portal .chc-keep-snippet{margin:0 0 8px;overflow-wrap:anywhere}
.chc-portal .chc-keep-sheet{border:1px solid var(--chc-border);border-radius:12px;padding:18px;color:#1f2937;margin-top:12px}
.chc-portal .chc-keep-sheet .chc-desc,.chc-portal .chc-keep-sheet small{color:#1f2937}
.chc-portal .chc-keep-list{list-style:none;margin:10px 0 0;padding:0}
.chc-portal .chc-keep-list li{margin:4px 0;overflow-wrap:anywhere}
.chc-portal .chc-keep-list li.is-done span{text-decoration:line-through;opacity:.6}
.chc-portal .chc-keep-check{background:none;border:0;padding:0;cursor:pointer;font-size:20px;line-height:1;color:inherit}
.chc-portal .chc-keep-labels{margin:12px 0 8px}
.chc-portal .chc-keep-label{display:inline-block;padding:1px 8px;border-radius:10px;background:rgba(0,0,0,.08);color:#1f2937;font-size:12px;text-decoration:none}
.chc-portal .chc-keep-nav a.chc-keep-label.is-active{background:#1f2937;color:#fff}

/* Calendario */
.chc-portal .chc-cal-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0}
.chc-portal .chc-cal-bar .chc-keep-nav{margin:0}
.chc-portal .chc-cal-title{margin-left:8px;font-size:1.15em;display:inline-block}
.chc-portal .chc-cal-title::first-letter,.chc-portal .chc-cal-ag h3::first-letter{text-transform:uppercase}
.chc-portal .chc-cal-filters{margin:0 0 10px;display:flex;flex-wrap:wrap;gap:6px 16px}
.chc-portal .chc-cal-dot{display:inline-block;width:12px;height:12px;border-radius:3px;margin:0 4px 0 2px;border:1px solid rgba(0,0,0,.25);vertical-align:-1px}
.chc-portal .chc-cal-scroll{overflow-x:auto}
.chc-portal .chc-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));width:100%;min-width:700px;box-sizing:border-box;background:#fff;color:#1f2937;border:1px solid #cfd5dd;border-radius:10px;overflow:hidden}
.chc-portal .chc-cal-hd{padding:6px;text-align:center;font-size:13px;font-weight:600;background:#f3f4f6;border-right:1px solid #dde2e8;border-bottom:1px solid #cfd5dd;box-sizing:border-box;min-width:0}
.chc-portal .chc-cal-day{min-width:0;min-height:104px;box-sizing:border-box;padding:4px;overflow:hidden;border-right:1px solid #dde2e8;border-bottom:1px solid #dde2e8;background:#fff}
.chc-portal .chc-cal-week .chc-cal-day{min-height:300px}
.chc-portal .chc-cal-hd:nth-child(7n),.chc-portal .chc-cal-day:nth-child(7n+7){border-right:0}
.chc-portal .chc-cal-day.is-out{background:#f9fafb}
.chc-portal .chc-cal-day.is-out .chc-cal-dn a{opacity:.5}
.chc-portal .chc-cal-day.is-today{background:#eff6ff}
.chc-portal .chc-cal-dn{text-align:right;margin-bottom:2px}
.chc-portal .chc-cal-dn a{display:inline-block;min-width:22px;padding:1px 4px;border-radius:11px;text-align:center;font-size:12px;text-decoration:none;color:#1f2937}
.chc-portal .chc-cal-day.is-today .chc-cal-dn a{background:#2563eb;color:#fff}
.chc-portal .chc-cal-item{display:block;margin:2px 0;padding:1px 6px;border-radius:4px;font-size:12px;line-height:1.5;color:#1f2937;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chc-portal .chc-cal-item:hover,.chc-portal .chc-cal-item:focus{filter:brightness(.95);text-decoration:underline}
.chc-portal .chc-cal-item.is-done{opacity:.6;text-decoration:line-through}
.chc-portal .chc-cal-more{display:block;font-size:12px;padding:0 6px}
.chc-portal .chc-cal-agenda{max-width:760px}
.chc-portal .chc-cal-ag{border-bottom:1px solid var(--chc-border);padding:8px 0}
.chc-portal .chc-cal-ag h3{margin:0 0 6px;font-size:1em}
.chc-portal .chc-cal-ag.is-today h3{color:#2563eb}
.chc-portal .chc-cal-ag .chc-cal-item{white-space:normal;font-size:14px;padding:3px 8px}
.chc-portal .chc-cal-tip{display:block;color:var(--chc-muted);margin:0 0 4px 8px}
@media print{.chc-portal .chc-cal-filters,.chc-portal .chc-cal-nav .chc-btn{display:none}.chc-portal .chc-cal{min-width:0}}
.chc-portal .chc-kshare{display:block;margin-top:4px;color:var(--chc-muted);font-weight:600}
.chc-portal.chc-login .chc-brand-left{flex-wrap:wrap!important;row-gap:4px!important}
/* Content Library */
.chc-portal .chc-content-trays{margin:0 0 14px;flex-wrap:wrap}
.chc-portal .chc-content-pick{margin:0 0 16px}
.chc-portal .chc-inline{display:inline}
.chc-portal .chc-wys{border:1px solid var(--chc-border,#cbd5e1);border-radius:8px;background:#fff;overflow:hidden}
.chc-portal .chc-wys-bar{display:flex;flex-wrap:wrap;gap:4px;padding:6px;border-bottom:1px solid var(--chc-border,#e2e8f0);background:#f8fafc}
.chc-portal .chc-wys-bar button{border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:6px;padding:4px 10px;font-size:.85em;cursor:pointer;min-height:32px}
.chc-portal .chc-wys-bar button:hover{background:#eef2f6}
.chc-portal .chc-wys-area{min-height:280px;padding:14px;outline:0;line-height:1.55}
.chc-portal .chc-wys-area:focus{box-shadow:inset 0 0 0 2px var(--chc-accent,#0c343d)}
.chc-portal .chc-wys-area h2,.chc-portal .chc-wys-area h3{margin:.8em 0 .4em}
.chc-portal .chc-wys-area blockquote{margin:.8em 0;padding-left:12px;border-left:3px solid #cbd5e1;color:#475569}
.chc-portal .chc-task-edit{margin-top:6px;font-size:.85em}
.chc-portal .chc-task-edit summary{cursor:pointer;color:#1f7a6d;font-weight:600}
.chc-portal .chc-task-edit form{flex-direction:column;align-items:stretch;gap:6px}
.chc-portal .chc-task-edit input{width:100%;box-sizing:border-box;padding:3px 4px;border:1px solid #cbd5e1;border-radius:6px;font:inherit}
