/*
 NEXA · UX03 Premium Light (UX02 compatibility), 2026-10-16.
 Capa puramente visual, sin JS, sin DB, sin alterar formularios o navegación.
 CSS de reversión: retirar las referencias a esta hoja.
*/
:root{
  color-scheme:light;
  --nexa-white:#ffffff;--nexa-cloud:#f5f7fd;
  --nexa-ink:#0e1a3a;--nexa-muted:#60677d;
  --nexa-navy-950:#ffffff;--nexa-navy-900:#fbfcff;
  --nexa-navy-850:#f5f7fd;--nexa-navy-800:#ffffff;--nexa-navy-700:#eef2fb;
  --nexa-blue-600:#00339a;--nexa-blue-500:#00339a;
  --nexa-cyan-500:#1a4fc4;--nexa-teal-500:#1a4fc4;
  --nexa-amber-500:#946300;--nexa-green-500:#25805d;
  --nexa-red-500:#b54748;
  --nexa-line:#e2e7f2;--nexa-line-strong:#cdd6e8;
  --nexa-shadow:0 16px 46px rgba(20,32,28,.07);
  --nexa-shadow-soft:0 6px 24px rgba(20,32,28,.045);
  --nexa-radius-md:13px;--nexa-radius-lg:18px;--nexa-radius-xl:22px;
  --bg:#fff;--panel:#fff;--panel2:#fbfcff;
  --line:#e2e7f2;--text:#0e1a3a;--soft:#60677d;
  --indigo:#00339a;--indigo2:#00339a;
  --violet:#00339a;--violet2:#00339a;
  --gold:#946300;--green:#207b55;--red:#b54748;
  --mp-bg:#fff;--mp-panel:#fff;--mp-panel-2:#f5f7fd;
  --mp-line:#e2e7f2;--mp-text:#0e1a3a;--mp-soft:#60677d;
  --mp-violet:#00339a;--mp-violet-2:#00339a;
  --mp-gold:#946300;--mp-green:#207b55;--mp-danger:#b54748;--mp-cyan:#946300;
  --nx3-bg:#fff;--nx3-bg2:#fbfcff;--nx3-surface:#fff;
  --nx3-card:#fff;--nx3-panel:#fff;--nx3-border:#e2e7f2;
  --nx3-text:#0e1a3a;--nx3-soft:#60677d;--nx3-muted:#60677d;
  --nx3-blue:#00339a;--nx3-cyan:#946300;--nx3-teal:#207b55;
  --nx-saas-blue:#00339a;--nx-saas-cyan:#946300;
  --nxc-bg:#fff;--nxc-surface:#fff;--nxc-surface-2:#f5f7fd;
  --nxc-border:#e2e7f2;--nxc-text:#0e1a3a;--nxc-muted:#60677d;
  --nxc-primary:#00339a;--nxc-cyan:#946300;--nxc-teal:#207b55;
  --nxc-amber:#946300;
  --nxp-bg:#fff;--nxp-bg-2:#fbfcff;--nxp-surface:#fff;
  --nxp-surface-2:#f5f7fd;--nxp-border:#e2e7f2;--nxp-border-strong:#cdd6e8;
  --nxp-text:#0e1a3a;--nxp-muted:#60677d;--nxp-primary:#00339a;
  --nxp-cyan:#946300;--nxp-teal:#207b55;--nxp-amber:#946300;
  --nxp-danger:#b54748;--nxp-shadow:0 16px 46px rgba(20,32,28,.07);
}
html{color-scheme:light!important}
body,body:not(.v8-public-home),body.nexa-public{
  background:#fff!important;color:#0e1a3a!important;
  -webkit-font-smoothing:antialiased;
}
body:not(.v8-public-home)::before,body.nexa-public::before{display:none!important}
body :is(h1,h2,h3,h4,h5,h6){color:#0e1a3a;overflow-wrap:break-word}
body :is(p,li,dd,dt,td,th,span,small){overflow-wrap:break-word}
body :is(.lead,.help,.muted,.soft,.subtitle,.description,.nav-user,
  .mp-live-clock,.v8-subtitle,.v9-stat span,.metric span,
  .tk-kpi span,.nx4-note,.nxb-note small){color:#60677d!important}
body :is(.kicker,.mp-eyebrow,.eyebrow){color:#946300!important}
body a{outline-offset:3px}
body :is(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:2px solid #00339a!important;outline-offset:2px!important
}
body :is(input,textarea)::placeholder{color:#8c9690;opacity:1}
body :is(input,select,textarea,button){font-size:max(14px,1em)}
body :is(button,input[type=submit],input[type=button]){cursor:pointer}
body :is(button,input,select,textarea):disabled{opacity:.55;cursor:not-allowed}

/* Estructura blanca: profundidad solo con líneas y sombras ligeras. */
body :is(.card,.section,.top,.topbar,.mp-app-tools,
  .v8-profile-hero,.v7-access-card,.v7-community-card,.v9-directory-card,
  .v9-consultant-mini,.v7-appointment,.portal-card,.tk-card,
  .tk-kpi,.metric,.v9-stat,.nx3-panel,.nx3-card,
  .nx3-member,.nx3-role,.nx3-domain,.nx3-feature,
  .nx4-panel,.nx4-card,.nx4-item,.nx4-day,.nx4-stat,
  .nx-saas-limit-card,.nx-saas-usage-card,.nx-saas-summary>div,
  .nx-intake-question,.nx-intake-instrument,.nx-intake-submission,
  .nxp-feature,.nxp-audience-card,.nxp-flow-step,.nxp-kpi,
  .nxp-list-demo,.nxp-showcase,.nxp-app-head,.nxp-login-box,
  .panel,.meta-card,.slot,.item,.check,.tk-table-wrap,.table-wrap){
  background:#fff!important;
  border-color:#e2e7f2!important;
  color:#0e1a3a;
  box-shadow:0 6px 22px rgba(24,38,32,.045)!important
}
body :is(.top,.topbar,.mp-app-tools,.nxp-nav){
  background:#fff!important;
  border:1px solid #e2e7f2!important;
  box-shadow:0 4px 15px rgba(24,38,32,.035)!important;
  backdrop-filter:none!important
}
body :is(.top,.topbar,.mp-app-tools)::after{display:none!important}
body :is(.section,.card,.panel,.nx3-panel,.nx4-panel){
  border-radius:18px!important
}
body :is(.section,.card,.panel) :is(.section,.card,.panel){
  box-shadow:none!important
}
body :is(.metric,.v9-stat,.tk-kpi)::before{background:#5376bd!important}
body :is(.metric,.v9-stat,.tk-kpi) strong{color:#0e1a3a!important}
body :is(.mp-app-tools-right,.nxp-links,.nav-user)>a,
body .mp-app-tools-right>a{
  color:#494861!important;
  text-decoration:none;
  font-weight:600
}
body .mp-app-tools-right>a:hover,
body .mp-app-tools-right>a[aria-current="page"],
body :is(.nx4-pro-tabs a,.nx-intake-service-tabs a):hover{
  color:#00339a!important;
  background:#eef2fb!important;border-color:#c7d5f2!important
}
body :is(.mp-back-button,.mp-btn-secondary,.btn-secondary,.btn2,.ghost,
  .nxp-btn-secondary,.mp-home-link){
  background:#fff!important;border:1px solid #d5ddec!important;
  color:#234892!important;box-shadow:none!important;
  text-decoration:none
}
body :is(.mp-back-button,.mp-btn-secondary,.btn-secondary,.btn2,.ghost,
  .nxp-btn-secondary):hover{background:#f2f5f1!important}
body :is(.mp-btn-primary,.btn:not(.btn-secondary):not(.btn2):not(.secondary):not(.danger),
  button.btn:not(.btn-secondary):not(.secondary):not(.danger),
  .nxp-btn-primary){
  background:#00339a!important;border:1px solid #00339a!important;
  color:white!important;box-shadow:none!important;
  text-decoration:none;transition:background .16s ease,transform .16s ease
}
body :is(.mp-btn-primary,.btn:not(.btn-secondary):not(.btn2):not(.secondary):not(.danger),
  .nxp-btn-primary):hover{background:#20499b!important;transform:translateY(-1px)}
body :is(.btn,.mp-btn,.nxp-btn,.ghost,.btn2){border-radius:11px!important}
body :is(.btn,.mp-btn,.nxp-btn,.ghost,.btn2){
  min-height:42px;
}
body :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
 select,textarea),body.nexa-public .nxp-field input{
  background:#fff!important;border:1px solid #d5ddec!important;
  color:#0e1a3a!important;box-shadow:none!important;
  border-radius:11px!important;max-width:100%;
}
body :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
 select,textarea):focus{
  border-color:#6b8dd3!important;
  box-shadow:0 0 0 3px rgba(40,90,73,.11)!important
}
body :is(input[type=checkbox],input[type=radio]){accent-color:#00339a}
body :is(label,.field label,.nxp-field label){color:#26324f!important}
body :is(th,td){color:#26324f!important;border-color:#e6eae6!important}
body th{background:#f5f7f4!important;color:#64706a!important}
body tbody tr:nth-child(even){background:#fbfcfa}
body tbody tr:hover{background:#f3f6f2!important}
body :is(table,.table-wrap,.v9-table-wrap,.tk-table-wrap){border-color:#e2e7f2!important}
body :is(.pill,.tk-chip,.nx4-chip,.nx4-badge,.nx-saas-status,.nx-intake-status){
  color:#355f4d!important;background:#eef2fb!important;
  border:1px solid #d5e4d7!important;box-shadow:none!important
}
body :is(.alert,.notice,.empty,.tk-empty,.nx4-empty){
  color:#45574e!important;border-color:#e2e7f2!important;
  background:#f8faf7!important;box-shadow:none!important
}
body :is(.alert.error,.error,.nxp-alert){
  color:#922f35!important;border-color:#f3d2d4!important;
  background:#fff5f5!important
}
body :is(.alert.success,.success){
  color:#206245!important;border-color:#cce6d6!important;
  background:#f1faf4!important
}
body :is(.nx3-context,.nx4-callout,.nxb-note,.nx-saas-compat-note,
 .v10-consultant-lock,.v10-live-session,.mp-install-card,.mp-community-card){
  background:#f8f9f6!important;border:1px solid #e1e7de!important;
  color:#43564b!important;box-shadow:none!important
}
body :is(.nx3-context span,.nx-saas-compat-note span,.nx4-panel p,.nx4-item span,
 .nx4-stat span,.nx4-empty,.nx4-note,.nx-intake-instrument span,
 .nx-saas-usage-card p,.nx-saas-limit-card span,.nx-saas-summary span,
 .nx-saas-summary small,.nx-saas-usage-card small,
 .nx-saas-limit-card small,.nx4-inline-links a,.nx4-day-title,
 .nx-switchline,.nxb-note){color:#56665e!important}
body .nx4-inline-links a:not(.btn){color:#00339a!important}
body .nx4-stat strong{color:#0e1a3a!important}
body :is(.nx4-pro-tabs a,.nx-intake-service-tabs a){
  color:#494861!important;background:#fff!important;
  border:1px solid #dfe6df!important;box-shadow:none!important
}
body :is(.nx4-pro-tabs a,.nx-intake-service-tabs a)[aria-current="page"]{
  color:#00339a!important;background:#eaf2ec!important;
  border-color:#b9d0bf!important;box-shadow:none!important
}
body :is(.nx-saas-progress,.progress){background:#e7ede7!important}
body :is(.nx-saas-progress span,.progress span){
  background:#527e67!important
}
body :is(.nx3-context-icon,.v8-avatar,.nxp-avatar,.nxp-feature-icon){
  background:#eaf0fd!important;color:#00339a!important;
  box-shadow:none!important
}

/* Navegación y estructura: conserva el HTML y los controles existentes */
body .shell{max-width:1220px}
body .dashboard{padding-top:26px}
body .welcome{margin-bottom:22px}
body .metrics,body .nxp-grid{gap:14px}
body .card.main{padding:clamp(20px,3vw,32px)}
body .v9-command-deck a{
  background:#fff!important;color:#234892!important;
  border-color:#e2e7f2!important;box-shadow:none!important
}
body .v9-command-deck a:hover{background:#eef2fb!important}
body .v9-command-deck a::before{background:#5376bd!important}
body .v8-profile-hero::after{display:none!important}

/* Landing / acceso publico: elimina todos los paneles azul marino. */
body.nexa-public .nxp-nav{
  border-width:0 0 1px!important;border-radius:0!important;
  padding-block:13px!important
}
body.nexa-public .nxp-links,
body.nexa-public .nxp-links a{color:#4e5f56!important}
body.nexa-public .nxp-links a:hover{color:#00339a!important}
body.nexa-public .nxp-hero h1{
  color:#1c2923!important;
  font-weight:750;line-height:1.07;letter-spacing:-.042em
}
body.nexa-public .nxp-hero h1 span{color:#00339a!important}
body.nexa-public .nxp-eyebrow{color:#946300!important}
body.nexa-public .nxp-eyebrow::before{
  background:#5376bd!important;box-shadow:0 0 0 5px #f6f0e8!important
}
body.nexa-public :is(.nxp-hero p,.nxp-section-head p,
 .nxp-feature p,.nxp-audience-card p,.nxp-flow-step span,.nxp-cta p,
 .nxp-login-box p,.nxp-trust,.nxp-footer,.nxp-app-head small,
 .nxp-kpi span,.nxp-kpi em,.nxp-list-row small){
  color:#60677d!important
}
body.nexa-public :is(.nxp-showcase,.nxp-feature,.nxp-audience-card,
  .nxp-flow-step,.nxp-cta,.nxp-login-box){
  background:#fff!important;border-color:#e2e7f2!important;
  box-shadow:0 12px 32px rgba(24,38,32,.055)!important
}
body.nexa-public .nxp-showcase::before{display:none!important}
body.nexa-public :is(.nxp-app-head,.nxp-kpi,.nxp-list-demo){
  background:#f9fbf8!important;border-color:#e2e7f2!important;
  box-shadow:none!important
}
body.nexa-public .nxp-kpi strong{color:#0e1a3a!important}
body.nexa-public .nxp-avatar{color:#00339a!important}
body.nexa-public .nxp-chip{color:#286447!important;background:#edf5ed!important}
body.nexa-public .nxp-trust span::before{
  background:#edf5ed!important;color:#286447!important
}
body.nexa-public .nxp-bullets li{color:#4c5e53!important}
body.nexa-public .nxp-bullets li::before{color:#286447!important}
body.nexa-public .nxp-flow-step b{
  background:#eaf0fd!important;color:#00339a!important
}
body.nexa-public .nxp-footer a:hover{color:#00339a!important}
body.nexa-public .nxp-field input{
  background:#fff!important;color:#0e1a3a!important
}
body.nexa-public .nxp-cta{
  border-color:#dbe4dc!important;background:#f8faf7!important
}

/* Reserva pública autónoma (sin mpHeadTags), vinculado desde reservar/index.php. */
body .wrap{max-width:1100px}
body .panel{background:#fff!important}
body .meta-card,body .slot{
  background:#fff!important;border-color:#e2e7f2!important
}
body .slot:has(input:checked){
  border-color:#8ca6db!important;background:#eef2fb!important
}
body .slot span,body .meta-card span,body .footer-note{color:#60677d!important}
body .slot input{accent-color:#00339a!important}
body .ghost{background:#fff!important;color:#00339a!important}
body .title{color:#0e1a3a!important}
body .brand img{filter:none}

/* Legibilidad en módulos heredados con colores fijos en el CSS original. */
body :is(.tk-card,.tk-kpi,.tk-table-wrap,.v7-appointment,
 .v9-directory-card,.v9-consultant-mini,.portal-card,.item,.check,
 .nx3-feature,.nx3-member,.nx3-role,.nx3-domain,.nx4-item){
 color:#0e1a3a!important
}
body :is(.tk-card,.tk-kpi,.v7-appointment,.v9-directory-card,
 .v9-consultant-mini,.portal-card,.nx3-feature) :is(strong,b,h3,h4){
 color:#0e1a3a!important
}
body :is(.tk-card,.tk-kpi,.v7-appointment,.v9-directory-card,
 .v9-consultant-mini,.portal-card,.nx3-feature) :is(p,small,span){
 color:#5f7067!important
}
body :is(.nx-saas-limit-card,.nx-saas-usage-card,.nx4-panel,
 .nx4-card,.nx4-stat) strong{color:#0e1a3a!important}

/* Reduce solo efectos cosméticos; no desactiva controles o estados. */
body :is(.card,.panel,.nx3-panel,.nx4-panel,.nxp-showcase){transition:border-color .15s ease}
@media(max-width:860px){
  body .shell{width:calc(100% - 20px)!important;padding-top:12px}
  body :is(.mp-app-tools,.topbar,.top){
    background:#fff!important;border-color:#e2e8e2!important;
    box-shadow:0 3px 13px rgba(24,38,32,.045)!important
  }
  body .rgk-mobile-nav-toggle{
    background:#fff!important;border:1px solid #d5ddec!important;
    color:#00339a!important
  }
  body .mp-app-tools-right{scrollbar-width:thin}
  body .mp-app-tools-right>a{white-space:nowrap}
  body :is(.nx3-split,.nx4-grid,.nx-saas-layout,.nx-intake-grid){
    grid-template-columns:minmax(0,1fr)!important
  }
  body .table-wrap,body .v9-table-wrap,body .tk-table-wrap{
    overflow-x:auto;-webkit-overflow-scrolling:touch
  }
}
@media(max-width:600px){
  body .shell{width:calc(100% - 16px)!important}
  body :is(.card.main,.nx-services-page,.nx-saas-plan-page,
    .nx-saas-admin,.nx3-panel,.nx4-panel){padding:18px!important}
  body .nxp-hero{padding-top:34px}
  body .nxp-hero h1{font-size:clamp(34px,10vw,52px)!important}
  body :is(.nxb-fields,.nx4-day-grid,.nx4-link-form,.nx4-micro-grid,
    .nx4-stats){grid-template-columns:minmax(0,1fr)!important}
  body :is(input,select,textarea){font-size:16px!important}
  body :is(.topbar,.mp-app-tools){border-radius:13px!important}
}
@media(prefers-reduced-motion:reduce){
  body *,body *::before,body *::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    transition-duration:.01ms!important
  }
}

/* ======================================================================
   NEXA UX02: estética blanca, violeta y azul basada en referencia aportada.
   Capa visual de compatibilidad: no modifica JavaScript, PHP ni base de datos.
   ====================================================================== */
:root {
  color-scheme:light;
  --ux2-ink:#0e1a3a;--ux2-muted:#60677d;--ux2-line:#e2e7f2;
  --ux2-violet:#00339a;--ux2-blue:#1a4fc4;--ux2-faint:#f5f7fd;
  --ux2-gradient:linear-gradient(110deg,#002a80 0%,#1a4fc4 49%,#1a4fc4 100%);
  --ux2-shadow:0 8px 26px rgba(8,26,74,.055);
  --nx2-surface:#fff;--nx2-surface-2:#f5f7fd;--nx2-surface-3:#edf2fc;
  --nx2-border:#e2e7f2;--nx2-border-strong:#cdd6e8;
  --nx2-text:#0e1a3a;--nx2-muted:#60677d;--nx2-primary:#00339a;
  --nx2-primary-2:#1a4fc4;--nx2-shadow:var(--ux2-shadow);
  --nx3-surface:#fff;--nx3-surface-2:#f5f7fd;--nx3-surface-3:#edf2fc;
  --nx3-border:#e2e7f2;--nx3-muted:#60677d;
  --v9-cyan:#1a4fc4;--v9-violet:#00339a;--v9-gold:#5270ac;
  --v9-panel:#fff;--v9-panel-strong:#fff;
  --nexa-ux-focus:rgba(0,51,154,.17);
}
html{color-scheme:light!important}
body,body.nexa-admin-shell,body.nexa-public,body:not(.v8-public-home){
  background:#fff!important;color:#0e1a3a!important;
}
body :is(h1,h2,h3,h4,h5,h6){color:#0e1a3a!important}
body :is(.kicker,.eyebrow,.mp-eyebrow,.nxp-eyebrow){color:#00339a!important}
body :is(.lead,.help,.muted,.soft,.subtitle,.nexa-panel-copy p,
   .nexa-panel-card-head p,.nexa-page-context small){color:#60677d!important}
body :is(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid #00339a!important;outline-offset:3px!important
}
body :is(input,select,textarea):focus{
  border-color:#7091d3!important;box-shadow:0 0 0 4px var(--nexa-ux-focus)!important
}
body :is(input[type=radio],input[type=checkbox]){accent-color:#00339a!important}

/* Workspace, sidebar y cabecera: la raíz azul marino queda sustituida. */
body.nexa-admin-shell :is(.nexa-workspace,.nexa-workspace-main){
  background:#fff!important;color:#0e1a3a!important;
}
body.nexa-admin-shell .nexa-sidebar{
  background:#fff!important;color:#0e1a3a!important;
  border-right:1px solid #e2e7f2!important;
  box-shadow:4px 0 19px rgba(8,26,74,.032)!important;
}
body.nexa-admin-shell :is(.nexa-sidebar-head,.nexa-sidebar-foot){border-color:#e2e7f2!important}
body.nexa-admin-shell .nexa-sidebar-scroll{scrollbar-color:#c9d3e8 transparent}
body.nexa-admin-shell :is(.nexa-sidebar-home,.nexa-nav-link,.nexa-nav-group-toggle){
  color:#3a4562!important;border-color:transparent!important;background:transparent!important;
}
body.nexa-admin-shell :is(.nexa-sidebar-home,.nexa-nav-link,.nexa-nav-group-toggle):hover{
  color:#2353b4!important;border-color:#dfe8fa!important;background:#f1f6ff!important;
}
body.nexa-admin-shell :is(.nexa-sidebar-home,.nexa-nav-link)[aria-current="page"]{
  color:#2554b2!important;border-color:#cad9f6!important;
  background:#e9f0fe!important;box-shadow:inset 3px 0 0 #00339a!important;
}
body.nexa-admin-shell .nexa-nav-icon{color:#5672ac!important}
body.nexa-admin-shell :is(.nexa-sidebar-home,.nexa-nav-link)[aria-current="page"] .nexa-nav-icon{color:#00339a!important}
body.nexa-admin-shell .nexa-nav-count{background:#e6edfb!important;color:#214b9f!important}
body.nexa-admin-shell :is(.nexa-icon-button,.nexa-organization-switch,.nexa-top-profile){
  background:#fff!important;color:#234892!important;border-color:#d9e0ed!important;box-shadow:none!important;
}
body.nexa-admin-shell :is(.nexa-icon-button,.nexa-organization-switch):hover{background:#f0f5ff!important}
body.nexa-admin-shell .nexa-user-mini{background:#f5f7fd!important}
body.nexa-admin-shell .nexa-user-avatar{background:#e0e9fa!important;color:#214ba0!important;border-color:#c0d1f2!important}
body.nexa-admin-shell .nexa-user-meta strong{color:#0e1a3a!important}
body.nexa-admin-shell .nexa-user-meta span{color:#60677d!important}
body.nexa-admin-shell .nexa-sidebar-logout{color:#3b5b9b!important}
body.nexa-admin-shell .nexa-shell-topbar{
  background:#fff!important;border-bottom:1px solid #e2e7f2!important;
  box-shadow:0 3px 16px rgba(8,26,74,.025)!important;backdrop-filter:none!important;
}
body.nexa-admin-shell :is(.nexa-page-context strong,.nexa-organization-switch span){color:#0e1a3a!important}
body.nexa-admin-shell .nexa-dropdown-menu{
  background:#fff!important;border-color:#e2e7f2!important;
  box-shadow:0 18px 40px rgba(27,25,65,.12)!important;
}
body.nexa-admin-shell .nexa-dropdown-menu a{color:#3a4562!important}
body.nexa-admin-shell .nexa-dropdown-menu a:hover{color:#2353b4!important;background:#f0f5ff!important}
body.nexa-admin-shell .nexa-dropdown-menu small{color:#60677d!important}
body.nexa-admin-shell .nexa-top-action{
  background:var(--ux2-gradient)!important;color:#fff!important;
  box-shadow:0 6px 16px rgba(41,88,184,.12)!important;
}

/* Dashboard: introducir jerarquía clara, métricas legibles y acciones ordenadas. */
body.nexa-admin-shell :is(.nexa-panel-intro,.nexa-panel-metric,.nexa-panel-card,
  .nexa-quick-shell,.nexa-quick-feature,.nexa-quick-action){
  background:#fff!important;color:#0e1a3a!important;
  border:1px solid #e2e7f2!important;box-shadow:var(--ux2-shadow)!important;
}
body.nexa-admin-shell .nexa-panel-intro{
  background:linear-gradient(106deg,#fff 55%,#f3f6fd)!important;
  border-left:4px solid #00339a!important;
}
body.nexa-admin-shell .nexa-panel-org{color:#41557d!important}
body.nexa-admin-shell .nexa-panel-metric:hover{background:#f7f9fe!important;border-color:#b6c8eb!important}
body.nexa-admin-shell .nexa-panel-metric::before{background:var(--metric-accent,#00339a)!important}
body.nexa-admin-shell .nexa-panel-metric strong{color:#0e1a3a!important}
body.nexa-admin-shell .nexa-panel-metric :is(span,small){color:#60677d!important}
body.nexa-admin-shell .nexa-panel-card-head h2{color:#0e1a3a!important}
body.nexa-admin-shell .nexa-panel-card-body{color:#26324f!important}
body.nexa-admin-shell .nexa-consultant-list{border-color:#e2e7f2!important}
body.nexa-admin-shell .nexa-consultant-row{border-bottom-color:#e2e7f2!important}
body.nexa-admin-shell .nexa-consultant-row:hover{background:#f3f6fd!important}
body.nexa-admin-shell .nexa-consultant-avatar{background:#e4ecfb!important;color:#2654b1!important}
body.nexa-admin-shell .nexa-consultant-name strong,
body.nexa-admin-shell .nexa-consultant-stat strong{color:#0e1a3a!important}
body.nexa-admin-shell .nexa-consultant-name small,
body.nexa-admin-shell .nexa-consultant-stat span{color:#60677d!important}
body.nexa-admin-shell .nexa-consultant-status{color:#16664f!important}
body.nexa-admin-shell .nexa-quick-feature,
body.nexa-admin-shell .nexa-quick-action{
  background:linear-gradient(130deg,#fff 55%,#f3f6fd)!important;
}
body.nexa-admin-shell :is(.nexa-quick-feature,.nexa-quick-action):hover{
  background:#f3f6fd!important;border-color:#b7c9ed!important;
}
body.nexa-admin-shell :is(.nexa-quick-feature strong,.nexa-quick-action strong){color:#0e1a3a!important}
body.nexa-admin-shell :is(.nexa-quick-feature small,.nexa-quick-action>span:last-child>span){color:#60677d!important}
body.nexa-admin-shell :is(.nexa-quick-feature-icon,.nexa-quick-icon){
  background:#e5ecfb!important;color:#2653ad!important;box-shadow:none!important;
}
body.nexa-admin-shell .nexa-quick-footer{border-color:#e2e7f2!important}
body.nexa-admin-shell .nexa-quick-footer a{color:#00339a!important}

/* Páginas internas, consultantes, agenda y módulos operativos. */
body.nexa-admin-shell:not(.nexa-panel-page) .nexa-workspace-main>.shell>main.card,
body.nexa-admin-shell:not(.nexa-panel-page) .nexa-workspace-main>.shell>.card,
body :is(.v9-page-intro,.v9-home-focus,.v9-instrument-section,.v9-form-block,
 .v9-process-card,.v9-instrument-card,.v9-directory-card,.v9-profile-summary,
 .v9-stage,.v9-question-card,.v9-review-note,.v9-complete-hero,
 .v10-process-hero>article,.v10-session-history article,.v10-account-card,
 .v10-pending-card,.v10-instrument-card,.v10-test-zone,.v10-priority-section,
 .nx3-invite-row,.nx3-role,.nx3-feature,.nx3-plan-strip,.nx3-panel,.nx3-member,
 .nx3-domain,.nx4-panel,.nx4-card,.nx4-stat,.nx4-item,.nx4-day,.nx4-callout,
 .nx-saas-limit-card,.nx-saas-usage-card,.nx-saas-summary>div,.nx-intake-question,
 .nx-intake-instrument,.nx-intake-submission,.ac-hero,.ac-detail,.ac-appointment-card,
 .ac-action-card,.v7-appointment,.v7-community-card,.v8-profile-hero,.tk-card,
 .tk-kpi,.portal-card,.metric,.item,.check){
  background:#fff!important;color:#0e1a3a!important;
  border-color:#e2e7f2!important;box-shadow:var(--ux2-shadow)!important;
}
body :is(.v9-page-intro,.v10-process-hero>article,.v8-profile-hero){
  background:linear-gradient(110deg,#fff 57%,#f3f6fd)!important;
}
body :is(.v9-process-card,.v9-instrument-card,.v9-directory-card,.v9-stage,
 .nx3-role,.nx3-feature,.nx3-invite-row,.v10-account-card) :is(strong,h2,h3,h4){color:#0e1a3a!important}
body :is(.v9-process-card,.v9-instrument-card,.v9-directory-card,.v9-stage,
 .nx3-role,.nx3-feature,.nx3-invite-row,.v10-account-card) :is(span,small,p){color:#60677d!important}
body :is(.v9-answer label,.v9-selection label,.nx3-role):has(input:checked){
  background:#eef3fc!important;border-color:#a2b9e8!important;
}
body :is(.v9-text-link,.v9-card-link,.nx4-inline-links a){color:#00339a!important}
body :is(.v9-category-tab,.nx3-tag,.nx4-chip,.nx4-badge,.nx-saas-status,.nx-intake-status){
  background:#edf2fc!important;color:#2653ae!important;border-color:#d2def5!important;
}
body :is(.v9-category-tab.is-active,.v9-category-tab:hover){
  background:#00339a!important;color:white!important;border-color:#00339a!important;
}
body.nexa-admin-shell :is(.mp-app-tools,.topbar,.top){
  background:#fff!important;border-color:#e2e7f2!important;box-shadow:var(--ux2-shadow)!important;
}
body.nexa-admin-shell :is(.mp-app-tools-right>a,.mp-app-tools a:not(.mp-btn)){color:#3a4562!important}
body.nexa-admin-shell .mp-app-tools-right>a:hover{color:#00339a!important;background:#eef3fc!important}

/* Acciones principales: degradado violeta/azul limitado a interacción. */
body :is(.mp-btn-primary,.nxp-btn-primary,.nexa-top-action),
body :is(.btn:not(.btn2):not(.btn-secondary):not(.secondary):not(.danger),
 button.btn:not(.btn-secondary):not(.secondary):not(.danger)){
  background:var(--ux2-gradient)!important;color:#fff!important;
  border:1px solid transparent!important;box-shadow:0 5px 16px rgba(41,88,184,.10)!important;
}
body :is(.btn-secondary,.btn2,.mp-btn-secondary,.ghost,.nxp-btn-secondary,.mp-back-button){
  background:#fff!important;color:#294f9d!important;border-color:#d3dbec!important;
  box-shadow:none!important;
}
body :is(.btn-secondary,.btn2,.mp-btn-secondary,.ghost,.nxp-btn-secondary):hover{
  background:#f1f6ff!important;
}
body :is(.btn.danger,.btn-danger,.v10-danger){
  background:#fff2f5!important;color:#a52f49!important;border-color:#f1c6d2!important;
}
body :is(.pill,.tk-chip,.nx4-chip,.nx4-badge,.nx-saas-status,
 .nx-intake-status,.v9-state-pill,.v9-review-status){
  background:#edf2fc!important;color:#2653ae!important;border-color:#d4dff6!important;
}
body :is(.pill.success,.alert.success){background:#eefaf3!important;color:#17664e!important;border-color:#c8e5d5!important}
body :is(.table-wrap,.v9-table-wrap,.tk-table-wrap){
  background:#fff!important;border-color:#e2e7f2!important;max-width:100%;
  overflow-x:auto;-webkit-overflow-scrolling:touch;
}
body th{background:#f5f7fd!important;color:#545c78!important}
body td{color:#26324f!important;border-color:#e9e9f3!important}
body tbody tr:nth-child(even){background:#fbfcff!important}
body tbody tr:hover{background:#f1f6ff!important}
body :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){
  background:#fff!important;border-color:#dcddea!important;color:#0e1a3a!important;
}
body :is(input,textarea)::placeholder{color:#787c90!important}
body label{color:#26324f!important}
body :is(.notice,.empty,.tk-empty,.nx4-empty){
  background:#f8fafe!important;color:#535970!important;border-color:#e2e7f2!important;
}
body :is(.alert.error,.error,.nxp-alert){background:#fff1f4!important;color:#a33047!important;border-color:#f1c8d2!important}
body :is(.alert.success,.success){background:#effaf4!important;color:#17664e!important;border-color:#c8e5d5!important}
body :is(.progress,.v9-progress,.v9-progress-line,.nx-saas-progress){background:#eaeff8!important}
body :is(.progress span,.v9-progress span,.v9-progress-line span,.nx-saas-progress span){
  background:linear-gradient(90deg,#00339a,#1a4fc4)!important;
}
body .slot:has(input:checked){background:#eef3fc!important;border-color:#a6bce9!important}
body .slot input{accent-color:#00339a!important}

/* Web pública y reservas: mantiene fondo blanco con un único lenguaje visual. */
body.nexa-public .nxp-nav{
  background:#fff!important;border-color:#e2e7f2!important;
  box-shadow:0 4px 18px rgba(8,26,74,.045)!important;
}
body.nexa-public .nxp-links,body.nexa-public .nxp-links a{color:#3a4562!important}
body.nexa-public .nxp-links a:hover{color:#00339a!important}
body.nexa-public .nxp-hero h1 span{
  background:linear-gradient(105deg,#00339a,#1a4fc4);
  background-clip:text;-webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}
body.nexa-public .nxp-eyebrow{color:#00339a!important}
body.nexa-public .nxp-eyebrow::before{background:#00339a!important;box-shadow:0 0 0 5px #eaf1ff!important}
body.nexa-public :is(.nxp-showcase,.nxp-feature,.nxp-audience-card,.nxp-flow-step,
 .nxp-login-box,.nxp-cta){
  background:#fff!important;color:#0e1a3a!important;
  border-color:#e2e7f2!important;box-shadow:var(--ux2-shadow)!important;
}
body.nexa-public .nxp-showcase{background:linear-gradient(140deg,#fff 62%,#f3f7ff)!important}
body.nexa-public :is(.nxp-app-head,.nxp-kpi,.nxp-list-demo){
  background:#f7faff!important;border-color:#e2e7f2!important;
}
body.nexa-public :is(.nxp-feature-icon,.nxp-avatar,.nxp-flow-step b){background:#e3ebfb!important;color:#00339a!important}
body.nexa-public .nxp-cta{background:linear-gradient(110deg,#f6f9ff,#f2f6ff)!important}
body.nexa-public .nxp-footer{color:#60677d!important;border-color:#e2e7f2!important}
body .wrap .hero>.panel{background:#fff!important;border-color:#e2e7f2!important}
body .wrap .btn:not(.ghost){background:var(--ux2-gradient)!important;color:#fff!important}
body .wrap :is(.meta-card,.slot){background:#fff!important;border-color:#e2e7f2!important}

/* Mobile: no alterar display/posición del menú controlado por JS. */
@media(max-width:980px){
 body.nexa-admin-shell .nexa-dashboard-grid{grid-template-columns:minmax(0,1fr)!important}
 body.nexa-admin-shell :is(.nexa-quick-hero,.nexa-quick-grid){grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
 body.nexa-admin-shell .nexa-shell-topbar{padding-inline:12px!important}
 body.nexa-admin-shell :is(.nexa-quick-hero,.nexa-quick-grid){grid-template-columns:minmax(0,1fr)!important}
 body.nexa-admin-shell .nexa-panel-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.nexa-admin-shell .nexa-workspace-main>.shell{width:calc(100% - 20px)!important}
 body.nexa-admin-shell .nexa-panel-intro{padding:16px!important}
}
@media(max-width:390px){
 body.nexa-admin-shell .nexa-panel-metrics{grid-template-columns:minmax(0,1fr)!important}
 body.nexa-admin-shell .nexa-page-context strong{max-width:130px!important}
 body.nexa-admin-shell .nexa-top-action{padding-inline:8px!important}
}

/* 10. Componentes REALES del panel PHP actual: .nxp-* y .tk-priority-strip.
   No confundirlos con la landing, que también emplea prefijo nxp. */
body.nexa-admin-shell :is(.nxp-surface,.nxp-hero-main,.nxp-mini-card,
 .nxp-metric,.nxp-actions-card,.nxp-card,.nxp-empty,.nxp-appt,
 .nxp-ticket,.nxp-summary-item,.nxp-consultants .nexa-consultant-row,
 .tk-priority-strip,.tk-chat-main,.tk-chat-side,.tk-message-list,
 .tk-archive,.tk-archive-item,.v10-bitacora-card){
  background:#fff!important;color:#0e1a3a!important;
  border-color:#e2e7f2!important;box-shadow:var(--ux2-shadow)!important;
}
body.nexa-admin-shell .nxp-hero-main{
  background:linear-gradient(110deg,#fff 55%,#f3f6fd)!important;
}
body.nexa-admin-shell .nxp-copy h1{color:#0e1a3a!important}
body.nexa-admin-shell :is(.nxp-role,.nxp-copy p,.nxp-summary p,.nxp-actions-head p,
 .nxp-card-head p,.nxp-appt p,.nxp-ticket p,.nxp-footer-note){color:#60677d!important}
body.nexa-admin-shell .nxp-summary-item{
  background:#f7f9fe!important;border-color:#e2e7f2!important;box-shadow:none!important;
}
body.nexa-admin-shell .nxp-summary-item strong,
body.nexa-admin-shell .nxp-mini-card strong,
body.nexa-admin-shell .nxp-metric strong{color:#0e1a3a!important}
body.nexa-admin-shell :is(.nxp-summary-item span,.nxp-mini-card span,
 .nxp-mini-card small,.nxp-metric span,.nxp-metric small){color:#60677d!important}
body.nexa-admin-shell .nxp-mini-card{
  background:#f7faff!important;box-shadow:none!important;
}
body.nexa-admin-shell .nxp-mini-card:hover,
body.nexa-admin-shell .nxp-metric:hover{background:#eff3fc!important;border-color:#c6d4f1!important}
body.nexa-admin-shell .nxp-metric::before{background:#00339a!important}
body.nexa-admin-shell .nxp-ticket.is-urgent,
body.nexa-admin-shell .tk-card.is-urgent{border-color:#ecc6d2!important;background:#fff5f7!important}
body.nexa-admin-shell .nxp-ticket.is-high,
body.nexa-admin-shell .tk-card.is-high{border-color:#d2def6!important;background:#f7faff!important}
body.nexa-admin-shell .nxp-empty{background:#f7f9fe!important;box-shadow:none!important;color:#60677d!important}
body.nexa-admin-shell .tk-priority-strip{
  background:linear-gradient(115deg,#fff 58%,#f0f4fd)!important;
  border-left:4px solid #00339a!important;box-shadow:var(--ux2-shadow)!important;
}
body.nexa-admin-shell .tk-priority-strip::after{border-color:#d4e0f7!important;animation:none!important}
body.nexa-admin-shell .tk-archive>summary,
body.nexa-admin-shell .tk-archive-item>summary{color:#26324f!important}
body.nexa-admin-shell .tk-message-list{background:#f7f9fe!important;box-shadow:none!important}
body.nexa-admin-shell .tk-message.consultante{background:#fff!important;color:#26324f!important}
body.nexa-admin-shell .tk-message.especialista{
  background:linear-gradient(110deg,#00339a,#1a4fc4)!important;color:#fff!important;
}
body.nexa-admin-shell .tk-message.especialista :is(span,strong,p,small){color:#fff!important}
body.nexa-admin-shell .tk-message.sistema{background:#eaeffa!important;color:#3b4f78!important}
body.nexa-admin-shell .tk-live-alert{background:#fff!important;color:#0e1a3a!important;border-color:#c3d0eb!important}
body.nexa-admin-shell .tk-live-alert p{color:#60677d!important}
body.nexa-admin-shell .nexa-platform-link{
  background:#eef3fc!important;border-color:#d2def5!important;color:#234c9f!important;
}
body.nexa-admin-shell .nexa-platform-link:hover{background:#e3ebfc!important;border-color:#b3c6ed!important}
@media(max-width:720px){
 body.nexa-admin-shell .nxp-hero{grid-template-columns:minmax(0,1fr)!important}
 body.nexa-admin-shell .nxp-main-grid{grid-template-columns:minmax(0,1fr)!important}
 body.nexa-admin-shell .nxp-actions-grid{grid-template-columns:minmax(0,1fr)!important}
 body.nexa-admin-shell .nxp-summary-list{min-width:0}
}

/* UX03 - correcciones focalizadas tras auditoría visual de módulos reales */
:root{--ux3-purple:#00339a;--ux3-blue:#1a4fc4;--ux3-ink:#0e1a3a;--ux3-line:#e2e7f2}
/* Barra de herramientas heredada; la sombra gris opaca no debe cubrir enlaces ni reloj. */
body:not(.v8-public-home) :is(.mp-app-tools,.topbar,.top),
body.nexa-admin-shell :is(.mp-app-tools,.topbar,.top){
  background:#fff!important;color:#0e1a3a!important;
  border:1px solid #e2e7f2!important;
  box-shadow:0 5px 18px rgba(8,26,74,.045)!important;
  opacity:1!important;filter:none!important;backdrop-filter:none!important
}
body:not(.v8-public-home) :is(.mp-app-tools,.topbar,.top) :is(a,span,small,strong),
body.nexa-admin-shell :is(.mp-app-tools,.topbar,.top) :is(a,span,small,strong){color:#4e5270!important}
body:not(.v8-public-home) .mp-app-tools :is(.mp-btn-primary,.btn),
body.nexa-admin-shell .mp-app-tools :is(.mp-btn-primary,.btn){color:#fff!important}
body:not(.v8-public-home) :is(.mp-app-tools,.topbar,.top)::after{display:none!important}
/* Analítica: en blanco, valores oscuros, gráficas violetas accesibles. */
body.nexa-admin-shell :is(.nx-saas02-hero,.nx-saas02-panel,.nx-analytics-kpi,.nx-analytics-insights article){
  background:#fff!important;color:#0e1a3a!important;border-color:#e2e7f2!important;
  box-shadow:0 6px 22px rgba(8,26,74,.05)!important
}
body.nexa-admin-shell .nx-analytics-hero{background:linear-gradient(110deg,#fff 55%,#f3f7ff)!important}
body.nexa-admin-shell :is(.nx-saas02-hero h1,.nx-saas02-panel h2,.nx-analytics-insights strong,.nx-analytics-kpi strong,.nx-saas02-plan-chip strong){color:#0e1a3a!important}
body.nexa-admin-shell :is(.nx-analytics-kpi span,.nx-analytics-kpi small,.nx-analytics-insights p,.nx-saas02-hero p,.nx-analytics-bar-item small){color:#60677d!important}
body.nexa-admin-shell .nx-analytics-bar-track{background:#eff3fa!important;border-color:#e0e6f1!important}
body.nexa-admin-shell .nx-analytics-bar-value{color:#2b4987!important}
body.nexa-admin-shell .nx-analytics-bar-track span{background:linear-gradient(180deg,#1a4fc4,#00339a)!important}
body.nexa-admin-shell .nx-saas02-link{color:#2857b6!important}
body.nexa-admin-shell .nx-saas02-plan-chip{background:#f1f6ff!important;border-color:#d7e1f6!important}
/* Catálogos simplificados mediante <details>: preservan FORM y POST originales. */
body.nexa-admin-shell .nx-service-disclosure,
body.nexa-admin-shell .instrument-admin{border:1px solid #e2e7f2!important;border-radius:15px!important;background:#fff!important;box-shadow:none!important;min-width:0}
body.nexa-admin-shell .nx-service-disclosure[open],
body.nexa-admin-shell .instrument-admin:has(details[open]){border-color:#c0d0f0!important;box-shadow:0 6px 18px rgba(30,50,90,.045)!important}
body.nexa-admin-shell :is(.nx-service-summary,.instrument-disclosure-summary){
  display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0;
  padding:17px 19px;cursor:pointer;list-style:none;color:#0e1a3a
}
body.nexa-admin-shell :is(.nx-service-summary,.instrument-disclosure-summary)::-webkit-details-marker{display:none}
body.nexa-admin-shell :is(.nx-service-summary,.instrument-disclosure-summary)::marker{content:''}
body.nexa-admin-shell :is(.nx-service-summary-main,.instrument-disclosure-summary>span:first-child){
  flex:1 1 230px;display:grid;gap:3px;min-width:0
}
body.nexa-admin-shell :is(.nx-service-summary,.instrument-disclosure-summary) strong{font-size:14px;color:#0e1a3a!important}
body.nexa-admin-shell :is(.nx-service-summary,.instrument-disclosure-summary) small{font-size:11px;color:#60677d!important}
body.nexa-admin-shell :is(.nx-service-summary-state,.instrument-disclosure-status){
  display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;
  font-size:11px;font-weight:700;background:#edf2fc;color:#2a53a7
}
body.nexa-admin-shell .nx-service-summary-state.is-active{background:#eff9f2;color:#1a7152}
body.nexa-admin-shell :is(.nx-service-summary-open,.instrument-disclosure-open){font-size:12px;font-weight:700;color:#2656b6!important}
body.nexa-admin-shell :is(.nx-service-summary,.instrument-disclosure-summary):focus-visible{outline:3px solid #3968c8;outline-offset:-3px;border-radius:14px}
body.nexa-admin-shell .nx-service-disclosure>.nx-service-row{border:0!important;border-top:1px solid #e7ebf4!important;border-radius:0 0 14px 14px!important;background:#f8fafe!important;padding:16px!important}
body.nexa-admin-shell .nx-service-row :is(input,textarea,select){background:#fff!important}
body.nexa-admin-shell .nx-service-disclosure .nx-service-actions{flex-wrap:wrap}
body.nexa-admin-shell .instrument-admin{padding:0!important}
body.nexa-admin-shell .instrument-disclosure>form{padding:16px!important;border-top:1px solid #e7ebf4;background:#f8fafe;border-radius:0 0 14px 14px}
body.nexa-admin-shell .nx-service-disclosure:not([open]) .nx-service-summary-open::after,
body.nexa-admin-shell .instrument-disclosure:not([open]) .instrument-disclosure-open::after{content:' ▾'}
body.nexa-admin-shell .nx-service-disclosure[open] .nx-service-summary-open::after,
body.nexa-admin-shell .instrument-disclosure[open] .instrument-disclosure-open::after{content:' ▴'}
/* Contexto y tablas, sin cuadros grises permanentes. */
body.nexa-admin-shell :is(.nx3-panel,.nx-saas02-panel,.nx-intake-question,.nx-intake-instrument,.nx-intake-submission){background:#fff!important;border-color:#e2e7f2!important}
body.nexa-admin-shell .nx3-panel-head p{color:#60677d!important}
body.nexa-admin-shell .nx-saas-compat-note{background:#f5f7fd!important}
body.nexa-admin-shell .nx-services-layout{align-items:start}
@media(max-width:760px){
 body.nexa-admin-shell :is(.nx-service-summary,.instrument-disclosure-summary){align-items:flex-start;padding:15px;gap:7px}
 body.nexa-admin-shell :is(.nx-service-summary-main,.instrument-disclosure-summary>span:first-child){flex-basis:100%}
 body.nexa-admin-shell .nx-analytics-bars{gap:9px;overflow-x:auto}
}
