@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,400;12..96,600;12..96,800&family=Source+Serif+4:opsz,wght@8..60,400;8..60,600&display=swap');

:root {
    /* Vert pin — couleur de marque */
    --color-primary-base: 62 107 96;
    --color-primary-gradient: 19 48 44;
    --color-primary-button-text: 62 107 96;
    --color-primary-button-alternative-text: 255 255 255;

    /* Jaune DASRI — actions et progression */
    --color-secondary-base: 229 168 0;
    --color-secondary-gradient: 200 146 0;
    --color-secondary-button-text: 19 48 44;

    /* Encre */
    --color-tertiary-base: 19 48 44;
    --color-tertiary-gradient: 0 0 0;
    --color-tertiary-button-text: 255 255 255;

    --color-success-base: 62 107 96;
    --color-success-gradient: 19 48 44;
    --color-success-button-text: 255 255 255;

    --color-info-base: 46 94 115;
    --color-info-gradient: 30 66 82;
    --color-info-button-text: 255 255 255;

    --color-warning-base: 229 168 0;
    --color-warning-gradient: 200 146 0;
    --color-warning-button-text: 19 48 44;

    --color-danger-base: 168 64 47;
    --color-danger-gradient: 138 51 37;
    --color-danger-button-text: 255 255 255;

    --color-form-base: 62 107 96;
}

/* Typographies */
body, .p-component, input, textarea, select, button {
    font-family: 'Source Serif 4', Georgia, serif;
}
h1, h2, h3, h4, h5, h6, .text-h1, .text-h2, .text-h3, .text-h4 {
    font-family: 'Bricolage Grotesque', system-ui, sans-serif;
    letter-spacing: -0.02em;
}

/* ── Page de connexion ── */
body:has(#app) { background: #ECEFEA; }

/* Bloc "Bienvenue" en encart papier */
.p-card, .bg-gray-10, .bg-gray-15 {
    background: #F7F8F5 !important;
    border: 1px solid #C9D2CC !important;
    border-radius: 3px;
}

/* Champs de saisie */
input.p-inputtext, .p-password input {
    background: #F7F8F5 !important;
    border: 1px solid #C9D2CC !important;
    border-radius: 3px !important;
    color: #13302C;
}
input.p-inputtext:focus, .p-password input:focus {
    border-color: #3E6B60 !important;
    box-shadow: 0 0 0 3px rgba(62,107,96,.15) !important;
}

/* Bouton principal */
.p-button {
    border-radius: 2px !important;
    font-family: 'Bricolage Grotesque', system-ui, sans-serif;
    font-weight: 600;
}

/* En-tête */
header, .p-menubar {
    background: #F7F8F5 !important;
    border-bottom: 1px solid #C9D2CC !important;
}

/* ── Correctifs en-tête ── */
header, header *, .p-menubar, .p-menubar * {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}
header { background: #F7F8F5 !important; border-bottom: 1px solid #C9D2CC !important; }

/* Logo : on force la taille sur le conteneur ET l'image */
header a[href="/"], header .logo, header img,
img[src*="header-logo"] {
    height: 84px !important;
    max-height: 84px !important;
    width: auto !important;
    max-width: none !important;
    object-fit: contain;
}

/* Champs : le bleu clair vient du thème PrimeVue */
input, input.p-inputtext, .p-password input, .p-inputtext {
    background: #F7F8F5 !important;
    border: 1px solid #C9D2CC !important;
}

/* ── Logo : cibler le conteneur réel ── */
.platform-logo,
.platform-logo a,
.p-menubar-start,
.app-topbar {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
}
.platform-logo img {
    height: 84px !important;
    max-height: 84px !important;
    width: auto !important;
    max-width: none !important;
}
.app-topbar, .p-menubar { padding-top: 4px !important; padding-bottom: 4px !important; }

/* Logo : rester dans son conteneur */
.platform-logo { padding-left: 14px !important; }
.platform-logo img { max-width: 100% !important; }
@media (max-width: 1400px) {
  .platform-logo img { height: 64px !important; max-height: 64px !important; }
}
