/*
Theme Name: AyitiVote
Theme URI: https://fresh-face-atelier.lovable.app
Author: AyitiVote
Description: Theme WordPress qui integre l'application complete AyitiVote en plein ecran (sondage electoral citoyen, securise et transparent). Aucun bouton ni lien : l'app s'affiche directement dans la page.
Version: 2.0
License: GNU General Public License v2 or later
Text Domain: ayitivote
*/

* { margin: 0; padding: 0; box-sizing: border-box; }
html, body { height: 100%; width: 100%; overflow: hidden; background: #0a1230; }

.av-frame-wrap {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
}
.av-frame {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}
.av-loading {
  position: fixed;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 18px;
  background: linear-gradient(135deg, #0a1230 0%, #00209f 60%, #1a3ec0 100%);
  color: #fff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, sans-serif;
  z-index: 5;
  transition: opacity .5s ease;
}
.av-loading.hidden { opacity: 0; pointer-events: none; }
.av-spin {
  width: 46px; height: 46px;
  border: 4px solid rgba(255,255,255,.25);
  border-top-color: #f1b434;
  border-radius: 50%;
  animation: avspin 1s linear infinite;
}
@keyframes avspin { to { transform: rotate(360deg); } }
.av-loading h1 { font-size: 1.6rem; letter-spacing: -.02em; }
.av-loading p { opacity: .8; font-size: .95rem; }

.av-fallback {
  position: fixed; inset: 0; z-index: 10;
  display: none;
  flex-direction: column; align-items: center; justify-content: center;
  text-align: center; gap: 20px; padding: 24px;
  background: linear-gradient(135deg, #0a1230 0%, #00209f 60%, #1a3ec0 100%);
  color: #fff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, sans-serif;
}
.av-fallback.show { display: flex; }
.av-fallback h1 { font-size: 2rem; }
.av-fallback p { max-width: 460px; opacity: .85; line-height: 1.5; }
.av-fallback a {
  background: #f1b434; color: #0a1230; font-weight: 700;
  padding: 14px 28px; border-radius: 999px; text-decoration: none;
}
