/* Mode Vanilla — pose d'attributs. Page-scopée `.van-page`, réutilise le hub skin. */

.parchemin:has(.van-page){ background:none; border:0; box-shadow:none; padding:0; }
.van-page{ max-width:940px; margin:0 auto; }

.van-flash{ text-align:center; font-weight:600; border-radius:12px; padding:10px 14px; margin:0 auto 14px; max-width:640px; }
.van-flash.ok{ background:#e7f4e4; border:1px solid #a9cf9c; color:#2f5d23; }
.van-flash.ko{ background:#f7e6e3; border:1px solid #d7a99e; color:#7a2f1f; }

.van-aide{ text-align:center; color:var(--or-fonce); font-family:var(--plume,var(--serif)); font-size:1.02em; margin:0 auto 14px; max-width:660px; }

.van-bilan{ display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px;
  background:#fbf3dc; border:1px solid #e7d5a6; border-radius:14px; padding:12px 18px; max-width:520px; margin:0 auto 18px; }
.van-bilan-lbl{ font-size:.85em; color:var(--or-fonce); font-family:var(--sans); text-transform:uppercase; letter-spacing:.04em; }
.van-bilan-val{ font-family:var(--titre,var(--serif)); font-size:1.25em; font-weight:700; color:var(--encre); }
.van-bilan-val.ok{ color:#2f5d23; }
.van-bilan-val.ko{ color:#7a2f1f; }
.van-bilan-sep{ color:var(--bord,#d0b16e); }

.van-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:16px; margin:4px 0 8px; }
.van-carte{ background:#fbf3dc; border:1px solid #e7d5a6; border-radius:14px; padding:16px 18px; display:flex; flex-direction:column; gap:8px; }
.van-attr-lbl{ font-family:var(--titre,var(--serif)); font-size:1.12em; color:var(--encre); font-weight:700; }
.van-attr-role{ font-size:.9em; color:var(--or-fonce); margin:0; line-height:1.4; }
.van-num{ font-family:var(--sans); font-size:1.15em; font-weight:600; color:var(--encre); text-align:center;
  background:#fff8e8; border:1px solid #ecdcb0; border-radius:9px; padding:8px 10px; margin-top:auto; width:100%; }

.van-actions{ text-align:center; margin:18px 0 8px; }
.van-note{ text-align:center; color:var(--or-fonce); font-size:.9em; max-width:600px; margin:6px auto 0; }

/* Liste des adversaires (GET /vanilla) */
.van-liens{ text-align:center; margin:0 0 16px; }
.van-liens a{ color:var(--or-fonce); font-weight:600; text-decoration:none; border-bottom:1px dotted var(--bord,#d0b16e); }
.van-liens a:hover{ color:var(--encre); }

.van-optin{ text-align:center; background:#fbf3dc; border:1px solid #e7d5a6; border-radius:14px;
  padding:22px 18px; max-width:560px; margin:0 auto; }
.van-optin .ic{ font-size:1.8em; display:block; margin-bottom:6px; }
.van-optin p{ margin:6px 0; color:var(--encre); }
.van-optin p.sous{ color:var(--or-fonce); font-size:.92em; }

.van-cibles{ display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:16px; margin:4px 0 8px; }
.van-cible{ background:#fbf3dc; border:1px solid #e7d5a6; border-radius:14px; padding:16px 18px;
  display:flex; flex-direction:column; gap:12px; }
.vc-tete{ display:flex; align-items:center; gap:10px; }
.vc-id{ flex:1; min-width:0; display:flex; flex-direction:column; }
.vc-nom{ font-family:var(--titre,var(--serif)); font-size:1.08em; font-weight:700; }
.vc-nom a{ color:var(--encre); text-decoration:none; }
.vc-nom a:hover{ color:var(--or-fonce); }
.vc-sous{ font-size:.88em; color:var(--or-fonce); }
.vc-niv{ font-size:.82em; color:var(--or-fonce); font-family:var(--sans);
  background:#fff8e8; border:1px solid #ecdcb0; border-radius:9px; padding:2px 8px; white-space:nowrap; }
.van-cible form{ margin:0; text-align:center; }
