/* QPX-07 V2.2 — « Prépare ton RDV avec QEVYO » : le geste produit (une adresse dans le champ de préparation, saisie de
   démonstration, puis le clic), la carte du rendez-vous, puis la préparation en 5 blocs successifs, chacun avec ses états
   de travail et son résultat. La Fiche PDF réutilise cette feuille (classe .qp-print). La frise des cycles est celle
   de l'APP (app-frieze.css, copie conforme). Jetons de l'APP (/qpx/app/qevyo-app.css) uniquement. Cibles ≥ 44 px, rien ne
   déborde ; toute animation n'existe que hors reduced-motion. */

.qp-body{--qp-bg:color-mix(in oklab,var(--q-surface-ivory) 55%,var(--q-surface));--qp-card:color-mix(in oklab,var(--q-surface-ivory) 62%,var(--q-border-subtle));--qp-green:color-mix(in oklab,var(--q-brand) 72%,var(--q-brand-deep));--qp-bronze:oklch(from var(--q-gold) calc(l - .12) calc(c + .03) calc(h - 12));--q-gutter:clamp(16px,4vw,32px);margin:0;min-block-size:100dvh;display:flex;flex-direction:column;background:var(--qp-bg);color:var(--q-text);font-family:var(--q-font-body);overflow-x:clip}
.qp-sr{position:absolute!important;inline-size:1px;block-size:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.qp-skiplink{position:absolute;inset-block-start:-100px;inset-inline-start:12px;z-index:10;padding:12px 16px;border-radius:var(--q-radius-pill);background:var(--q-surface-raised);color:var(--q-brand);font-weight:var(--q-weight-strong)}
.qp-skiplink:focus{inset-block-start:12px}
.qp-bar{position:relative;z-index:3;display:flex;align-items:center;gap:12px;box-sizing:border-box;inline-size:100%;min-block-size:64px;padding:8px var(--q-gutter);border-block-end:1px solid color-mix(in oklab,var(--q-border-subtle) 70%,transparent);background:color-mix(in oklab,var(--q-surface) 86%,transparent)}
.qp-bar__brand{display:inline-flex;align-items:center;min-block-size:44px}
.qp-bar__brand img{display:block;inline-size:118px;block-size:auto}
.qp-demo{padding:3px 10px;border:1px solid var(--q-sage-line);border-radius:var(--q-radius-pill);color:var(--q-brand-deep);font:var(--q-weight-strong) 11.5px/1.4 var(--q-font-body);letter-spacing:.14em;text-transform:uppercase}
.qp-bar__back{margin-inline-start:auto;display:inline-block;box-sizing:border-box;min-block-size:44px;padding:0 16px;border:1px solid var(--q-sage-line);border-radius:var(--q-radius-pill);background:var(--q-surface-raised);color:var(--q-brand);font:var(--q-weight-strong) 14px/42px var(--q-font-body);text-decoration:none;white-space:nowrap}
.qp-bar a:focus-visible,.qp-foot a:focus-visible{outline:3px solid var(--q-focus);outline-offset:2px}
.qp-badge{position:sticky;inset-block-start:0;z-index:4;margin:0;padding:7px var(--q-gutter);background:var(--q-warning-bg);color:var(--q-warning);font:var(--q-weight-strong) 12.5px/1.4 var(--q-font-body);text-align:center;letter-spacing:.02em}

/* ── La page ── */
.qp{position:relative;flex:1;box-sizing:border-box;inline-size:100%;max-inline-size:calc(960px + 2 * var(--q-gutter));margin-inline:auto;padding:0 var(--q-gutter) 48px}
.qp:focus{outline:none}
.q-rose{--q-rose-light:oklch(from var(--q-gold) calc(l - .02) calc(c + .015) calc(h - 8));--q-rose-mid:oklch(from var(--q-gold) calc(l - .1) calc(c + .025) calc(h - 12));--q-rose-deep:oklch(from var(--q-gold-ink) calc(l + .03) calc(c + .03) calc(h - 12));display:block}
.q-rose--mark{inline-size:22px;block-size:22px;flex:none}
.qp-c-sr,.q-c-sr{position:absolute!important;inline-size:1px;block-size:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* Le point de départ : le geste — une adresse, puis « Préparer cette adresse avec QEVYO ». */
.qp-entry{display:grid;justify-items:start;padding-block-start:40px}
.qp-entry__title{margin:0;font:600 40px/1.1 var(--q-font-display);text-wrap:balance}
.qp-entry__voice{margin:10px 0 0;color:var(--q-text-secondary);font:400 17px/1.5 var(--q-font-body)}
.qp-composer{display:flex;align-items:center;gap:12px;box-sizing:border-box;inline-size:100%;max-inline-size:720px;min-block-size:64px;margin-block-start:24px;padding:8px 22px;border:1px solid color-mix(in oklab,var(--q-border-subtle) 80%,transparent);border-radius:var(--q-radius-pill);background:var(--q-surface-raised);box-shadow:0 1px 2px color-mix(in oklab,var(--q-night) 5%,transparent),0 14px 34px -16px color-mix(in oklab,var(--q-night) 26%,transparent)}
.qp-composer__icon{display:grid;place-items:center;flex:none;color:var(--q-brand)}
.qp-composer__text{min-inline-size:0;min-block-size:1.4em;color:var(--q-text);font:500 18px/1.4 var(--q-font-body);overflow-wrap:anywhere}
.qp-composer__text:empty::before{content:attr(data-placeholder);color:var(--q-text-secondary);font-weight:400}
.qp-composer__caret{flex:none;inline-size:2px;block-size:22px;margin-inline-start:-10px;background:transparent}
[data-qp-typing] .qp-composer__caret{background:var(--q-brand)}
.qp-composer__note{margin:10px 0 0;padding-inline-start:22px;color:var(--q-text-secondary);font-size:13.5px}
.qp-entry__launch{margin:18px 0 0;min-block-size:52px}
[data-qpx-js] [data-qp-state=dossier] .qp-entry,[data-qpx-js] [data-qp-state=pret] .qp-entry{display:none}
[data-qpx-js] [data-qp-state=intro] .qp-rdv,[data-qpx-js] [data-qp-state=intro] .qp-progress{display:none}

/* La carte du rendez-vous, comme dans Today. */
.qp-rdv{padding-block-start:36px}
.qp-rdv__eyebrow{display:flex;align-items:center;gap:8px;margin:0 0 10px;color:var(--q-brand-deep);font:var(--q-weight-strong) 12px/1.4 var(--q-font-body);letter-spacing:.14em;text-transform:uppercase}
.qp-rdv__card{box-sizing:border-box;padding:22px 24px;border-radius:22px;background:var(--q-surface-raised);border:1px solid color-mix(in oklab,var(--q-border-subtle) 70%,transparent);box-shadow:0 1px 2px color-mix(in oklab,var(--q-night) 5%,transparent),0 18px 40px -26px color-mix(in oklab,var(--q-night) 30%,transparent)}
.qp-rdv__top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}
.qp-rdv__when{color:var(--q-text-secondary);font:var(--q-weight-strong) 14px/1.4 var(--q-font-body)}
.qp-rdv__status{padding:4px 12px;border-radius:var(--q-radius-pill);background:var(--q-warning-bg);color:var(--q-warning);font:var(--q-weight-strong) 12.5px/1.4 var(--q-font-body)}
[data-qp-state=dossier] .qp-rdv__status{background:var(--q-state-pace-bg);color:var(--q-state-pace)}
[data-qp-state=pret] .qp-rdv__status{background:var(--q-state-reached-bg);color:var(--q-state-reached)}
.qp-rdv__title{margin:10px 0 2px;font:600 30px/1.15 var(--q-font-display)}
.qp-rdv__meta{margin:0;color:var(--q-text-secondary);font-size:15px}
.qp-rdv__voice{margin:14px 0 0;max-inline-size:640px;font:400 16px/1.5 var(--q-font-body)}
.qp-rdv__launch{margin:18px 0 0}
.qp-start{min-block-size:52px;padding:0 28px;border:0;border-radius:var(--q-radius-pill);background:var(--qp-green);color:var(--q-on-brand);font:var(--q-weight-strong) 16px/1.2 var(--q-font-body);cursor:pointer}
.qp-start[hidden]{display:none}
.qp-start:hover{background:var(--q-brand-deep)}
.qp-start:focus-visible,.qp-ctrl:focus-visible,.qp-cta:focus-visible,.qp-more summary:focus-visible{outline:3px solid var(--q-focus);outline-offset:3px}

/* Les 5 étapes : à venir · en cours · fait. */
.qp-progress{position:sticky;inset-block-start:33px;z-index:4;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px 10px;margin:18px calc(-1 * var(--q-gutter)) 0;padding:8px var(--q-gutter);background:color-mix(in oklab,var(--qp-bg) 94%,transparent);backdrop-filter:blur(6px)}
.qp-steps{flex:1 1 100%;min-inline-size:0}
.qp-steps ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}
.qp-steps__item{display:flex;align-items:center;gap:8px;min-inline-size:0;padding:6px 8px;border-radius:12px;color:var(--q-text-secondary);font:500 13px/1.25 var(--q-font-body)}
.qp-steps__num{display:grid;place-items:center;flex:none;inline-size:24px;block-size:24px;border-radius:50%;border:1.5px solid var(--q-border-strong);background:var(--q-surface);font:var(--q-weight-strong) 12px/1 var(--q-font-body)}
.qp-steps__label{min-inline-size:0;overflow-wrap:anywhere}
.qp-steps__item[data-state=doing]{background:var(--q-surface-raised);color:var(--q-text);box-shadow:inset 0 0 0 1.5px var(--q-brand)}
.qp-steps__item[data-state=doing] .qp-steps__num{border-color:var(--q-brand);color:var(--q-brand)}
.qp-steps__item[data-state=done]{color:var(--q-text)}
.qp-steps__item[data-state=done] .qp-steps__num{border-color:var(--qp-green);background:var(--qp-green);color:var(--q-on-brand)}
.qp-controls{display:flex;justify-content:flex-end;gap:8px}
.qp-controls[hidden]{display:none}
.qp-ctrl{min-block-size:44px;padding:0 16px;border:1px solid var(--q-sage-line);border-radius:var(--q-radius-pill);background:color-mix(in oklab,var(--q-surface-raised) 94%,transparent);color:var(--q-brand);font:var(--q-weight-strong) 14px/1.2 var(--q-font-body);cursor:pointer}
.qp-ctrl--strong{background:var(--q-surface-raised)}

/* ── La scène : les blocs, l'un après l'autre. ── */
.qp-stage{display:grid;gap:22px;margin-block-start:18px}
[data-qpx-js] [data-qp-state=intro] .qp-stage{display:none}
[data-qpx-js] [data-qp-state=dossier] .qp-block:not(.is-in),[data-qpx-js] [data-qp-state=dossier] .qp-item:not(.is-in),[data-qpx-js] [data-qp-state=dossier] .qp-final:not(.is-in){display:none}
.qp-block{min-inline-size:0;scroll-margin-block-start:180px;padding:20px 22px 22px;border-radius:24px;background:color-mix(in oklab,var(--q-surface-raised) 55%,var(--qp-bg));border:1px solid color-mix(in oklab,var(--q-border-subtle) 60%,transparent)}
.qp-block__head{display:flex;align-items:center;gap:12px;margin-block-end:12px}
.qp-block__num{display:grid;place-items:center;flex:none;inline-size:34px;block-size:34px;border-radius:50%;background:var(--qp-green);color:var(--q-on-brand);font:600 17px/1 var(--q-font-display)}
.qp-block__title{margin:0;min-inline-size:0;font:600 24px/1.2 var(--q-font-display)}
.qp-block__toggle{display:inline-flex;align-items:center;min-block-size:44px;margin:0;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:start;cursor:pointer}
.qp-block.is-collapsed .qp-block__toggle::after{content:"";flex:none;inline-size:8px;block-size:8px;margin-inline-start:12px;border:solid var(--q-brand);border-width:0 2px 2px 0;transform:translateY(-3px) rotate(45deg)}
.qp-block__toggle:focus-visible{outline:3px solid var(--q-focus);outline-offset:4px;border-radius:6px}
.qp-block__summary{display:none;margin:-4px 0 0;padding-inline-start:46px;color:var(--q-text-secondary);font-size:14.5px}
.qp-block.is-collapsed .qp-block__summary{display:block}
.qp-block.is-collapsed .qp-block__content{display:none}
.qp-block.is-collapsed .qp-block__head{margin-block-end:4px}
.qp-block__state{margin-inline-start:auto;flex:none;padding:3px 10px;border-radius:var(--q-radius-pill);background:var(--q-state-reached-bg);color:var(--q-state-reached);font:var(--q-weight-strong) 12px/1.4 var(--q-font-body)}
[data-qpx-js] .qp-block[data-state=doing] .qp-block__state{background:var(--q-state-pace-bg);color:var(--q-state-pace)}
.qp-block__body{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.qp-block--grid .qp-block__body{grid-template-columns:repeat(3,minmax(0,1fr))}
.qp-block--grid .qp-item--wide{grid-column:1/-1}
.qp-item{min-inline-size:0;scroll-margin-block:180px 24px}

/* Les états de travail : l'opération en cours, puis son résultat. */
.qp-work{display:grid;gap:4px;margin:0 0 14px;padding:0;list-style:none}
.qp-work__step{position:relative;display:grid;grid-template-columns:22px minmax(0,auto) minmax(0,1fr);align-items:center;column-gap:10px;padding:7px 12px;border-radius:12px;font-size:14.5px;overflow:hidden}
.qp-work__icon{inline-size:16px;block-size:16px;border-radius:50%;border:2px solid var(--q-border-strong);box-sizing:border-box}
.qp-work__label{color:var(--q-text-secondary)}
.qp-work__result{color:var(--q-text);font-weight:var(--q-weight-strong)}
.qp-work__bar{position:absolute;inset-inline:12px;inset-block-end:2px;block-size:2px;border-radius:2px;background:transparent}
[data-qpx-js] [data-qp-state=dossier] .qp-work__step:not([data-state]){display:none}
[data-qpx-js] .qp-work__step[data-state=doing]{background:var(--q-surface-raised)}
[data-qpx-js] .qp-work__step[data-state=doing] .qp-work__icon{border-color:var(--q-brand)}
[data-qpx-js] .qp-work__step[data-state=doing] .qp-work__label{color:var(--q-text)}
[data-qpx-js] .qp-work__step[data-state=doing] .qp-work__result{visibility:hidden}
.qp-work__step[data-state=done] .qp-work__icon,html:not([data-qpx-js]) .qp-work__icon,[data-qp-state=pret] .qp-work__icon{border:0;background:var(--qp-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.4l2.6 2.6L12 5.6' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}

/* Les cartes. */
.qp-k{margin:0 0 6px;color:var(--q-brand-deep);font:var(--q-weight-strong) 11.5px/1.4 var(--q-font-body);letter-spacing:.14em;text-transform:uppercase}
.qp-k2{display:inline-block;margin-inline-end:6px;color:var(--q-brand-deep);font:var(--q-weight-strong) 11px/1.4 var(--q-font-body);letter-spacing:.12em;text-transform:uppercase}
.qp-h3{margin:4px 0 10px;font:600 20px/1.25 var(--q-font-display)}
.qp-dim{color:var(--q-text-secondary);font-size:14px}
.qp-strong{font:600 17px/1.35 var(--q-font-display)}
.qp-tagline{margin:0 0 4px!important}
.qp-tag{display:inline-block;padding:1px 8px;border-radius:var(--q-radius-pill);background:var(--q-surface-mist);color:var(--q-state-pace);font:var(--q-weight-strong) 11.5px/1.6 var(--q-font-body);letter-spacing:.02em;vertical-align:.1em}
.qp-card{box-sizing:border-box;block-size:100%;min-inline-size:0;padding:16px 18px;border-radius:18px;background:var(--q-surface-raised);border:1px solid color-mix(in oklab,var(--q-border-subtle) 70%,transparent);overflow-wrap:anywhere}
.qp-card p{margin:0}
.qp-card p+p{margin-block-start:6px}
.qp-qevyo{background:var(--qp-card);border:0;border-radius:20px;padding:20px 22px}
.qp-lead{color:var(--q-text);font:600 22px/1.3 var(--q-font-display)}
.qp-lead2{font:600 19px/1.3 var(--q-font-display)}
.qp-list{margin:6px 0 0;padding-inline-start:20px}
.qp-list li{margin-block:4px}
.qp-mutation{display:grid;gap:4px;border-color:var(--q-gold);border-width:1.5px}
.qp-mutation__main{font:600 24px/1.25 var(--q-font-display)}

/* Bloc 2 — la frise de l'APP, puis la lecture. */
.qp-frieze{padding:16px 18px;border-radius:18px;background:var(--q-surface-raised)}
.qp-read{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:stretch}
.qp-read__arrow{align-self:center;margin:0;color:var(--qp-bronze);font-size:26px}
.qp-vig{margin-block-start:10px!important;padding:10px 12px;border-radius:12px;background:var(--q-surface-raised);font-size:15px}
.qp-metre__title{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}
.qp-metre__sub{color:var(--q-brand-deep);font:var(--q-weight-strong) 12px/1.4 var(--q-font-body);letter-spacing:.12em;text-transform:uppercase}
.qp-meters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.qp-meter{display:grid;justify-items:center;align-content:start;gap:4px;padding:16px 14px;border-radius:18px;background:var(--q-surface-raised);text-align:center}
.qp-meter p{margin:0}
.qp-meter__name{font:600 19px/1.2 var(--q-font-display)}
.qp-meter__title{color:var(--q-text-secondary);font-size:13.5px}
.qp-g{inline-size:100%;max-inline-size:200px;block-size:auto}
.qp-g__s{opacity:.35}
.qp-g__s.is-on{opacity:1}
.qp-g__s--defavorable{fill:var(--q-state-alert)}
.qp-g__s--plutot_defavorable{fill:var(--q-state-late-mark)}
.qp-g__s--plutot_favorable{fill:var(--q-state-pace-mark)}
.qp-g__s--favorable{fill:var(--q-state-reached-mark)}
.qp-g__needle{transform-origin:100px 100px;transform:rotate(var(--qp-angle))}
.qp-g__needle line{stroke:var(--q-night);stroke-width:4;stroke-linecap:round}
.qp-g__needle circle{fill:var(--q-night)}
.qp-meter__level{font:var(--q-weight-strong) 15px/1.3 var(--q-font-body)}
.qp-level--defavorable{color:var(--q-state-alert)}.qp-level--plutot_defavorable{color:var(--q-state-late)}.qp-level--plutot_favorable{color:var(--q-state-pace)}.qp-level--favorable{color:var(--q-state-reached)}
.qp-meter__cons{color:var(--q-text-secondary);font-size:13.5px;line-height:1.4}
.qp-meter__mention{font-size:12.5px;font-style:italic;color:var(--q-text-secondary)}
.qp-meters__note{margin:10px 0 0;text-align:center}

/* Bloc 3 — l'annonce, visuelle, puis les ventes comparables. */
.qp-detected{margin:0;padding:14px 18px;border-radius:16px;background:var(--q-brand-deep);color:var(--q-on-brand);font:600 20px/1.35 var(--q-font-display)}
.qp-detected strong{color:color-mix(in oklab,var(--q-gold) 70%,var(--q-on-brand))}
.qp-listing{overflow:hidden;border-radius:22px;background:var(--q-surface-raised);border:1px solid color-mix(in oklab,var(--q-border-subtle) 70%,transparent);box-shadow:0 1px 2px color-mix(in oklab,var(--q-night) 6%,transparent),0 18px 40px -26px color-mix(in oklab,var(--q-night) 35%,transparent)}
.qp-listing__photo{position:relative;aspect-ratio:3/2;max-block-size:440px;inline-size:100%;background:var(--q-surface-mist)}
.qp-listing__photo img{display:block;inline-size:100%;block-size:100%;object-fit:cover}
.qp-listing__portal,.qp-listing__sim,.qp-listing__found,.qp-listing__age{position:absolute;padding:5px 12px;border-radius:var(--q-radius-pill);font:var(--q-weight-strong) 13px/1.3 var(--q-font-body)}
.qp-listing__portal{inset-block-start:14px;inset-inline-start:14px;background:var(--q-night);color:var(--q-on-brand);letter-spacing:.02em}
.qp-listing__sim{inset-block-start:14px;inset-inline-end:14px;background:var(--q-warning-bg);color:var(--q-warning)}
.qp-listing__found{inset-block-end:14px;inset-inline-start:14px;background:var(--q-brand-deep);color:var(--q-on-brand)}
.qp-listing__age{inset-block-end:14px;inset-inline-end:14px;background:var(--q-surface-raised);color:var(--q-text)}
.qp-listing__body{display:grid;gap:8px;padding:18px 22px 20px}
.qp-listing__body p{margin:0}
.qp-listing__type{color:var(--q-text-secondary);font:var(--q-weight-strong) 14px/1.4 var(--q-font-body)}
.qp-listing__price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}
.qp-listing__price strong{font:600 34px/1.1 var(--q-font-display)}
.qp-listing__price s{color:var(--q-text-secondary);font-size:18px}
.qp-listing__features{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.qp-listing__features li{padding:4px 10px;border-radius:var(--q-radius-pill);background:var(--q-surface-mist);font:500 14px/1.3 var(--q-font-body)}
.qp-listing__since{font-size:15px}
.qp-listing .qp-history{margin-block-start:4px;background:var(--qp-bg)}
.qp-annonce-facts{display:grid;gap:8px}
.qp-annonce-facts .qp-mention{margin:0}
.qp-history{position:relative;display:grid;gap:10px;margin:0;padding:14px 16px 14px 34px;border-radius:18px;background:var(--q-surface-raised);list-style:none;font-size:15px}
.qp-history::before{content:"";position:absolute;inset-block:22px;inset-inline-start:19px;inline-size:2px;background:var(--q-border-subtle)}
.qp-history li{position:relative}
.qp-history li::before{content:"";position:absolute;inset-inline-start:-20px;inset-block-start:6px;inline-size:10px;block-size:10px;border-radius:50%;background:var(--q-brand)}
.qp-history .qp-k2{display:block}
.qp-mention{margin:0 0 10px;padding:8px 12px;border-inline-start:3px solid var(--q-gold);background:var(--q-surface-paper);font-size:14px}
.qp-gaps{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.qp-gap{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;border-radius:12px;background:var(--q-state-late-bg);font-size:14.5px}
.qp-gap__k{margin-inline-start:auto;color:var(--q-state-late);font:var(--q-weight-strong) 11px/1.4 var(--q-font-body);letter-spacing:.12em;text-transform:uppercase}
.qp-signature-line{margin:0 auto;max-inline-size:780px;padding:24px;border-radius:24px;background:var(--q-brand-deep);color:var(--q-on-brand);font:600 26px/1.3 var(--q-font-display);text-align:center;text-wrap:balance}
.qp-comps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0 0;padding:0;list-style:none}
.qp-comp{display:grid;align-content:start;gap:6px;padding:16px;border-radius:18px;background:var(--q-surface-raised);border:1px solid color-mix(in oklab,var(--q-border-subtle) 70%,transparent)}
.qp-comp p{margin:0}
.qp-comp__price strong{font:600 22px/1.2 var(--q-font-display)}
.qp-comp__facts{font-weight:var(--q-weight-strong)}
.qp-comp__notes{display:grid;gap:8px;margin:6px 0 0;padding-block-start:10px;border-block-start:1px solid var(--q-border-subtle)}
.qp-comp__notes div{margin:0}
.qp-comp__notes dt{color:var(--q-brand-deep);font:var(--q-weight-strong) 11px/1.4 var(--q-font-body);letter-spacing:.1em;text-transform:uppercase}
.qp-comp__notes dd{margin:2px 0 0;font-size:14.5px}
.qp-comp__notes div:last-child dd{font-weight:var(--q-weight-strong)}

/* Bloc 4 — + d'infos, plié. */
.qp-more{border-radius:18px;background:var(--q-surface-raised);border:1px solid color-mix(in oklab,var(--q-border-subtle) 70%,transparent)}
.qp-more summary{display:flex;align-items:center;gap:10px;min-block-size:52px;padding:0 18px;border-radius:18px;color:var(--q-brand);font:var(--q-weight-strong) 15.5px/1.3 var(--q-font-body);cursor:pointer;list-style:none}
.qp-more summary::-webkit-details-marker{display:none}
.qp-more summary::before{content:"+";display:grid;place-items:center;flex:none;inline-size:26px;block-size:26px;border-radius:50%;border:1.5px solid var(--q-sage-line);font-size:18px;line-height:1}
.qp-more[open] summary::before{content:"−"}
.qp-more__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;padding:0 14px 14px}
.qp-more .qp-card{background:var(--qp-bg)}
.qp-more__wide{grid-column:1/-1}

/* Bloc 5 — les faits qui convergent, puis la stratégie. */
.qp-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.qp-chip{padding:7px 12px;border-radius:var(--q-radius-pill);background:var(--q-surface-raised);border:1px solid var(--q-sage-line);font:500 14px/1.3 var(--q-font-body)}
.qp-strategy{display:grid;gap:12px}
.qp-situation{margin:0 0 6px!important;justify-self:start;padding:4px 12px;border-radius:var(--q-radius-pill);background:var(--q-brand-deep);color:var(--q-on-brand);font:var(--q-weight-strong) 14px/1.4 var(--q-font-body)}
.qp-market{padding:12px 14px;border-radius:14px;background:var(--q-surface-raised)}
.qp-market p{margin:0}
.qp-sgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.qp-sgrid>div{padding:12px 14px;border-radius:14px;background:var(--q-surface-raised)}
.qp-sgrid__wide{grid-column:1/-1}
.qp-avoid{margin-block-start:10px}
.qp-pending{padding:12px 14px;border-radius:12px;background:var(--q-warning-bg);color:var(--q-warning);font-size:15px}
.qp-obj{padding:10px 12px;border-radius:12px;background:var(--qp-bg)}
.qp-obj strong{display:block}
.qp-next{margin:0;padding:14px 16px;border-radius:14px;background:var(--q-brand-deep);color:var(--q-on-brand)}
.qp-next .qp-k2{color:color-mix(in oklab,var(--q-gold) 80%,var(--q-on-brand))}

/* Adapter ta posture au vendeur : 4 repères, compacts, un seul ouvert à la fois ; aucun profil choisi. */
.qp-posture{display:grid;gap:10px}
.qp-posture .qp-h3{margin:4px 0 0}
.qp-posture__intro{margin:0;max-inline-size:760px;font-size:15.5px}
.qp-disc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
.qp-disc__card{box-sizing:border-box;min-inline-size:0;border-radius:18px;background:var(--q-surface-raised);border:1px solid color-mix(in oklab,var(--q-border-subtle) 70%,transparent)}
.qp-disc__card[open]{border-color:var(--q-brand);box-shadow:inset 0 0 0 1px var(--q-brand)}
.qp-disc__card summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:12px;min-block-size:56px;padding:10px 14px;border-radius:18px;cursor:pointer;list-style:none}
.qp-disc__card summary::-webkit-details-marker{display:none}
.qp-disc__card summary::after{content:"+";display:grid;place-items:center;inline-size:26px;block-size:26px;border-radius:50%;border:1.5px solid var(--q-sage-line);color:var(--q-brand);font-size:18px;line-height:1}
.qp-disc__card[open] summary::after{content:"−"}
.qp-disc__card summary:focus-visible{outline:3px solid var(--q-focus);outline-offset:2px}
.qp-disc__letter{display:grid;place-items:center;inline-size:40px;block-size:40px;border-radius:12px;background:var(--qp-green);color:var(--q-on-brand);font:600 22px/1 var(--q-font-display)}
.qp-disc__name{font:600 17px/1.25 var(--q-font-display)}
.qp-disc__hint{grid-column:2;color:var(--q-text-secondary);font-size:13.5px}
.qp-disc__head{display:flex;align-items:center;gap:8px;margin:0 0 6px}
.qp-disc__body{display:grid;gap:10px;margin:0;padding:2px 16px 16px}
.qp-disc__body div{margin:0}
.qp-disc__body dt{color:var(--q-brand-deep);font:var(--q-weight-strong) 11px/1.4 var(--q-font-body);letter-spacing:.1em;text-transform:uppercase}
.qp-disc__body dd{margin:2px 0 0}
.qp-disc__body ul{margin:0;padding-inline-start:18px}
.qp-disc__body li{margin-block:2px}
.qp-disc__card.is-print{padding:12px 14px}
.qp-disc__card.is-print .qp-disc__letter{inline-size:30px;block-size:30px;font-size:17px;border-radius:9px}
.qp-disc__card.is-print .qp-disc__body{padding:0}
.qp-posture__rule{margin:0;color:var(--q-text-secondary);font-size:13.5px}
.qp-posture__status{margin:0;justify-self:start;padding:3px 10px;border-radius:var(--q-radius-pill);background:var(--q-warning-bg);color:var(--q-warning);font:var(--q-weight-strong) 12px/1.4 var(--q-font-body)}
.qp-posture__status[data-qp-posture-status=validee]{background:var(--q-state-reached-bg);color:var(--q-state-reached)}

/* La sortie. */
.qp-final{display:grid;gap:12px;padding-block-start:6px}
.qp-ready{margin:6px 0 2px;font:600 36px/1.15 var(--q-font-display);text-align:center}
.qp-ready:focus{outline:none}
.qp-ctas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.qp-cta{display:flex;flex-direction:column;justify-content:center;gap:4px;box-sizing:border-box;min-block-size:64px;padding:12px 18px;border-radius:18px;background:var(--qp-green);color:var(--q-on-brand);font:var(--q-weight-strong) 15.5px/1.3 var(--q-font-body);text-decoration:none;text-align:center}
.qp-cta:hover{background:var(--q-brand-deep)}
.qp-cta--ghost{background:var(--q-surface-raised);color:var(--q-brand);border:1px solid var(--q-sage-line)}
.qp-cta--ghost:hover{background:var(--q-hover-veil)}
.qp-cta__meta{font-weight:400;font-size:13px;opacity:.86}
.qp-source{margin:4px 0 0;color:var(--q-text-secondary);font-size:12.5px;overflow-wrap:anywhere;text-align:center}
.qp-w{opacity:0}
.qp-w[data-on]{opacity:1}
[data-qp-state=pret] .qp-w{opacity:1}
/* Captures de revue uniquement (tests/qpx-prepare-browser.mjs) : barres collantes remises dans le flux. */
.qp-capture .qp-badge,.qp-capture .qp-progress{position:static}
.qp-foot{display:flex;justify-content:center;padding:18px var(--q-gutter) 28px}
.qp-foot a{display:inline-flex;align-items:center;min-block-size:44px;color:var(--q-text-secondary);font-size:14px}

@media (prefers-reduced-motion:no-preference){
 .qp-block.is-in,.qp-item.is-in,.qp-final.is-in{animation:qp-in 420ms var(--q-ease) both}
 [data-qpx-js] .qp-work__step[data-state=doing] .qp-work__bar{background:color-mix(in oklab,var(--q-brand) 50%,transparent);transform-origin:left;animation:qp-bar var(--qp-dur) linear both}
 .qp-work__step[data-state=done]{animation:qp-in 260ms var(--q-ease) both}
 .qp-w{transition:opacity 160ms var(--q-ease)}
 .qp-metre-item.is-in .qp-g__needle{animation:qp-needle 700ms var(--q-ease) 200ms both}
 .qp-paused .qp-work__bar{animation-play-state:paused!important}
 [data-qp-typing] .qp-composer__caret{animation:qp-caret 1s steps(2) 4}
 [data-qp-typed] .qp-start{animation:qp-in 420ms var(--q-ease) both}
 @keyframes qp-caret{50%{opacity:0}}
 @keyframes qp-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
 @keyframes qp-bar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
 @keyframes qp-needle{from{transform:rotate(0deg)}to{transform:rotate(var(--qp-angle))}}
}

@media (max-width:767.98px){
 .qp-bar__more{display:none}
 .qp-rdv{padding-block-start:22px}
 .qp-entry{padding-block-start:26px}
 .qp-entry__title{font-size:31px}
 .qp-entry__voice{font-size:15.5px}
 .qp-composer{padding-inline:16px;gap:10px}
 .qp-composer__text{font-size:16px}
 .qp-composer__note{padding-inline-start:4px}
 .qp-block__summary{padding-inline-start:0;margin-block-start:2px}
 .qp-disc{grid-template-columns:minmax(0,1fr)}
 .qp-listing{margin-inline:-13px;border-radius:16px}
 .qp-listing__photo{aspect-ratio:4/3}
 .qp-listing__price strong{font-size:29px}
 .qp-listing__body{padding:16px}
 .qp-listing__portal,.qp-listing__sim,.qp-listing__found,.qp-listing__age{font-size:12px;padding:4px 10px}
 .qp-rdv__card{padding:18px}
 .qp-rdv__title{font-size:25px}
 .qp-steps ol{grid-template-columns:repeat(5,auto);justify-content:space-between}
 .qp-steps{flex-basis:auto;flex-grow:1}
 .qp-steps__item{padding:4px}
 .qp-steps__item:not([data-state=doing]) .qp-steps__label{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
 .qp-steps__item[data-state=doing]{padding-inline-end:10px}
 .qp-block{padding:16px 14px 18px;border-radius:20px}
 .qp-block__title{font-size:21px}
 .qp-block--grid .qp-block__body,.qp-meters,.qp-comps,.qp-ctas,.qp-sgrid{grid-template-columns:minmax(0,1fr)}
 .qp-read{grid-template-columns:minmax(0,1fr)}
 .qp-read__arrow{transform:rotate(90deg);justify-self:center}
 .qp-listing__photo{min-block-size:170px}
 .qp-work__step{grid-template-columns:22px minmax(0,1fr)}
 .qp-work__result{grid-column:2}
 .qp-detected{font-size:18px}
 .qp-signature-line{font-size:21px;padding:20px 16px}
 .qp-ready{font-size:29px}
 .qp-frieze{padding:12px}
}
@media (max-width:479.98px){
 .qp{padding-inline:12px}
 .qp-progress{margin-inline:-12px;padding-inline:12px}
 .qp-bar{gap:8px}
 .qp-bar__brand img{inline-size:96px}
 .qp-bar__back{padding:0 12px;font-size:13.5px}
 .qp-qevyo{padding:16px}
 .qp-block__state{display:none}
 .qp-badge{padding-inline:8px;font-size:11px;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .qp-progress{inset-block-start:30px}
}
@media (max-width:359.98px){
 .qp-bar{padding-inline:10px;gap:6px}
 .qp-bar__brand img{inline-size:84px}
 .qp-demo{padding:2px 7px;letter-spacing:.1em}
 .qp-bar__back{padding:0 10px;font-size:13px}
}
