/* ==========================================================
   Clínic Barcelona — administració de LimeSurvey
   ========================================================== */

@font-face {
    font-family: 'Cadiz CB';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src:
        url('/upload/fonts/clinic/CadizCBWeb-Regular.woff2') format('woff2'),
        url('/upload/fonts/clinic/CadizCBWeb-Regular.woff') format('woff');
}

@font-face {
    font-family: 'Cadiz CB';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src:
        url('/upload/fonts/clinic/CadizCBWeb-Bold.woff2') format('woff2'),
        url('/upload/fonts/clinic/CadizCBWeb-Bold.woff') format('woff');
}

@font-face {
    font-family: 'Cadiz CB Filet';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src:
        url('/upload/fonts/clinic/CadizCBWeb-Filet.woff2') format('woff2'),
        url('/upload/fonts/clinic/CadizCBWeb-Filet.woff') format('woff');
}

:root {
    --clinic-blau: #375171;
    --clinic-verd: #85DE76;
    --clinic-verd-fosc: #33B578;
    --clinic-fons: #F4F6F8;
    --clinic-text: #2C3E50;
}

/* Primera prova: tipografia general de l'administració. */
body {
    font-family: 'Cadiz CB', Arial, sans-serif;
}

/* Clínic — ajustos inicials de l'administració clàssica */
body { color: var(--clinic-text); }
a { color: var(--clinic-blau); text-decoration: none; }
a:hover { color: #25415f; text-decoration: none; }
.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: #375171;
    --bs-btn-border-color: #375171;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #293f5a;
    --bs-btn-hover-border-color: #293f5a;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #20354d;
    --bs-btn-active-border-color: #20354d;
    --bs-btn-focus-shadow-rgb: 55, 81, 113;
}

.form-control:focus,
.form-select:focus {
    border-color: #375171;
    box-shadow: 0 0 0 .2rem rgba(55, 81, 113, .2);
}
.nav-tabs .nav-link.active { color: #375171; border-bottom-color: #375171; }
.table { --bs-table-hover-bg: #eef6ed; }
.table-hover > tbody > tr:hover > td:not(.ls-sticky-column) { background-color: #eef6ed; }

/* Clínic v2 — navegació i llistats d'administració */
.navbar { background-color: #375171 !important; }
.navbar .nav-link { color: #fff; border-color: transparent; }
.navbar .nav-link:hover, .navbar .nav-link:focus-visible { color: #fff; background-color: #293f5a; }
.navbar .btn-create { background-color: #85de76; border-color: #85de76; color: #20354d; }
.navbar .btn-create:hover, .navbar .btn-create:focus-visible { background-color: #b8ebad; border-color: #b8ebad; color: #20354d; }
.btn-outline-primary { --bs-btn-color: #375171; --bs-btn-border-color: #375171; --bs-btn-hover-color: #fff; --bs-btn-hover-bg: #375171; --bs-btn-hover-border-color: #375171; --bs-btn-active-bg: #293f5a; --bs-btn-active-border-color: #293f5a; }
.grid-view .table thead tr th, .grid-view-ls .table thead tr th { color: #375171; border-bottom-color: #b8c7d3; }
.grid-view .table thead tr th .sort-link, .grid-view-ls .table thead tr th .sort-link { color: #375171; }
.grid-view .action-list a:not(.disabled) i::before, .grid-view-ls .action-list a:not(.disabled) i::before { color: #375171; }
.grid-view .action-list a:hover, .grid-view-ls .action-list a:hover { background: #eef6ed; border-color: #85de76; }
.grid-view .table tbody tr:hover > td:not(.ls-sticky-column), .grid-view-ls .table tbody tr:hover > td:not(.ls-sticky-column) { background-color: #f0f8ef; }
.pagination .page-item.active .page-link { color: #fff; background-color: #375171; border-color: #375171; }
.pagination .page-item:not(.active) .page-link:hover { color: #375171; background-color: #eef6ed; }

/* Clínic — pantalla d'accés. Conserva el logotip configurat al tema. */
.login .main-body {
    background: #f4f6f8;
    margin: 0;
}
.login .col-right {
    padding: 48px clamp(24px, 6vw, 100px);
}
.login .login-panel {
    width: 100%;
    max-width: 540px;
    padding: clamp(28px, 4vw, 48px);
    background: #fff;
    border-top: 6px solid #85de76;
    border-radius: 16px;
    box-shadow: 0 16px 50px rgba(32, 53, 77, .1);
}
.login .col-right h1 {
    margin-bottom: .4rem;
    color: #375171;
    font-family: 'Cadiz CB', Arial, sans-serif;
    font-size: clamp(2rem, 2.5vw, 2.7rem);
    font-weight: 700;
}
.login .login-panel > p {
    margin-bottom: 2rem;
    color: #5b6e80;
    font-size: 1.1rem;
}
.login .login-panel label {
    display: block;
    margin-bottom: .4rem;
    color: #375171;
    font-weight: 700;
}
.login .login-panel .form-control,
.login .login-panel .select2-container--bootstrap-5 .select2-selection--single {
    min-height: 46px;
    border: 1px solid #aab9c7;
    border-radius: 7px;
    background-color: #fff;
    color: #20354d;
}
.login .login-panel .form-control:focus,
.login .login-panel .select2-container--focus .select2-selection--single,
.login .login-panel .select2-container--open .select2-selection--single {
    border-color: #375171;
    box-shadow: 0 0 0 3px rgba(55, 81, 113, .2);
    outline: none;
}
.login .login-panel .select2 { max-width: 100%; }
.login .login-submit .btn-primary {
    min-height: 46px;
    padding: .7rem 1.4rem;
    border-radius: 7px;
    font-weight: 700;
    box-shadow: none;
}
.login .login-submit .btn-primary:focus-visible {
    outline: 3px solid #85de76;
    outline-offset: 3px;
}
.login .login-submit a { color: #375171; }
.login .login-submit a:hover { color: #20354d; text-decoration: underline; }
.login .sidebar-l { background-color: #375171; }
@media (max-width: 1199.98px) {
    .login .sidebar-l { padding: 24px 0; }
    .login .sidebar-l .box-pattern { display: none; }
    .login .col-right { align-items: center; padding: 32px 20px; }
}

/* Amaguem les decoracions de LimeSurvey mentre preparem el fons del Clínic. */
.login .sidebar-l .box-pattern { display: none; }

/* Logo corporatiu a la pantalla d'accés */
.login .sidebar-l .logo-alt-1 {
    display: block;
    width: 300px;
    max-width: 100%;
    height: 82px;
    background: url('/upload/admintheme/Clinic_Admin/images/logo-white.png')
                no-repeat center / contain;
}
/* Icona corporativa a la capçalera d'administració */
.navbar .navbar-brand {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.navbar .navbar-brand img[src="/assets/images/logo-icon-white.png"] {
    display: none;
}

/* Amaga la icona original de la capçalera */
.navbar .navbar-brand > img {
    display: none !important;
}

.navbar .navbar-brand::before {
    content: "";
    display: inline-block;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    background: url('/upload/admintheme/Clinic_Admin/images/logo-icon-white.png')
                no-repeat center / contain;
}

/* ==========================================================
   Clínic — llistat d'enquestes
   ========================================================== */

/* Títol i filtres */
.survey-dashboard .survey-actionbar-title {
    color: #375171;
    font-weight: 700;
}

.survey-dashboard .survey-actionbar-formfield {
    min-height: 42px;
    border: 1px solid #b8c6d4;
    border-radius: 6px;
    background-color: #fff;
    color: #2c3e50;
}

.survey-dashboard .survey-actionbar-formfield:focus {
    border-color: #375171;
    box-shadow: 0 0 0 3px rgba(55, 81, 113, 0.18);
}

.survey-dashboard .search-bar > i {
    color: #375171;
}

/* Botó Crear enquesta */
.survey-dashboard .survey-actionbar-actions .btn-outline-info {
    --bs-btn-color: #fff;
    --bs-btn-bg: #375171;
    --bs-btn-border-color: #375171;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #293f5a;
    --bs-btn-hover-border-color: #293f5a;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #20354d;
    --bs-btn-active-border-color: #20354d;

    min-height: 42px;
    border-radius: 6px;
    font-weight: 700;
}

.survey-dashboard .survey-actionbar-switch .view-switch {
    color: #375171;
}

/* Capçalera de la taula */
#survey-grid .table thead th {
    color: #375171;
    border-bottom: 2px solid #c9d6e0;
    font-weight: 700;
}

#survey-grid .table thead th .sort-link {
    color: #375171;
    text-decoration: none;
}

#survey-grid .table thead th .sort-link:hover {
    color: #20354d;
}

/* Files i enllaços */
#survey-grid .table tbody td {
    border-bottom: 1px solid #e7edf1;
    vertical-align: middle;
}

#survey-grid .table tbody tr:hover > td:not(.ls-sticky-column) {
    background-color: #f0f8ef;
}

#survey-grid .table tbody td.has-link a {
    color: #2c3e50;
    text-decoration: none;
}

#survey-grid .table tbody td.has-link a:hover {
    color: #375171;
    text-decoration: underline;
}

/* Accions disponibles i desactivades */
#survey-grid .action-list a:not(.disabled) {
    color: #375171;
}

#survey-grid .action-list a:not(.disabled):hover {
    color: #20354d;
    background-color: #e5f4e3;
    border-radius: 5px;
}

#survey-grid .action-list a.disabled,
#survey-grid .action-list a.disabled i::before {
    color: #9094a7;
}

/* Paginació */
#survey-grid .pagination .page-item.active .page-link {
    color: #fff;
    background-color: #375171;
    border-color: #375171;
}

#survey-grid .pagination .page-item:not(.active):not(.disabled) .page-link {
    color: #375171;
}

#survey-grid .pagination .page-item:not(.active):not(.disabled) .page-link:hover {
    background-color: #e5f4e3;
    border-color: #85de76;
}

/* Capçalera: hover net, sense fons ni requadre */
.navbar .navbar-brand,
.navbar .nav-link {
    transition: color 0.15s ease;
}

.navbar .navbar-brand:hover,
.navbar .nav-link:hover {
    color: #b8ebad;
    background: transparent;
    border-color: transparent;
    box-shadow: none;
    outline: none;
    text-decoration: none;
}

/* El clic amb el ratolí no deixa cap requadre */
.navbar .navbar-brand:focus:not(:focus-visible),
.navbar .nav-link:focus:not(:focus-visible) {
    outline: none;
    box-shadow: none;
}

/* Indicador visible per a la navegació amb teclat */
.navbar .navbar-brand:focus-visible,
.navbar .nav-link:focus-visible {
    outline: 2px solid #85de76;
    outline-offset: 2px;
}

/* Capçalera: elimina el requadre lila dels enllaços del menú */
.navbar .nav-item > a:not(.dropdown-item):hover {
    color: #b8ebad;
    background: transparent;
    border-color: transparent;
    box-shadow: none;
    outline: none;
    text-decoration: none;
}

/* Manté un indicador visible en navegar amb el teclat */
.navbar .nav-item > a:not(.dropdown-item):focus-visible {
    border-color: transparent;
    box-shadow: none;
    outline: 2px solid #85de76;
    outline-offset: 2px;
}

.grid-view .table thead tr th:hover .sort-link,
.grid-view .table thead tr th button:hover,
.grid-view-ls .table thead tr th:hover .sort-link,
.grid-view-ls .table thead tr th button:hover {
    background-color: transparent !important;
}
/* Menú lateral d'administració */
.sidebar .sidebar-icon .btn-icon {
    background-color: #375171;
    border-color: #375171;
    color: #fff;
}

/* En passar el ratolí */
.sidebar .sidebar-icon .btn-icon:hover {
    background-color: #4a6687;
    border-color: #4a6687;
    color: #fff;
    box-shadow: none;
}

/* Secció activa */
.sidebar .sidebar-icon .btn-icon.active,
.sidebar .sidebar-icon .btn-icon[aria-current="page"] {
    background-color: #85de75;
    border-color: #85de75;
    color: #20354d;
}

/* Hover de la secció activa */
.sidebar .sidebar-icon .btn-icon.active:hover,
.sidebar .sidebar-icon .btn-icon[aria-current="page"]:hover {
    background-color: #a9e99d;
    border-color: #a9e99d;
    color: #20354d;
}

/* Focus visible per a navegació amb teclat */
.sidebar .sidebar-icon .btn-icon:focus-visible {
    outline: 2px solid #375171;
    outline-offset: 3px;
    box-shadow: none;
}
/* Normalització corporativa — botons principals, PRE */
.btn-primary:not(:disabled):not(.disabled) {
    color: #fff;
    background-color: #375171;
    border-color: #375171;
    font-weight: 700;
}
.btn-primary:not(:disabled):not(.disabled):hover {
    color: #20354d;
    background-color: #8fb8de;
    border-color: #8fb8de;
    box-shadow: none;
}
.btn-primary:not(:disabled):not(.disabled):active,
.btn-primary:not(:disabled):not(.disabled).active {
    color: #fff;
    background-color: #293f5a;
    border-color: #293f5a;
    box-shadow: none;
}
.btn-primary:not(:disabled):not(.disabled):focus-visible {
    outline: 3px solid #375171;
    outline-offset: 3px;
    box-shadow: 0 0 0 2px #fff;
}
/* Acció principal del llistat d'enquestes */
.survey-dashboard .survey-actionbar-actions .btn-outline-info:not(:disabled):not(.disabled) {
    color: #fff;
    background-color: #375171;
    border-color: #375171;
}
.survey-dashboard .survey-actionbar-actions .btn-outline-info:not(:disabled):not(.disabled):hover {
    color: #20354d;
    background-color: #8fb8de;
    border-color: #8fb8de;
    box-shadow: none;
}
.survey-dashboard .survey-actionbar-actions .btn-outline-info:focus-visible {
    outline: 3px solid #375171;
    outline-offset: 3px;
    box-shadow: 0 0 0 2px #fff;
}
