/* Identidad visual de Gestión CVM, alineada con reportes.php */
:root{--verbo-primary:#0036E1;--verbo-primary-dark:#002BB5;--verbo-primary-soft:#E6EDFF;--verbo-ink:#20243a;--verbo-muted:#697386;--verbo-border:#e7eaf0;--verbo-bg:#f5f7fb;--verbo-shadow:0 4px 18px rgba(25,32,56,.04);--verbo-radius:16px}
html{scroll-behavior:smooth}
body{background:var(--verbo-bg);color:var(--verbo-ink);font-family:Montserrat,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{color:var(--verbo-ink);font-weight:750;letter-spacing:-.025em}
p,small,.form-text{color:var(--verbo-muted)}
.card,.modal-content,.dropdown-menu{border:1px solid var(--verbo-border);border-radius:var(--verbo-radius);box-shadow:var(--verbo-shadow);background:#fff}
.card .card-header{border-bottom-color:var(--verbo-border);background:#fff}
.btn{min-height:38px;border-radius:9px;font-weight:650;letter-spacing:0;text-transform:none;box-shadow:none;transition:background .18s,border-color .18s,box-shadow .18s}
.btn:hover{transform:translateY(-1px)}
.btn-primary,.bg-gradient-primary,.btn.bg-gradient-info{background:var(--verbo-primary)!important;background-image:none!important;border-color:var(--verbo-primary)!important;color:#fff!important}
.btn-primary:hover,.btn.bg-gradient-info:hover{background:var(--verbo-primary-dark)!important;border-color:var(--verbo-primary-dark)!important;box-shadow:0 7px 18px rgba(0,54,225,.18)}
.btn-outline-primary{color:var(--verbo-primary);border-color:var(--verbo-primary)}
.form-control,.form-select,.select2-container--default .select2-selection--single{min-height:43px;border:1px solid #dfe3ec;border-radius:9px;color:var(--verbo-ink);background:#fff;box-shadow:none;font-size:14px}
.form-control:focus,.form-select:focus{border-color:#7DA0FF;box-shadow:0 0 0 .2rem rgba(0,54,225,.12)}
.form-label{color:#41485b;font-size:13px;font-weight:650;margin-bottom:7px}
.table{color:var(--verbo-ink);border-color:var(--verbo-border)}
.table thead th{color:#4c5567;background:#f7f8fc;font-weight:700;white-space:nowrap}
.table>:not(caption)>*>*{padding:10px 12px;vertical-align:middle}
.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg:#fafbfe}
.accordion-item{border:1px solid var(--verbo-border);border-radius:10px!important;overflow:hidden}
.accordion-button{color:var(--verbo-ink);font-weight:650}
.accordion-button:not(.collapsed){color:var(--verbo-primary);background:#F1F5FF;box-shadow:none}
.modal-header,.modal-footer{border-color:var(--verbo-border)}
.text-primary,.text-info{color:var(--verbo-primary)!important}
.badge.bg-primary,.bg-primary{background-color:var(--verbo-primary)!important}
#loader{position:fixed!important;backdrop-filter:blur(3px)}
/* Componentes compartidos idénticos a reportes.php */
.report-shell{max-width:1440px;margin:0 auto;padding:28px 22px 56px}
.report-topbar{background:#fff;border:1px solid var(--verbo-border);border-radius:16px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;box-shadow:var(--verbo-shadow)}
.report-brand{display:flex;align-items:center;gap:12px}
.report-brand-mark{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--verbo-primary-soft);color:var(--verbo-primary);font-size:20px}
.report-brand h1{font-size:19px;font-weight:750;margin:0;color:var(--verbo-ink)}
.report-brand p{margin:3px 0 0;font-size:13px;color:var(--verbo-muted)}
.report-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.report-actions .btn{margin:0;border-radius:9px}
.report-intro{margin:28px 0 20px}
.report-intro h2{font-size:26px;font-weight:750;margin:0 0 6px;color:var(--verbo-ink)}
.report-intro p{margin:0;color:var(--verbo-muted);max-width:780px}
.report-section{background:#fff;border:1px solid var(--verbo-border);border-radius:16px;padding:22px;margin-top:20px;box-shadow:var(--verbo-shadow)}
/* Inicio: accesos y herramientas de consulta conservados */
.verbo-home{min-height:100vh}
.verbo-home>header{margin:0;padding:0}
.verbo-home-shell{padding-top:28px}
.verbo-home-shell>.report-intro{margin:28px 0 18px}
.verbo-home-shell>.container{max-width:none;padding:0}
.verbo-home-shell>.container .row{margin-left:-10px;margin-right:-10px}
.verbo-home-shell .verbo-module-card{height:100%;min-height:150px;border:1px solid var(--verbo-border);border-radius:14px;box-shadow:var(--verbo-shadow);transition:transform .18s,box-shadow .18s}
.verbo-home-shell a .verbo-module-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(25,32,56,.09)}
.verbo-home-shell .verbo-module-card .card-body{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:145px;padding:22px!important}
.verbo-home-shell .verbo-module-card .icon{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:var(--verbo-primary-soft);color:var(--verbo-primary)}
.verbo-home-shell .verbo-module-card .icon i{font-size:23px;color:var(--verbo-primary)}
.verbo-home-shell .verbo-module-card h5{font-size:16px;margin:16px 0 0;color:var(--verbo-ink)}
.verbo-home-shell .verbo-module-disabled{background:#fafbfe;box-shadow:none;opacity:.78}
.verbo-home-shell .verbo-module-disabled .card-body{min-height:145px}
.verbo-home-shell .verbo-module-disabled p{font-size:12px;margin:7px 0 0}
.verbo-home-shell #formSearch{margin-top:20px}
.verbo-home-shell #formSearch>.container{max-width:none;padding:0}
.verbo-home-shell #formSearch .row{margin:0;padding:22px!important;border:1px solid var(--verbo-border);border-radius:14px;background:#fff;box-shadow:var(--verbo-shadow)}
.verbo-home-shell #formSearch center{width:100%;margin-bottom:18px}
.verbo-home-shell #formSearch .btn-success{background:var(--verbo-primary);border-color:var(--verbo-primary)}
.verbo-home-shell #formSearch label{font-size:13px;font-weight:650;color:#41485b;margin-bottom:7px}
/* Usuarios */
.verbo-usuarios{min-height:100vh}
.verbo-usuarios main.main-content{max-width:1484px;margin:0 auto}
.verbo-users-shell{padding-top:28px}
.verbo-users-shell .report-intro{margin:28px 0 20px}
.verbo-usuarios .container-fluid.py-4{padding:0!important}
.verbo-usuarios .card.mb-4{border:1px solid var(--verbo-border);border-radius:16px;box-shadow:var(--verbo-shadow)}
.verbo-usuarios .card-header{padding:20px 22px!important}
.verbo-usuarios .card-header h6{font-size:18px;color:var(--verbo-ink);font-weight:750}
.verbo-usuarios .card-header center{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.verbo-usuarios .table-responsive{padding:16px 22px!important}
.verbo-usuarios .fixed-plugin,.verbo-usuarios footer{display:none!important}
/* Talleres: cada bloque informativo, tabla y registro conserva su contenido */
.verbo-talleres{min-height:100vh}
.verbo-talleres>header.report-topbar,.verbo-talleres>.report-intro{max-width:1396px;margin-left:auto;margin-right:auto}
.verbo-talleres>header.report-topbar{margin-top:28px;padding:16px 20px}
.verbo-talleres>.report-intro{margin-top:28px;margin-bottom:20px;padding:0 22px}
.verbo-talleres .container.py-5,.verbo-talleres .container.mt-4{max-width:1396px;margin:18px auto;padding:22px!important;border:1px solid var(--verbo-border);border-radius:16px;background:#fff;box-shadow:var(--verbo-shadow)}
.verbo-talleres .container.py-5 h1{font-size:24px;text-align:left!important}
.verbo-talleres .container.py-5 h4,.verbo-talleres .container.mt-4 h2{font-weight:750}
.verbo-talleres #containerTableLimits,.verbo-talleres #tituloTaller{padding:20px;border:1px solid var(--verbo-border);border-radius:14px;background:#fff}
.verbo-talleres #formRegistroTalleres{padding:20px;border:1px solid var(--verbo-border);border-radius:14px;background:#fafbfe}
.verbo-talleres #imgTalleres{max-width:100%;height:auto!important;margin:22px auto}
.verbo-talleres iframe{max-width:100%;border-radius:12px}
/* Otras pantallas de gestión */
.verbo-actualizar header .card{margin-top:0!important}
.verbo-actualizar #formActualizarUsuarios{row-gap:16px}
.verbo-comprobante section.container{max-width:1440px;margin:0 auto 28px!important;padding:0 22px}
.verbo-comprobante section .card{max-width:760px;margin:0 auto;padding:24px!important}
.verbo-comprobante section .card h3{font-size:22px;text-align:left!important}
.verbo-login{background:var(--verbo-bg)!important}
.verbo-login .main-content{min-height:100vh}
.verbo-login .page-header{min-height:100vh!important;background:var(--verbo-bg)!important}
.verbo-login .card.card-plain{margin-top:0!important;padding:26px!important;border:1px solid var(--verbo-border);border-radius:16px;background:#fff;box-shadow:var(--verbo-shadow)}
.verbo-login .card-header{padding:0 0 18px!important}
.verbo-login .card-header h3{color:var(--verbo-ink)!important;font-size:26px}
.verbo-login .oblique{display:none!important}
.verbo-login .col-xl-4.col-lg-5.col-md-6{max-width:480px}
@media(max-width:767px){
 .report-shell{padding:14px 12px 36px}
 .report-topbar{padding:14px}
 .report-intro{margin:22px 0 16px}
 .report-intro h2{font-size:22px}
 .verbo-home-shell .verbo-module-card,.verbo-home-shell .verbo-module-card .card-body{min-height:112px}
 .verbo-home-shell #formSearch .row{padding:15px!important}
 .verbo-usuarios .report-shell{padding:14px 12px 36px}
 .verbo-usuarios .card-header center{justify-content:stretch}
 .verbo-usuarios .card-header center .btn{flex:1}
 .verbo-talleres>header.report-topbar{margin:14px 12px 0}
 .verbo-talleres>.report-intro{padding:0 12px}
 .verbo-talleres .container.py-5,.verbo-talleres .container.mt-4{padding:16px!important;margin:14px 12px}
 .verbo-comprobante section.container{padding:0 12px}
 .verbo-comprobante section .card{padding:18px!important}
 .verbo-login .card.card-plain{padding:20px!important}
}

/* Tablas e iconografía: lenguaje visual consistente con Reportes */
.verbo-page .table-responsive{
  border:1px solid var(--verbo-border);
  border-radius:12px;
  background:#fff;
  overflow-x:auto;
}
.verbo-page table.table{
  width:100%;
  margin:0;
  color:var(--verbo-ink);
  font-size:13px;
  border-color:var(--verbo-border);
  background:#fff;
}
.verbo-page table.table thead th{
  padding:13px 14px;
  color:#4c5567!important;
  background:#f4f5fa!important;
  border-bottom:1px solid var(--verbo-border);
  font-size:11px;
  font-weight:750;
  letter-spacing:.035em;
  text-transform:uppercase;
  white-space:nowrap;
  vertical-align:middle;
}
.verbo-page table.table tbody td,
.verbo-page table.table tbody th{
  padding:12px 14px;
  color:var(--verbo-ink);
  border-color:#edf0f5;
  vertical-align:middle;
}
.verbo-page table.table tbody tr{transition:background-color .15s ease}
.verbo-page table.table tbody tr:hover>*{background:#f7f6fd!important;color:var(--verbo-ink)}
.verbo-page table.table.table-striped>tbody>tr:nth-of-type(odd)>*{
  --bs-table-accent-bg:#fafbfe;
  background-color:#fafbfe;
}
.verbo-page table.table thead.table-dark th,
.verbo-page table.table thead.table-dark{
  color:#4c5567!important;
  background:#f4f5fa!important;
}
.verbo-page table.table thead.bg-light th{background:#f4f5fa!important}
.verbo-page .dataTables_wrapper{color:var(--verbo-muted);font-size:13px}
.verbo-page .dataTables_wrapper .dataTables_length,
.verbo-page .dataTables_wrapper .dataTables_filter,
.verbo-page .dataTables_wrapper .dataTables_info,
.verbo-page .dataTables_wrapper .dataTables_paginate{padding:12px 0;color:var(--verbo-muted)}
.verbo-page .dataTables_wrapper .dataTables_filter input,
.verbo-page .dataTables_wrapper .dataTables_length select{
  min-height:36px;border:1px solid #dfe3ec;border-radius:8px;padding:6px 10px;
  color:var(--verbo-ink);background:#fff;outline:0;
}
.verbo-page .dataTables_wrapper .dataTables_paginate .paginate_button{
  min-width:34px;margin:0 2px;padding:6px 10px!important;
  border:1px solid transparent!important;border-radius:8px!important;
  color:var(--verbo-muted)!important;background:transparent!important;
}
.verbo-page .dataTables_wrapper .dataTables_paginate .paginate_button.current,
.verbo-page .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{
  color:#fff!important;background:var(--verbo-primary)!important;border-color:var(--verbo-primary)!important;
}
.verbo-page .dataTables_wrapper .dataTables_paginate .paginate_button:hover{
  color:var(--verbo-primary)!important;background:var(--verbo-primary-soft)!important;border-color:var(--verbo-primary-soft)!important;
}
.verbo-page .dataTables_wrapper .dataTables_empty{padding:24px!important;color:var(--verbo-muted)}
/* Iconos Font Awesome y Material Kit: morado institucional, sin sombras heredadas */
.verbo-page .report-brand-mark i,
.verbo-page .btn i,
.verbo-page .table i,
.verbo-page .card-header i,
.verbo-page .report-section-heading i{
  line-height:1;vertical-align:middle;
}
.verbo-page .report-brand-mark i{color:var(--verbo-primary)}
.verbo-page .btn i{font-size:.95em}
.verbo-page .table .btn{min-height:32px;padding:6px 10px;font-size:12px}
.verbo-page .table .btn i{margin:0!important}
.verbo-page .table .text-primary,
.verbo-page .table .text-info,
.verbo-page .table .fa,
.verbo-page .table .fas,
.verbo-page .table .far,
.verbo-page .table .fab{color:var(--verbo-primary)}
.verbo-page .icon.icon-shape{
  width:46px;height:46px;display:grid;place-items:center;
  border-radius:12px;background:var(--verbo-primary-soft)!important;
  color:var(--verbo-primary)!important;box-shadow:none!important;
}
.verbo-page .icon.icon-shape i{
  position:static!important;inset:auto!important;
  color:var(--verbo-primary)!important;font-size:20px!important;
  transform:none!important;
}
.verbo-page .verbo-module-card h5,
.verbo-page .verbo-module-card h5 span{color:var(--verbo-ink)!important}
.verbo-page .verbo-module-card .mask{display:none}
.verbo-page .alert{border:1px solid var(--verbo-border);border-radius:12px}
.verbo-page .badge{border-radius:7px;padding:5px 8px;font-weight:650}
@media(max-width:767px){
  .verbo-page table.table{font-size:12px}
  .verbo-page table.table thead th,
  .verbo-page table.table tbody td,
  .verbo-page table.table tbody th{padding:10px}
  .verbo-page .dataTables_wrapper .dataTables_length,
  .verbo-page .dataTables_wrapper .dataTables_filter{text-align:left;margin-bottom:8px}
  .verbo-page .dataTables_wrapper .dataTables_filter input{max-width:150px}
}

/* Acceso: pantalla limpia, centrada y alineada con la identidad de Reportes */
body.verbo-login{
  min-width:320px;
  min-height:100vh;
  margin:0;
  background:
    radial-gradient(ellipse at 12% 8%,rgba(0,54,225,.07),transparent 34%),
    radial-gradient(ellipse at 88% 92%,rgba(0,54,225,.055),transparent 30%),
    var(--verbo-bg)!important;
}
.verbo-login .login-page{
  min-height:100vh;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:42px 20px 22px;
}
.verbo-login .login-card{
  width:min(100%,460px);
  padding:38px 40px 28px;
  background:#fff;
  border:1px solid var(--verbo-border);
  border-radius:20px;
  box-shadow:0 16px 48px rgba(32,36,58,.075);
}
.verbo-login .login-brand{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin-bottom:36px;
}
.verbo-login .login-brand-mark{
  width:48px;height:48px;
  display:grid;place-items:center;
  border-radius:14px;
  color:var(--verbo-primary);
  background:var(--verbo-primary-soft);
  font-size:22px;
}
.verbo-login .login-brand-copy{display:flex;flex-direction:column;gap:2px;line-height:1.15}
.verbo-login .login-brand-copy span{
  color:var(--verbo-muted);font-size:10px;font-weight:750;letter-spacing:.18em
}
.verbo-login .login-brand-copy strong{
  color:var(--verbo-ink);font-size:15px;font-weight:800;letter-spacing:.045em
}
.verbo-login .login-heading{text-align:center;margin-bottom:30px}
.verbo-login .login-eyebrow{
  display:inline-block;margin-bottom:10px;
  color:var(--verbo-primary);font-size:10px;font-weight:800;letter-spacing:.14em
}
.verbo-login .login-heading h1{
  margin:0 0 8px;color:var(--verbo-ink);
  font-size:30px;font-weight:800;letter-spacing:-.04em
}
.verbo-login .login-heading p{
  max-width:320px;margin:0 auto;color:var(--verbo-muted);
  font-size:13px;line-height:1.6
}
.verbo-login .login-form{display:flex;flex-direction:column;gap:19px}
.verbo-login .login-field label{
  display:block;margin:0 0 8px;
  color:#41485b;font-size:12px;font-weight:700
}
.verbo-login .login-input-wrap{position:relative}
.verbo-login .login-input-wrap>i:first-child{
  position:absolute;z-index:2;left:14px;top:50%;transform:translateY(-50%);
  color:#9299a9;font-size:14px;pointer-events:none
}
.verbo-login .login-input-wrap .form-control{
  width:100%;height:48px;min-height:48px;
  padding:0 46px 0 42px;
  border:1px solid #dfe3ec;border-radius:10px;
  background:#fff;color:var(--verbo-ink);
  font-size:13px;box-shadow:none
}
.verbo-login .login-input-wrap .form-control::placeholder{color:#a0a6b3}
.verbo-login .login-input-wrap .form-control:focus{
  border-color:#7DA0FF;box-shadow:0 0 0 3px rgba(0,54,225,.11)
}
.verbo-login .login-password-toggle{
  position:absolute;z-index:3;right:10px;top:50%;transform:translateY(-50%);
  width:34px;height:34px;display:grid;place-items:center;
  border:0;border-radius:8px;background:transparent;color:#81899a;
  cursor:pointer
}
.verbo-login .login-password-toggle:hover{
  color:var(--verbo-primary);background:var(--verbo-primary-soft)
}
.verbo-login .login-submit{
  width:100%;height:48px;min-height:48px;
  display:flex;align-items:center;justify-content:center;gap:10px;
  margin:7px 0 0;padding:0 18px;
  border:1px solid var(--verbo-primary);border-radius:10px;
  background:var(--verbo-primary);color:#fff;
  font-size:13px;font-weight:750;letter-spacing:.01em;
  box-shadow:0 7px 16px rgba(0,54,225,.16)
}
.verbo-login .login-submit:hover{
  background:var(--verbo-primary-dark);border-color:var(--verbo-primary-dark);
  color:#fff;transform:translateY(-1px)
}
.verbo-login .login-submit>i{font-size:12px}
.verbo-login .login-submit .spinner-border{display:none;width:15px;height:15px;border-width:2px}
.verbo-login .login-footer{
  display:flex;align-items:center;justify-content:center;gap:8px;
  margin-top:27px;padding-top:20px;
  border-top:1px solid #edf0f5;
  color:var(--verbo-muted);font-size:11px
}
.verbo-login .login-footer-mark{color:var(--verbo-primary);font-size:12px}
.verbo-login .login-copyright{
  margin-top:22px;color:#9299a9;font-size:11px;text-align:center
}
@media(max-width:520px){
  .verbo-login .login-page{justify-content:center;padding:24px 14px 18px}
  .verbo-login .login-card{padding:30px 22px 24px;border-radius:16px}
  .verbo-login .login-brand{margin-bottom:30px}
  .verbo-login .login-heading h1{font-size:27px}
  .verbo-login .login-copyright{margin-top:16px}
}



/* Modal de Registro de Entrada: contenido alineado con Reportes */
.verbo-entry-modal .modal-dialog{max-width:1120px}
.verbo-entry-modal .modal-content{overflow:hidden;border:1px solid var(--verbo-border);border-radius:18px;box-shadow:0 18px 55px rgba(25,32,56,.16)}
.verbo-entry-modal .verbo-entry-header{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;background:#fff;border-bottom:1px solid var(--verbo-border)}
.verbo-entry-heading{display:flex;align-items:center;gap:14px}
.verbo-entry-icon{width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px;border-radius:13px;background:var(--verbo-primary-soft);color:var(--verbo-primary);font-size:20px}
.verbo-entry-heading .modal-title{margin:0;color:var(--verbo-ink);font-size:19px;font-weight:750}
.verbo-entry-heading p{margin:4px 0 0;color:var(--verbo-muted);font-size:12px}
.verbo-entry-body{padding:22px 26px 18px;background:#fff}
.verbo-entry-guide{display:flex;align-items:flex-start;gap:10px;margin-bottom:18px;padding:12px 14px;border:1px solid #e6e2f7;border-radius:10px;background:#f8f7fd;color:#5e5a75;font-size:12px;line-height:1.55}
.verbo-entry-guide i{margin-top:2px;color:var(--verbo-primary)}
.verbo-entry-table-wrap{overflow:auto;border:1px solid var(--verbo-border);border-radius:12px}
.verbo-entry-table{min-width:760px;font-size:13px}
.verbo-entry-table thead th{padding:13px 14px!important;background:#f4f5fa!important;color:#4c5567!important;border-bottom:1px solid var(--verbo-border)!important;font-size:10px;font-weight:800;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap}
.verbo-entry-table tbody tr.verbo-entry-person-row td{padding:15px 14px!important;background:#fff;border-top:1px solid #edf0f5}
.verbo-entry-table tbody tr.verbo-entry-person-row:hover td{background:#faf9fe}
.verbo-entry-person-name{margin:0 0 4px;color:var(--verbo-ink);font-size:13px;font-weight:750}
.verbo-entry-person-meta,.verbo-entry-person-contact{margin:0;color:var(--verbo-muted);font-size:11px;line-height:1.55}
.verbo-entry-table .form-check{min-height:22px;margin:0;display:flex;align-items:center;gap:8px}
.verbo-entry-table .form-check-input{width:17px;height:17px;margin:0;float:none;accent-color:var(--verbo-primary);cursor:pointer}
.verbo-entry-table .form-check-input:disabled{opacity:.45;cursor:not-allowed}
.verbo-entry-table .badge{font-size:10px;letter-spacing:.02em}
.verbo-entry-table .bg-success{background:#e8f5ee!important;color:#247447!important}
.verbo-entry-table .bg-danger{background:#fff0f0!important;color:#b23b45!important}
.verbo-entry-table .btn{min-height:31px;padding:6px 10px;font-size:11px}
.verbo-entry-table .verbo-payment-button{color:#9a5b13;border-color:#f0d5ad;background:#fffaf2}
.verbo-entry-table .verbo-payment-button:hover{color:#75420a;border-color:#e6c18c;background:#fff3df}
.verbo-entry-table tr.verbo-entry-food-row td{padding:10px 14px 13px!important;background:#fafbfe;border-bottom:1px solid var(--verbo-border)}
.verbo-entry-table .verbo-food-button{margin:2px 5px 2px 0;color:var(--verbo-primary);border-color:#d9d4ef;background:#fff}
.verbo-entry-table .verbo-food-button:hover{color:#fff;background:var(--verbo-primary);border-color:var(--verbo-primary)}
.verbo-entry-submit{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px}
.verbo-entry-submit-note{color:var(--verbo-muted);font-size:11px}
.verbo-entry-submit-note i{color:var(--verbo-primary)}
.verbo-entry-submit .btn{min-width:190px;padding:11px 16px}
.verbo-entry-submit .spinner-border{display:none;width:14px;height:14px;margin-right:7px;border-width:2px}
.verbo-entry-footer{padding:13px 26px;background:#fafbfe}
@media(max-width:767px){
 .verbo-entry-modal{padding:8px!important}
 .verbo-entry-modal .verbo-entry-header{padding:17px}
 .verbo-entry-heading{gap:10px}
 .verbo-entry-icon{width:40px;height:40px;flex-basis:40px;font-size:17px}
 .verbo-entry-heading .modal-title{font-size:16px}
 .verbo-entry-heading p{max-width:260px;font-size:11px}
 .verbo-entry-body{padding:16px}
 .verbo-entry-submit{align-items:stretch;flex-direction:column}
 .verbo-entry-submit .btn{width:100%}
 .verbo-entry-footer{padding:12px 16px}
}


/* Acciones y modal de detalle de Usuarios: identidad VERBO */
.verbo-usuarios .verbo-user-actions{display:flex;align-items:center;gap:7px;white-space:nowrap}
.verbo-usuarios .verbo-action-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-height:34px;padding:7px 11px;border:1px solid #dedaf0;border-radius:9px;
  background:#fff;color:var(--verbo-primary);font-size:12px;font-weight:700;
}
.verbo-usuarios .verbo-action-btn i{font-size:12px;color:inherit}
.verbo-usuarios .verbo-action-btn:hover{background:var(--verbo-primary);border-color:var(--verbo-primary);color:#fff;transform:translateY(-1px)}
.verbo-usuarios .verbo-action-edit{border-color:#dfe3ec;color:#586174}
.verbo-usuarios .verbo-action-edit:hover{background:#41485b;border-color:#41485b;color:#fff}
.verbo-user-modal .modal-dialog{max-width:780px}
.verbo-user-modal .modal-content{overflow:hidden;border:1px solid var(--verbo-border);border-radius:18px;box-shadow:0 18px 55px rgba(25,32,56,.16)}
.verbo-user-modal .verbo-user-modal-header{display:flex;align-items:center;justify-content:space-between;padding:21px 24px;background:#fff;border-bottom:1px solid var(--verbo-border)}
.verbo-user-modal-title{display:flex;align-items:center;gap:13px}
.verbo-user-modal-icon,.verbo-user-detail-avatar{
  width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;
  border-radius:12px;background:var(--verbo-primary-soft);color:var(--verbo-primary);font-size:18px
}
.verbo-user-modal-title .modal-title{margin:0;color:var(--verbo-ink);font-size:18px;font-weight:750}
.verbo-user-modal-title p{margin:4px 0 0;color:var(--verbo-muted);font-size:12px}
.verbo-user-modal .verbo-user-modal-body{padding:22px 24px;background:#fff}
.verbo-user-detail-heading{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding:15px;border:1px solid var(--verbo-border);border-radius:12px;background:#fafbfe}
.verbo-user-detail-heading h3{margin:0 0 4px;color:var(--verbo-ink);font-size:16px;font-weight:750}
.verbo-user-detail-heading p{margin:0;color:var(--verbo-muted);font-size:12px}
.verbo-user-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.verbo-user-detail-item{min-width:0;padding:12px 14px;border:1px solid var(--verbo-border);border-radius:10px;background:#fff}
.verbo-user-detail-label{display:block;margin-bottom:5px;color:var(--verbo-muted);font-size:10px;font-weight:750;letter-spacing:.045em;text-transform:uppercase}
.verbo-user-detail-value{display:block;overflow-wrap:anywhere;color:var(--verbo-ink);font-size:13px;font-weight:650}
.verbo-user-modal .verbo-user-modal-footer{padding:13px 24px;background:#fafbfe;border-top:1px solid var(--verbo-border)}
@media(max-width:575px){
 .verbo-usuarios .verbo-action-btn{width:34px;height:34px;padding:0}
 .verbo-usuarios .verbo-action-btn span{display:none}
 .verbo-user-modal .verbo-user-modal-header{padding:16px}
 .verbo-user-modal .verbo-user-modal-body{padding:16px}
 .verbo-user-detail-grid{grid-template-columns:1fr}
 .verbo-user-modal .verbo-user-modal-footer{padding:12px 16px}
}


/* Actualización de participante: formulario alineado con la identidad de Reportes */
.verbo-update-shell{width:min(100% - 44px,1396px);margin:0 auto;padding:28px 0 56px}
.verbo-update-shell .report-intro{margin:28px 0 20px}
.verbo-update-card{padding:24px;border:1px solid var(--verbo-border);border-radius:16px;background:#fff;box-shadow:var(--verbo-shadow)}
.verbo-update-card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid var(--verbo-border)}
.verbo-update-card-heading h3{margin:0 0 5px;color:var(--verbo-ink);font-size:17px;font-weight:750}
.verbo-update-card-heading p{margin:0;color:var(--verbo-muted);font-size:12px}
.verbo-update-heading-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:12px;background:var(--verbo-primary-soft);color:var(--verbo-primary);font-size:18px}
.verbo-update-note{display:flex;align-items:center;gap:9px;margin:0 0 4px;padding:12px 14px;border:1px solid #e6e2f7;border-radius:10px;background:#f8f7fd;color:#5e5a75;font-size:12px}
.verbo-update-note i{color:var(--verbo-primary)}
.verbo-update-form{row-gap:18px!important}
.verbo-update-form>[class*="col-"]{min-width:0}
.verbo-update-form .form-outline{width:100%}
.verbo-update-form .form-label{display:block;color:#41485b;font-size:12px;font-weight:700}
.verbo-update-form .form-control,.verbo-update-form .form-select{width:100%;height:45px;min-height:45px;padding:10px 12px;border:1px solid #dfe3ec;border-radius:9px;background-color:#fff;color:var(--verbo-ink);font-size:13px;box-shadow:none}
.verbo-update-form .form-control:focus,.verbo-update-form .form-select:focus{border-color:#7DA0FF;box-shadow:0 0 0 3px rgba(0,54,225,.11)}
.verbo-update-actions{display:flex;justify-content:flex-end;align-items:center;gap:9px;margin-top:8px;padding-top:18px;border-top:1px solid var(--verbo-border)}
.verbo-update-actions .btn{min-width:140px;min-height:42px;padding:10px 16px}
.verbo-update-actions .btn-outline-secondary{border-color:#dfe3ec;color:#586174;background:#fff}
.verbo-update-actions .btn-outline-secondary:hover{background:#f4f5fa;border-color:#cfd4df;color:var(--verbo-ink)}
@media(max-width:767px){
 .verbo-update-shell{width:calc(100% - 24px);padding:14px 0 34px}
 .verbo-update-shell .report-topbar{padding:14px}
 .verbo-update-shell .report-intro{margin:22px 0 16px}
 .verbo-update-card{padding:17px}
 .verbo-update-form{row-gap:14px!important}
 .verbo-update-actions{flex-direction:column-reverse;align-items:stretch}
 .verbo-update-actions .btn{width:100%}
}

/* Administración de cuentas y catálogo */
.verbo-admin-management .report-section{margin-top:20px}
.verbo-admin-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.verbo-admin-section-head h3{font-size:18px;margin:0 0 4px}
.verbo-admin-section-head p{font-size:13px;margin:0;color:var(--verbo-muted)}
.verbo-role-pill,.verbo-status-pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}
.verbo-role-pill{background:#E6EDFF;color:#0036E1}
.verbo-status-pill.is-active{background:#e8f6ee;color:#187443}
.verbo-status-pill.is-inactive{background:#fff0ed;color:#b63c2c}
.verbo-admin-management .modal-content{border-radius:15px}
.verbo-admin-management .modal-header,.verbo-admin-management .modal-footer{padding:18px 22px}
.verbo-admin-management .modal-body{padding:22px}
@media(max-width:767px){.verbo-admin-management .report-section{padding:16px}.verbo-admin-section-head{align-items:stretch}.verbo-admin-section-head>.btn{width:100%}}


/* Resumen de Registro: modal y tarjetas de participantes */
.verbo-registration-summary .modal-dialog{width:calc(100% - 28px);max-width:1040px;margin:24px auto}
.verbo-registration-summary .modal-content{overflow:hidden;border:1px solid var(--verbo-border);border-radius:20px;background:#fff;box-shadow:0 22px 65px rgba(25,32,56,.2)}
.verbo-registration-summary .summary-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 26px;border-bottom:1px solid var(--verbo-border);background:#fff}
.verbo-registration-summary .summary-heading{display:flex;align-items:center;gap:13px}
.verbo-registration-summary .summary-icon{width:46px;height:46px;flex:0 0 46px;display:grid;place-items:center;border-radius:14px;background:var(--verbo-primary-soft);color:var(--verbo-primary);font-size:19px}
.verbo-registration-summary .summary-heading h2{margin:0;color:var(--verbo-ink);font-size:19px;font-weight:800}
.verbo-registration-summary .summary-heading p{margin:4px 0 0;color:var(--verbo-muted);font-size:12px}
.verbo-registration-summary .summary-close{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--verbo-border);border-radius:10px;background:#fff;color:var(--verbo-muted);font-size:19px}
.verbo-registration-summary .summary-close:hover{background:#F1F5FF;color:var(--verbo-primary)}
.verbo-registration-summary .summary-body{padding:22px 26px 26px;background:#f8f9fc}
.verbo-registration-summary .summary-overview{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;padding:14px 16px;border:1px solid #e6e2f7;border-radius:12px;background:#F1F5FF}
.verbo-registration-summary .summary-overview strong{display:block;color:var(--verbo-primary);font-size:13px;font-weight:800}
.verbo-registration-summary .summary-overview span{display:block;margin-top:3px;color:#68627f;font-size:11px}
.verbo-registration-summary .summary-count{min-width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff;color:var(--verbo-primary);font-size:17px;font-weight:800}
.verbo-registration-summary .summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.verbo-registration-summary .summary-person{display:grid;grid-template-columns:minmax(0,1fr) 112px;align-items:center;gap:14px;min-width:0;padding:17px;border:1px solid var(--verbo-border);border-radius:14px;background:#fff;box-shadow:0 3px 12px rgba(25,32,56,.035)}
.verbo-registration-summary .summary-person-label{display:inline-flex;align-items:center;margin-bottom:8px;padding:4px 8px;border-radius:7px;background:#E6EDFF;color:var(--verbo-primary);font-size:10px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}
.verbo-registration-summary .summary-person h3{margin:0 0 7px;color:var(--verbo-ink);font-size:15px;font-weight:800;overflow-wrap:anywhere}
.verbo-registration-summary .summary-person-id{margin:0;color:var(--verbo-muted);font-size:12px}
.verbo-registration-summary .summary-person-id strong{color:var(--verbo-ink);font-weight:750}
.verbo-registration-summary .summary-qr{width:104px;height:104px;display:grid;place-items:center;padding:7px;border:1px solid var(--verbo-border);border-radius:11px;background:#fff}
.verbo-registration-summary .summary-qr img{display:block;width:100%;height:100%;object-fit:contain}
.verbo-registration-summary .summary-note{display:flex;align-items:flex-start;gap:10px;margin-top:18px;padding:13px 15px;border:1px solid var(--verbo-border);border-radius:11px;background:#fff;color:var(--verbo-muted);font-size:12px;line-height:1.55}
.verbo-registration-summary .summary-note i{margin-top:2px;color:var(--verbo-primary)}
.verbo-registration-summary .summary-footer{display:flex;justify-content:flex-end;padding:15px 26px;border-top:1px solid var(--verbo-border);background:#fff}
.verbo-registration-summary .summary-footer .btn{min-width:130px;min-height:42px}
.verbo-swal-popup{width:min(92vw,440px)!important;padding:26px!important;border:1px solid var(--verbo-border)!important;border-radius:18px!important;box-shadow:0 20px 60px rgba(25,32,56,.2)!important;font-family:Montserrat,"Segoe UI",Arial,sans-serif!important}
.verbo-swal-title{padding:0!important;color:var(--verbo-ink)!important;font-size:19px!important;font-weight:800!important}
.verbo-swal-message{margin:10px 0 0!important;color:var(--verbo-muted)!important;font-size:13px!important;line-height:1.6!important}
.verbo-swal-popup .swal2-icon{margin:0 auto 16px!important}
.verbo-swal-popup .swal2-actions{gap:9px;margin:22px 0 0!important}
.verbo-swal-popup .swal2-styled{min-height:40px;margin:0!important;padding:10px 17px!important;border-radius:9px!important;font-size:12px!important;font-weight:750!important}
.verbo-swal-popup .verbo-swal-confirm{background:var(--verbo-primary)!important;color:#fff!important}
.verbo-swal-popup .verbo-swal-cancel{border:1px solid #dfe3ec!important;background:#fff!important;color:#586174!important}
@media(max-width:767px){
 .verbo-registration-summary .modal-dialog{width:calc(100% - 16px);margin:8px auto}
 .verbo-registration-summary .summary-header{padding:17px}
 .verbo-registration-summary .summary-heading h2{font-size:16px}
 .verbo-registration-summary .summary-body{padding:16px}
 .verbo-registration-summary .summary-grid{grid-template-columns:1fr}
 .verbo-registration-summary .summary-person{grid-template-columns:minmax(0,1fr) 92px;padding:13px}
 .verbo-registration-summary .summary-qr{width:88px;height:88px}
 .verbo-registration-summary .summary-footer{padding:13px 16px}
 .verbo-registration-summary .summary-footer .btn{width:100%}
}


/* Pantalla independiente: catálogo de iglesias */
.verbo-church-catalog .report-section{padding:24px}
.verbo-church-catalog .church-catalog-footnote{
  display:flex;align-items:flex-start;gap:8px;margin-top:18px;padding:13px 15px;
  border:1px solid #e6e2f7;border-radius:10px;background:#f8f7fd;
  color:#625d79;font-size:12px;line-height:1.55
}
.verbo-church-catalog .church-catalog-footnote i{margin-top:2px;color:var(--verbo-primary)}
.verbo-church-catalog .church-id{
  display:inline-flex;align-items:center;justify-content:center;min-width:42px;
  padding:5px 8px;border-radius:8px;background:#f1f2f7;color:#596174;
  font-size:11px;font-weight:750;font-variant-numeric:tabular-nums
}
.verbo-church-catalog .church-row-actions{display:flex;justify-content:flex-end;gap:7px;white-space:nowrap}
.verbo-church-catalog .modal-content{overflow:hidden;border-radius:16px}
.verbo-church-catalog .modal-header{padding:19px 22px}
.verbo-church-catalog .modal-body{padding:22px}
.verbo-church-catalog .modal-footer{padding:14px 22px;background:#fafbfe}
@media(max-width:767px){
 .verbo-church-catalog .report-section{padding:16px}
 .verbo-church-catalog .report-topbar{align-items:stretch}
 .verbo-church-catalog .report-actions{width:100%}
 .verbo-church-catalog .report-actions .btn{flex:1}
 .verbo-church-catalog .verbo-admin-section-head{align-items:stretch}
 .verbo-church-catalog .verbo-admin-section-head>.btn{width:100%}
 .verbo-church-catalog .church-row-actions{flex-direction:column;align-items:stretch}
 .verbo-church-catalog .church-row-actions .btn{width:100%}
 .verbo-church-catalog .modal-header,.verbo-church-catalog .modal-body,.verbo-church-catalog .modal-footer{padding:16px}
}


/* Accesos del inicio: todas las tarjetas comparten estructura y jerarquía */
.verbo-home-shell .verbo-home-modules{margin:0!important;row-gap:16px!important}
.verbo-home-shell .verbo-home-modules>[class*="col-"]{display:flex}
.verbo-home-shell .verbo-module-link{display:block;width:100%;height:100%;color:inherit;text-decoration:none!important}
.verbo-home-shell .verbo-module-card{
  width:100%;height:100%;min-height:224px!important;overflow:hidden;
  border:1px solid var(--verbo-border)!important;border-radius:16px!important;
  background:#fff!important;box-shadow:var(--verbo-shadow)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease
}
.verbo-home-shell .verbo-module-link:hover .verbo-module-card{
  transform:translateY(-3px);border-color:#d5d0eb!important;
  box-shadow:0 12px 28px rgba(25,32,56,.10)!important
}
.verbo-home-shell .verbo-module-card .card-body{
  display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;
  min-height:224px!important;height:100%;padding:24px!important
}
.verbo-home-shell .verbo-module-card .icon{
  width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;
  border-radius:13px;background:var(--verbo-primary-soft);color:var(--verbo-primary);
  box-shadow:none!important
}
.verbo-home-shell .verbo-module-card .icon i{position:static!important;font-size:21px!important;color:var(--verbo-primary)!important}
.verbo-home-shell .verbo-module-card h5{
  margin:18px 0 7px!important;color:var(--verbo-ink)!important;
  font-size:16px!important;font-weight:800!important;line-height:1.35
}
.verbo-home-shell .verbo-module-card p{
  margin:0!important;color:var(--verbo-muted)!important;font-size:12px!important;
  line-height:1.6;max-width:290px
}
.verbo-home-shell .verbo-module-open{
  display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:18px;
  color:var(--verbo-primary);font-size:11px;font-weight:800
}
.verbo-home-shell .verbo-module-open i{font-size:10px;transition:transform .18s ease}
.verbo-home-shell .verbo-module-link:hover .verbo-module-open i{transform:translateX(3px)}
@media(max-width:767px){
 .verbo-home-shell .verbo-module-card,.verbo-home-shell .verbo-module-card .card-body{min-height:190px!important}
 .verbo-home-shell .verbo-module-card .card-body{padding:19px!important}
 .verbo-home-shell .verbo-module-card h5{margin-top:14px!important}
}


/* Loader institucional: morado Verbo, fondo translúcido y tarjeta limpia */
.verbo-loader-overlay{
  position:fixed!important;inset:0!important;z-index:99999!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:24px;background:rgba(245,247,251,.82)!important;
  -webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);
}
.verbo-loader-overlay.d-none{display:none!important}
.verbo-loader-card{
  min-width:190px;display:flex;flex-direction:column;align-items:center;gap:13px;
  padding:25px 30px;border:1px solid var(--verbo-border);border-radius:16px;
  background:#fff;box-shadow:0 12px 36px rgba(32,36,58,.10);
}
.verbo-loader-mark{
  position:relative;width:42px;height:42px;border:4px solid var(--verbo-primary-soft);
  border-top-color:var(--verbo-primary);border-right-color:var(--verbo-primary);
  border-radius:50%;animation:verbo-loader-spin .8s linear infinite;
}
.verbo-loader-mark:after{
  content:"";position:absolute;width:7px;height:7px;right:-3px;top:1px;
  border-radius:50%;background:#7DA0FF;
}
.verbo-loader-title{margin:0;color:var(--verbo-ink);font-size:13px;font-weight:750;letter-spacing:.01em}
.verbo-loader-caption{margin:-8px 0 0;color:var(--verbo-muted);font-size:11px}
@keyframes verbo-loader-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.verbo-loader-mark{animation-duration:2.5s}}

/* Logotipo institucional compartido en encabezados y acceso */
.report-brand-logo{display:block;width:92px;height:48px;flex:0 0 auto;object-fit:contain;object-position:left center}
.verbo-login .login-brand{justify-content:center}
.verbo-login .login-brand-logo{display:block;width:min(280px,100%);height:auto;max-height:116px;object-fit:contain}
@media(max-width:575px){.report-brand-logo{width:78px;height:42px}.verbo-login .login-brand-logo{max-width:240px}}


/* Pantalla de talleres: composición editorial e inscripción */
.verbo-talleres{--talleres-primary:#0036E1;--talleres-primary-dark:#002BB5}
.verbo-talleres .talleres-topbar,
.verbo-talleres .talleres-shell{width:min(100% - 44px,1396px);margin-left:auto;margin-right:auto}
.verbo-talleres .talleres-topbar{margin-top:28px}
.verbo-talleres .talleres-shell{padding:0 0 58px}
.verbo-talleres .talleres-page-intro{display:flex;align-items:flex-end;justify-content:space-between;margin:30px 0 22px;padding:0}
.verbo-talleres .talleres-eyebrow{display:inline-block;margin-bottom:8px;color:var(--talleres-primary);font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}
.verbo-talleres .talleres-page-intro h2{margin:0 0 7px;font-size:29px;font-weight:800;letter-spacing:-.035em}
.verbo-talleres .talleres-page-intro p{margin:0;font-size:14px}
.verbo-talleres .talleres-panel{margin:18px 0;padding:26px;border:1px solid var(--verbo-border);border-radius:17px;background:#fff;box-shadow:var(--verbo-shadow)}
.verbo-talleres .talleres-section-heading{display:flex;align-items:center;gap:13px;margin-bottom:21px}
.verbo-talleres .talleres-heading-icon{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border-radius:13px;background:var(--verbo-primary-soft);color:var(--talleres-primary);font-size:18px}
.verbo-talleres .talleres-section-heading h2{margin:0 0 4px;color:var(--verbo-ink);font-size:18px;font-weight:800;letter-spacing:-.02em}
.verbo-talleres .talleres-section-heading p{margin:0;color:var(--verbo-muted);font-size:12px}
.verbo-talleres .talleres-welcome>p{max-width:1050px;color:#50596b;font-size:14px;line-height:1.8}
.verbo-talleres .talleres-welcome .talleres-lead{color:var(--verbo-ink);font-size:16px}
.verbo-talleres .talleres-subheading{margin:23px 0 12px;color:var(--verbo-ink);font-size:15px;font-weight:800}
.verbo-talleres .talleres-theme-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}
.verbo-talleres .talleres-theme-list li{display:flex;align-items:center;gap:8px;min-height:48px;padding:10px 12px;border:1px solid #e5eaf5;border-radius:10px;background:#fafbff;color:#394256;font-size:12px;font-weight:700}
.verbo-talleres .talleres-theme-list i{color:var(--talleres-primary)}
.verbo-talleres .talleres-divider{height:1px;margin:23px 0;background:var(--verbo-border)}
.verbo-talleres .talleres-instructions{display:grid;gap:8px;margin:0;padding-left:19px;color:#50596b;font-size:13px;line-height:1.7}
.verbo-talleres .talleres-instructions li::marker{color:var(--talleres-primary)}
.verbo-talleres .talleres-notice{display:flex;align-items:flex-start;gap:12px;margin-top:20px;padding:16px 18px;border:1px solid #cbd8ff;border-left:4px solid var(--talleres-primary);border-radius:11px;background:#f4f7ff;color:#46516a}
.verbo-talleres .talleres-notice>i{margin-top:2px;color:var(--talleres-primary);font-size:17px}
.verbo-talleres .talleres-notice strong{display:block;margin-bottom:5px;color:#17358d;font-size:13px}
.verbo-talleres .talleres-notice p{margin:0;color:#46516a;font-size:12px;line-height:1.65}
.verbo-talleres .talleres-notice p+p{margin-top:7px}
.verbo-talleres .talleres-video-frame{position:relative;width:min(100%,850px);aspect-ratio:16/9;margin:0 auto;overflow:hidden;border-radius:13px;background:#101828;box-shadow:0 8px 24px rgba(20,30,60,.12)}
.verbo-talleres .talleres-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;max-width:none;border:0;border-radius:0}
.verbo-talleres .talleres-contact{display:flex;align-items:center;gap:13px;max-width:850px;margin:20px auto 0;padding:15px 17px;border:1px solid var(--verbo-border);border-radius:12px;background:#fafbfe}
.verbo-talleres .talleres-contact-icon{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border-radius:12px;background:#e9f8ef;color:#16834b;font-size:20px}
.verbo-talleres .talleres-contact h3{margin:0 0 4px;font-size:13px;font-weight:800}
.verbo-talleres .talleres-contact p{margin:0;color:var(--verbo-muted);font-size:12px;line-height:1.6}
.verbo-talleres .talleres-contact a{color:var(--talleres-primary);font-weight:800;text-decoration:none}
.verbo-talleres .talleres-contact a:hover{text-decoration:underline}
.verbo-talleres .talleres-capacity-heading{margin-bottom:17px}
.verbo-talleres .talleres-table-wrap{border:1px solid var(--verbo-border);border-radius:12px}
.verbo-talleres #tabla-cupos thead th:first-child{width:58px}
.verbo-talleres #tabla-cupos tbody td{font-size:13px}
.verbo-talleres .talleres-registration-form{margin:0;padding:20px;border:1px solid var(--verbo-border);border-radius:13px;background:#fafbfe}
.verbo-talleres .talleres-registration-form .form-label{font-size:12px}
.verbo-talleres .talleres-registration-form .form-select{width:100%}
.verbo-talleres .talleres-registration-form .select2-container{width:100%!important}
.verbo-talleres .talleres-submit-row{display:flex;justify-content:flex-end;padding-top:5px}
.verbo-talleres .talleres-submit-row .btn{min-width:160px;min-height:44px}
.verbo-talleres .talleres-artwork{display:flex;justify-content:center;margin-top:23px}
.verbo-talleres .talleres-artwork img{display:block;width:auto;max-width:min(100%,900px);height:auto!important;border:1px solid var(--verbo-border)!important;border-radius:14px;object-fit:contain}
.verbo-talleres .talleres-summary-table{border:1px solid var(--verbo-border);border-radius:11px;background:#fff}
.verbo-talleres .talleres-summary-table table{margin:0}
.verbo-talleres .verbo-registration-summary .summary-overview{background:#f1f5ff;border-color:#dce5ff}
.verbo-talleres .verbo-registration-summary .summary-overview strong,
.verbo-talleres .verbo-registration-summary .summary-icon,
.verbo-talleres .verbo-registration-summary .summary-count{color:var(--talleres-primary)}
.verbo-talleres .verbo-registration-summary .summary-icon{background:#e6edff}
.verbo-talleres .verbo-registration-summary .summary-count{background:#fff}
@media(max-width:900px){
 .verbo-talleres .talleres-theme-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
 .verbo-talleres .talleres-topbar,.verbo-talleres .talleres-shell{width:calc(100% - 24px)}
 .verbo-talleres .talleres-topbar{margin-top:14px}
 .verbo-talleres .talleres-page-intro{margin:23px 0 16px}
 .verbo-talleres .talleres-page-intro h2{font-size:24px}
 .verbo-talleres .talleres-panel{margin:13px 0;padding:17px;border-radius:14px}
 .verbo-talleres .talleres-section-heading{align-items:flex-start;gap:10px;margin-bottom:17px}
 .verbo-talleres .talleres-heading-icon{width:39px;height:39px;flex-basis:39px;font-size:16px}
 .verbo-talleres .talleres-section-heading h2{font-size:16px}
 .verbo-talleres .talleres-welcome .talleres-lead{font-size:14px}
 .verbo-talleres .talleres-welcome>p{font-size:13px}
 .verbo-talleres .talleres-theme-list{grid-template-columns:1fr}
 .verbo-talleres .talleres-theme-list li{min-height:42px}
 .verbo-talleres .talleres-notice{padding:13px}
 .verbo-talleres .talleres-contact{align-items:flex-start;padding:13px}
 .verbo-talleres .talleres-registration-form{padding:15px}
 .verbo-talleres .talleres-submit-row .btn{width:100%}
 .verbo-talleres .talleres-shell{padding-bottom:35px}
}


/* Acciones de tabla: componente único para todos los módulos de Gestión VERBO */
.verbo-page .table tbody td .verbo-table-actions,
.verbo-page .table tbody td .verbo-user-actions,
.verbo-page .table tbody td .church-row-actions{
  display:flex;align-items:center;justify-content:flex-end;gap:7px;
  flex-wrap:wrap;white-space:nowrap;
}
.verbo-page .table tbody td .verbo-table-action,
.verbo-page .table tbody td .verbo-action-btn,
.verbo-page .table tbody td .verbo-table-actions .btn,
.verbo-page .table tbody td .verbo-user-actions .btn,
.verbo-page .table tbody td .church-row-actions .btn{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-width:36px;min-height:36px;padding:7px 11px;margin:0!important;
  border:1px solid #dce3f2;border-radius:9px;
  background:#fff;color:var(--verbo-primary);
  font-family:inherit;font-size:12px;font-weight:700;line-height:1.2;
  text-transform:none;letter-spacing:0;box-shadow:none;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
.verbo-page .table tbody td .verbo-table-action i,
.verbo-page .table tbody td .verbo-action-btn i,
.verbo-page .table tbody td .verbo-table-actions .btn i,
.verbo-page .table tbody td .verbo-user-actions .btn i,
.verbo-page .table tbody td .church-row-actions .btn i{
  margin:0!important;color:inherit;font-size:12px;line-height:1;
}
.verbo-page .table tbody td .verbo-table-action:hover,
.verbo-page .table tbody td .verbo-action-btn:hover,
.verbo-page .table tbody td .verbo-table-actions .btn:hover,
.verbo-page .table tbody td .verbo-user-actions .btn:hover,
.verbo-page .table tbody td .church-row-actions .btn:hover{
  transform:translateY(-1px);border-color:var(--verbo-primary);
  background:var(--verbo-primary);color:#fff;
}
.verbo-page .table tbody td .verbo-table-action--muted,
.verbo-page .table tbody td .verbo-action-edit{
  border-color:#dce1ea;background:#fff;color:#566176;
}
.verbo-page .table tbody td .verbo-table-action--muted:hover,
.verbo-page .table tbody td .verbo-action-edit:hover{
  border-color:#566176;background:#566176;color:#fff;
}
.verbo-page .table tbody td .verbo-table-action--danger,
.verbo-page .table tbody td .verbo-table-actions .btn-outline-danger,
.verbo-page .table tbody td .church-row-actions .btn-outline-danger{
  border-color:#f0caca;background:#fff;color:#bd3b45;
}
.verbo-page .table tbody td .verbo-table-action--danger:hover,
.verbo-page .table tbody td .verbo-table-actions .btn-outline-danger:hover,
.verbo-page .table tbody td .church-row-actions .btn-outline-danger:hover{
  border-color:#bd3b45;background:#bd3b45;color:#fff;
}
.verbo-page .table tbody td .verbo-table-action--success,
.verbo-page .table tbody td .verbo-table-actions .btn-outline-success,
.verbo-page .table tbody td .church-row-actions .btn-outline-success{
  border-color:#c9e7d8;background:#fff;color:#238354;
}
.verbo-page .table tbody td .verbo-table-action--success:hover,
.verbo-page .table tbody td .verbo-table-actions .btn-outline-success:hover,
.verbo-page .table tbody td .church-row-actions .btn-outline-success:hover{
  border-color:#238354;background:#238354;color:#fff;
}
.verbo-page .table tbody td .verbo-table-action:disabled,
.verbo-page .table tbody td .verbo-action-btn:disabled,
.verbo-page .table tbody td .verbo-table-actions .btn:disabled{
  opacity:.45;cursor:not-allowed;transform:none;
}
.verbo-page .table .verbo-food-actions{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap}
.verbo-page .table .verbo-food-actions .verbo-table-action{min-width:92px}
@media(max-width:767px){
  .verbo-page .table tbody td .verbo-table-actions,
  .verbo-page .table tbody td .verbo-user-actions,
  .verbo-page .table tbody td .church-row-actions{justify-content:flex-start;gap:6px}
  .verbo-page .table tbody td .verbo-table-action,
  .verbo-page .table tbody td .verbo-action-btn,
  .verbo-page .table tbody td .verbo-table-actions .btn,
  .verbo-page .table tbody td .verbo-user-actions .btn,
  .verbo-page .table tbody td .church-row-actions .btn{min-height:34px;padding:7px 9px}
}


/* Respaldo global: cualquier botón dentro de una celda de tabla comparte geometría */
.verbo-page .table tbody td>.btn,
.verbo-page .table tbody td .btn{
  min-height:36px;border-radius:9px;font-family:inherit;
  font-size:12px;font-weight:700;line-height:1.2;
  letter-spacing:0;text-transform:none;box-shadow:none;
  vertical-align:middle;
}
.verbo-page .table tbody td>.btn:hover,
.verbo-page .table tbody td .btn:hover{transform:translateY(-1px)}
@media(max-width:767px){
  .verbo-page .table tbody td>.btn,
  .verbo-page .table tbody td .btn{min-height:34px}
}

/* Panel de apertura/cierre de inscripciones */
.verbo-usuarios .verbo-registration-control{margin:0 auto 22px;padding:22px;border:1px solid #e7eaf0;border-radius:16px;background:#fff;box-shadow:0 4px 18px rgba(25,32,56,.035)}
.verbo-usuarios .verbo-registration-control-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,1fr) auto;align-items:center;gap:18px}
.verbo-usuarios .verbo-registration-status{display:inline-flex;padding:7px 11px;border-radius:999px;background:#f1f3f7;color:#596174;font-size:12px;font-weight:750}
.verbo-usuarios .verbo-registration-status.is-open{background:#eaf7f0;color:#218253}
.verbo-usuarios .verbo-registration-status.is-closed{background:#fff0f0;color:#b43d45}
.verbo-usuarios .verbo-registration-switch{display:flex;align-items:center;gap:12px;cursor:pointer}
.verbo-usuarios .verbo-registration-switch input{position:absolute;opacity:0;pointer-events:none}
.verbo-usuarios .verbo-registration-switch-track{position:relative;width:44px;height:25px;flex:0 0 44px;border-radius:99px;background:#cbd1dc;transition:background .18s}
.verbo-usuarios .verbo-registration-switch-track:after{content:"";position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0002;transition:transform .18s}
.verbo-usuarios .verbo-registration-switch input:checked+.verbo-registration-switch-track{background:#0036E1}
.verbo-usuarios .verbo-registration-switch input:checked+.verbo-registration-switch-track:after{transform:translateX(19px)}
.verbo-usuarios .verbo-registration-switch input:focus-visible+.verbo-registration-switch-track{outline:3px solid #0036E133;outline-offset:3px}
.verbo-usuarios .verbo-registration-switch>span:last-child{display:flex;flex-direction:column;gap:3px}
.verbo-usuarios .verbo-registration-switch strong{font-size:14px;color:#20243a}
.verbo-usuarios .verbo-registration-switch small{max-width:320px;color:#697386;font-size:11px;line-height:1.45}
.verbo-usuarios .verbo-registration-message-field{display:flex;flex-direction:column;gap:6px}
.verbo-usuarios .verbo-registration-message-field label{font-size:12px;font-weight:700;color:#41485b}
.verbo-usuarios .verbo-registration-message-field textarea{width:100%;min-height:68px;padding:9px 11px;border:1px solid #dfe3ec;border-radius:9px;font-size:13px;line-height:1.45;font-family:inherit;resize:vertical}
.verbo-usuarios .verbo-registration-feedback{grid-column:1/-1;color:#697386;font-size:12px}
@media(max-width:900px){.verbo-usuarios .verbo-registration-control-body{grid-template-columns:1fr 1fr}.verbo-usuarios .verbo-registration-control-body>#guardarEstadoInscripciones{justify-self:start}}
@media(max-width:575px){.verbo-usuarios .verbo-registration-control{padding:16px}.verbo-usuarios .verbo-registration-control-body{grid-template-columns:1fr}}


/* Tooltips de acciones: se montan en body para no ser recortados por tablas responsive */
.verbo-page .tooltip{
  --bs-tooltip-bg:#20243a;
  --bs-tooltip-color:#fff;
  --bs-tooltip-opacity:1;
  z-index:1090;
}
.verbo-page .tooltip .tooltip-inner{
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:7px;
  background:#20243a;
  color:#fff;
  font-family:inherit;
  font-size:11px;
  font-weight:750;
  line-height:1.25;
  letter-spacing:.01em;
  box-shadow:0 5px 16px rgba(20,25,45,.18);
}
/* Toda acción que deshabilita o desactiva debe identificarse en rojo. */
.verbo-page .table tbody td .verbo-table-action--danger,
.verbo-page .table tbody td .verbo-action-disable{
  border-color:#f0caca!important;
  background:#fff!important;
  color:#bd3b45!important;
}
.verbo-page .table tbody td .verbo-table-action--danger:hover,
.verbo-page .table tbody td .verbo-action-disable:hover{
  border-color:#bd3b45!important;
  background:#bd3b45!important;
  color:#fff!important;
}

/* Crédito de desarrollo en páginas de registro y talleres */
.verbo-credit-footer{width:100%;padding:18px 16px;margin:0;text-align:center;border-top:1px solid rgba(35,48,75,.10);background:#fff;color:#788196;font-size:12px;line-height:1.5}
.verbo-credit-footer a{color:#0036E1;font-weight:700;text-decoration:none}
.verbo-credit-footer a:hover{text-decoration:underline}
