/*
Theme Name: Krea3 Traverse
Theme URI: https://www.krea3.fr/
Author: Krea3
Author URI: https://www.krea3.fr/
Description: Écran scindé, grande photographie et accès textuels. Thème municipal iCommune autonome, fidèle à la proposition Traverse validée.
Version: 1.0.6
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: krea3
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
/* La présentation est chargée par inc/krea3-traverse.php. */

/* Modules éditoriaux — palette et typographies du thème actif.
 * Les moteurs, filtres, états d'erreur et icônes restent ceux des plugins.
 * Variables de référence : assets/css/traverse.css, propres à Traverse.
 */
.sl-site { --sl-module-title-weight: 700; }
.sl-site :is(.k3-agenda-modern-pro, .k3-annuaire-modern-pro, .krea3-deliberations,
    .krea3-affichage-legal, .krea3-affichage-legal-single, .krea3-container, .krea3-filters,
    .krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) {
    color: var(--couleur-noir);
    font-family: var(--police-secondaire);
}

/* Agenda et annuaires : les variables locales priment sur le socle neutre. */
.sl-site .k3-agenda-modern-pro {
    --k3-agenda-ui-primary: var(--couleur-principale);
    --k3-agenda-ui-secondary: var(--sl-teal);
    --k3-agenda-ui-on-action: var(--couleur-blanc);
    --k3-agenda-ui-surface: var(--couleur-blanc);
    --k3-agenda-ui-border: var(--sl-line);
    --k3-agenda-pro-text: var(--couleur-noir);
    --k3-agenda-pro-muted: var(--sl-muted);
    --k3-agenda-pro-soft: var(--gris-tres-clair);
    --k3-agenda-pro-line: var(--sl-line);
    --k3-agenda-pro-surface: var(--couleur-blanc);
    --k3-agenda-pro-sage-soft: var(--gris-tres-clair);
    --k3-agenda-pro-white: var(--couleur-blanc);
    --k3-agenda-pro-font-family: var(--police-secondaire);
    --k3-agenda-pro-title-font-family: var(--police);
    --k3-agenda-pro-title-color: var(--couleur-principale);
    --k3-agenda-pro-title-weight: var(--sl-module-title-weight);
    --k3-agenda-pro-mobile-title-color: var(--couleur-principale);
    --k3-agenda-pro-mobile-title-weight: var(--sl-module-title-weight);
    --k3-agenda-pro-agenda-date-bg: var(--couleur-principale);
    --k3-agenda-pro-agenda-date-color: var(--couleur-blanc);
}
.sl-site .k3-annuaire-modern-pro {
    --k3-annuaire-ui-primary: var(--couleur-principale);
    --k3-annuaire-ui-secondary: var(--sl-teal);
    --k3-annuaire-ui-on-action: var(--couleur-blanc);
    --k3-annuaire-ui-surface: var(--couleur-blanc);
    --k3-annuaire-ui-border: var(--sl-line);
    --k3-annuaire-pro-text: var(--couleur-noir);
    --k3-annuaire-pro-muted: var(--sl-muted);
    --k3-annuaire-pro-soft: var(--gris-tres-clair);
    --k3-annuaire-pro-line: var(--sl-line);
    --k3-annuaire-pro-surface: var(--couleur-blanc);
    --k3-annuaire-pro-sage-soft: var(--gris-tres-clair);
    --k3-annuaire-pro-white: var(--couleur-blanc);
    --k3-annuaire-pro-font-family: var(--police-secondaire);
    --k3-annuaire-pro-title-font-family: var(--police);
    --k3-annuaire-pro-title-color: var(--couleur-principale);
    --k3-annuaire-pro-title-weight: var(--sl-module-title-weight);
    --k3-annuaire-pro-mobile-title-color: var(--couleur-principale);
    --k3-annuaire-pro-mobile-title-weight: var(--sl-module-title-weight);
}

/* Délibérations et kiosque : couleurs de marque et fonds de l'ambiance. */
.sl-site .krea3-deliberations {
    --krea3-delib-accent: var(--couleur-principale);
    --krea3-delib-accent-dark: var(--sl-teal);
    --krea3-delib-text: var(--couleur-noir);
    --krea3-delib-muted: var(--sl-muted);
    --krea3-delib-border: var(--sl-line);
    --krea3-delib-soft: var(--gris-tres-clair);
    --krea3-delib-surface: var(--couleur-blanc);
}
.sl-site :is(.krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) {
    --krea3-kiosque-accent: var(--couleur-principale);
    --krea3-kiosque-accent-dark: var(--sl-teal);
    --krea3-kiosque-text: var(--couleur-noir);
    --krea3-kiosque-muted: var(--sl-muted);
    --krea3-kiosque-border: var(--sl-line);
    --krea3-kiosque-surface: var(--couleur-blanc);
    --krea3-kiosque-soft: var(--gris-tres-clair);
}
.sl-site .krea3-affichage-legal-single {
    --krea3-affichage-legal-text: var(--couleur-noir);
    --krea3-affichage-legal-muted: var(--sl-muted);
    --krea3-affichage-legal-border: var(--sl-line);
    --krea3-affichage-legal-soft: var(--gris-tres-clair);
    --krea3-affichage-legal-action: var(--couleur-principale);
}

/* Les titres de fiches gardent une taille adaptée à leur carte. */
.sl-site :is(#content, #content_large) :is(.k3-agenda-modern-pro, .k3-annuaire-modern-pro,
    .krea3-deliberations, .krea3-container, .krea3-kiosque, .krea3-kiosque-page,
    .krea3-kiosque-single) :is(h2, h3) {
    color: var(--couleur-principale);
    font-family: var(--police);
    font-weight: var(--sl-module-title-weight);
    font-size: clamp(1.2rem, 1rem + .5vw, 1.5rem);
    line-height: 1.35;
    letter-spacing: normal;
    text-transform: none;
    margin-block: 0 1rem;
}
.sl-site :is(.krea3-deliberations-session-title button, .krea3-affichage-legal-title) {
    color: var(--couleur-principale);
    font-family: var(--police);
    font-weight: var(--sl-module-title-weight);
}
.sl-site :is(.k3-agenda-modern-pro, .k3-annuaire-modern-pro, .krea3-deliberations,
    .krea3-container, .krea3-filters, .krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single)
    :is(input, select, textarea, button) {
    font-family: var(--police-secondaire);
}
.sl-site .krea3-deliberations-session-title button {
    font-family: var(--police);
    font-size: inherit;
}
.sl-site .krea3-deliberations-session-title strong { font-weight: var(--sl-module-title-weight); font-size: 1.125rem; }
.sl-site .krea3-deliberations-session-title :is(time, small) {
    font-family: var(--police-secondaire);
    font-weight: 600;
}
.sl-site :is(#content, #content_large) :is(.krea3-deliberations, .krea3-container, .krea3-filters,
    .krea3-kiosque, .krea3-kiosque-page, .krea3-kiosque-single) a {
    color: var(--couleur-principale);
}
.sl-site :is(#content, #content_large) :is(.krea3-deliberations-filter-actions button,
    .krea3-actions button, .krea3-search-submit, .krea3-pagination .current, a.krea3-kiosque-button,
    .krea3-kiosque-filters button),
.sl-site a.krea3-affichage-legal-button {
    background-color: var(--couleur-principale);
    border-color: var(--couleur-principale);
    color: var(--couleur-blanc);
}
.sl-site :is(#content, #content_large) :is(a.krea3-kiosque-button-secondary,
    .krea3-deliberations-document-link) {
    background-color: var(--gris-tres-clair);
    border-color: var(--sl-line);
    color: var(--couleur-principale);
}
.sl-site :is(#content, #content_large) :is(a.krea3-kiosque-button,
    .krea3-kiosque-filters button, .krea3-deliberations-filter-actions button,
    .krea3-actions button, .krea3-search-submit):is(:hover, :focus-visible),
.sl-site a.krea3-affichage-legal-button:is(:hover, :focus-visible) {
    background-color: var(--sl-teal);
    border-color: var(--sl-teal);
    color: var(--couleur-blanc);
}

/* Affichage légal : le moteur historique possède encore des couleurs fixes. */
.sl-site .krea3-filters {
    background: var(--gris-tres-clair);
}
.sl-site :is(.krea3-container, .krea3-affichage-legal, .krea3-filters) :is(.krea3-card,
    .krea3-filters input, .krea3-period input, .krea3-pagination .page-numbers) {
    border-color: var(--sl-line);
}
.sl-site .krea3-filters .krea3-checkbox input {
    border-color: var(--couleur-principale);
}
.sl-site .krea3-filters .krea3-checkbox input:checked {
    background-color: var(--couleur-principale);
}
.sl-site :is(.krea3-container, .krea3-affichage-legal) :is(.krea3-tags,
    .krea3-meta, .krea3-count, .krea3-date) { color: var(--sl-muted); }
.sl-site .krea3-container .krea3-date .krea3-icon { color: var(--couleur-principale); }
.sl-site .krea3-filters .krea3-actions a {
    border-color: var(--couleur-principale);
}
.sl-site .krea3-filters :is(select, .krea3-filter-reset) {
    background-color: var(--couleur-blanc);
    border-color: var(--sl-line);
    color: var(--couleur-principale);
}
.sl-site .krea3-filters .krea3-filter-reset:is(:hover, :focus-visible) {
    background-color: var(--gris-tres-clair);
    border-color: var(--couleur-principale);
}
.sl-site .flatpickr-calendar { font-family: var(--police-secondaire); }
.sl-site .flatpickr-calendar :is(.flatpickr-months, .flatpickr-month,
    .flatpickr-weekdays, .flatpickr-weekday, .flatpickr-day.selected,
    .flatpickr-day.startRange, .flatpickr-day.endRange) {
    background-color: var(--couleur-principale);
    border-color: var(--couleur-principale);
    color: var(--couleur-blanc);
}

/* Co-marquage Service-Public : remplacer les anciennes polices et couleurs
 * de navigation. Les alertes éditoriales conservent leur code de signalement.
 */
.sl-site :is(#content, #content_large):has(:is(#menu-top-guide-demarches,
    #menu2-guide-demarches, .un-bloc-liens-comarquage)) {
    --comarquage-bleu: var(--couleur-principale);
    --comarquage-bleu-fonce: var(--sl-teal);
    --comarquage-focus: var(--couleur-principale);
    --comarquage-orange: var(--couleur-secondaire);
    --gris-fonce: var(--couleur-noir);
    --reguliere: var(--sl-module-title-weight);
}
.sl-site :is(#menu-top-guide-demarches, #menu2-guide-demarches,
    #fil-ariane-comarquage, .acceder-au-service, .un-bloc-liens-dossiers-N,
    table.spTexteTableau) { font-family: var(--police-secondaire); }
.sl-site :is(#content, #content_large) :is(#menu-top-guide-demarches a,
    .un-bloc-liens-comarquage a, .un-bloc-liens-dossiers-N a) {
    color: var(--couleur-principale);
}
.sl-site #menu-top-guide-demarches li a.current-profil-comarquage {
    border-color: var(--couleur-principale);
    background: var(--gris-tres-clair);
    color: var(--couleur-principale);
}
.sl-site :is(#menu-top-guide-demarches li, .un-bloc-liens-comarquage,
    .un-bloc-liens-dossiers-N p a, .attention-comarquage) {
    border-color: var(--sl-line);
}
.sl-site :is(#content, #content_large) :is(#menu2-guide-demarches li a,
    .acceder-au-service a, th.spTexteTableau) {
    background-color: var(--couleur-principale);
    color: var(--couleur-blanc);
    font-weight: 600;
}
.sl-site :is(#content, #content_large) :is(#menu2-guide-demarches li a,
    .acceder-au-service a):is(:hover, :focus-visible) {
    background-color: var(--sl-teal);
    color: var(--couleur-blanc);
}
.sl-site :is(.acceder-au-service, .un-bloc-liens-comarquage.fond-couleur,
    tr.spTexteTableau:nth-child(2n + 1) > td.spTexteTableau) {
    background-color: var(--gris-tres-clair);
}
.sl-site :is(.un-bloc-liens-comarquage p, .un-bloc-liens-comarquage li,
    li.spTexteListe p)::before,
.sl-site .date-actu-comarquage span { color: var(--sl-teal); }
.sl-site :is(#content, #content_large) :is(#menu-top-guide-demarches,
    #menu2-guide-demarches, .un-bloc-liens-comarquage, .un-bloc-liens-dossiers-N)
    :is(h2, h3) { font-family: var(--police); color: var(--couleur-principale); }

/* Accent secondaire sur les surfaces claires, texte foncé pour le contraste. */
.sl-site :is(.krea3-deliberations-session.is-open,
    .krea3-container .krea3-card:focus-within) { border-color: var(--couleur-secondaire); }
.sl-site :is(.krea3-deliberations, .krea3-container, .krea3-filters, .krea3-kiosque,
    .k3-agenda-modern-pro, .k3-annuaire-modern-pro) :focus-visible {
    outline: 3px solid var(--couleur-principale);
    outline-offset: 3px;
}
