/* =====================================================================
   main3.css (LIMPIO / UNIFICADO)
   - Mantiene estilos legacy (tablas, cajas, slider, formularios)
   - Unifica TopBar/Nav/Dropdown + Consentimiento + Cookies + helpers WCAG
   ===================================================================== */

/* -------------------------
   1) Base legacy (original)
   ------------------------- */

body {margin:0;padding:0;background-color:#FDFDFD;text-align:center;}

.f_bar_text   {font-family:Arial;color:#777777;font-size:12pt;}
.f_bar_text_b {font-family:Arial;color:#000000;font-size:12pt;}
.f_bar_head   {font-family:Arial;color:#000000;font-size:18pt;}
.f_bar_ligt   {font-family:Arial;color:#FFFFFF;font-size:11pt;}
.f_bar_ligt2  {font-family:Arial;color:#FFFFFF;font-size:14pt;}
.f_bar_cont   {font-family:Arial;color:#000000;font-size:14pt;}
.f_bar_cont2  {font-family:Arial;color:#777777;font-size:10pt;}
.f_foot_lt    {font-family:Arial;color:#DFDFDF;font-size:8pt;}

table.rndt, table.rndr, table.rndb, table.rndg, table.rnd3, table.rnd4, table.rndy{
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  padding:4px;
  width:100%;
  max-width:300px;
  box-shadow: 3px 3px 3px #666;
}
table.rndt{border:4px solid #F0F0F0;background-color:#F0F0F0;}
table.rndr{border:4px solid #E74C3C;background-color:#E74C3C;}
table.rndb{border:4px solid #3892E3;border-right:10px solid #3892E3;background-color:#3892E3;}
table.rndg{border:4px solid #50C000;background-color:#50C000;}
table.rnd3{border:4px solid #20A0A7;background-color:#20A0A7;}
table.rnd4{border:4px solid #000000;background-color:#000000;}
table.rndy{border:4px solid #D0C000;background-color:#D0C000;width:96%;}

table.tlbsearch{
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  background-color:#DDDDDD;
  width: 100%;
  box-shadow: 3px 3px 3px #666;
  vertical-align:top;
  padding:0px;
}

.slider_table{
  box-shadow: 3px 3px 3px #666;
  padding:0px;
  width:630px;
  height:200px;
  overflow:hidden;
}

input.rnd{
  border: 1px solid #ccc;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  box-shadow: 0px 0px 0px #666;
  padding: 2px 3px;
  outline: 0;
  -webkit-appearance: none;
  background: #FFFFFF;
  color: #0F0F1F;
  font-family:Arial;
  font-size: 14px;
}
input.rdn:focus{border-color:#339933;}

.input-rndb{
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  border: 1px solid gray;
  padding: 1px 2px;
  display:inline-block;
  text-decoration:none;
  cursor:pointer;
  font:14px Arial;
  background: #DFDFDF;
  color: #0F0F1F;
}
.input-rndb:hover{
  text-decoration:none;
  color:#7F7F7F;
  cursor:pointer;
  border:1px solid #999999;
}

.slider_btn{
  position:absolute;
  cursor:pointer;
  top:1000px;
  left:1000px;
  z-index:1;
  border: solid 1px transparent;
}
.slider_btn:hover{
  cursor:pointer;
  color:#7F7F7F;
  border: solid 1px #777777;
}

.imgbdls{border:0;width:100%;height:100%;}
.main_center_contents{padding:4px;}

/* Layout legacy */
.topbar{
  margin-top:0px;
  margin-bottom:-10px;
  z-index:100;
  border-bottom:1px solid #D3DAE6;
  top:0px;
  left:0px;
  position:fixed;
  background-color:#EEF2F7;
}
.topbarnav{
  height:43px;
  text-align:right;
  vertical-align:text-top;
}
.topbarnav_mobile{
  margin-left:0px;
  margin-right:0px;
  margin-top:-20px;
  margin-bottom:-20px;
  width:100%;
  height:auto;
  text-align:left;
  vertical-align:text-top;
  border:0px solid;
  min-width:0px;
}
.tblmain{
  position:relative;
  min-width:800px;
  vertical-align:top;
  text-align:center;
}

.tbl_content_buttons{
  vertical-align:top;
  text-align:right;
  border:0px;
  margin-top:-4px;
  margin-right:-8px;
  border-spacing:4px;
}
.tbl_content_butandtext{
  vertical-align:top;
  float:right;
  text-align:right;
  border:0px;
}

.tdleftit_sel{
  background:#FFFFFF;
  color:#FFFFFF;
  white-space: nowrap;
  vertical-align:middle;
  text-align:left;
  border:2px solid #FFFFFF;
  border-right:2px solid #FFFFFF;
  padding:5px;
}
.tdleftit{
  background:#F8F8F8;
  color:#F8F8F8;
  white-space: nowrap;
  border-radius: 5px;
  border:2px solid #F8F8F8;
  cursor:pointer;
  text-align:left;
  vertical-align:middle;
  padding:5px;
}
.tdleftit:hover{
  background:#FAFAFA;
  padding:5px;
  border:2px solid #FFEE77;
}

/* Links legacy */
A:link    {text-decoration:none; color:#AFAFAF;}
A:visited {text-decoration:none; color:#AFAFAF;}
A:active  {text-decoration:none; color:#AFAFAF;}
A:hover   {text-decoration:none; color:#707070;}

/* -------------------------
   2) Helpers WCAG / util
   ------------------------- */

.sr-only{
  position:absolute!important;
  width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus{
  position:static!important;
  width:auto;height:auto;margin:0;
  overflow:visible;clip:auto;
  white-space:normal;
}

/* -------------------------
   3) TopBar (unificado)
   ------------------------- */

.topbar-wrap{
  background:#EEF2F7;
  border-bottom:1px solid #D3DAE6;
  box-shadow: 0 1px 0 #F7F9FC;
  overflow: visible;
  width:100vw;
  text-align:left;
  display:grid;
  position:fixed;
  left:0px;
  top:0px;
  z-index:100;
}

.topbar-inner{
  width:96%;
  margin:0 auto;
  padding:8px 10px;
  display:flex;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:12px;
  overflow:visible;
}
.topbar-left{display:table-row;justify-self:start;}
.topbar-center{justify-self:center;font-family:Arial;font-size:12pt;width:100%;}
.topbar-right{display:table-row;}
.topbar-left, .topbar-left *{text-align:left;}
.topbar-logo{display:block;height:auto;}

.topbar-wrap nav,
.topbar-wrap ul,
.topbar-wrap li{overflow:visible;}
.topbar-wrap ul ul{z-index:9999;}

nav.topbarnav > ul{
  margin:0;
  padding:0;
  list-style:none;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:1px;
  background:#EEF2F7;
  border:0;
  box-shadow:none;
  white-space:nowrap;
}
nav.topbarnav > ul > li{
  position:relative;
  float:none;
  background:#EEF2F7;
  padding:0;
}
nav.topbarnav > ul > li > a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 10px;
  border-radius:8px;
  background:#EEF2F7;
  color:#0f1b2d;
  text-decoration:none;
}
nav.topbarnav > ul > li:hover > a,
nav.topbarnav > ul > li:focus-within > a{
  background: rgba(16,32,51,0.08);
  color:#0f1b2d;
}

nav.topbarnav ul ul{
  display:none;
  position:absolute;
  left:0;
  top:calc(100% - 2px);
  min-width:220px;
  padding:6px;
  background:#ffffff;
  border:1px solid #D3DAE6;
  border-radius:12px;
  box-shadow:0 10px 22px rgba(0,0,0,0.12);
}
nav.topbarnav li:hover > ul,
nav.topbarnav li:focus-within > ul,
nav.topbarnav li.open > ul{display:block;}

nav.topbarnav li.has-sub{position:relative;}
nav.topbarnav li.has-sub::after{
  content:"";
  position:absolute;
  left:0; right:0;
  top:100%;
  height:10px;
}

nav.topbarnav ul ul li{float:none;background:transparent;padding:0;}
nav.topbarnav ul ul a{
  display:block;
  padding:9px 10px;
  border-radius:10px;
  background:transparent;
  color:#102033;
  text-decoration:none;
}
nav.topbarnav ul ul a:hover,
nav.topbarnav ul ul a:focus{
  background: rgba(16,32,51,0.08);
  color:#000;
}

/* -------------------------
   4) Consentimiento + botones (unificado)
   ------------------------- */

.jmj-btn{
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  line-height: 1.2;
  padding: 6px 12px;
  border: 1px solid #cfd6e3;
  background: #f3f6fb;
  border-radius: 6px;
  cursor: pointer;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color:#000;
}
a.jmj-btn:visited{color:#000;}
.jmj-btn:hover{filter: brightness(0.98);}
.jmj-btn:focus{outline: 2px solid #2b5cff; outline-offset: 2px;}

.thirdparty-consent{
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10pt;
  line-height: 1.25;
  display:flex;
  flex-direction: column;
  gap:10px;
}
.thirdparty-consent .thirdparty-text{ text-align: justify; }
.thirdparty-consent .thirdparty-actions{
  display:flex;
  gap:10px;
  justify-content:flex-end;
  align-items:flex-end;
  width:100%;
}
#fbBox{ max-width:500px; margin:0; }

@media (max-width: 720px){
  .thirdparty-consent .thirdparty-actions{justify-content:flex-end;}
}

/* -------------------------
   5) Footer + modal cookies (unificado)
   ------------------------- */

.jmj-footer-links, .jmj-footer-links a, #jmjCookieSettingsLink{
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10pt;
}
.jmj-cookie-modal, .jmj-cookie-modal-card{
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10pt;
}

.jmj-footer{
  margin-top:24px;
  padding:10px 12px;
  font-size:13px;
  line-height:1.4;
  border-top:1px solid #cfd6e3;
}
.jmj-footer-links a{text-decoration:none;}
.jmj-footer-sep{padding:0 6px;opacity:.7;}

.jmj-cookie-modal{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.5);
  z-index:9999;
}
.jmj-cookie-modal.open{display:block;}
.jmj-cookie-modal-card{
  background:#fff;
  max-width:560px;
  margin:10vh auto 0 auto;
  padding:16px 16px 12px 16px;
  border-radius:10px;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.jmj-cookie-modal-card h2{margin:0 0 8px 0;font-size:18px;}
.jmj-cookie-modal-desc{margin:0 0 12px 0;}
.jmj-cookie-opt{display:flex;gap:10px;align-items:flex-start;margin:10px 0 14px 0;}
.jmj-cookie-opt input{margin-top:3px;}
.jmj-cookie-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px;}
.jmj-cookie-actions button{padding:6px 12px;cursor:pointer;}
.jmj-cookie-modal-note{margin:10px 0 0 0;font-size:12px;opacity:.9;}

/* -------------------------
   6) Responsive (unificado)
   ------------------------- */

@media (max-width: 820px){
  nav.topbarnav > ul li a small{ display:none; }
}

.topbar-wrap, nav.topbarnav{overflow:visible;}

/* Quitar “redondelitos” (bullets) en submenús en Edge */
nav.topbarnav ul,
nav.topbarnav ul ul{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

nav.topbarnav ul ul{
  padding: 6px !important; /* si quieres mantener el padding del cuadro */
}

nav.topbarnav ul ul li{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
