/*!
 * Vodeo 2.4.0 — Marché du balado : Guest Match, opportunités, banque de voix, studio, messagerie, achats.
 * Même ADN que vodeo-public.css (nuit, Poppins, point cyan, pilules violet → bleu), confiné sous .vodeo.
 * Aucune ressource externe (Loi 25) : polices du thème, images servies par le site.
 */

/* ---------- Petits outils ---------- */
.vodeo .v-tags > li{display:inline-flex;align-items:center;padding:6px 11px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--v-line);font:600 12.5px/1.15 var(--v-ff-h);color:#d9dbe7}
.vodeo .v-tags--lg > li{padding:8px 14px;font-size:14px;background:rgba(94,28,228,.16);border-color:rgba(140,110,255,.35);color:#fff}
.vodeo .v-title--sm{font-size:clamp(30px,4.4vw,52px)}
.vodeo .v-hero--sm{padding-bottom:4px}
.vodeo .v-hero--sm .v-lead{margin-bottom:12px}
.vodeo .v-input--sm{padding:9px 12px!important;font-size:14px!important;border-radius:11px!important}
.vodeo .v-textarea--sm{min-height:80px!important}
.vodeo .v-field > span{font:700 13.5px/1.2 var(--v-ff-h);color:#e4e6f0}
.vodeo .v-req{color:var(--v-magenta);font-style:normal}
.vodeo .v-crumbs{margin:0 0 18px;font:600 13.5px var(--v-ff-h)}
.vodeo .v-crumbs a{color:var(--v-mut)}
.vodeo .v-crumbs a:hover{color:#fff}
.vodeo .v-badge--pro{background:linear-gradient(135deg,rgba(255,184,0,.95),rgba(212,35,122,.9));color:#fff;box-shadow:0 8px 22px -10px rgba(255,184,0,.8)}
.vodeo .v-nav__n--hot{background:var(--v-magenta)!important;color:#fff;box-shadow:0 0 0 3px rgba(212,35,122,.25)}
.vodeo .v-alert--warn{background:rgba(255,184,0,.1);border:1px solid rgba(255,184,0,.4);color:#ffe7a8}
.vodeo .v-alert--info{background:rgba(0,193,255,.08);border:1px solid rgba(0,193,255,.3);color:#dff6ff}
.vodeo .v-cover-ph{display:inline-grid;place-items:center;flex:none;border-radius:12px;background:linear-gradient(135deg,#2a1a5e,#16305e);color:rgba(255,255,255,.65);font:800 20px var(--v-ff-h)}
.vodeo img.v-cover-img{border-radius:12px;object-fit:cover;flex:none}

/* Étoiles d'avis */
.vodeo .v-stars{display:inline-flex;align-items:center;gap:1px;color:var(--v-amber);font-size:14px;letter-spacing:1px;line-height:1}
.vodeo .v-stars__off{color:rgba(255,255,255,.18)}
.vodeo .v-stars__n{margin-left:6px;color:var(--v-mut);font:600 12.5px var(--v-ff);letter-spacing:0}

/* ---------- Cartes de personnes (invités, voix) ---------- */
.vodeo .v-pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:clamp(14px,2vw,22px);margin-top:22px}
.vodeo .v-pgrid--tight{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:12px;margin-top:12px}
.vodeo .v-pcard{position:relative;display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:var(--v-r);background:var(--v-card);border:1px solid var(--v-line);transition:transform .25s cubic-bezier(.2,.8,.2,1),border-color .2s,box-shadow .25s}
.vodeo .v-pcard:hover{transform:translateY(-4px);border-color:var(--v-line2);box-shadow:0 26px 50px -30px rgba(0,0,0,.9)}
.vodeo .v-pcard--pro{background:linear-gradient(160deg,rgba(255,184,0,.09),rgba(94,28,228,.12) 55%,var(--v-card));border-color:rgba(255,184,0,.35)}
.vodeo .v-pcard__top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center}
.vodeo .v-pcard__ph{position:relative;display:grid;place-items:center;width:72px;height:72px;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#2a1a5e,#16305e);flex:none;box-shadow:0 0 0 1px rgba(255,255,255,.1)}
.vodeo .v-pcard__ph img{width:100%;height:100%;object-fit:cover}
.vodeo .v-pcard__ph span{font:800 28px var(--v-ff-h);color:rgba(255,255,255,.6)}
.vodeo .v-pcard__ph--sm{width:48px;height:48px;border-radius:14px}
.vodeo .v-pcard__ph--sm span{font-size:19px}
.vodeo .v-pcard__name{margin:0;font:700 17px/1.25 var(--v-ff-h);color:#fff}
.vodeo .v-pcard__name a{color:#fff}
.vodeo .v-pcard__head{margin:3px 0 0;font-size:13.5px;line-height:1.4;color:var(--v-mut);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vodeo .v-pcard__badges{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:7px}
.vodeo .v-pcard__badges:empty{display:none}
.vodeo .v-pcard__score{display:grid;place-items:center;min-width:56px;height:56px;padding:0 6px;border-radius:16px;background:var(--v-grad);box-shadow:var(--v-glow);text-align:center;line-height:1}
.vodeo .v-pcard__score b{font:800 21px var(--v-ff-h);color:#fff}
.vodeo .v-pcard__score small{font:700 10px var(--v-ff-h);color:rgba(255,255,255,.75)}
.vodeo .v-pcard__why{margin:0;font-size:12.5px;color:#c4c8de;padding-left:10px;border-left:2px solid var(--v-cyan)}
.vodeo .v-pcard__meta{margin:auto 0 0}
.vodeo .v-pcard__cta{position:relative;z-index:2;display:flex;gap:8px;flex-wrap:wrap}
.vodeo .v-pcard__cta audio,.vodeo .v-demo{width:100%;height:38px;border-radius:999px;color-scheme:dark}
.vodeo .v-pcard--voice .v-pcard__ph{border-radius:50%}

/* ---------- Opportunités ---------- */
.vodeo .v-ogrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:clamp(14px,2vw,22px);margin-top:20px}
.vodeo .v-ogrid--tight{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:12px;margin-top:12px}
.vodeo .v-ocard{position:relative;display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:var(--v-r);background:var(--v-card);border:1px solid var(--v-line);transition:border-color .2s,transform .25s}
.vodeo .v-ocard:hover{border-color:var(--v-line2);transform:translateY(-3px)}
.vodeo .v-ocard > .v-btn,.vodeo .v-ocard > .v-row:last-child{margin-top:auto;align-self:flex-start}
.vodeo .v-ocard--ad{background:linear-gradient(160deg,rgba(212,35,122,.12),rgba(94,28,228,.08) 55%,var(--v-card));border-color:rgba(212,35,122,.3)}
.vodeo .v-ocard__show{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center}
.vodeo .v-ocard__show > img,.vodeo .v-ocard__cover{width:56px;height:56px;border-radius:14px;object-fit:cover}
.vodeo .v-ocard__show > div{display:grid;gap:2px;min-width:0}
.vodeo .v-ocard__st{font:700 15.5px/1.3 var(--v-ff-h);color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vodeo a.v-ocard__st:hover{color:var(--v-cyan)}
.vodeo .v-ocard .v-h3{margin:0}
.vodeo .v-ocard p{margin:0}
.vodeo .v-ocard__price{font-size:14px;color:var(--v-mut)}
.vodeo .v-ocard__price b{font:800 20px var(--v-ff-h);color:#fff}

/* ---------- Comment ça marche ---------- */
.vodeo .v-mk-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px;margin-top:20px;counter-reset:mk}
.vodeo .v-mk-steps > li{position:relative;padding:22px 20px 18px;border-radius:var(--v-r);background:rgba(255,255,255,.035);border:1px solid var(--v-line)}
.vodeo .v-mk-steps > li > b{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;margin-bottom:14px;background:var(--v-grad);box-shadow:var(--v-glow);font:800 17px var(--v-ff-h);color:#fff}
.vodeo .v-mk-steps > li p{margin:0}

/* ---------- Profils publics (invité, voix) ---------- */
.vodeo .v-mk-profile{display:grid;grid-template-columns:minmax(160px,240px) minmax(0,1fr);gap:clamp(20px,4vw,44px);align-items:center;padding:clamp(6px,1.5vw,16px) 0 clamp(18px,3vw,30px)}
.vodeo .v-mk-profile__ph{position:relative;aspect-ratio:1/1;border-radius:28px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#2a1a5e,#16305e);box-shadow:0 40px 80px -30px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.1)}
.vodeo .v-mk-profile__ph::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);background:linear-gradient(180deg,transparent 60%,rgba(8,8,14,.45))}
.vodeo .v-mk-profile__ph img{width:100%;height:100%;object-fit:cover}
.vodeo .v-mk-profile__ph span{font:800 90px var(--v-ff-h);color:rgba(255,255,255,.4)}
.vodeo .v-mk-profile__id .v-row{gap:10px}
.vodeo .v-mk-cols{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(18px,3vw,36px);margin-top:10px;align-items:start}
.vodeo .v-mk-cols > aside{position:sticky;top:90px}
.vodeo .v-mk-links{display:grid;gap:6px;margin-top:8px}
.vodeo .v-mk-links a{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--v-line);font:600 14px var(--v-ff-h);color:#dfe1ec}
.vodeo .v-mk-links a:hover{border-color:var(--v-line2);color:#fff}
.vodeo .v-mk-demos{display:grid;gap:10px;margin-top:10px}
.vodeo .v-mk-demos > li{display:grid;gap:8px;padding:12px 14px;border-radius:var(--v-r-sm);background:rgba(255,255,255,.04);border:1px solid var(--v-line)}
.vodeo .v-mk-demos > li b{font:700 14px var(--v-ff-h);color:#fff}
.vodeo .v-mk-demos audio{width:100%;height:38px;color-scheme:dark}
.vodeo .v-mk-demos .v-row{justify-content:space-between}
.vodeo .v-table--rates th{width:42%;text-transform:none;letter-spacing:0;font:600 14px var(--v-ff);color:var(--v-mut)}
.vodeo .v-table--rates td{font:700 15px var(--v-ff-h);color:#fff}
.vodeo .v-table--rates tr:last-child th,.vodeo .v-table--rates tr:last-child td{border-bottom:0}
.vodeo .v-review{margin:0 0 12px;padding:14px 16px;border-radius:var(--v-r-sm);background:rgba(255,255,255,.035);border-left:3px solid var(--v-amber)}
.vodeo .v-review p{margin:8px 0 6px;color:#e0e2ee;font-style:italic}
.vodeo .v-review cite{font:600 12.5px var(--v-ff);font-style:normal;color:var(--v-dim)}

/* ---------- Listes de la régie ---------- */
.vodeo .v-mk-list{display:grid;gap:8px;margin:10px 0 0}
.vodeo .v-mk-list > li{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;border-radius:var(--v-r-sm);background:rgba(255,255,255,.035);border:1px solid var(--v-line)}
.vodeo .v-mk-list > li > div{display:grid;gap:2px;min-width:0;flex:1 1 220px}
.vodeo .v-mk-list > li > div.v-row{display:flex;flex:0 0 auto;gap:6px}
.vodeo .v-mk-list > li > div > b{color:#fff;font-family:var(--v-ff-h)}
.vodeo .v-mk-list form{margin:0}
.vodeo .v-app{display:grid;gap:12px}
.vodeo .v-app__head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center}
.vodeo .v-app__head > img{width:48px;height:48px;border-radius:14px;object-fit:cover}
.vodeo .v-app__pitch{margin:0;padding:12px 14px;border-radius:12px;background:rgba(7,7,12,.45);border:1px solid var(--v-line);color:#d6d8e6;font-size:14.5px}
.vodeo .v-app--accepted,.vodeo .v-app--recorded{border-color:rgba(34,211,160,.4)}
.vodeo .v-app--sent,.vodeo .v-app--viewed{border-color:rgba(0,193,255,.35)}
.vodeo .v-app--declined,.vodeo .v-app--cancelled{opacity:.7}
.vodeo .v-app form{margin:0}
.vodeo .v-review-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:rgba(255,184,0,.06);border:1px dashed rgba(255,184,0,.35);margin:0}
.vodeo .v-review-form .v-select{width:auto;padding:8px 34px 8px 12px!important;color:var(--v-amber)!important}
.vodeo .v-review-form .v-input{flex:1 1 200px;width:auto}
.vodeo .v-teaser--names{display:flex;flex-wrap:wrap;gap:8px;filter:blur(2.5px) saturate(.7);user-select:none;pointer-events:none}
.vodeo .v-teaser--names span{padding:8px 12px;border-radius:12px;background:rgba(255,255,255,.06);font-size:13px}
.vodeo .v-teaser--names b{color:var(--v-cyan);margin-right:6px}
.vodeo .v-meter{height:9px;border-radius:9px;background:rgba(255,255,255,.08);overflow:hidden}
.vodeo .v-meter__bar{height:100%;border-radius:9px;background:linear-gradient(90deg,var(--v-violet),var(--v-cyan));box-shadow:0 0 14px rgba(0,193,255,.5)}
.vodeo .v-radio{display:flex;gap:10px;align-items:center;padding:11px 13px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--v-line);cursor:pointer;font-size:14.5px;transition:border-color .18s,background .18s}
.vodeo .v-radio input{accent-color:var(--v-violet);width:18px;height:18px;margin:0;flex:none}
.vodeo .v-radio:has(input:checked){border-color:rgba(0,193,255,.55);background:rgba(0,193,255,.07)}
.vodeo .v-radio b{color:#fff}

/* Aperçu audio des scripts (ElevenLabs) */
.vodeo div.v-tts{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px;padding:8px 10px;border-radius:12px;background:rgba(0,193,255,.06);border:1px solid rgba(0,193,255,.25)}
.vodeo .v-tts > span{font:700 12px var(--v-ff-h);letter-spacing:.06em;text-transform:uppercase;color:var(--v-cyan)}
.vodeo .v-tts audio{flex:1 1 220px;height:34px;color-scheme:dark}

/* ---------- Studio : formules et réservation ---------- */
.vodeo .v-sgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:14px}
.vodeo .v-scard{position:relative;display:flex;flex-direction:column;gap:8px;padding:22px 20px 20px;border-radius:var(--v-r);background:var(--v-card);border:1px solid var(--v-line)}
.vodeo .v-scard--hot{background:linear-gradient(160deg,rgba(94,28,228,.32),rgba(47,107,255,.12) 60%,var(--v-card));border-color:rgba(140,110,255,.5);box-shadow:var(--v-glow)}
.vodeo .v-scard__pop{position:absolute;top:-11px;left:20px;padding:5px 11px;border-radius:999px;background:var(--v-grad-hot);font:700 11px/1 var(--v-ff-h);letter-spacing:.06em;text-transform:uppercase;color:#fff}
.vodeo .v-scard .v-h3{margin:0}
.vodeo .v-scard p{margin:0}
.vodeo .v-scard__price b{font:800 30px/1.1 var(--v-ff-h);color:#fff;letter-spacing:-.02em}
.vodeo .v-scard__price small{color:var(--v-mut);font-size:13px}
.vodeo .v-scard .v-btn{margin-top:auto}
.vodeo .v-book__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:16px;align-items:start}
.vodeo .v-book__grid > .v-panel + .v-panel{margin-top:0}
.vodeo .v-book__svc{display:grid;gap:8px;margin-bottom:12px}
.vodeo .v-book__extra{max-width:240px}
.vodeo .v-book__extra[hidden]{display:none}
.vodeo .v-cal{border-radius:var(--v-r-sm);background:rgba(7,7,12,.45);border:1px solid var(--v-line);padding:12px}
.vodeo .v-cal__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.vodeo .v-cal__head b{font:700 15px var(--v-ff-h);color:#fff;text-transform:capitalize}
.vodeo .v-cal__nav{width:34px;height:34px;border-radius:50%;border:0;display:grid;place-items:center;cursor:pointer;background:rgba(255,255,255,.07);color:#fff;font:700 16px var(--v-ff-h)}
.vodeo .v-cal__nav:hover{background:rgba(255,255,255,.14)}
.vodeo .v-cal__nav[disabled]{opacity:.3;cursor:default}
.vodeo .v-cal__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.vodeo .v-cal__dow{text-align:center;font:700 11px var(--v-ff-h);letter-spacing:.05em;text-transform:uppercase;color:var(--v-dim);padding:4px 0}
.vodeo .v-cal__day{position:relative;aspect-ratio:1/1;min-height:36px;border:0;border-radius:11px;background:transparent;color:var(--v-dim);font:600 14px var(--v-ff-h);cursor:default;padding:0}
.vodeo .v-cal__day.is-open{background:rgba(255,255,255,.06);color:#fff;cursor:pointer;box-shadow:inset 0 0 0 1px var(--v-line2)}
.vodeo .v-cal__day.is-open::after{content:"";position:absolute;left:50%;bottom:5px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--v-cyan)}
.vodeo .v-cal__day.is-open:hover{background:rgba(0,193,255,.14)}
.vodeo .v-cal__day.is-on{background:var(--v-grad)!important;color:#fff;box-shadow:var(--v-glow)}
.vodeo .v-cal__day.is-on::after{background:#fff}
.vodeo .v-cal__day.is-today{color:var(--v-cyan)}
.vodeo .v-cal__empty{margin:10px 0 0;font-size:13px;color:var(--v-mut);text-align:center}
.vodeo .v-slots{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.vodeo .v-slots:empty{display:none}
.vodeo .v-slots > p{flex:1 1 100%;margin:0 0 2px;font:700 13px var(--v-ff-h);color:#e4e6f0}
.vodeo .v-slot{padding:9px 14px;border-radius:999px;border:1px solid var(--v-line2);background:rgba(255,255,255,.04);color:#fff;font:700 14px/1 var(--v-ff-h);cursor:pointer;transition:all .15s}
.vodeo .v-slot:hover{border-color:rgba(0,193,255,.6)}
.vodeo .v-slot.is-on{background:var(--v-grad);border-color:transparent;box-shadow:var(--v-glow)}
.vodeo .v-book__sum{margin:4px 0 14px;padding:14px 16px;border-radius:var(--v-r-sm);background:rgba(7,7,12,.5);border:1px solid var(--v-line)}
.vodeo .v-book__sum:empty{display:none}
.vodeo .v-book__sum dl{display:grid;grid-template-columns:1fr auto;gap:6px 14px;margin:0;font-size:14px}
.vodeo .v-book__sum dt{color:var(--v-mut)}
.vodeo .v-book__sum dd{margin:0;text-align:right;color:#fff;font-weight:700}
.vodeo .v-book__sum .is-total{padding-top:8px;border-top:1px solid var(--v-line);font:800 17px var(--v-ff-h);color:#fff}
.vodeo .v-book__sum .is-now{color:var(--v-cyan)}
.vodeo .v-book__when{margin:0 0 10px;font:700 15px var(--v-ff-h);color:#fff}
.vodeo .v-bookform .v-check{margin-bottom:10px;align-items:flex-start;line-height:1.45}

/* ---------- Messagerie ---------- */
.vodeo .v-msgs{display:grid;grid-template-columns:minmax(230px,320px) minmax(0,1fr);gap:14px;margin-top:16px;min-height:480px}
.vodeo .v-msgs__list{display:flex;flex-direction:column;gap:6px;max-height:70vh;overflow:auto;padding:8px;border-radius:var(--v-r);background:var(--v-card);border:1px solid var(--v-line)}
.vodeo .v-msgs__list > p{padding:10px}
.vodeo .v-msgs__item{display:grid;gap:2px;padding:11px 12px;border-radius:13px;border:1px solid transparent;transition:background .15s}
.vodeo .v-msgs__item:hover{background:rgba(255,255,255,.05)}
.vodeo .v-msgs__item.is-on{background:rgba(0,193,255,.08);border-color:rgba(0,193,255,.35)}
.vodeo .v-msgs__item b{font:700 14px/1.3 var(--v-ff-h);color:#fff;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.vodeo .v-msgs__item span{font-size:13px;color:var(--v-mut);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vodeo .v-msgs__item small{font-size:11.5px;color:var(--v-dim)}
.vodeo .v-msgs__item.is-unread b::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;background:var(--v-magenta);box-shadow:0 0 0 3px rgba(212,35,122,.25);vertical-align:middle}
.vodeo .v-msgs__thread{display:flex;flex-direction:column;min-width:0;border-radius:var(--v-r);background:var(--v-card);border:1px solid var(--v-line);overflow:hidden}
.vodeo .v-msgs__head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--v-line);font-family:var(--v-ff-h);color:#fff}
.vodeo .v-msgs__back{display:none;flex:1 1 100%}
.vodeo .v-msgs__body{flex:1;display:flex;flex-direction:column;gap:10px;padding:16px 18px;max-height:60vh;overflow:auto}
.vodeo .v-msg{position:relative;max-width:min(78%,620px);align-self:flex-start;padding:10px 14px;border-radius:16px 16px 16px 5px;background:rgba(255,255,255,.06);border:1px solid var(--v-line)}
.vodeo .v-msg--mine{align-self:flex-end;border-radius:16px 16px 5px 16px;background:linear-gradient(135deg,rgba(94,28,228,.45),rgba(47,107,255,.35));border-color:rgba(140,110,255,.4)}
.vodeo .v-msg--sys{align-self:center;max-width:92%;background:transparent;border:1px dashed var(--v-line2);border-radius:12px;color:var(--v-mut);font-size:13px;text-align:center}
.vodeo .v-msg--flag{box-shadow:0 0 0 1px rgba(255,90,110,.5)}
.vodeo .v-msg__who{display:block;margin-bottom:3px;font-size:11.5px;color:var(--v-dim)}
.vodeo .v-msg--mine .v-msg__who{color:rgba(255,255,255,.65)}
.vodeo .v-msg__txt{font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.vodeo .v-msg__txt a{color:var(--v-cyan);text-decoration:underline}
.vodeo .v-msg__file{display:grid;gap:6px;margin-top:8px;font-size:13px}
.vodeo .v-msg__file audio{width:100%;max-width:340px;height:36px;color-scheme:dark}
.vodeo .v-msg__flag{position:absolute;top:6px;right:-30px;margin:0;opacity:0;transition:opacity .15s}
.vodeo .v-msg:hover .v-msg__flag,.vodeo .v-msg__flag:focus-within{opacity:1}
.vodeo .v-msg__flag button{width:24px;height:24px;border-radius:50%;border:0;background:rgba(255,255,255,.08);color:var(--v-mut);cursor:pointer;font-size:12px;padding:0}
.vodeo .v-msg__flag button:hover{color:var(--v-red)}
.vodeo .v-msgs__reply{display:grid;gap:8px;padding:12px 16px 14px;border-top:1px solid var(--v-line);background:rgba(7,7,12,.35);margin:0}
.vodeo .v-msgs__reply input[type=file]{max-width:220px;font-size:12px;color:var(--v-mut)}
.vodeo .v-msgs__empty{flex:1;display:grid;place-content:center;justify-items:center;gap:8px;padding:50px 20px;color:var(--v-dim);text-align:center}

/* ---------- Écrans étroits ---------- */
@media (max-width:980px){
  .vodeo .v-mk-cols,.vodeo .v-book__grid{grid-template-columns:1fr}
  .vodeo .v-mk-cols > aside{position:static}
}
@media (max-width:760px){
  .vodeo .v-mk-profile{grid-template-columns:1fr;text-align:left}
  .vodeo .v-mk-profile__ph{max-width:200px}
  .vodeo .v-msgs{grid-template-columns:1fr;min-height:0}
  .vodeo .v-msgs.has-thread .v-msgs__list{display:none}
  .vodeo .v-msgs__back{display:block}
  .vodeo .v-msgs__list{max-height:none}
  .vodeo .v-msg{max-width:92%}
  .vodeo .v-msg__flag{right:4px;top:-10px;opacity:1}
  .vodeo .v-pcard__top{grid-template-columns:auto minmax(0,1fr)}
  .vodeo .v-pcard__score{grid-column:1/-1;justify-self:start;height:40px;display:flex;gap:4px;align-items:baseline;padding:0 12px}
}
@media (prefers-reduced-motion:reduce){
  .vodeo .v-pcard,.vodeo .v-ocard{transition:none}
  .vodeo .v-pcard:hover,.vodeo .v-ocard:hover{transform:none}
}
.vodeo audio.v-tts{display:block;width:100%;max-width:420px;height:36px;margin-top:8px;color-scheme:dark}

/* ---------- Héros avec image (pages du marché) — images servies par le site (Loi 25) ---------- */
.vodeo .v-hero--img{--vsp:clamp(18px,3.4vw,46px);margin:calc(-1 * var(--vsp)) calc(-1 * var(--vsp)) 0;padding:calc(var(--vsp) + 40px) var(--vsp) 30px;min-height:min(580px,74vh);display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;overflow:hidden}
.vodeo .v-hero__media{position:absolute;inset:0;z-index:-1}
.vodeo .v-hero__media img{width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 50%);animation:v-kenburns 22s ease-in-out infinite alternate}
.vodeo .v-hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,11,17,.95) 0%,rgba(11,11,17,.78) 42%,rgba(11,11,17,.28) 100%),linear-gradient(180deg,rgba(11,11,17,.15) 0%,rgba(11,11,17,0) 45%,#0b0b11 100%)}
.vodeo .v-hero--img .v-title,.vodeo .v-hero--img .v-lead{max-width:min(760px,100%);text-shadow:0 2px 24px rgba(0,0,0,.45)}
.vodeo .v-hero--img .v-lead{color:#dfe2f0}
.vodeo .v-hero--img .v-kpi{background:rgba(11,11,17,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.vodeo .v-hero--img .v-search{background:rgba(11,11,17,.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
@keyframes v-kenburns{from{transform:scale(1.02)}to{transform:scale(1.09) translate(-1%,-1%)}}
@media (max-width:760px){
  .vodeo .v-hero--img{min-height:0;padding-top:calc(var(--vsp) + 90px)}
  .vodeo .v-hero__media::after{background:linear-gradient(180deg,rgba(11,11,17,.45) 0%,rgba(11,11,17,.86) 55%,#0b0b11 100%)}
}
@media (prefers-reduced-motion:reduce){.vodeo .v-hero__media img{animation:none}}

/* ---------- Le thème (WpCasterPro) stylise label, dl, dt et dd par identifiant : on garde notre mise en page ---------- */
.vodeo label.v-field{display:grid!important;width:auto!important}
.vodeo label.v-radio,.vodeo label.v-check{display:flex!important;width:auto!important}
.vodeo .v-bookform .v-eyebrow{display:flex;white-space:nowrap}
.vodeo .v-hero .v-eyebrow{flex-wrap:wrap;white-space:normal}
.vodeo .v-book__sum dl,.vodeo .v-book__sum dt,.vodeo .v-book__sum dd{border:0!important;padding:0!important;margin:0!important;background:none!important;float:none!important}
.vodeo .v-book__sum .is-total{padding-top:8px!important;border-top:1px solid var(--v-line)!important}
