/**
 * Pied de page marketing custom — css_footer_custom = 99.
 * Réseaux : socials-unified.css (tokens --arkt-* via root.css chargé par css.php).
 */
@import url("../modules/socials-unified.css");

#footer.arkt-footer {
  position: relative;
  color: var(--arkt-text);
  background: var(--arkt-header-surface-bg);
  backdrop-filter: blur(var(--arkt-blur-header));
  -webkit-backdrop-filter: blur(var(--arkt-blur-header));
  border-top: var(--arkt-glass-border);
  text-align: left;
}

/* Cadre horizontal : main.css si css_main_custom ≠ 0 ; repli ici pour footer seul (css_footer_custom = 99). */
#portfolio_page.portfolio-font:has(#header.arkt-header) #footer.arkt-footer.padding-left.padding-right {
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box;
}

#portfolio_page.portfolio-font:has(#header.arkt-header) #footer.arkt-footer .arkt-footer__inner,
#portfolio_page:has(#header.arkt-header) #footer.arkt-footer .arkt-footer__inner {
  width: min(100%, var(--arkt-page-content-max-width));
  max-width: var(--arkt-page-content-max-width);
  margin-inline: auto;
  padding-left: max(var(--arkt-header-inner-padding), env(safe-area-inset-left, 0px));
  padding-right: max(var(--arkt-header-inner-padding), env(safe-area-inset-right, 0px));
  box-sizing: border-box;
}

#footer.arkt-footer .arkt-footer__inner {
  position: relative;
  z-index: 1;
  padding-top: 3rem;
  padding-bottom: 2rem;
  text-align: left;
}

#footer.arkt-footer .arkt-footer__grid {
  align-items: start;
  justify-items: start;
}

#footer.arkt-footer .arkt-footer__brand {
  display: flex;
  flex-direction: column;
  gap: var(--arkt-space-footer-brand-gap);
}

#footer.arkt-footer .arkt-brand {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  text-decoration: none;
  color: var(--arkt-color-white);
  font-weight: var(--arkt-type-h1-weight);
  font-size: var(--arkt-type-footer-brand-size);
  font-family: var(--arkt-font-family-sans);
}

#footer.arkt-footer .arkt-brand__mark {
  flex-shrink: 0;
}

#footer.arkt-footer .arkt-brand__logo {
  height: 26px;
  display: block;
  object-fit: contain;
}

#footer.arkt-footer .arkt-footer__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--arkt-space-header-actions-gap);
}

/* Boutons hors pastilles auth (taille pied) ; pastilles = même gabarit que le header */
#footer.arkt-footer .arkt-footer__actions .arkt-btn:not(.arkt-header__pill) {
  font-size: 0.82rem;
  padding: 0.5rem 1.05rem;
}

#footer.arkt-footer .arkt-footer__actions .arkt-header__pill.arkt-btn {
  padding: 0.55rem 1.15rem;
  font-size: 0.9rem;
}

#footer.arkt-footer .arkt-footer__links {
  list-style: none;
  margin: 0;
  padding: 0;
}

#footer.arkt-footer .arkt-footer__links li {
  margin-bottom: var(--arkt-space-footer-links-mb);
}

#footer.arkt-footer .arkt-footer__links a {
  color: var(--arkt-rgba-white-65);
  text-decoration: none;
  font-size: 0.8rem;
}

#footer.arkt-footer .arkt-footer__links a:hover {
  color: var(--arkt-color-white);
}

#portfolio_page #footer.arkt-footer .arkt-footer__social {
  margin-top: 0.75rem;
}

/*
 * Liste ul.social-medias (structure/socials.php) : voir socials-unified.css
 */

/* Bloc légal intégré au footer custom (id distinct du footer#legal global dans structure/footer.php) */
#footer.arkt-footer #arkt-footer-legal.arkt-footer__legal {
  margin-top: 2.5rem;
  padding-top: 1.25rem;
  border-top: var(--arkt-page-border-width) solid var(--arkt-page-border-color);
}

/* Évite le doublon : structure/footer.php inclut toujours un second footer#legal après le footer custom */
#footer.arkt-footer:has(nav.arkt-footer__legal) + footer#legal {
  display: none !important;
}

#footer.arkt-footer .arkt-footer__legal-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 0.35rem 1.25rem;
  text-align: left;
}

#footer.arkt-footer .arkt-footer__legal-list li {
  margin: 0;
}

#footer.arkt-footer .arkt-footer__legal-list a {
  color: var(--arkt-rgba-white-55);
  text-decoration: none;
  font-size: 0.65rem;
  transition: color 0.2s ease;
}

#footer.arkt-footer .arkt-footer__legal-list a:hover {
  color: var(--arkt-color-white);
}

/* « Quitter le mode plein écran » (structure/admin/footer.php : #visitor_mode + .arkt-promo-btn) */
#visitor_mode,
#visitor_mode.arkt-visitor-mode {
  position: fixed;
  left: 50%;
  right: auto;
  transform: translateX(-50%);
  bottom: max(1rem, env(safe-area-inset-bottom, 0px));
  width: min(calc(100vw - 2rem), 22rem);
  max-width: 100%;
  margin: 0;
  padding: 0 1rem;
  box-sizing: border-box;
  text-align: center;
  z-index: 9500 !important;
  pointer-events: none;
  font-family: var(--arkt-font-family-sans, inherit);
}

#visitor_mode .arkt-promo-btn,
#visitor_mode.arkt-visitor-mode .arkt-visitor-mode__toggle {
  pointer-events: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  width: 100%;
  margin: 0;
  padding: 0.65rem 1.15rem;
  border-radius: var(--arkt-radius-pill, 999px);
  font-weight: var(--arkt-btn-font-weight);
  font-size: 0.875rem;
  line-height: 1.2;
  text-decoration: none;
  box-sizing: border-box;
  color: var(--arkt-btn-cta-text);
  background: var(--arkt-btn-cta-bg);
  border: var(--arkt-btn-cta-border);
  box-shadow: var(--arkt-btn-cta-shadow);
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

#visitor_mode .arkt-promo-btn:hover,
#visitor_mode.arkt-visitor-mode .arkt-visitor-mode__toggle:hover {
  background: var(--arkt-btn-cta-bg-hover);
  border: var(--arkt-btn-cta-border);
  box-shadow: var(--arkt-btn-cta-shadow-hover);
  transform: translateY(-2px);
  filter: none;
}

/* Liens .arkt-btn--light hors #portfolio_page : garder le contraste */
#visitor_mode a.arkt-btn--light,
#visitor_mode.arkt-visitor-mode a.arkt-btn--light,
#visitor_mode a.arkt-btn--light:link,
#visitor_mode a.arkt-btn--light:visited,
#visitor_mode a.arkt-btn--light:hover,
#visitor_mode a.arkt-btn--light:active {
  color: var(--arkt-text-on-light) !important;
}

@media screen and (max-width: 600px) {
  #visitor_mode,
  #visitor_mode.arkt-visitor-mode {
    width: min(92vw, 22rem);
  }

  #visitor_mode .arkt-promo-btn,
  #visitor_mode.arkt-visitor-mode .arkt-visitor-mode__toggle {
    width: 100%;
    justify-content: center;
  }
}

/* Espace bas de page pour ne pas masquer le dernier contenu sous le bouton fixe */
body:has(#visitor_mode) #portfolio_page,
body:has(#visitor_mode.arkt-visitor-mode) #portfolio_page {
  padding-bottom: 5.5rem;
}

/* Connecté (visitor = 0) : entrée « Mode visiteur » dans la barre d’aperçu */
body.portfolio-editor #arktefakt-visualiser #arktefakt-editor-bar .arkt-visitor-mode__entry {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.45rem 0.85rem;
  border-radius: var(--arkt-radius-pill);
  border: 1px solid var(--arkt-rgba-border-white-22);
  background: var(--arkt-rgba-white-06);
  color: var(--arkt-color-white) !important;
  text-decoration: none;
  font-weight: var(--arkt-btn-font-weight);
  font-size: 0.8125rem;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease;
}

body.portfolio-editor #arktefakt-visualiser #arktefakt-editor-bar .arkt-visitor-mode__entry:hover {
  border-color: var(--arkt-rgba-border-white-45);
  background: var(--arkt-rgba-white-10);
}

body.portfolio-editor #arktefakt-visualiser #arktefakt-editor-bar .arkt-visitor-mode__entry svg {
  flex-shrink: 0;
}

@media (prefers-reduced-motion: reduce) {
  #footer.arkt-footer .arkt-footer__legal-list a {
    transition: none;
  }
}

@media screen and (max-width: 650px) {
  #footer.arkt-footer .arkt-footer__actions {
    justify-content: flex-start;
  }
}

/*
 * assets/portfolios/css/core/fonts.css : `p, span, a, .arkt-btn { font-size: 1em !important }`
 * écrase les tailles sans !important — on réapplique avec #portfolio_page + !important.
 */
#portfolio_page #footer.arkt-footer a.arkt-brand,
#portfolio_page #footer.arkt-footer a.arkt-brand > span:not([aria-hidden="true"]) {
  font-size: var(--arkt-type-footer-brand-size) !important;
  line-height: 1.35 !important;
  letter-spacing: normal !important;
}

#portfolio_page #footer.arkt-footer .arkt-footer__col h3 {
  margin: 0 0 1rem;
  font-size: 0.82rem !important;
  line-height: 1.35 !important;
  font-weight: var(--arkt-type-h3-weight);
  color: var(--arkt-text);
  text-align: left;
}

#portfolio_page #footer.arkt-footer .arkt-footer__links a {
  font-size: 0.75rem !important;
  line-height: 1.45 !important;
}

#portfolio_page #footer.arkt-footer .arkt-footer__legal-list a {
  font-size: 0.62rem !important;
  line-height: 1.45 !important;
}

#portfolio_page #footer.arkt-footer .arkt-footer__actions .arkt-btn:not(.arkt-header__pill) {
  font-size: 0.78rem !important;
  line-height: 1.25 !important;
  padding: 0.45rem 0.95rem !important;
  letter-spacing: normal !important;
}

#portfolio_page #footer.arkt-footer .arkt-footer__actions .arkt-header__pill.arkt-btn {
  font-size: 0.9rem !important;
  line-height: 1.25 !important;
  padding: 0.55rem 1.15rem !important;
  letter-spacing: normal !important;
}

/* Mode éditeur : hub + fonts.css chargés après — même règles, spécificité accrue. */
body.portfolio-editor #webpage-simulation #portfolio_page.portfolio-font:has(#header.arkt-header) #footer.arkt-footer.padding-left.padding-right {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page.portfolio-font:has(#header.arkt-header) #footer.arkt-footer .arkt-footer__inner {
  width: min(100%, var(--arkt-page-content-max-width)) !important;
  max-width: var(--arkt-page-content-max-width) !important;
  margin-inline: auto !important;
  padding-left: max(var(--arkt-header-inner-padding), env(safe-area-inset-left, 0px)) !important;
  padding-right: max(var(--arkt-header-inner-padding), env(safe-area-inset-right, 0px)) !important;
  box-sizing: border-box !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer {
  background: var(--arkt-header-surface-bg) !important;
  backdrop-filter: blur(var(--arkt-blur-header)) !important;
  -webkit-backdrop-filter: blur(var(--arkt-blur-header)) !important;
  border-top: var(--arkt-glass-border) !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer a.arkt-brand,
body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer a.arkt-brand > span:not([aria-hidden="true"]) {
  font-size: var(--arkt-type-footer-brand-size) !important;
  line-height: 1.35 !important;
  letter-spacing: normal !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer .arkt-footer__col h3 {
  margin: 0 0 1rem !important;
  font-size: 0.82rem !important;
  line-height: 1.35 !important;
  font-weight: var(--arkt-type-h3-weight) !important;
  color: var(--arkt-text) !important;
  text-align: left !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer .arkt-footer__links a {
  font-size: 0.75rem !important;
  line-height: 1.45 !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer .arkt-footer__legal-list a {
  font-size: 0.62rem !important;
  line-height: 1.45 !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer .arkt-footer__actions .arkt-btn:not(.arkt-header__pill) {
  font-size: 0.78rem !important;
  line-height: 1.25 !important;
  padding: 0.45rem 0.95rem !important;
  letter-spacing: normal !important;
}

body.portfolio-editor #webpage-simulation #portfolio_page #footer.arkt-footer .arkt-footer__actions .arkt-header__pill.arkt-btn {
  font-size: 0.9rem !important;
  line-height: 1.25 !important;
  padding: 0.55rem 1.15rem !important;
  letter-spacing: normal !important;
}

