
/* Position fixe dès le premier rendu, avant l'arrivée de la feuille du tchat (chargée sans bloquer) : sans elle, le
   conteneur passe un instant dans le flux de la page (décalage de mise en page). Spécificité nulle : la feuille l'emporte. */
:where(.aia) { position: fixed; right: max(20px, calc(env(safe-area-inset-right, 0px) + 12px)); bottom: max(20px, calc(env(safe-area-inset-bottom, 0px) + 12px)); z-index: 99990; }
/* Bouton « Gérer les cookies » (cp-consentement-analytics.php) collé en bas à droite : le bouton du tchat passe au-dessus. */
body.cookies-set .aia:not(.aia-barre) { bottom: max(48px, calc(env(safe-area-inset-bottom, 0px) + 44px)); }
/* Bandeau de cookies affiché : le bouton et la bulle passent au-dessus (--cp-bandeau, même calage que le badge d'avis). */
body:not(.cookies-set) .aia:not(.aia-barre) { bottom: calc(var(--cp-bandeau, 0px) + max(16px, env(safe-area-inset-bottom, 0px))); }
@media (prefers-reduced-motion: no-preference) {
	.aia { transition: bottom 220ms cubic-bezier(0.23, 1, 0.32, 1); }
}
/* Tchat ouvert : au-dessus du bandeau ; le badge d'avis Google et le bouton des cookies ne couvrent plus la saisie. */
.aia.aia-ouvert { z-index: 2147483646; }
html:has(.aia.aia-ouvert) .ti-widget.ti-goog,
html:has(.aia.aia-ouvert) .cp-gerer-cookies { visibility: hidden; }
/* Texte aligné à gauche (le thème centre le texte). Les retours à la ligne sont des <br> posés par le widget. */
.aia { text-align: left; }
.aia .aia-avatar { background-image: url("https://www.cuisinier-prive.fr/wp-content/uploads/2019/09/logo-cuisinier-privÇ-5-copie-150x150.png"); }
/* Palette du redesign (proposition B, mode sombre ; session du redesign, 09/11/2026) : le tchat est une feuille de verre
   sombre flottante. L'or est réservé au bouton Envoyer et à la pastille ; pas d'or en texte. Contrastes au pire cas
   (panneau sur page blanche, fond effectif #242942) : texte 11,4:1, secondaire 6,7:1, contours 3,6:1. */
.aia {
	--aia-fond: rgba(22, 27, 54, .94); --aia-texte: #E4E5EB; --aia-doux: #AEB1C3; --aia-bord: rgba(244, 244, 246, .12); --aia-bulle: #1D2340;
	--cp-verre: rgba(22, 27, 54, .94); --cp-repli: #161B36; --cp-titre: #F4F4F6; --cp-encre: #121638; --cp-trait: #7A7F99;
	--cp-or: #E2B13C; --cp-or-survol: #ECC158; --cp-filet: rgba(244, 244, 246, .12); --cp-ease: cubic-bezier(.23, 1, .32, 1);
	--cp-flou: blur(24px) saturate(1.4);
	/* Toque de chef : pictogramme « chef-hat » de Lucide (lucide.dev, licence ISC). */
	--cp-ic-toque: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 21a1 1 0 0 0 1-1v-5.35c0-.457.316-.844.727-1.041a4 4 0 0 0-2.134-7.589 5 5 0 0 0-9.186 0 4 4 0 0 0-2.134 7.588c.411.198.727.585.727 1.041V20a1 1 0 0 0 1 1Z'/%3E%3Cpath d='M6 17h12'/%3E%3C/svg%3E");
	--cp-ic-fleche: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h13M13 6l6 6-6 6'/%3E%3C/svg%3E");
	font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI Variable Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: 17px; line-height: 1.47; color: var(--aia-texte);
}
.aia ::selection { background: rgba(226, 177, 60, .35); color: var(--cp-titre); }

/* Bouton rond : verre sombre, toque claire. */
.aia .aia-lanceur { width: 56px; height: 56px; background: rgba(22, 27, 54, .88); -webkit-backdrop-filter: var(--cp-flou); backdrop-filter: var(--cp-flou); border: 1px solid rgba(255, 255, 255, .12); color: var(--cp-titre); box-shadow: 0 10px 30px -12px rgba(0, 0, 0, .8); transition: transform .2s var(--cp-ease); }
.aia .aia-lanceur:hover { transform: none; box-shadow: 0 10px 30px -12px rgba(0, 0, 0, .8); }
.aia .aia-lanceur:active { transform: scale(.96); }
.aia .aia-lanceur .aia-ic-chat { display: none; }
.aia .aia-lanceur::before { content: ""; position: absolute; width: 28px; height: 28px; background: currentColor; -webkit-mask: var(--cp-ic-toque) center / contain no-repeat; mask: var(--cp-ic-toque) center / contain no-repeat; transition: opacity .18s ease, transform .22s ease; }
.aia.aia-ouvert .aia-lanceur::before { opacity: 0; transform: rotate(90deg) scale(.6); }
.aia .aia-pastille { border-color: var(--cp-repli); background: var(--cp-or); color: var(--cp-encre); }

/* Bulle d'invitation : même verre. */
.aia .aia-invitation { bottom: 72px; max-width: min(300px, calc(100vw - 32px)); background: var(--cp-verre); -webkit-backdrop-filter: var(--cp-flou); backdrop-filter: var(--cp-flou); border: 1px solid rgba(255, 255, 255, .12); border-radius: 18px; border-bottom-right-radius: 6px; color: var(--aia-texte); box-shadow: 0 24px 60px -24px rgba(0, 0, 0, .6); }
.aia .aia-invitation-texte { padding: 14px 48px 15px 16px; font-size: 15px; line-height: 1.47; }
.aia .aia-invitation-nom { margin-bottom: 3px; font-size: 14px; font-weight: 600; color: var(--cp-titre); }
.aia .aia-invitation-fermer { top: 4px; right: 4px; width: 44px; height: 44px; padding: 0; align-items: center; justify-content: center; border-radius: 50%; color: var(--aia-doux); }
.aia .aia-invitation-fermer:hover, .aia .aia-invitation-texte:hover { background: transparent; }

/* Panneau : verre sombre presque opaque (surface de lecture). */
.aia .aia-panneau { background: var(--cp-verre); -webkit-backdrop-filter: var(--cp-flou); backdrop-filter: var(--cp-flou); }
@media (min-width: 481px) {
	.aia .aia-panneau { width: min(400px, calc(100vw - 32px)); border: 1px solid rgba(255, 255, 255, .12); border-radius: 28px; box-shadow: 0 24px 60px -24px rgba(0, 0, 0, .6); }
}
.aia .aia-entete { gap: 12px; padding-left: 16px; padding-right: 8px; background: transparent; color: var(--cp-titre); border-bottom: 1px solid var(--cp-filet); }
.aia .aia-avatar { width: 44px; height: 44px; background-color: var(--cp-repli); background-position: center; background-size: cover; background-repeat: no-repeat; }
.aia .aia-avatar svg { display: none; }
.aia .aia-titre { font-family: Fraunces, Georgia, serif; font-weight: 600; font-size: 19px; line-height: 1.15; letter-spacing: -.01em; color: var(--cp-titre); }
.aia .aia-statut { gap: 0; margin-top: 3px; font-size: 14px; opacity: 1; color: var(--aia-doux); }
.aia .aia-statut::before { display: none; }
.aia:not(.aia-ecrit) .aia-statut::after { content: "\00a0(IA)"; }
.aia .aia-fermer { width: 44px; height: 44px; padding: 0; align-items: center; justify-content: center; border-radius: 50%; color: var(--cp-titre); transition: background-color .2s ease; }
.aia .aia-fermer:hover { background: transparent; }
.aia .aia-fermer:active { transform: scale(.96); }

/* Fil de la conversation. */
.aia .aia-fil { padding: 18px 16px 14px; gap: 12px; scrollbar-width: thin; scrollbar-color: rgba(244, 244, 246, .25) transparent; }
.aia .aia-bulle { max-width: 86%; padding: 11px 14px; border-radius: 18px; font-size: 17px; line-height: 1.47; }
.aia .aia-assistant { background: var(--aia-bulle); color: var(--aia-texte); border-bottom-left-radius: 6px; box-shadow: none; }
.aia .aia-visiteur { background: #E4E5EB; color: var(--cp-encre); border-bottom-right-radius: 6px; }
.aia .aia-assistant a:not(.aia-contact) { color: var(--cp-titre); text-decoration: underline; text-underline-offset: 2px; }
.aia .aia-visiteur a { color: var(--cp-encre); }
.aia .aia-entree { animation-duration: .24s; animation-timing-function: var(--cp-ease); }
.aia .aia-point { background: var(--aia-doux); }
.aia .cp-salut { display: block; margin: 0 0 4px; font-family: Fraunces, Georgia, serif; font-style: italic; font-weight: 400; font-size: 21px; line-height: 1.2; color: var(--cp-titre); }
.aia .cp-ligne { display: block; }
.aia .cp-liste { margin: 8px 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.aia .cp-liste li { position: relative; margin: 0; padding-left: 17px; }
.aia .cp-liste li::before { content: ""; position: absolute; left: 1px; top: .74em; width: 8px; height: 1.5px; border-radius: 1px; background: var(--aia-doux); }
.aia .cp-liste strong { font-weight: 600; color: var(--cp-titre); }

/* Bouton « Nous contacter » : pilule au contour clair (l'or reste à Envoyer). */
.aia .aia-contact { display: inline-flex; align-items: center; gap: 8px; width: auto; margin-top: 10px; min-height: 44px; padding: 0 18px; border: 1.5px solid #E4E5EB; border-radius: 999px; background: transparent; color: var(--cp-titre) !important; font-weight: 600; font-size: 15px; text-decoration: none !important; transition: background-color .2s ease, transform .16s var(--cp-ease); }
.aia .aia-contact::after { content: ""; flex: none; width: 16px; height: 16px; background: currentColor; -webkit-mask: var(--cp-ic-fleche) center / contain no-repeat; mask: var(--cp-ic-fleche) center / contain no-repeat; }
.aia .aia-contact:active { transform: scale(.97); }

/* Suggestions. */
.aia .aia-suggestions { gap: 8px; padding: 0 16px 12px; }
.aia .aia-suggestion { margin: 0; min-height: 44px; padding: 9px 16px; border: 1.5px solid var(--cp-trait); border-radius: 999px; background: var(--aia-bulle); color: var(--aia-texte); font-family: inherit; font-size: 15px; font-weight: 600; line-height: 1.3; text-align: left; transition: border-color .2s ease, transform .16s var(--cp-ease); }
.aia .aia-suggestion:hover { background: var(--aia-bulle); }
.aia .aia-suggestion:active { transform: scale(.97); }
/* Placées par le script juste sous le message d'accueil : elles défilent avec le fil et lui laissent la place. */
.aia .aia-fil .aia-suggestions { flex-wrap: wrap; overflow: visible; margin: 0; padding: 0; }
.aia .aia-fil .aia-suggestion { flex: none; max-width: 100%; white-space: normal; }
.aia .aia-suggestions:empty { display: none; }
/* Le thème pose un « clearfix » (::before et ::after en display: table) qui décale la première suggestion de 8 px. */
.aia .aia-suggestions::before, .aia .aia-suggestions::after { content: none; display: none; }

/* Saisie : l'or pour l'action principale seulement. */
.aia .aia-formulaire { padding: 12px 12px 8px 16px; border-top: 1px solid var(--cp-filet); }
.aia .aia-champ { height: 48px; min-height: 48px; padding: 11px 14px; border: 1.5px solid var(--cp-trait); border-radius: 12px; background: var(--aia-bulle); font-family: inherit; font-size: 17px; line-height: 1.3; color: var(--aia-texte); caret-color: var(--cp-or); }
.aia .aia-champ::placeholder { color: var(--aia-doux); opacity: 1; }
.aia .aia-champ:focus, .aia .aia-champ:focus-visible { border-color: #E4E5EB !important; background: var(--aia-bulle) !important; color: var(--aia-texte) !important; box-shadow: none !important; }
.aia .aia-compteur { color: var(--aia-doux); }
.aia .aia-envoyer { width: 48px; height: 48px; border-radius: 50%; background: var(--cp-or); color: var(--cp-encre); transition: background-color .2s ease, transform .16s var(--cp-ease); }
.aia .aia-envoyer:active { transform: scale(.96); }
.aia .aia-envoyer:disabled { background: rgba(244, 244, 246, .14); color: var(--aia-doux); opacity: 1; }
.aia .aia-envoyer svg { display: none; }
.aia .aia-envoyer::before { content: ""; width: 20px; height: 20px; background: currentColor; -webkit-mask: var(--cp-ic-fleche) center / contain no-repeat; mask: var(--cp-ic-fleche) center / contain no-repeat; }
.aia .aia-mention { padding: 0 16px 12px; font-size: 14px; line-height: 1.4; color: var(--aia-doux); }
.aia .aia-mention a { display: inline-block; margin: -8px -4px; padding: 8px 4px; color: var(--aia-doux); text-underline-offset: 2px; }

/* Focus : anneau or de 3 px, décalé de 3 px (7,2:1 sur le panneau). */
.aia button:focus-visible, .aia a:focus-visible, .aia textarea:focus-visible, .aia .aia-fil:focus-visible { outline: 3px solid var(--cp-or); outline-offset: 3px; }
.aia .aia-fil:focus-visible { outline-offset: -3px; }

/* Survols réservés aux souris (pas d'état collé après un toucher). */
@media (hover: hover) and (pointer: fine) {
	.aia .aia-lanceur:hover { transform: translateY(-2px); }
	.aia .aia-fermer:hover, .aia .aia-invitation-fermer:hover { background: rgba(244, 244, 246, .08); }
	.aia .aia-contact:hover { background: rgba(244, 244, 246, .08); }
	.aia .aia-suggestion:hover { border-color: var(--aia-doux); }
	.aia .aia-envoyer:not(:disabled):hover { background: var(--cp-or-survol); }
}

/* Repli opaque : transparence réduite demandée, ou flou non pris en charge. */
@media (prefers-reduced-transparency: reduce) {
	.aia .aia-panneau, .aia .aia-invitation, .aia .aia-lanceur { background: var(--cp-repli); -webkit-backdrop-filter: none; backdrop-filter: none; }
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	.aia .aia-panneau, .aia .aia-invitation, .aia .aia-lanceur { background: var(--cp-repli); }
}
/* Contraste renforcé demandé. */
@media (prefers-contrast: more) {
	.aia { --cp-trait: #A6A9BC; --cp-filet: rgba(244, 244, 246, .4); }
}

/* Contraste élevé de Windows : les bulles et les boutons ronds gardent un contour. */
.aia .aia-bulle, .aia .aia-envoyer, .aia .aia-fermer { border: 1px solid transparent; }

@media (prefers-reduced-motion: reduce) {
	.aia .aia-panneau, .aia .aia-invitation { animation: none; transition: none; }
	.aia .aia-lanceur, .aia .aia-lanceur::before, .aia .aia-contact, .aia .aia-suggestion, .aia .aia-envoyer, .aia .aia-fermer { transition: none; }
	.aia .aia-lanceur:hover, .aia .aia-lanceur:active, .aia .aia-contact:active, .aia .aia-suggestion:active, .aia .aia-envoyer:active { transform: none; }
}
/*# sourceURL=assistant-ia-inline-css */
