  /* ---- Equipo: banners, toolbar, forms, catálogos, organigrama ---- */
  .banner-warning{
    display:flex; gap:.6rem; align-items:flex-start;
    background:var(--warn-soft); color:var(--warn); border:1px solid var(--warn);
    border-radius:var(--radius-m); padding:.85rem 1rem; font-size:13px; margin-bottom:1.2rem;
  }
  .banner-warning code{font-family:var(--font-mono); font-size:12px; background:rgba(0,0,0,.08); padding:.1rem .3rem; border-radius:4px;}
  .toolbar-row{display:flex; align-items:center; justify-content:space-between; gap:.8rem; flex-wrap:wrap; margin-bottom:1rem;}
  .toolbar-actions{display:flex; gap:.5rem; flex-wrap:wrap;}
  .form-grid{display:grid; grid-template-columns:1fr 1fr; gap:.9rem;}
  @media (max-width:560px){ .form-grid{grid-template-columns:1fr;} }
  .form-field{display:flex; flex-direction:column; gap:.35rem;}
  .form-field.span-2{grid-column:1 / -1;}
  .form-field label{font-size:11.5px; font-weight:600; color:var(--text-dim); text-transform:uppercase; letter-spacing:.04em;}
  .form-field input, .form-field select, .form-field textarea{
    height:36px; border-radius:var(--radius-s); border:1px solid var(--border); background:var(--bg);
    color:var(--text); padding:0 .65rem; font-size:13.5px; font-family:inherit;
  }
  .form-field textarea{height:auto; padding:.5rem .65rem; min-height:64px; resize:vertical;}
  .form-field input:focus, .form-field select:focus, .form-field textarea:focus{outline:none; border-color:var(--accent);}
  .form-actions{display:flex; justify-content:flex-end; gap:.6rem; margin-top:.4rem;}
  .checkbox-list{display:flex; flex-direction:column; gap:.4rem; max-height:160px; overflow-y:auto; border:1px solid var(--border-soft); border-radius:var(--radius-s); padding:.6rem;}
  .checkbox-row{display:flex; align-items:center; gap:.5rem; font-size:13px;}
  .catalog-list{display:flex; flex-direction:column; gap:.4rem; margin-bottom:.8rem;}
  .catalog-row{display:flex; align-items:center; gap:.5rem; padding:.4rem .55rem; border:1px solid var(--border-soft); border-radius:var(--radius-s); font-size:13px;}
  .catalog-row input[type="text"]{flex:1; border:none; background:none; font-size:13px; color:var(--text); font-family:inherit;}
  .catalog-row input[type="text"]:focus{outline:none;}
  .catalog-add-row{display:flex; gap:.5rem;}
  .catalog-add-row input{flex:1; height:34px; border-radius:var(--radius-s); border:1px solid var(--border); background:var(--bg); padding:0 .6rem; font-size:13px; font-family:inherit;}
  .equipo-tabs{display:flex; gap:.4rem;}
  .org-tree{display:flex; flex-direction:column; gap:.3rem;}
  .org-node{
    display:flex; align-items:center; gap:.6rem; padding:.55rem .7rem; border-radius:var(--radius-s);
    border:1px solid var(--border-soft); background:var(--bg-elev); cursor:pointer; font-size:13px;
  }
  .org-node:hover{border-color:var(--accent);}
  .org-node .org-cargo{color:var(--text-faint); font-size:11.5px;}
  .empty-inline{color:var(--text-faint); font-size:13px; padding:1rem 0;}
  .modal.modal-wide{max-width:720px;}

  /* ---- perfil de puesto (migración 006) ---- */
  .avatar-sm{width:26px; height:26px; font-size:11px; flex:none;}
  .perfil-section{display:flex; flex-direction:column; gap:.5rem;}
  .perfil-section h4{font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--text-faint); margin:0;}
  .perfil-divider{border:none; border-top:1px solid var(--border-soft); margin:0;}
  .perfil-item{display:flex; align-items:center; gap:.5rem; font-size:13px; padding:.35rem 0;}
  .perfil-item button{margin-left:auto; border:none; background:none; color:var(--text-faint); cursor:pointer; flex:none;}
  .perfil-item button:hover{color:var(--bad);}
  .perfil-add-row{display:flex; gap:.5rem;}
  .perfil-add-row input{flex:1; height:34px; border-radius:var(--radius-s); border:1px solid var(--border); background:var(--bg); padding:0 .6rem; font-size:13px; font-family:inherit; color:var(--text);}

