/* Ouest Avenue – Espace agent */
.oa-ext { --oa-red:#cc0000; --oa-ink:#1c1c1e; --oa-muted:#6b6b70; --oa-line:#e6e6e8; --oa-bg:#f6f6f7;
	color:var(--oa-ink); font-size:16px; line-height:1.5; max-width:1180px; margin:0 auto 60px; }
.oa-ext *, .oa-ext *::before, .oa-ext *::after { box-sizing:border-box; }
.oa-ext h2, .oa-ext h3 { color:var(--oa-ink); margin:0 0 .4em; }
.oa-ext-small { font-size:13px; color:var(--oa-muted); margin:.4em 0 0; }

.oa-ext { margin-top:0; }
/* Espace resserré sous le menu du site : fine bande grise de séparation, puis le contenu. */
body.oa-ext-page .page-title-wrap { display:none; }
body.oa-ext-page section.page-wrap { padding-top:14px; }
body.oa-ext-page .page-content-wrap { padding-top:16px; }
.oa-ext-head { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:34px 36px; border-radius:14px;
	background:linear-gradient(115deg,#1c1c1e 0%,#2e1212 45%,#7d0000 80%,#b80000 100%); color:#fff; position:relative; overflow:hidden; }
.oa-ext-head::after { content:""; position:absolute; right:-60px; top:-60px; width:220px; height:220px; border-radius:50%; background:rgba(255,40,40,.45); filter:blur(14px); }
.oa-ext-kicker { text-transform:uppercase; letter-spacing:4px; font-size:13px; font-weight:700; color:#ff8a8a; margin:0; position:relative; }
.oa-ext .oa-ext-head h2 { font-size:34px; margin:4px 0 0; color:#fff; position:relative; }
.oa-ext-logout { position:relative; z-index:1; font-size:14px; color:#fff; text-decoration:none; border:1px solid rgba(255,255,255,.35); padding:9px 16px; border-radius:999px; }
.oa-ext-logout:hover { background:rgba(255,255,255,.1); color:#fff; }

.oa-ext-tabs { display:flex; gap:6px; margin:22px 0 26px; padding:6px; background:var(--oa-bg); border-radius:10px; width:max-content; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.oa-ext-tabs a { padding:10px 18px; border-radius:7px; background:transparent; color:var(--oa-ink); font-weight:600; font-size:15px; white-space:nowrap; text-decoration:none; }
.oa-ext-tabs a:hover { background:#fff; }
.oa-ext-tabs a.is-active { background:var(--oa-ink); color:#fff; }

.oa-ext-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:18px; }
.oa-ext-tile { display:flex; flex-direction:column; gap:8px; padding:24px; border:1px solid var(--oa-line); border-radius:10px; background:#fff; color:var(--oa-ink); text-decoration:none; box-shadow:0 8px 20px rgba(0,0,0,.04); transition:transform .15s, box-shadow .15s; }
.oa-ext-tile:hover { transform:translateY(-2px); box-shadow:0 12px 26px rgba(0,0,0,.08); }
.oa-ext-tile-icon { width:48px; height:48px; border-radius:12px; background:#fdecec; color:var(--oa-red); display:flex; align-items:center; justify-content:center; }
.oa-ext-tile-icon svg { width:26px; height:26px; }
.oa-ext-tile-title { font-size:20px; font-weight:700; }
.oa-ext-tile-text { color:var(--oa-muted); font-size:15px; flex:1; }
.oa-ext-tile-go { color:var(--oa-red); font-weight:700; }

.oa-ext-card { background:#fff; border:1px solid var(--oa-line); border-radius:10px; padding:22px; margin-bottom:18px; }
.oa-ext-login { max-width:420px; margin:30px auto; background:#fff; border:1px solid var(--oa-line); border-radius:10px; padding:28px; }
.oa-ext-login input[type=text], .oa-ext-login input[type=password] { width:100%; }
.oa-ext-btn, .oa-ext-login input[type=submit] { display:inline-block; background:var(--oa-red); color:#fff; border:0; border-radius:6px; padding:13px 22px; font-weight:700; font-size:16px; cursor:pointer; text-decoration:none; }
.oa-ext-btn:hover { background:#a80000; color:#fff; }
.oa-ext-btn[disabled] { background:#c9c9cc; cursor:not-allowed; }
.oa-ext-btn--ghost { background:#fff; color:var(--oa-ink); border:1px solid var(--oa-line); }
.oa-ext-btn--ghost:hover { background:var(--oa-bg); color:var(--oa-ink); }

.oa-ext-notice { padding:12px 16px; border-radius:8px; margin-bottom:18px; font-weight:600; }
.oa-ext-notice--ok { background:#e8f6ec; color:#17632f; }
.oa-ext-notice--info { background:#eef3fb; color:#1f4b8f; }
.oa-ext-notice--err { background:#fdecec; color:#9b1c1c; }

.oa-ext-fiche-row { display:flex; gap:20px; align-items:flex-start; flex-wrap:wrap; }
.oa-ext-photo { width:150px; height:200px; border-radius:8px; overflow:hidden; background:var(--oa-bg); display:flex; align-items:center; justify-content:center; color:var(--oa-muted); }
.oa-ext-photo img { width:100%; height:100%; object-fit:cover; }
.oa-ext-cover { height:160px; border-radius:8px; background:var(--oa-bg) center/cover no-repeat; margin-bottom:12px; display:flex; align-items:center; justify-content:center; color:var(--oa-muted); }
.oa-ext-fiche textarea { width:100%; font:inherit; padding:12px; border:1px solid var(--oa-line); border-radius:8px; }
.oa-ext-doc iframe { width:100%; min-height:80vh; border:0; }

/* Générateur de couverture */
.oa-couv { display:grid; grid-template-columns:minmax(280px,420px) 1fr; gap:28px; align-items:start; }
.oa-couv-form { display:flex; flex-direction:column; gap:18px; }
.oa-field { border:0; padding:0; margin:0; display:flex; flex-direction:column; gap:6px; }
.oa-field small { color:var(--oa-muted); font-size:13px; }
.oa-label { font-weight:700; font-size:15px; }
.oa-row { flex-direction:row; gap:12px; }
.oa-row > div { flex:1; display:flex; flex-direction:column; gap:6px; }
.oa-couv input[type=text], .oa-couv select { width:100%; padding:11px 12px; border:1px solid var(--oa-line); border-radius:6px; font:inherit; background:#fff; }
.oa-radio, .oa-check { display:flex; align-items:center; gap:8px; font-size:15px; cursor:pointer; }
.oa-radio { display:inline-flex; margin-right:18px; }
.oa-range { display:flex; align-items:center; gap:10px; font-size:14px; }
.oa-range input { flex:1; accent-color:var(--oa-red); }
.oa-small-btn { padding:8px 14px; font-size:14px; align-self:flex-start; }
.oa-drop { position:relative; border:2px dashed #c9c9cc; border-radius:10px; padding:22px; text-align:center; cursor:pointer; background:var(--oa-bg); font-weight:600; }
.oa-drop.is-over { border-color:var(--oa-red); background:#fff5f5; }
.oa-drop input { position:absolute; inset:0; opacity:0; cursor:pointer; }
.oa-drop small { font-weight:400; color:var(--oa-muted); }
.oa-couv-preview { position:sticky; top:20px; }
.oa-canvas-wrap { position:relative; width:100%; max-width:430px; aspect-ratio:9/16; margin:0 auto; border-radius:10px; overflow:hidden; box-shadow:0 12px 30px rgba(0,0,0,.18); cursor:grab; touch-action:none; background:#000; }
.oa-canvas-wrap:active { cursor:grabbing; }
.oa-canvas-wrap canvas { position:absolute; inset:0; width:100%; height:100%; }
#oa-guides-canvas { pointer-events:none; }

@media (max-width: 820px) {
	.oa-ext-head { padding:24px; }
	.oa-couv { grid-template-columns:1fr; }
	.oa-couv-preview { position:static; order:-1; }
	.oa-canvas-wrap { max-width:340px; }
	.oa-ext-head h2 { font-size:24px; }
}

/* ---------- 1.9.0 : en-tête propre à l'Espace ---------- */
/* Pages de l'Espace, compte connecté : l'en-tête du thème (menu du site, pastille), son titre de page et le bandeau
   « Bonjour … » laissent la place à l'en-tête de l'Espace. Le reste du site ne change pas. */
body.oa-ext-sans-theme header.header-main-wrap, body.oa-ext-sans-theme .nav-mobile, body.oa-ext-sans-theme #header-mobile,
body.oa-ext-sans-theme .page-title-wrap, body.oa-ext-sans-theme .wp-site-blocks > header, body.oa-ext-sans-theme .wp-block-post-title { display:none !important; }
body.oa-ext-sans-theme section.page-wrap { padding-top:0; }
body.oa-ext-sans-theme .page-content-wrap { padding-top:0; }
.oa-ext-entete { display:flex; align-items:center; gap:28px; min-height:68px; padding:10px 0; margin:0 0 6px; border-bottom:1px solid var(--oa-line); position:relative; z-index:70; font-family:Poppins, -apple-system, "Segoe UI", sans-serif; }
.oa-ext-marque { display:flex; align-items:center; gap:12px; text-decoration:none; color:var(--oa-muted); flex:none; }
.oa-ext-marque img { width:88px; height:auto; display:block; }
.oa-ext-marque span { font-size:13px; padding-left:12px; border-left:1px solid var(--oa-line); white-space:nowrap; cursor:default; }
.oa-ext-marque-logo { display:block; flex:none; }
.oa-ext-menu { display:flex; align-items:center; gap:4px; flex:1 1 auto; min-width:0; }
.oa-ext-m { position:relative; display:flex; align-items:center; }
.oa-ext-m-lien { display:block; padding:10px 12px; border-radius:8px; color:var(--oa-ink); text-decoration:none; font-size:15px; font-weight:500; white-space:nowrap; }
.oa-ext-m-lien:hover { color:var(--oa-red); }
.oa-ext-m.is-active > .oa-ext-m-lien { font-weight:700; }
.oa-ext-m.is-active > .oa-ext-m-lien::after { content:""; display:block; height:2px; margin-top:3px; background:var(--oa-red); border-radius:2px; }
.oa-ext-m-fleche { width:28px; height:44px; margin-left:-8px; border:0; background:transparent; cursor:pointer; color:var(--oa-ink); }
.oa-ext-m-fleche::before { content:""; display:inline-block; width:7px; height:7px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translateY(-2px) rotate(45deg); }
.oa-ext-m-sous { display:none; position:absolute; left:0; top:100%; min-width:250px; padding:8px; background:#fff; border:1px solid var(--oa-line); border-radius:12px; box-shadow:0 14px 34px rgba(28,28,30,.14); z-index:80; flex-direction:column; }
.oa-ext-m-sous::before { content:""; position:absolute; left:0; right:0; top:-10px; height:10px; } /* Pont de survol. */
.oa-ext-m-sous a { display:block; padding:10px 14px; border-radius:8px; color:var(--oa-ink); text-decoration:none; font-size:14px; font-weight:500; }
.oa-ext-m-sous a:hover, .oa-ext-m-sous a[aria-current] { background:#fdecec; color:var(--oa-red); }
.oa-ext-m.is-ouvert > .oa-ext-m-sous { display:flex; }
.oa-ext-m-deroulant.is-ferme > .oa-ext-m-sous { display:none !important; } /* Échap. */
@media (hover:hover) and (pointer:fine) and (min-width:901px) {
	.oa-ext-m-deroulant:hover > .oa-ext-m-sous, .oa-ext-m-deroulant:focus-within > .oa-ext-m-sous { display:flex; }
}
.oa-ext-menu-sortie { display:none; }
.oa-ext-moi { position:relative; margin-left:auto; flex:none; }
.oa-ext-photo-bouton { display:flex; align-items:center; gap:10px; min-height:44px; padding:2px 2px 2px 10px; border:0; background:transparent; cursor:pointer; color:var(--oa-ink); font:inherit; font-size:14px; }
.oa-ext-moi .oa-ext-avatar { width:42px; height:42px; border-radius:50%; object-fit:cover; box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--oa-red); display:inline-flex; align-items:center; justify-content:center; background:#e9e5dd; font-size:13px; font-weight:700; }
.oa-ext-photo-menu { display:none; position:absolute; right:0; top:calc(100% + 8px); min-width:260px; max-height:calc(100vh - 120px); overflow:auto; margin:0; padding:8px; list-style:none; background:#fff; border:1px solid var(--oa-line); border-radius:12px; box-shadow:0 14px 34px rgba(28,28,30,.14); z-index:90; }
.oa-ext-photo-menu.is-ouvert { display:block; }
.oa-ext-photo-menu li { margin:0; }
.oa-ext-photo-menu a { display:block; padding:9px 12px; border-radius:8px; color:var(--oa-ink); text-decoration:none; font-size:14px; font-weight:600; }
.oa-ext-photo-menu a:hover { background:#fdecec; color:var(--oa-red); }
.oa-ext-photo-menu .oa-ext-photo-sous a { padding-left:28px; font-weight:400; font-size:13px; }
.oa-ext-photo-tete { padding:8px 12px 10px; font-weight:700; border-bottom:1px solid var(--oa-line); margin-bottom:4px !important; }
.oa-ext-photo-fin { border-top:1px solid var(--oa-line); margin-top:4px !important; padding-top:4px; }
.oa-ext-menu-bouton { display:none; }
.oa-ext-fil { font-size:13px; color:var(--oa-muted); margin:10px 0 16px; }
.oa-ext-fil a { color:var(--oa-muted); }
.oa-ext-fil span[aria-current] { color:var(--oa-ink); font-weight:600; }
@media (max-width:900px) {
	.oa-ext-entete { flex-wrap:wrap; gap:10px 14px; }
	.oa-ext-photo-nom { display:none; }
	.oa-ext-menu-bouton { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:0 14px; margin-left:auto; border:1px solid var(--oa-line); border-radius:10px; background:#fff; color:var(--oa-ink); font:inherit; font-size:14px; font-weight:600; cursor:pointer; order:2; }
	.oa-ext-menu-bouton span, .oa-ext-menu-bouton span::before, .oa-ext-menu-bouton span::after { display:block; width:16px; height:2px; background:currentColor; position:relative; }
	.oa-ext-menu-bouton span::before, .oa-ext-menu-bouton span::after { content:""; position:absolute; left:0; }
	.oa-ext-menu-bouton span::before { top:-5px; } .oa-ext-menu-bouton span::after { top:5px; }
	.oa-ext-moi { order:3; margin-left:0; }
	.oa-ext-menu { display:none; order:4; flex:1 1 100%; flex-direction:column; align-items:stretch; gap:0; padding:8px 0; border-top:1px solid var(--oa-line); }
	.oa-ext-entete.is-menu-ouvert .oa-ext-menu { display:flex; }
	.oa-ext-m { flex-wrap:wrap; }
	.oa-ext-m-lien { flex:1 1 auto; padding:12px 8px; min-height:44px; }
	.oa-ext-m.is-active > .oa-ext-m-lien::after { display:none; }
	.oa-ext-m.is-active > .oa-ext-m-lien { color:var(--oa-red); }
	.oa-ext-m-fleche { display:none; }
	/* Téléphone : un seul menu, toutes les entrées visibles (rubriques et sous-rubriques). */
	.oa-ext-m-sous { display:flex; position:static; flex:1 1 100%; min-width:0; padding:0 0 6px 14px; border:0; box-shadow:none; background:transparent; }
	.oa-ext-m-sous::before { display:none; }
	.oa-ext-m-sous a { min-height:44px; display:flex; align-items:center; }
	.oa-ext-menu-sortie { display:flex; align-items:center; min-height:44px; padding:12px 8px; margin-top:6px; border-top:1px solid var(--oa-line); color:var(--oa-ink); text-decoration:none; font-weight:600; }
	.oa-ext-photo-menu { right:-8px; min-width:min(300px, calc(100vw - 32px)); }
}
/* Téléphone : logo, « Menu » et photo sur une seule ligne. */
@media (max-width:480px) {
	.oa-ext-entete { flex-wrap:wrap; gap:8px 10px; }
	.oa-ext-marque { gap:8px; }
	.oa-ext-marque img { width:72px; }
	.oa-ext-marque span { font-size:12px; padding-left:8px; }
	.oa-ext-menu-bouton { padding:0 10px; }
	.oa-ext-photo-bouton { padding:2px; }
}
