/* ==========================================================
   JONAS · BRAND SYSTEM 2026
   Official palette supplied by Jonas
   Navy  #003366
   Pink  #FF3366
   Cyan  #66CCFF
   ========================================================== */

:root,
html:root{
  --jonas-navy:#003366 !important;
  --jonas-blue:#003366 !important;
  --jonas-cyan:#66CCFF !important;
  --jonas-pink:#FF3366 !important;
  --jonas-accent:#FF3366 !important;
  --jonas-primary:#003366 !important;
  --jonas-secondary:#66CCFF !important;
  --jonas-brand-action:#FF3366 !important;
  --jonas-bg:#F6F9FC !important;
  --jonas-surface:#FFFFFF !important;
  --jonas-border:#D9E4EC !important;
  --jonas-muted:#66798C !important;
  --jonas-text:#183248 !important;
  --jonas-shadow:0 14px 38px rgba(0,51,102,.10) !important;
}

/* R929 · Sistema transversal de tablas de ingeniería.
   Cabeceras luminosas, jerarquía de datos y densidad profesional. */
@media screen{
  :is(body.jonas-platform-integrated,body.jonas-platform-page,body:has(.jonas-platform-topbar)) table{
    border-collapse:separate !important;
    border-spacing:0 !important;
    width:100% !important;
    border:1px solid #d5e4ec !important;
    border-radius:14px !important;
    overflow:hidden !important;
    background:#fff !important;
    box-shadow:0 8px 24px rgba(3,48,79,.055) !important;
  }
  :is(body.jonas-platform-integrated,body.jonas-platform-page,body:has(.jonas-platform-topbar)) table thead :is(th,td){
    position:relative !important;
    padding:11px 13px !important;
    color:#123c59 !important;
    background:linear-gradient(180deg,#f8fcfd 0%,#eaf5f8 100%) !important;
    background-size:auto !important;
    border:0 !important;
    border-right:1px solid rgba(148,187,204,.28) !important;
    border-bottom:2px solid #54c8e8 !important;
    box-shadow:none !important;
    font-size:11px !important;
    font-weight:850 !important;
    line-height:1.2 !important;
    letter-spacing:.055em !important;
    text-transform:uppercase !important;
    white-space:normal !important;
  }
  :is(body.jonas-platform-integrated,body.jonas-platform-page,body:has(.jonas-platform-topbar)) table thead :is(th,td):first-child{
    padding-left:16px !important;
  }
  :is(body.jonas-platform-integrated,body.jonas-platform-page,body:has(.jonas-platform-topbar)) table thead :is(th,td):last-child{
    border-right:0 !important;
    padding-right:16px !important;
  }
  :is(body.jonas-platform-integrated,body.jonas-platform-page,body:has(.jonas-platform-topbar)) table tbody :is(td,th){
    padding:11px 13px !important;
    border:0 !important;
    border-bottom:1px solid #e0ebf0 !important;
    background:transparent !important;
    color:#263d50 !important;
    line-height:1.45 !important;
    vertical-align:top !important;
  }
  :is(body.jonas-platform-integrated,body.jonas-platform-page,body:has(.jonas-platform-topbar)) table tbody th{
    color:#0a4167 !important;
    font-weight:800 !important;
  }
  :is(body.jonas-platform-integrated,body.jonas-platform-page,body:has(.jonas-platform-topbar)) table tbody tr:last-child :is(td,th){border-bottom:0 !important}
  :is(body.jonas-platform-integrated,body.jonas-platform-page,body:has(.jonas-platform-topbar)) table tbody tr:nth-child(even){background:#f8fbfc !important}
  :is(body.jonas-platform-integrated,body.jonas-platform-page,body:has(.jonas-platform-topbar)) table tbody tr:hover{
    background:#eef9fb !important;
    box-shadow:inset 3px 0 0 #20afd2 !important;
  }
  @media(max-width:760px){
    :is(body.jonas-platform-integrated,body.jonas-platform-page,body:has(.jonas-platform-topbar)) table thead :is(th,td){padding:10px 11px !important;font-size:10px !important}
    :is(body.jonas-platform-integrated,body.jonas-platform-page,body:has(.jonas-platform-topbar)) table tbody :is(td,th){padding:10px 11px !important}
  }
}

/* Base */
html,body{
  background:#F6F9FC;
  color:#183248;
}
body{
  accent-color:#FF3366;
}
::selection{
  background:#66CCFF;
  color:#003366;
}
a:not(.btn):not(.admin-btn):not(.jonas-cta-primary):not(.jonas-result-primary):not(.jonas-review-primary){
  color:#003366;
}
a:not(.btn):hover{
  color:#FF3366;
}

/* Logos */
img[src*="jonas-logo"]{
  object-fit:contain;
}
.jonas-brand img,
.jonas-nav-brand img,
.admin-brand img,
header .brand img,
header .logo img{
  width:auto !important;
  max-width:230px !important;
  max-height:54px !important;
  object-fit:contain !important;
}
.jonas-login-logo img,
.jonas-login-brand img{
  width:auto !important;
  max-width:min(340px,82vw) !important;
  max-height:92px !important;
}

/* Dark brand surfaces */
.jonas-nav,
.jonas-navbar,
.jonas-topbar,
.jonas-login-side,
.jonas-dashboard-hero,
.jonas-result-hero,
.jonas-review-hero,
.admin-sidebar,
header.jonas-header,
.header-jonas{
  background:linear-gradient(135deg,#003366 0%,#002A55 68%,#001F3D 100%) !important;
}
.jonas-dashboard-hero,
.jonas-result-hero,
.jonas-review-hero{
  box-shadow:0 18px 46px rgba(0,51,102,.16);
}

/* Brand action */
.jonas-cta-primary,
.jonas-review-primary,
.jonas-result-primary,
.jonas-login-submit,
.admin-btn.primary,
.admin-btn-primary,
.btn.btn-primary,
.btn-primary,
button.btn-primary,
button[type="submit"].jonas-primary,
.r44bf-buttons button,
#r44bbStageActions button[type="submit"],
#r44bfStage4Actions button{
  background:#FF3366 !important;
  border-color:#FF3366 !important;
  color:#fff !important;
  box-shadow:0 8px 20px rgba(255,51,102,.20) !important;
}
.jonas-cta-primary:hover,
.jonas-review-primary:hover,
.jonas-result-primary:hover,
.jonas-login-submit:hover,
.admin-btn.primary:hover,
.admin-btn-primary:hover,
.btn-primary:hover,
.r44bf-buttons button:hover{
  background:#E52958 !important;
  border-color:#E52958 !important;
  transform:translateY(-1px);
}

/* Secondary / outline */
.jonas-cta-secondary,
.jonas-review-secondary,
.jonas-result-secondary,
.btn.secondary,
.btn-outline-primary,
.admin-btn.secondary,
.r44bf-buttons a{
  background:#fff !important;
  color:#003366 !important;
  border-color:#B7CAD9 !important;
}
.jonas-cta-secondary:hover,
.jonas-review-secondary:hover,
.jonas-result-secondary:hover,
.btn.secondary:hover,
.btn-outline-primary:hover,
.admin-btn.secondary:hover,
.r44bf-buttons a:hover{
  color:#FF3366 !important;
  border-color:#FF3366 !important;
  background:#FFF7FA !important;
}

/* Active navigation */
.jonas-nav a.active,
.jonas-nav-button.active,
.admin-nav a.active,
.admin-nav a[aria-current="page"],
.nav-link.active{
  background:rgba(102,204,255,.15) !important;
  color:#fff !important;
  box-shadow:inset 3px 0 0 #FF3366 !important;
}
.admin-nav a:hover,
.jonas-nav-button:hover{
  background:rgba(102,204,255,.10) !important;
  color:#fff !important;
}

/* Titles and key values */
.jonas-workspace-title h1,
.jonas-section-heading h2,
.jonas-panel-head h3,
.jonas-module-featured h3,
.jonas-metric strong,
.jonas-tech-kpi input,
.jonas-review-section-head strong,
.jonas-review-model-title strong,
.jonas-typology-id,
.jonas-typology-flow strong,
.jonas-report-divider strong,
.jonas-zone-panel-head strong,
.admin-title,
.product-name{
  color:#003366 !important;
}

/* Cyan support color */
.jonas-module-badge,
.jonas-standard-pill,
.jonas-review-source,
.jonas-review-editable,
.jonas-dropzone-icon,
.jonas-review-section-head > div:first-child > span,
.badge.blue{
  background:#EAF8FF !important;
  color:#003366 !important;
  border-color:#A9E3FF !important;
}
.jonas-orbit i,
.jonas-typology-surface,
.jonas-engine-preview-foot b{
  color:#009FDC !important;
}
.jonas-review-model-index{
  background:linear-gradient(135deg,#003366 0%,#66CCFF 100%) !important;
  box-shadow:0 8px 18px rgba(0,51,102,.18) !important;
}

/* Steps / workflow */
.jonas-step.active .step-num,
.jonas-step.is-active .step-num,
.r44an-step.active,
.r44an-step.is-active,
.r44-stage.active,
.step.active .step-num{
  background:#FF3366 !important;
  color:#fff !important;
  border-color:#FF3366 !important;
}
.jonas-step.done .step-num,
.jonas-step.is-done .step-num{
  background:#003366 !important;
  color:#fff !important;
}
.r44an-progress,
.progress-bar{
  background:linear-gradient(90deg,#003366,#66CCFF,#FF3366) !important;
}

/* Forms */
.form-control:focus,
.form-select:focus,
.admin-input:focus,
.admin-select:focus,
.admin-textarea:focus,
.jonas-field input:focus,
.jonas-field select:focus,
.jonas-review-field input:focus,
.jonas-review-field textarea:focus{
  border-color:#66CCFF !important;
  box-shadow:0 0 0 .2rem rgba(102,204,255,.22) !important;
  outline:0 !important;
}
input[type="checkbox"],
input[type="radio"]{
  accent-color:#FF3366 !important;
}

/* Cards */
.jonas-panel,
.jonas-card,
.admin-card,
.form-section,
.side-card,
.toolbar,
.r44-card{
  border-color:#D9E4EC !important;
  box-shadow:0 8px 24px rgba(0,51,102,.06);
}

/* Tables */
.header-jonas,
.header-jonas th,
table .header-jonas th{
  background:#003366 !important;
  color:#fff !important;
}
.admin-table th{
  background:#F0F6FA !important;
  color:#003366 !important;
  border-bottom-color:#D5E3EC !important;
}

/* ==========================================================
   R920 · JONAS INTERFACE 3.0
   Modernización visible + sistema sticky superior coordinado.
   Esta capa se mantiene al final porque brand-2026 es la última
   hoja compartida cargada por las vistas históricas.
   ========================================================== */
:root{
  --j920-topbar-h:70px;
  --j920-stage-gap:8px;
  --j920-navy:#042f57;
  --j920-blue:#075f8f;
  --j920-cyan:#4bc9e9;
  --j920-green:#14845c;
  --j920-ink:#102c46;
  --j920-muted:#63788b;
  --j920-line:#c9dce7;
  --j920-bg:#eef5f8;
  --j920-shadow:0 16px 42px rgba(3,43,77,.10);
}

html{
  min-height:100%;
  overflow-x:clip!important;
  overflow-y:auto!important;
  scroll-padding-top:calc(var(--j920-topbar-h) + 82px);
}
html body.jonas-platform-page,
html body.jonas-platform-integrated,
html body.r44an-mode-viewer,
html body.r44ay-result-page{
  min-height:100%;
  overflow-x:clip!important;
  overflow-y:visible!important;
  background:
    radial-gradient(circle at 92% 3%,rgba(75,201,233,.16),transparent 28rem),
    linear-gradient(rgba(4,47,87,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(4,47,87,.025) 1px,transparent 1px),
    linear-gradient(180deg,#f8fbfd 0%,var(--j920-bg) 100%)!important;
  background-size:auto,32px 32px,32px 32px,auto!important;
}

/* Dos niveles superiores reales: navegación global y etapas. */
html body .jonas-platform-topbar{
  position:sticky!important;
  inset:0 0 auto 0!important;
  top:0!important;
  z-index:2147482000!important;
  isolation:isolate!important;
  height:var(--j920-topbar-h)!important;
  background:linear-gradient(108deg,#022b50 0%,#074574 58%,#08768d 100%)!important;
  border-bottom:1px solid rgba(113,220,244,.26)!important;
  box-shadow:0 12px 34px rgba(2,35,65,.24)!important;
  backdrop-filter:blur(20px) saturate(150%)!important;
  -webkit-backdrop-filter:blur(20px) saturate(150%)!important;
}
html body .jonas-platform-inner{
  width:min(calc(100% - 32px),1780px)!important;
  min-height:var(--j920-topbar-h)!important;
}
html body .jonas-platform-nav{
  padding:5px!important;
  gap:3px!important;
  border:1px solid rgba(255,255,255,.09)!important;
  border-radius:15px!important;
  background:rgba(0,23,47,.15)!important;
}
html body .jonas-nav-item{
  min-height:42px!important;
  padding-inline:15px!important;
  border-radius:11px!important;
  color:#e6f2f8!important;
  font-weight:750!important;
}
html body .jonas-nav-item:hover{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(255,255,255,.13)!important;
}
html body .jonas-nav-item.is-active,
html body .jonas-nav-group.is-active>.jonas-nav-item{
  background:linear-gradient(135deg,rgba(86,209,239,.30),rgba(255,255,255,.12))!important;
  border-color:rgba(126,225,246,.45)!important;
  box-shadow:inset 0 -2px 0 #70def6,0 8px 22px rgba(0,22,46,.20)!important;
}
html body :is(.jonas-nav-dropdown,.jonas-profile-menu){
  z-index:2147483000!important;
  padding:8px!important;
  border:1px solid rgba(185,213,228,.96)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.985)!important;
  box-shadow:0 24px 70px rgba(2,39,70,.23)!important;
}

html body[data-workflow-current-stage] .jonas-unified-stage-menu,
html body.r44an-mode-viewer .jonas-unified-stage-menu,
html body .r44aw-steps.jonas-unified-stage-menu{
  position:sticky!important;
  top:calc(var(--j920-topbar-h) + var(--j920-stage-gap))!important;
  z-index:2147481000!important;
  isolation:isolate!important;
  width:100%!important;
  margin:0 0 12px!important;
  padding:7px!important;
  gap:5px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  border:1px solid rgba(193,214,225,.98)!important;
  border-radius:17px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 15px 38px rgba(3,45,81,.14)!important;
  backdrop-filter:blur(20px) saturate(150%)!important;
  -webkit-backdrop-filter:blur(20px) saturate(150%)!important;
}
html body .jonas-unified-stage-menu>a{
  min-height:46px!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  font-weight:780!important;
  transition:background .18s ease,border-color .18s ease,transform .18s ease!important;
}
html body .jonas-unified-stage-menu>a:hover:not([aria-disabled=true]){
  transform:translateY(-1px)!important;
  border-color:#c8e2ec!important;
  background:#eff9fc!important;
}
html body .jonas-unified-stage-menu>a:is([aria-current=step],.is-active,.active){
  color:#fff!important;
  border-color:#086985!important;
  background:linear-gradient(135deg,#063b68,#087e9b)!important;
  box-shadow:0 9px 22px rgba(5,71,112,.25)!important;
}

/* Jerarquía visual inequívoca y superficies con profundidad. */
html body :is(.jonas-page-shell,.jonas-admin-content,.jonas-workspace){
  width:min(calc(100% - 32px),1780px)!important;
  max-width:1780px!important;
}
html body :is(.jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,.r44aw-intro,.r44an-heading){
  position:relative!important;
  min-height:82px!important;
  padding:17px 28px 17px 34px!important;
  border:1px solid rgba(191,214,226,.98)!important;
  border-radius:18px!important;
  background:linear-gradient(115deg,#fff 0%,#f8fbfd 72%,#e5f7fb 100%)!important;
  box-shadow:var(--j920-shadow)!important;
}
html body :is(.jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,.r44aw-intro,.r44an-heading)::before{
  content:""!important;
  position:absolute!important;
  inset:15px auto 15px 0!important;
  width:5px!important;
  border-radius:0 8px 8px 0!important;
  background:linear-gradient(180deg,var(--j920-cyan),var(--j920-green))!important;
}
html body :is(.jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,.r44aw-intro,.r44an-heading) :is(h1,h2){
  margin:0 0 5px!important;
  padding-left:0!important;
  color:var(--j920-navy)!important;
  font-size:clamp(28px,2.1vw,40px)!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
}
html body :is(.jonas-card,.admin-card,.jonas-panel,.form-section,.side-card,.toolbar,.r44-card,.r44ay-card,.jonas-result-kpis>*){
  border:1px solid rgba(195,216,227,.98)!important;
  border-radius:18px!important;
  background:linear-gradient(150deg,#fff 0%,#fff 76%,#f3f9fb 100%)!important;
  box-shadow:0 14px 38px rgba(3,45,81,.09)!important;
}
html body :is(.jonas-card,.admin-card,.jonas-panel,.form-section,.side-card,.r44-card,.jonas-result-kpis>*){
  position:relative!important;
}
html body :is(.jonas-card,.admin-card,.jonas-panel,.form-section,.side-card,.r44-card,.jonas-result-kpis>*)::before{
  content:""!important;
  position:absolute!important;
  inset:0 18px auto!important;
  height:3px!important;
  border-radius:0 0 5px 5px!important;
  background:linear-gradient(90deg,var(--j920-cyan),var(--j920-green))!important;
  opacity:.74!important;
  pointer-events:none!important;
}
html body :is(.jonas-card-head,.admin-card-header,.jonas-panel-head){
  padding:13px 17px!important;
  border-bottom:1px solid #dfeaf0!important;
  background:linear-gradient(90deg,rgba(232,248,252,.86),rgba(255,255,255,.26))!important;
}

/* Controles, tablas y acciones coherentes; verde = avanzar. */
html body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){
  border-color:#c4d8e3!important;
  border-radius:11px!important;
  background:linear-gradient(180deg,#fff,#fafcfd)!important;
  box-shadow:0 1px 2px rgba(3,45,81,.025)!important;
}
html body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea):focus{
  border-color:#2aa7cd!important;
  box-shadow:0 0 0 4px rgba(75,201,233,.18)!important;
}
html body thead :is(th,td){
  padding-block:12px!important;
  border-bottom:1px solid #b9d2df!important;
  background:linear-gradient(180deg,#edf7fa,#e1eef4)!important;
  color:#234861!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
}
html body tbody tr:nth-child(even){background:rgba(238,247,250,.56)!important}
html body tbody tr:hover{background:#eaf8fb!important;box-shadow:inset 3px 0 0 var(--j920-cyan)!important}
html body :is([data-next-stage],.jonas-review-primary,.jonas-result-primary,.btn-success,.jonas-btn.success){
  color:#fff!important;
  border-color:#117550!important;
  background:linear-gradient(135deg,#188f64,#0f704d)!important;
  box-shadow:0 10px 24px rgba(20,128,88,.22)!important;
}

@media(max-width:900px){
  :root{--j920-topbar-h:64px;--j920-stage-gap:6px}
  html body .jonas-platform-topbar{height:var(--j920-topbar-h)!important}
  html body .jonas-platform-inner{width:calc(100% - 20px)!important;min-height:var(--j920-topbar-h)!important}
  html body .jonas-platform-nav{border:0!important;background:rgba(2,43,80,.99)!important}
  html body :is(.jonas-page-shell,.jonas-admin-content,.jonas-workspace){width:calc(100% - 18px)!important}
  html body[data-workflow-current-stage] .jonas-unified-stage-menu,
  html body.r44an-mode-viewer .jonas-unified-stage-menu,
  html body .r44aw-steps.jonas-unified-stage-menu{top:calc(var(--j920-topbar-h) + var(--j920-stage-gap))!important}
}
@media(max-width:700px){
  :root{--j920-topbar-h:60px;--j920-stage-gap:4px}
  html body .jonas-platform-topbar{height:var(--j920-topbar-h)!important}
  html body .jonas-unified-stage-menu>a{flex:0 0 min(76vw,250px)!important;min-height:44px!important}
  html body :is(.jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,.r44aw-intro,.r44an-heading){min-height:70px!important;padding:13px 16px 13px 24px!important;border-radius:14px!important}
  html body :is(.jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,.r44aw-intro,.r44an-heading) :is(h1,h2){font-size:clamp(24px,7vw,31px)!important}
  html body :is(.jonas-card,.admin-card,.jonas-panel,.form-section,.side-card,.toolbar,.r44-card){border-radius:14px!important}
}
.admin-table tbody tr:hover{
  background:#F6FBFE !important;
}

/* Loaders / progress */
.spin,
.jonas-spinner,
.loader-spinner{
  border-color:#C9EFFF !important;
  border-top-color:#FF3366 !important;
}
#loader{
  color:#003366 !important;
}
.jonas-loader-metric strong{
  color:#66CCFF !important;
}

/* Existing R44 controls */
#r44bbStageActions,
#r44bfStage4Actions{
  border-color:#D5E3EC !important;
  box-shadow:0 18px 46px rgba(0,51,102,.14) !important;
}
#r44bbStageActions .copy strong,
#r44bfStage4Actions .copy strong{
  color:#003366 !important;
}

/* Keep semantic colors semantic: success / warning / danger remain green/amber/red.
   Branding is applied to structural UI, navigation, CTAs and active states. */

@media (max-width:760px){
  .jonas-brand img,
  .jonas-nav-brand img,
  .admin-brand img{
    max-width:190px !important;
    max-height:46px !important;
  }
}

/* JONAS_HF21_ROOT_STAGE_CONTRAST_FINAL */
.r44an-steps a.active,
.r44aw-steps a.active,
.r44an-step.active,
.r44aw-step.active {
    background:#003366 !important;
    border-color:#003366 !important;
    color:#fff !important;
}

.r44an-steps a.active *,
.r44aw-steps a.active *,
.r44an-step.active *,
.r44aw-step.active * {
    color:#fff !important;
}

.r44an-steps a.active b,
.r44aw-steps a.active b {
    background:#66CCFF !important;
    color:#003366 !important;
}

/* R920_FINAL_CASCADE_GUARD
   This file is intentionally the last visual layer in legacy pages. */
html body .jonas-platform-topbar{
  position:sticky !important;
  top:0 !important;
  z-index:2147482000 !important;
}
html body[data-workflow-current-stage] .jonas-unified-stage-menu,
html body.r44an-mode-viewer .jonas-unified-stage-menu,
html body.r44aw-mode-viewer .jonas-unified-stage-menu{
  position:sticky !important;
  top:calc(var(--j920-topbar-h,70px) + 8px) !important;
  z-index:2147481000 !important;
}
html body[data-workflow-current-stage] .jonas-unified-stage-menu>a:is([aria-current="step"],.is-active,.active),
html body.r44an-mode-viewer .jonas-unified-stage-menu>a:is([aria-current="step"],.is-active,.active),
html body.r44aw-mode-viewer .jonas-unified-stage-menu>a:is([aria-current="step"],.is-active,.active){
  color:#fff !important;
  border-color:transparent !important;
  background:linear-gradient(135deg,#063f72 0%,#057fa6 100%) !important;
  box-shadow:0 10px 24px rgba(0,69,120,.22) !important;
}
html body[data-workflow-current-stage],
html body.r44an-mode-viewer,
html body.r44aw-mode-viewer{
  overflow-y:visible !important;
}

/* ==========================================================
   R923 · JONAS ENGINEERING COMMAND SYSTEM
   Lenguaje visual transversal de investigación e ingeniería.
   Conserva la paleta y evita efectos que reduzcan legibilidad.
   ========================================================== */
:root{
  --j923-ink:#062a4b;
  --j923-deep:#031f3b;
  --j923-panel:#ffffff;
  --j923-cyan:#4bc9e9;
  --j923-cyan-strong:#00a8d8;
  --j923-green:#16855d;
  --j923-line:rgba(34,135,171,.18);
  --j923-glow:0 0 0 1px rgba(75,201,233,.10),0 18px 48px rgba(3,42,75,.10);
}

html body:not(.jonas-login-page){
  background-color:#f3f8fb !important;
  background-image:
    linear-gradient(rgba(23,112,153,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(23,112,153,.035) 1px,transparent 1px),
    radial-gradient(circle at 94% 8%,rgba(75,201,233,.14),transparent 28%) !important;
  background-size:32px 32px,32px 32px,100% 100% !important;
  background-attachment:fixed !important;
}

/* Barra superior como consola de ingeniería. */
html body .jonas-platform-topbar{
  border-bottom:1px solid rgba(102,204,255,.42) !important;
  background:
    linear-gradient(90deg,rgba(75,201,233,.08) 1px,transparent 1px),
    linear-gradient(135deg,#031f3b 0%,#063a65 64%,#06677f 100%) !important;
  background-size:38px 100%,100% 100% !important;
  box-shadow:0 12px 34px rgba(2,29,56,.23),inset 0 -1px rgba(102,204,255,.18) !important;
}
html body .jonas-platform-inner{
  position:relative !important;
}
html body .jonas-platform-inner::after{
  content:"SYSTEM ONLINE" !important;
  position:absolute !important;
  right:18px !important;
  bottom:-8px !important;
  padding:2px 8px !important;
  border:1px solid rgba(75,201,233,.32) !important;
  border-radius:999px !important;
  background:#062b4b !important;
  color:#8ce8fa !important;
  font-size:8px !important;
  font-weight:850 !important;
  letter-spacing:.16em !important;
  pointer-events:none !important;
}
html body .jonas-platform-nav{
  border:1px solid rgba(102,204,255,.18) !important;
  background:rgba(1,34,65,.32) !important;
  box-shadow:inset 0 1px rgba(255,255,255,.05) !important;
}
html body .jonas-platform-nav :is(a,button){
  position:relative !important;
  border-radius:10px !important;
}
html body .jonas-platform-nav :is(a,button):hover{
  background:rgba(75,201,233,.12) !important;
  box-shadow:inset 0 0 0 1px rgba(75,201,233,.20) !important;
}
html body .jonas-platform-nav :is(a,button).active,
html body .jonas-platform-nav :is(a,button)[aria-current="page"]{
  background:linear-gradient(135deg,rgba(69,166,211,.28),rgba(75,201,233,.12)) !important;
  box-shadow:inset 0 0 0 1px rgba(102,204,255,.42),0 7px 22px rgba(0,0,0,.12) !important;
}
html body .jonas-platform-nav :is(a,button).active::after,
html body .jonas-platform-nav :is(a,button)[aria-current="page"]::after{
  content:"" !important;
  position:absolute !important;
  inset:auto 16px -1px !important;
  height:2px !important;
  border-radius:3px !important;
  background:var(--j923-cyan) !important;
  box-shadow:0 0 9px rgba(75,201,233,.72) !important;
}

/* Cabeceras: lectura de misión, no tarjeta administrativa. */
html body :is(.jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,.r44aw-intro,.r44an-heading){
  overflow:hidden !important;
  border-color:rgba(37,136,170,.24) !important;
  border-radius:16px !important;
  background:
    linear-gradient(90deg,rgba(75,201,233,.06) 1px,transparent 1px),
    linear-gradient(135deg,#fff 0%,#f7fcfe 72%,#e5f7fb 100%) !important;
  background-size:28px 100%,100% 100% !important;
  box-shadow:var(--j923-glow) !important;
}
html body :is(.jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,.r44aw-intro,.r44an-heading)::after{
  content:"" !important;
  position:absolute !important;
  width:190px !important;
  height:190px !important;
  right:-75px !important;
  top:-105px !important;
  border:1px solid rgba(0,168,216,.20) !important;
  border-radius:50% !important;
  box-shadow:0 0 0 24px rgba(75,201,233,.045),0 0 0 48px rgba(75,201,233,.025) !important;
  pointer-events:none !important;
}
html body :is(.jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,.r44aw-intro,.r44an-heading) :is(h1,h2){
  font-weight:870 !important;
  text-wrap:balance !important;
}

/* Progreso operativo: carril de misión compacto y claramente activo. */
html body .jonas-unified-stage-menu{
  padding:7px !important;
  border-color:rgba(42,139,173,.23) !important;
  background:rgba(248,252,254,.94) !important;
  box-shadow:0 16px 42px rgba(3,42,75,.13),inset 0 1px #fff !important;
}
html body .jonas-unified-stage-menu>a{
  position:relative !important;
  min-height:44px !important;
  overflow:hidden !important;
  color:#315269 !important;
}
html body .jonas-unified-stage-menu>a::after{
  content:"" !important;
  position:absolute !important;
  left:14px !important;
  right:14px !important;
  bottom:0 !important;
  height:2px !important;
  background:transparent !important;
}
html body .jonas-unified-stage-menu>a:is([aria-current="step"],.is-active,.active){
  background:
    linear-gradient(90deg,rgba(75,201,233,.10) 1px,transparent 1px),
    linear-gradient(135deg,#04345e,#057d9e) !important;
  background-size:24px 100%,100% 100% !important;
  box-shadow:0 9px 24px rgba(0,74,121,.25),inset 0 0 0 1px rgba(113,224,247,.30) !important;
}
html body .jonas-unified-stage-menu>a:is([aria-current="step"],.is-active,.active)::after{
  background:#7be7f7 !important;
  box-shadow:0 0 10px rgba(75,201,233,.8) !important;
}

/* Superficies y métricas: paneles de instrumentación. */
html body :is(.jonas-card,.admin-card,.jonas-panel,.form-section,.side-card,.toolbar,.r44-card,.r44ay-card,.jonas-result-kpis>*){
  border-color:rgba(52,132,165,.24) !important;
  border-radius:15px !important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.99),rgba(246,251,253,.98)) !important;
  box-shadow:0 12px 34px rgba(3,42,75,.075),inset 0 1px #fff !important;
}
html body :is(.jonas-card,.admin-card,.jonas-panel,.form-section,.side-card,.r44-card,.jonas-result-kpis>*)::before{
  inset:0 16px auto !important;
  height:2px !important;
  opacity:.95 !important;
  background:linear-gradient(90deg,var(--j923-cyan-strong),var(--j923-cyan),var(--j923-green)) !important;
  box-shadow:0 0 10px rgba(75,201,233,.22) !important;
}
html body :is(.jonas-metric,.jonas-tech-kpi,.jonas-result-kpis>*,.stat-card,.kpi-card){
  min-height:96px !important;
  position:relative !important;
  overflow:hidden !important;
}
html body :is(.jonas-metric,.jonas-tech-kpi,.jonas-result-kpis>*,.stat-card,.kpi-card)::after{
  content:"" !important;
  position:absolute !important;
  width:44px !important;
  height:44px !important;
  right:-16px !important;
  bottom:-16px !important;
  border:1px solid rgba(0,168,216,.18) !important;
  border-radius:50% !important;
  box-shadow:0 0 0 10px rgba(75,201,233,.035) !important;
  pointer-events:none !important;
}
html body :is(.jonas-metric,.jonas-tech-kpi,.stat-card,.kpi-card) :is(strong,.value,.number){
  font-variant-numeric:tabular-nums !important;
  letter-spacing:-.035em !important;
}

/* Tablas de datos y formularios con precisión visual. */
html body table{
  overflow:hidden !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  border:1px solid rgba(48,132,166,.18) !important;
  border-radius:12px !important;
  background:rgba(255,255,255,.86) !important;
}
html body thead :is(th,td){
  background:
    linear-gradient(90deg,rgba(75,201,233,.07) 1px,transparent 1px),
    linear-gradient(180deg,#ecf8fb,#deedf3) !important;
  background-size:22px 100%,100% 100% !important;
  color:#173f5a !important;
}
html body tbody :is(td,th){
  border-bottom-color:rgba(50,127,157,.13) !important;
}
html body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea){
  min-height:42px !important;
  border-color:rgba(55,130,161,.30) !important;
  background:linear-gradient(180deg,#fff,#f8fcfd) !important;
  box-shadow:inset 0 1px 2px rgba(3,42,75,.035) !important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease !important;
}
html body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea):focus{
  border-color:var(--j923-cyan-strong) !important;
  background:#fff !important;
  box-shadow:0 0 0 3px rgba(75,201,233,.16),0 0 18px rgba(75,201,233,.08) !important;
}
html body label{
  color:#36566c !important;
  font-size:12px !important;
  font-weight:780 !important;
  letter-spacing:.015em !important;
}

/* Acciones: ingeniería seria, estado inequívoco. */
html body :is(.btn,button,.admin-btn,.jonas-btn){
  border-radius:10px !important;
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease !important;
}
html body :is(.btn,button,.admin-btn,.jonas-btn):hover:not(:disabled){
  transform:translateY(-1px) !important;
}
html body :is([data-next-stage],.jonas-review-primary,.jonas-result-primary,.btn-success,.jonas-btn.success){
  background:linear-gradient(135deg,#179468,#0b6949) !important;
  box-shadow:0 11px 26px rgba(17,117,80,.24),inset 0 1px rgba(255,255,255,.17) !important;
}
html body :is([data-next-stage],.jonas-review-primary,.jonas-result-primary,.btn-success,.jonas-btn.success):hover:not(:disabled){
  filter:saturate(1.08) brightness(1.04) !important;
  box-shadow:0 14px 30px rgba(17,117,80,.29),0 0 0 3px rgba(31,157,108,.10) !important;
}

/* Visores: lienzo técnico distinguible y sin bloquear desplazamiento. */
html body :is(.plan-viewer,.plan-canvas,.canvas-wrap,.jonas-viewer,.pdf-stage,.report-frame-wrap){
  border:1px solid rgba(36,124,160,.25) !important;
  border-radius:14px !important;
  background-color:#eaf3f7 !important;
  background-image:
    linear-gradient(rgba(19,111,151,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(19,111,151,.045) 1px,transparent 1px) !important;
  background-size:24px 24px !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72),0 14px 34px rgba(3,42,75,.09) !important;
  overscroll-behavior:contain !important;
}

/* Estados y chips con lectura instrumental. */
html body :is(.badge,.pill,.chip,.status-badge,.jonas-standard-pill){
  border-radius:999px !important;
  font-weight:800 !important;
  letter-spacing:.015em !important;
  box-shadow:inset 0 1px rgba(255,255,255,.52) !important;
}
html body :is(.empty-state,.jonas-empty,.no-results){
  border:1px dashed rgba(39,139,177,.34) !important;
  border-radius:15px !important;
  background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(232,248,252,.72)) !important;
}

/* Barras de avance inferiores: ancho completo y aspecto de control. */
html body :is(#r44bbStageActions,#r44bfStage4Actions,.jonas-stage-actions,.sticky-actions,.bottom-actions){
  border-color:rgba(43,135,170,.25) !important;
  background:rgba(250,253,254,.95) !important;
  box-shadow:0 -14px 36px rgba(3,42,75,.13),inset 0 1px #fff !important;
  backdrop-filter:blur(18px) saturate(145%) !important;
  -webkit-backdrop-filter:blur(18px) saturate(145%) !important;
}

@media(max-width:900px){
  html body .jonas-platform-inner::after{display:none !important}
  html body :is(.jonas-metric,.jonas-tech-kpi,.jonas-result-kpis>*,.stat-card,.kpi-card){min-height:82px !important}
}
@media(max-width:700px){
  html body:not(.jonas-login-page){background-size:24px 24px,24px 24px,100% 100% !important}
  html body :is(.jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,.r44aw-intro,.r44an-heading)::after{opacity:.55 !important}
  html body :is(.jonas-card,.admin-card,.jonas-panel,.form-section,.side-card,.toolbar,.r44-card,.r44ay-card){border-radius:12px !important}
}

/* ==========================================================
   R924 · MISSION CONTROL — cambio visual inequívoco
   Capa de alto impacto para las vistas realmente renderizadas.
   ========================================================== */
:root{
  --j924-navy:#021f3b;
  --j924-blue:#064f80;
  --j924-cyan:#63ddf4;
  --j924-cyan-soft:#dff8fc;
  --j924-green:#13865d;
  --j924-white:#fff;
}

html body:not(.jonas-login-page) :is(
  .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
  .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
){
  position:relative !important;
  min-height:112px !important;
  padding:24px 30px !important;
  border:1px solid rgba(99,221,244,.34) !important;
  border-left:5px solid var(--j924-cyan) !important;
  color:#fff !important;
  background:
    linear-gradient(rgba(99,221,244,.065) 1px,transparent 1px),
    linear-gradient(90deg,rgba(99,221,244,.065) 1px,transparent 1px),
    linear-gradient(118deg,#021f3b 0%,#06466f 68%,#087c91 100%) !important;
  background-size:28px 28px,28px 28px,100% 100% !important;
  box-shadow:0 20px 52px rgba(2,31,59,.22),inset 0 1px rgba(255,255,255,.08) !important;
}
html body:not(.jonas-login-page) :is(
  .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
  .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
) :is(h1,h2,h3,strong,.title){color:#fff !important}
html body:not(.jonas-login-page) :is(
  .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
  .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
) :is(p,small,.subtitle,.muted){color:#cbe5ef !important}

/* Identidad de centro de investigación, visible sin invadir contenido. */
html body:not(.jonas-login-page) :is(
  .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
  .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
)::before{
  content:"JONAS / ENGINEERING CONTROL" !important;
  display:block !important;
  margin-bottom:8px !important;
  color:#8cecff !important;
  font-size:9px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.2em !important;
}

/* Los contenedores principales dejan de verse como formularios genéricos. */
html body:not(.jonas-login-page) :is(
  .jonas-card,.admin-card,.jonas-panel,.form-section,.side-card,.r44-card,
  .r44ay-card,.content-card,.panel,.card
){
  border:1px solid rgba(31,128,165,.23) !important;
  border-radius:16px !important;
  background:linear-gradient(145deg,#fff 0%,#f7fbfd 100%) !important;
  box-shadow:0 14px 36px rgba(2,31,59,.09),inset 0 1px #fff !important;
}
html body:not(.jonas-login-page) :is(
  .jonas-card-head,.admin-card-head,.card-header,.panel-header,.section-header,
  .r44-card-header,.jonas-section-head
){
  position:relative !important;
  padding:14px 18px !important;
  border-bottom:1px solid rgba(99,221,244,.18) !important;
  color:#fff !important;
  background:
    linear-gradient(90deg,rgba(99,221,244,.07) 1px,transparent 1px),
    linear-gradient(110deg,#032846,#07567d) !important;
  background-size:24px 100%,100% 100% !important;
}
html body:not(.jonas-login-page) :is(
  .jonas-card-head,.admin-card-head,.card-header,.panel-header,.section-header,
  .r44-card-header,.jonas-section-head
) :is(h1,h2,h3,h4,strong,span,p){color:inherit !important}

/* Métricas como instrumentación: más contraste y lectura inmediata. */
html body:not(.jonas-login-page) :is(
  .jonas-metric,.jonas-tech-kpi,.jonas-result-kpis>*,.stat-card,.kpi-card,.metric-card
){
  border-top:3px solid var(--j924-cyan) !important;
  background:
    linear-gradient(135deg,rgba(99,221,244,.09),transparent 46%),
    linear-gradient(145deg,#fff,#f0f8fb) !important;
}
html body:not(.jonas-login-page) :is(
  .jonas-metric,.jonas-tech-kpi,.jonas-result-kpis>*,.stat-card,.kpi-card,.metric-card
) :is(.value,.number,strong){color:#003e6b !important}

/* Tablas con cabecera de datos técnica y filas compactas. */
html body:not(.jonas-login-page) table thead :is(th,td){
  color:#fff !important;
  border-bottom:1px solid rgba(99,221,244,.35) !important;
  background:
    linear-gradient(90deg,rgba(99,221,244,.08) 1px,transparent 1px),
    linear-gradient(110deg,#042b4c,#08607f) !important;
  background-size:22px 100%,100% 100% !important;
}
html body:not(.jonas-login-page) table tbody tr:nth-child(even){background:rgba(222,242,248,.38) !important}
html body:not(.jonas-login-page) table tbody tr:hover{background:rgba(99,221,244,.12) !important}

/* Etapas como carril de misión. */
html body .jonas-unified-stage-menu{
  gap:7px !important;
  border:1px solid rgba(21,119,159,.26) !important;
  border-radius:16px !important;
  background:rgba(237,247,251,.96) !important;
}
html body .jonas-unified-stage-menu>a{
  border:1px solid rgba(29,116,151,.14) !important;
  background:rgba(255,255,255,.82) !important;
}
html body .jonas-unified-stage-menu>a:is([aria-current="step"],.is-active,.active){
  border-color:rgba(99,221,244,.45) !important;
  background:
    linear-gradient(rgba(99,221,244,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(99,221,244,.07) 1px,transparent 1px),
    linear-gradient(120deg,#022744,#06708e) !important;
  background-size:20px 20px,20px 20px,100% 100% !important;
}

/* Formularios: agrupación visible y foco de precisión. */
html body:not(.jonas-login-page) :is(fieldset,.form-grid,.fields-grid,.admin-form-grid){
  border-color:rgba(30,128,165,.20) !important;
  background:rgba(250,253,254,.83) !important;
}
html body:not(.jonas-login-page) :is(input,select,textarea):focus{
  outline:none !important;
  border-color:#00a8d8 !important;
  box-shadow:0 0 0 3px rgba(0,168,216,.15),0 6px 18px rgba(2,58,88,.08) !important;
}

/* Acciones principales inequívocas. */
html body:not(.jonas-login-page) :is(
  .btn-primary,.admin-btn.primary,.jonas-btn.primary,[data-primary-action]
){
  color:#fff !important;
  border-color:#076a4b !important;
  background:linear-gradient(135deg,#19976c,#08704d) !important;
  box-shadow:0 12px 28px rgba(8,112,77,.24),inset 0 1px rgba(255,255,255,.18) !important;
}

/* La portada deja de gastar altura sin perder impacto. */
html body:not(.jonas-login-page) :is(.jonas-home-hero,.home-hero,.hero-panel){
  min-height:0 !important;
  padding-top:clamp(34px,4vw,64px) !important;
  padding-bottom:clamp(34px,4vw,64px) !important;
}

@media(max-width:760px){
  html body:not(.jonas-login-page) :is(
    .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
    .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
  ){
    min-height:88px !important;
    padding:18px 20px !important;
  }
  html body:not(.jonas-login-page) :is(
    .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
    .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
  )::before{font-size:8px !important}
}

/* ==========================================================
   R927 · CABECERA DE INGENIERÍA SIN SUPERPOSICIONES
   La identidad tecnológica se expresa con geometría, no con
   texto decorativo que compita con el título de la pantalla.
   ========================================================== */
html body:not(.jonas-login-page) :is(
  .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
  .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
){
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:20px !important;
  text-align:left !important;
  border:0 !important;
  box-shadow:none !important;
  background:linear-gradient(112deg,#04335d 0%,#075481 68%,#07849a 100%) !important;
  min-height:96px !important;
  padding:20px 32px 20px 36px !important;
  isolation:isolate !important;
}
html body:not(.jonas-login-page) :is(
  .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
  .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
)::before,
html body:not(.jonas-login-page) :is(
  .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
  .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
)::after{
  content:none !important;
  display:none !important;
}
html body:not(.jonas-login-page) :is(
  .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
  .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
) > *{
  position:relative !important;
  z-index:2 !important;
  max-width:min(100%,1200px) !important;
  text-align:left !important;
}
html body:not(.jonas-login-page) :is(
  .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
  .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
) :is(h1,h2){
  margin:0 0 6px !important;
  padding:0 !important;
  line-height:1.04 !important;
  text-wrap:balance !important;
}
html body:not(.jonas-login-page) :is(
  .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
  .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
) :is(p,.subtitle,.muted){
  margin-top:0 !important;
  margin-bottom:0 !important;
  line-height:1.4 !important;
}
@media(max-width:760px){
  html body:not(.jonas-login-page) :is(
    .jonas-page-header,.jonas-workspace-header,.jonas-legacy-page-header,
    .r44aw-intro,.r44an-heading,.page-header,.admin-page-header
  ){
    min-height:82px !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:12px !important;
    padding:16px 20px !important;
  }
}

/* R929 · La marca acompaña el sistema luminoso de tablas de ingeniería. */
@media screen{
  html :is(
    body.jonas-platform-integrated.jonas-platform-integrated,
    body.jonas-platform-page.jonas-platform-page,
    body:has(.jonas-platform-topbar):has(.jonas-platform-topbar)
  ) table thead :is(th,td){
    color:#123c59 !important;
    background:linear-gradient(180deg,#fbfdfe 0%,#eaf5f8 100%) !important;
    background-image:linear-gradient(180deg,#fbfdfe 0%,#eaf5f8 100%) !important;
    background-size:auto !important;
    border-right:1px solid rgba(148,187,204,.28) !important;
    border-bottom:2px solid #54c8e8 !important;
    box-shadow:none !important;
  }
}
