/*-----------------------------------------------------------------------------------*/
/* COMMON SETTINGS */
/*
body, html {
  padding: 0;
  margin: 0;
  height: 100%;
}
*/
/* Hacer que la página ocupe todo el alto */
html, body {
    height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
}
table, td, th, div {
  border: 0;
  padding: 0;
  margin: 0;
}

img {
    border: 0;
}

/*-----------------------------------------------------------------------------------*/
/* FONTS */
/* %~% */
body, table, td, th, div, input, h1, h2, h3, h4, h5, h6 {
    font-family : Calibri, Tahoma, Verdana, Arial, Helvética, Sans-Serif;
    /*color: #000000;*/
    color: #ffffff;
}

body, table, td, th, div, input {
    font-size : 14 px;
}

h1, h2, h3, h4, h5, h6 {
    font-size : 18 px;
    text-decoration: none;
}

div#page_footer {
    font-size: 11 px;
    width: 100%;
    text-align: left;
}

/*-----------------------------------------------------------------------------------*/
/* %~% Body */

body{
    /* color de fondo por si la imagen no carga */
    background-color: #FFFFFF;

    /* Imagen de fondo a pantalla completa */
    /*background-image: url("/public/images/customization/Common/Citrix_Pre_general_ui/page_image_default_es.jpg") !important;*/
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed !important;
    
    margin: 0 !important;
    padding: 0 !important;
    
    /* Mantener alineación condicional de F5 */
    /*non-msie: page_alignment */
    text-align: center;}

/* %~% Body */
/* Fondo solo en páginas que NO son webtop (login, mensajes, etc.) */
body:not(.webtop2) {
    background-image: url("/public/images/customization/Common/Citrix_Pre_general_ui/page_image_default_es.jpg") !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed !important;
}

/* Webtop sin imagen de fondo, usando su fondo por defecto */
body.webtop2 {
    background-image: none !important;
    /* opcional: color base que quieras para el webtop */
    /* background-color: #ffffff !important; */
    background-color: #363949 !important;
}

/*-----------------------------------------------------------------------------------*/
/* Noscript */

div#noscript_warning_red
{
    padding-top: 30px;
    font-size: 16px;
    color: red;
    text-align: center;

    /*non-msie center page_alignment */
        margin-left: auto;
    margin-right: auto;
    }

div#noscript_warning_newsession
{
    padding-top: 30px;
    padding-bottom: 30px;
    text-align: center;

        margin-left: auto;
    margin-right: auto;
    }

/*-----------------------------------------------------------------------------------*/
/* Header of [aux] window */
body.aux_window{
    text-align: left;
}

div#page_header_aux_window
{
    width: 100%; /* cause it's window */
    height: 50px;

    background-color: #7F7F7F;
    background-repeat: repeat-x;
    background-position: center center;
    background-image: url(/public/images/my/header-transient.png);
}

div#page_header_aux_window img#logo
{
    margin: 10px;
    vertical-align: middle;
}

div#page_header_aux_window span
{
    vertical-align: -1px;
    color: white;
    font-weight: bold;
    font-size :  18 px;
}

div#help_page_main{
    margin: 10px;
    text-align: left;
}

/*-----------------------------------------------------------------------------------*/
/* Header */

table#page_header
{
    width: 100%;
    height: 80px;

    background-color: #7F7F7F;
    background-repeat: repeat-x;
    background-image: url(/public/images/my/header-transient.png); 

    /* border-collapse: collapse */

    /*non-msie: page_alignment */
    clear: both;
        margin-left: auto;
    margin-right: auto;
    }

table#page_header td#maxTimeoutTd
{
    color: white;
    text-align: right;
    font-size: 12px;
    right: 30px;
    position: relative;
    bottom: 15px;
}

table#page_header td#header_leftcell img
{
    display: block;
}

table#page_header td#header_rightcell
{
    width: 99%;
}

table#page_header td#header_rightcell span#webtop_header_message
{
    float: right;
    position: relative;
    top: 4px;
    left: -30px;
    text-align: right;
    color: white;
}

table#page_header td#header_rightcell span#webtop_header_message img#fw_header_icon
{
    height: 24px;
    margin-right: 10px;
    margin-top: -2px;
    vertical-align: -7px;
    width: 24px;
}

table#page_header td#header_rightcell button
{
    float: right;

    margin-right: 15px;

    opacity: 0.9;
    filter: alpha(opacity=90);

    background-color: #8995a3; /* todo: customize */
    color: #FFFFFF;  /* todo: customize */
    border: 1px solid white;  /* todo: customize */

    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -khtml-border-radius: 3px;
    border-radius: 3px;

    cursor:pointer;

        padding: 4px;
    zoom: 1;
    }

table#page_header td#header_rightcell button#disconnect:hover
{
    color: black; /* todo: customize */
    /* background-color: white; */ /* todo: customize */
        background: -webkit-gradient(linear, left top, left bottom, from(#FFFFFF), to(#DDDDDD));
    background: -moz-linear-gradient(top, #FFFFFF,  #DDDDDD);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFF', endColorstr='#DDDDDD');
    }

table#page_header td#header_rightcell button#disconnect span
{
        padding: 0px;
    display: inline;
}

table#page_header td#header_rightcell button#disconnect img
{
        float: left;
    
    margin-right: 4px;

    width: 16px;
    height: 16px;
    display: inline;
}

/* custom webtop settings */
table#page_header.f5cust
{
    background: #FFFFFF;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.24), 0 0 4px 0 rgba(0, 0, 0, 0.12);
}

table#page_header.f5cust td#header_rightcell span#webtop_header_message {
    float: left;
    top: 6px;
    color: #000000;
    left: 0px;
}

table#page_header.f5cust td#header_rightcell span#webtop_header_message img#fw_header_icon {
    float: right;
    margin-left: 6px;
}


table#page_header.f5cust td#header_rightcell button#disconnect
{
    color: #000000;
    background: #4285f4;
    margin-right: 20px;
    padding: 0px;
    border: 0;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2);
}

table#page_header.f5cust td#header_rightcell button#disconnect:hover
{
    transition: 0.3s ease;
    background: #4285f4;
    box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.10), 0px 5px 5px 0px rgba(0,0,0,0.22);
}

table#page_header.f5cust td#header_rightcell button#disconnect span
{
    margin: 0;
    padding: 8px 16px 8px 16px;
    color: #FFFFFF;
    display: block;
}

table#page_header.f5cust td#header_rightcell button#disconnect img
{
    display: none;
}

/* %~% */
/* Header transparente SOLO en login (sin .f5cust) */
#page_header:not(.f5cust) {
    width: 100% !important;
    background-color: transparent !important;
    background-image: none !important;
}
/* ----------------------------------------------------------------------------------- */
/* Footer */

div#page_footer
{
    width: 100%;
    border-top: 1px solid #738495;
    empty-cells: show;
    display: block;

        margin-left: auto;
    margin-right: auto;
    }

div#page_footer div
{
    padding-left: 30px;
    padding-right: 30px;
    padding-top: 10px;

    font-size: 11 px;
}

div#page_footer.f5cust
{
    border: 0;
}

/* %~% */
/* Footer transparente */
#page_footer { 
    background: rgba(0,0,0,0.5) !important; 
    color: white !important; 
    /* Footer oculto */
    display: none !important;
}

/*-----------------------------------------------------------------------------------*/
/* Main Table */

table#main_table
{
    width: 100%;
    height: 78%;
    border-collapse: collapse;
    background-color: #FFFFFF;

        margin-left: auto;
    margin-right: auto;
    }

/* -------------------------------------------------------------------------------- */
/* Main Table Image cell */

table#main_table td#main_table_image_cell
{
    vertical-align: top;
    width: 50%;
    /* side image align */
    text-align: center;
}

/* Main Table Image cell: image */

table#main_table td#main_table_image_cell img
{
    margin-top: 40px;
    margin-left: 10px;
    margin-right: 10px;
}
/* %~% */
/* Ocultar imagen lateral innecesaria */
#main_table_image_cell { display: none !important; }
/* -------------------------------------------------------------------------------- */
/* Main Table Info Cell */

table#main_table td#main_table_info_cell
{
    width: 50%;
    vertical-align: top;

    /* form_alignment msie */
    
    /* border: 1px solid blue; */
}

/* ----------------------------------------------------------------------------------- */
/* Form */

/* form height msie */
table#main_table form
{
    height: 100%;
    width: 270px;

    /* form_alignment non-msie */
        float: left;
    clear: both;
    
    /* debug */
    /* border: 1px solid red; */
}

table#main_table table#credentials_table
{
    width: 270px;

    margin-top: 0px;
    margin-left: 10px;
    margin-right: 0px;

    border-collapse: collapse;
    empty-cells: show;
    background-color: #EEEEEE;

    height: 100%;
}

table#main_table table#credentials_table td#credentials_table_header
{
    height: 46px;
    font-size: 18 px;
    color: #303030;
    /* background-color: #7F7F7F; */
    text-align: left;
    padding-right: 15px;
    padding-left: 15px;
    padding-top: 16px;
    padding-bottom: 11px;
}

table#main_table table#credentials_table td#credentials_table_postheader
{
    height: 10px;
    color: red;
    padding-right: 15px;
    padding-left: 15px;
    padding-bottom: 3px;
    padding-top: 1px;
}
/* Por defecto, la celda NO muestra nada especial */
#credentials_table_postheader {
    background: transparent !important;
    padding: 0 !important;
    height: 0 !important;
}
/* Cuando hay contenido (el <font> del mensaje), estilizamos solo en ese caso */
#credentials_table_postheader font {
    display: block !important;
    background: rgba(0, 0, 0, 0.45) !important;  /* gris oscuro translúcido */
    color: #ff0000 !important;                   /* texto en rojo claro */
    padding: 10px 20px !important;
    border-radius: 8px !important;
    text-align: center !important;
    margin-top: 5px !important;
}
/* Si hay anidado <font><font>…, seguimos heredando el color */
#credentials_table_postheader font font {
    color: inherit !important;
    background: transparent !important;
}

table#main_table table#credentials_table td.credentials_table_label_cell
{
    width: 33%;
    text-align: left;
    padding-left: 15px;
    padding-right: 2px;
    padding-bottom: 4px;
    height: 30px;
}

table#main_table table#credentials_table td.credentials_table_field_cell
{
    width: 67%;
    text-align: left;
    padding-right: 15px;
    padding-left: 2px;
    padding-bottom: 4px;
    height: 30px;
}

table#main_table table#credentials_table td.credentials_table_unified_cell
{
    width: 67%;
    text-align: left;
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 5px;
    padding-top: 5px;
    height: 30px;
}

table#main_table table#credentials_table td.credentials_table_field_checkbox_fix
{
    padding-top: 2px;
}

table#main_table table#credentials_table td#credentials_table_footer
{
    padding-top: 13px;
}

table#main_table table#credentials_table input.credentials_input_password, input.credentials_input_password_disabled, input.credentials_input_text, input.credentials_input_text_disabled
{
    height: 21px;
    width: 85%;
    font-size: 13px;
    border: 1px solid #808080;
}

table#main_table table#credentials_table select.credentials_input_select, select.credentials_input_select_disabled
{
    height: 21px;
    max-width: 85%;
/*    width: 85%; */
    font-size: 13px;
    border: 1px solid #808080;
}

table#main_table input.credentials_input_password, input.credentials_input_password_disabled
{
    font-family: sans-serif;
}

table#main_table table#credentials_table input.credentials_input_submit, input.credentials_input_submit_disabled
{
    margin-top: 7px;
}

table#main_table table#credentials_table input.credentials_input_checkbox, input.credentials_input_checkbox_disabled
{

}

table#main_table table#credentials_table input.credentials_input_password_disabled,input.credentials_input_text_disabled
{
    background-image: url("/public/images/my/header-transient.png");
    background-position: center -60px;
    border: 1px solid #909090;
}

table#main_table table#credentials_table label
{
    padding: 0;
    margin: 0;
    display: block;
}

/* ----------------------------------------------------------------------------------- */
/* Intraction */

table#main_table table#interaction_table
{
    width: 270px;

    margin-top: 0px;
    margin-left: 10px;
    margin-right: 0px;

    border-collapse: collapse;
    empty-cells: show;
    background-color: #EEEEEE;

    /* form height msie */
    height: 100%;

    /* form_alignment non-msie */
        margin-right: auto;
    }

table#main_table table#interaction_table td#interaction_table_header
{
    height: 46px;
    font-size: 18 px;
    color: #303030;
    text-align: left;
    padding-right: 15px;
    padding-left: 15px;
    padding-top: 17px;
    padding-bottom: 13px;
}

table#main_table table#interaction_table td.interaction_table_text_cell
{
    padding-right: 15px;
    padding-left: 15px;
    text-align: left;
    height: 35px;
}

table#main_table table#interaction_table td.interaction_table_option_cell
{
    padding-right: 15px;
    padding-left: 15px;
    text-align: left;
    height: 35px;
}

table#main_table table#interaction_table td.interaction_table_option_cell img
{
    vertical-align: middle;
    padding-right: 10px;
}

table#main_table table#interaction_table td.interaction_table_footer
{
    padding-top: 15px;
}

/* %~% */
/* Transparentar TODO el formulario */
#main_table, #main_table_info_cell, #auth_form, 
#credentials_table, #credentials_table_header, 
.credentials_table_unified_cell, #credentials_table_footer {
    width: 100% !important;
    background: transparent !important;
}

/* Inputs y labels legibles en blanco */
#label_input_1, #label_input_2, #label_input_3, .credentials_input_text, 
.credentials_input_password, .credentials_input_submit {
    background: rgba(255,255,255,0.9) !important;
    color: #333 !important;
    border: 1px solid #ccc !important;
    border-radius: 4px !important;
}

/* Centrar y responsive - FORM HEADER */
#credentials_table_header {
    text-align: center !important;
    font-size: 24px !important;
    color: white !important;
    font-weight: bold !important;
    padding: 20px 0 !important;
}

/* Centrar INPUT 1 y 2 */
.credentials_table_unified_cell {
    text-align: center !important;
    padding: 10px 20px !important;
}

#label_input_1, #label_input_2, #label_input_3 {
    display: block !important;
    text-align: center !important;
    color: white !important;
    font-size: 16px !important;
    margin-bottom: 8px !important;
}

.credentials_input_text, .credentials_input_password {
    display: block !important;
    margin: 0 auto 15px auto !important;
    width: 80% !important;
    max-width: 350px !important;
    padding: 12px !important;
    font-size: 16px !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 8px rgba(0,0,0,0.3) !important;
}

/* Centrar BOTÓN */
#submit_row .credentials_table_unified_cell {
    text-align: center !important;
    padding: 20px !important;
}

.credentials_input_submit {
    /* BORDES */
    border: double 4px #ffffff !important;
    border-radius: 10px !important;
    
    /* COLORES */
    color: #ffffff !important;
    /*background: linear-gradient(45deg, #007bff, #0056b3) !important;*/
    background-color: #007bff !important;
    
    /* TAMAÑO BASE */
    width: 100% !important;
    max-width: 450px !important;
    height: 55px !important;
    min-height: 50px !important;
    font-size: 22px !important;
    font-weight: bold !important;
    padding: 0 30px !important;
    
    /* EFECTOS */
    box-shadow: 0 6px 12px rgba(0,123,255,0.4) !important;
    transition: all 0.3s ease !important;
    
    /* DISPLAY */
    display: inline-block !important;
}

.credentials_input_submit:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 16px rgba(0,123,255,0.5) !important;
}
@media (max-width: 768px) {
    #credentials_table_header {
        font-size: 20px !important;
    }
    
    .credentials_input_text, .credentials_input_password {
        width: 95% !important;
        max-width: none !important;
        height: 55px !important; 
    }
    
    .credentials_input_submit {
        width: 100% !important;   
        height: 60px !important; 
        padding: 0 30px !important;
        font-size: 20px !important;
    }
}

@media (max-width: 480px) {
    #credentials_table_header {
        font-size: 18px !important;
    }
    
    .credentials_input_text, .credentials_input_password {
        padding: 15px !important;
        font-size: 18px !important;
        height: 65px !important; /* para touch */
    }
    
    .credentials_input_submit {
        height: 70px !important; /* botón gigante para móvil */
        font-size: 22px !important;
    }
}


/* la tabla principal en contenedor centrado */
/* Contenedor principal centrado */
#main_table.logon_page {
    width: 100% !important;
    height: 100vh !important;
    display: flex !important;
    align-items: center !important;      /* centra vertical */
    justify-content: center !important;  /* centra horizontal */
    border-collapse: collapse !important;
}

/* Limitar ancho del formulario y mantener responsive */
/* Limitar ancho y centrar el propio formulario */
#auth_form {
    width: 100% !important;
    max-width: 400px !important;
    margin: 0 auto !important;
}

/* Inputs a ancho fluido */
.credentials_input_text,
.credentials_input_password,
.credentials_input_submit {
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Ajustes para pantallas pequeñas */
@media (max-width: 480px) {
    #credentials_table_header {
        font-size: 18px !important;
    }
}




/* la tabla del formulario el doble de grande y quitar el fondo de los labels */
/* Hacer tabla del formulario DOBLE de grande */
#credentials_table {
    width: 600px !important;  /* Doble del tamaño normal */
    max-width: 90vw !important; /* Responsive en móvil */
}

/* Labels SIN fondo, solo texto */
#label_input_1, #label_input_2, #label_input_3 {
    background: transparent !important;
    color: white !important;
    font-size: 18px !important;
    font-weight: bold !important;
    margin-bottom: 10px !important;
}

/* Inputs más grandes también */
.credentials_input_text, .credentials_input_password {
    height: 50px !important;  /* Más altos */
    font-size: 18px !important;
    padding: 15px !important;
}


/* Header del form más grande */
#credentials_table_header {
    font-size: 28px !important;
    padding: 30px 20px !important;
}

/* Responsive para móviles */
@media (max-width: 768px) {
    #credentials_table {
        width: 95vw !important;
        max-width: 400px !important;
    }
}

/* Labels SIN bordes, letras MUY grandes */
#label_input_1, #label_input_2, #label_input_3 {
    background: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    color: white !important;
    font-size: 24px !important;  /* LETRAS MUY GRANDES */
    font-weight: bold !important;
    margin-bottom: 15px !important;
    padding: 0 !important;
    text-align: center !important;
}

/* Inputs TAMBIÉN sin bordes duros, más suaves */
.credentials_input_text, .credentials_input_password {
    border: 2px solid rgba(255,255,255,0.3) !important;  /* Borde muy sutil */
    background: rgba(255,255,255,0.95) !important;
    font-size: 20px !important;  /* Letras más grandes */
    height: 60px !important;
}

/* Tabla SIN bordes */
#credentials_table, #credentials_table tr, #credentials_table td {
    border: none !important;
    border-collapse: collapse !important;
}


/* Centrar y estilizar la tabla de mensajes (errores / timeout) */
#interaction_table {
    background: transparent !important;      /* fondo transparente sobre tu imagen */
    width: 100% !important;
    max-width: 600px !important;
    margin: 0 auto !important;              /* centrada horizontalmente */
    border-collapse: collapse !important;
}

/* Cabecera del mensaje */
#interaction_table_header {
    text-align: center !important;
    font-size: 22px !important;
    color: #ffffff !important;
    padding: 20px !important;
}
.interaction_table_option_cell {
    /*background: rgba(0, 0, 0, 0.45) !important;*/
    background: rgb(48 22 22 / 35%) !important;
    color: #ff0000 !important;
    padding: 15px 25px !important;
    border-radius: 10px !important;
    text-align: center !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.4) !important;
}

a {
    color: #02ff00 !important;      /* rojo acorde al mensaje */
    text-decoration: underline;
}

.interaction_table_option_cell font {
    color: inherit !important;
}

/* Pie (si se usa) */
.interaction_table_footer {
    background: transparent !important;
}
/* meter el logo dentro del propio formulario de logon 
Contenedor visual del formulario + logo */
#main_table_info_cell {
    position: relative !important;
}
/* Bloque del título del formulario */
#credentials_table_header {
    position: relative !important;
    padding-top: 120px !important;      /* espacio para el logo encima del texto */
    text-align: center !important;
}

/* Logo asociado al Form Header Text */
#credentials_table_header::before {
    content: "" !important;
    position: absolute !important;
    top: 0px;/*top: 20px;                           distancia desde la parte superior del header */
    left: 50%;
    transform: translateX(-50%);        /* centrado horizontal perfecto */
    
    /* más grande que antes, ajusta al diseño 
    width: 260px;                       
    height: 90px;                       /* alto aproximado del logo 
    */
    /* TAMAÑO DEL LOGO: súbelo aquí */
    width: 320px;    /* antes 260px */
    height: 120px;   /* antes 90px */

    background-image: url("/public/images/customization/Common/Citrix_Pre_general_ui/logo_image_es.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
/* 1) LOGON: ocultar completamente el header */
body:not(.webtop2) #page_header {
    display: none !important;
}
/* 2) WEBTOP: mostrar header a ancho completo, fondo blanco */
body.webtop2 #page_header {
    display: table !important;
    width: 100% !important;
    max-width: none !important;               /* que ocupe todo */
    margin: 0 !important;
    /*background-color: #ffffff !important;*/
    background-color: #7F7F7F !important;
    background-image: none !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.24),
                0 0 4px rgba(0,0,0,0.12) !important;
}

/* 3) WEBTOP: sin logo en la izquierda */
body.webtop2 #header_leftcell img {
    display: none !important;
}

/*-----------------------------------------------------------------------------------*/
/* progress bar comparitbility */

div#ProgressBarDIV table
{
    border-collapse: collapse;
    border: 0;
}

div#ProgressBarDIV table#progress_bar_table
{
    text-align: center;
    empty-cells: show;
    margin-left: auto;
    margin-right: auto;
    border-collapse: separate;
}

div#ProgressBarDIV table#progress_bar_table td
{
    width: 21px;
    height: 21px;
    background-color: #FFFFFF;
}

div#ProgressBarDIV table#progress_bar_table td.highlight
{
    width: 21px;
    height: 21px;
    background-color: #738495;
}

/* inspection host compartibility */

div.inspectionHostDIVSmall
{
    visibility: visible;
    border: 0;
    height: 1px;
    width: 1px;
}

div.inspectionHostDIVBig
{
    border: 2px solid black;
    visibility: visible;
    position: absolute;

    top: 5%;
    left: 5%;
    width: 80%;
    height: 73%;

    padding: 5%;
    padding-top: 4%;

    width: expression( "90%" );
    height: expression( "90%" );

    background: #ffffff;
    opacity: 0.9;
    filter: alpha(opacity=95);
    text-align: center;
    z-index: 5;
    height: 100%;
}

div.inspectionHostBgLock
{
    border:0;
    margin:0;
    padding: 0;
    opacity: 0.2;
    visibility: visible;
    position: absolute;
    top: 60px;
    left: 0px;
    width: 100%;
    height: 94%
}
/* Error message styling */

table#IHoptions td
{
    height: 35px;
    padding-left: 12px;
}

table#IHoptions a.option
{
    margin-right: 10px;
}

table#IHoptions a.option img
{
    border: 0px;
    clear: right;
    vertical-align: middle;
}

/* CacheCleaneTable */

table#CacheCleanTable
{
    width: 100%;
    height: 100%;

}

table#CacheCleanTable td#main
{
    text-align: center;
}

table#CacheCleanTable td#message
{
    text-align: center;
    padding-bottom: 5px;
    padding-top: 5px;
}

table.webtopTable
{
        /*non-msie: page_alignment */
    margin-left: auto;
    margin-right: auto;
    
    width: 100%;
    border-collapse: collapse;
}

table.webtopTable td
{
    width: 100%;
}

/* ----------------------------------------------------------------------------------- */
/* WEBTOP */
/* Footer */
body.webtop2{
    background-color: #f8f8f8;
}

body.webtop_nohead2{
    background-color: #f8f8f8;
}

div#webtop_wrapper{
    min-height: 93%;
    height: auto !important;
    height: 90%;
    margin: 0 auto -20px;
    padding-bottom: 20px;
}

div#webtop_header_sep{
    width: 100%;
    height: 3px;
    background-color: #6d7982;
}

div#webtop_header_sep.f5cust{
    height: 5px;
    background-color: #f44336;
}

div#webtop_searchdiv{
    width: 100%;
    margin-top: 30px;
    margin-bottom: 10px;
}

div#webtop_searchdiv input#searchinp{
    width: 20%;
    min-width: 270px;
    height: 20px;
    padding: 5px 10px;
    border: 1px solid #d8d8d8;
    border-radius: 3px;
    background-color: white;
    font-style: italic;
    color: #808080;
}

div#webtop_searchdiv img#searchimg{
    margin: 0px 0px 2px -27px;
    width: 20px;
    height: 20px;
    vertical-align: middle;
}

div#webtop_settings{
    float: right;
    visibility: hidden !important;
    margin-right: 20px;
}

div#webtop_settings.freefloat {
    margin-bottom: -40px;
    margin-top: 10px;
}

div#webtop_settings div{
    display: inline-block;
    width: 32px;
    height: 32px;
    padding: 2px;
    cursor: pointer;
    border-radius: 50%;
    box-sizing: border-box;
    background-color: inherit;
}

div#webtop_settings div:hover{
    background-color: #d0d0d0;
}

div#webtop_settings div img{
    width: 28px;
    height: 28px;
}

div#webtop_urlinput{
    padding: 10px 15px;
    background-color: #e5e5e5;
    text-align: left;
    border-bottom: 1px solid #c0c0c0;
    color: black;
}

div#webtop_urlinput input#waurlinp{
    width: 25%;
    min-width: 270px;
    height: 20px;
    padding: 5px 10px;
    border: 1px solid #d8d8d8;
    border-radius: 3px;
    background-color: white;
    font-style: italic;
    color: #808080;
}

div#webtop_urlinput img#waurlimg{
    margin: 0px 0px 2px -27px;
    width: 20px;
    height: 20px;
    vertical-align: middle;
}

div#noticebox{
   position: absolute;
   top: 0;
   display: none;
   width: 100%;
   background-color: rgb(247, 242, 219);
   padding: 10px 20px 10px 20px;
   text-align: center;
   opacity: 0.8;
   filter: alpha(opacity=80);
}

/*   */
div#webtop_favorites_outer_container2{
    width: 100%;
    padding-top: 5px;
    text-align: left;
    /*non-msie: page_alignment */
    clear: both;
        margin-left: auto;
    margin-right: auto;
    }

div#webtop_favorites_inner_container2{
    padding-right: 20px;
    text-align: left;
}

#webtop_favorites_inner_container2 div.resourcetype{
    display: block;
    margin: 22px 0px 8px 19px;
}

#webtop_favorites_inner_container2 div.resourcetype div.title::before{
    display: inline-block;
    content: "";
    vertical-align: middle;
    height: 100%;
}

#webtop_favorites_inner_container2 div.resourcetype div.title{
    display: inline;
    vertical-align: middle;
    font-size: 22px;
}

#webtop_favorites_inner_container2 div.resourcetype img.expand{
    display: inline;
    vertical-align: middle;
    margin-left: 10px;
    cursor: pointer;
}

#webtop_favorites_inner_container2 span.favorite{
    display: inline-block;
    width: 252px;
    height: 127px;
    margin: 5px 0px 15px 20px;

    vertical-align: top;

    border-radius: 2px;
    box-sizing: border-box;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 3px 1px -2px rgba(0,0,0,0.12), 0 1px 5px 0 rgba(0,0,0,0.2);

    /*background: white;*/
    background: #894748;
    text-align: left;

    }

#webtop_favorites_inner_container2 span.favorite:hover{
    cursor: pointer;
    box-shadow: 0px 0px 8px 0px rgba(0,0,0,0.10), 0px 6px 6px 0px rgba(0,0,0,0.22);
    transition: box-shadow 0.3s ease;
}

#webtop_favorites_inner_container2 span.favorite span.image{
    display: table-cell;
    padding: 17px 16px 17px 17px;
    }

#webtop_favorites_inner_container2 span.favorite span.image img{
    width: 40px;
    height: 40px;
}

#webtop_favorites_inner_container2 span.favorite span.caption{
    width: 161px;
    display: table-cell;
    vertical-align: middle;
    font-size: 18px;
    }

#webtop_favorites_inner_container2 span.favorite span.description{
    display: block;
    color: #707070;
    margin: -1px 17px 0px 17px;
    height: 35px;
    overflow: hidden;
    word-wrap: break-word;
    }

#webtop_favorites_inner_container2 span.favorite span.caption span{
    display: inline-block;
    width: 161px;
    word-wrap: break-word;
}

@-moz-document url-prefix() {
  #webtop_favorites_inner_container2 span.favorite span.description{
    height: 38px;
  }
}

#webtop_favorites_inner_container2 span.favorite span.restart{
        display: table-cell;
    vertical-align: middle;
    
    width: 20px;
    }

#webtop_favorites_inner_container2 span.favorite span.restart img{
    
    width: 20px;
    height: 20px;

    }

/* */
#access_webtop_container{
    text-align: left;
}
#access_webtop_container div#status{
    margin-top: 15px;
    margin-left: 22px;
    height: 30px;
    font-weight: bold;
}
#access_webtop_container div#errormessage{
    width: 490px;
    margin-left: 41px;
    margin-top: 3px;
    margin-bottom: 12px;
}
#access_webtop_container div#status img{
    margin-top: 3px;
    padding-right: 2px;
    vertical-align: -4px;
    width: 16px;
    height: 16px;
}

#access_webtop_container div#status span{
    padding-left: 5px;
    vertical-align: middle;
}

#access_webtop_container div#data{
    margin-top: 3px;
    margin-left: 20px;
    border: 1px solid #999999;
    width: 512px;
    margin-bottom: 10px;
}
#access_webtop_container div#status input{
    float: right;
    }


#access_webtop_container table{
    border-collapse: collapse;
    width: 100%;
}
#access_webtop_container table th, div#access_webtop_container table td{
    height: 17px;
    padding: 5px;
    padding-top: 1px;
    padding-bottom: 2px;
    text-align: left;
    vertical-align: top;
}
#access_webtop_container table th.type, div#access_webtop_container table td.type{
    text-align: left;
    width: 160px;
}
#access_webtop_container table th.noboleft, div#access_webtop_container table td.noboleft{
    border-left: 0;
    width: 16%;
}
#access_webtop_container table th.noboright, div#access_webtop_container table td.noboright{
    border-right: 0;
    width: 16%;
}
#access_webtop_container table th{
    border: 1px solid #999999;
    border-top: 1px solid white;
    border-left: 1px solid white;
    background-color: #ceccc8;
    font-weight: normal;
    width: 45px;
}
#access_webtop_container table td{
    background-color: white;
    border-right: 1px solid #dddbd7;
}
#access_webtop_container table td.bold{
    font-weight: bold;
}
#access_webtop_container table .italic{
    font-style: italic;
}
#access_webtop_container table td.pad{
    padding-left: 15px;
}

#access_webtop_container table td span.apptstatus{
    padding-left: 5px;
}

#access_webtop_container table td div.apptstatus_name{
    text-overflow: ellipsis;
    width: inherit;
    white-space: nowrap;
    overflow: hidden;
}

#access_webtop_container table td div.apptstatus_hide{
    display: none;
}
#access_webtop_container table td div.apptstatus_show{
    display: block;
    font-style: italic;
    color: red;
    margin-left: 20px;
    margin-top: -1px;
    margin-bottom: -1px;
    padding-left: 5px;
}
#access_webtop_container table td img{
    margin-top: 2px;
    padding-right: 5px;
    vertical-align: -4px;
    width: 16px;
    height: 16px;
}
#access_webtop_container table tr.total td{
    background-color: #e7e7e7;
}
#access_webtop_container a#show_details_text{
    margin-left: 20px;
    text-decoration: none;
}
#access_webtop_container div#details_text{
    text-decoration: none;
    margin: 5px 27px 10px;
}
#access_webtop_container div#details_text a{
    display: block;
    width: 200px;
}

/*****************************************
*
*/

div.HostDivNaOnly{
    width: 100%;
    clear: both;
    /*non-msie: page_alignment */
        margin-left: auto;
    margin-right: auto;
    }

/*****************************************
Disable vertical srollbar
*/
html.noVerticalScrollbar {
    overflow: hidden;
}

/*****************************************
popup window style
*/

div.styledModalDialogueDIV{
    position: absolute;

    top: 300px;
    left: 300px;

    width: 430px;
    height: 252px;

    background-color: white;
    border: 1px solid #202020;
}

div.styledModalDialogueDIV input{
    float: none;
}

div.styledModalDialogueDIV div#SMDHeader{
    height: 55px;

    background-color: #7F7F7F;
    background-repeat: repeat-x;
    background-position: center center;
    background-image: url(/public/images/my/header-transient.png);
}

div.styledModalDialogueDIV div#SMDHeader div#SMDTitle{
    display: inline;
    float: left;
    margin-top: 19px;
    margin-left: 16px;
    color: white;
}

div.styledModalDialogueDIV div#SMDHeader div#SMDCross{
    display: inline;
    float: right;
    margin: 7px;
    color: white
}

div.styledModalDialogueDIV div#SMDMain{
    height: 116px;
    padding: 16px;
    color: black;
    background: #000c4d;
}

div.styledModalDialogueDIV div#SMDMain span{
    display: inline-block;
    text-align: left;
    width: 110px;
    margin-top: 10px;
}

div.styledModalDialogueDIV div#SMDButtons{
    height: 24px;
    padding: 12px 16px;
    background-color: #f0f0f0;
    border-top: 1px solid #dfdfdf;
    text-align: center;
    background: #000c4d;
}

div.styledModalDialogueDIV div#SMDButtons input{
        margin-left: 5px;
    margin-right: 5px;
    background: #db7361;
}

div.browserCitrix2{
    border: 1px solid black;
    background: #f8f8f8;
    position: absolute;
    overflow: auto;
}

div.browserCitrix2 div.browserFavorite{
}

div.browserCitrix2 div.browserFavorite img{
    float: left;
    margin-top: 30px;
    margin-left: 30px;
}

div.browserCitrix2 div.browserFavorite span{
    float: left;
    margin-top: 38px;
    margin-left: 15px;
}

div.browserCitrix2 input.closeButton{
    float: right;
    margin-top: 36px;
    margin-right: 18px;
}


div.browserCitrix2 div.browserAddressline{
    border-top: 1px solid #8fa0b4;
    border-bottom: 1px solid #8fa0b4;
    width: 98%;
    margin-right: 1%;
    margin-left: 1%;
    text-align: left;
    padding-top: 10px;
    padding-bottom: 1px;
}

div.browserCitrix2 div.browserAddressline a{
    color: black;
    padding-left: 4px;
    padding-right: 4px;
}


div.browserCitrix2 div.browserContents{
    overflow-y: auto;
    -ms-overflow-y: auto;
        overflow: auto;
    }

/*********************************************************
* Custom protocol installation dialog boxes related styles
*/
div.cphBackgroundDimmed {
    background-color: rgba(255, 255, 255, 0.80);
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 10;

    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    visibility: hidden;
}

div.cphDownloadDialogDIV {
    background-color: #fefefe;
    border-style: solid;
    border-color: #6b6b6b;
    border-width: 1px;
    text-decoration: none;

    max-width: 630px;
    height: auto;
    max-height: 600px;
    display: table;

    z-index: 100;
    text-align: left;
    margin: auto;

    left: 0;
    right: 0;
    top: 40px;
    opacity: 10;
}

div.cphPopupHeaderDiv {
    background-image: url("/public/images/my/flogo_mobile.png");
    background-position: 4px 6px;
    background-repeat: no-repeat;
    box-sizing: border-box;
    width: 100%;
    height: 42px;
    z-index: 101;
    text-align: left;
    vertical-align: middle;
    background-color: #7F7F7F;
    padding-left: 46px;
    padding-right: 4px;
}

div.cphPopupBodyDiv {
    padding: 20px;
    padding-bottom: 24px;
}

div.cphCopyrightDiv {
    width: 600px;
    font-size: 9px;
    text-align: right;
    padding: 10px;
    padding-right: 18px;
}
div.cphCopyrightDiv:after {
    color: #808080;
    content: "Este producto tiene la autorización de F5 Networks. © 1999-2019 F5 Networks. Todos los derechos reservados";
}

div.cphDownloadDialogDIV, div.cphDownloadDialogDIV *, div.cphPopupBodyDiv {
    font-family: 'Open Sans Regular', 'Noto Sans',Helvetica,Arial,sans-serif;
    color: #2c2e2f;
}

div.cphDownloadDialogDIV, div.cphDownloadDialogDIV span, div.cphDownloadDialogDIV td,
div.cphDownloadDialogDIV p, div.cphPopupBodyDiv, div.cphSkipTooltip {
    font-size: 13px;
}

div.cphPopupHeaderDiv td, div.cphCloseBtnDiv {
    font-family: 'Open Sans Regular',Helvetica,Arial,sans-serif;
    color: #ffffff;
    padding-right: 4px;
    font-size: 14px;
}

div.cphPopupHeaderDiv td {
    text-decoration: none;
    padding: 0px;
}

div.cphPopupHeaderDiv table {
    width: 100%;
    height: 100%;
    padding: 0px;
    border-width: 0px;
    border-spacing: 0px;
}

div.cphPopupBodyDiv {
    width: 100%;
    z-index: 101;
    text-align: left;
    box-sizing: border-box;
}

div.cphPopupBodyDiv h2 {
    margin: 20px 1px;
    font-size: 32px;
}

div.cphPopupBodyDiv h3 {
    font-size: inherit;
    font-family: inherit;
    padding: 0px;
    margin: 0px;
    margin-bottom: 12px;
}

div.cphPopupBodyDiv table {
    color: #2c2e2f;
    width: 100%;
    padding: 0px 0px 0px 0px;
    border-width: 0px;
    border-spacing: 0px;
}

div.cphPopupBodyDiv tr, div.cphPopupBodyDiv td {
    text-decoration: none;
    padding: 0px;
}
div.cphPopupBodyDiv td {
    padding-right: 20px;
    padding-top: 10px;
    padding-bottom: 10px;
}
div.cphPopupBodyDiv td:last-child {
    padding: 0px;
}

div.cphPopupBodyDiv a, div.cphPopupBodyDiv a.expander-link {
    color: #2c87f0;
    border-bottom: 1px solid #dbdbdb;
    text-decoration: none;
}

div.cphPopupBodyDiv a.expander-link {
    display: inline-block;
    margin-top: 1em;
}

.cphPopupExpandDiv {
    background-color: #fefefe;
    position: relative;
    margin-top: -2em;
    padding-top: 2em;
    display: none;
}

.cphPopupExpandDiv:target {
    display: block;
}

div.cphDownloadBtnDiv, div.cphSkipBtnDiv {
    text-align: center;
    vertical-align: middle;
    box-sizing: border-box;
    margin: 4px 1px;
    width: 160px;
    height: 32px;
    line-height: 32px;
    font-size: 13px;
    border-color: #cbcbcb;
    border-width: 1px;
    border-radius: 4px;
    border-style: solid;
    display: inline-block;
    background-image: linear-gradient(#ffffff, #d7d7d7);
}

div.cphPopupBodyDiv a.cphSkipLink {
    display: inline;
    text-align: left;
    text-decoration: none;
    border-bottom: 1px solid #dbdbdb;
}
div.cphSkipTooltip {
    margin: 5px 0px 5px 0px;
    visibility: hidden;
}
div.cphPopupBodyDiv a.cphSkipLink:hover + div.cphSkipTooltip {
    visibility: visible;
    transition-duration: 0.2s;
}

div.cphCloseBtnDiv  {
    text-align: right;
    margin: 4px 0px 0px 10px;
    box-sizing: border-box;
}

div.cphCloseBtnDiv:hover  {
    color: #ffffff;
}
div.cphCloseBtnDiv:after  {
    content:"\00d7";
    font-size: 28px;
    font-weight: lighter;
    font-family: "Courier";
}

.cphBtnA {
    border: none !important;
    text-decoration: none !important;
}

.cphDivider {
    margin-top: 32px;
    margin-bottom: 18px;
    padding: 0;
    border: none;
    border-top-style: solid;
    border-top-width: 1px;
    border-top-color: #cccccc;
}

/*** Start of TAS Auth *****/
#tas_auth_container {
    margin: 0px auto;
    padding : 5px;
    width: 95%;
    min-height: 78%;
    max-width: 350px;
    border-radius: 4px;
    background-color: #ffffff;
}
#tas_auth_container .overflow-auto{
    overflow: auto;
}
#tas_auth_container .width-100pct{
    width: 100%;
}
#tas_auth_container .normal-text{
    font-size: 15px;
    font-weight: normal;
    font-style: normal;
    font-stretch: normal;
    line-height: 1.36;
    letter-spacing: normal;
    color: #354052;
}
#tas_auth_container .bold{
    font-weight: bold;
}
#tas_auth_container .label-text {
    font-size: 12px;
    font-weight: 600;
    font-style: normal;
    font-stretch: normal;
    line-height: normal;
    letter-spacing: normal;
    color: #7f8fa4;
}
#tas_auth_container .text-center{
    text-align: center;
}
#tas_auth_container .text-left{
    text-align: left;
}
#tas_auth_container .input[type="text"]{
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
#tas_auth_container .input {
    -webkit-appearance: none;
    height: 36px;
    border-radius: 4px;
    background-color: #ffffff;
    border: solid 1px #dfe3e9;
    width: 100%;
}
#tas_auth_container .button{
    color: #ffffff;
    background-color: #1991eb;
    border: solid 1px #dfe3e9;
    cursor: pointer;
}
#tas_auth_container .link{
    color: #3b7adb;
    cursor: pointer;
}
#tas_auth_container .padding-5 {
    padding : 5px;
}
#tas_auth_container .margin-top-5 {
    margin-top: 5px;
}
#tas_auth_container .margin-top-15 {
    margin-top: 15px;
}
#tas_auth_container .margin-top-25{
    margin-top: 25px;
}
#tas_auth_container .margin-20-auto {
    margin: 20px auto;
}
#tas_auth_container .margin-bottom-20{
    margin-bottom: 20px;
}
#tas_auth_container .mobile-image-div{
    float: left;
}
#tas_auth_container .mobile-image{
    max-width: 120px;
    max-height: 156px;
}
#tas_auth_container .mobile-instruction-div{
    width: 100%;
    height: 156px;
    line-height: 156px;
}
#tas_auth_container .mobile-instruction-div p{
    float: right;
    margin-top: 22%;
    width: 59%;
    text-align: left;
}
#tas_auth_container #tokenError{
    font-size : 12px;
    color: red;
    float: left;
    margin: 1px 5px 5px 0px;
    display: none;
}
#tas_auth_container .error-color{
    color: #ff3434;
}
/*** End of TAS Auth *****/

/*** Start of TAS Device Reg ***/
#tas_registration_container {
    margin: 0px auto;
    padding-top: 5px;
    padding-bottom: 5px;
    border-radius: 4px;
    background-color: #ffffff;
    width: 95%;
    min-height: 78%;
    min-width: 300px;
}
#tas_registration_container .header{
    font-size: 24px;
    color: #354052;
    width: 95%;
    margin: 5px auto 5px auto;
    text-align: left;
}
#tas_registration_container .step-text{
    width: 95%;
    margin: 10px auto 10px auto;
    font-size: 14px;
    line-height: 1.36;
    color: #354052;
    text-align: left;
}
#tas_registration_container .section{
    width: 288px;
    vertical-align: top;
    display: inline-block;
}
#tas_registration_container .input[type="text"]{
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
#tas_registration_container .input {
    -webkit-appearance: none;
    height: 36px;
    width: 100%;
    border-radius: 4px;
    background-color: #ffffff;
    border: solid 1px #dfe3e9;
}
#tas_registration_container .input[disabled="disabled"] {
    background-color: lightgrey;
}
#tas_registration_container .button {
    -webkit-appearance: none;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.36;
    color: #ffffff;
    background-color: #1991eb;
    cursor: pointer;
}
#tas_registration_container .button[disabled="disabled"] {
    background-color: #8c8989;
}
#tas_registration_container .link-btn {
    padding: 6px 40%;
    text-decoration: none;
}
#tas_registration_container .padding-5{
    padding: 5px;
}
#tas_registration_container .margin-5-auto{
    margin: 5px auto;
}
#tas_registration_container .margin-top-10{
    margin-top: 10px;
}
#tas_registration_container .margin-bottom-30{
    margin-bottom: 30px;
}
#tas_registration_container .text-center{
    text-align: center;
}
#tas_registration_container .example-text{
    font-size: 13px;
    font-style: oblique;
    margin-top: 25px;
    margin-bottom: 0px;
}
#tas_registration_container #phoneError{
    font-size : 12px;
    color: red;
    float: left;
    margin: 1px 5px 5px 0px;
    display: none;
}
#tas_registration_container .sub-section{
    width: 95%;
    margin: 15px auto 5px auto;
}
#tas_registration_container #qrcode{
    width: 180px;
    height: 180px;
    margin: 5px auto 5px auto;
    cursor: none;
}
#tas_registration_container .separator-text{
    width:auto;
    vertical-align: middle;
    padding: 85px 10px 0px 10px;
}
/*** End of TAS Device Reg ***/

/*********************************************************
* MB
*/
.overlayMBDimmedBackground {
    background-color: rgba(255, 255, 255, 0.80);
    position: fixed;
    width: 100%;
    height: 100%;

    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    visibility: hidden;
}

.overlayMBDialog {
    background-color: #fefefe;
    border-style: solid;
    border-color: #6b6b6b;
    border-width: 1px;
    text-decoration: none;

    position: fixed;
    max-width: 620px;
    width: 500px;
    height: auto;
    max-height: 600px;
    display: table;

    text-align: left;
    margin: auto;

    left: 0;
    right: 0;
    top: 40px;
    opacity: 10;

    font-family: 'Open Sans Regular',Helvetica,Arial,sans-serif;
    font-size: 14px;
    border-radius: 2px;
}

.overlayMBHeader {
    background-position: 4px 6px;
    background-repeat: no-repeat;
    box-sizing: border-box;
    width: 100%;
    text-align: left;
    vertical-align: middle;
    background-color: #7F7F7F;
    color: #ffffff;
    padding-right: 4px;
    overflow: hidden;
}

.overlayMBHeaderTitle {
    line-height: 35px;
    margin: 25px;
}

.overlayMBButton, .overlayMBMainDiv {
    padding: 15px;
    border: 1px;
    margin: 15px;
    display: inline-block;
}

.overlayMBMainDiv {
    text-align: left;
    box-sizing: border-box;
}

.overlayMBButton {
    border-style: solid;
    border-color: #909090;
    cursor: pointer;
    -webkit-transition: background-color 1s, -webkit-transform 1s; /* Safari */
    -webkit-transition-timing-function: ease;
    transition: background-color 1s, transform 1s;
    transition-timing-function: ease;
    min-width: 75px;
    text-align: center;
    border-radius: 2px;
}

.overlayMBButton, .overlayMBDialog {
    box-shadow: rgba(0, 0, 0, 0.117647) 0px 1px 6px, rgba(0, 0, 0, 0.117647) 0px 1px 4px;
}

.overlayMBButton:hover {
    background-color: #f0f0f0;
}

.overvayMBCross {
    color: #ffffff;

    text-align: right;
    float: right;
    cursor: pointer;
}

.overvayMBCross:after {
    content:"\00d7";
    font-size: 28px;
    font-weight: lighter;
    font-family: "Courier";
    cursor: pointer;
}

.overlayButtonContainer {
    text-align: center;
}

.data_tooltip {
    padding: 8px;
    border-radius: 5px;
    opacity: 0;
    position: absolute;
    -webkit-transition: opacity 0.5s;
    -moz-transition:  opacity 0.5s;
    -ms-transition: opacity 0.5s;
    -o-transition:  opacity 0.5s;
    transition:  opacity 0.5s;
    z-index:  1;
    background-color:  black;
    color:  white;
    visibility: hidden;
}

/*
 * Progress animation - spinner
 */

.spinner {
    border: 6px solid #808080;
    border-radius: 50%;
    border-top: 6px solid #111212;
    width: 20px;
    height: 20px;
    margin: 10px;
    -webkit-animation: spin 2s linear infinite;
    animation: spin 2s linear infinite;
}

/*** Start of Okta MFA *****/

.okta-input-width {
    width: 193px;
}

.okta-lalel-font-size {
    font-size: 12px;
}

.okta-button {
    width: 200px;
    border: 1px solid #c1c1c1;
    border-radius: 2px;
    height: 25px;
    background-image: linear-gradient(white, #d3d3d3);
}

/*** End of Okta MFA *****/

@-webkit-keyframes spin {
    0% { -webkit-transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* 3. Ocultamos el checkbox físicamente pero lo dejamos en el DOM */
#input_3 {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* 4. EL ARREGLO FINAL: 
   Como el label está ANTES que el input, usamos :has() que es lo único 
   que permite que el label reaccione sin romper el diseño. */

.credentials_table_unified_cell:has(#input_3:checked) #label_input_3 {
    color: #00e6ff !important;
    text-decoration: underline !important;
    text-shadow: 0px 0px 10px rgba(0, 230, 255, 0.8) !important;
}

/* Si el navegador es antiguo y :has() no funciona, este hover al menos dará feedback */
#label_input_3:hover {
    text-decoration: underline !important;
} 
