/* ==========================================================
   COMPONENTS — boutons, cartes, tableaux, messagerie,
   abonnements, modale, toast
========================================================== */

/* ---------- Boutons ---------- */

.primary,
.secondary{ border-radius:4px; padding:10px 15px; font-weight:700; }

.primary{ border:1px solid var(--gold); background:var(--pine); color:#fffdf8; }
.primary:hover{ background:var(--pine-dark); }

.secondary{ background:var(--panel); border:1px solid var(--line); color:var(--ink); }
.secondary:hover{ border-color:var(--gold); }

/* ---------- Statistiques ---------- */

.stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:22px; }

.stat{ background:var(--panel); border:1px solid var(--line); padding:18px; box-shadow:var(--shadow); }
.stat small{ color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.stat .num{ font-family:Fraunces,Georgia,serif; font-size:29px; margin-top:8px; }
.trend{ color:var(--pine); font-size:10px; font-weight:700; margin-top:5px; }

/* ---------- Panneaux ---------- */

.panel{ background:var(--panel); border:1px solid var(--line); box-shadow:var(--shadow); }

.panel-head{
  padding:17px 20px;
  border-bottom:1px solid var(--line);
  display:flex; align-items:center; justify-content:space-between;
}

.panel-head h3{ margin:0; font-family:Fraunces,Georgia,serif; font-size:17px; font-weight:600; }
.panel-head a{ color:var(--gold); font-size:11px; font-weight:800; cursor:pointer; }

.grid2{ display:grid; grid-template-columns:1.55fr 1fr; gap:18px; }

/* ---------- Cartes véhicule ---------- */

.listing-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; padding:16px; }

.vehicle{ border:1px solid var(--line); background:var(--panel); overflow:hidden; }

.car-art{ height:135px; background:var(--paper); position:relative; display:grid; place-items:center; }

.car-art:before{
  content:""; width:65%; height:33%;
  border:9px solid var(--pine); border-bottom-width:7px;
  border-radius:42% 50% 15% 15%;
  transform:translateY(8px); opacity:.85;
}

.car-art:after{
  content:""; position:absolute; width:48%; height:19%;
  border:4px solid var(--pine); border-bottom:0;
  border-radius:55% 55% 0 0;
  transform:translateY(-21px); opacity:.85;
}

.vehicle-body{ padding:14px; }
.vehicle-title{ font-family:Fraunces,Georgia,serif; font-size:15px; font-weight:600; }
.vehicle-meta{ font-size:10px; color:var(--muted); margin-top:4px; }
.price{ font-family:Fraunces,Georgia,serif; font-size:19px; margin-top:10px; }

.tag,
.status{ display:inline-flex; align-items:center; padding:4px 7px; font-size:9px; font-weight:800; }

.tag{ color:var(--pine); background:#e8e0ca; }

.row{ display:flex; align-items:center; justify-content:space-between; gap:10px; }

/* ---------- Activité ---------- */

.activity{ padding:4px 18px; }
.activity-item{ display:flex; gap:11px; padding:14px 0; border-bottom:1px solid var(--line); }
.activity-item:last-child{ border:0; }
.dot{ width:7px; height:7px; background:var(--gold); margin-top:6px; flex:none; }
.activity-item b{ font-size:11px; }
.activity-item p{ font-size:10px; color:var(--muted); margin:3px 0 0; }
.activity-item time{ font-size:9px; color:var(--muted); margin-left:auto; white-space:nowrap; }

/* ---------- Filtres + tableaux ---------- */

.toolbar{ display:flex; gap:9px; flex-wrap:wrap; margin-bottom:16px; }

.filter{
  height:38px; border:1px solid var(--line);
  background:var(--panel); border-radius:4px;
  padding:0 11px; color:var(--ink);
}

.table{ overflow:hidden; }

.table-row{
  display:grid; grid-template-columns:2.1fr 1fr 1fr .8fr .7fr;
  gap:12px; padding:15px 18px;
  border-bottom:1px solid var(--line); align-items:center;
}

.table-row.head{
  font-size:9px; color:var(--muted);
  text-transform:uppercase; letter-spacing:.1em; font-weight:800;
  background:var(--paper);
}

.table-row:last-child{ border:0; }

.seller{ display:flex; gap:10px; align-items:center; }

.seller .mini{
  width:34px; height:34px;
  background:var(--pine); color:var(--gold-light);
  display:grid; place-items:center;
  font-family:Fraunces,Georgia,serif; font-weight:700;
}

.seller strong{ font-size:11px; }
.seller span{ display:block; color:var(--muted); font-size:9px; margin-top:2px; }

.price-cell{ font-family:Fraunces,Georgia,serif; font-weight:700; }

.status.green{ background:#e5ebe2; color:var(--pine); }
.status.blue{ background:#e9e4d5; color:#635b45; }
.status.amber{ background:#f2e6c4; color:#775c10; }

/* ---------- Messagerie ---------- */

.messages{ display:grid; grid-template-columns:310px minmax(0,1fr); height:min(650px,calc(100vh - 260px)); min-height:430px; overflow:hidden; }

.thread-list{ border-right:1px solid var(--line); overflow:auto; }
.thread{ padding:14px 16px; border-bottom:1px solid var(--line); cursor:pointer; }
.thread.active,
.thread:hover{ background:var(--paper); }
.thread b{ font-size:11px; }

.thread p{
  font-size:10px; color:var(--muted); margin:4px 0;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}

.thread time{ font-size:9px; color:var(--muted); }

.chat{ display:flex; flex-direction:column; min-width:0; min-height:0; overflow:hidden; }

.chat-head{
  padding:15px 18px; border-bottom:1px solid var(--line);
  display:flex; align-items:center; gap:11px;
}

.chat-head b{ font-size:12px; }
.chat-head small{ color:var(--pine); display:block; font-size:9px; margin-top:2px; }

.chat-body{ flex:1 1 auto; min-height:0; padding:22px; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; background:var(--paper); }

.bubble{
  max-width:68%; padding:11px 13px; margin-bottom:12px;
  font-size:11px; line-height:1.5; border:1px solid var(--line);
}

.bubble.them{ background:var(--panel); }
.bubble.me{ background:var(--pine); color:#fffdf8; margin-left:auto; border-color:var(--pine); }
.bubble time{ display:block; font-size:8px; opacity:.6; margin-top:5px; }

.composer{ flex:0 0 auto; padding:12px; border-top:1px solid var(--line); display:flex; gap:8px; background:var(--panel); position:relative; z-index:2; }

.composer input{
  flex:1; border:1px solid var(--line);
  background:var(--paper); padding:10px 12px; outline:none;
}

/* ---------- Abonnements ---------- */

.plans{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }

.plan{ padding:25px; background:var(--panel); border:1px solid var(--line); box-shadow:var(--shadow); }
.plan.featured{ border:2px solid var(--gold); position:relative; }

.popular{
  position:absolute; right:15px; top:15px;
  background:var(--gold); color:var(--pine-dark);
  padding:5px 8px; font-size:8px; font-weight:900; text-transform:uppercase;
}

.plan h3{ font-family:Fraunces,Georgia,serif; margin:0; font-size:20px; }
.price-big{ font-family:Fraunces,Georgia,serif; font-size:34px; margin:13px 0 3px; }
.price-big span{ font-family:Inter,sans-serif; font-size:11px; color:var(--muted); }
.plan p{ color:var(--muted); font-size:11px; min-height:35px; }
.plan ul{ padding:0; list-style:none; margin:18px 0; }
.plan li{ font-size:11px; padding:8px 0; border-bottom:1px solid var(--line); }
.plan li:before{ content:"✓"; color:var(--gold); font-weight:900; margin-right:8px; }
.plan button{ width:100%; }

/* ---------- Modale + formulaires ---------- */

.modal{
  position:fixed; inset:0;
  background:rgba(13,34,29,.65);
  display:none; align-items:center; justify-content:center;
  z-index:50; padding:20px;
}

.modal.show{ display:flex; }

.modal-box{
  width:min(620px,100%);
  background:var(--panel); border:1px solid var(--gold);
  box-shadow:0 25px 80px rgba(0,0,0,.25);
}

.modal-head{ padding:18px 20px; border-bottom:1px solid var(--line); display:flex; justify-content:space-between; }
.modal-head h3{ font-family:Fraunces,Georgia,serif; margin:0; }
.close{ border:0; background:transparent; color:var(--muted); font-size:20px; }

.form{ padding:20px; display:grid; gap:13px; }

.form label{
  font-size:10px; font-weight:800; color:var(--muted);
  text-transform:uppercase; letter-spacing:.06em;
}

.form input,
.form select,
.form textarea{
  width:100%; margin-top:6px;
  border:1px solid var(--line); background:var(--paper);
  padding:10px; color:var(--ink);
  outline:none; border-radius:3px;
}

.form textarea{ min-height:85px; resize:vertical; }
.form-actions{ display:flex; justify-content:flex-end; gap:8px; margin-top:4px; }

/* ---------- Toast ---------- */

.toast{
  position:fixed; right:22px; bottom:22px;
  background:var(--pine); color:#fffdf8;
  padding:12px 15px; border-left:3px solid var(--gold);
  font-size:11px; box-shadow:var(--shadow);
  transform:translateY(30px); opacity:0; pointer-events:none;
  transition:.2s; z-index:60;
}

.toast.show{ transform:translateY(0); opacity:1; }

/* ---------- Authentification locale V1.1 ---------- */
.auth{position:fixed;inset:0;z-index:100;background:var(--paper);display:none;place-items:center;padding:24px;overflow:auto}
.auth.show{display:grid}.auth-card{width:min(560px,100%);background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow)}
.auth-brand{display:flex;align-items:center;gap:12px;padding:22px;border-bottom:1px solid var(--line)}
.auth .form h2{font-family:Fraunces,Georgia,serif;margin:0;font-size:27px}.auth .form p{margin:0 0 6px;color:var(--muted);font-size:11px;text-transform:none;letter-spacing:0}
.auth .form button{width:100%}.auth-open{overflow:hidden}.empty-state{padding:28px;color:var(--muted);font-size:11px;text-align:center;grid-column:1/-1}

/* ---------- Profil entreprise V1.2 ---------- */
.company-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:18px}.company-summary{align-self:start}.company-summary #companyPreview{padding:22px}.company-card-avatar{width:58px;height:58px;display:grid;place-items:center;background:var(--pine);color:var(--gold-light);font-family:Fraunces,Georgia,serif;font-size:22px;border-radius:50%;margin-bottom:14px}.company-summary h2{font-family:Fraunces,Georgia,serif;margin:0 0 6px}.company-summary p{font-size:11px;color:var(--muted);line-height:1.65}.company-meta{display:grid;gap:9px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-size:11px}.danger{border-color:#9c3d32!important;color:#8b2f26!important}.owner-actions{display:flex;gap:6px;flex-wrap:wrap}
@media(max-width:850px){.company-grid{grid-template-columns:1fr}}

/* ---------- Espace marchand & offres V1.3 ---------- */
.manage-row,.offer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:15px 18px;border-bottom:1px solid var(--line)}
.manage-row:last-child,.offer-row:last-child{border-bottom:0}.manage-row>div:first-child,.offer-row>div{display:grid;gap:5px}.manage-row span,.offer-row span{font-size:10px;color:var(--muted)}.manage-row>div:last-child,.offer-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.offer-row{grid-template-columns:minmax(180px,1fr) minmax(130px,.45fr) auto}.offer-status{display:inline-block;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.offer-tabs{display:flex;gap:8px;margin-bottom:12px}.offer-tabs .active{border-color:var(--gold);background:var(--pine);color:#fff}.offer-history{display:grid;gap:0;border:1px solid var(--line)}.offer-history>div{padding:12px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px}.offer-history>div:last-child{border-bottom:0}.offer-history span{font-size:10px;color:var(--muted)}
@media(max-width:850px){.offer-row,.manage-row{grid-template-columns:1fr}.manage-row>div:last-child,.offer-actions{justify-content:flex-start}}
.notification-row{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;padding:15px 18px;display:flex;justify-content:space-between;gap:18px;cursor:pointer;color:var(--ink)}.notification-row:last-child{border-bottom:0}.notification-row.unread{background:#f2ead4}.notification-row div{display:grid;gap:5px}.notification-row span,.notification-row time{font-size:10px;color:var(--muted)}.notification-row.unread strong:before{content:'●';color:var(--gold);font-size:8px;margin-right:8px}
.photo-preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:8px}.photo-preview-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line)}
/* V2.3 administration */
#admin .stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}#admin .stat-card{min-height:105px}.admin-member{display:grid;grid-template-columns:2fr 1.2fr 1fr auto;gap:14px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line)}.admin-member:last-child{border-bottom:0}.admin-member small,.admin-activity small{display:block;color:var(--muted);margin-top:4px}.admin-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.admin-activity{display:flex;justify-content:space-between;gap:16px;padding:12px 18px;border-bottom:1px solid var(--line)}@media(max-width:900px){#admin .stats{grid-template-columns:1fr 1fr}.admin-member{grid-template-columns:1fr}.admin-actions{justify-content:flex-start}}

/* V2.4 — identité professionnelle vérifiée */
.verified-avatar{position:relative;display:inline-grid;place-items:center;flex:0 0 auto}
.verified-avatar-core{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--pine);color:var(--gold-light);font-family:Fraunces,Georgia,serif;font-weight:700;font-size:11px;border:1px solid transparent}
.verified-avatar.is-verified .verified-avatar-core{border:2px solid var(--gold);box-shadow:0 0 0 2px var(--paper)}
.verified-check{position:absolute;right:-4px;bottom:-3px;width:16px;height:16px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:#fff;border:2px solid var(--panel);font-size:9px;font-weight:900;line-height:1}
.verified-inline{display:inline-grid;place-items:center;width:14px;height:14px;border-radius:50%;background:var(--gold);color:white;font-size:9px;font-weight:900;vertical-align:middle;margin-left:3px}
.professional-link{cursor:pointer}.professional-link:hover{text-decoration:underline;text-underline-offset:2px}
.mini-wrap .verified-avatar-core{width:34px;height:34px}.seller-profile-row{display:flex;align-items:center;gap:12px}
.company-card-avatar-wrap{margin-bottom:14px}.company-card-avatar-wrap .verified-avatar-core{width:58px;height:58px;font-size:22px}.company-card-avatar-wrap .verified-check{width:20px;height:20px;font-size:11px}
.professional-page{display:grid;gap:20px}.professional-hero{padding:26px;display:flex;gap:20px;align-items:flex-start}.professional-large .verified-avatar-core{width:76px;height:76px;font-size:26px}.professional-large .verified-check{width:23px;height:23px;font-size:12px}.professional-hero h2{font-family:Fraunces,Georgia,serif;font-size:28px;margin:3px 0 8px}.professional-hero p{max-width:680px;color:var(--muted);font-size:11px;line-height:1.7}.verified-label{display:inline-block;background:#e5ebe2;color:var(--pine);padding:5px 8px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.muted-label{color:var(--muted);font-size:10px}.professional-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px;font-size:10px;color:var(--muted)}
@media(max-width:700px){.professional-hero{flex-direction:column}.professional-hero h2{font-size:23px}}

/* V2.5 — retours de formulaires */
.form-message{padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);font-size:12px;line-height:1.45;margin:4px 0 8px}.form-message.error,.field-message.error{color:#8b2d24;border-color:#d7aaa3;background:#fff5f3}.field-message{display:block;margin-top:6px;font-size:11px;color:var(--muted)}.field-message.success{color:var(--pine)}

/* V2.6 — catalogue, dashboard, dépôt et modération */
.catalog-filters{display:grid;grid-template-columns:minmax(220px,1.7fr) repeat(6,minmax(115px,.75fr)) auto auto;gap:8px;margin-bottom:10px;align-items:center}.catalog-filters input,.catalog-filters select{width:100%}.filter-search input{height:38px;border:1px solid var(--line);background:var(--panel);padding:0 12px;border-radius:4px}.check-filter{display:flex!important;align-items:center;gap:7px;font-size:10px!important;text-transform:none!important;letter-spacing:0!important;white-space:nowrap}.check-filter input{width:auto!important}.catalog-summary{display:flex;justify-content:space-between;align-items:center;margin:10px 0 14px;color:var(--muted);font-size:10px}.sell-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:14px}.sell-steps span{padding:8px;border-bottom:2px solid var(--line);font-size:9px;text-transform:uppercase;font-weight:800;color:var(--muted)}.sell-steps span.on{border-color:var(--gold);color:var(--pine)}.photo-preview-grid>div{display:grid;gap:4px}.photo-preview-grid small{font-size:8px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.activity-item{padding:13px 0;border-bottom:1px solid var(--line);display:grid;gap:4px}.activity-item span{font-size:10px;color:var(--muted)}.vehicle-extra{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.vehicle-extra span{padding:7px 9px;background:var(--paper);font-size:10px}.damage-note{margin-top:12px;padding:10px;border-left:3px solid var(--gold);background:#fff8e9}.report-link{width:100%;margin-top:10px;border:0;background:transparent;color:var(--muted);font-size:10px;cursor:pointer}.report-link:hover{color:#8b2f26}.admin-activity .admin-actions{align-items:center}
@media(max-width:1200px){.catalog-filters{grid-template-columns:repeat(3,1fr)}.filter-search{grid-column:span 2}}@media(max-width:700px){.catalog-filters{grid-template-columns:1fr 1fr}.filter-search{grid-column:1/-1}}

/* V2.7 — confort des modales et activité cliquable */
.modal-box{max-height:calc(100vh - 40px);display:flex;flex-direction:column;overflow:hidden}
.modal-head{flex:0 0 auto}
.modal-box .form{overflow-y:auto;overscroll-behavior:contain;min-height:0;padding-bottom:24px}
.activity-link{width:100%;border:0;background:transparent;text-align:left;cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;color:inherit;font:inherit}
.activity-link:hover{background:var(--paper)}
.activity-link time{font-size:9px;color:var(--muted);white-space:nowrap}
.activity-arrow{font-size:16px;color:var(--gold)}
.view-count{border:1px solid var(--line);background:transparent!important}
@media (max-width:700px){.modal{padding:8px}.modal-box{max-height:calc(100vh - 16px)}.activity-link{grid-template-columns:1fr auto}.activity-link time{grid-column:1/2}.activity-arrow{grid-column:2;grid-row:1/3}}


/* V2.8 — matching offre / demande */
.match-list{display:grid;gap:10px}.match-card{width:100%;border:1px solid var(--line);background:var(--panel);padding:14px;text-align:left;display:grid;gap:5px;cursor:pointer;color:inherit}.match-card:hover{border-color:var(--gold);background:var(--paper)}.match-card strong{font-family:Fraunces,Georgia,serif;font-size:16px}.match-card span{font-size:10px;color:var(--muted)}.match-card small{font-size:9px;font-weight:800;color:var(--pine);margin-top:3px}.table-row .status+small{display:block;margin-top:4px;font-size:8px;color:var(--muted)}

/* V2.9 — gestion du stock */
.stock-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.stock-summary>div{border:1px solid var(--line);background:var(--panel);padding:14px 16px;display:grid;gap:3px}.stock-summary strong{font-family:Fraunces,Georgia,serif;font-size:25px}.stock-summary span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}.manage-row .status{font-size:8px;margin-left:4px}.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}@media(max-width:650px){.stock-summary{grid-template-columns:1fr}.manage-row>div:last-child button{flex:1 1 auto}}
/* V3.0.1 — console administration */
.admin-toolbar{display:flex;gap:10px;padding:14px 0;flex-wrap:wrap}.admin-toolbar input,.admin-toolbar select{min-width:220px;padding:10px 12px;border:1px solid var(--line,#d8d3c7);border-radius:8px;background:var(--paper,#fff)}

/* V3.1 — dossier de transaction */
.transaction-timeline{margin-top:18px;padding:16px;border:1px solid var(--line);background:var(--cream)}
.transaction-timeline h3{margin:0 0 14px;font-family:Fraunces,serif;font-size:18px}
.timeline-event{display:grid;grid-template-columns:14px 1fr;gap:10px;position:relative;padding:0 0 16px}
.timeline-event:not(:last-child):before{content:"";position:absolute;left:5px;top:12px;bottom:0;border-left:1px solid var(--line)}
.timeline-dot{width:11px;height:11px;border-radius:50%;background:var(--pine);margin-top:4px;z-index:1}
.timeline-event div{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.timeline-event time{display:block;width:100%;font-size:10px;color:var(--muted)}.timeline-event small{font-weight:700}
.transaction-dossier .status{display:inline-flex;width:max-content}

.transaction-documents{margin:20px 0;padding:18px;background:var(--cream,#f7f4ec);border-left:3px solid #a58749}.transaction-documents p{margin:8px 0 14px;font-size:13px;line-height:1.5}.transaction-documents button{white-space:normal}.transaction-documents button:disabled{opacity:.65;cursor:wait}

/* V3.4 — catalogue export en cartes */
.export-toolbar{display:flex;justify-content:space-between;align-items:center;margin:-8px 0 18px;color:var(--muted);font-size:11px}
.export-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.export-card{background:var(--panel);border:1px solid var(--line);border-radius:6px;overflow:hidden;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}
.export-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(22,42,34,.09)}
.export-card-photo{aspect-ratio:4/3;background:var(--paper);position:relative;overflow:hidden}.export-card-photo img{width:100%;height:100%;object-fit:cover}.export-card-photo .export-placeholder{height:100%;display:grid;place-items:center;color:var(--muted)}
.export-reason{position:absolute;left:10px;top:10px;background:var(--pine);color:#fff;padding:5px 8px;border-radius:3px;font-size:8px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.export-card-body{padding:13px}.export-card-body h3{font-family:Fraunces,Georgia,serif;margin:0 0 5px;font-size:16px}.export-card-meta{font-size:10px;color:var(--muted);margin-bottom:9px}.export-card-price{font-size:17px;font-weight:800;color:var(--pine);margin-bottom:7px}.export-card-seller{font-size:10px;color:var(--muted)}
@media(max-width:1150px){.export-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.export-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.export-grid{grid-template-columns:1fr}}

/* V3.4.2 — catalogues visuels unifiés */
.market-grid{margin-top:4px}
.market-card .fav{position:absolute;right:10px;top:10px;z-index:2}
.market-card .export-card-photo{position:relative}
/* V3.5 — Réseau professionnel */
.network-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 22px}.network-setting{display:flex;align-items:center;gap:10px}.network-setting select{min-width:160px}.network-list{display:grid;gap:12px}.network-person,.network-activity{display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--cream,#fffdf7);border:1px solid rgba(30,59,48,.14);border-radius:14px}.network-person .network-main,.network-activity .network-main{flex:1;min-width:0}.network-person strong,.network-activity strong{display:block}.network-person small,.network-activity small{opacity:.65}.network-actions{display:flex;gap:8px;flex-wrap:wrap}.network-tree{overflow:auto;padding:24px 4px}.tree-root{text-align:center;margin-bottom:30px}.tree-level{display:flex;justify-content:center;align-items:flex-start;gap:18px;min-width:max-content}.tree-node{width:170px;padding:14px;background:#fff;border:1px solid rgba(30,59,48,.18);border-radius:14px;text-align:center;cursor:pointer}.tree-node.root{margin:auto;border-width:2px}.tree-node .verified-avatar{margin:auto auto 8px}.tree-branch{display:grid;gap:12px}.tree-second{display:grid;gap:8px;margin-top:10px}.tree-second .tree-node{width:145px;font-size:12px;padding:10px}@media(max-width:760px){.network-person,.network-activity{align-items:flex-start;flex-wrap:wrap}.network-actions{width:100%}}

/* V3.5.1 — ergonomie réseau & notifications */
.network-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}.network-overview button{border:1px solid rgba(30,59,48,.14);background:var(--cream,#fffdf7);border-radius:12px;padding:14px;text-align:left;cursor:pointer;color:var(--ink)}.network-overview button strong{display:block;font-family:Fraunces,serif;font-size:25px;color:var(--pine);line-height:1}.network-overview button span{display:block;margin-top:6px;font-size:10px;color:var(--muted)}.network-overview button.attention{border-color:#b87828;background:#fff8e9}.network-tabs button.active{border-color:var(--pine);box-shadow:inset 0 -2px 0 var(--pine)}.network-tabs b{font-size:9px}.tab-alert,.request-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:20px;background:#b87828;color:white;font-size:9px}.notification-row{position:relative;padding-left:20px}.notification-row:before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:#a8a39a}.notification-row.notification-network:before{background:#3f78a8}.notification-row.notification-offers:before{background:#c18b2f}.notification-row.notification-transactions:before{background:#43845c}.notification-row.notification-messages:before{background:#765b9e}.notification-kind{align-self:center;display:inline-flex!important;width:auto;padding:4px 7px;border-radius:999px;background:#f1eee7;font-size:8px!important;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--muted)!important}.notification-network .notification-kind{background:#e9f2f9;color:#35688f!important}.notification-offers .notification-kind{background:#fff3d8;color:#8c621c!important}.notification-transactions .notification-kind{background:#e7f3eb;color:#356b49!important}.notification-messages .notification-kind{background:#eee9f7;color:#624b86!important}.activity-item{position:relative;padding-left:14px}.activity-item:before{content:'';position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:3px;background:#aaa}.activity-network:before{background:#3f78a8}.activity-offers:before{background:#c18b2f}.activity-transactions:before{background:#43845c}.activity-messages:before{background:#765b9e}
@media(max-width:900px){.network-overview{grid-template-columns:1fr 1fr}}@media(max-width:520px){.network-overview{grid-template-columns:1fr}}
/* V3.6 — abonnements & accès */
.access-lock{grid-column:1/-1;max-width:720px;margin:48px auto;padding:48px;text-align:center;border:1px solid var(--line,#ddd5c8);border-radius:18px;background:var(--paper,#fffdf7)}
.access-lock .lock-icon{display:block;font-size:36px;margin-bottom:12px}.access-lock h2{font-family:Fraunces,serif;margin:8px 0 12px}.access-lock p{color:var(--muted,#6f6a62);margin:0 auto 24px;max-width:560px}
.subscription-current{margin:0 0 20px;padding:14px 18px;border:1px solid var(--line,#ddd5c8);border-radius:12px;background:#fff}.plan.current-plan{outline:2px solid var(--pine,#173c32);outline-offset:3px}.plan-locked{opacity:.55}.subscription-note{margin-top:22px;padding:16px 18px;border-radius:12px;background:rgba(23,60,50,.06);font-size:14px}.locked-action{border-style:dashed!important}
/* V3.8 — Réputation & confiance B2B */
.trust-summary{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:16px 0;padding:14px 16px;border:1px solid var(--line,#d8d2c4);background:rgba(255,255,255,.35)}
.trust-summary strong{font-family:Fraunces,serif}.trust-summary span{opacity:.72}
.trust-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin:12px 0 18px}.trust-metrics span{padding:12px;border:1px solid var(--line,#d8d2c4);font-size:.9rem}.trust-metrics b{display:block;font-size:1.15rem}
.verified-reviews{display:grid;gap:10px;margin:12px 0 20px}.verified-reviews article{padding:14px;border-left:3px solid #b49452;background:rgba(255,255,255,.35)}.verified-reviews article>span{display:block;font-size:.8rem;opacity:.65;margin-top:2px}.verified-reviews article p{margin:8px 0}.text-btn{border:0;background:none;padding:0;text-decoration:underline;cursor:pointer;font:inherit;font-size:.8rem;opacity:.7}

/* V3.8.1 — visibilité des outils de signalement d'évaluation */
.profile-reviews-btn{margin-top:14px;width:100%}.review-report-btn{margin-top:10px;border:1px solid #b9a99b;background:transparent;padding:7px 10px;border-radius:4px;cursor:pointer;font:inherit;font-size:.78rem;color:#6d3d36}.review-report-btn:hover{border-color:#8b2f26;color:#8b2f26;background:rgba(139,47,38,.04)}

/* V3.9 — pilotage du stock */
.stock-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.mini-stock-summary{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}.stock-metrics{display:block;margin-top:7px;font-size:12px;color:var(--muted)}.attention-box{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 18px;margin:0 0 18px;border:1px solid #d8b56b;background:#fff8e8}.attention-box span{color:var(--muted);font-size:13px}.business-stats{margin:0}.compact-lock{margin:0;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;padding:18px}.compact-lock p{margin:5px 0 0}.stock-performance-row>div:first-child{min-width:0}@media(max-width:900px){.stock-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.attention-box,.compact-lock{align-items:flex-start;flex-direction:column}}

/* V4.0 — dossier véhicule & confidentialité */
.private-flag{display:inline-flex;align-items:center;padding:4px 8px;border:1px solid #a63d32;border-radius:999px;color:#a63d32!important;background:#fff5f3;font-size:9px!important;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.private-zone{border:1px solid #d7a09a!important;background:#fffafa!important}.private-banner{margin:-1px -1px 18px;padding:10px 14px;background:#fff0ee;border-bottom:1px solid #d7a09a;color:#a12f26;font-size:11px;font-weight:800;letter-spacing:.04em}.vehicle-dossier{display:grid;gap:18px}.dossier-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.dossier-hero h2{font-family:Fraunces,serif;margin:4px 0}.dossier-hero p{margin:0;color:var(--muted)}.dossier-section{padding:18px;border:1px solid var(--line);background:var(--cream)}.dossier-section h3{font-family:Fraunces,serif;margin:0 0 14px}.dossier-actions{display:flex;gap:8px}.finance-summary{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}@media(max-width:650px){.dossier-hero{flex-direction:column}.finance-summary{grid-template-columns:1fr}}

/* V5.9 — centre d'offres enrichi */
.offer-row-v59 .offer-vehicle{display:flex;align-items:center;gap:12px;text-align:left;background:none;border:0;padding:0;color:inherit;cursor:pointer}.offer-row-v59 .offer-vehicle>span:last-child{display:grid;gap:4px}.offer-row-v59 .offer-vehicle small{color:var(--muted)}.offer-thumb{width:72px;height:54px;border-radius:9px;overflow:hidden;background:var(--surface-2,#eef0ec);display:grid;place-items:center;flex:0 0 auto}.offer-thumb img{width:100%;height:100%;object-fit:cover}.offer-waiting,.offer-action-needed{margin-top:4px;font-size:10px!important;font-weight:800}.offer-waiting{color:var(--muted)!important}.offer-action-needed{color:var(--gold)!important;text-transform:uppercase;letter-spacing:.04em}@media(max-width:850px){.offer-thumb{width:64px;height:48px}}
