/* App_Themes/standard/components.css — composants thème (skins GridView, postulation, callout) */

.callout-critere {
    padding: 1rem;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: .5rem;
}
.callout-critere .col-detail {
    width: 100%;
}
.callout-critere .profil-critere-detail {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .25rem;
    align-items: center;
    width: 100%;
}
.callout-critere .profil-critere-detail .form-control {
    width: 100%;
    max-width: none;
    min-width: 0;
}

/* btn-outline btn-xs : icone seule, carre et centree */
.btn.btn-xs[class*="btn-outline"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    padding: 0;
    line-height: 1;
}

/* --- cartes postulation (grille candidat) --- */
.postulation-card {
    min-height: 160px;
    box-shadow: 0 0.125rem 0.45rem rgba(16, 24, 40, .18);
    border-radius: 14px;
    overflow: hidden;
}
.postulation-card--scan {
    min-height: 0;
    box-shadow: 0 1px 4px rgba(16, 24, 40, .1);
    border-radius: 10px;
}
.postulation-accent-annonce {
    border-top: 4px solid var(--bs-primary) !important;
}
.postulation-accent-spontanee {
    border-top: 4px solid var(--bs-success) !important;
}
.postulation-accent-stage {
    border-top: 4px solid #7c3aed !important;
}
.postulation-accent-civil {
    border-top: 4px solid var(--bs-warning) !important;
}
.postulation-type-annonce {
    color: var(--bs-primary);
}
.postulation-type-spontanee {
    color: var(--bs-success);
}
.postulation-type-stage {
    color: #7c3aed;
}
.postulation-type-civil {
    color: var(--bs-warning);
}
.postulation-scan-body {
    padding: 0.65rem 0.75rem 0.7rem;
}
.postulation-card-title {
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.25;
}
.postulation-card-meta {
    line-height: 1.3;
}
.postulation-card-footer .badge {
    font-size: 0.7rem;
    font-weight: 500;
}
.uc-postulation-scan > .postulation-list-wrap {
    padding: 0;
}
.uc-postulation-scan .postulation-card {
    min-height: 0;
}
.uc-postulation-scan .postulation-item {
    padding-top: 0.15rem;
}
.uc-postulation-grille .postulation-card {
    position: relative;
    cursor: pointer;
}
.uc-postulation-grille .postulation-annonce a {
    position: relative;
    z-index: 2;
}
.uc-postulation-grille .postulation-actions {
    position: relative;
    z-index: 2;
}
.postulation-rating {
    margin-bottom: 0.15rem;
    line-height: 1;
    opacity: 0.85;
}
.postulation-rating .star-rating {
    display: inline-flex;
    gap: 0.05rem;
    font-size: 0.62rem;
    color: #ced4da;
}
.postulation-rating .star-rating .fas.fa-star {
    color: #c9b458;
}
.postulation-rating-nb {
    font-size: 0.62rem;
    color: #adb5bd;
}
.autres-candidatures-ligne:hover {
    background: rgba(0, 0, 0, .03);
}
/* Spécificité > .badge-statut-compact pour conserver la taille liste « autres candidatures » */
.badge.autres-candidatures-badge {
    font-size: 0.58rem !important;
    padding: 0.1rem 0.35rem !important;
    line-height: 1.1;
    font-weight: 600;
    border-radius: 0.25rem;
}
.autres-candidatures-rating .star-rating {
    font-size: 0.65rem;
}
.postulation-actions-menu {
    min-width: 9rem;
    font-size: 0.8125rem;
}
.postulation-actions-menu .dropdown-item {
    line-height: 1.25;
}
.postulation-actions-menu .dropdown-item i {
    width: 0.9rem;
    text-align: center;
}

/* --- GridView SkinID Gris (responsive type CodePen RWD List to Table) --- */
/* Surcharge /_shared/Styles/controles.css : table th { background #6c757d !important } */

table.gv-gris {
    margin: 0;
    min-width: 300px;
    width: 100%;
    border-collapse: collapse;
    background: #34495E;
    color: #fff;
    border-radius: .4em;
    overflow: hidden;
    border: 0;
}
table.gv-gris > tbody > tr {
    border-top: 1px solid #4a6375;
    border-bottom: 1px solid #4a6375;
}
table.gv-gris th,
table.gv-gris thead th,
table.gv-gris > thead > tr > th,
table.gv-gris th.gv-gris-header {
    display: none;
    border: 0;
    background: transparent !important;
    background-color: transparent !important;
    color: #dd5 !important;
    font-weight: 600 !important;
    box-shadow: none !important;
    --bs-table-bg-state: transparent !important;
    --bs-table-color-state: #dd5 !important;
}
table.gv-gris > tbody > tr > td {
    display: block;
    margin: .35em .75em;
    text-align: left;
    border: 0;
    background: transparent;
    color: #fff;
}
table.gv-gris > tbody > tr > td:first-child {
    padding-top: .35em;
}
table.gv-gris > tbody > tr > td:last-child {
    padding-bottom: .35em;
}
table.gv-gris > tbody > tr > td:before {
    content: attr(data-th) ": ";
    font-weight: bold;
    width: 7.5em;
    display: inline-block;
    color: #dd5;
}
table.gv-gris > tbody > tr > td[colspan]:before {
    display: none;
}
table.gv-gris > tbody > tr > td[colspan] .alert {
    margin: 0;
}
table.gv-gris a {
    color: #fff;
}
table.gv-gris a:hover {
    color: #dd5;
}
table.gv-gris th a,
table.gv-gris thead th a {
    color: #fff !important;
}
.cr-layout table.gv-gris th,
.cr-layout table.gv-gris thead th,
.cr-layout table.gv-gris th.gv-gris-header {
    background-color: transparent !important;
    color: #dd5 !important;
    border: 0;
}
@media (min-width: 480px) {
    table.gv-gris th,
    table.gv-gris thead th,
    table.gv-gris > thead > tr > th,
    table.gv-gris th.gv-gris-header {
        display: table-cell;
        padding: .35em .5em !important;
        color: #dd5 !important;
        font-weight: 600;
        background: transparent !important;
        background-color: transparent !important;
    }
    table.gv-gris > tbody > tr > td {
        display: table-cell;
        padding: .35em .5em !important;
    }
    table.gv-gris > tbody > tr > td:before {
        display: none;
    }
    table.gv-gris > thead > tr > th:first-child,
    table.gv-gris > tbody > tr > td:first-child {
        padding-left: .5em !important;
    }
    table.gv-gris > thead > tr > th:last-child,
    table.gv-gris > tbody > tr > td:last-child {
        padding-right: .5em !important;
    }
}

/* Chevron discret des cards cliquables (stretched-link) */
.card-nav-chevron {
    position: absolute;
    right: .85rem;
    bottom: .7rem;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    color: rgba(0, 0, 0, .35);
    font-size: .7rem;
    line-height: 1;
    pointer-events: none;
    z-index: 1;
}
.home-card-clickable:hover .card-nav-chevron,
.card:hover > .card-body .card-nav-chevron,
.card:hover > .card-nav-chevron,
.rh-card:hover .card-nav-chevron,
.guides-category-card:hover .card-nav-chevron,
.postulation-card:hover .card-nav-chevron,
.card-formulaire-dashboard:hover .card-nav-chevron {
    background-color: transparent;
    color: rgba(0, 0, 0, .55);
}
.card-body.card-body--with-chevron,
.card-body--with-chevron {
    padding-bottom: 2.35rem !important;
}
.postulation-card .card-nav-chevron {
    right: .65rem;
    bottom: .55rem;
}
.uc-postulation-grille .postulation-scan-body {
    padding-bottom: 2rem;
}

/* Styles spécifiques pour l'affichage des pièces jointes : icône gauche, nom centré, chevron droit */
.file-card .file-row-flex {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding-right: .5rem; /* espace pour le chevron */
}
.file-card .file-icon {
    flex: 0 0 auto;
    width: 2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.file-card .file-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.file-card .card-nav-chevron {
    /* override du style absolu pour s'inscrire dans le flux flex */
    position: static;
    right: auto;
    bottom: auto;
    width: auto;
    height: auto;
    border-radius: 0;
    background-color: transparent;
    color: rgba(0,0,0,.45);
    font-size: .95rem;
    pointer-events: none;
}
.file-card .file-meta {
    margin-top: .35rem;
    text-align: center;
}
