/* GLOBAL */
html             { -moz-osx-font-smoothing:grayscale; -webkit-font-smoothing:antialiased; line-height: 28px; scroll-behavior: smooth; }
.row             { margin:0 auto!important; max-width:110rem!important;   }
.grid-container  { max-width:90rem; }
figure           { margin:0;}
.center          { text-align:center; }
.btnPrimary      { background:var(--azul-medio); border-radius:5px!important; color:#fff!important; font:600 20px var(--header-fonts); line-height: 1em; margin:15px 0; padding:.6rem 3rem; text-transform: none; width:100%; }
.btnPrimary:hover{ background:#757575; opacity: 1; }
.btn             { background:var(--azul-medio); border-radius:5px!important; color:#fff!important; font:600 20px var(--header-fonts); line-height: 1em; margin:15px 0; padding:.6rem 3rem; text-transform: none; width:100%; }
.btn:hover       { background:#757575; opacity: 1; }
a:hover          { opacity:1; text-decoration: none; }
.right           { float:right; }
.left            { float:left; }
.center          { text-align: center!important; }
p                { font:400 18px var(--text-fonts); }
ul li            { font:400 18px var(--text-fonts); }
ul li strong     { font:600 18px var(--text-fonts); }
ul li:last-child { border:none!important; margin:0; }
li::marker       { content: ""; }
h3               { color:var(--azul-medio); }
h4               { color:var(--azul-medio); font:600 24px var(--text-fonts);  margin-bottom: 20px }

#nav ul li       { padding:0 10px; text-align: center; width: auto; }
.menu > li > a   { padding:0.7rem 0.7rem; }
#nav ul li.active a { background: none!important; color:#2469C3!important; }
.formWrapper     { background: #fff; border-radius:5px; box-shadow: 0 7px 14px 0 rgba(65,69,88,0.1); }
.formWrapper select { background-position: right 0rem center; }
.box             { background: #fff; border-radius:5px; box-shadow: 0 7px 14px 0 rgba(65,69,88,0.1); margin:0; max-width: none; padding:40px 0; width: 100%;}

ul.dropdown li:last-child   { width: 100%; }
ul.dropdown li:last-child a { display:inline-block; width: auto; }



/* ------------------------------------------------------------------------------------------------------------------------------------------------ */
/* PROJECTE FLC · LLAMADAS */
/* ------------------------------------------------------------------------------------------------------------------------------------------------ */

/* COLORES BASE */
:root {
    --azul-oscuro: #010047;
    --azul-medio: #010047;
    --gris-claro: #f4f4f4;
    --gris-medio: #757575;
    --texto: #1a1a1a;
    --naranja: #f28b30;
    --header-fonts: 'Genos', sans-serif;
    --text-fonts: 'Quicksand', sans-serif;

}

/* LAYOUT GENERAL */
/* -------------- */

body                 { background:#fff; color: var(--texto); font-family: var(--text-fonts); padding:40px 0; }

/* SIDEBAR */
.bg-sidebar          { background: var(--azul-oscuro); border-radius:15px; color: #fff; min-height: 100vh; margin-bottom: 40px; padding: 2rem 1rem; }
.logo                { max-width: 160px; margin-bottom: 2rem; }
.menu-item           { color: #fff; font-size: 1rem;padding: 0.6rem 0; }
.menu-item:hover     { color: var(--naranja); }
.menu-item.salir     { color: #fff; }


/* ÁREA DE CONTENIDO */
.content-area        { padding: 2rem; }

/* TITULAR */
.titulo              { margin: 0; font-size: 2rem; font-weight: bold; }
.subtitulo           { color: var(--azul-medio); margin-bottom: 2rem; }

/* CARDS DE RESUMEN */
.resume-card         { background: var(--azul-medio); border-radius: 8px; color: #fff; padding: 1.2rem; text-align: left; }
.resume-card p       { font-weight:600; margin-bottom:5px; }
.resume-num          { font-size: 2.4rem; margin-bottom: 0.2rem; }
.resume-date         { font-size: 0.85rem; opacity: 0.8; }


/* SECCIONES */
.section-block       { margin-top: 2.5rem; }
.section-title       { color: var(--azul-oscuro); font:600 22px var(--text-fonts); margin-bottom: 1rem; }


/* TABLAS */
table                { background: #fff; border: 1px solid var(--gris-medio); border-radius: 12px; box-shadow: 0 2px 4px 0 rgba(1,0,71,.04); }
table thead          { background: var(--gris-medio); }
table tbody tr:hover { background: #fafafa; }

.btn-icon            { color: var(--azul-medio); font-size: 1.2rem; font-weight: bold; }
.button.secondary    { background: var(--gris-medio); color: #fff; font:600 18px var(--text-fonts); margin-top: 1rem; padding:10px 40px; }


/* GLOBAL STYLES */
.sidebar-content h2  { font:400 42px var(--header-fonts); line-height: 1.3em; margin:0 0 40px; text-align: center; }
.sidebar-content p   { border-top:1px dotted #ffffff50; margin-top: 1rem; padding-top:1rem; }
nav a                { color:#fff; font:500 18px var(--text-fonts); line-height: 1.2em; }
nav a:hover          { color:#2469C3!important; }
nav img              { margin:-2px 5px 0 0; width: 20px; }
nav ul li:first-child{ width:100%; }
.menu .active > a    { background: none; font-weight:800; }
.dropdown.menu > li.is-dropdown-submenu-parent > a::after { border-color:#fff transparent transparent; }
.dropdown.menu > li.opens-right > .is-dropdown-submenu { background:var(--azul-medio) ; border:none; left:30px; padding:0 20px;   }
.dropdown.menu > li.opens-right > .is-dropdown-submenu a { cursor:pointer; padding:5px 0;  }
table thead tr,
table tfoot tr,
table thead th       { background: var(--azul-medio); color:#fff; font:700 18px "Quicksand", sans-serif!important; padding:12px 20px; text-align: center!important; }
table tbody tr td    { color: var(--azul-medio); font:500 16px "Quicksand", sans-serif!important; text-align: center!important; }
.resume-card         { position:relative; }
.resume-card h3      { color:#fff!important; font:400 42px var(--header-fonts); }
.resume-card img     { position: absolute; right:10px; top:10px; width:42px; }

/* TOP HEADER */
.top-header          { border-bottom:1px dotted var(--azul-medio) ; margin:0 0 20px; }
.top-header h2       { color: var(--azul-medio); font:500 42px var(--header-fonts); margin:0 0 20px; }
.top-header h2 span  { color: var(--azul-medio); display: block; font:500 26px var(--text-fonts); margin:-5px 0 0 0; line-height: 1em; }
h3                   { display: inline-block; font:400 42px var(--header-fonts); margin: 0 0 20px; }
 h3.title            { color: var(--azul-medio); display: block; font:500 26px var(--text-fonts); }
.username            { color: var(--azul-medio); font:500 24px var(--header-fonts); margin:0; }
.username img        { background: var(--azul-medio); padding:5px; border-radius:25px; }
.updates h3          { font:500 20px var(--text-fonts); margin:0;  }
.updates small       { display: block; font:500 14px var(--text-fonts); margin:0 0 10px;  }
.company             { display: inline-block; font:500 16px var(--text-fonts); text-align: right; width: 100%; }

/* PAGINATION */
.pagination          { display: inline-block; margin:20px auto; text-align: right; width: 100%; }
.pagination-centered { text-align: center;  }
.pagination-centered ul { margin:0 auto; text-align: center;}
.pagination .current { background: var(--azul-medio)!important; border-radius:25px; display: inline-block; font:500 20px var(--text-fonts); min-width: 32px; text-align:center; }
.pagination a        { border-radius:25px; display: inline-block; font:400 18px var(--text-fonts); min-width: 32px; text-align:center; width:auto; }
.pagination .active  { background: var(--azul-medio)!important; border-radius:25px;color:#fff; display: inline-block; font:500 20px var(--text-fonts); min-width: 32px; text-align:center; }
.pagination .active a { color:#fff; }

/* FILTERS */
.filters-area        { background:#f0f2f5!important; border:none!important; border-radius: 12px; box-shadow: 0 2px 4px 0 rgba(1,0,71,.04); display:inline-block; padding:40px; width:100%; }
.filters-area p,
.filters-area a,
.filters-area input,
.filters-area select { margin:0; }
.filters-area .button{ background:var(--azul-oscuro); border:none; color:#fff; font:500 18px var(--text-fonts); line-height: 1em; padding:10px 25px; text-align: center; }

.callout-panel {background:var(--azul-oscuro)!important; border:none; color:#fff!important; }
.section-block h3 { color: var(--azul-oscuro); font:600 22px var(--text-fonts); margin-bottom: 1rem; }

#gestiones label     { color: var(--azul-oscuro); font:600 18px var(--text-fonts)!important; margin-bottom: .5rem!important; text-align: left!important; }


.header-box        { background: #000a43; border-radius: 8px; /* Blau fosc de la imatge */ color: white; margin-top: 30px !important; padding: 2rem; }
.header-box p      { margin:0;}
.header-box h2     { font:600 42px var(--text-fonts); }
.return-call-btn   { background: #74A730; color: white!important; font:600 22px var(--header-fonts)!important; padding: .65rem; border-radius: 6px; margin: 0; width: 100%; }
.return-call-btn a { color: white!important; }
.return-call-btn:hover { background: #757575; }
.btn-save        { background: #000a43; color: white; width: 100%; padding: 0.9rem; margin-top: 1rem; }
.btn-cancel      { background: #8a8a8a; color: white; width: 100%; padding: 0.9rem; margin-top: 1rem; }
.btn-end         { background: #ff4338; color: white; font:600 22px var(--header-fonts); text-align: center; padding: .65rem; margin: 0 auto 0; border-radius: 6px; width: 100%; }
.btn-end i       { transform: rotateX(-90deg);}
.btn-end:hover   { background: #757575; }
.divider         { margin: 1.6rem 0 .5rem; border-bottom: 1px solid var(--azul-oscuro); }
.icon            { font-size: 1.4rem; margin-right: 0.5rem; }
.btnExcel        { background: linear-gradient(90deg, rgba(50, 50, 50, 1) 0%, rgba(16, 124, 65, 1) 0%, rgba(24, 92, 55, 1) 100%); border-radius: 8px; color: white; display:inline-block; font:600 20px var(--header-fonts)!important; margin: 0 0 20px; padding:9px 30px; }
.btnExcel:hover  { background: #fff; border:1px solid rgba(16, 124, 65, 1); color:rgba(16, 124, 65, 1); padding:8px 28px; }

#finalizar       { text-align: center; }
#usersTable      { margin:60px 0; width:100%; }



 /* FOOTER */
footer               { background: var(--azul-oscuro); border-radius:15px; width:100%; color:#fff; margin:0; padding:40px; text-align: center; }
footer p             { font:400 18px var(--text-fonts); text-align: center; }



/* FORMS */

.forms label         { color: var(--azul-oscuro); font:600 16px var(--text-fonts)!important; margin-bottom:7px; }
.forms input[type="submit"] { background: var(--azul-oscuro)!important; border-radius: 8px; color:#fff!important; }
#call_search_form_add_save,
#call_search_form_en_managment_add_save1,
#call_search_form_managed_add_save  { background: var(--azul-oscuro)!important; border-radius: 8px; color:#fff!important; font:600 20px var(--header-fonts)!important; padding:9px 30px; width: 100%; }
#call_search_form_add_save:hover,
#call_search_form_en_managment_add_save1:hover,
#call_search_form_managed_add_save:hover  { background:#757575!important; }
#DataTables_Table_0_filter label { text-align:right; }
#call_search_form_en_managment_add_save1,
#call_search_form_managed_add_save  { margin-top:24px; }
.form-control { padding: 10px 30px 10px 10px; }

#priority_add_save      { background: var(--azul-oscuro); border-radius: 8px; color:#fff!important; font:600 20px var(--header-fonts)!important; margin-top:24px; padding:9px 30px; width: 100%; }
#priority_add_save:hover{ background:#757575; }

section              { position: relative; }
#update              { right: 40px; text-align: center; top:150px; position: absolute; }
#update a            { background: var(--azul-oscuro); border-radius: 8px; color:#fff; font:600 20px var(--header-fonts)!important; padding:10px 20px; }
#update a:hover      { background:#757575; }
#update a i          { font-size:12px; }
#update small        { margin:15px 0 0 0; }


#callback            { background: #efefef; border-radius: 8px; margin:20px .9375rem; padding: 40px; }
#callback #call_status_add_save  { margin:29px 0 0 0 !important; }

#acciones_llamada    { margin:0 auto; text-align: center; width:65%; }

table.dataTable > thead .sorting_asc::before,
table.dataTable > thead .sorting_desc::before { top:20%; }
table.dataTable > thead .sorting_asc::after   { top:20%; }
table.dataTable > thead .sorting::before      { top:20%; }
table.dataTable > thead .sorting::after       { top:20%; }
table.dataTable a                             { font-weight:600; }

.formWrapper        { background:; padding:40px; }
.filters-area label { color: var(--azul-oscuro); font: 600 16px var(--text-fonts) !important; margin-bottom: 7px;  }
.filters-area .cell { margin-bottom:10px; }
.filters-area .cell div { margin-bottom:10px; }

.resumen-cards            { margin-top:40px; }
.callout textarea         { line-height: 1em; margin:0; }
.callout #status_add_save { margin-bottom:0; margin-top:26px;}
table.hover thead tr:hover { background: var(--azul-oscuro); }


.callout .cell ul { margin:0; }
.callout .cell ul li { color:red; font:600 12px var(--text-fonts); }

#refresh_alert          {   }
#refresh_alert          { font-weight: 600; left: 50%; position: absolute; padding: 10px; text-align: center; top:10px; transform: translateX(-50%); width: 30%; }

.login                  { background: #010047; margin:-40px 0 0 0; height: 100vh; }
.login h1               { color:#fff; font-family:var(--header-fonts); font-size: 1.75rem; margin: 0 0 20px; text-align: center;}
.login p                { color:#fff; }
.login p a              { color:#fff; font-weight:600; }
.login article#reset img{ width: 320px; }
article#reset           { text-align: center; }
.form-reset             { margin:0 auto; max-width: 600px; padding:60px 0; }
.form-reset .btn        { border:none; }
.form-reset label       { color:#fff; display: block; font:600 18px var(--header-fonts); margin-bottom:5px; text-align: left;}
.form-reset input       { height:42px; font:600 18px var(--text-fonts); padding:5px 10px; width:100%; }
.form-reset .btnPrimary { background: #F34336; cursor: pointer; margin:0 auto; text-align: center;width:auto; }
.login figure .large-1  { width:10%!important; }
