/* Rendezvix — thème : couleurs, icônes, cartes. Chargé après apple.css et rendezvix.css. */
:root { --rv-indigo:#5e5ce6; --rv-violet:#8b5cf6; --rv-green:#10b981; --rv-sky:#0ea5e9; --rv-amber:#f59e0b; --rv-rose:#f43f5e; --rv-teal:#14b8a6; --rv-slate:#64748b; --bs-primary:#5e5ce6; --bs-primary-rgb:94,92,230; }
body.rv-app { background: radial-gradient(900px 420px at 8% -8%, #e6e4ff 0, transparent 62%), radial-gradient(800px 380px at 100% 0%, #dff6f2 0, transparent 58%), #f6f6fb; background-attachment: fixed; }
.ic { width: 1.1em; height: 1.1em; flex: none; vertical-align: -.17em; }
/* barre de navigation */
.rv-bar { border-bottom: 1px solid rgba(94,92,230,.14); box-shadow: 0 6px 24px rgba(94,92,230,.07); }
.rv-mark { width: 30px; height: 30px; border-radius: 10px; background: linear-gradient(135deg, #5e5ce6, #bf5af2 60%, #f472b6); display: inline-flex; align-items: center; justify-content: center; color: #fff; box-shadow: 0 4px 12px rgba(94,92,230,.35); }
.rv-mark .ic { width: 17px; height: 17px; }
.rv-nav a { display: inline-flex; align-items: center; gap: .4rem; color: #3b3b4f; font-weight: 500; }
.rv-nav a .ic { opacity: .75; }
.rv-nav a:hover { background: rgba(94,92,230,.09); color: #3836a3; }
.rv-nav a.on { background: linear-gradient(135deg, #5e5ce6, #8b5cf6); color: #fff; box-shadow: 0 4px 14px rgba(94,92,230,.35); }
.rv-nav a.on .ic { opacity: 1; }
/* boutons */
.btn-primary { background: linear-gradient(135deg, #5e5ce6, #7c6cf2) !important; border-color: transparent !important; box-shadow: 0 4px 14px rgba(94,92,230,.28); }
.btn-primary:hover { filter: brightness(1.07); box-shadow: 0 6px 18px rgba(94,92,230,.36); }
.ap .btn-outline-primary { background: rgba(94,92,230,.1); color: #4a48c9; }
.ap .btn-outline-secondary { background: rgba(100,116,139,.1); color: #334155; }
.ap .btn-outline-danger { background: rgba(244,63,94,.1); color: #be123c; }
.ap .btn .ic { margin-right: .15rem; }
/* cartes et en-têtes de page */
.ap .card { border: 1px solid rgba(94,92,230,.08); box-shadow: 0 1px 2px rgba(20,20,60,.04), 0 10px 34px rgba(60,50,160,.09) !important; }
.ap-head { --pc1:#5e5ce6; --pc2:#8b5cf6; --pt1:#ecebff; --pt2:#f4efff; justify-content: flex-start !important; align-items: center !important; background: linear-gradient(120deg, var(--pt1), var(--pt2)); border-radius: 20px; padding: 1.1rem 1.3rem; }
.ap-head h1 { display: flex; align-items: center; gap: .85rem; font-size: clamp(1.5rem, 3.4vw, 2.1rem); }
.ap-head h1::before { content: ''; width: 52px; height: 52px; flex: none; border-radius: 16px; background-color: var(--pc1); background-repeat: no-repeat; background-position: center; background-size: 28px, 100% 100%; box-shadow: 0 8px 20px color-mix(in srgb, var(--pc1) 40%, transparent); }
.ap .ap-sub { color: #4b4b63 !important; font-size: 1rem; }
.ap-section { border-top: 1px solid rgba(94,92,230,.1); padding-top: 1rem; }
.ap-section > h2 { font-size: 1.2rem; }
.table { --bs-table-hover-bg: rgba(94,92,230,.05); }
.table thead th { font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; color: #6b6b80; border-bottom-color: rgba(94,92,230,.18); }
.table tbody tr:hover { background: rgba(94,92,230,.04); }
.alert-info { background: #e8f1ff; color: #12408a; }
.alert-success { background: #e2f8ec; color: #0f5132; }
.alert-warning { background: #fff4d6; color: #7a4b00; }
/* pastilles d'icône */
.rv-tile { width: 42px; height: 42px; border-radius: 13px; display: inline-flex; align-items: center; justify-content: center; color: #fff; flex: none; background: var(--tc, #5e5ce6); box-shadow: 0 6px 16px color-mix(in srgb, var(--tc, #5e5ce6) 38%, transparent); }
.rv-tile .ic { width: 22px; height: 22px; }
.t-indigo { --tc:#5e5ce6; --tc2:#8b5cf6; } .t-violet { --tc:#a855f7; --tc2:#d946ef; } .t-green { --tc:#10b981; --tc2:#34d399; } .t-sky { --tc:#0ea5e9; --tc2:#38bdf8; } .t-amber { --tc:#f59e0b; --tc2:#fb923c; } .t-rose { --tc:#f43f5e; --tc2:#fb7185; } .t-teal { --tc:#14b8a6; --tc2:#2dd4bf; } .t-slate { --tc:#64748b; --tc2:#94a3b8; }
.rv-tile { background: linear-gradient(135deg, var(--tc), var(--tc2, var(--tc))); }
/* choix du format */
.rv-fmt { display: flex; gap: .85rem; align-items: center; height: 100%; padding: .85rem 1rem; border-radius: 18px; background: #fff; border: 1.5px solid #ececf6; text-decoration: none; color: inherit !important; transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease; }
a.rv-fmt:hover { transform: translateY(-2px); border-color: var(--tc); box-shadow: 0 10px 26px color-mix(in srgb, var(--tc) 22%, transparent); }
.rv-fmt b { display: block; font-size: 1rem; color: #1d1d1f; } .rv-fmt small { color: #6b6b80 !important; line-height: 1.3; display: block; }
.rv-fmt.off { opacity: .55; filter: saturate(.4); }
/* badges de format et de statut */
.rv-badge { display: inline-flex; align-items: center; gap: .3rem; font-size: .72rem; font-weight: 650; padding: .15rem .55rem; border-radius: 980px; vertical-align: middle; background: #eef; color: #3836a3; }
.b-un { background: #e8e8ff; color: #3836a3; } .b-groupe { background: #d9f5e8; color: #0b6b49; } .b-collectif { background: #ffeccb; color: #8a4b00; } .b-rr { background: #ffe0e6; color: #a1123a; } .b-web { background: #f0e1ff; color: #6b21a8; } .b-seance { background: #dff2fd; color: #075985; }
.rv-st { display: inline-flex; align-items: center; gap: .3rem; font-size: .8rem; font-weight: 600; padding: .15rem .6rem; border-radius: 980px; }
.st-ok { background: #d9f5e8; color: #0b6b49; } .st-wait { background: #ffeccb; color: #8a4b00; } .st-off { background: #ffe0e6; color: #a1123a; } .st-past { background: #eceff4; color: #475569; }
/* statistiques */
.rv-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: .85rem; }
.rv-stat { display: flex; gap: .85rem; align-items: center; background: #fff; border: 1px solid #ececf6; border-radius: 18px; padding: .9rem 1rem; box-shadow: 0 6px 20px rgba(60,50,160,.06); }
.rv-stat b { display: block; font-size: 1.7rem; line-height: 1; letter-spacing: -.02em; } .rv-stat small { color: #6b6b80 !important; }
/* lien public */
.rv-link { background: linear-gradient(120deg, #ecebff, #e1f8f4); border-radius: 18px; padding: 1rem 1.1rem; }
.rv-link .form-label { font-weight: 600; display: flex; gap: .4rem; align-items: center; }
/* états vides */
.rv-empty { text-align: center; padding: 2rem 1rem; display: grid; justify-items: center; gap: .35rem; }
.rv-empty h3 { margin: .6rem 0 0; font-size: 1.15rem; } .rv-empty p { color: #6b6b80; max-width: 32rem; margin: 0 0 .5rem; }
.rv-empty-art { position: relative; width: 112px; height: 112px; display: grid; place-items: center; color: #fff; }
.rv-empty-art i { position: absolute; border-radius: 50%; background: color-mix(in srgb, var(--tc) 14%, transparent); inset: 0; } .rv-empty-art i + i { inset: 14px; background: color-mix(in srgb, var(--tc) 22%, transparent); }
.rv-empty-art .ic { position: relative; width: 52px; height: 52px; padding: 13px; border-radius: 18px; background: linear-gradient(135deg, var(--tc), var(--tc2)); box-sizing: content-box; width: 26px; height: 26px; box-shadow: 0 10px 24px color-mix(in srgb, var(--tc) 40%, transparent); }
/* onglets */
.ap-seg { background: rgba(94,92,230,.09); } .ap-tab.active { color: #3836a3; }
@media (max-width: 640px) { .rv-nav a .ic { display: none; } .ap-head h1::before { width: 42px; height: 42px; background-size: 22px, 100% 100%; } }
body.pg-rendezvous .ap-head { --pc1:#5e5ce6; --pc2:#8b5cf6; --pt1:#ecebff; --pt2:#f4efff; }
body.pg-rendezvous .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%224%22 width=%2218%22 height=%2218%22 rx=%222%22/%3E%3Cpath d=%22M16 2v4M8 2v4M3 10h18%22/%3E%3Cpath d=%22m9 16 2 2 4-4%22/%3E%3C/svg%3E"), linear-gradient(135deg, #5e5ce6, #8b5cf6); }
body.pg-types .ap-head { --pc1:#8b5cf6; --pc2:#d946ef; --pt1:#f3ecff; --pt2:#fdeefd; }
body.pg-types .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22m12 2 10 5-10 5L2 7z%22/%3E%3Cpath d=%22m2 17 10 5 10-5%22/%3E%3Cpath d=%22m2 12 10 5 10-5%22/%3E%3C/svg%3E"), linear-gradient(135deg, #8b5cf6, #d946ef); }
body.pg-seances .ap-head { --pc1:#0ea5e9; --pc2:#14b8a6; --pt1:#e1f4fd; --pt2:#e1f8f4; }
body.pg-seances .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M2 3h20%22/%3E%3Cpath d=%22M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3%22/%3E%3Cpath d=%22m7 21 5-5 5 5%22/%3E%3C/svg%3E"), linear-gradient(135deg, #0ea5e9, #14b8a6); }
body.pg-seance .ap-head { --pc1:#0ea5e9; --pc2:#14b8a6; --pt1:#e1f4fd; --pt2:#e1f8f4; }
body.pg-seance .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M2 3h20%22/%3E%3Cpath d=%22M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3%22/%3E%3Cpath d=%22m7 21 5-5 5 5%22/%3E%3C/svg%3E"), linear-gradient(135deg, #0ea5e9, #14b8a6); }
body.pg-equipe .ap-head { --pc1:#f43f5e; --pc2:#fb923c; --pt1:#ffe9ed; --pt2:#fff0e3; }
body.pg-equipe .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2%22/%3E%3Ccircle cx=%229%22 cy=%227%22 r=%224%22/%3E%3Cpath d=%22M22 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75%22/%3E%3C/svg%3E"), linear-gradient(135deg, #f43f5e, #fb923c); }
body.pg-disponibilites .ap-head { --pc1:#f59e0b; --pc2:#f97316; --pt1:#fff3d9; --pt2:#ffeadb; }
body.pg-disponibilites .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%2210%22/%3E%3Cpath d=%22M12 6v6l4 2%22/%3E%3C/svg%3E"), linear-gradient(135deg, #f59e0b, #f97316); }
body.pg-parametres .ap-head { --pc1:#64748b; --pc2:#334155; --pt1:#eceff4; --pt2:#e6e9ef; }
body.pg-parametres .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 21v-7M4 10V3M12 21v-9M12 8V3M20 21v-5M20 12V3M1 14h6M9 8h6M17 16h6%22/%3E%3C/svg%3E"), linear-gradient(135deg, #64748b, #334155); }
body.pg-sms .ap-head { --pc1:#64748b; --pc2:#334155; --pt1:#eceff4; --pt2:#e6e9ef; }
body.pg-sms .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 21v-7M4 10V3M12 21v-9M12 8V3M20 21v-5M20 12V3M1 14h6M9 8h6M17 16h6%22/%3E%3C/svg%3E"), linear-gradient(135deg, #64748b, #334155); }
body.pg-visio .ap-head { --pc1:#0ea5e9; --pc2:#6366f1; --pt1:#e1f4fd; --pt2:#ebecff; }
body.pg-visio .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22m22 8-6 4 6 4z%22/%3E%3Crect x=%222%22 y=%226%22 width=%2214%22 height=%2212%22 rx=%222%22/%3E%3C/svg%3E"), linear-gradient(135deg, #0ea5e9, #6366f1); }
body.pg-aide .ap-head { --pc1:#0ea5e9; --pc2:#6366f1; --pt1:#e1f4fd; --pt2:#ebecff; }
body.pg-aide .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%2210%22/%3E%3Cpath d=%22M9.1 9a3 3 0 0 1 5.8 1c0 2-3 3-3 3M12 17h.01%22/%3E%3C/svg%3E"), linear-gradient(135deg, #0ea5e9, #6366f1); }
body.pg-admin .ap-head { --pc1:#10b981; --pc2:#059669; --pt1:#dcf7ec; --pt2:#d9f5e4; }
body.pg-admin .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22white%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z%22/%3E%3C/svg%3E"), linear-gradient(135deg, #10b981, #059669); }

/* ---- paiements : cartes des passerelles et logos ---- */
.pay-gw { border: 1px solid rgba(94,92,230,.18); border-radius: 16px; padding: .85rem 1rem; margin-bottom: .75rem; background: rgba(94,92,230,.03); }
.pay-gw > summary { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem .9rem; cursor: pointer; list-style: none; }
.pay-gw > summary::-webkit-details-marker { display: none; }
.pay-gw-t { display: inline-flex; align-items: center; gap: .5rem; } .pay-gw-t .ic { width: 22px; height: 22px; color: #5e5ce6; }
.pay-brands { display: inline-flex; flex-wrap: wrap; gap: .35rem; align-items: center; }
.pay-brand { display: inline-flex; align-items: center; justify-content: center; min-height: 26px; padding: 0 .5rem; border: 1px solid rgba(0,0,0,.12); border-radius: 8px; background: #fff; font-size: .7rem; font-weight: 650; color: #44445a; }
.pay-logo img { display: block; height: 22px; width: auto; }

body.pg-partager .ap-head { --pc1:#0ea5e9; --pc2:#6366f1; --pt1:#e0f2fe; --pt2:#e8e9ff; }
body.pg-partager .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22white%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M10%2013a5%205%200%200%200%207.5.5l3-3a5%205%200%200%200-7-7l-1.7%201.7%22/%3E%3Cpath%20d=%22M14%2011a5%205%200%200%200-7.5-.5l-3%203a5%205%200%200%200%207%207l1.7-1.7%22/%3E%3C/svg%3E"), linear-gradient(135deg, #0ea5e9, #6366f1); }
body.pg-sondages .ap-head { --pc1:#a855f7; --pc2:#ec4899; --pt1:#f3e8ff; --pt2:#fde7f3; }
body.pg-sondages .ap-head h1::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22white%22%20stroke-width=%222%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22m17%202%204%204-4%204%22/%3E%3Cpath%20d=%22M3%2011v-1a4%204%200%200%201%204-4h14%22/%3E%3Cpath%20d=%22m7%2022-4-4%204-4%22/%3E%3Cpath%20d=%22M21%2013v1a4%204%200%200%201-4%204H3%22/%3E%3C/svg%3E"), linear-gradient(135deg, #a855f7, #ec4899); }
