/* GestiConnect V11.6.2 generated bundle: gesticonnect-core.bundle.css. Source files stay editable. */

/* === connected-install.css === */
.gc-install-dialog{width:min(calc(100% - 28px),450px);max-height:calc(100dvh - 32px);padding:0;border:1px solid #d3e6d9;border-radius:22px;background:#fff;color:#173e30;box-shadow:0 24px 90px #102b2366;overflow:auto}
.gc-install-dialog::backdrop{background:#071e16a6;backdrop-filter:blur(4px)}
.gc-install-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:24px 26px 19px;background:linear-gradient(120deg,#0d4233,#138463);color:#fff}
.gc-install-head span{display:block;margin-bottom:8px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#cfebdb}
.gc-install-head h2{margin:0;color:#fff;font-size:21px;line-height:1.2}
.gc-install-close{width:35px;height:35px;flex:none;border:1px solid #ffffff78;border-radius:10px;background:#ffffff26;color:#fff;font-size:22px;cursor:pointer}
.gc-install-body{padding:22px 26px 26px}.gc-install-body p{margin:0 0 14px;color:#416a52;font-size:14px;line-height:1.55}
.gc-install-body .gc-install-guide{padding:14px;border-radius:12px;background:#eef8f2;color:#164c38;font-weight:650}
.gc-install-body small{display:block;margin:16px 0;color:#60816c;line-height:1.5}
.gc-install-body button{padding:10px 20px;border:0;border-radius:10px;background:#096b50;color:#fff;font:inherit;font-weight:750;cursor:pointer}
.gc-install-body button:hover,.gc-install-body button:focus-visible{background:#064b39;color:#fff}
.gc-install-trigger{white-space:nowrap}
.topbar-actions .gc-install-trigger,.auth-card .gc-install-trigger{background:#096b50;border:1px solid #096b50;color:#fff}
.topbar-actions .gc-install-trigger:hover,.topbar-actions .gc-install-trigger:focus-visible,.auth-card .gc-install-trigger:hover,.auth-card .gc-install-trigger:focus-visible{background:#064b39;border-color:#064b39;color:#fff}
[data-install-pwa][hidden]{display:none!important}
@media(max-width:680px){.topbar-actions .gc-install-trigger{padding:7px 10px;font-size:11px}.gc-install-trigger .gc-install-label{display:none}.gc-install-head{padding:20px}.gc-install-body{padding:20px}}

/* === app.css === */
:root {
  --navy: #163b2d;
  --navy-2: #0d2a20;
  --blue: #d97706;
  --blue-soft: #fff6e7;
  --ink: #1f2937;
  --muted: #6b7280;
  --line: #dbe3ec;
  --bg: #f5f7fa;
  --white: #ffffff;
  --green: #198754;
  --amber: #c97800;
  --red: #c9363e;
  --radius: 14px;
}
* { box-sizing: border-box; }
body { margin: 0; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--ink); background: var(--bg); }
a { color: var(--blue); text-decoration: none; }
a:hover { text-decoration: underline; }
.app-shell { min-height: 100vh; display: grid; grid-template-columns: 240px 1fr; }
.sidebar { background: linear-gradient(180deg, var(--navy-2), var(--navy)); color: white; padding: 22px 16px; position: sticky; top: 0; height: 100vh; }
.brand { display: flex; gap: 10px; align-items: center; font-weight: 800; font-size: 21px; margin-bottom: 26px; }
.brand-mark { width: 36px; height: 36px; border-radius: 10px; background: white; color: var(--navy); display: grid; place-items: center; font-weight: 900; }
.org-name { color: #c7d8eb; font-size: 12px; margin: -15px 5px 20px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.nav { display: grid; gap: 6px; }
.nav a { color: #dce9f7; padding: 11px 12px; border-radius: 10px; display: flex; gap: 9px; align-items: center; font-weight: 650; font-size: 14px; }
.nav a:hover, .nav a.active { background: rgba(255,255,255,.12); color: white; text-decoration: none; }
.sidebar-footer { position: absolute; bottom: 18px; left: 16px; right: 16px; }
.sidebar-footer form { margin: 0; }
.sidebar-footer button { width: 100%; }
.main { min-width: 0; }
.topbar { min-height: 66px; background: white; border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; padding: 0 28px; position: sticky; top: 0; z-index: 10; }
.topbar h1 { font-size: 20px; margin: 0; }
.user-chip { color: var(--muted); font-size: 13px; }
.content { padding: 26px 28px 50px; max-width: 1500px; margin: 0 auto; }
.actions { display: flex; gap: 9px; flex-wrap: wrap; align-items: center; }
.btn { appearance: none; border: 1px solid transparent; border-radius: 10px; padding: 10px 14px; font: inherit; font-size: 13px; font-weight: 750; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 7px; text-decoration: none; }
.btn:hover { text-decoration: none; filter: brightness(.98); }
.btn-primary { background: var(--navy); color: white; }
.btn-secondary { background: white; color: var(--navy); border-color: #b9c9da; }
.btn-success { background: var(--green); color: white; }
.btn-warning { background: #fff4df; color: #8c5300; border-color: #f1c879; }
.btn-danger { background: #fff0f1; color: #a62730; border-color: #edb7bb; }
.btn-sm { padding: 7px 10px; font-size: 12px; border-radius: 8px; }
.btn-block { width: 100%; }
.card { background: white; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 8px 24px rgba(28, 50, 75, .05); }
.card-header { padding: 18px 20px; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.card-header h2, .card-header h3 { margin: 0; font-size: 16px; }
.card-body { padding: 20px; }
.grid { display: grid; gap: 18px; }
.grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.stat { padding: 20px; }
.stat-label { color: var(--muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.stat-value { font-size: 27px; font-weight: 850; margin-top: 7px; color: var(--navy); }
.stat-note { font-size: 12px; color: var(--muted); margin-top: 4px; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th, td { text-align: left; padding: 12px 13px; border-bottom: 1px solid var(--line); font-size: 13px; vertical-align: top; }
th { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .04em; background: #fafbfd; }
tbody tr:hover { background: #fbfdff; }
.text-right { text-align: right; }
.text-muted { color: var(--muted); }
.text-danger { color: var(--red); }
.text-success { color: var(--green); }
.nowrap { white-space: nowrap; }
.badge { display: inline-flex; padding: 5px 9px; border-radius: 999px; font-size: 11px; font-weight: 800; background: #eef2f7; color: #475569; }
.badge-draft { background: #f0f2f5; color: #5d6672; }
.badge-issued, .badge-sent { background: #e9f2ff; color: #1f5f9f; }
.badge-paid, .badge-accepted { background: #e9f8ef; color: #176f42; }
.badge-partially_paid { background: #fff3df; color: #9b5b00; }
.badge-rejected, .badge-cancelled { background: #fff0f1; color: #a32a31; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.form-grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.form-group { display: grid; gap: 7px; }
.form-group.full { grid-column: 1 / -1; }
label { font-size: 12px; font-weight: 750; color: #3f4b59; }
input, select, textarea { width: 100%; border: 1px solid #cbd6e2; border-radius: 9px; padding: 10px 11px; font: inherit; font-size: 13px; color: var(--ink); background: white; }
textarea { min-height: 100px; resize: vertical; }
input:focus, select:focus, textarea:focus { outline: 3px solid rgba(47,107,177,.12); border-color: #77a4d6; }
.help { color: var(--muted); font-size: 11px; }
.page-head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; margin-bottom: 20px; }
.page-head h2 { margin: 0 0 5px; font-size: 24px; color: var(--navy); }
.page-head p { margin: 0; color: var(--muted); font-size: 13px; }
.alert { padding: 12px 14px; border-radius: 10px; margin-bottom: 14px; font-size: 13px; font-weight: 650; border: 1px solid; }
.alert-success { background: #edf9f2; border-color: #b9e4c8; color: #17633c; }
.alert-danger { background: #fff0f1; border-color: #efc0c4; color: #9f2931; }
.alert-warning { background: #fff7e9; border-color: #f0d29f; color: #875200; }
.searchbar { display: flex; gap: 8px; max-width: 520px; }
.searchbar input { min-width: 260px; }
.empty { padding: 45px 20px; text-align: center; color: var(--muted); }
.auth-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(320px, 520px) 1fr; background: white; }
.auth-panel { padding: 50px 54px; display: flex; flex-direction: column; justify-content: center; }
.auth-visual { background: linear-gradient(140deg, var(--navy-2), #2e6a4e); color: white; padding: 70px; display: flex; flex-direction: column; justify-content: center; }
.auth-visual h1 { font-size: 42px; line-height: 1.08; margin: 0 0 18px; }
.auth-visual p { max-width: 620px; color: #dce9f7; font-size: 18px; }
.auth-card { max-width: 430px; width: 100%; margin: auto; }
.auth-card h2 { font-size: 28px; color: var(--navy); margin: 0 0 8px; }
.auth-card .subtitle { color: var(--muted); margin: 0 0 26px; }
.auth-card form { display: grid; gap: 16px; }
.invoice-lines input, .invoice-lines select { min-width: 90px; }
.invoice-lines .desc { min-width: 260px; }
.line-remove { border: none; background: #fff0f1; color: #a62730; width: 34px; height: 34px; border-radius: 8px; cursor: pointer; font-weight: 900; }
.summary-box { margin-left: auto; max-width: 420px; }
.summary-row { display: flex; justify-content: space-between; gap: 20px; padding: 8px 0; border-bottom: 1px dashed var(--line); font-size: 13px; }
.summary-row.total { font-size: 18px; font-weight: 850; color: var(--navy); border-bottom: 0; padding-top: 12px; }
.document-hero { display: grid; grid-template-columns: 1fr auto; gap: 20px; align-items: start; }
.document-number { font-size: 26px; color: var(--navy); font-weight: 850; }
.payment-list { display: grid; gap: 8px; }
.payment-item { display: grid; grid-template-columns: 120px 1fr auto; gap: 12px; padding: 10px 12px; background: #f9fbfd; border: 1px solid var(--line); border-radius: 9px; font-size: 12px; }
.audit-hash { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; word-break: break-all; color: var(--muted); }
.footer-note { margin-top: 28px; color: var(--muted); font-size: 11px; }
.mobile-menu { display: none; }
@media (max-width: 1050px) {
  .grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { position: static; height: auto; }
  .sidebar-footer { position: static; margin-top: 20px; }
  .topbar { position: static; padding: 15px 18px; }
  .content { padding: 20px 14px 40px; }
  .form-grid, .form-grid-3, .grid-2, .grid-3, .grid-4, .document-hero { grid-template-columns: 1fr; }
  .page-head { flex-direction: column; }
  .auth-shell { grid-template-columns: 1fr; }
  .auth-visual { display: none; }
  .auth-panel { padding: 35px 22px; }
}

.trade-pill { display:inline-flex; padding:5px 9px; border-radius:999px; background:#eef7f1; color:#235d43; border:1px solid #c9e1d1; font-size:11px; font-weight:800; white-space:nowrap; }
.trade-banner { margin-bottom:20px; padding:18px 20px; border-radius:14px; background:linear-gradient(105deg,#163b2d,#2e6a4e); color:#fff; display:flex; justify-content:space-between; align-items:center; gap:16px; box-shadow:0 10px 26px rgba(13,42,32,.16); }
.trade-banner strong { display:block; font-size:17px; margin-bottom:4px; }
.trade-banner span { color:#dceee4; font-size:13px; }
.trade-banner .btn-secondary { border-color:#d6e8dd; }
.check-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.check-card { display:flex; align-items:center; gap:8px; border:1px solid var(--line); border-radius:10px; padding:10px 11px; background:#fbfdfb; font-size:12px; }
.check-card input { width:auto; }
.preline { white-space:pre-line; }
.invoice-lines .product-picker { min-width:220px; }
@media (max-width:820px) { .trade-banner { align-items:flex-start; flex-direction:column; } .check-grid { grid-template-columns:1fr; } }

/* GestiConnect Bâtiment V4 */
.sidebar { overflow-y:auto; }
.sidebar-footer { position:static; margin-top:24px; }
.dashboard-kpis .stat-value { font-size:23px; }
.compact-grid { gap:10px; }
.mini-stat { padding:14px; border:1px solid var(--line); border-radius:11px; background:#fafcfd; display:grid; gap:6px; }
.mini-stat span { color:var(--muted); font-size:11px; text-transform:uppercase; font-weight:750; }
.mini-stat strong { color:var(--navy); font-size:18px; }
.status-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.status-tile { display:flex; justify-content:space-between; align-items:center; padding:15px; border-radius:11px; border:1px solid var(--line); color:var(--ink); background:#fafcfd; }
.status-tile:hover { text-decoration:none; border-color:#9db1c5; }
.status-tile span { font-size:12px; font-weight:750; }
.status-tile strong { font-size:22px; color:var(--navy); }
.status-waiting { background:#fff8e8; border-color:#efd39c; }
.status-scheduled { background:#edf6ff; border-color:#bad9f5; }
.status-in_progress { background:#eef5f1; border-color:#bcd8c8; }
.status-completed { background:#ebf8ef; border-color:#b8dfc5; }
.person-chip { display:inline-flex; padding:4px 7px; border-radius:7px; background:#f0f4f8; border:1px solid #d7e0e8; font-size:11px; font-weight:700; margin:2px; white-space:nowrap; }
.badge.project-waiting, .project-waiting { background:#fff4dc; color:#8a5500; }
.badge.project-scheduled, .project-scheduled { background:#e8f3ff; color:#185f9b; }
.badge.project-in_progress, .project-in_progress { background:#e9f6ee; color:#176b3f; }
.badge.project-completed, .project-completed { background:#e5f8eb; color:#126637; }
.badge.project-cancelled, .project-cancelled { background:#f0f1f3; color:#6b7280; }
.payment-state { display:inline-flex; margin-top:5px; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.03em; }
.payment-paid { color:var(--green); }
.payment-partial { color:var(--amber); }
.payment-unpaid { color:var(--red); }
.payment-not_invoiced { color:var(--muted); }
.search-inline, .filter-bar { display:flex; gap:8px; align-items:center; flex-wrap:wrap; width:100%; }
.search-inline input { max-width:380px; }
.filter-bar input { min-width:240px; flex:1; }
.filter-bar select { width:auto; min-width:170px; }
.check-group { align-content:end; }
.check-group label { min-height:42px; display:flex; align-items:center; gap:9px; padding:10px; border:1px solid var(--line); border-radius:9px; }
.check-group input { width:auto; }
.technician-picker-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.select-card { border:1px solid var(--line); border-radius:11px; padding:12px; display:flex; align-items:flex-start; gap:9px; background:#fbfcfd; cursor:pointer; }
.select-card:hover { border-color:#9eb2c6; }
.select-card input { width:auto; margin-top:2px; }
.select-card span { display:grid; gap:3px; }
.select-card small { color:var(--muted); font-weight:500; }
.note-box { padding:11px; border-radius:9px; background:#fff7e9; border:1px solid #efd6a8; font-size:12px; white-space:pre-line; }
.inline-status-form { display:flex; gap:8px; margin-top:14px; align-items:center; }
.inline-status-form select { flex:1; }
.add-inline-form { border-top:1px solid var(--line); }
.form-action { align-content:end; }
.kpi-inline { display:inline-flex; gap:6px; align-items:center; background:#f3f6f8; border:1px solid var(--line); border-radius:8px; padding:7px 9px; font-size:11px; }
.material-form { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; border-top:1px solid var(--line); }
.material-form .span-2 { grid-column:span 2; }
.material-update { display:grid; grid-template-columns:80px 145px 140px 130px auto; gap:5px; min-width:580px; }
.material-update input, .material-update select { padding:7px; font-size:11px; }
.badge.material-to_buy { background:#fff0f1; color:#a32a31; }
.badge.material-ordered { background:#fff4dc; color:#8a5500; }
.badge.material-purchased { background:#e8f3ff; color:#185f9b; }
.badge.material-on_site, .badge.material-used { background:#e9f8ef; color:#176f42; }
.empty.compact { padding:18px 10px; }

.bar-chart { min-height:250px; display:flex; gap:8px; align-items:stretch; overflow-x:auto; padding-top:34px; }
.bar-column { flex:1 0 52px; min-width:52px; display:grid; grid-template-rows:22px 1fr 30px; gap:5px; text-align:center; }
.bar-value { font-size:9px; color:var(--muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.bar-track { height:170px; background:#eef2f5; border-radius:8px 8px 3px 3px; display:flex; align-items:flex-end; overflow:hidden; }
.bar-fill { width:100%; min-height:2px; background:linear-gradient(180deg,#d97706,#163b2d); border-radius:7px 7px 0 0; }
.bar-label { font-size:10px; color:var(--muted); }
.horizontal-bars { display:grid; gap:16px; }
.hbar-row { display:grid; gap:6px; }
.hbar-head { display:flex; justify-content:space-between; gap:12px; font-size:12px; }
.hbar-track { height:11px; background:#edf1f4; border-radius:999px; overflow:hidden; }
.hbar-fill { height:100%; background:linear-gradient(90deg,#163b2d,#d97706); border-radius:999px; min-width:3px; }

.calendar-toolbar { display:grid; grid-template-columns:auto 1fr auto auto; align-items:center; gap:12px; margin-bottom:16px; }
.calendar-toolbar form { display:flex; gap:7px; }
.calendar-toolbar h2 { margin:0; text-align:center; color:var(--navy); font-size:20px; }
.calendar-card { overflow:hidden; }
.calendar-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); }
.calendar-head { background:#163b2d; color:white; }
.calendar-head > div { padding:10px; text-align:center; font-size:11px; font-weight:800; text-transform:uppercase; }
.calendar-week { border-top:1px solid var(--line); min-height:150px; }
.calendar-day { min-width:0; padding:7px; border-right:1px solid var(--line); background:white; }
.calendar-day:last-child { border-right:0; }
.calendar-day.outside-month { background:#f6f7f8; opacity:.6; }
.calendar-date { font-size:12px; font-weight:850; color:var(--navy); margin-bottom:5px; }
.calendar-events { display:grid; gap:4px; }
.calendar-event { display:grid; gap:1px; padding:6px; border-radius:7px; border-left:3px solid currentColor; font-size:9px; color:var(--ink); }
.calendar-event:hover { text-decoration:none; filter:brightness(.98); }
.calendar-event strong { font-size:9px; }
.calendar-event span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.calendar-event small { color:var(--muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.kanban-board { display:grid; grid-template-columns:repeat(4,minmax(240px,1fr)); gap:14px; overflow-x:auto; align-items:start; }
.kanban-column { background:#edf1f4; border:1px solid var(--line); border-radius:13px; min-width:240px; }
.kanban-title { display:flex; justify-content:space-between; align-items:center; padding:13px; font-size:13px; font-weight:850; color:var(--navy); }
.kanban-title strong { width:28px; height:28px; display:grid; place-items:center; border-radius:9px; background:white; }
.kanban-list { display:grid; gap:9px; padding:0 9px 9px; }
.kanban-card { background:white; border:1px solid var(--line); border-radius:10px; padding:12px; color:var(--ink); display:grid; gap:8px; box-shadow:0 4px 12px rgba(31,41,55,.04); }
.kanban-card:hover { text-decoration:none; border-color:#9eb2c6; }
.kanban-card > div:first-child, .kanban-meta { display:flex; justify-content:space-between; gap:8px; align-items:center; }
.kanban-card h3 { margin:0; font-size:13px; }
.kanban-card p { margin:0; font-size:11px; color:var(--muted); }
.kanban-meta { font-size:10px; color:var(--muted); }

@media (max-width:1200px) {
  .technician-picker-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .material-form { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .calendar-day { min-height:130px; }
}
@media (max-width:820px) {
  .status-summary, .technician-picker-grid { grid-template-columns:1fr 1fr; }
  .material-form { grid-template-columns:1fr; }
  .material-form .span-2 { grid-column:auto; }
  .calendar-toolbar { grid-template-columns:1fr 1fr; }
  .calendar-toolbar h2 { grid-column:1/-1; grid-row:1; }
  .calendar-card { overflow-x:auto; }
  .calendar-grid { min-width:900px; }
  .kanban-board { grid-template-columns:repeat(4,280px); }
}

/* GestiConnect Bâtiment V4 — interventions et prise de rendez-vous */
.intervention-legend { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-bottom:16px; }
.legend-item { display:inline-flex; align-items:center; gap:6px; padding:8px 11px; border-radius:9px; border:1px solid transparent; font-size:11px; font-weight:850; }
.legend-note { color:var(--muted); font-size:11px; }
.badge.intervention-booked, .intervention-booked { background:#fff3b0; color:#6d5200; border-color:#efd458; }
.badge.intervention-assigned, .intervention-assigned { background:#fee2e2; color:#991b1b; border-color:#f4a7a7; }
.badge.intervention-in_progress, .intervention-in_progress { background:#dbeafe; color:#1d4ed8; border-color:#93c5fd; }
.badge.intervention-completed, .intervention-completed { background:#dcfce7; color:#166534; border-color:#86d7a1; }
.badge.intervention-cancelled, .intervention-cancelled { background:#f0f1f3; color:#6b7280; border-color:#d6d8dc; }
.calendar-event.intervention-event { border:1px solid currentColor; border-left-width:5px; box-shadow:0 2px 5px rgba(31,41,55,.05); }
.calendar-day.today { background:#fffdf2; box-shadow:inset 0 0 0 2px #e4b43c; }
.calendar-date { display:flex; align-items:center; justify-content:space-between; gap:5px; }
.day-add { display:grid; place-items:center; width:20px; height:20px; padding:0; border:1px solid #c7d1da; border-radius:6px; background:white; color:var(--navy); cursor:pointer; font-weight:900; opacity:.15; }
.calendar-day:hover .day-add, .calendar-day.today .day-add { opacity:1; }
.section-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:15px; margin:24px 0 12px; }
.section-heading h2 { margin:0 0 3px; color:var(--navy); font-size:19px; }
.section-heading p { margin:0; color:var(--muted); font-size:12px; }
.intervention-card { border-left:5px solid currentColor; }
.intervention-column-booked { background:#fffbea; }
.intervention-column-assigned { background:#fff1f1; }
.intervention-column-in_progress { background:#edf5ff; }
.intervention-column-completed { background:#edfbf2; }

.modal-overlay { position:fixed; inset:0; z-index:1000; display:none; align-items:center; justify-content:center; padding:18px; background:rgba(10,22,33,.68); backdrop-filter:blur(3px); }
.modal-overlay.is-open { display:flex; }
.modal-dialog { width:min(1100px,96vw); max-height:94vh; display:flex; flex-direction:column; overflow:hidden; border-radius:18px; background:white; box-shadow:0 30px 90px rgba(0,0,0,.35); }
.intervention-modal-dialog { width:min(1180px,97vw); }
.modal-header, .modal-footer { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:17px 20px; background:white; border-bottom:1px solid var(--line); }
.modal-header h2 { margin:0 0 3px; color:var(--navy); font-size:20px; }
.modal-header p { margin:0; color:var(--muted); font-size:12px; }
.modal-close { width:38px; height:38px; border:1px solid var(--line); border-radius:10px; background:#f6f8fa; color:var(--ink); font-size:25px; line-height:1; cursor:pointer; }
.modal-form { min-height:0; display:flex; flex:1; flex-direction:column; }
.modal-body { min-height:0; overflow-y:auto; padding:20px; background:#f4f6f7; }
.modal-footer { justify-content:flex-end; border-top:1px solid var(--line); border-bottom:0; }
body.modal-open { overflow:hidden; }
.intervention-form-sections { display:grid; gap:16px; }
.form-section { padding:19px; border:1px solid var(--line); border-radius:14px; background:white; box-shadow:0 4px 14px rgba(20,35,50,.04); }
.form-section-title { display:flex; align-items:flex-start; gap:11px; margin-bottom:16px; }
.form-section-title > span { flex:0 0 32px; width:32px; height:32px; display:grid; place-items:center; border-radius:9px; background:#d97706; color:white; font-weight:900; }
.form-section-title h3 { margin:0 0 2px; color:var(--navy); font-size:16px; }
.form-section-title p { margin:0; color:var(--muted); font-size:11px; }
.form-grid-3 .span-2 { grid-column:span 2; }
.form-grid-3 .span-3 { grid-column:1/-1; }
.onsite-contact-block { display:grid; gap:12px; margin-top:14px; padding-top:14px; border-top:1px dashed var(--line); }
.onsite-contact-block .check-card { max-width:520px; }
.intervention-full-form { display:grid; gap:16px; }
.sticky-form-actions { position:sticky; bottom:12px; z-index:20; display:flex; justify-content:flex-end; gap:10px; padding:12px; border:1px solid var(--line); border-radius:13px; background:rgba(255,255,255,.96); box-shadow:0 10px 35px rgba(20,35,50,.15); }
.intervention-hero { display:flex; justify-content:space-between; gap:25px; align-items:center; margin-bottom:20px; padding:24px; border:1px solid currentColor; border-radius:16px; }
.intervention-hero h2 { margin:5px 0 8px; font-size:22px; color:currentColor; }
.intervention-hero p { margin:0; max-width:780px; color:var(--ink); white-space:pre-line; }
.intervention-hero .eyebrow { font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.intervention-time { flex:0 0 150px; display:grid; gap:2px; padding:14px; border-radius:12px; background:rgba(255,255,255,.65); text-align:center; }
.intervention-time strong { font-size:28px; }
.intervention-time span { font-weight:800; }
.intervention-time small { color:var(--muted); }
.detail-list { display:grid; grid-template-columns:150px 1fr; gap:9px 13px; margin:0; }
.detail-list dt { color:var(--muted); font-size:11px; font-weight:850; }
.detail-list dd { margin:0; font-size:12px; }

@media (max-width:820px) {
  .modal-overlay { padding:0; align-items:stretch; }
  .modal-dialog { width:100%; max-height:100vh; border-radius:0; }
  .modal-body { padding:12px; }
  .form-section { padding:14px; }
  .form-grid-3 .span-2, .form-grid-3 .span-3 { grid-column:auto; }
  .section-heading, .intervention-hero { align-items:flex-start; flex-direction:column; }
  .intervention-time { width:100%; box-sizing:border-box; }
  .detail-list { grid-template-columns:1fr; }
}

/* GestiConnect Plateforme V7 - attribution publicitaire */
.grid-5 { grid-template-columns:repeat(5,minmax(0,1fr)); }
.marketing-notice { margin:0 0 18px; padding:14px 16px; border:1px solid #aac6df; border-left:5px solid #2563eb; border-radius:12px; background:#eff6ff; color:#17385e; font-size:12px; line-height:1.65; }
.marketing-kpis .stat-value { font-size:25px; }
.platform-badge { display:inline-flex; align-items:center; margin:0 0 5px; padding:5px 8px; border:1px solid transparent; border-radius:999px; font-size:10px; font-weight:900; white-space:nowrap; }
.platform-google_ads { color:#174ea6; background:#e8f0fe; border-color:#b5cdf5; }
.platform-meta { color:#0759c7; background:#e7f1ff; border-color:#aacdf8; }
.platform-x_ads { color:#111827; background:#eef0f2; border-color:#cdd2d8; }
.platform-snapchat { color:#524900; background:#fffbd4; border-color:#f4e54d; }
.platform-microsoft_ads { color:#006b5b; background:#e4f6f1; border-color:#a3d8cb; }
.platform-other, .platform-unknown { color:#4b5563; background:#f3f4f6; border-color:#d1d5db; }
.match-unmatched { color:#6b7280; background:#f3f4f6; border-color:#d1d5db; }
.match-review { color:#92400e; background:#fff3cd; border-color:#f5cf72; }
.match-matched { color:#1d4ed8; background:#dbeafe; border-color:#93c5fd; }
.match-confirmed { color:#166534; background:#dcfce7; border-color:#86d7a1; }
.match-rejected { color:#991b1b; background:#fee2e2; border-color:#f4a7a7; }
.account-list { display:grid; }
.account-row { display:grid; grid-template-columns:1fr auto; gap:8px 15px; padding:14px 16px; border-bottom:1px solid var(--line); }
.account-row:last-child { border-bottom:0; }
.account-row > div:first-child { display:flex; flex-wrap:wrap; align-items:center; gap:7px; }
.account-row small { flex-basis:100%; color:var(--muted); }
.account-actions { display:flex; align-items:center; justify-content:flex-end; gap:7px; }
.account-actions form { margin:0; }
.account-error { grid-column:1/-1; padding:8px 10px; border-radius:8px; background:#fff1f1; color:#991b1b; font-size:11px; }
.account-status-demo { background:#fef3c7; color:#854d0e; }
.account-status-connected { background:#dcfce7; color:#166534; }
.account-status-credentials_required { background:#fee2e2; color:#991b1b; }
.conversion-hero { display:flex; align-items:center; justify-content:space-between; gap:25px; margin-bottom:20px; padding:23px; border:1px solid var(--line); border-left:7px solid #64748b; border-radius:16px; background:white; box-shadow:0 8px 22px rgba(20,35,50,.06); }
.conversion-hero h2 { margin:4px 0; color:var(--navy); font-size:23px; }
.conversion-hero p { margin:0; color:var(--muted); }
.match-panel-matched { border-left-color:#2563eb; }
.match-panel-confirmed { border-left-color:#16a34a; }
.match-panel-review { border-left-color:#d97706; }
.match-panel-rejected { border-left-color:#dc2626; }
.conversion-score { flex:0 0 175px; display:grid; padding:14px; border-radius:12px; background:#f5f7f9; text-align:center; }
.conversion-score strong { color:var(--navy); font-size:30px; }
.conversion-score span { font-size:11px; font-weight:900; }
.conversion-score small { color:var(--muted); }
.reason-list { margin:0; padding-left:20px; }
.reason-list li { margin:7px 0; font-size:12px; }
.linked-records { display:grid; gap:8px; margin-top:15px; }
.linked-records a { display:grid; grid-template-columns:100px 1fr; gap:10px; padding:11px; border:1px solid var(--line); border-radius:9px; color:var(--ink); }
.linked-records a:hover { text-decoration:none; border-color:#94a3b8; background:#f8fafc; }
.webhook-box { overflow-wrap:anywhere; margin:8px 0 12px; padding:11px 13px; border:1px solid #bbcad6; border-radius:8px; background:#142b3d; color:#e5f2ff; font:12px/1.55 Consolas,monospace; }
.raw-json { max-height:420px; overflow:auto; margin:0; padding:15px; border-radius:9px; background:#102334; color:#e8f1f7; font:11px/1.55 Consolas,monospace; white-space:pre-wrap; overflow-wrap:anywhere; }
.break-word { overflow-wrap:anywhere; word-break:break-word; }
.inline-form { display:flex; flex-wrap:wrap; align-items:center; gap:10px; }
.form-actions { justify-content:flex-end; margin-top:18px; }
details.card > summary { cursor:pointer; list-style:none; }
details.card > summary::-webkit-details-marker { display:none; }

@media (max-width:1200px) {
  .grid-5 { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:820px) {
  .grid-5 { grid-template-columns:1fr 1fr; }
  .account-row { grid-template-columns:1fr; }
  .account-actions { justify-content:flex-start; flex-wrap:wrap; }
  .conversion-hero { align-items:flex-start; flex-direction:column; }
  .conversion-score { width:100%; box-sizing:border-box; }
  .linked-records a { grid-template-columns:1fr; }
}
@media (max-width:520px) {
  .grid-5 { grid-template-columns:1fr; }
}


/* GestiConnect Plateforme V7 */
.onboarding-hero { margin-bottom:20px; padding:28px; border-radius:18px; color:#fff; background:linear-gradient(120deg,#163b2d,#2d6c52 62%,#d97706); display:flex; justify-content:space-between; align-items:center; gap:24px; box-shadow:0 16px 34px rgba(22,59,45,.18); }
.onboarding-hero h2 { margin:5px 0 8px; font-size:28px; }
.onboarding-hero p { margin:0; color:#e3f0e8; max-width:760px; }
.eyebrow { font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.09em; color:#ffdfad; }
.onboarding-step { max-width:260px; padding:13px 16px; border:1px solid rgba(255,255,255,.25); border-radius:12px; background:rgba(255,255,255,.1); font-size:12px; font-weight:800; }
.btn-lg { padding:14px 22px; font-size:14px; }
.row-muted { opacity:.55; }
.badge-success { background:#e5f8eb!important; color:#126637!important; }
.advisor-info-list { display:grid; gap:15px; }
.advisor-info-list div { display:grid; gap:4px; padding-bottom:13px; border-bottom:1px solid var(--line); }
.advisor-info-list span { color:var(--muted); font-size:12px; }
.advisor-kpis { margin-bottom:20px; }
.advisor-kpis a { color:inherit; }
.advisor-kpis a:hover { text-decoration:none; border-color:#8fac9b; }
.advisor-tags { display:flex; flex-wrap:wrap; gap:8px; }
.advisor-tags span, .advisor-category, .advisor-priority { display:inline-flex; padding:5px 9px; border-radius:999px; border:1px solid #d7e0e8; background:#f4f7f9; color:#425466; font-size:10px; font-weight:800; }
.recommendation-list { display:grid; gap:15px; }
.recommendation-card { border:1px solid var(--line); border-left:5px solid #6b7280; border-radius:14px; padding:20px; background:white; box-shadow:0 7px 20px rgba(31,41,55,.05); }
.recommendation-card.priority-high { border-left-color:#c23b42; }
.recommendation-card.priority-medium { border-left-color:#d97706; }
.recommendation-card.priority-low { border-left-color:#3975a7; }
.recommendation-top { display:flex; justify-content:space-between; gap:10px; align-items:center; flex-wrap:wrap; }
.recommendation-top > div { display:flex; gap:7px; flex-wrap:wrap; }
.recommendation-card h3 { margin:14px 0 7px; color:var(--navy); font-size:18px; }
.recommendation-summary { margin:0 0 15px; color:#394b59; font-weight:650; }
.recommendation-grid { display:grid; grid-template-columns:1fr 1.4fr; gap:15px; }
.recommendation-grid > div { padding:13px; border-radius:10px; background:#f7f9fa; border:1px solid #e1e7eb; }
.recommendation-grid strong { display:block; margin-bottom:5px; font-size:11px; text-transform:uppercase; color:#52616b; }
.recommendation-grid p { margin:0; font-size:12px; line-height:1.6; }
.impact-box { margin-top:12px; padding:10px 12px; border-radius:9px; background:#edf7f1; border:1px solid #c7dfd0; color:#285c3e; font-size:12px; }
.recommendation-actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:15px; }
@media(max-width:820px){ .onboarding-hero{flex-direction:column;align-items:flex-start}.recommendation-grid{grid-template-columns:1fr}.onboarding-step{max-width:none} }

.topbar-actions{display:flex;align-items:center;gap:12px}.org-switcher select{min-width:190px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fff}.selection-list{display:grid;gap:10px}.selection-row{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.selection-row input{width:auto;margin-top:4px}.selection-row span{display:grid;gap:3px}.selection-row small{color:var(--muted)}.event-conversion{background:#dcfce7;color:#166534}.event-activity{background:#e0f2fe;color:#075985}.grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}code{white-space:normal;word-break:break-all}@media(max-width:1100px){.grid-6,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.topbar-actions{align-items:flex-end;flex-direction:column}.org-switcher select{min-width:150px}.grid-6,.grid-4{grid-template-columns:1fr}}

/* Navigation V8 : categories, etat actif et defilement confortable */
.sidebar { display:flex; flex-direction:column; padding:22px 14px 16px; overflow:hidden; }
.sidebar-head { flex:0 0 auto; padding:0 2px; }
.brand { margin-bottom:26px; }
.nav { flex:1 1 auto; min-height:0; display:block; overflow-y:auto; overflow-x:hidden; padding:2px 2px 16px; scrollbar-width:thin; scrollbar-color:rgba(255,255,255,.28) transparent; }
.nav::-webkit-scrollbar { width:7px; }
.nav::-webkit-scrollbar-thumb { background:rgba(255,255,255,.24); border-radius:999px; }
.nav-section { margin:0 0 8px; border:1px solid transparent; border-radius:12px; }
.nav-section.is-current { background:rgba(255,255,255,.045); border-color:rgba(255,255,255,.08); }
.nav-section summary { list-style:none; display:grid; grid-template-columns:22px minmax(0,1fr) 18px; gap:8px; align-items:center; min-height:42px; padding:9px 10px; border-radius:10px; color:#f6fbff; cursor:pointer; font-size:12px; font-weight:850; letter-spacing:.025em; user-select:none; }
.nav-section summary::-webkit-details-marker { display:none; }
.nav-section summary:hover { background:rgba(255,255,255,.08); }
.nav-section-icon { display:grid; place-items:center; width:22px; height:22px; border-radius:7px; background:rgba(255,255,255,.10); color:#fff3d2; font-size:12px; }
.nav-chevron { justify-self:end; color:#b9ccdc; font-size:18px; line-height:1; transition:transform .18s ease; }
.nav-section[open] .nav-chevron { transform:rotate(90deg); }
.nav-items { display:grid; gap:3px; padding:2px 5px 7px 32px; }
.nav .nav-items a { position:relative; min-height:36px; padding:8px 10px 8px 13px; border-radius:8px; color:#d8e5ef; font-size:12.5px; font-weight:650; line-height:1.35; }
.nav .nav-items a::before { content:""; position:absolute; left:0; top:10px; bottom:10px; width:3px; border-radius:999px; background:transparent; }
.nav .nav-items a:hover { background:rgba(255,255,255,.08); color:#fff; }
.nav .nav-items a.active { background:#fff; color:var(--navy-2); box-shadow:0 8px 20px rgba(0,0,0,.13); font-weight:850; }
.nav .nav-items a.active::before { background:var(--blue); }
.sidebar-footer { position:static; flex:0 0 auto; padding:12px 2px 0; border-top:1px solid rgba(255,255,255,.10); }
.sidebar-footer .btn { background:rgba(255,255,255,.95); }

@media (max-width: 980px) {
  .app-shell { grid-template-columns:220px 1fr; }
  .nav .nav-items a { font-size:12px; }
}

/* GestiConnect Plateforme V10 - suite complète */
.portal-shell { min-height:100vh; background:#f5f7fa; }
.portal-header { display:flex; justify-content:space-between; gap:20px; align-items:center; padding:18px 28px; color:white; background:linear-gradient(120deg,#0d2a20,#2e6a4e); }
.portal-header div { display:grid; gap:3px; }
.portal-header span { color:#dceee4; font-size:12px; }
.portal-main { max-width:1180px; margin:0 auto; padding:30px 20px 60px; }
.alert-chip { padding:7px 10px; border-radius:999px; background:#fff3cd; color:#7a4a00; font-size:11px; font-weight:850; }
.row-warning { background:#fff9e8; }
.alert-card { border-left:6px solid #64748b; }
.alert-severity-danger { border-left-color:#c9363e; }
.alert-severity-warning { border-left-color:#d97706; }
.alert-severity-info { border-left-color:#2563eb; }
.mobile-quick-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.nav-section-icon { display:inline-grid; place-items:center; width:20px; }
@media (max-width:820px){.portal-header{padding:15px;align-items:flex-start;flex-direction:column}.portal-main{padding:18px 12px 40px}.mobile-quick-actions{grid-template-columns:1fr}}

/* GestiConnect V10 */
.planning-controls{padding:18px;margin-bottom:18px}.planning-view-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.planning-filter-form{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;align-items:end}.planning-filter-actions{display:flex;gap:8px}.day-timeline{display:flex;flex-direction:column}.hour-row{display:grid;grid-template-columns:82px 1fr;min-height:72px;border-bottom:1px solid var(--border,#dfe6e1)}.hour-label{padding:12px;font-weight:800;color:#64756d;border-right:1px solid var(--border,#dfe6e1)}.hour-content{position:relative;padding:8px;display:flex;gap:8px;flex-wrap:wrap}.hour-content .calendar-event{min-width:260px;max-width:420px}.hour-add{position:absolute;right:6px;top:5px;border:0;border-radius:50%;width:25px;height:25px;cursor:pointer}.week-planning-grid{display:grid;grid-template-columns:repeat(7,minmax(180px,1fr));overflow-x:auto}.week-column{min-height:540px;border-right:1px solid #dfe6e1;padding:8px}.week-column.today{background:#fff8d8}.week-column-head{position:sticky;top:0;background:inherit;padding:8px;display:flex;flex-direction:column;gap:3px;z-index:1}.week-column-events{display:flex;flex-direction:column;gap:7px}.mobile-sync-state{padding:10px 14px;background:#e8f7ef;border:1px solid #b8dfca;border-radius:10px;margin-bottom:14px}.mobile-sync-state.is-offline{background:#fff0d5;border-color:#edc66c}.mobile-job-grid{align-items:start}.mobile-job-card .card-header{align-items:flex-start}.mobile-job-address{display:flex;flex-direction:column;gap:4px;padding:12px;background:#f7f9f8;border-radius:10px;margin-bottom:12px}.mobile-action-grid{display:flex;flex-wrap:wrap;gap:8px}.mobile-tools{border-top:1px solid #e1e7e3;padding:10px 0}.mobile-tools summary{font-weight:800;cursor:pointer}.mobile-collapsible{margin-top:10px}.dictation-field{display:flex;gap:8px;align-items:flex-start}.dictation-field textarea{flex:1}.signature-canvas{width:100%;height:180px;border:2px dashed #9fb1a8;border-radius:10px;background:#fff;touch-action:none}.attachment-strip{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.timeline-list{padding-left:20px}.portal-progress-list{display:flex;flex-direction:column;gap:10px}.portal-progress-item{display:flex;justify-content:space-between;gap:12px;padding:12px;border:1px solid #dfe6e1;border-radius:10px}.portal-sign-form{padding:12px;background:#f7f9f8;border-radius:10px;margin-top:8px}.reminder-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.reminder-item{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:9px;border:1px solid #dfe6e1;border-radius:8px}.profit-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.inline-form{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.inline-form select{min-width:120px}pre{white-space:pre-wrap;word-break:break-word;background:#f5f7f6;padding:10px;border-radius:8px}
@media(max-width:1100px){.planning-filter-form{grid-template-columns:repeat(3,1fr)}.week-planning-grid{grid-template-columns:repeat(7,220px)}}@media(max-width:700px){.planning-filter-form{grid-template-columns:1fr}.hour-row{grid-template-columns:58px 1fr}.hour-content .calendar-event{min-width:0;width:100%}.mobile-job-grid{grid-template-columns:1fr!important}.portal-progress-item{flex-direction:column}.dictation-field{flex-direction:column}.planning-view-tabs .btn{flex:1 1 45%}}

/* GestiConnect Plateforme V12 — lisibilité, flotte, attribution et IA */
.ff-kpis { margin-bottom:20px; }
.ff-panel[hidden] { display:none!important; }
.ff-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.ff-layout-split { align-items:start; }
.ff-inline-wrap { display:flex; flex-wrap:wrap; align-items:center; gap:7px; min-width:0; }
.ff-page-head-mobile { align-items:flex-start; }
.ff-table { width:100%; table-layout:auto; }
.ff-table th, .ff-table td { max-width:320px; vertical-align:top; overflow-wrap:anywhere; word-break:normal; }
.ff-table td strong, .ff-table td a { overflow-wrap:anywhere; }
.row-warning { background:#fff9e8; }
.badge-warning { background:#fff1bf; color:#7a4b00; }
.empty.compact { padding:18px; }

.ff-fleet-card { min-width:0; }
.ff-vehicle-title { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; margin-bottom:15px; }
.ff-vehicle-title span { color:var(--muted); font-weight:800; }
.ff-data-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.ff-data-grid > div { min-width:0; padding:12px; border:1px solid var(--line); border-radius:10px; background:#f8faf9; }
.ff-data-grid span { display:block; margin-bottom:4px; color:var(--muted); font-size:10px; font-weight:850; text-transform:uppercase; letter-spacing:.04em; }
.ff-data-grid strong { display:block; color:var(--navy); overflow-wrap:anywhere; }

.ff-mobile-filter { margin-bottom:18px; }
.ff-mobile-filter .filter-bar { align-items:end; }
.ff-filter-submit { display:flex; align-items:flex-end; }
.ff-mobile-agenda { display:grid; gap:18px; }
.ff-mobile-card-head { display:grid; grid-template-columns:105px minmax(0,1fr) minmax(150px,auto); gap:16px; align-items:center; padding:17px 19px; border-bottom:1px solid var(--line); }
.ff-mobile-time { display:grid; gap:2px; padding:10px; border-radius:11px; background:#f3f6f5; text-align:center; }
.ff-mobile-time strong { font-size:24px; color:var(--navy); }
.ff-mobile-time span { color:var(--muted); font-size:10px; }
.ff-mobile-title { min-width:0; }
.ff-mobile-title h3 { margin:7px 0 3px; color:var(--navy); font-size:17px; overflow-wrap:anywhere; }
.ff-mobile-title p { margin:0; color:var(--muted); }
.ff-mobile-techs { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.ff-mobile-techs > span:not(.badge) { padding:6px 9px; border-radius:999px; background:#e8f4ee; color:#1f6045; font-size:10px; font-weight:850; }
.ff-mobile-body { display:grid; gap:16px; }
.ff-mobile-info-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:11px; }
.ff-mobile-info-grid > div { min-width:0; padding:13px; border:1px solid var(--line); border-radius:11px; background:#fafcfc; }
.ff-mobile-info-grid span { display:block; margin-bottom:5px; color:var(--muted); font-size:10px; font-weight:850; text-transform:uppercase; }
.ff-mobile-info-grid strong, .ff-mobile-info-grid a, .ff-mobile-info-grid small { display:block; overflow-wrap:anywhere; }
.ff-mobile-info-grid a { margin-top:5px; font-size:11px; }
.ff-action-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.ff-action-grid form, .ff-action-grid button { min-width:0; width:100%; }
.ff-mobile-panel { padding:15px; border:1px solid #abd6bc; border-radius:12px; background:#f0faf4; }
.ff-mobile-tools-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.ff-mobile-tools-grid details { min-width:0; }
.ff-timeline { margin-top:0; }
.ff-mobile-empty { min-height:240px; display:grid; place-content:center; text-align:center; }

.ff-attribution-search textarea, .ff-filter-card textarea { resize:vertical; }
.ff-list { display:grid; gap:8px; }
.ff-list-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px; border:1px solid var(--line); border-radius:10px; color:inherit; }
.ff-list-row:hover, .ff-list-row.is-selected { text-decoration:none; border-color:#77a88e; background:#f3faf6; }
.ff-list-row > span:first-child { min-width:0; display:grid; gap:3px; }
.ff-list-row small { color:var(--muted); overflow-wrap:anywhere; }
.page-subhead { display:flex; align-items:center; justify-content:space-between; gap:15px; margin:26px 0 16px; }
.page-subhead h3 { margin:0 0 4px; color:var(--navy); }
.page-subhead p { margin:0; color:var(--muted); overflow-wrap:anywhere; }
.ff-attribution-table { min-width:1180px; }

.ff-filter-card { margin-bottom:18px; }
.ff-filter-grid { display:grid; grid-template-columns:minmax(240px,2fr) repeat(3,minmax(150px,1fr)) auto; gap:12px; align-items:end; }
.ff-conversion-list { display:grid; gap:16px; }
.ff-conversion-card { overflow:hidden; min-width:0; }
.ff-conversion-top { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 17px; border-bottom:1px solid var(--line); background:#fafcfc; }
.ff-conversion-date { color:var(--muted); font-size:11px; white-space:nowrap; }
.ff-conversion-main { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; }
.ff-conversion-main section { min-width:0; padding:16px; border-right:1px solid var(--line); }
.ff-conversion-main section:last-child { border-right:0; }
.ff-conversion-main h3 { margin:5px 0; color:var(--navy); font-size:16px; overflow-wrap:anywhere; }
.ff-conversion-main strong, .ff-conversion-main p { display:block; margin:5px 0 0; overflow-wrap:anywhere; }
.ff-label { display:block; color:var(--muted); font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.ff-conversion-links { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; padding:14px 16px; border-top:1px solid var(--line); background:#f8faf9; }
.ff-conversion-links > div { min-width:0; display:grid; gap:3px; }
.ff-conversion-links span { color:var(--muted); font-size:9px; font-weight:850; text-transform:uppercase; }
.ff-conversion-links strong, .ff-conversion-links small, .ff-conversion-links a { overflow-wrap:anywhere; }
.ff-conversion-money { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) auto; gap:12px; align-items:center; padding:14px 16px; border-top:1px solid var(--line); }
.ff-conversion-money > div { min-width:0; display:grid; gap:3px; }
.ff-conversion-money span { color:var(--muted); font-size:9px; font-weight:850; text-transform:uppercase; }
.ff-mini-conversions { display:grid; }
.ff-mini-conversion { display:grid; grid-template-columns:150px minmax(0,1fr) 170px; gap:12px; align-items:center; padding:12px 16px; border-bottom:1px solid var(--line); color:inherit; }
.ff-mini-conversion:last-child { border-bottom:0; }
.ff-mini-conversion:hover { text-decoration:none; background:#f8faf9; }
.ff-mini-conversion > span { min-width:0; display:grid; gap:3px; }
.ff-mini-conversion strong, .ff-mini-conversion small { overflow-wrap:anywhere; }

.ff-insight-list { display:grid; gap:16px; }
.ff-insight { border-left:5px solid #64748b; }
.ff-insight.priority-high { border-left-color:#dc2626; }
.ff-insight.priority-medium { border-left-color:#d97706; }
.ff-insight.priority-low { border-left-color:#2563eb; }
.ff-insight h3 { margin:0 0 15px; color:var(--navy); }
.ff-ai-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.ff-ai-grid > div { min-width:0; padding:13px; border:1px solid var(--line); border-radius:10px; background:#fafcfc; }
.ff-ai-grid > div > span { display:block; margin-bottom:6px; color:var(--muted); font-size:10px; font-weight:900; text-transform:uppercase; }
.ff-ai-grid p { margin:0; overflow-wrap:anywhere; }

@media (max-width:1200px) {
  .ff-mobile-info-grid, .ff-conversion-main, .ff-conversion-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ff-conversion-main section:nth-child(2) { border-right:0; }
  .ff-filter-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ff-filter-grid .ff-filter-submit { grid-column:1/-1; }
}
@media (max-width:900px) {
  .ff-card-grid, .ff-mobile-tools-grid, .ff-ai-grid { grid-template-columns:1fr; }
  .ff-mobile-card-head { grid-template-columns:90px minmax(0,1fr); }
  .ff-mobile-techs { grid-column:1/-1; justify-content:flex-start; }
  .ff-action-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ff-conversion-money { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ff-mini-conversion { grid-template-columns:1fr; }
}
@media (max-width:620px) {
  .ff-data-grid, .ff-mobile-info-grid, .ff-conversion-main, .ff-conversion-links, .ff-conversion-money, .ff-filter-grid { grid-template-columns:1fr; }
  .ff-mobile-card-head { grid-template-columns:1fr; align-items:start; }
  .ff-mobile-time { width:100%; }
  .ff-action-grid { grid-template-columns:1fr; }
  .ff-conversion-top, .page-subhead { align-items:flex-start; flex-direction:column; }
  .ff-conversion-date { white-space:normal; }
  .ff-conversion-main section { border-right:0; border-bottom:1px solid var(--line); }
  .ff-conversion-main section:last-child { border-bottom:0; }
}

/* GestiConnect Plateforme V12 — application terrain, visite commerciale et administration SaaS */
.grid-5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.field-help{display:block;margin-top:5px;color:var(--muted);font-size:10px;line-height:1.4}
.site-address-field{transition:opacity .18s ease,filter .18s ease}
.site-address-field.is-address-locked{opacity:.68}
.site-address-field.is-address-locked input{background:#e8ecea!important;color:#63706a!important;border-color:#cfd7d3!important;cursor:not-allowed}
.ff-badge-sales{background:#f3e8ff;color:#6b21a8;border-color:#d8b4fe}
.ff-sales-person{background:#f3e8ff!important;color:#6b21a8!important}
.nav-section-platform{background:linear-gradient(135deg,rgba(242,184,65,.18),rgba(255,255,255,.03));border-color:rgba(242,184,65,.35)}

.ff-mobile-hero{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:22px;align-items:stretch;margin-bottom:16px;padding:26px;border:1px solid #cddbd4;border-radius:20px;background:linear-gradient(135deg,#123d2e 0%,#1f6549 58%,#d9a62e 150%);box-shadow:0 16px 34px rgba(18,61,46,.14);color:#fff}
.ff-mobile-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}
.ff-mobile-hero-copy h2{margin:5px 0 8px;color:#fff;font-size:30px;line-height:1.15}
.ff-mobile-hero-copy p{max-width:780px;margin:0;color:#dcece5;line-height:1.65}
.ff-eyebrow{font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#ffe7a7}
.ff-mobile-hero-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.ff-mobile-profile{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid rgba(255,255,255,.22);border-radius:16px;background:rgba(255,255,255,.10);backdrop-filter:blur(8px);min-width:0}
.ff-mobile-avatar{display:grid;place-items:center;flex:0 0 58px;width:58px;height:58px;border-radius:18px;background:#fff3cf;color:#173e30;font-size:20px;font-weight:950}
.ff-mobile-profile>div:last-child{min-width:0;display:grid;gap:3px}
.ff-mobile-profile span{font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#cfe6dc}
.ff-mobile-profile strong,.ff-mobile-profile small{overflow-wrap:anywhere}
.ff-mobile-profile strong{font-size:16px}.ff-mobile-profile small{color:#e6f2ed}
.ff-mobile-filter-form{display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,.55fr) auto;gap:14px;align-items:end}
.ff-mobile-section{margin:28px 0}
.ff-mobile-section-head{display:flex;align-items:center;justify-content:space-between;margin:0 0 12px}
.ff-mobile-section-head>div{display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:10px;align-items:center}
.ff-mobile-section-head span{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#173e30;color:#fff;font-size:17px;font-weight:950}
.ff-mobile-section-head h3{margin:0;color:var(--navy);font-size:19px}.ff-mobile-section-head p{margin:2px 0 0;color:var(--muted);font-size:11px}
.ff-mobile-section-overdue .ff-mobile-section-head span{background:#b91c1c}.ff-mobile-section-completed .ff-mobile-section-head span{background:#16804f}
.ff-field-card{position:relative;overflow:hidden;border:1px solid #d7e1dc;border-radius:17px;background:#fff;box-shadow:0 10px 28px rgba(18,48,37,.065)}
.ff-field-status-line{height:6px;background:#d9a62e}.ff-field-card.intervention-assigned .ff-field-status-line{background:#dc2626}.ff-field-card.intervention-in_progress .ff-field-status-line{background:#2563eb}.ff-field-card.intervention-completed .ff-field-status-line{background:#16a34a}
.ff-field-card-head{display:grid;grid-template-columns:70px minmax(0,1fr) minmax(160px,auto);gap:16px;align-items:center;padding:17px 19px;border-bottom:1px solid #e3e9e6;background:linear-gradient(180deg,#fff,#fbfdfc)}
.ff-field-date{display:grid;place-items:center;padding:8px;border-radius:13px;background:#f0f5f2;color:#173e30}.ff-field-date span,.ff-field-date small{font-size:9px;font-weight:850;text-transform:uppercase;color:#687970}.ff-field-date strong{font-size:27px;line-height:1}
.ff-field-heading{min-width:0}.ff-field-heading h3{margin:7px 0 3px;color:#153b2e;font-size:18px;overflow-wrap:anywhere}.ff-field-heading p{margin:0;color:#66766e;font-size:11px}.ff-client-request{display:block;margin-top:6px;color:#7c5d10;font-weight:750}
.ff-field-assignees{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.ff-field-assignees>span:not(.badge){padding:7px 10px;border-radius:999px;background:#e7f4ed;color:#195f43;font-size:10px;font-weight:850}
.ff-field-card-body{display:grid;gap:15px;padding:18px}
.ff-field-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:stretch}
.ff-field-summary-main{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ff-field-summary-main>div{min-width:0;padding:13px;border:1px solid #dfe7e3;border-radius:12px;background:#f8fbf9}.ff-field-summary-main span,.ff-field-request span{display:block;margin-bottom:5px;color:#6f7d76;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.ff-field-summary-main strong,.ff-field-summary-main a,.ff-field-summary-main small{display:block;overflow-wrap:anywhere}.ff-field-summary-main a{margin-top:4px;font-weight:850}.ff-field-summary-main small{margin-top:4px;color:#6f7d76}
.ff-field-quick-actions{display:grid;grid-template-columns:1fr;gap:7px;min-width:145px}.ff-field-quick-actions .btn{justify-content:center}
.ff-field-request{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ff-field-request>div{min-width:0;padding:13px;border-radius:12px;background:#fff8e6;border:1px solid #ecd99f}.ff-field-request strong,.ff-field-request p,.ff-field-request small{display:block;margin:0;overflow-wrap:anywhere}.ff-field-risk{background:#fff0f0!important;border-color:#efb1b1!important}
.ff-field-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.ff-field-progress form,.ff-field-progress .btn{width:100%;min-width:0}.ff-field-submit{display:flex;align-items:flex-end}
.ff-field-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ff-field-tools details{min-width:0;border:1px solid #dfe7e3;border-radius:13px;background:#fbfdfc;overflow:hidden}.ff-field-tools summary{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;padding:13px;cursor:pointer;list-style:none}.ff-field-tools summary::-webkit-details-marker{display:none}.ff-field-tools summary>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#eaf3ee;font-size:16px}.ff-field-tools summary>div{min-width:0;display:grid;gap:2px}.ff-field-tools summary strong,.ff-field-tools summary small{overflow-wrap:anywhere}.ff-field-tools summary small{color:#6d7c75;font-size:9px}.ff-field-tools details[open] summary{background:#f0f7f3;border-bottom:1px solid #dfe7e3}.ff-tool-content{padding:14px}.ff-field-timeline{border-top:1px solid #dfe7e3;padding-top:12px}.ff-field-timeline summary{font-weight:900;cursor:pointer}.ff-field-timeline li{display:grid;grid-template-columns:130px minmax(0,1fr);gap:7px 12px;padding:8px 0}.ff-field-timeline li small{grid-column:2;color:#66766e}

.ff-platform-head{align-items:flex-start}.ff-platform-section{margin-bottom:18px}.ff-platform-grid{align-items:start}.ff-platform-actions{display:grid;gap:8px;min-width:300px}.ff-platform-actions .inline-form{display:grid;grid-template-columns:1fr 1fr auto}.ff-platform-user-list,.ff-platform-events{display:grid;max-height:650px;overflow:auto}.ff-platform-user,.ff-platform-events article{display:flex;justify-content:space-between;gap:12px;padding:13px 16px;border-bottom:1px solid #e1e8e4}.ff-platform-user:last-child,.ff-platform-events article:last-child{border-bottom:0}.ff-platform-user>div:first-child,.ff-platform-events article>div{min-width:0;display:grid;gap:3px}.ff-platform-user span,.ff-platform-user small,.ff-platform-events span,.ff-platform-events small{overflow-wrap:anywhere}.ff-platform-user small,.ff-platform-events small{color:#6c7a73}.ff-platform-user-state{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px}.ff-platform-events time{white-space:nowrap;color:#6c7a73;font-size:10px}

@media(max-width:1200px){.grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}.ff-mobile-hero{grid-template-columns:1fr}.ff-field-tools{grid-template-columns:repeat(2,minmax(0,1fr))}.ff-field-summary{grid-template-columns:1fr}.ff-field-quick-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.ff-platform-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}.ff-field-card-head{grid-template-columns:60px minmax(0,1fr)}.ff-field-assignees{grid-column:1/-1;justify-content:flex-start}.ff-field-summary-main,.ff-field-request{grid-template-columns:1fr}.ff-field-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.ff-mobile-filter-form{grid-template-columns:1fr 1fr}.ff-mobile-filter-form .ff-filter-submit{grid-column:1/-1}.ff-platform-grid{grid-template-columns:1fr}.ff-platform-actions .inline-form{grid-template-columns:1fr}}
@media(max-width:620px){.grid-5{grid-template-columns:1fr 1fr}.ff-mobile-hero{padding:19px}.ff-mobile-hero-copy h2{font-size:24px}.ff-mobile-profile{align-items:flex-start}.ff-field-card-head{grid-template-columns:1fr}.ff-field-date{grid-template-columns:auto auto auto;justify-content:start;gap:6px}.ff-field-date strong{font-size:20px}.ff-field-assignees{grid-column:auto}.ff-field-quick-actions,.ff-field-tools,.ff-field-progress,.ff-mobile-filter-form{grid-template-columns:1fr}.ff-platform-user,.ff-platform-events article{flex-direction:column}.ff-platform-user-state{justify-content:flex-start}.ff-platform-events time{white-space:normal}}

/* V12 — filtres du journal global */
.ff-platform-event-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr) auto;gap:12px;align-items:end;margin:0 0 16px}
.ff-pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:16px;flex-wrap:wrap}
@media(max-width:900px){.ff-platform-event-filters{grid-template-columns:1fr 1fr}.ff-platform-event-filters .ff-field-submit{grid-column:1/-1}}
@media(max-width:620px){.ff-platform-event-filters{grid-template-columns:1fr}}

/* GestiConnect V13 - administration plateforme et formulaires web */
.platform-body,.platform-login-body,.account-status-body{margin:0;background:#f3f6fb;color:#17263a;font-family:Inter,Arial,sans-serif}.platform-shell{min-height:100vh;display:grid;grid-template-columns:270px minmax(0,1fr)}.platform-sidebar{position:sticky;top:0;height:100vh;background:#12243a;color:#fff;padding:24px 18px;display:flex;flex-direction:column;box-sizing:border-box}.platform-brand{display:flex;gap:12px;align-items:center;padding:8px 8px 24px}.platform-brand>span,.platform-login-mark{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#2f74ff;color:#fff;font-weight:900}.platform-brand strong{display:block;font-size:18px}.platform-brand small{display:block;color:#a8bbd1;margin-top:3px}.platform-sidebar nav{display:grid;gap:6px}.platform-sidebar nav a{color:#dce7f4;text-decoration:none;padding:12px 14px;border-radius:10px;font-weight:700;font-size:14px}.platform-sidebar nav a:hover,.platform-sidebar nav a.active{background:#243c58;color:#fff}.platform-logout{margin-top:auto}.platform-main{min-width:0}.platform-topbar{background:#fff;border-bottom:1px solid #dfe6ef;padding:25px 30px;display:flex;justify-content:space-between;align-items:center;gap:20px}.platform-topbar h1{font-size:25px;margin:0 0 5px}.platform-topbar p{margin:0;color:#66758a}.platform-content{padding:26px 30px 50px;max-width:1600px}.platform-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.platform-kpi{display:block;background:#fff;border:1px solid #dfe6ef;border-radius:16px;padding:18px;text-decoration:none;color:#17263a;box-shadow:0 7px 20px rgba(29,49,73,.05)}.platform-kpi span,.platform-kpi small{display:block;color:#6a788b}.platform-kpi strong{display:block;font-size:30px;margin:8px 0}.platform-kpi.pending{border-top:4px solid #f3b21a}.platform-kpi.active{border-top:4px solid #27a765}.platform-kpi.suspended,.platform-kpi.rejected{border-top:4px solid #d94c4c}.platform-filter-card{margin-top:18px;padding:18px}.platform-filter-form{display:grid;grid-template-columns:minmax(250px,1fr) 230px auto auto;align-items:end;gap:12px}.platform-org-list{display:grid;gap:14px;padding:16px}.platform-org-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,440px);gap:18px;border:1px solid #dfe6ef;border-left:6px solid #aab6c4;border-radius:14px;padding:18px;background:#fff}.platform-org-card.status-pending{border-left-color:#f3b21a}.platform-org-card.status-active,.platform-org-card.status-trial{border-left-color:#27a765}.platform-org-card.status-suspended,.platform-org-card.status-rejected{border-left-color:#d94c4c}.platform-org-title{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.platform-org-title h3{margin:0 0 5px;font-size:19px}.platform-org-title p{margin:0;color:#6a788b}.platform-org-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.platform-org-meta span{background:#f2f5f8;border-radius:999px;padding:7px 10px;font-size:12px;color:#526174}.platform-org-actions{display:grid;gap:10px}.platform-status-form{display:grid;grid-template-columns:160px minmax(0,1fr);gap:8px}.platform-status-form button{grid-column:1/-1}.platform-plan-form{display:flex;gap:8px}.platform-note{margin-top:12px;padding:10px 12px;background:#fff7d9;border:1px solid #f1d67b;border-radius:9px;color:#69540e}.platform-status{display:inline-flex;align-items:center;border-radius:999px;padding:7px 10px;background:#edf1f5;font-size:12px;font-weight:800;white-space:nowrap}.platform-status.status-pending{background:#fff1bc;color:#795900}.platform-status.status-active,.platform-status.status-trial,.platform-status.status-converted{background:#dff6e9;color:#17673d}.platform-status.status-suspended,.platform-status.status-rejected,.platform-status.status-spam{background:#ffe1e1;color:#8d2f2f}.platform-status.status-new{background:#e2edff;color:#215ba8}.platform-status.status-contacted,.platform-status.status-qualified{background:#e9e1ff;color:#5e3c9c}.platform-login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,620px) minmax(0,1fr)}.platform-login-card{padding:60px clamp(30px,7vw,90px);background:#fff;display:flex;flex-direction:column;justify-content:center}.platform-login-card h1{font-size:36px;margin:8px 0 12px}.platform-login-card .subtitle{max-width:560px;color:#647286;line-height:1.65}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:900;color:#2f74ff;margin:20px 0 0}.platform-login-visual{background:linear-gradient(135deg,#12243a,#245281);color:#fff;padding:70px;display:flex;flex-direction:column;justify-content:center}.platform-login-visual h2{font-size:38px;max-width:600px}.platform-login-visual li{margin:17px 0;font-size:17px;color:#dbe8f8}.platform-login-links{text-align:center;margin-top:20px}.account-status-body{display:grid;place-items:center;min-height:100vh;padding:25px}.account-status-card{max-width:650px;background:#fff;padding:42px;border:1px solid #dfe6ef;border-radius:20px;box-shadow:0 20px 60px rgba(25,44,68,.12)}.account-status-card h1{margin-bottom:12px}.account-status-card h2{margin-top:28px}.platform-return-link{display:block;background:#f0b323;color:#211a08!important;margin:0 6px 12px;padding:12px 14px;border-radius:10px;text-decoration:none;font-weight:900}.lead-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.lead-kpi{background:#fff;border:1px solid #dfe6ef;border-radius:13px;padding:14px;text-decoration:none;color:#17263a}.lead-kpi span{display:block;color:#68778a;font-size:12px}.lead-kpi strong{display:block;font-size:24px;margin-top:7px}.lead-filter-form{padding:18px;display:grid;grid-template-columns:minmax(260px,1fr) 230px auto;align-items:end;gap:12px}.lead-card-list{display:grid;gap:14px;margin-top:18px}.lead-card{background:#fff;border:1px solid #dfe6ef;border-radius:16px;padding:18px;box-shadow:0 7px 20px rgba(29,49,73,.04)}.lead-card-head{display:flex;justify-content:space-between;gap:15px}.lead-card-head h3{margin:9px 0 5px}.lead-card-head h3 a{text-decoration:none;color:#17263a}.lead-card-head p{margin:0;color:#65758a}.lead-card-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:15px 0}.lead-card-grid>div{background:#f5f7fa;border-radius:10px;padding:10px;min-width:0}.lead-card-grid small,.lead-card-grid strong{display:block}.lead-card-grid small{color:#6c7a8c;margin-bottom:4px}.lead-card-grid strong{overflow-wrap:anywhere}.lead-message,.lead-full-message{white-space:pre-wrap;line-height:1.65;color:#445267}.lead-mini-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px}.lead-mini-card{border:1px solid #dfe6ef;border-radius:13px;padding:14px;min-width:0}.lead-mini-card h3{margin:10px 0 5px}.lead-mini-card p{color:#65758a;min-height:42px}.lead-prefill-banner{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 17px;margin-bottom:16px;background:#eaf3ff;border:1px solid #9ec5ff;border-radius:12px}.lead-prefill-banner strong,.lead-prefill-banner span{display:block}.lead-prefill-banner span{font-size:13px;color:#53647a;margin-top:4px}.break-word{overflow-wrap:anywhere}.detail-list>div{display:grid;grid-template-columns:145px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid #edf0f4}.detail-list span{color:#718095}.detail-list strong{overflow-wrap:anywhere}
@media(max-width:1200px){.platform-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.platform-org-card{grid-template-columns:1fr}.lead-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lead-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.lead-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.platform-shell{display:block}.platform-sidebar{position:relative;height:auto}.platform-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-topbar{align-items:flex-start;flex-direction:column;padding:20px}.platform-content{padding:18px}.platform-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-filter-form,.lead-filter-form{grid-template-columns:1fr}.platform-status-form{grid-template-columns:1fr}.platform-status-form button{grid-column:auto}.platform-login-shell{display:block}.platform-login-visual{display:none}.platform-login-card{min-height:100vh;padding:35px 24px}.lead-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-mini-grid{grid-template-columns:1fr}}
@media(max-width:520px){.platform-kpi-grid,.lead-kpi-grid,.lead-card-grid{grid-template-columns:1fr}.platform-org-title,.lead-card-head,.lead-prefill-banner{flex-direction:column}.platform-plan-form{display:grid}.detail-list>div{grid-template-columns:1fr}.platform-sidebar nav{grid-template-columns:1fr}}
.platform-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0 0;flex-wrap:wrap}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* GestiConnect V15 - configuration multi-secteurs */
.onboarding-form { display:grid; gap:22px; padding-bottom:92px; }
.onboarding-section-card { overflow:visible; }
.onboarding-card-header { align-items:center; gap:18px; }
.onboarding-card-header > div:first-child { display:flex; align-items:center; gap:13px; }
.onboarding-card-header h2 { margin:0 0 3px; }
.onboarding-card-header p { margin:0; color:var(--muted); font-size:12px; }
.step-number { display:grid; place-items:center; flex:0 0 34px; width:34px; height:34px; border-radius:11px; background:#163b2d; color:#fff; font-weight:900; }
.header-actions { display:flex; gap:8px; flex-wrap:wrap; }
.business-search { display:flex; align-items:center; gap:14px; margin-bottom:18px; }
.business-search input { flex:1; min-width:0; padding:13px 15px; border-radius:12px; background:#f8fafb; }
.business-search span { color:var(--muted); font-size:12px; white-space:nowrap; }
.sector-config-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; align-items:start; }
.sector-config-grid.compact { grid-template-columns:repeat(3,minmax(0,1fr)); }
.sector-config-card { overflow:hidden; border:1px solid #d8e1e8; border-radius:14px; background:#fff; box-shadow:0 5px 16px rgba(20,40,55,.035); }
.sector-config-card.is-selected { border-color:#79a58d; box-shadow:0 8px 22px rgba(22,59,45,.08); }
.sector-config-card[hidden] { display:none; }
.sector-config-card > summary { display:grid; grid-template-columns:minmax(0,1fr) 22px; align-items:center; gap:8px; min-height:64px; padding:12px 14px; cursor:pointer; list-style:none; background:#fbfcfd; }
.sector-config-card > summary::-webkit-details-marker { display:none; }
.sector-config-card[open] > summary { border-bottom:1px solid #e5eaee; background:#f6faf7; }
.sector-main-toggle { display:flex; align-items:flex-start; gap:10px; min-width:0; cursor:pointer; }
.sector-main-toggle input { width:18px; height:18px; margin-top:2px; flex:0 0 auto; }
.sector-main-toggle span { display:grid; min-width:0; gap:4px; }
.sector-main-toggle strong { color:var(--navy); font-size:13px; line-height:1.35; }
.sector-main-toggle small { color:var(--muted); font-size:11px; }
.sector-arrow { justify-self:end; font-size:22px; color:#6b7d8b; transition:transform .18s ease; }
.sector-config-card[open] .sector-arrow { transform:rotate(90deg); }
.sector-config-body { padding:14px; }
.sector-toolbar { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:12px; }
.activity-check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; }
.activity-check { display:flex; align-items:flex-start; gap:8px; min-width:0; padding:9px 10px; border:1px solid #e2e8ed; border-radius:10px; background:#fff; cursor:pointer; font-size:12px; line-height:1.35; }
.activity-check:hover { border-color:#9ab3a4; background:#f8fbf9; }
.activity-check:has(input:checked) { border-color:#70a083; background:#edf7f1; color:#174d35; font-weight:750; }
.activity-check[hidden] { display:none; }
.activity-check input { flex:0 0 auto; width:16px; height:16px; margin-top:1px; }
.module-config-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.module-group-card { padding:15px; border:1px solid #dce4e9; border-radius:14px; background:#fbfcfd; }
.module-group-card.is-selected { border-color:#91b5a0; background:#f6faf7; }
.module-group-head { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:11px; }
.module-group-head > div { display:grid; gap:3px; }
.module-group-head strong { color:var(--navy); font-size:13px; }
.module-group-head small { color:var(--muted); font-size:10px; }
.text-button { padding:0; border:0; background:transparent; color:#0f6b49; cursor:pointer; font-size:10px; font-weight:850; }
.module-check-list { display:grid; gap:6px; }
.module-check { display:flex; align-items:center; gap:8px; padding:8px 9px; border-radius:8px; background:#fff; border:1px solid #e5eaee; font-size:11px; cursor:pointer; }
.module-check:has(input:checked) { background:#edf7f1; border-color:#b9d4c3; color:#194d37; font-weight:750; }
.module-check input { width:15px; height:15px; }
.sticky-save-bar { position:sticky; bottom:14px; z-index:30; display:flex; justify-content:space-between; align-items:center; gap:18px; padding:14px 16px; border:1px solid #b9cbd3; border-radius:15px; background:rgba(255,255,255,.96); box-shadow:0 16px 35px rgba(17,36,50,.15); backdrop-filter:blur(12px); }
.sticky-save-bar > div { display:grid; gap:3px; }
.sticky-save-bar strong { color:var(--navy); }
.sticky-save-bar span { color:var(--muted); font-size:11px; }
.registration-shell { min-height:100vh; background:#f4f7f9; }
.registration-header { display:flex; justify-content:space-between; align-items:center; padding:18px max(24px,calc((100vw - 1240px)/2)); background:#fff; border-bottom:1px solid #dfe6eb; }
.registration-header .brand { margin:0; color:#163b2d; }
.registration-main { max-width:1240px; margin:0 auto; padding:42px 22px 70px; }
.registration-intro { max-width:790px; margin-bottom:25px; }
.registration-intro h1 { margin:7px 0 10px; color:var(--navy); font-size:36px; }
.registration-intro p { color:#536674; line-height:1.7; }
.eyebrow.dark { color:#b45f04; }
.registration-form { display:grid; gap:20px; }
.registration-submit { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:17px 19px; border-radius:14px; background:#fff; border:1px solid #dce4e9; }
.accept-note { display:flex; align-items:center; gap:9px; color:#536674; font-size:12px; }
.accept-note input { width:17px; height:17px; }
.btn-ghost { border:0; background:transparent; color:#5a6b77; }

@media (max-width:1180px) {
  .sector-config-grid.compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .module-config-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:820px) {
  .sector-config-grid, .sector-config-grid.compact, .module-config-grid { grid-template-columns:1fr; }
  .activity-check-grid { grid-template-columns:1fr; }
  .onboarding-card-header, .sticky-save-bar, .registration-submit { align-items:stretch; flex-direction:column; }
  .sticky-save-bar .btn, .registration-submit .btn { width:100%; }
  .registration-intro h1 { font-size:28px; }
  .registration-header { padding:15px 18px; }
}

/* GestiConnect V16 - formulaires metier adaptatifs */
.dynamic-service-panel{display:grid;gap:16px}.dynamic-service-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px;border-radius:16px;background:linear-gradient(135deg,#f0f7f3,#fff8ed);border:1px solid #cfe2d7}.dynamic-service-head h3{margin:3px 0 5px;font-size:20px}.dynamic-service-head p{margin:0;color:var(--muted);max-width:760px}.dynamic-field-group{margin:0;padding:16px;border:1px solid #d8e3dd;border-radius:14px;background:#fff}.dynamic-field-group legend{padding:0 9px;color:#163b2d;font-weight:800;font-size:14px}.dynamic-check{height:100%;margin:0}.dynamic-billing-preview{display:flex;flex-wrap:wrap;gap:10px 18px;padding:13px 16px;border-radius:12px;background:#f8fafc;border:1px dashed #b9c7d3;color:#425466;font-size:12px}.dynamic-billing-preview strong{color:#163b2d}.service-specific-section{border-color:#b9d6c5!important;box-shadow:0 12px 30px rgba(22,59,45,.06)}.eyebrow{display:block;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#d97706}@media(max-width:760px){.dynamic-service-head{flex-direction:column}.dynamic-field-group{padding:12px}.dynamic-billing-preview{display:grid}}
.service-answer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.service-answer{display:grid;gap:4px;padding:13px 14px;border:1px solid #dce6e0;border-radius:12px;background:#fbfdfc;min-width:0}.service-answer small{color:#7a8892;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.service-answer strong{color:#163b2d}.service-answer span{overflow-wrap:anywhere;color:#425466}

/* GestiConnect V18 - formulaires strictement adaptés au métier */
[hidden]{display:none!important}
.adaptive-form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:start}
.adaptive-form-grid>.form-group{grid-column:span 4;min-width:0;margin:0;display:flex;flex-direction:column;align-self:start}
.adaptive-form-grid>.form-group>label:not(.check-card){display:flex;align-items:flex-end;min-height:22px;margin-bottom:7px;line-height:1.25}
.adaptive-form-grid>.form-group input,.adaptive-form-grid>.form-group select,.adaptive-form-grid>.form-group textarea{width:100%;box-sizing:border-box}
.adaptive-form-grid>.adaptive-wide{grid-column:span 8}
.adaptive-form-grid>.adaptive-full{grid-column:1/-1}
.assignment-block{margin-top:16px;padding-top:16px;border-top:1px dashed var(--line)}
.subsection-title{display:flex;align-items:center;gap:10px;margin:18px 0 12px;padding-top:15px;border-top:1px dashed var(--line)}
.subsection-title h4{margin:0;color:var(--navy);font-size:14px}
.compact-check{min-height:46px;padding:10px 12px}
.advanced-section{padding:0;overflow:hidden}
.advanced-section>summary{padding:16px 19px;cursor:pointer;font-weight:850;color:var(--navy);background:#fbfcfd;list-style:none}
.advanced-section>summary::-webkit-details-marker{display:none}
.advanced-section[open]>summary{border-bottom:1px solid var(--line)}
.advanced-section>p,.advanced-section>.adaptive-form-grid{margin:14px 19px}
.dynamic-field-group .adaptive-form-grid>.form-group>label:not(.check-card){min-height:22px}
.address-autocomplete-host{position:relative}
.address-suggestions{position:absolute;z-index:1200;top:calc(100% + 5px);left:0;right:0;overflow:hidden;border:1px solid #b9c8d4;border-radius:12px;background:#fff;box-shadow:0 16px 45px rgba(18,40,55,.2)}
.address-suggestion{display:grid;width:100%;gap:3px;padding:11px 13px;border:0;border-bottom:1px solid #e7ecef;background:#fff;text-align:left;cursor:pointer}
.address-suggestion:hover,.address-suggestion:focus{background:#edf7f1;outline:0}
.address-suggestion strong{font-size:12px;color:var(--navy);font-weight:800}
.address-suggestion small{font-size:10px;color:var(--muted)}
.address-attribution{padding:7px 12px;background:#f6f8fa;color:#6d7c87;font-size:9px;text-align:right}
.service-specific-section .dynamic-service-head{padding:14px 16px}
.service-specific-section .dynamic-service-head h3{font-size:17px}
.service-specific-section .dynamic-service-head p{font-size:11px}
.form-section[data-ui-section="site_address"] .subsection-title:first-of-type{margin-top:14px}
@media(max-width:1050px){.adaptive-form-grid>.form-group{grid-column:span 6}.adaptive-form-grid>.adaptive-wide,.adaptive-form-grid>.adaptive-full{grid-column:1/-1}}
@media(max-width:640px){.adaptive-form-grid{grid-template-columns:1fr}.adaptive-form-grid>.form-group,.adaptive-form-grid>.adaptive-wide,.adaptive-form-grid>.adaptive-full{grid-column:auto}.form-section-title p{font-size:10px}.address-suggestions{position:fixed;left:10px;right:10px;top:auto;bottom:10px;max-height:55vh;overflow:auto}}


/* GestiConnect V18 - les informations client passent avant l'organisation interne */
.appointment-priority-section{border-color:#b9d4c6;box-shadow:0 5px 18px rgba(19,78,57,.07)}
.internal-organization-section{padding:0;overflow:hidden;background:#f8fafc;border-color:#d5dee8}
.internal-organization-summary{list-style:none;display:flex;align-items:center;gap:12px;padding:18px 20px;cursor:pointer;color:var(--navy);user-select:none}
.internal-organization-summary::-webkit-details-marker{display:none}
.internal-organization-summary .section-number{flex:0 0 32px;width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:#64748b;color:#fff;font-weight:900}
.internal-organization-summary>span:nth-child(2){display:grid;gap:2px;min-width:0}
.internal-organization-summary strong{font-size:16px}
.internal-organization-summary small{color:var(--muted);font-weight:500}
.internal-organization-summary .summary-hint{margin-left:auto;padding:7px 11px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:11px;font-weight:800}
.internal-organization-section[open]>.internal-organization-summary{border-bottom:1px solid var(--line);background:#fff}
.internal-organization-section[open] .summary-hint{font-size:0}
.internal-organization-section[open] .summary-hint::after{content:'Masquer';font-size:11px}
.internal-organization-content{padding:20px}
.internal-organization-content .assignment-block{margin-bottom:0}
@media(max-width:640px){.internal-organization-summary{padding:15px}.internal-organization-summary small{font-size:10px}.internal-organization-summary .summary-hint{display:none}.internal-organization-content{padding:15px}}

/* GestiConnect V19 - réclamations et planning haute densité */
.legend-item.appointment-complaint,
.badge.appointment-complaint,
.appointment-kind-badge.appointment-complaint,
.appointment-complaint {
  background:#f3e8ff;
  color:#6b21a8;
  border-color:#c084fc;
}
.calendar-event.appointment-complaint,
.kanban-card.appointment-complaint,
.intervention-hero.appointment-complaint {
  background:#f7efff;
  color:#6b21a8;
  border-color:#a855f7;
  box-shadow:0 3px 10px rgba(126,34,206,.12);
}
.intervention-hero.appointment-complaint p,
.intervention-hero.appointment-complaint small { color:#4c1d63; }
.appointment-complaint-row { background:#fbf7ff; }
.appointment-complaint-row td:first-child { border-left:4px solid #9333ea; }
.ff-field-card.appointment-complaint { border-color:#c084fc; box-shadow:0 10px 30px rgba(126,34,206,.12); }
.ff-field-card.appointment-complaint .ff-field-status-line { background:#9333ea; }
.appointment-kind-badge { display:inline-flex; align-items:center; width:max-content; margin-top:6px; padding:4px 7px; border:1px solid #d7dce2; border-radius:999px; background:#f5f7f9; color:#48545e; font-size:9px; font-style:normal; font-weight:900; line-height:1; }

.planning-filter-form { grid-template-columns:repeat(7,minmax(125px,1fr)); }
.planning-day-summary { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:18px; align-items:center; padding:15px 18px; margin-bottom:14px; position:sticky; top:8px; z-index:12; }
.planning-day-kpis { display:grid; grid-template-columns:repeat(4,minmax(110px,1fr)); gap:10px; }
.planning-day-kpis>div { display:flex; align-items:center; justify-content:space-between; gap:10px; min-width:0; padding:10px 12px; border:1px solid #dfe6e1; border-radius:10px; background:#f8faf9; }
.planning-day-kpis span { color:#68766f; font-size:9px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
.planning-day-kpis strong { color:#173e30; font-size:20px; }
.planning-day-kpis .complaint-kpi { border-color:#d8b4fe; background:#faf5ff; }
.planning-day-kpis .complaint-kpi strong { color:#7e22ce; }
.planning-day-tools { display:flex; align-items:flex-end; gap:12px; }
.planning-search { display:grid; gap:5px; min-width:280px; }
.planning-search span { color:#68766f; font-size:9px; font-weight:900; letter-spacing:.04em; text-transform:uppercase; }
.planning-search input { min-height:38px; }
.planning-density { display:flex; flex-wrap:wrap; gap:6px; }
.timeline-card { overflow:visible; }
.day-timeline { min-width:0; }
.hour-row { grid-template-columns:76px minmax(0,1fr); min-height:64px; scroll-margin-top:110px; }
.hour-label { position:sticky; top:92px; z-index:7; align-self:start; display:grid; gap:2px; padding:10px 8px; background:#fff; }
.hour-label span { font-weight:900; }
.hour-label small { color:#7a8880; font-size:8px; font-weight:800; }
.hour-content { display:grid; grid-template-columns:repeat(auto-fit,minmax(245px,1fr)); align-items:start; gap:8px; min-width:0; padding:7px 36px 7px 8px; }
.hour-content .calendar-event { min-width:0; max-width:none; }
.planning-event-head { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.planning-event-head strong { font-size:12px; }
.planning-event-head span { font-size:9px; font-weight:900; opacity:.78; }
.planning-event-title { margin-top:4px; overflow:hidden; font-size:11px; font-weight:850; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.planning-event-meta { display:flex; flex-wrap:wrap; gap:3px 8px; margin-top:5px; font-size:9px; opacity:.82; }
.planning-event-meta span { overflow:hidden; max-width:100%; text-overflow:ellipsis; white-space:nowrap; }
.timeline-card.is-compact .hour-row { min-height:46px; }
.timeline-card.is-compact .hour-label { padding:7px 8px; }
.timeline-card.is-compact .hour-content { grid-template-columns:repeat(auto-fit,minmax(205px,1fr)); gap:5px; padding-top:5px; padding-bottom:5px; }
.timeline-card.is-compact .calendar-event { padding:7px 9px; border-left-width:4px; }
.timeline-card.is-compact .planning-event-title { margin-top:2px; font-size:10px; }
.timeline-card.is-compact .planning-event-meta { margin-top:3px; font-size:8px; }
.timeline-card.is-compact .appointment-kind-badge { margin-top:4px; padding:3px 6px; font-size:8px; }
.planning-search-empty { margin:14px; }
.planning-agenda-tools { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; padding:14px 18px; margin-bottom:12px; }
.planning-agenda-tools .planning-search { flex:1; max-width:620px; }
.planning-agenda-table { font-size:10px; }
.planning-agenda-table thead th { position:sticky; top:0; z-index:4; background:#f6f8f7; }
.planning-agenda-table td { padding-top:8px; padding-bottom:8px; vertical-align:top; }
.week-column-head small { color:#76847d; font-size:9px; }

@media(max-width:1250px){
  .planning-filter-form{grid-template-columns:repeat(4,minmax(130px,1fr))}
  .planning-day-summary{grid-template-columns:1fr}
  .planning-day-tools{justify-content:space-between}
}
@media(max-width:850px){
  .planning-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .planning-day-summary{position:static}
  .planning-day-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .planning-day-tools{align-items:stretch;flex-direction:column}
  .planning-search{min-width:0;width:100%}
  .hour-label{top:0}
  .hour-content,.timeline-card.is-compact .hour-content{grid-template-columns:1fr}
}
@media(max-width:560px){
  .planning-filter-form{grid-template-columns:1fr}
  .planning-day-kpis{grid-template-columns:1fr 1fr}
  .planning-day-kpis>div{padding:8px}
  .planning-day-kpis strong{font-size:17px}
  .hour-row{grid-template-columns:55px minmax(0,1fr)}
  .hour-content{padding-right:32px}
  .planning-agenda-tools{align-items:stretch;flex-direction:column}
}
.profile-advice-section{margin:22px 0}.profile-advice-grid{margin-bottom:20px}.profile-advice-card{padding:18px;border-left:5px solid #94a3b8}.profile-advice-card.priority-high{border-left-color:#dc2626;background:#fff8f8}.profile-advice-card.priority-medium{border-left-color:#d97706;background:#fffaf0}.profile-advice-card.priority-low{border-left-color:#2563eb;background:#f7fbff}.profile-advice-card>span{display:inline-flex;margin-bottom:8px;padding:4px 7px;border-radius:999px;background:#eef2f6;color:#52616d;font-size:9px;font-weight:900;text-transform:uppercase}.profile-advice-card h3{margin:0 0 8px;color:var(--navy);font-size:16px}.profile-advice-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.6}@media(max-width:850px){.profile-advice-grid{grid-template-columns:1fr}}

/* GestiConnect V20 - Stripe Connect */
.stripe-connect-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;background:linear-gradient(135deg,#f7f5ff,#fff 55%,#f0fdf8);border-color:#ddd6fe}.stripe-connect-copy{min-width:0}.stripe-connect-copy h2{margin:4px 0 8px}.stripe-connect-copy p{margin:0;color:var(--muted)}.stripe-connect-actions{display:flex;gap:10px;flex-wrap:wrap}.stripe-capabilities{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.capability{display:inline-flex;padding:6px 10px;border-radius:999px;background:#fff1f2;color:#9f1239;font-size:11px;font-weight:800;border:1px solid #fecdd3}.capability.is-ready{background:#ecfdf5;color:#047857;border-color:#a7f3d0}.stripe-kpis{margin-top:18px}.stripe-document-card{border-color:#ddd6fe;box-shadow:0 12px 35px rgba(91,33,182,.07)}.stripe-empty-state{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px}.stripe-empty-state p{margin:4px 0 0;color:var(--muted)}.stripe-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#635bff;color:#fff;font-size:22px;font-weight:900}.stripe-create-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.7fr) auto;gap:14px;align-items:end}.stripe-create-grid .form-group{margin:0}.stripe-create-action{padding-bottom:1px}.stripe-help{margin:10px 0 0}.stripe-request-list{display:grid;gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.stripe-request-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fbfcfd}.stripe-request-main{display:flex;align-items:center;gap:12px}.stripe-request-main div{display:grid;gap:2px}.stripe-request-main small{color:var(--muted)}.stripe-request-actions,.stripe-table-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.stripe-refund-form{display:flex;align-items:center;gap:6px}.stripe-refund-form input{width:90px;padding:7px 8px}.payment-status{display:inline-flex;align-items:center;white-space:nowrap;padding:5px 8px;border-radius:999px;background:#eef2f7;color:#475569;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}.payment-status-paid{background:#dcfce7;color:#166534}.payment-status-open,.payment-status-creating{background:#fef3c7;color:#92400e}.payment-status-failed,.payment-status-expired,.payment-status-cancelled{background:#fee2e2;color:#991b1b}.payment-status-partially_refunded{background:#ede9fe;color:#6d28d9}.payment-status-refunded{background:#e0e7ff;color:#3730a3}.stripe-security-note{border-left:5px solid #635bff}.stripe-security-note p{margin:5px 0 0;color:var(--muted)}.payment-public-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(145deg,#f4f1ff,#f8fafc 48%,#ecfdf5)}.payment-public-card{width:min(560px,100%);padding:28px;border-radius:22px;background:#fff;box-shadow:0 25px 70px rgba(15,23,42,.14);text-align:center}.payment-public-brand{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:24px}.payment-public-brand div{display:grid;text-align:left}.payment-public-brand small{color:var(--muted)}.payment-result-icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 16px;border-radius:50%;font-size:34px;font-weight:900}.payment-result-icon.is-success{background:#dcfce7;color:#15803d}.payment-result-icon.is-warning{background:#ede9fe;color:#6d28d9}.payment-result-icon.is-danger{background:#fee2e2;color:#b91c1c}.payment-result-icon.is-waiting{background:#fef3c7;color:#a16207}.payment-public-card h1{margin:0 0 8px;font-size:28px}.payment-public-card>p{color:var(--muted)}.payment-public-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:24px 0;text-align:left}.payment-public-summary div{display:grid;gap:4px;padding:12px;border-radius:12px;background:#f8fafc}.payment-public-summary span{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:800}.payment-contact{font-size:12px}.empty-state{padding:25px;text-align:center}.empty-state p{margin:5px 0;color:var(--muted)}
@media(max-width:820px){.stripe-connect-hero,.stripe-request-item{align-items:stretch;flex-direction:column}.stripe-empty-state{grid-template-columns:auto 1fr}.stripe-empty-state .btn{grid-column:1/-1}.stripe-create-grid{grid-template-columns:1fr}.stripe-create-action .btn{width:100%}.stripe-request-actions{justify-content:flex-start}}
@media(max-width:560px){.payment-public-summary{grid-template-columns:1fr}.payment-public-card{padding:22px 17px}.stripe-refund-form{width:100%}.stripe-refund-form input{flex:1}}

/* GestiConnect V25 — onboarding, supervision SaaS et catalogue métiers */
.omni-layout{display:grid;grid-template-columns:minmax(330px,.85fr) minmax(0,1.55fr);gap:18px;align-items:start}
.omni-list,.omni-thread{min-height:650px}.omni-list{overflow:hidden}.omni-filters{margin-bottom:4px}
.conversation-list{display:grid;max-height:660px;overflow:auto}.conversation-item{display:block;padding:14px 16px;border-top:1px solid var(--line);color:inherit;text-decoration:none;background:#fff}.conversation-item:hover,.conversation-item.active{background:#f3faf6}.conversation-item.active{box-shadow:inset 4px 0 0 #168457}.conversation-top,.conversation-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.conversation-subject{font-size:13px;margin:7px 0;color:#344054;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-meta{font-size:11px;color:var(--muted)}.conversation-meta b{display:grid;place-items:center;background:#168457;color:white;min-width:22px;height:22px;border-radius:999px}
.message-thread{display:flex;flex-direction:column;gap:12px;max-height:510px;overflow:auto;padding:10px 2px 18px}.message-bubble{max-width:82%;padding:12px 14px;border-radius:14px;line-height:1.45;white-space:pre-wrap}.message-bubble.inbound{align-self:flex-start;background:#f1f4f7;border-bottom-left-radius:4px}.message-bubble.outbound{align-self:flex-end;background:#e6f6ed;color:#144c35;border-bottom-right-radius:4px}.message-author{font-size:10px;font-weight:800;opacity:.7;margin-bottom:5px}.message-composer{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:16px}
.route-timeline{display:grid;padding:8px 20px 22px}.route-stop{display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.route-stop:last-child{border-bottom:0}.route-position{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#173f30;color:#fff;font-weight:900}.route-stop h3{margin:3px 0;font-size:15px}.route-stop p{margin:0 0 3px;color:#475467}
.automation-flow{display:flex;align-items:center;justify-content:center;gap:10px;padding:18px;margin-bottom:16px;border:1px dashed #9fb9ad;border-radius:14px;background:#f3faf6}.automation-flow span{padding:8px 10px;border-radius:9px;background:white;border:1px solid var(--line);font-weight:800;font-size:12px}.automation-card{margin-bottom:15px}
.inline-metrics{display:grid;grid-template-columns:repeat(6,minmax(80px,1fr)) auto;gap:8px;align-items:center}.inline-metrics input,.inline-metrics select{min-width:0}
.public-review-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#eef7f2,#f8fafc)}.public-review-card{width:min(620px,100%)}.public-review-card h1{font-size:26px}.review-stars{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:24px 0}.review-stars input{position:absolute;opacity:0}.review-stars span{display:block;text-align:center;padding:12px 4px;border:1px solid var(--line);border-radius:10px;cursor:pointer;background:#fff}.review-stars input:checked+span{background:#fff4d6;border-color:#e4b63c;color:#875d00;font-weight:900}
.badge-warning{background:#fff2c7!important;color:#7d5400!important}
@media(max-width:1050px){.omni-layout{grid-template-columns:1fr}.omni-list,.omni-thread{min-height:auto}.inline-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.route-stop{grid-template-columns:42px 1fr}.route-stop>.badge{grid-column:2}.inline-metrics{grid-template-columns:1fr 1fr}.review-stars{grid-template-columns:1fr}.message-bubble{max-width:94%}}

/* GestiConnect V25 - inscription, verification et assistant de configuration */
.registration-simple{max-width:620px;margin:30px auto}.registration-benefits{display:grid;gap:10px;margin:18px 0}.registration-benefit{padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:#fafbff}.verification-card{max-width:650px;margin:36px auto;text-align:center}.verification-icon{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;margin:0 auto 16px;background:#eeebff;color:#6146d7;font-size:30px}.verification-preview{margin:18px 0;padding:14px;border-radius:14px;background:#fff7e8;border:1px solid #f4d9a8;text-align:left}.verification-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.v25-onboarding-shell{max-width:1180px;margin:0 auto}.v25-onboarding-hero{display:grid;grid-template-columns:1fr 340px;gap:22px;align-items:center;margin-bottom:20px}.v25-onboarding-hero h2{font-size:29px;letter-spacing:-.04em;margin:8px 0}.v25-onboarding-hero p{color:var(--muted);line-height:1.65}.v25-onboarding-progress-card{padding:18px;border-radius:18px;background:linear-gradient(145deg,#171b35,#24294f);color:#fff}.v25-onboarding-progress-card strong,.v25-onboarding-progress-card small{display:block}.v25-onboarding-progress-card small{color:#b9bfd5;font-size:11px;line-height:1.5;margin-top:9px}.v25-progress-track{height:8px;border-radius:999px;background:rgba(255,255,255,.12);overflow:hidden;margin-top:10px}.v25-progress-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#5e74ff,#a15cff)}.v25-wizard-step{display:none}.v25-wizard-step.active{display:block}.v25-wizard-actions{position:sticky;bottom:10px;z-index:15;display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding:14px 16px;border:1px solid var(--border);border-radius:16px;background:rgba(255,255,255,.95);box-shadow:0 18px 45px rgba(25,30,65,.14);backdrop-filter:blur(12px)}.v25-wizard-actions>div{display:flex;align-items:center;gap:12px}.v25-wizard-actions small{color:var(--muted)}.v25-sector-list{display:grid;gap:10px;max-height:520px;overflow:auto;padding-right:4px}.v25-custom-catalog{margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.v25-custom-catalog h3{font-size:15px}.v25-trade-choice[hidden]{display:none!important}.v25-trade-choice span small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.v25-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.v25-service-option{display:flex;gap:10px;align-items:flex-start;padding:14px;border:1px solid var(--border);border-radius:14px;background:#fff;cursor:pointer}.v25-service-option:has(input:checked){border-color:#8064ef;background:#f5f2ff;box-shadow:0 0 0 3px rgba(128,100,239,.08)}.v25-service-option input{margin-top:2px}.v25-service-option strong,.v25-service-option small{display:block}.v25-service-option strong{font-size:12px}.v25-service-option small{font-size:10px;color:var(--muted);margin-top:4px;line-height:1.4}.v25-service-empty{padding:18px;border:1px dashed var(--border);border-radius:14px;color:var(--muted);text-align:center}.v25-custom-services{margin-top:18px}.v25-custom-services small{color:var(--muted)}.v25-ready-note{display:flex;gap:12px;align-items:center;margin-top:18px;padding:14px;border-radius:14px;background:#eaf8f2;color:#176b4f}.v25-ready-note span{font-size:11px}.dashboard-configuration{margin-bottom:20px}.configuration-layout{display:grid;grid-template-columns:160px 1fr;gap:22px;align-items:center}.configuration-score{width:126px;height:126px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#7655ef var(--configuration-percent),#edf0f5 0);position:relative}.configuration-score:after{content:"";position:absolute;inset:11px;background:#fff;border-radius:50%}.configuration-score strong,.configuration-score small{position:relative;z-index:1;display:block;text-align:center}.configuration-score strong{font-size:25px}.configuration-score small{font-size:9px;color:var(--muted)}.configuration-checklist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.configuration-item{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:11px;border:1px solid var(--border);border-radius:12px;font-size:11px}.configuration-item.done{background:#eff9f5;border-color:#d6eee4}.configuration-item.optional:not(.done){background:#fafafd}.configuration-item b{font-size:10px}.configuration-item span{color:var(--muted)}
@media(max-width:900px){.v25-onboarding-hero,.configuration-layout{grid-template-columns:1fr}.v25-service-grid,.configuration-checklist{grid-template-columns:repeat(2,minmax(0,1fr))}.configuration-score{margin:auto}}@media(max-width:620px){.v25-service-grid,.configuration-checklist{grid-template-columns:1fr}.v25-wizard-actions,.v25-wizard-actions>div{align-items:stretch;flex-direction:column}.v25-wizard-actions .btn{width:100%}}

/* GestiConnect V26 - formulaires reçus lisibles et connexions simplifiées */
.ff-lead-detail-head{align-items:flex-start}.ff-lead-detail-head h2{margin:8px 0 4px}
.ff-lead-summary-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px;padding:14px;border:1px solid #dfe6ef;border-radius:16px;background:#fff;box-shadow:0 7px 20px rgba(29,49,73,.04)}
.ff-lead-summary-bar>div{min-width:0;padding:11px 13px;border-radius:12px;background:#f7f9fc}.ff-lead-summary-bar span,.ff-lead-summary-bar strong{display:block}.ff-lead-summary-bar span{margin-bottom:5px;color:#718095;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.ff-lead-summary-bar strong,.ff-lead-summary-bar a{overflow-wrap:anywhere;color:#17263a}
.ff-lead-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.ff-lead-info-card{min-width:0;overflow:hidden}.ff-lead-info-card .card-header>div,.ff-lead-message-card .card-header>div{display:flex;align-items:center;gap:11px}.ff-lead-info-card .card-header h2,.ff-lead-message-card .card-header h2{margin:0 0 3px}.ff-card-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:12px;background:#eaf3ff;font-size:17px}.ff-marketing-card .ff-card-icon{background:#f1edff;color:#5e3dcc}
.ff-lead-field-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:0!important}.ff-lead-field{display:block!important;min-width:0;padding:13px!important;border:1px solid #e5e9f0!important;border-radius:12px;background:#f9fafc}.ff-lead-field-wide{grid-column:1/-1}.ff-lead-field span,.ff-lead-field strong{display:block}.ff-lead-field span{margin-bottom:6px;color:#748297;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.055em}.ff-lead-field strong{font-size:13px;line-height:1.5;color:#17263a;overflow-wrap:normal;word-break:normal;white-space:normal}.ff-value-wrap,.ff-value-wrap a{overflow-wrap:anywhere!important;word-break:break-word!important}.ff-lead-message-card,.ff-lead-treatment-card{margin-top:18px}.ff-lead-message-card .lead-full-message{margin:10px 0 0;padding:15px;border-radius:13px;background:#f8fafc;border:1px solid #e5e9f0;font-size:13px}.ff-lead-status-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.ff-lead-status-form .form-group{min-width:230px;margin:0}

.ff-connection-page-head{align-items:flex-start}.ff-connection-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-bottom:24px;overflow:hidden}.ff-connection-steps>div{display:grid;grid-template-columns:38px minmax(0,1fr);gap:3px 11px;padding:18px;border-right:1px solid #e5e9f0}.ff-connection-steps>div:last-child{border-right:0}.ff-connection-steps span{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:#173e30;color:#fff;font-size:12px;font-weight:950}.ff-connection-steps strong{font-size:12px}.ff-connection-steps small{color:#6f7b8d;font-size:10px;line-height:1.45}
.ff-connection-section{margin:26px 0}.ff-connection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.ff-connection-card{min-width:0;padding:17px;display:flex;flex-direction:column;gap:14px;border-top:4px solid #dfe5ec}.ff-connection-card.is-connected{border-top-color:#22a875}.ff-connection-card.is-pending{border-top-color:#e1a524}.ff-connection-card-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:11px;align-items:start}.ff-connection-card-head h3{margin:2px 0 5px;font-size:15px}.ff-connection-card-head p{margin:0;color:#68778a;font-size:10px;line-height:1.5}.ff-provider-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,#4057ff,#7b52ff);color:#fff;font-size:11px;font-weight:950;letter-spacing:-.02em}.provider-google_business{background:linear-gradient(135deg,#3182f6,#35b879)}.provider-meta{background:linear-gradient(135deg,#405de6,#a436db)}.provider-whatsapp{background:linear-gradient(135deg,#18a86b,#43d497)}.provider-ai_receptionist{background:linear-gradient(135deg,#7850ff,#b44dff)}.provider-website{background:linear-gradient(135deg,#1778b8,#34b8df)}.provider-stripe{background:linear-gradient(135deg,#635bff,#8b82ff)}.provider-x_ads{background:#171a24}.provider-microsoft_ads{background:linear-gradient(135deg,#00a4ef,#7fba00)}
.ff-connection-accounts{display:grid;gap:8px}.ff-connection-account{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px;border-radius:12px;background:#f7f9fc}.ff-connection-account>div:first-child{min-width:0}.ff-connection-account strong,.ff-connection-account small{display:block;overflow-wrap:anywhere}.ff-connection-account strong{font-size:10px}.ff-connection-account small{margin-top:3px;color:#7a8595;font-size:8px}.ff-connection-account .actions{grid-column:1/-1}.connection-status{display:inline-flex;padding:5px 7px;border-radius:999px;background:#edf1f5;color:#617085;font-size:8px;font-weight:900;white-space:nowrap}.connection-status.status-connected{background:#dcf5e8;color:#176c42}.connection-status.status-authorization_pending,.connection-status.status-assistance_requested{background:#fff0bd;color:#765700}.connection-status.status-error{background:#ffe0e2;color:#9a3039}
.ff-quick-connect-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start;max-width:1050px}.ff-quick-connect-card{overflow:hidden}.ff-quick-connect-card .card-header>div{display:flex;align-items:center;gap:11px}.ff-quick-connect-card .card-header h2{margin:0}.ff-consent-line{display:flex;gap:9px;align-items:flex-start;padding:12px;border:1px solid #dfe5ec;border-radius:12px;background:#f9fafc;color:#59677a;font-size:10px;line-height:1.5}.ff-consent-line input{width:auto;margin-top:2px}.ff-quick-connect-help{position:sticky;top:94px}.ff-quick-connect-help h3{font-size:14px;margin:18px 0 8px}.ff-quick-connect-help ul,.ff-quick-connect-help ol{margin:0;padding-left:19px;color:#5f6c7e;font-size:11px;line-height:1.8}
.ff-authorization-card{max-width:950px;overflow:hidden}.ff-authorization-hero{display:grid;grid-template-columns:60px minmax(0,1fr);gap:16px;align-items:center;padding:24px;background:linear-gradient(135deg,#f9fbff,#f6f3ff);border-bottom:1px solid #e3e7ef}.ff-authorization-hero .ff-provider-icon{width:58px;height:58px;border-radius:17px}.ff-authorization-hero h2{margin:8px 0 6px}.ff-authorization-hero p{margin:0;color:#647287;line-height:1.6;font-size:12px}.ff-authorization-progress{display:grid;grid-template-columns:repeat(3,1fr);padding:20px 24px;border-bottom:1px solid #e5e9f0}.ff-authorization-progress>div{position:relative;text-align:center}.ff-authorization-progress>div:not(:last-child):after{content:"";position:absolute;top:17px;left:58%;right:-42%;height:2px;background:#dfe4ec}.ff-authorization-progress span{position:relative;z-index:1;display:grid;place-items:center;width:35px;height:35px;margin:0 auto 7px;border-radius:50%;background:#eef1f5;color:#7a8594;font-weight:900}.ff-authorization-progress .done span{background:#dff6e9;color:#167145}.ff-authorization-progress .current span{background:#7454ed;color:#fff}.ff-authorization-progress b,.ff-authorization-progress small{display:block}.ff-authorization-progress b{font-size:11px}.ff-authorization-progress small{margin-top:3px;color:#7a8595;font-size:9px}.ff-authorization-actions{display:grid;gap:11px;justify-items:start}.btn-lg{padding:14px 20px;font-size:14px}

@media(max-width:1200px){.ff-connection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.ff-lead-detail-grid,.ff-quick-connect-layout{grid-template-columns:1fr}.ff-lead-summary-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.ff-connection-steps{grid-template-columns:1fr}.ff-connection-steps>div{border-right:0;border-bottom:1px solid #e5e9f0}.ff-quick-connect-help{position:static}}
@media(max-width:620px){.ff-lead-summary-bar,.ff-lead-field-list,.ff-connection-grid{grid-template-columns:1fr!important}.ff-lead-field-wide{grid-column:auto}.ff-lead-status-form{display:grid}.ff-lead-status-form .form-group{min-width:0}.ff-connection-card-head{grid-template-columns:46px minmax(0,1fr)}.ff-connection-card-head>.badge{grid-column:1/-1;width:max-content}.ff-authorization-progress{grid-template-columns:1fr;gap:10px}.ff-authorization-progress>div:not(:last-child):after{display:none}}
.ff-simple-connect-banner{margin-bottom:18px;border-color:#cfdcf2;background:linear-gradient(135deg,#f8fbff,#f7f4ff)}.ff-simple-connect-banner>.card-body{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:15px;align-items:center}.ff-simple-connect-banner h3{margin:7px 0 5px;font-size:16px}.ff-simple-connect-banner p{margin:0;color:#627186;font-size:11px;line-height:1.55}.ff-advanced-connection>summary{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px 18px;cursor:pointer;list-style:none}.ff-advanced-connection>summary::-webkit-details-marker{display:none}.ff-advanced-connection>summary span{color:#748196;font-size:10px}.ff-advanced-connection[open]>summary{border-bottom:1px solid #e5e9f0;background:#f8fafc}
@media(max-width:760px){.ff-simple-connect-banner>.card-body{grid-template-columns:48px minmax(0,1fr)}.ff-simple-connect-banner .btn{grid-column:1/-1}.ff-advanced-connection>summary{align-items:flex-start;flex-direction:column}}

/* GestiConnect V39 — packs métiers sectoriels */
.nav-pack-title{margin:10px 10px 4px;padding-top:8px;border-top:1px solid rgba(255,255,255,.08);display:flex;gap:7px;align-items:center;color:#8fa39a;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.nav-pack-title:first-of-type{margin-top:5px;border-top:0}
.nav-items .nav-pack-link{padding-left:28px;font-size:12px}
.sector-pack-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sector-pack-card .card-header h2{display:flex;align-items:center;gap:9px}
.sector-pack-icon,.sector-pack-link-icon{display:inline-grid;place-items:center;flex:0 0 auto;border-radius:10px;background:#eef7f1;color:#163b2d}
.sector-pack-icon{width:34px;height:34px;font-size:17px}
.sector-pack-links{display:grid;gap:9px}
.sector-pack-link{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;padding:12px;border:1px solid #dfe8e2;border-radius:13px;background:#fff;color:#1d2b25;transition:.18s ease}
.sector-pack-link:hover{transform:translateY(-1px);border-color:#93b7a3;box-shadow:0 8px 24px rgba(22,59,45,.08)}
.sector-pack-link-icon{width:38px;height:38px;font-size:17px}
.sector-pack-link strong{display:block;font-size:13px}.sector-pack-link small{display:block;margin-top:3px;color:#78847e;font-size:10px}.sector-pack-arrow{font-size:20px;color:#779184}
.sector-record-form{max-width:980px}.sector-record-actions{display:flex;justify-content:space-between;gap:14px;align-items:center}.sector-record-actions>div{display:flex;gap:9px}.sector-record-table td{vertical-align:middle}.back-link{display:inline-block;margin-bottom:7px;color:#526b60;font-size:12px;font-weight:800}.empty-state{text-align:center;padding:34px 16px}.empty-state strong{display:block;font-size:17px}.empty-state p{color:#748078;margin:8px 0 16px}
@media(max-width:900px){.sector-pack-grid{grid-template-columns:1fr}}
@media(max-width:600px){.sector-record-actions{align-items:stretch;flex-direction:column-reverse}.sector-record-actions>div{display:grid}.sector-pack-link{grid-template-columns:34px 1fr auto;padding:10px}}

/* GestiConnect V48 — cases à cocher harmonisées et configuration simplifiée */
input[type="checkbox"],input[type="radio"]{box-sizing:border-box;flex:0 0 auto;width:18px;height:18px;margin:0;vertical-align:middle;accent-color:#16734b}
.check-card,.activity-check,.sector-main-toggle,.module-check,.module-group-head:has(input[type="checkbox"]),.form-group>label:has(>input[type="checkbox"]){display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;justify-content:start;gap:9px;text-align:left;line-height:1.4}
.check-card input,.activity-check input,.sector-main-toggle input,.module-check input,.module-group-head:has(input[type="checkbox"]) input,.form-group>label:has(>input[type="checkbox"])>input{width:18px;height:18px;margin:1px 0 0}
.module-group-head:has(input[type="checkbox"]){grid-template-columns:minmax(0,1fr) 20px}
.module-group-head:has(input[type="checkbox"]) input{grid-column:2;grid-row:1}
.module-group-head:has(input[type="checkbox"])>div{grid-column:1;grid-row:1}
.activity-check,.check-card,.module-check{min-height:42px;border-radius:11px}
.activity-check:has(input:checked),.check-card:has(input:checked),.module-check:has(input:checked){border-color:#79aa90;background:#edf8f2;color:#174e36}
.essential-module-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.essential-module-summary span{position:relative;padding:12px 12px 12px 39px;border:1px solid #dbe8e0;border-radius:12px;background:#f8fcf9;color:#214638;font-size:12px;font-weight:850}
.essential-module-summary span:before{content:"✓";position:absolute;left:13px;top:10px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#d9f3e4;color:#147048;font-size:12px}
.advanced-module-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:15px;padding:15px;border:1px dashed #b9c8c0;border-radius:13px;background:#f5f7f6}
.advanced-module-callout p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.55}
@media(max-width:800px){.essential-module-summary{grid-template-columns:1fr 1fr}.advanced-module-callout{align-items:stretch;flex-direction:column}}
@media(max-width:520px){.essential-module-summary{grid-template-columns:1fr}}
.check-grid>label:has(>input[type="checkbox"]),.check-grid>label:has(>input[type="radio"]),.accept-note,.privacy,.subscription-transfer-note,.selection-row,.ff-consent-line,.pa-check,.pa-feature-check,.pa-message-form>label:has(>input[type="checkbox"]){display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;justify-content:start;gap:9px;text-align:left;line-height:1.4}
.check-grid>label>input[type="checkbox"],.check-grid>label>input[type="radio"],.accept-note>input,.privacy>input,.subscription-transfer-note>input,.selection-row>input,.ff-consent-line>input,.pa-check>input,.pa-feature-check>input,.pa-message-form>label>input{width:18px!important;height:18px!important;margin:1px 0 0!important}

/* GestiConnect V50 — inscription épurée */
.signup-page{min-height:100vh;background:linear-gradient(145deg,#f4f8f6 0%,#f7f8fb 55%,#fff8ef 100%);color:#122b22}
.signup-header{width:min(1120px,calc(100% - 36px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:24px 0}
.signup-brand{display:flex;align-items:center;gap:11px;color:#163b2d;text-decoration:none;font-size:17px;font-weight:900;letter-spacing:-.02em}
.signup-brand-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:#163b2d;color:#fff;font-size:13px;box-shadow:0 10px 24px rgba(22,59,45,.18)}
.signup-login-link{color:#163b2d;text-decoration:none;font-size:13px;font-weight:850;padding:10px 15px;border:1px solid #cddbd4;border-radius:11px;background:rgba(255,255,255,.74)}
.signup-login-link:hover{background:#fff;border-color:#9bb7aa}
.signup-main{width:min(620px,calc(100% - 32px));margin:34px auto 72px}
.signup-card{overflow:hidden;border:1px solid #d9e3de;border-radius:24px;background:rgba(255,255,255,.96);box-shadow:0 26px 70px rgba(26,52,42,.12)}
.signup-card-head{padding:30px 34px 24px;border-bottom:1px solid #e5ebe8;background:linear-gradient(135deg,#fff,#f7fbf9)}
.signup-kicker{display:block;margin-bottom:7px;color:#c26b08;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.signup-card-head h1{margin:0;color:#14382b;font-size:30px;line-height:1.12;letter-spacing:-.04em}
.signup-card-body{padding:30px 34px 34px}
.signup-form{display:grid;gap:17px}
.signup-field{display:grid;gap:7px;min-width:0}
.signup-field label{color:#243c33;font-size:12px;font-weight:850}
.signup-field input{width:100%;min-height:50px;box-sizing:border-box;border:1px solid #cad8d1;border-radius:13px;background:#fff;padding:0 14px;color:#142d24;font:inherit;font-size:14px;outline:none;transition:border-color .18s,box-shadow .18s,background .18s}
.signup-field input::placeholder{color:#97a39e}
.signup-field input:hover{border-color:#a9bdb4}
.signup-field input:focus{border-color:#2f795a;box-shadow:0 0 0 4px rgba(47,121,90,.11);background:#fff}
.signup-password-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.signup-terms{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;margin-top:1px;padding:13px 14px;border:1px solid #e0e7e3;border-radius:13px;background:#f9fbfa;color:#53635c;font-size:11px;line-height:1.5;cursor:pointer}
.signup-terms input{width:18px;height:18px;margin:1px 0 0;accent-color:#1f6b4c}
.signup-terms a{color:#1d6549;font-weight:800;text-decoration:none}
.signup-terms a:hover{text-decoration:underline}
.signup-submit{width:100%;min-height:52px;border:0;border-radius:13px;background:#163b2d;color:#fff;font:inherit;font-size:14px;font-weight:900;cursor:pointer;box-shadow:0 12px 24px rgba(22,59,45,.2);transition:transform .16s,background .16s,box-shadow .16s}
.signup-submit:hover{background:#1d513c;transform:translateY(-1px);box-shadow:0 15px 29px rgba(22,59,45,.24)}
.signup-submit:active{transform:none}
@media(max-width:640px){.signup-header{padding:17px 0}.signup-main{margin-top:18px}.signup-card{border-radius:19px}.signup-card-head{padding:24px 21px 20px}.signup-card-head h1{font-size:25px}.signup-card-body{padding:22px 21px 25px}.signup-password-grid{grid-template-columns:1fr}.signup-login-link{padding:9px 12px}.signup-brand-mark{width:38px;height:38px}}
.legal-public-page{min-height:100vh;background:#f4f7f5;color:#163b2d}.legal-public-card{width:min(820px,calc(100% - 32px));margin:24px auto 70px;padding:36px;border:1px solid #dbe5e0;border-radius:22px;background:#fff;box-shadow:0 22px 60px rgba(22,59,45,.09)}.legal-public-card h1{margin:0 0 22px;font-size:31px}.legal-public-card h2{margin:25px 0 7px;font-size:17px}.legal-public-card p{margin:0;color:#52645c;line-height:1.7}@media(max-width:640px){.legal-public-card{padding:24px 20px}.legal-public-card h1{font-size:25px}}

/* GestiConnect V63 - oeil sur les champs mot de passe */
.password-eye-field{position:relative;width:100%}.password-eye-field>input{width:100%;padding-right:52px!important}.password-eye-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:38px;height:38px;border:0;border-radius:10px;background:transparent;color:#526579;display:grid;place-items:center;cursor:pointer;font-size:18px;line-height:1}.password-eye-toggle:hover,.password-eye-toggle:focus-visible{background:#eef5f1;color:#123f31;outline:2px solid rgba(22,82,62,.18)}.password-eye-toggle.is-visible{color:#123f31;background:#e8f3ed}
.review-link-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.review-link-actions a{flex:1;min-width:190px;text-align:center}.review-success-box{padding:14px 16px;border:1px solid #a7d7bd;border-radius:14px;background:#effaf4;color:#174f37;margin-bottom:16px}.review-default-note{margin:0 0 12px;color:#68786f;font-size:13px}.portal-review-form textarea{min-height:140px}.signature-page-note{font-size:9px;color:#33443d}

/* GestiConnect V91-108 — drill-down Google Ads */
.gc-ads-row-hint{margin:7px 0 10px;color:#6d7b74;font-size:11px;font-weight:750}
.gc-ads-drilldown-table tbody tr.gc-ads-clickable-row{cursor:pointer;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}
.gc-ads-drilldown-table tbody tr.gc-ads-clickable-row:hover{background:#eef8f2!important;box-shadow:inset 4px 0 0 #21704f}
.gc-ads-drilldown-table tbody tr.gc-ads-clickable-row:focus-visible{outline:3px solid rgba(33,112,79,.22);outline-offset:-3px;background:#f0f9f4}
.gc-ads-drilldown-table tbody tr.gc-ads-clickable-row td:first-child:after{content:"Voir détails";display:inline-flex;margin-left:8px;padding:2px 7px;border-radius:999px;background:#edf5f0;color:#376453;font-size:8px;font-weight:900;vertical-align:middle;opacity:0;transform:translateX(-4px);transition:.16s}
.gc-ads-drilldown-table tbody tr.gc-ads-clickable-row:hover td:first-child:after,.gc-ads-drilldown-table tbody tr.gc-ads-clickable-row:focus-visible td:first-child:after{opacity:1;transform:none}
body.gc-ads-modal-open{overflow:hidden}
.gc-ads-detail-modal[hidden]{display:none!important}.gc-ads-detail-modal{position:fixed;inset:0;z-index:9999;display:grid;grid-template-columns:minmax(0,1fr) min(760px,94vw)}
.gc-ads-detail-backdrop{grid-column:1/-1;grid-row:1;position:absolute;inset:0;background:rgba(8,28,21,.48);backdrop-filter:blur(2px)}
.gc-ads-detail-panel{grid-column:2;grid-row:1;position:relative;z-index:1;height:100vh;overflow:auto;background:#f6f9f7;box-shadow:-24px 0 70px rgba(10,36,27,.18);animation:gcAdsPanelIn .18s ease-out}
@keyframes gcAdsPanelIn{from{transform:translateX(24px);opacity:.5}to{transform:none;opacity:1}}
.gc-ads-detail-panel>header{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:24px 26px 20px;border-bottom:1px solid #dce8e1;background:rgba(255,255,255,.96);backdrop-filter:blur(8px)}
.gc-ads-detail-panel h2{margin:5px 0 5px;color:#123d2f;font-size:24px;line-height:1.15}.gc-ads-detail-panel header p{margin:0;color:#728078;font-size:11px}.gc-ads-detail-kicker{color:#2c7657;font-size:9px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.gc-ads-detail-close{flex:0 0 auto;width:42px;height:42px;border:1px solid #d6e2db;border-radius:12px;background:#fff;color:#315347;font-size:25px;line-height:1;cursor:pointer}.gc-ads-detail-close:hover{background:#eef7f2}
.gc-ads-detail-body{display:grid;gap:16px;padding:20px 26px 34px}.gc-ads-detail-body>section{padding:18px;border:1px solid #dce8e1;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(22,59,45,.04)}.gc-ads-detail-body h3{margin:0 0 13px;color:#173c2f;font-size:14px}
.gc-ads-detail-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.gc-ads-detail-metrics article{min-width:0;padding:12px;border:1px solid #e1ebe5;border-radius:12px;background:#f8fbf9}.gc-ads-detail-metrics span,.gc-ads-detail-metrics strong{display:block}.gc-ads-detail-metrics span{color:#718078;font-size:9px;font-weight:850;text-transform:uppercase}.gc-ads-detail-metrics strong{margin-top:5px;color:#123d2f;font-size:17px;overflow-wrap:anywhere}
.gc-ads-detail-fields{display:grid;grid-template-columns:1fr 1fr;gap:1px;border:1px solid #e2ebe6;border-radius:12px;overflow:hidden;background:#e2ebe6}.gc-ads-detail-fields>div{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(0,1.2fr);gap:12px;padding:10px 12px;background:#fff}.gc-ads-detail-fields span{color:#718078;font-size:10px}.gc-ads-detail-fields strong{color:#203d33;font-size:10px;text-align:right;overflow-wrap:anywhere}
.gc-ads-advice-list{display:grid;gap:9px}.gc-ads-advice{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:12px;border:1px solid #e2e9e5;border-radius:12px;background:#f9fbfa}.gc-ads-advice-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:#edf2ef}.gc-ads-advice-icon:before{content:"i";font-size:12px;font-weight:950}.gc-ads-advice strong{display:block;color:#244237;font-size:11px}.gc-ads-advice p{margin:3px 0 0;color:#68766f;font-size:10px;line-height:1.48}.gc-ads-advice.is-good{border-color:#c8e4d4;background:#f3fbf6}.gc-ads-advice.is-good .gc-ads-advice-icon{background:#dff4e7;color:#187046}.gc-ads-advice.is-good .gc-ads-advice-icon:before{content:"✓"}.gc-ads-advice.is-warning{border-color:#ead8ae;background:#fffaf0}.gc-ads-advice.is-warning .gc-ads-advice-icon{background:#fff0c9;color:#886000}.gc-ads-advice.is-warning .gc-ads-advice-icon:before{content:"!"}.gc-ads-advice.is-danger{border-color:#edc8cb;background:#fff6f6}.gc-ads-advice.is-danger .gc-ads-advice-icon{background:#f9dfe1;color:#a0323c}.gc-ads-advice.is-danger .gc-ads-advice-icon:before{content:"!"}.gc-ads-detail-note{margin:12px 0 0;padding-top:10px;border-top:1px solid #e6ece8;color:#829087;font-size:9px;line-height:1.5}
@media(max-width:760px){.gc-ads-detail-modal{grid-template-columns:1fr}.gc-ads-detail-panel{grid-column:1;width:100vw}.gc-ads-detail-panel>header{padding:18px}.gc-ads-detail-body{padding:14px 14px 28px}.gc-ads-detail-metrics{grid-template-columns:1fr 1fr}.gc-ads-detail-fields{grid-template-columns:1fr}.gc-ads-detail-fields>div{grid-template-columns:1fr}.gc-ads-detail-fields strong{text-align:left}.gc-ads-drilldown-table tbody tr.gc-ads-clickable-row td:first-child:after{display:none}}

/* GestiConnect V91-109 — Centre d'optimisation Google Ads */
.gc-ads-opt-center{margin:0 0 22px;border:1px solid #d9e7df;border-radius:22px;background:#f7faf8;box-shadow:0 14px 40px rgba(22,59,45,.07);overflow:hidden;color:#173d30}
.gc-ads-opt-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:22px 24px;border-bottom:1px solid #deebe4;background:linear-gradient(135deg,#fff,#f2f8f5)}
.gc-ads-opt-kicker{display:block;margin-bottom:5px;color:#2f795a;font-size:9px;font-weight:950;letter-spacing:.09em;text-transform:uppercase}.gc-ads-opt-head h2{margin:0;color:#123c2e;font-size:25px;letter-spacing:-.03em}.gc-ads-opt-head p{margin:7px 0 0;color:#6c7d74;font-size:11px;line-height:1.5}.gc-ads-opt-refresh{flex:0 0 auto;padding:10px 14px;border:1px solid #cfe0d6;border-radius:11px;background:#fff;color:#1d5a42;font-weight:900;cursor:pointer}.gc-ads-opt-refresh:hover{background:#eef8f2}
.gc-ads-opt-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:18px 22px 0}.gc-ads-opt-kpis article{display:grid;align-content:start;gap:4px;min-height:112px;padding:16px;border:1px solid #dce9e2;border-radius:15px;background:#fff}.gc-ads-opt-kpis span{color:#708077;font-size:9px;font-weight:900;text-transform:uppercase}.gc-ads-opt-kpis strong{color:#123c2e;font-size:26px;line-height:1}.gc-ads-opt-kpis strong small{margin-left:2px;color:#87968e;font-size:11px}.gc-ads-opt-kpis em{margin-top:5px;color:#738078;font-size:10px;font-style:normal;line-height:1.4}.gc-ads-opt-score{background:linear-gradient(145deg,#eff9f3,#fff)!important;border-color:#c8e3d4!important}.gc-ads-opt-score strong{color:#176b47!important}
.gc-ads-opt-quick{display:flex;flex-wrap:wrap;gap:8px;padding:14px 22px 18px}.gc-ads-opt-quick button{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #d5e2dc;border-radius:999px;background:#fff;color:#466057;font-size:10px;font-weight:900;cursor:pointer}.gc-ads-opt-quick button b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#edf3ef;color:#315347;font-size:9px}.gc-ads-opt-quick button.is-active{border-color:#1f6f50;background:#1f6f50;color:#fff}.gc-ads-opt-quick button.is-active b{background:rgba(255,255,255,.18);color:#fff}
.gc-ads-opt-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:14px;padding:0 22px 20px}.gc-ads-opt-actions,.gc-ads-opt-side>section{border:1px solid #dce8e1;border-radius:16px;background:#fff}.gc-ads-opt-actions{overflow:hidden}.gc-ads-opt-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 17px;border-bottom:1px solid #e4ece7}.gc-ads-opt-section-head h3,.gc-ads-opt-side h3{margin:0;color:#173d30;font-size:14px}.gc-ads-opt-section-head p{margin:3px 0 0;color:#79877f;font-size:9px}.gc-ads-opt-section-head>span{padding:5px 8px;border-radius:999px;background:#eef4f0;color:#4f675d;font-size:9px;font-weight:900}.gc-ads-opt-action-list{display:grid}
.gc-ads-opt-action{display:grid;grid-template-columns:120px minmax(0,1fr) 110px auto;gap:14px;align-items:center;padding:14px 16px;border-bottom:1px solid #e8eeea}.gc-ads-opt-action:last-child{border-bottom:0}.gc-ads-opt-action.is-high{background:#fff8f8}.gc-ads-opt-action.is-medium{background:#fffdf7}.gc-ads-opt-action.is-good{background:#f7fcf8}.gc-ads-opt-priority{display:grid;gap:4px}.gc-ads-opt-priority span{width:max-content;max-width:100%;padding:4px 7px;border-radius:999px;background:#edf2ef;color:#52665d;font-size:8px;font-weight:950;text-transform:uppercase}.gc-ads-opt-action.is-high .gc-ads-opt-priority span{background:#f8dfe1;color:#9d3038}.gc-ads-opt-action.is-medium .gc-ads-opt-priority span{background:#fff0cb;color:#8a6307}.gc-ads-opt-action.is-good .gc-ads-opt-priority span{background:#dff3e7;color:#1f704a}.gc-ads-opt-priority small{color:#7d8b84;font-size:8px;font-weight:800}.gc-ads-opt-action-main h4{margin:0 0 4px;color:#213f34;font-size:11px}.gc-ads-opt-action-main>strong{display:block;color:#315347;font-size:10px}.gc-ads-opt-action-main p{margin:4px 0 0;color:#718078;font-size:9px;line-height:1.45}.gc-ads-opt-action-metric{color:#173d30;font-size:11px;font-weight:950;text-align:right}.gc-ads-opt-action-buttons{display:flex;flex-direction:column;gap:5px}.gc-ads-opt-action-buttons button{white-space:nowrap;padding:7px 9px;border:1px solid #cfddd6;border-radius:8px;background:#fff;color:#2b604a;font-size:8px;font-weight:900;cursor:pointer}.gc-ads-opt-action-buttons button:hover{background:#eff7f2}.gc-ads-opt-action-buttons .is-done{border-color:#b9dec9;color:#1d6c48}.gc-ads-opt-action-buttons .is-ignore{border-color:#e2e5e3;color:#738078}
.gc-ads-opt-side{display:grid;align-content:start;gap:14px}.gc-ads-opt-side>section{padding:15px}.gc-ads-opt-side h3{margin-bottom:10px}.gc-ads-opt-mini{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;width:100%;padding:10px 0;border:0;border-bottom:1px solid #e8eeea;background:transparent;text-align:left;cursor:pointer}.gc-ads-opt-mini:last-child{border-bottom:0}.gc-ads-opt-mini span{overflow:hidden;color:#385348;font-size:9px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.gc-ads-opt-mini strong{color:#173d30;font-size:9px}.gc-ads-opt-mini.is-top:hover span{color:#1b724b}.gc-ads-opt-mini.is-flop:hover span{color:#9c3c43}.gc-ads-opt-empty{margin:0;color:#819087;font-size:9px}.gc-ads-opt-empty-state{padding:28px;text-align:center}.gc-ads-opt-empty-state strong{display:block;color:#2e4a3f;font-size:12px}.gc-ads-opt-empty-state p{margin:5px auto 0;max-width:480px;color:#7d8983;font-size:10px;line-height:1.5}
.gc-ads-opt-footer{display:flex;align-items:center;gap:10px;padding:11px 22px;border-top:1px solid #deebe4;background:#f2f7f4}.gc-ads-opt-footer span{flex:0 0 auto;padding:4px 7px;border-radius:999px;background:#e3f0e8;color:#2f6b50;font-size:8px;font-weight:950;text-transform:uppercase}.gc-ads-opt-footer p{margin:0;color:#718078;font-size:9px;line-height:1.45}
@media(max-width:1180px){.gc-ads-opt-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.gc-ads-opt-grid{grid-template-columns:1fr}.gc-ads-opt-side{grid-template-columns:1fr 1fr}.gc-ads-opt-action{grid-template-columns:110px minmax(0,1fr) 100px}.gc-ads-opt-action-buttons{grid-column:2/-1;flex-direction:row;justify-content:flex-end}}
@media(max-width:760px){.gc-ads-opt-center{border-radius:16px}.gc-ads-opt-head{padding:18px;flex-direction:column}.gc-ads-opt-kpis{grid-template-columns:1fr 1fr;padding:14px 14px 0}.gc-ads-opt-kpis article{min-height:96px;padding:13px}.gc-ads-opt-kpis strong{font-size:21px}.gc-ads-opt-quick{padding:12px 14px 15px;overflow:auto;flex-wrap:nowrap}.gc-ads-opt-quick button{flex:0 0 auto}.gc-ads-opt-grid{padding:0 14px 14px}.gc-ads-opt-side{grid-template-columns:1fr}.gc-ads-opt-action{grid-template-columns:1fr;gap:8px;padding:13px}.gc-ads-opt-action-metric{text-align:left}.gc-ads-opt-action-buttons{grid-column:auto;justify-content:flex-start;flex-wrap:wrap}.gc-ads-opt-footer{align-items:flex-start;padding:10px 14px}}

/* GestiConnect V91-110 — optimisation Google Ads séparée, plus explicite */
.gc-ads-opt-hidden-by-mode{display:none!important}
.gc-ads-opt-center.is-standalone{margin-top:0}
.gc-ads-opt-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.gc-ads-opt-back{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border:1px solid #cfe0d6;border-radius:11px;background:#eef7f2;color:#1d5a42;font-size:10px;font-weight:950;text-decoration:none}
.gc-ads-opt-back:hover{background:#e2f1e9}
.gc-ads-opt-how{margin:16px 22px 0;padding:16px 18px;border:1px solid #d9e7df;border-radius:16px;background:#fff}
.gc-ads-opt-how-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.gc-ads-opt-how-title span{color:#173d30;font-size:15px;font-weight:950}.gc-ads-opt-how-title strong{padding:5px 8px;border-radius:999px;background:#edf5f0;color:#426055;font-size:9px}
.gc-ads-opt-how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gc-ads-opt-how-grid article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:12px;border:1px solid #e1ebe5;border-radius:12px;background:#f9fbfa}.gc-ads-opt-how-grid article>b{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#1f6f50;color:#fff;font-size:13px}.gc-ads-opt-how-grid strong{display:block;color:#214438;font-size:11px}.gc-ads-opt-how-grid p{margin:4px 0 0;color:#66776f;font-size:10px;line-height:1.5}
.gc-ads-opt-explainer{display:flex;flex-wrap:wrap;gap:8px 14px;margin:14px 22px 0;padding:12px 14px;border:1px dashed #ceded5;border-radius:12px;background:#fbfdfc;color:#607269;font-size:9px;line-height:1.4}.gc-ads-opt-explainer>strong{width:100%;color:#264b3d;font-size:11px}.gc-ads-opt-explainer span b{color:#1f684c}
.gc-ads-opt-side-help{margin:-4px 0 8px;color:#7c8a83;font-size:9px;line-height:1.45}
.gc-ads-opt-action-main h4{font-size:13px;line-height:1.3}.gc-ads-opt-action-main>strong{font-size:11px}.gc-ads-opt-explain{display:grid;gap:6px;margin-top:7px}.gc-ads-opt-explain p{margin:0!important;color:#64756d!important;font-size:10.5px!important;line-height:1.55!important}.gc-ads-opt-explain p b{color:#294c3f}.gc-ads-opt-action-metric{font-size:12px}.gc-ads-opt-action-buttons button{font-size:9px;padding:8px 10px}
.gc-ads-opt-section-head h3{font-size:16px}.gc-ads-opt-section-head p{font-size:10px;line-height:1.45;max-width:720px}.gc-ads-opt-side h3{font-size:15px}
.gc-ads-opt-kpis span{font-size:10px}.gc-ads-opt-kpis em{font-size:10.5px;line-height:1.45}
.gc-ads-opt-quick button{font-size:10.5px}

/* Détails : rendre Analyse & conseils nettement plus lisible */
.gc-ads-advice-section h3{font-size:19px!important;line-height:1.2;margin-bottom:14px!important}
.gc-ads-advice{grid-template-columns:34px minmax(0,1fr);gap:12px;padding:14px}
.gc-ads-advice-icon{width:34px;height:34px;border-radius:10px}.gc-ads-advice-icon:before{font-size:14px}
.gc-ads-advice strong{font-size:13px;line-height:1.35}
.gc-ads-advice p{font-size:12px;line-height:1.58;margin-top:5px}
.gc-ads-detail-note{font-size:10.5px;line-height:1.55}

@media(max-width:900px){.gc-ads-opt-how-grid{grid-template-columns:1fr}.gc-ads-opt-head-actions{justify-content:flex-start}.gc-ads-opt-explainer{display:grid;gap:6px}}
@media(max-width:760px){.gc-ads-opt-how{margin:12px 14px 0;padding:13px}.gc-ads-opt-how-title{align-items:flex-start;flex-direction:column}.gc-ads-opt-explainer{margin:12px 14px 0}.gc-ads-advice-section h3{font-size:17px!important}.gc-ads-advice strong{font-size:12.5px}.gc-ads-advice p{font-size:11.5px}}

/* GestiConnect V91-111 — filtres de période du Centre d’optimisation Google Ads */
.gc-ads-opt-period{margin:18px 0 20px;padding:18px 20px;border:1px solid #d8e8df;border-radius:18px;background:#fff}.gc-ads-opt-period-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:14px}.gc-ads-opt-period-head>div{display:flex;flex-direction:column;gap:3px}.gc-ads-opt-period-head span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#64786e}.gc-ads-opt-period-head strong{font-size:21px;color:#173f31}.gc-ads-opt-period-head small{max-width:650px;font-size:13px;line-height:1.45;color:#667a71;text-align:right}.gc-ads-opt-period-presets{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:14px}.gc-ads-opt-period-chip{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 15px;border:1px solid #cfe0d7;border-radius:999px;background:#fff;color:#234a3c;text-decoration:none;font-weight:750;font-size:13px}.gc-ads-opt-period-chip:hover{border-color:#1d7758;background:#f4fbf7}.gc-ads-opt-period-chip.is-active{background:#1f7d5c;border-color:#1f7d5c;color:#fff;box-shadow:0 4px 12px rgba(31,125,92,.16)}.gc-ads-opt-custom-period{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;padding-top:13px;border-top:1px dashed #d8e8df}.gc-ads-opt-custom-period label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:800;color:#51685d}.gc-ads-opt-custom-period input[type=date]{min-height:40px;padding:0 11px;border:1px solid #bfd5ca;border-radius:10px;background:#fff;color:#173f31;font:inherit}.gc-ads-opt-custom-period button{min-height:40px;padding:0 18px;border:0;border-radius:10px;background:#173f31;color:#fff;font-weight:800;cursor:pointer}.gc-ads-opt-custom-period button:hover{background:#1f7d5c}@media(max-width:900px){.gc-ads-opt-period-head{align-items:flex-start;flex-direction:column;gap:6px}.gc-ads-opt-period-head small{text-align:left}.gc-ads-opt-period-presets{gap:7px}.gc-ads-opt-period-chip{font-size:12px;padding:0 12px}.gc-ads-opt-custom-period{align-items:stretch}.gc-ads-opt-custom-period label{flex:1 1 150px}.gc-ads-opt-custom-period button{width:100%}}
\n\n/* GestiConnect V91-187 - correctif affichage Google Ads detail / optimisation */\n#gc-ads-detail-modal.gc-ads-detail-modal{position:fixed!important;inset:0!important;z-index:2147483000!important;display:grid!important;grid-template-columns:minmax(0,1fr) min(780px,95vw)!important;width:100vw!important;height:100vh!important;margin:0!important;padding:0!important;background:transparent!important}\n#gc-ads-detail-modal.gc-ads-detail-modal[hidden]{display:none!important}\n#gc-ads-detail-modal .gc-ads-detail-backdrop{position:absolute!important;inset:0!important;background:rgba(8,28,21,.52)!important}\n#gc-ads-detail-modal .gc-ads-detail-panel{grid-column:2!important;position:relative!important;z-index:2!important;width:100%!important;height:100vh!important;max-height:100vh!important;overflow:auto!important;background:#f6f9f7!important}\n#gc-ads-detail-modal .gc-ads-detail-body{display:grid!important;gap:16px!important;padding:20px 26px 34px!important}\n#gc-ads-detail-modal .gc-ads-detail-body>section{display:block!important;padding:18px!important;border:1px solid #dce8e1!important;border-radius:16px!important;background:#fff!important}\n#gc-ads-optimization-center.gc-ads-opt-center{display:block!important;width:auto!important;max-width:none!important;margin:0 0 22px!important;border:1px solid #d9e7df!important;border-radius:22px!important;background:#f7faf8!important;overflow:hidden!important}\n#gc-ads-optimization-center .gc-ads-opt-kpis{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}\n#gc-ads-optimization-center .gc-ads-opt-grid{display:grid!important;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr)!important;gap:14px!important}\n#gc-ads-optimization-center .gc-ads-opt-action{display:grid!important;grid-template-columns:120px minmax(0,1fr) 110px auto!important;gap:14px!important;align-items:center!important}\n@media(max-width:1180px){#gc-ads-optimization-center .gc-ads-opt-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}#gc-ads-optimization-center .gc-ads-opt-grid{grid-template-columns:1fr!important}}\n@media(max-width:760px){#gc-ads-detail-modal.gc-ads-detail-modal{grid-template-columns:1fr!important}#gc-ads-detail-modal .gc-ads-detail-panel{grid-column:1!important;width:100vw!important}#gc-ads-optimization-center .gc-ads-opt-kpis{grid-template-columns:1fr 1fr!important}#gc-ads-optimization-center .gc-ads-opt-action{grid-template-columns:1fr!important}}\n
/* GestiConnect V91-190 - fiches conversion Google Ads lisibles + aucune donnée agrégée répétée */
.gc-conversion-detail-grid{
  grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
}
.gc-conversion-detail-card{min-width:0!important;overflow:hidden!important}
.gc-conversion-detail-card .card-header{padding:18px 24px!important}
.gc-conversion-detail-card .card-header h2{font-size:18px!important;line-height:1.25!important;margin:0!important}
.gc-conversion-detail-card .card-body{padding:20px 24px 24px!important;min-width:0!important}
.gc-conversion-detail-list{
  display:grid!important;
  grid-template-columns:minmax(135px,38%) minmax(0,1fr)!important;
  column-gap:18px!important;
  row-gap:12px!important;
  align-items:start!important;
  margin:0!important;
}
.gc-conversion-detail-list dt{
  min-width:0!important;
  margin:0!important;
  color:#65736d!important;
  font-size:12px!important;
  font-weight:850!important;
  line-height:1.42!important;
}
.gc-conversion-detail-list dd{
  min-width:0!important;
  margin:0!important;
  color:#29443a!important;
  font-size:13px!important;
  line-height:1.48!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.gc-conversion-detail-list dd strong{display:block!important;min-width:0!important;overflow-wrap:anywhere!important;word-break:break-word!important}
.gc-conversion-detail-list dd small,
.gc-conversion-detail-list .gc-detail-value small{
  display:block!important;
  margin:4px 0 0!important;
  color:#66776f!important;
  font-size:10.5px!important;
  font-weight:500!important;
  line-height:1.45!important;
  overflow-wrap:anywhere!important;
}
.gc-conversion-detail-list .gc-detail-value>strong{font-size:13.5px!important;line-height:1.4!important}
.gc-conversion-value-list .gc-detail-value>strong{font-size:14px!important;color:#173f31!important}
.gc-conversion-detail-card .break-word{overflow-wrap:anywhere!important;word-break:break-word!important;white-space:normal!important}
@media(max-width:1180px){
  .gc-conversion-detail-grid{grid-template-columns:1fr 1fr!important}
  .gc-conversion-detail-grid>.gc-conversion-detail-card:last-child{grid-column:1/-1!important}
}
@media(max-width:760px){
  .gc-conversion-detail-grid{grid-template-columns:1fr!important}
  .gc-conversion-detail-grid>.gc-conversion-detail-card:last-child{grid-column:auto!important}
  .gc-conversion-detail-list{grid-template-columns:1fr!important;row-gap:5px!important}
  .gc-conversion-detail-list dt{margin-top:8px!important}
  .gc-conversion-detail-list dd{padding-bottom:6px!important;border-bottom:1px solid #edf2ef!important}
}

/* Contraste des recherches dans tous les modules. */
:is(input[type="search"],input[name="q"],input[name="search"],input[placeholder*="recherch" i],input[id*="search" i],.gc-live-search input,[data-stock-select-search]){border:2px solid #304f43!important;color:#183b30!important;font-weight:600;background-color:#fff}
:is(input[type="search"],input[name="q"],input[name="search"],input[placeholder*="recherch" i],input[id*="search" i],.gc-live-search input,[data-stock-select-search])::placeholder{color:#40564c!important;opacity:1!important;font-weight:600}
:is(input[type="search"],input[name="q"],input[name="search"],input[placeholder*="recherch" i],input[id*="search" i],.gc-live-search input,[data-stock-select-search]):focus{border-color:#123e2d!important;outline:2px solid #577e69;outline-offset:2px}

/* === v31.css === */
.v31-hero{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:24px;border:1px solid #dfe6ef;border-radius:22px;background:linear-gradient(135deg,#fff,#f4f7ff);margin-bottom:18px}.v31-hero h2{font-size:25px;margin:0 0 8px;color:#10233c}.v31-hero p{margin:0;color:#627089;max-width:760px;line-height:1.65}.v31-actions{display:flex;gap:9px;flex-wrap:wrap}.v31-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.v31-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}.v31-card{background:#fff;border:1px solid #dfe6ef;border-radius:18px;padding:18px;box-shadow:0 8px 24px rgba(16,35,60,.04);min-width:0}.v31-card h3{margin:0 0 10px;font-size:16px;color:#10233c}.v31-card p{color:#68758b;font-size:12px;line-height:1.6}.v31-kpi small{display:block;color:#78849a;text-transform:uppercase;letter-spacing:.08em;font-size:9px}.v31-kpi strong{display:block;font-size:28px;margin-top:7px;color:#10233c}.v31-kpi span{font-size:10px;color:#20815e}.v31-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.v31-tab{border:1px solid #dfe6ef;background:#fff;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:800;color:#536078}.v31-badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#edf0ff;color:#4e56ba;font-size:9px;font-weight:900}.v31-badge.ok{background:#e9f8f1;color:#157b57}.v31-badge.warn{background:#fff4e5;color:#a45d1e}.v31-badge.bad{background:#fff0f1;color:#b63c48}.v31-table-wrap{overflow:auto}.v31-table{width:100%;border-collapse:collapse;min-width:780px}.v31-table th,.v31-table td{padding:11px 10px;border-bottom:1px solid #e9edf3;text-align:left;font-size:11px;vertical-align:top}.v31-table th{font-size:9px;text-transform:uppercase;letter-spacing:.07em;color:#7b879b;background:#f8fafc}.v31-table td strong{color:#14283f}.v31-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v31-form .full{grid-column:1/-1}.v31-form label{display:grid;gap:5px;font-size:10px;font-weight:800;color:#58657b}.v31-form input,.v31-form select,.v31-form textarea{width:100%;border:1px solid #dce3ec;border-radius:10px;padding:10px 11px;background:#fff;font-size:12px}.v31-form textarea{min-height:90px;resize:vertical}.v31-section-title{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:22px 0 12px}.v31-section-title h2{font-size:18px;margin:0;color:#10233c}.v31-list{display:grid;gap:9px}.v31-list-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px;border:1px solid #e2e7ee;border-radius:13px;background:#fbfcfe}.v31-list-item strong{display:block;font-size:11px}.v31-list-item small{display:block;color:#7c8798;font-size:9px;margin-top:3px}.v31-score{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;font-weight:900;background:conic-gradient(#4f63db var(--score),#e9edf4 0);position:relative}.v31-score:after{content:"";position:absolute;inset:7px;background:#fff;border-radius:50%}.v31-score span{position:relative;z-index:1;font-size:13px}.v31-timeline{display:grid;gap:8px}.v31-timeline div{padding:11px;border-left:3px solid #5d67d8;background:#f8f9ff;border-radius:0 12px 12px 0}.v31-timeline strong{font-size:11px}.v31-timeline small{display:block;font-size:9px;color:#6f7a8d;margin-top:3px}.v31-public-shell{max-width:760px;margin:32px auto;padding:0 16px}.v31-public-card{background:#fff;border:1px solid #dfe6ef;border-radius:24px;box-shadow:0 20px 60px rgba(16,35,60,.1);overflow:hidden}.v31-public-head{padding:24px;background:linear-gradient(135deg,#193b32,#285d4b);color:#fff}.v31-public-body{padding:22px}.v31-stepbar{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}.v31-step{padding:10px;border-radius:12px;background:#edf1f5;text-align:center;font-size:10px}.v31-step.active{background:#dff5eb;color:#0d6a49;font-weight:900}.v31-lines{display:grid;gap:8px}.v31-line{display:grid;grid-template-columns:1fr auto;gap:10px;padding:10px;border:1px solid #e4e9ef;border-radius:11px}.v31-line span{font-size:11px}.v31-line b{font-size:11px}.v31-risk-high{color:#b33b48}.v31-risk-medium{color:#a15f1e}.v31-risk-low{color:#177d58}
@media(max-width:980px){.v31-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v31-grid-2{grid-template-columns:1fr}.v31-hero{flex-direction:column}.v31-form{grid-template-columns:1fr}.v31-form .full{grid-column:auto}}
@media(max-width:620px){.v31-grid{grid-template-columns:1fr}.v31-stepbar{grid-template-columns:1fr 1fr}.v31-actions{width:100%}.v31-actions .btn{flex:1}}

/* === v33.css === */

/* GestiConnect V33 - devis et facturation rapide */
.quick-doc-page{max-width:1180px;margin:0 auto}.quick-doc-head{align-items:flex-start}.quick-doc-head h2{margin-bottom:5px}.quick-doc-head p{max-width:720px}.quick-auto-banner{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;margin-bottom:16px;border:1px solid #cdebdc;border-radius:14px;background:#eef9f4;color:#205f49}.quick-auto-banner strong{display:block;margin-bottom:3px}.quick-auto-banner span{font-size:12px;line-height:1.5}.quick-document-form{display:grid;gap:16px}.quick-card{overflow:visible}.quick-card .card-header{padding:16px 18px}.quick-card .card-header h2{font-size:17px}.quick-card .card-header p{margin:3px 0 0;font-size:11px;color:var(--muted)}.quick-card .card-body{padding:18px}.quick-mode-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}.quick-mode-tab{border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 12px;font-size:11px;font-weight:800;color:#687286}.quick-mode-tab.is-active{background:#163b2d;color:#fff;border-color:#163b2d}.quick-client-panel[hidden]{display:none!important}.quick-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-full{grid-column:1/-1}.quick-company-search{display:grid;grid-template-columns:1fr auto;gap:8px}.quick-company-results{display:grid;gap:7px;margin-top:9px}.quick-company-result{border:1px solid var(--line);background:#fff;border-radius:12px;padding:11px;text-align:left}.quick-company-result:hover{border-color:#8aa99a;background:#f7fbf9}.quick-company-result strong{display:block;font-size:12px}.quick-company-result small{display:block;color:var(--muted);font-size:10px;margin-top:3px;line-height:1.4}.quick-company-selected{margin-top:11px;padding:12px;border:1px solid #cdebdc;border-radius:13px;background:#f2fbf6}.quick-company-selected strong{display:block}.quick-company-selected small{color:var(--muted)}.quick-document-basics{display:grid;grid-template-columns:repeat(2,minmax(240px,1fr));gap:12px}.quick-lines-wrap{overflow:auto}.quick-lines{min-width:720px}.quick-lines th{font-size:10px}.quick-lines td{vertical-align:middle}.quick-lines .quick-catalog{min-width:150px}.quick-lines .quick-description{min-width:240px}.quick-lines input,.quick-lines select{min-height:40px}.quick-total-grid{display:grid;grid-template-columns:1fr 300px;gap:18px;align-items:start}.quick-hint{padding:13px;border:1px solid var(--line);border-radius:13px;background:#fafbfd;color:var(--muted);font-size:11px;line-height:1.55}.quick-summary{padding:14px;border-radius:14px;background:#f7f9fc;border:1px solid var(--line)}.quick-summary-row{display:flex;justify-content:space-between;gap:15px;padding:6px 0;font-size:12px}.quick-summary-row.total{padding-top:10px;margin-top:5px;border-top:1px solid var(--line);font-size:15px}.quick-advanced{border:1px solid var(--line);border-radius:15px;background:#fff}.quick-advanced>summary{cursor:pointer;list-style:none;padding:14px 16px;font-weight:800;font-size:12px}.quick-advanced>summary::-webkit-details-marker{display:none}.quick-advanced>summary:after{content:'+';float:right;font-size:18px}.quick-advanced[open]>summary:after{content:'-'} .quick-advanced-body{padding:0 16px 16px}.quick-actions{position:sticky;bottom:0;z-index:10;display:flex;justify-content:flex-end;gap:10px;padding:13px 16px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);box-shadow:0 -8px 30px rgba(20,30,50,.08)}.quick-actions .btn-primary{min-width:190px}.quick-source-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.quick-source-item{padding:10px;border-radius:11px;background:#f7f9fc;border:1px solid var(--line)}.quick-source-item small{display:block;color:var(--muted);font-size:9px}.quick-source-item strong{display:block;margin-top:3px;font-size:11px}.quick-error{padding:9px 10px;border-radius:10px;background:#fff3f3;color:#a33c46;font-size:10px}.quick-loading{padding:9px 10px;color:var(--muted);font-size:10px}.quick-intervention-button{display:inline-flex;margin:0}.quick-intervention-button button{height:100%}
@media(max-width:900px){.quick-document-basics{grid-template-columns:1fr 1fr}.quick-document-basics .quick-subject{grid-column:1/-1}.quick-total-grid{grid-template-columns:1fr}.quick-form-grid{grid-template-columns:1fr}.quick-full{grid-column:auto}.quick-source-summary{grid-template-columns:1fr}}
@media(max-width:600px){.quick-document-basics{grid-template-columns:1fr}.quick-document-basics .quick-subject{grid-column:auto}.quick-company-search{grid-template-columns:1fr}.quick-mode-tabs{display:grid;grid-template-columns:1fr}.quick-actions{flex-direction:column}.quick-actions .btn{width:100%}}


/* GestiConnect V38 - contacts obligatoires souples et formulaire simplifie */
.quick-contact-guide{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;padding:11px 13px;border:1px solid #d9e4f4;border-radius:12px;background:#f7faff;color:#40506a}
.quick-contact-guide strong{font-size:11px;color:#203654}.quick-contact-guide span{font-size:10px;line-height:1.4}
.quick-contact-field{position:relative;padding:10px;border-radius:13px;border:1px solid transparent;transition:.18s ease}
.quick-contact-field label{display:flex;justify-content:space-between;gap:8px;align-items:center}.quick-contact-field label span{font-size:8px;text-transform:uppercase;letter-spacing:.04em;padding:4px 6px;border-radius:999px}
.quick-contact-phone{background:#eef6ff;border-color:#c8ddf8}.quick-contact-phone label{color:#1e5d9e}.quick-contact-phone label span{background:#dcecff;color:#245f9c}
.quick-contact-email{background:#f6f1ff;border-color:#ddcffb}.quick-contact-email label{color:#6740a4}.quick-contact-email label span{background:#eadeff;color:#6740a4}
.quick-contact-field.is-contact-complete{border-color:#8bd0b4;box-shadow:0 0 0 2px rgba(24,169,120,.08)}
.quick-contact-field.is-contact-complete label span{background:#dff5eb;color:#167956}
.quick-existing-contact{margin-top:8px;padding:8px 10px;border-radius:10px;font-size:10px;line-height:1.4}.quick-existing-contact:empty{display:none}.quick-existing-contact.is-ok{background:#eaf8f2;color:#167956}.quick-existing-contact.is-warning{background:#fff4e7;color:#9a5b1e}
@media(max-width:900px){.quick-document-basics{grid-template-columns:1fr}.quick-contact-guide{align-items:flex-start;flex-direction:column}}

/* V40 abonnement */
.subscription-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.subscription-current h3{margin:8px 0}.subscription-current p{font-size:12px;color:var(--muted)}.subscription-form{display:grid;gap:18px}.plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.plan-card{position:relative;border:1px solid var(--line);border-radius:14px;padding:14px;cursor:pointer}.plan-card input{position:absolute;opacity:0}.plan-card:has(input:checked){border-color:#2d7a5c;background:#f0faf5;box-shadow:0 0 0 2px rgba(45,122,92,.08)}.plan-card strong,.plan-card b,.plan-card small{display:block}.plan-card b{font-size:18px;margin:8px 0}.plan-card small{color:var(--muted)}.subscription-select-grid,.subscription-method-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.subscription-payment-form{display:grid;gap:12px;max-width:760px}.subscription-transfer-note{padding:13px;border:1px solid #cfe0f6;border-radius:12px;background:#f4f8ff;color:#355273}.saved-methods{display:grid;gap:8px;margin-top:18px}.saved-method{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px;border:1px solid var(--line);border-radius:12px}.saved-method strong,.saved-method small{display:block}.saved-method small{color:var(--muted);margin-top:3px}.client-kind-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.client-kind-tab{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff;font-weight:800;text-align:center;cursor:pointer}.client-kind-tab:has(input:checked){background:#163b2d;color:#fff;border-color:#163b2d}.client-kind-tab input{position:absolute;opacity:0}.intervention-client-panel[hidden]{display:none!important}.intervention-company-search{display:grid;grid-template-columns:1fr auto;gap:8px}.intervention-company-results{display:grid;gap:7px;margin-top:8px}.intervention-company-result{border:1px solid var(--line);border-radius:11px;padding:10px;background:#fff;text-align:left}.intervention-company-result strong,.intervention-company-result small{display:block}.intervention-company-result small{color:var(--muted);margin-top:3px}.contact-one-required{grid-column:1/-1;padding:10px 12px;border-radius:11px;background:#f4f7ff;border:1px solid #d5def7;color:#344d86;font-size:11px}.intervention-phone{border-color:#82aef4!important;background:#f6f9ff!important}.intervention-email{border-color:#b79bef!important;background:#fbf8ff!important}@media(max-width:900px){.plan-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.subscription-status-grid,.plan-grid,.subscription-select-grid,.subscription-method-fields,.client-kind-tabs{grid-template-columns:1fr}.intervention-company-search{grid-template-columns:1fr}}

/* === v41.css === */
/* GestiConnect V41 */
.customer-entry-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}
.customer-entry-card{appearance:none;border:1px solid #dfe5ef;background:#fff;border-radius:16px;padding:18px;text-align:left;display:grid;gap:5px;color:#172033;box-shadow:0 8px 24px rgba(25,40,75,.05)}
.customer-entry-card span{font-size:24px}.customer-entry-card strong{font-size:14px}.customer-entry-card small{color:#6d778d;font-size:11px;line-height:1.45}
.customer-entry-card:hover,.customer-entry-card.active{border-color:#6b5cff;background:#f7f5ff;box-shadow:0 0 0 3px rgba(107,92,255,.08)}
.customer-entry-card.import{border-color:#bed8ff;background:#f4f8ff}
.customer-company-search{display:grid;grid-template-columns:1fr auto;gap:8px}.customer-company-results{display:grid;gap:8px;margin-top:9px}
.customer-company-result{border:1px solid #dfe5ef;border-radius:12px;background:#fff;padding:11px 13px;text-align:left;display:grid;gap:3px}.customer-company-result:hover{border-color:#6b5cff;background:#f8f6ff}.customer-company-result strong{font-size:12px}.customer-company-result small{font-size:10px;color:#6d778d;line-height:1.45}
.customer-smart-form [hidden]{display:none!important}

.lead-card.status-new{background:#fff1f2;border-color:#f3a5ad}.lead-card.status-contacted{background:#eef6ff;border-color:#91c3f5}.lead-card.status-converted{background:#edf9f2;border-color:#8bd4ac}.lead-card.status-qualified{background:#fff9e8;border-color:#e8cc74}.lead-card.status-archived,.lead-card.status-spam{background:#f4f5f7;border-color:#d6d9df}
.lead-card.status-new .platform-status{background:#c93445;color:#fff}.lead-card.status-contacted .platform-status{background:#2679c9;color:#fff}.lead-card.status-converted .platform-status{background:#16815d;color:#fff}
.lead-quick-actions{display:flex;gap:7px;flex-wrap:wrap}.lead-quick-actions form{margin:0}

.day-status-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:12px 0 16px}.day-status-chip{border:1px solid #dfe5ef;border-radius:12px;background:#fff;padding:10px 12px;display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:10px}.day-status-chip strong{font-size:17px}.day-status-chip.booked{border-left:5px solid #e0b12f}.day-status-chip.assigned{border-left:5px solid #db4d56}.day-status-chip.in_progress{border-left:5px solid #347fd2}.day-status-chip.completed{border-left:5px solid #28a36e}.day-status-chip.total{border-left:5px solid #6b5cff}
.dense-planning-table{width:100%;border-collapse:collapse}.dense-planning-table th,.dense-planning-table td{padding:9px 8px;border-bottom:1px solid #e7ebf2;text-align:left;font-size:10px;vertical-align:top}.dense-planning-table th{position:sticky;top:0;background:#f7f9fc;z-index:2;color:#667187;text-transform:uppercase;letter-spacing:.04em;font-size:8px}.dense-planning-table tr:hover{background:#f8faff}.dense-planning-table .status-dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:5px}.status-dot.booked{background:#e0b12f}.status-dot.assigned{background:#db4d56}.status-dot.in_progress{background:#347fd2}.status-dot.completed{background:#28a36e}

.cms-auto-package{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid #cfe0ff;background:#f3f7ff;border-radius:14px;margin:14px 0}.cms-auto-package div{display:grid;gap:4px}.cms-auto-package strong{font-size:12px}.cms-auto-package small{font-size:10px;color:#65728a}.cms-auto-actions{display:flex;gap:8px;flex-wrap:wrap}
.official-login-note{padding:12px 14px;border-radius:12px;background:#f3f7ff;border:1px solid #cbdcff;color:#40516f;font-size:11px;line-height:1.55}

@media(max-width:900px){.customer-entry-choices{grid-template-columns:1fr}.day-status-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.dense-planning-table{min-width:760px}}


/* GestiConnect V90.2 — cartes formulaires plus compactes */
.lead-card{padding:14px;border-radius:14px}
.lead-card-head{align-items:flex-start;gap:12px}
.lead-card-head h3{margin:6px 0 3px;font-size:16px;line-height:1.25}
.lead-card-head p{font-size:14px;line-height:1.35}
.lead-card .badge{font-size:11px;padding:6px 10px}
.lead-card .platform-status{padding:6px 10px;font-size:11px;line-height:1.2;align-self:flex-start}
.lead-card-grid{gap:8px;margin:12px 0;grid-template-columns:repeat(6,minmax(0,1fr))}
.lead-card-grid>div{padding:8px 10px;border-radius:9px}
.lead-card-grid small{font-size:11px;margin-bottom:3px}
.lead-card-grid strong{font-size:14px;line-height:1.3}
.lead-message{margin:0 0 10px;font-size:14px;line-height:1.5}
.lead-quick-actions{gap:8px}
.lead-quick-actions .btn{padding:9px 12px;font-size:13px}
@media(min-width:1201px){.lead-card-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:1200px){.lead-card{padding:13px}.lead-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.lead-card-head{flex-direction:column}.lead-card .platform-status{align-self:flex-start}.lead-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.lead-card-grid{grid-template-columns:1fr}.lead-quick-actions .btn{width:100%;justify-content:center}}

/* GestiConnect V91.4 — demandes en liste compacte */
.lead-list-card .card-header{padding:14px 18px}
.lead-list-card .card-header h3{margin:0 0 3px}
.lead-list-card .card-header p{margin:0;color:#6b7888;font-size:12px}
.lead-list-table{min-width:1040px}
.lead-list-table th{padding:10px 14px;font-size:10px}
.lead-list-table td{padding:11px 14px;vertical-align:middle;font-size:12px}
.lead-list-table td:first-child{width:34%}
.lead-list-table td:nth-child(2){width:19%}
.lead-list-table td:nth-child(3){width:13%}
.lead-list-table td:nth-child(4){width:14%}
.lead-list-table td:nth-child(5){width:9%}
.lead-list-table td:last-child{width:11%}
.lead-list-table a{color:inherit}
.lead-row.status-new{background:#fff1f2;border-left:5px solid #d32f45}
.lead-row.status-contacted{background:#eef6ff;border-left:5px solid #2679c9}
.lead-row.status-converted{background:#e8f8ee;border-left:5px solid #1f9b66}
.lead-row.status-qualified{background:#fff9e8;border-left:5px solid #d5a514}
.lead-row.status-archived,.lead-row.status-spam{background:#f4f5f7;border-left:5px solid #aeb5bf}
.lead-row-subject{margin-top:2px;line-height:1.25}
.lead-site-label{display:inline-flex;margin-top:6px;padding:3px 7px;border-radius:999px;background:#edf2f6;color:#31516e;font-size:9px;font-weight:800;line-height:1.2}
.lead-row-message{margin-top:5px;max-width:520px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.25}
.lead-row-actions{display:flex;justify-content:flex-end;align-items:center;gap:6px;white-space:nowrap}
.lead-row-actions form{margin:0}
.lead-row-actions .btn{padding:7px 9px;font-size:10px;min-height:32px}
.lead-list-table .platform-status{padding:5px 8px;font-size:9px}
@media(max-width:900px){.lead-list-table{min-width:920px}.lead-row-actions{flex-wrap:wrap;white-space:normal}}

/* === v42.css === */
.v42-kpis .card { text-decoration:none; color:inherit; }
.v42-kpis .stat small { display:block; margin-top:6px; color:var(--muted, #64748b); }
.v42-kpis .stat-alert { border-color:#ef4444; background:#fff7f7; }
.v42-filter-card { margin:18px 0; padding:14px; }
.v42-status-filters { display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.status-filter { display:inline-flex; align-items:center; min-height:36px; padding:7px 12px; border:1px solid #dbe3e8; border-radius:999px; color:#334155; background:#fff; text-decoration:none; font-weight:700; font-size:.86rem; }
.status-filter:hover,.status-filter.active { border-color:#14532d; background:#ecfdf5; color:#14532d; }
.v42-row-actions { display:flex; gap:6px; flex-wrap:wrap; align-items:center; min-width:230px; }
.v42-row-actions form { margin:0; }
.v42-row-actions select { min-width:145px; padding:7px; }
.sales-status-confirmed,.sales-status-preparing,.purchase-status-to_pay { background:#fef3c7; color:#92400e; }
.sales-status-ready,.purchase-status-partially_paid { background:#dbeafe; color:#1d4ed8; }
.sales-status-delivered,.sales-status-invoiced,.purchase-status-paid,.delivery-status-delivered { background:#dcfce7; color:#166534; }
.sales-status-cancelled,.purchase-status-cancelled { background:#e2e8f0; color:#475569; }
.row-danger { background:#fff1f2; }
.v42-payment-form { display:grid; grid-template-columns:minmax(90px,110px) minmax(105px,130px) minmax(100px,1fr) auto; gap:6px; align-items:center; min-width:470px; }
.v42-payment-form input,.v42-payment-form select { min-width:0; padding:7px; }

/* Planning V42 : lecture immédiate d'une journée et colonnes par statut. */
.day-focus-header { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:16px; }
.day-focus-date { display:flex; align-items:center; gap:10px; }
.day-focus-date h2 { margin:0; font-size:1.25rem; }
.day-nav-button { width:38px; height:38px; border-radius:10px; display:grid; place-items:center; border:1px solid #d9e2e7; background:#fff; color:#163b2d; text-decoration:none; font-size:1.2rem; font-weight:800; }
.day-status-toolbar { display:grid; grid-template-columns:repeat(5,minmax(120px,1fr)); gap:10px; margin:16px 0 20px; }
.day-status-filter { border:1px solid #dbe3e8; border-radius:14px; background:#fff; color:#334155; text-decoration:none; padding:12px 14px; display:flex; justify-content:space-between; align-items:center; gap:8px; font-weight:800; box-shadow:0 3px 12px rgba(15,23,42,.04); }
.day-status-filter strong { min-width:28px; height:28px; display:grid; place-items:center; border-radius:999px; background:#f1f5f9; }
.day-status-filter:hover,.day-status-filter.active { transform:translateY(-1px); border-color:#163b2d; box-shadow:0 6px 18px rgba(15,23,42,.08); }
.day-status-filter.status-booked.active { background:#fffbeb; border-color:#f59e0b; }
.day-status-filter.status-assigned.active { background:#fff1f2; border-color:#ef4444; }
.day-status-filter.status-in_progress.active { background:#eff6ff; border-color:#3b82f6; }
.day-status-filter.status-completed.active { background:#f0fdf4; border-color:#22c55e; }
.daily-status-board { display:grid; grid-template-columns:repeat(4,minmax(250px,1fr)); gap:14px; align-items:start; overflow-x:auto; padding-bottom:10px; }
.daily-status-board.is-filtered { grid-template-columns:minmax(300px,760px); }
.daily-status-column { border:1px solid #dce5e9; border-radius:16px; background:#f8fafc; min-height:180px; overflow:hidden; }
.daily-status-column-head { position:sticky; top:0; z-index:2; display:flex; justify-content:space-between; align-items:center; gap:10px; padding:13px 14px; background:#fff; border-bottom:1px solid #e2e8f0; }
.daily-status-column-head h3 { margin:0; font-size:.98rem; }
.daily-status-column-head strong { min-width:30px; height:30px; display:grid; place-items:center; border-radius:999px; background:#eef2f6; }
.daily-status-column.status-booked .daily-status-column-head { border-top:4px solid #f59e0b; }
.daily-status-column.status-assigned .daily-status-column-head { border-top:4px solid #ef4444; }
.daily-status-column.status-in_progress .daily-status-column-head { border-top:4px solid #3b82f6; }
.daily-status-column.status-completed .daily-status-column-head { border-top:4px solid #22c55e; }
.daily-status-list { display:flex; flex-direction:column; gap:9px; padding:10px; max-height:68vh; overflow-y:auto; }
.daily-task-card { display:block; padding:11px 12px; border-radius:12px; border:1px solid #e2e8f0; background:#fff; color:#172033; text-decoration:none; box-shadow:0 2px 8px rgba(15,23,42,.04); }
.daily-task-card:hover { border-color:#94a3b8; box-shadow:0 6px 16px rgba(15,23,42,.08); }
.daily-task-time { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:6px; }
.daily-task-time strong { font-size:1rem; color:#0f5132; }
.daily-task-time span { font-size:.73rem; color:#64748b; }
.daily-task-card h4 { margin:0 0 6px; font-size:.9rem; line-height:1.25; }
.daily-task-card p { margin:0; font-size:.78rem; color:#64748b; line-height:1.35; }
.daily-task-meta { display:flex; justify-content:space-between; gap:8px; margin-top:8px; padding-top:8px; border-top:1px solid #eef2f6; font-size:.72rem; color:#475569; }
.daily-empty { padding:28px 12px; text-align:center; color:#94a3b8; font-size:.85rem; }
.planning-day-only-note { margin:0; color:#64748b; font-size:.88rem; }

@media (max-width:1200px){.day-status-toolbar{grid-template-columns:repeat(3,1fr)}.daily-status-board{grid-template-columns:repeat(2,minmax(280px,1fr))}}
@media (max-width:760px){.day-status-toolbar{grid-template-columns:repeat(2,1fr)}.daily-status-board,.daily-status-board.is-filtered{grid-template-columns:1fr;overflow:visible}.daily-status-list{max-height:none}.v42-payment-form{min-width:0;grid-template-columns:1fr}.v42-row-actions{min-width:0}}

/* === v43.css === */

/* GestiConnect V43 — tracking enrichi et planning coloré à vue d’œil. */
.planning-color-legend{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 12px}.planning-color-legend span{padding:6px 10px;border-radius:999px;border:1px solid;font-size:.76rem;font-weight:800}.legend-booked{background:#fff4bf;border-color:#f2c94c;color:#765500}.legend-assigned{background:#ffe3e6;border-color:#f08c96;color:#8f1d2c}.legend-progress{background:#dcecff;border-color:#7db5ff;color:#174ea6}.legend-completed{background:#dff8e8;border-color:#78d69a;color:#146c3a}
.daily-task-card.daily-task-status-booked{background:#fff8d8;border-color:#f2d36b;border-left:6px solid #f59e0b;color:#3f3300}.daily-task-card.daily-task-status-assigned{background:#fff0f2;border-color:#f3a2aa;border-left:6px solid #ef4444;color:#5f1520}.daily-task-card.daily-task-status-in_progress{background:#eaf3ff;border-color:#91bdff;border-left:6px solid #3b82f6;color:#153c78}.daily-task-card.daily-task-status-completed{background:#e8f9ee;border-color:#8ed5a8;border-left:6px solid #22c55e;color:#14532d}.daily-task-card.daily-task-status-booked p,.daily-task-card.daily-task-status-assigned p,.daily-task-card.daily-task-status-in_progress p,.daily-task-card.daily-task-status-completed p{color:inherit;opacity:.78}.daily-task-card.daily-task-status-booked .daily-task-meta,.daily-task-card.daily-task-status-assigned .daily-task-meta,.daily-task-card.daily-task-status-in_progress .daily-task-meta,.daily-task-card.daily-task-status-completed .daily-task-meta{border-top-color:rgba(15,23,42,.12);color:inherit}.daily-task-card.appointment-complaint{box-shadow:inset 0 -4px #9333ea,0 2px 8px rgba(15,23,42,.04)}
.planning-agenda-row.intervention-booked td{background:#fff9dc}.planning-agenda-row.intervention-assigned td{background:#fff1f2}.planning-agenda-row.intervention-in_progress td{background:#eef6ff}.planning-agenda-row.intervention-completed td{background:#edfbf2}.planning-agenda-row td:first-child{border-left:5px solid transparent}.planning-agenda-row.intervention-booked td:first-child{border-left-color:#f59e0b}.planning-agenda-row.intervention-assigned td:first-child{border-left-color:#ef4444}.planning-agenda-row.intervention-in_progress td:first-child{border-left-color:#3b82f6}.planning-agenda-row.intervention-completed td:first-child{border-left-color:#22c55e}
.tracking-call-grid,.tracking-journey-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}.tracking-call-card,.tracking-journey-card{border:1px solid #dce5e9;border-radius:14px;background:#fff;padding:14px;box-shadow:0 3px 12px rgba(15,23,42,.04)}.tracking-call-card.is-matched{border-left:5px solid #22c55e;background:#f7fff9}.tracking-call-card.is-unmatched{border-left:5px solid #94a3b8;background:#fafbfc}.tracking-call-card-head,.tracking-journey-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.tracking-call-card-head>div,.tracking-journey-head>div{display:grid;gap:3px}.tracking-call-card-head small,.tracking-journey-head small{color:#64748b}.tracking-mini-details{display:grid;grid-template-columns:82px 1fr;gap:5px 10px;margin:12px 0;font-size:.82rem}.tracking-mini-details dt{font-weight:800;color:#475569}.tracking-mini-details dd{margin:0}.tracking-path{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:10px 0}.tracking-path span{padding:5px 8px;border-radius:8px;background:#eef3f7;font-size:.75rem;font-weight:700}.tracking-path b{color:#94a3b8}.tracking-interests{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:10px}.tracking-interests small{width:100%;color:#64748b}.tracking-interests span{padding:5px 8px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-size:.72rem;font-weight:800}.tracking-device{padding:5px 8px;border-radius:999px;background:#e0f2fe;color:#075985;font-size:.72rem;font-weight:800}.tracking-journey-foot{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid #edf1f4;color:#64748b;font-size:.7rem}.tracking-journey-foot span{padding:4px 7px;border-radius:7px;background:#f8fafc}
@media(max-width:900px){.tracking-call-grid,.tracking-journey-grid{grid-template-columns:1fr}}@media(max-width:640px){.planning-color-legend{display:grid;grid-template-columns:1fr 1fr}.tracking-call-grid,.tracking-journey-grid{padding:10px}.tracking-call-card-head,.tracking-journey-head{flex-direction:column}.tracking-mini-details{grid-template-columns:1fr}.tracking-mini-details dt{margin-top:4px}}

/* === v44.css === */
/* GestiConnect V44 — administration SaaS fluide */
.pa-v44-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:18px;align-items:stretch;margin-bottom:18px}.pa-v44-hero-main{padding:24px;border-radius:18px;background:linear-gradient(135deg,#0f2f4d,#195784 68%,#2f74ff);color:#fff;box-shadow:0 18px 42px rgba(15,48,80,.2)}.pa-v44-hero-main h2{margin:0 0 8px;font-size:27px}.pa-v44-hero-main p{max-width:820px;margin:0;color:#d8e8f8;font-size:12px;line-height:1.65}.pa-v44-hero-side{display:grid;gap:10px}.pa-v44-status{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--pa-line);border-radius:14px;background:#fff}.pa-v44-status strong,.pa-v44-status small{display:block}.pa-v44-status small{margin-top:3px;color:var(--pa-muted);font-size:9px}.pa-v44-section{margin-top:18px}.pa-v44-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:10px}.pa-v44-section-title h2{margin:0;font-size:19px}.pa-v44-section-title p{margin:4px 0 0;color:var(--pa-muted);font-size:10px}.pa-plan-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pa-plan-admin-card{border:1px solid var(--pa-line);border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(20,44,74,.06)}.pa-plan-admin-head{padding:17px 18px;background:linear-gradient(135deg,#f3f7fb,#fff);border-bottom:1px solid var(--pa-line)}.pa-plan-admin-head h3{margin:0;font-size:18px}.pa-plan-admin-head strong{display:block;margin-top:7px;font-size:25px}.pa-plan-admin-body{padding:16px}.pa-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.pa-feature-check{display:flex;align-items:flex-start;gap:7px;padding:8px;border:1px solid #e2e8ef;border-radius:9px;background:#fafcfe;font-size:10px}.pa-feature-check input{margin-top:1px}.pa-quota-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pa-compact-form{display:grid;gap:10px}.pa-inline-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pa-action-panel{padding:14px;border:1px solid #dce5ef;border-radius:13px;background:#f9fbfd}.pa-action-panel h3{margin:0 0 8px;font-size:14px}.pa-action-panel p{margin:0 0 10px;color:var(--pa-muted);font-size:10px;line-height:1.5}.pa-finance-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.pa-finance-item{padding:14px;border:1px solid var(--pa-line);border-radius:13px;background:#fff}.pa-finance-item span,.pa-finance-item strong,.pa-finance-item small{display:block}.pa-finance-item span{color:var(--pa-muted);font-size:9px;text-transform:uppercase;font-weight:850}.pa-finance-item strong{margin:6px 0 3px;font-size:21px}.pa-finance-item small{color:#7a8898;font-size:9px}.pa-flow-board{display:grid;grid-template-columns:repeat(8,minmax(180px,1fr));gap:11px;overflow:auto;padding-bottom:5px}.pa-flow-column{min-width:180px;padding:10px;border:1px solid var(--pa-line);border-radius:14px;background:#f6f8fb}.pa-flow-column h3{display:flex;align-items:center;justify-content:space-between;margin:0 0 9px;font-size:12px}.pa-flow-card{padding:11px;border:1px solid #dce4ed;border-radius:11px;background:#fff;margin-bottom:8px;box-shadow:0 4px 12px rgba(20,44,74,.04)}.pa-flow-card strong,.pa-flow-card small{display:block}.pa-flow-card small{margin-top:4px;color:var(--pa-muted);font-size:9px}.pa-thread{display:grid;gap:10px}.pa-message{max-width:82%;padding:12px 14px;border:1px solid var(--pa-line);border-radius:14px;background:#fff}.pa-message.admin{margin-left:auto;background:#eaf2ff;border-color:#c6d9f5}.pa-message.internal{margin-left:auto;background:#fff5d8;border-color:#ead590}.pa-message small{display:block;margin-top:7px;color:var(--pa-muted);font-size:9px}.pa-session-row.revoked{opacity:.55}.pa-ops-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.pa-ops-card{padding:15px;border:1px solid var(--pa-line);border-radius:14px;background:#fff}.pa-ops-card h3{margin:0 0 5px;font-size:14px}.pa-ops-card p{margin:0;color:var(--pa-muted);font-size:10px;line-height:1.5}.pa-quick-actions{display:flex;flex-wrap:wrap;gap:8px}.pa-filter-chips{display:flex;gap:7px;overflow:auto;padding-bottom:4px}.pa-filter-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border:1px solid #d8e1eb;border-radius:999px;background:#fff;color:#40546a;text-decoration:none;font-size:10px;font-weight:850;white-space:nowrap}.pa-filter-chip.active{background:#173e64;color:#fff;border-color:#173e64}.pa-critical-zone{border:1px solid #efb6bd!important;background:#fff7f8!important}.pa-code-line{font-family:Consolas,monospace;font-size:9px;word-break:break-all}.pa-v44-note{padding:11px 13px;border-left:4px solid #2f74ff;background:#eff5ff;border-radius:9px;color:#355273;font-size:10px;line-height:1.55}.pa-scroll-500{max-height:500px;overflow:auto}.pa-table .pa-actions form{margin:0}.pa-mini-input{width:110px!important;min-height:32px!important;padding:6px 8px!important}.pa-badge.processing{background:#e8efff;color:#315f9f}.pa-badge.partially_refunded{background:#f2e8ff;color:#684498}.pa-badge.queued,.pa-badge.scheduled{background:#e7f0ff;color:#2b5c9a}.pa-badge.completed,.pa-badge.processed,.pa-badge.sent{background:#ddf4e8;color:#176542}.pa-badge.waiting_maintenance{background:#fff0bf;color:#755700}
@media(max-width:1500px){.pa-finance-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.pa-plan-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pa-ops-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.pa-v44-hero{grid-template-columns:1fr}.pa-inline-grid,.pa-finance-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.pa-feature-grid,.pa-quota-grid{grid-template-columns:1fr}.pa-plan-admin-grid{grid-template-columns:1fr}}
@media(max-width:560px){.pa-inline-grid,.pa-finance-strip,.pa-ops-grid{grid-template-columns:1fr}.pa-message{max-width:100%}.pa-v44-hero-main{padding:18px}}
/* V44 admin components */
.pa-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.pa-kpi{padding:16px;border:1px solid var(--pa-line);border-radius:15px;background:#fff}.pa-kpi small,.pa-kpi span{display:block;color:var(--pa-muted);font-size:10px}.pa-kpi strong{display:block;margin:7px 0 4px;font-size:24px}.pa-card{border:1px solid var(--pa-line);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(20,44,74,.05);margin-bottom:16px;overflow:hidden}.pa-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid var(--pa-line)}.pa-card-head h2{margin:0;font-size:17px}.pa-card-head p{margin:4px 0 0;color:var(--pa-muted);font-size:10px}.pa-filterbar,.pa-form-grid,.pa-form-stack{display:grid;gap:10px;padding:16px 18px}.pa-filterbar{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));align-items:end}.pa-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pa-form-grid textarea{grid-column:1/-1;min-height:90px}.pa-form-stack{grid-template-columns:1fr}.pa-form-stack label{display:grid;gap:5px}.pa-two-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pa-table-wrap{overflow:auto}.pa-table{width:100%;border-collapse:collapse}.pa-table th,.pa-table td{padding:11px 13px;border-bottom:1px solid #e8edf3;text-align:left;vertical-align:top;font-size:10px}.pa-table th{background:#f6f8fb;color:#52647a;text-transform:uppercase;font-size:8px;letter-spacing:.04em}.pa-table td strong,.pa-table td small{display:block}.pa-table td small{margin-top:4px;color:var(--pa-muted)}.pa-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pa-inline-form{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pa-inline-form input,.pa-inline-form select{min-width:110px}.pa-btn-small{padding:7px 9px!important;font-size:9px!important}.pa-btn-danger{background:#b93545!important;color:#fff!important;border-color:#b93545!important}.pa-status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eaf0f7;color:#3d536a;font-size:9px;font-weight:800}.pa-status-paid,.pa-status-completed,.pa-status-processed,.pa-status-sent{background:#dff4e8;color:#176742}.pa-status-failed,.pa-status-refunded{background:#ffe1e4;color:#a12636}.pa-status-pending,.pa-status-queued,.pa-status-scheduled{background:#fff1c7;color:#775800}.pa-status-partially_refunded{background:#efe3ff;color:#6d4295}.pa-health{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:9px;font-weight:850}.pa-health.ok{background:#def4e8;color:#176742}.pa-health.warn{background:#fff1c7;color:#775800}.pa-error{color:#a12636!important}.pa-charge-grid{display:grid;gap:7px;padding:14px}.pa-charge-row{display:grid;grid-template-columns:minmax(220px,1fr) 140px auto;gap:10px;align-items:center;padding:10px;border:1px solid #e1e7ee;border-radius:11px;background:#fafcfe}.pa-charge-row strong,.pa-charge-row small{display:block}.pa-charge-row small{margin-top:3px;color:var(--pa-muted);font-size:9px}.pa-list{display:grid;gap:7px;padding:14px;max-height:520px;overflow:auto}.pa-list-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px;border:1px solid #e1e7ee;border-radius:11px;background:#fafcfe}.pa-list-row strong,.pa-list-row small{display:block}.pa-list-row small{margin-top:3px;color:var(--pa-muted);font-size:9px}.pa-stage-grid{display:grid;grid-template-columns:repeat(8,minmax(100px,1fr));gap:8px;margin-bottom:16px;overflow:auto}.pa-stage{padding:12px;border:1px solid #dce4ed;border-radius:13px;background:#fff;color:#324b65;text-decoration:none}.pa-stage strong,.pa-stage span{display:block}.pa-stage strong{font-size:20px}.pa-stage span{margin-top:3px;font-size:9px;font-weight:800}.pa-stage.active{background:#173e64;color:#fff}.pa-notice{display:flex;justify-content:space-between;gap:12px;padding:13px 15px;margin-bottom:15px;border-left:4px solid #d29d1d;border-radius:10px;background:#fff4cf;font-size:10px}.pa-support-layout{grid-template-columns:minmax(0,1.5fr) minmax(280px,.5fr)}.pa-message-head{display:flex;align-items:center;gap:8px;font-size:9px}.pa-message-head span{color:var(--pa-muted)}.pa-message-head em{padding:3px 6px;border-radius:999px;background:#f2d979;font-style:normal}.pa-message p{white-space:pre-wrap}.pa-message-form{display:grid;gap:9px;padding:16px;border-top:1px solid var(--pa-line)}.pa-message-form textarea{min-height:110px}.pa-summary-list{padding:14px}.pa-summary-list p{display:flex;justify-content:space-between;gap:10px;font-size:10px}.pa-quick-actions{margin-bottom:15px}.pa-flow-card.pa-card{padding:0}
@media(max-width:1100px){.pa-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pa-two-cols,.pa-support-layout{grid-template-columns:1fr}.pa-stage-grid{grid-template-columns:repeat(4,minmax(120px,1fr))}}@media(max-width:650px){.pa-kpi-grid,.pa-form-grid{grid-template-columns:1fr}.pa-charge-row{grid-template-columns:1fr}.pa-stage-grid{grid-template-columns:repeat(2,minmax(120px,1fr))}.pa-notice{display:grid}}
.platform-impersonation-banner{position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 18px;background:#7a4b00;color:#fff;box-shadow:0 4px 16px rgba(0,0,0,.2)}.platform-impersonation-banner strong,.platform-impersonation-banner span{display:block}.platform-impersonation-banner span{margin-top:2px;font-size:11px;color:#fff4d6}.platform-impersonation-banner a{padding:7px 11px;border-radius:9px;background:#fff;color:#573500;text-decoration:none;font-size:10px;font-weight:850}@media(max-width:700px){.platform-impersonation-banner{align-items:flex-start;display:grid}}

/* === v45-v47.css === */
:root{--v-accent:#2563eb;--v-soft:#eff6ff;--v-green:#0f9f6e;--v-yellow:#d97706;--v-red:#dc2626;--v-border:#dbe5f1;--v-text:#172033;--v-muted:#64748b}
.v-page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:20px;flex-wrap:wrap}.v-page-head h2{margin:0 0 6px;font-size:1.55rem}.v-page-head p{margin:0;color:var(--v-muted)}
.v-actions{display:flex;gap:10px;flex-wrap:wrap}.v-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 15px;border:0;border-radius:10px;background:#fff;color:var(--v-text);box-shadow:0 0 0 1px var(--v-border);font-weight:700;text-decoration:none;cursor:pointer}.v-btn.primary{background:var(--v-accent);color:#fff;box-shadow:none}.v-btn.green{background:var(--v-green);color:#fff;box-shadow:none}.v-btn.danger{background:#fff1f2;color:#b91c1c}.v-btn.small{padding:7px 10px;font-size:.84rem}
.v-grid{display:grid;gap:16px}.v-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.v-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.v-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.v-card{background:#fff;border:1px solid var(--v-border);border-radius:15px;padding:18px;box-shadow:0 8px 25px rgba(30,64,175,.04)}.v-card h3{margin:0 0 8px}.v-card p{color:var(--v-muted)}.v-stat strong{display:block;font-size:1.75rem}.v-stat span{color:var(--v-muted)}
.v-form{display:grid;gap:12px}.v-form.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.v-field{display:grid;gap:6px}.v-field label{font-weight:700;font-size:.9rem}.v-field input,.v-field select,.v-field textarea{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:9px;background:#fff}.v-field textarea{min-height:90px;resize:vertical}.v-span-2{grid-column:span 2}.v-check{display:flex;gap:8px;align-items:center}
.v-table-wrap{overflow:auto}.v-table{width:100%;border-collapse:collapse}.v-table th,.v-table td{padding:11px 10px;border-bottom:1px solid #e8eef6;text-align:left;vertical-align:top}.v-table th{font-size:.8rem;text-transform:uppercase;color:#64748b;letter-spacing:.03em}.v-muted{color:var(--v-muted)}
.v-badge{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:.78rem;font-weight:800;background:#e2e8f0;color:#475569}.v-badge.green,.v-badge.healthy,.v-badge.approved,.v-badge.completed,.v-badge.validated{background:#dcfce7;color:#166534}.v-badge.yellow,.v-badge.watch,.v-badge.pending,.v-badge.to_review,.v-badge.scheduled{background:#fef3c7;color:#92400e}.v-badge.red,.v-badge.at_risk,.v-badge.rejected,.v-badge.failed{background:#fee2e2;color:#991b1b}.v-badge.blue{background:#dbeafe;color:#1d4ed8}
.v-steps{display:grid;gap:10px}.v-step{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px;border:1px solid var(--v-border);border-radius:12px}.v-step.done{background:#f0fdf4;border-color:#bbf7d0}.v-step-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e2e8f0;font-weight:900}.v-step.done .v-step-icon{background:#22c55e;color:#fff}
.v-message{border:1px solid var(--v-border);border-radius:12px;padding:14px;margin-bottom:12px}.v-message.platform_to_client{border-left:4px solid var(--v-accent)}.v-message.client_to_platform{border-left:4px solid var(--v-green)}
.v-alert{padding:14px;border-radius:12px;background:var(--v-soft);border:1px solid #bfdbfe}.v-alert.warning{background:#fffbeb;border-color:#fde68a}.v-secret{padding:12px;background:#0f172a;color:#fff;border-radius:9px;font-family:monospace;word-break:break-all}
.offline-banner{display:none;padding:10px 14px;background:#fef3c7;color:#92400e;text-align:center;font-weight:800}.offline-banner.visible{display:block}.offline-card{cursor:pointer}
@media(max-width:900px){.v-grid.cols-2,.v-grid.cols-3,.v-grid.cols-4,.v-form.cols-2{grid-template-columns:1fr}.v-span-2{grid-column:auto}}

/* GestiConnect V48 — espace Avancé et alignement des sélections */
.v-field>.v-check{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;justify-content:start;gap:10px;width:100%;min-height:40px;padding:9px 11px;border:1px solid #e1e7ef;border-radius:10px;background:#fff;text-align:left;font-size:.9rem;font-weight:650;line-height:1.35;cursor:pointer}
.v-field>.v-check:hover{border-color:#9ab7a7;background:#f8fbf9}.v-field>.v-check:has(input:checked){border-color:#74a78b;background:#edf8f2;color:#174e36}.v-field>.v-check input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--v-green)}.v-field>.v-check span{display:block;min-width:0;text-align:left}
.advanced-nav-section{margin-top:13px;padding-top:8px;border-top:1px solid rgba(255,255,255,.13)}.advanced-nav-section>summary{grid-template-columns:22px minmax(0,1fr) auto 18px;background:rgba(255,255,255,.045)}.advanced-nav-section .nav-count{display:grid;place-items:center;min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:rgba(255,255,255,.14);font-size:10px}.advanced-manager-link{font-weight:850!important;color:#fff7df!important;background:rgba(238,174,53,.11)}.advanced-nav-title{padding:12px 12px 4px;color:#8fa79b;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.advanced-nav-items a{display:flex!important;justify-content:space-between;gap:8px}.nav-ai{display:inline-flex;align-items:center;padding:2px 5px;border-radius:999px;background:#e8ddff;color:#6345a5;font-size:8px;font-weight:950}.advanced-disabled-link{display:grid!important;gap:2px!important;margin-top:8px!important;border:1px dashed rgba(255,255,255,.16)!important;background:rgba(255,255,255,.035)!important;color:#9aaca3!important}.advanced-disabled-link small{font-size:9px;color:#788e83}
.advanced-page-head{padding:20px;border:1px solid #d9e4ed;border-radius:17px;background:linear-gradient(135deg,#fff,#f2f7f4)}.advanced-eyebrow{display:inline-flex;margin-bottom:7px;color:#1b7450;font-size:.73rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.advanced-counter{display:grid;min-width:170px;padding:13px 15px;border:1px solid #d3e1d8;border-radius:13px;background:#fff}.advanced-counter strong{font-size:1.6rem;color:#176f4b}.advanced-counter span{color:var(--v-muted);font-size:.78rem}.essential-summary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;align-items:center;margin-bottom:20px;padding:15px 17px;border:1px solid #bde2ca;border-radius:14px;background:#edf9f1}.essential-summary>div{display:flex;align-items:center;gap:8px;color:#176f4b}.essential-summary>div span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#ccefd8}.essential-summary p{margin:0;color:#3e5e50;font-size:.88rem;line-height:1.5}.advanced-groups{display:grid;gap:20px}.advanced-group{padding:18px;border:1px solid var(--v-border);border-radius:16px;background:#fff}.advanced-group-head h3{display:flex;align-items:center;gap:9px;margin:0}.advanced-group-head p{margin:5px 0 15px;color:var(--v-muted);font-size:.88rem}.advanced-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.advanced-module-card{display:flex;flex-direction:column;min-height:235px;padding:15px;border:1px solid #dfe5ec;border-radius:14px;background:#f5f6f7;filter:saturate(.55);transition:.18s ease}.advanced-module-card.is-disabled{color:#66717d}.advanced-module-card.is-enabled{border-color:#8dc2a4;background:#f4fbf7;filter:none;box-shadow:0 8px 24px rgba(22,112,74,.08)}.advanced-module-card:hover{transform:translateY(-1px)}.advanced-module-top{display:flex;justify-content:space-between;gap:8px}.advanced-module-state{display:inline-flex;padding:4px 8px;border-radius:999px;background:#e4e7eb;color:#5f6872;font-size:.69rem;font-weight:900}.is-enabled .advanced-module-state{background:#d5f2df;color:#176b48}.advanced-module-card h4{margin:13px 0 6px;font-size:1rem}.advanced-module-card p{flex:1;margin:0 0 13px;color:#6b7580;font-size:.82rem;line-height:1.5}.advanced-module-links{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:11px}.advanced-module-links a{padding:5px 8px;border-radius:8px;background:#fff;border:1px solid #cfe1d6;color:#176646;font-size:.72rem;font-weight:800}.advanced-module-card form{margin-top:auto}.advanced-toggle{width:100%;padding:10px 12px;border:0;border-radius:9px;font-weight:850;cursor:pointer}.advanced-toggle.enable{background:#e7eaed;color:#3d4852}.advanced-toggle.enable:hover{background:#dce4df;color:#165f41}.advanced-toggle.disable{background:#fff;border:1px solid #d2ded6;color:#557065}.ai-pill{display:inline-flex;padding:3px 7px;border-radius:999px;background:#eee7ff;color:#6848ab;font-size:.66rem;font-weight:950}.ai-pill.subtle{opacity:.85}.advanced-ai-group{border-color:#dfd5f6;background:linear-gradient(180deg,#fcfaff,#fff)}
@media(max-width:1100px){.advanced-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.advanced-module-grid{grid-template-columns:1fr}.essential-summary{grid-template-columns:1fr}.advanced-counter{width:100%}}

/* V49 - activation et rangement libre des modules */
.module-placement-form{display:grid;gap:11px;margin-top:auto;padding-top:12px;border-top:1px solid #dfe7e2}
.module-enable-control{display:grid;grid-template-columns:20px minmax(0,1fr);gap:9px;align-items:start;padding:10px;border:1px solid #d7e1db;border-radius:10px;background:#fff;cursor:pointer}
.module-enable-control input{width:18px;height:18px;margin:1px 0 0;accent-color:#176f4b}
.module-enable-control span{display:grid;gap:2px;line-height:1.25}
.module-enable-control strong{font-size:.8rem;color:#253c32}
.module-enable-control small{font-size:.68rem;color:#718078}
.module-enable-control:has(input:checked){border-color:#93c4a8;background:#edf9f2}
.module-location-control{display:grid;gap:6px}
.module-location-control>span{font-size:.7rem;font-weight:900;color:#53655b;text-transform:uppercase;letter-spacing:.04em}
.module-location-control select{width:100%;min-height:40px;padding:8px 34px 8px 10px;border:1px solid #cfdad4;border-radius:9px;background:#fff;color:#20362c;font:inherit;font-size:.8rem;font-weight:750}
.locked-menu-location{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:40px;padding:8px 10px;border:1px solid #ddd3ef;border-radius:9px;background:#f8f4ff;color:#67499c;font-size:.8rem;font-weight:850}
.locked-menu-location small{font-size:.65rem;font-weight:700;color:#8974ad}
.advanced-toggle.save-placement{background:#1e6f4e;color:#fff}
.advanced-toggle.save-placement:hover{background:#185f42}
.advanced-module-card.is-disabled .module-placement-form{filter:none}
.advanced-module-card.is-disabled .module-enable-control,.advanced-module-card.is-disabled .module-location-control{opacity:.9}
@media(max-width:520px){.locked-menu-location{align-items:flex-start;flex-direction:column}.module-location-control select{font-size:.78rem}}

/* === v54.css === */
/* GestiConnect V54 — tableau de bord, planning et facturation premium. */
.premium-eyebrow,.section-kicker,.document-modal-kicker{display:block;margin-bottom:7px;color:#c56700;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.btn-light{background:#fff;color:#163b2d;border-color:#fff;box-shadow:0 8px 24px rgba(22,59,45,.1)}
.btn-light-outline{background:rgba(255,255,255,.72);color:#163b2d;border-color:rgba(22,59,45,.16)}
.btn-accent{background:#e87508;color:#fff;border-color:#e87508;box-shadow:0 9px 24px rgba(232,117,8,.2)}

/* Dashboard */
.dashboard-premium-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.7fr);gap:28px;align-items:center;margin-bottom:18px;padding:31px 34px;border:1px solid #d9e8df;border-radius:24px;background:linear-gradient(135deg,#fff 0%,#f1faf5 58%,#fff7e9 100%);box-shadow:0 24px 60px rgba(22,59,45,.08)}
.dashboard-premium-hero:after{content:"";position:absolute;right:-90px;top:-120px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(231,117,8,.14),rgba(231,117,8,0) 68%);pointer-events:none}
.dashboard-hero-copy{position:relative;z-index:1}.dashboard-hero-copy h2{max-width:820px;margin:0;color:#123629;font-size:32px;line-height:1.16;letter-spacing:-.025em}.dashboard-hero-copy p{max-width:760px;margin:12px 0 20px;color:#5e7168;font-size:15px;line-height:1.6}.dashboard-hero-actions{display:flex;gap:9px;flex-wrap:wrap}
.dashboard-hero-summary{position:relative;z-index:1;display:grid;gap:10px}.dashboard-hero-summary>div{padding:19px 20px;border:1px solid rgba(22,59,45,.1);border-radius:17px;background:rgba(255,255,255,.82);box-shadow:0 12px 28px rgba(22,59,45,.06)}.dashboard-hero-summary span,.dashboard-hero-summary small{display:block;color:#718078;font-size:12px}.dashboard-hero-summary strong{display:block;margin:5px 0 3px;color:#163b2d;font-size:25px}
.dashboard-setup-strip{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:18px;align-items:center;margin-bottom:18px;padding:15px 18px;border:1px solid #e1e9e4;border-radius:16px;background:#fff}.setup-progress{height:9px;overflow:hidden;border-radius:99px;background:#edf2ef}.setup-progress div{width:var(--progress);height:100%;border-radius:inherit;background:linear-gradient(90deg,#2e8b62,#e87508)}.setup-copy{display:grid;gap:3px}.setup-copy strong{color:#163b2d;font-size:13px}.setup-copy span{color:#748078;font-size:12px}
.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px;margin-bottom:18px}.premium-kpi{display:flex;gap:13px;align-items:flex-start;min-width:0;padding:17px;border:1px solid #e1e8e4;border-radius:17px;background:#fff;box-shadow:0 10px 28px rgba(22,59,45,.045)}.kpi-icon{flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#eff8f3;color:#216b4c;font-size:16px;font-weight:900}.premium-kpi div{min-width:0}.premium-kpi small,.premium-kpi em{display:block;color:#738078;font-size:11px;font-style:normal}.premium-kpi strong{display:block;margin:5px 0;color:#173d2f;font-size:20px;white-space:nowrap}
.dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:18px;margin-bottom:18px}.dashboard-side-stack{display:grid;gap:18px}.premium-dashboard-card{overflow:hidden;border-color:#e1e8e4;border-radius:19px;box-shadow:0 15px 38px rgba(22,59,45,.055)}.premium-dashboard-card .card-header{padding:19px 21px;background:linear-gradient(180deg,#fff,#fbfdfc)}.premium-dashboard-card .card-header h2{font-size:17px;color:#173d2f}.premium-dashboard-card .card-header p{margin:5px 0 0;color:#748078;font-size:12px}.premium-status-row{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.premium-status-row a{display:grid;gap:5px;padding:12px;border:1px solid #e1e8e4;border-radius:13px;background:#f9fcfa;color:#5c6c63}.premium-status-row a:hover{text-decoration:none;border-color:#b7d3c3}.premium-status-row strong{color:#163b2d;font-size:20px}.premium-status-row span{font-size:11px;font-weight:800}.dashboard-task-list{display:grid}.dashboard-task{display:grid;grid-template-columns:62px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 20px;border-top:1px solid #edf1ef;color:#253d33}.dashboard-task:hover{text-decoration:none;background:#f9fcfa}.dashboard-task time{font-weight:900;color:#c56700}.dashboard-task div{display:grid;gap:3px;min-width:0}.dashboard-task div span{overflow:hidden;color:#768078;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.collection-list{display:grid;padding:8px 20px 18px}.collection-list>div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px dashed #dce6e0}.collection-list span{color:#718078;font-size:12px}.collection-list strong{color:#163b2d}.collection-list .collection-due{margin-top:8px;padding:13px 14px;border:0;border-radius:13px;background:#fff3e4}.collection-list .collection-due strong{color:#a95600}.marketing-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:0 20px 20px}.marketing-mini-grid>div{padding:12px;border-radius:12px;background:#f5f9f7}.marketing-mini-grid span{display:block;color:#748078;font-size:11px}.marketing-mini-grid strong{display:block;margin-top:5px;color:#163b2d;font-size:17px}
.dashboard-chart-grid{margin-bottom:18px}.premium-month-chart .bar-fill{border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#e87508,#f4aa55)}.premium-horizontal-bars .hbar-fill{background:linear-gradient(90deg,#2e8b62,#65b98f)}.dashboard-upcoming,.dashboard-team-card{margin-bottom:18px}.dashboard-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:18px}.dashboard-team-grid article{display:grid;grid-template-columns:auto 1fr;gap:11px;padding:15px;border:1px solid #e3eae6;border-radius:15px;background:#fbfdfc}.team-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#eaf6ef;color:#1d6848;font-weight:900}.dashboard-team-grid article>div:nth-child(2){display:grid;align-content:center;gap:3px}.dashboard-team-grid article>div span{color:#778279;font-size:11px}.dashboard-team-grid dl{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:4px 0 0}.dashboard-team-grid dl div{padding:8px;border-radius:10px;background:#f2f7f4}.dashboard-team-grid dt{color:#7c877f;font-size:10px}.dashboard-team-grid dd{margin:3px 0 0;color:#163b2d;font-size:12px;font-weight:850}
.dashboard-documents-bottom{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dashboard-document-list{display:grid}.dashboard-document-list>a{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:13px;align-items:center;padding:13px 20px;border-top:1px solid #edf1ef;color:#263f34}.dashboard-document-list>a:hover{text-decoration:none;background:#f9fcfa}.dashboard-document-list>a>div{display:grid;gap:3px;min-width:0}.dashboard-document-list>a>div span{overflow:hidden;color:#7a857e;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.dashboard-document-list>a>b{color:#163b2d;font-size:13px;white-space:nowrap}.premium-empty{padding:28px 20px;background:#fbfdfc}

/* Documents and modal */
.documents-premium-hero{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:14px;padding:26px 28px;border:1px solid #dce9e1;border-radius:20px;background:linear-gradient(130deg,#fff,#f3faf6 66%,#fff7eb);box-shadow:0 16px 38px rgba(22,59,45,.06)}.documents-premium-hero h2{margin:0;color:#163b2d;font-size:28px}.documents-premium-hero p{max-width:700px;margin:8px 0 0;color:#6f7e76;font-size:13px}.document-list-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:14px}.document-list-tabs a{display:grid;gap:3px;padding:13px 15px;border:1px solid #dfe7e2;border-radius:14px;background:#fff;color:#405348}.document-list-tabs a:hover{text-decoration:none;border-color:#a9c9b7}.document-list-tabs a.active{border-color:#2c805b;background:#edf8f2;color:#185d40;box-shadow:inset 0 0 0 1px #2c805b}.document-list-tabs span{font-size:13px;font-weight:850}.document-list-tabs small{color:#7b867f;font-size:10px}.premium-list-card{overflow:hidden;border-radius:18px}.premium-document-table tbody tr:last-child td{border-bottom:0}.premium-document-table td{padding-top:14px;padding-bottom:14px}
.document-creation-overlay{z-index:1400;padding:18px}.document-creation-dialog{width:min(1280px,98vw);height:min(94vh,980px);max-height:94vh;border-radius:22px}.document-creation-header{flex:0 0 auto;padding:16px 20px;border-bottom-color:#dfe7e2;background:linear-gradient(90deg,#fff,#f5faf7)}.document-creation-header h2{font-size:21px}.document-creation-frame{display:block;width:100%;height:100%;min-height:0;flex:1;border:0;background:#f5f7fa}.document-frame-loader{position:absolute;inset:76px 0 0;z-index:2;display:grid;place-content:center;justify-items:center;gap:12px;background:rgba(248,251,249,.94);color:#52635a}.document-frame-loader[hidden]{display:none}.document-frame-loader span{width:34px;height:34px;border:3px solid #d8e6de;border-top-color:#e87508;border-radius:50%;animation:v54-spin .8s linear infinite}@keyframes v54-spin{to{transform:rotate(360deg)}}
.document-popup-page{background:#f3f6f4}.document-popup-content{padding:18px 20px 30px}.document-popup-page .quick-doc-page{max-width:none}.document-popup-page .quick-doc-head{position:sticky;top:-18px;z-index:5;margin:-18px -20px 15px;padding:17px 20px;border-bottom:1px solid #dfe7e2;background:rgba(255,255,255,.96);backdrop-filter:blur(8px)}.document-popup-page .quick-doc-head h2{font-size:22px}.document-popup-page .quick-doc-head p{max-width:900px}.document-popup-page .quick-card{border-radius:17px;box-shadow:0 10px 30px rgba(22,59,45,.045)}.document-popup-page .quick-actions{position:sticky;bottom:-30px;z-index:5;margin:18px -20px -30px;padding:14px 20px;border-top:1px solid #dfe7e2;background:rgba(255,255,255,.97);backdrop-filter:blur(8px)}

/* Planning */
.planning-premium-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(370px,.65fr);gap:24px;align-items:center;margin-bottom:15px;padding:28px 31px;border:1px solid #d9e8df;border-radius:22px;background:linear-gradient(130deg,#fff,#eef8f2 62%,#fff6e8);box-shadow:0 20px 50px rgba(22,59,45,.07)}.planning-premium-hero h2{margin:0;color:#153b2d;font-size:30px}.planning-premium-hero p{max-width:760px;margin:9px 0 18px;color:#6b7a72;font-size:14px;line-height:1.55}.planning-hero-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px}.planning-hero-metrics>div{padding:15px;border:1px solid rgba(22,59,45,.1);border-radius:14px;background:rgba(255,255,255,.84)}.planning-hero-metrics span{display:block;color:#748078;font-size:11px}.planning-hero-metrics strong{display:block;margin-top:4px;color:#163b2d;font-size:23px}.planning-premium-controls{overflow:hidden;border-radius:18px;box-shadow:0 13px 34px rgba(22,59,45,.045)}.planning-premium-controls .planning-view-tabs{padding:14px 16px 0}.planning-premium-controls .planning-filter-form{padding:14px 16px 16px}.planning-premium-card{border-radius:19px;box-shadow:0 16px 40px rgba(22,59,45,.05)}.planning-premium-card .day-focus-header{padding:3px 0 10px}.planning-premium-card .daily-status-column{border-radius:15px;border-color:#dfe8e3;overflow:hidden}.planning-premium-card .daily-task-card{border-radius:12px;box-shadow:0 5px 14px rgba(22,59,45,.045)}.planning-premium-card .week-column{border-radius:14px;overflow:hidden}.planning-premium-card .calendar-day{min-height:135px}.planning-premium-card .day-status-filter{border-radius:13px}

@media(max-width:1250px){.dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-premium-hero{grid-template-columns:1fr}.planning-hero-metrics{grid-template-columns:repeat(4,1fr)}}
@media(max-width:960px){.dashboard-premium-hero,.dashboard-main-grid{grid-template-columns:1fr}.dashboard-documents-bottom{grid-template-columns:1fr}.document-list-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.documents-premium-hero{align-items:flex-start;flex-direction:column}.dashboard-setup-strip{grid-template-columns:1fr}.planning-hero-metrics{grid-template-columns:1fr 1fr}.document-creation-overlay{padding:0}.document-creation-dialog{width:100%;height:100vh;max-height:100vh;border-radius:0}}
@media(max-width:680px){.dashboard-premium-hero,.planning-premium-hero{padding:22px 18px}.dashboard-hero-copy h2{font-size:25px}.dashboard-kpi-grid{grid-template-columns:1fr 1fr}.premium-kpi{padding:14px}.premium-kpi strong{font-size:17px}.dashboard-team-grid{grid-template-columns:1fr}.dashboard-task{grid-template-columns:54px minmax(0,1fr)}.dashboard-task>.badge{grid-column:2}.document-list-tabs{grid-template-columns:1fr}.planning-hero-metrics{grid-template-columns:1fr 1fr}.document-popup-content{padding:12px}.document-popup-page .quick-doc-head{margin:-12px -12px 12px;padding:14px 12px}.document-popup-page .quick-actions{margin:16px -12px -12px;padding:12px}.document-creation-header p{display:none}}

/* Fenêtre de création : en-tête réduit, contraste constant et plus d'espace pour la saisie. */
.document-creation-dialog .document-creation-header{padding:10px 17px;background:linear-gradient(112deg,#084b37,#0d7955);border-bottom-color:#08543d}
.document-creation-dialog .document-creation-header h2{font-size:18px;line-height:1.15;color:#fff!important}
.document-creation-dialog .document-creation-header p,.document-creation-dialog .document-modal-kicker{font-size:11px;line-height:1.25;color:#fff!important}
.document-creation-dialog .document-modal-kicker{font-weight:900;letter-spacing:.08em}
.document-creation-dialog .document-creation-header .modal-close,.document-creation-dialog .document-creation-header .modal-close:hover{width:38px;height:38px;flex:0 0 38px;border:1px solid #ffffff80;background:#ffffff20;color:#fff}
.document-popup-page .quick-doc-head{padding-top:11px;padding-bottom:10px}
.document-popup-page .quick-doc-head h2{font-size:18px}
.document-popup-page .quick-card .card-header{padding:11px 15px}
.document-popup-page .quick-card .card-body{padding:12px 15px}
.document-popup-page .quick-document-form{gap:10px}
.document-popup-page .quick-lines-wrap{max-height:clamp(100px,25dvh,230px);overflow:auto}
.document-popup-page .quick-total-grid{grid-template-columns:minmax(0,1fr) minmax(230px,300px);gap:9px}
.document-popup-page .quick-hint{padding:9px 11px;font-size:11px}
.document-popup-page .quick-summary{padding:10px 12px}
.document-popup-page .quick-summary-row{padding:3px 0}
@media(max-width:760px){.document-popup-page .quick-total-grid{grid-template-columns:1fr}.document-creation-dialog .document-creation-header{padding:9px 12px}}

/* Parcours du devis et de la facture à côté du titre de la fenêtre. */
.document-creation-dialog .document-creation-header{display:flex;align-items:center;gap:12px}
.document-creation-dialog .document-creation-heading{flex:0 0 235px;min-width:0}
.document-creation-dialog .document-creation-heading p{margin:3px 0 0}
.document-creation-dialog .document-timeline-slot{flex:1;min-width:0;overflow:hidden}
.document-creation-dialog .document-timeline-slot:empty{display:none}
.document-creation-dialog .document-timeline-slot .gc-form-timeline{position:static;display:grid;gap:4px;margin:0;padding:5px 8px;border:1px solid #ffffff66;border-radius:10px;background:#ffffff14;box-shadow:none;backdrop-filter:none}
.document-creation-dialog .document-timeline-slot .gc-form-timeline-meta{font-size:9px}
.document-creation-dialog .document-timeline-slot .gc-form-timeline-kicker{color:#fff}
.document-creation-dialog .document-timeline-slot .gc-form-timeline-current{padding:2px 7px;border:1px solid #ffffff55;background:#238664;color:#fff}
.document-creation-dialog .document-timeline-slot .gc-form-timeline-rail{padding:0;scrollbar-width:none}
.document-creation-dialog .document-timeline-slot .gc-form-timeline-rail::-webkit-scrollbar{display:none}
.document-creation-dialog .document-timeline-slot .gc-form-timeline-step{min-height:29px;max-width:170px;padding:3px 7px;font-size:10px}
.document-creation-dialog .document-timeline-slot .gc-form-timeline-step.is-current,.document-creation-dialog .document-timeline-slot .gc-form-timeline-step.is-current:hover{border-color:#fff;background:#0a694c;color:#fff!important}
.document-creation-dialog .document-timeline-slot .gc-form-timeline-progress{display:none}
.document-creation-dialog .document-creation-header .modal-close{margin-left:auto}
@media(max-width:900px){.document-creation-dialog .document-creation-heading{flex-basis:180px}.document-creation-dialog .document-creation-heading p{display:none}}
@media(max-width:640px){.document-creation-dialog .document-creation-header{flex-wrap:wrap;gap:6px 10px}.document-creation-dialog .document-creation-heading{flex:1 1 calc(100% - 50px)}.document-creation-dialog .document-timeline-slot{order:3;flex:1 0 100%}.document-creation-dialog .document-creation-header .modal-close{order:2}.document-creation-dialog .document-timeline-slot .gc-form-timeline-step{max-width:145px}}

/* === v55.css === */
/* GestiConnect V55 — contenus premium du tableau de bord et du planning.
   Le menu latéral n'est volontairement pas modifié. */
.content{max-width:1600px;background:#f3f5f7}.v55-btn-outline{background:#fff;color:#142c24;border-color:#d5dfda}.v55-btn-green{background:linear-gradient(135deg,#16a268,#0b8c58);color:#fff;border-color:#0f945f;box-shadow:0 10px 24px rgba(15,148,95,.18)}.v55-btn-dark{background:linear-gradient(135deg,#123e31,#082a22);color:#fff;border-color:#123e31;box-shadow:0 10px 24px rgba(9,45,36,.16)}

/* Dashboard */
.v55-dashboard-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:22px}.v55-dashboard-head h1{margin:0;color:#10261f;font-size:29px;letter-spacing:-.025em}.v55-dashboard-head p{margin:7px 0 0;color:#6b7771;font-size:13px}.v55-dashboard-actions{display:flex;gap:12px;flex-wrap:wrap}.v55-dashboard-actions .btn{min-width:142px;padding:13px 18px;border-radius:12px}
.v55-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:18px}.v55-kpi-card{position:relative;overflow:hidden;min-height:146px;padding:22px;border:1px solid #dfe6e2;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(31,55,45,.055)}.v55-kpi-card>div:first-child{position:relative;z-index:2}.v55-kpi-card small{display:block;font-size:12px;font-weight:800}.v55-kpi-card strong{display:block;margin:8px 0 5px;color:#142b23;font-size:25px}.v55-kpi-card span{color:#75817b;font-size:11px}.v55-kpi-icon{position:absolute;right:20px;top:20px;width:46px;height:46px;display:grid;place-items:center;border-radius:13px;font-size:21px;font-weight:900}.v55-kpi-card svg{position:absolute;right:18px;bottom:14px;width:112px;height:34px;fill:none;stroke-width:2.2}.kpi-green small,.kpi-green svg{color:#07995d;stroke:#17a86a}.kpi-green .v55-kpi-icon{background:#e2f7ec;color:#06965b}.kpi-blue small,.kpi-blue svg{color:#1671db;stroke:#2e82ee}.kpi-blue .v55-kpi-icon{background:#e7f0ff;color:#2678dc}.kpi-orange small,.kpi-orange svg{color:#e36d00;stroke:#f18a20}.kpi-orange .v55-kpi-icon{background:#fff0dd;color:#e87508}.kpi-purple small,.kpi-purple svg{color:#7048dc;stroke:#7952e8}.kpi-purple .v55-kpi-icon{background:#eee9ff;color:#7048dc}
.v55-dashboard-row{display:grid;gap:18px;margin-bottom:18px}.v55-dashboard-row-main{grid-template-columns:minmax(0,1.5fr) minmax(380px,.85fr)}.v55-dashboard-row-secondary{grid-template-columns:1fr 1fr 1fr}.v55-panel{overflow:hidden;border:1px solid #dfe6e2;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(31,55,45,.05)}.v55-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:19px 21px;border-bottom:1px solid #edf1ef}.v55-panel-head h2{margin:0;color:#142b23;font-size:16px}.v55-panel-head p{margin:5px 0 0;color:#7b8580;font-size:11px}.v55-panel-head>a{font-size:12px;font-weight:800}.v55-period-chip,.v55-success-chip{padding:8px 10px;border:1px solid #dfe6e2;border-radius:9px;background:#fff;color:#4e5e56;font-size:11px;font-weight:750}.v55-success-chip{border-color:#c8ecd8;background:#eaf8f0;color:#07844e}
.v55-chart-legend{display:flex;gap:18px;padding:16px 23px 0;color:#59675f;font-size:11px}.v55-chart-legend span:before{content:"";display:inline-block;width:18px;height:3px;margin-right:7px;border-radius:9px;vertical-align:middle}.legend-revenue:before{background:#18a56b}.legend-invoices:before{background:#2f7df4}.legend-interventions:before{background:#7451dc}.v55-line-chart{position:relative;padding:10px 24px 18px 54px}.v55-line-chart svg{width:100%;height:225px;overflow:visible}.v55-line-chart polyline{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.revenue-line{stroke:#18a56b}.invoice-line{stroke:#2f7df4}.intervention-line{stroke:#7451dc}.v55-chart-grid{position:absolute;left:17px;top:12px;bottom:40px;display:flex;flex-direction:column;justify-content:space-between;color:#98a19d;font-size:9px}.v55-line-chart:after{content:"";position:absolute;left:52px;right:24px;top:18px;bottom:42px;background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(25% - 1px),#edf1ef 25%);pointer-events:none}.v55-line-chart svg{position:relative;z-index:1}.v55-chart-labels{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;color:#7b8580;font-size:10px;text-align:center}
.v55-today-list{display:grid}.v55-today-item{display:grid;grid-template-columns:48px 8px minmax(0,1fr) auto;gap:10px;align-items:center;padding:16px 20px;border-top:1px solid #edf1ef;color:#263a31}.v55-today-item:first-child{border-top:0}.v55-today-item:hover{text-decoration:none;background:#fafcfb}.v55-today-item time{font-size:12px;font-weight:900}.v55-today-dot{width:7px;height:7px;border-radius:50%;background:#9da8a2}.v55-today-dot.status-booked{background:#f0a91b}.v55-today-dot.status-assigned{background:#ef5757}.v55-today-dot.status-in_progress{background:#2f7df4}.v55-today-dot.status-completed{background:#19a864}.v55-today-item div{min-width:0;display:grid;gap:4px}.v55-today-item div strong{font-size:12px}.v55-today-item div small{overflow:hidden;color:#7a8680;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.v55-donut-layout{display:grid;grid-template-columns:170px minmax(0,1fr);gap:22px;align-items:center;padding:22px}.v55-donut{width:160px;height:160px;display:grid;place-items:center;border-radius:50%;background:var(--donut);box-shadow:inset 0 0 0 1px rgba(20,43,35,.04)}.v55-donut:before{content:"";grid-area:1/1;width:104px;height:104px;border-radius:50%;background:#fff}.v55-donut>div{grid-area:1/1;z-index:1;text-align:center}.v55-donut strong{display:block;color:#142b23;font-size:17px}.v55-donut span{color:#85908a;font-size:10px}.v55-donut-legend{display:grid;gap:10px}.v55-donut-legend>div{display:grid;grid-template-columns:8px minmax(0,1fr) auto auto;gap:8px;align-items:center}.v55-donut-legend i{width:8px;height:8px;border-radius:50%}.v55-donut-legend span,.v55-donut-legend strong,.v55-donut-legend small{font-size:10px}.v55-donut-legend small{color:#8b948f}
.v55-collection-panel{padding-bottom:18px}.v55-collection-amount{display:block;padding:21px 22px 2px;color:#142b23;font-size:25px}.v55-collection-caption{display:block;padding:0 22px;color:#77837c;font-size:11px}.v55-progress{height:8px;margin:22px;border-radius:999px;background:#e8eeeb}.v55-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#19aa69,#5ec292)}.v55-collection-due{display:flex;justify-content:space-between;gap:12px;margin:0 22px;padding:15px;border-radius:12px;background:#edf8f2;color:#28704f}.v55-collection-due span{font-size:11px}.v55-source-list{display:grid;padding:7px 20px 16px}.v55-source-list>div{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;gap:9px;align-items:center;padding:11px 0;border-bottom:1px solid #edf1ef}.v55-source-list>div:last-child{border-bottom:0}.v55-source-mark{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:#edf4ff;color:#286bc3;font-size:11px;font-weight:900}.v55-source-list strong,.v55-source-list span,.v55-source-list b{font-size:10px}.v55-source-list span{color:#7a8580}.v55-source-list b{color:#15965e}
.v55-document-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.v55-document-list{display:grid}.v55-document-list>a{display:grid;grid-template-columns:minmax(0,1fr) auto auto 76px;gap:13px;align-items:center;padding:14px 20px;border-top:1px solid #edf1ef;color:#253a31}.v55-document-list>a:first-child{border-top:0}.v55-document-list>a:hover{text-decoration:none;background:#fafcfb}.v55-document-list div{display:grid;gap:3px}.v55-document-list small{color:#7a8580;font-size:10px}.v55-document-list b,.v55-document-list time{font-size:11px;white-space:nowrap}.v55-document-list time{color:#7a8580;text-align:right}

/* Planning */
.v55-planning-head{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:14px}.v55-planning-title{display:flex;gap:14px;align-items:center}.v55-calendar-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:#e5f7ed;color:#07965b;font-size:23px}.v55-planning-title h1{margin:0;color:#132a22;font-size:28px}.v55-planning-title p{margin:5px 0 0;color:#75817b;font-size:12px}.v55-planning-tools{display:flex;gap:10px;align-items:center}.v55-planning-tools>input[type=date]{width:158px}.v55-planning-search{position:relative;width:min(320px,26vw)}.v55-planning-search span{position:absolute;left:12px;top:9px;color:#75817b;font-size:17px}.v55-planning-search input{padding-left:36px}.v55-filter-popover{position:relative}.v55-filter-popover summary{list-style:none;padding:10px 14px;border:1px solid #cbd6e2;border-radius:9px;background:#fff;color:#33463e;font-size:12px;font-weight:800;cursor:pointer}.v55-filter-popover summary::-webkit-details-marker{display:none}.v55-filter-menu{position:absolute;right:0;top:48px;z-index:20;width:300px;display:grid;gap:12px;padding:16px;border:1px solid #dce5e0;border-radius:14px;background:#fff;box-shadow:0 18px 50px rgba(30,54,44,.16)}.v55-filter-menu label{display:grid;gap:6px}.v55-planning-views{display:flex;gap:6px;margin-bottom:16px;padding:5px;border:1px solid #e0e7e3;border-radius:13px;background:#fff;width:max-content}.v55-planning-views a{padding:9px 15px;border-radius:9px;color:#607068;font-size:11px;font-weight:800}.v55-planning-views a:hover{text-decoration:none;background:#f1f6f3}.v55-planning-views a.active{background:#153f31;color:#fff}
.v55-planning-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:17px}.v55-planning-kpis article{display:flex;gap:13px;align-items:center;min-height:102px;padding:17px;border:1px solid #dfe6e2;border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(31,55,45,.045)}.v55-planning-kpis .metric-icon{width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px;border-radius:50%;font-size:19px;font-weight:900}.v55-planning-kpis div{display:grid;gap:3px}.v55-planning-kpis small{font-size:10px;font-weight:800}.v55-planning-kpis strong{font-size:22px;color:#142b23}.v55-planning-kpis em{color:#7d8982;font-size:9px;font-style:normal}.metric-orange .metric-icon{background:#fff0ce;color:#ef9500}.metric-red .metric-icon{background:#ffe3e3;color:#e43d3d}.metric-blue .metric-icon{background:#e4efff;color:#2e78df}.metric-green .metric-icon{background:#e2f5e8;color:#159755}.metric-teal .metric-icon{background:#daf3f1;color:#11877f}
.v55-planning-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:17px}.v55-planning-board{min-width:0;overflow:hidden;border:1px solid #dce5e0;border-radius:18px;background:#fff;box-shadow:0 9px 28px rgba(31,55,45,.055)}.v55-board-datebar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 18px;border-bottom:1px solid #edf1ef}.v55-board-datebar>a,.v55-day-nav{width:32px;height:32px;display:grid;place-items:center;border:1px solid #dce5e0;border-radius:9px;background:#fff;color:#173e30;font-size:20px}.v55-board-datebar>a:hover,.v55-day-nav:hover{text-decoration:none;background:#f2f7f4}.v55-board-datebar div{text-align:center}.v55-board-datebar strong{display:block;color:#142b23;font-size:14px}.v55-board-datebar span{display:block;margin-top:3px;color:#7e8983;font-size:9px}.v55-sector-legend{display:flex;gap:12px;flex-wrap:wrap;padding:10px 18px;border-bottom:1px solid #edf1ef;background:#fafcfb}.v55-sector-legend span{color:#55645c;font-size:9px;font-weight:750}.v55-sector-legend span:before{content:"";display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:3px;background:var(--legend-color)}
.v55-status-board{display:grid;grid-template-columns:68px repeat(4,minmax(190px,1fr));min-height:650px;overflow-x:auto}.v55-time-rail{display:grid;grid-template-rows:48px repeat(11,55px);border-right:1px solid #e5ebe8;background:#fbfcfc}.v55-time-rail strong{display:grid;place-items:center;color:#6d7a73;font-size:10px}.v55-time-rail span{padding:10px 8px;border-top:1px solid #edf1ef;color:#738079;font-size:10px;text-align:center}.v55-status-column{min-width:190px;border-right:1px solid #e5ebe8}.v55-status-column:last-child{border-right:0}.v55-status-column>header{height:48px;display:flex;justify-content:space-between;align-items:center;padding:0 15px;border-bottom:1px solid #e5ebe8;font-size:11px;font-weight:900}.v55-status-column>header strong{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#edf2ef}.status-booked>header{color:#b67300}.status-assigned>header{color:#d54242}.status-in_progress>header{color:#226ed3}.status-completed>header{color:#13864d}.v55-status-canvas{display:grid;align-content:start;gap:12px;min-height:605px;padding:12px;background:repeating-linear-gradient(to bottom,#fff 0,#fff 54px,#edf1ef 55px)}.v55-intervention-card{display:grid;gap:6px;padding:13px;border:1px solid var(--trade-border);border-left-width:4px;border-radius:12px;background:var(--trade-bg);color:var(--trade-text);box-shadow:0 5px 15px rgba(31,55,45,.08)}.v55-intervention-card:hover{text-decoration:none;filter:saturate(1.08) brightness(.985);transform:translateY(-1px)}.v55-intervention-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.v55-intervention-top time{font-size:12px;font-weight:950}.v55-intervention-top span{padding:3px 6px;border:1px solid color-mix(in srgb,var(--trade-border) 55%,transparent);border-radius:999px;background:rgba(255,255,255,.45);font-size:8px;font-weight:850}.v55-intervention-card h3{margin:0;font-size:12px;line-height:1.3}.v55-intervention-card p,.v55-intervention-card small{margin:0;font-size:9px}.v55-intervention-card footer{display:flex;justify-content:space-between;gap:8px;padding-top:7px;border-top:1px solid rgba(0,0,0,.08);font-size:8px}.v55-empty-column{padding:30px 10px;color:#99a39e;font-size:10px;text-align:center}
.v55-planning-sidebar{display:grid;align-content:start;gap:14px}.v55-side-card{overflow:hidden;border:1px solid #dce5e0;border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(31,55,45,.045)}.v55-side-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 16px;border-bottom:1px solid #edf1ef}.v55-side-head h2{margin:0;color:#142b23;font-size:13px}.v55-side-head a{font-size:9px;font-weight:800}.v55-technician-list{display:grid;padding:7px 15px 13px}.v55-technician-row{display:grid;grid-template-columns:36px minmax(0,1fr) 34px;gap:9px;align-items:center;padding:10px 0;border-bottom:1px solid #edf1ef}.v55-technician-row:last-child{border-bottom:0}.v55-avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#e8f5ee;color:#167348;font-size:10px;font-weight:900}.v55-technician-row div{min-width:0;display:grid;gap:3px}.v55-technician-row strong{font-size:10px}.v55-technician-row small{overflow:hidden;color:#7a8680;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.v55-technician-row i{height:4px;overflow:hidden;border-radius:999px;background:#e8eeeb}.v55-technician-row i span{display:block;height:100%;border-radius:inherit;background:#1eaa6c}.v55-technician-row>b{font-size:9px;text-align:right}.v55-upcoming-list{display:grid;padding:6px 15px 12px}.v55-upcoming-list a{display:grid;gap:3px;padding:10px 0 10px 11px;border-bottom:1px solid #edf1ef;border-left:3px solid #2f7df4;color:#2b3d35}.v55-upcoming-list a:hover{text-decoration:none;background:#fafcfb}.v55-upcoming-list time{color:#2f7df4;font-size:8px;font-weight:850}.v55-upcoming-list strong{font-size:10px}.v55-upcoming-list span{color:#78847e;font-size:8px}.v55-material-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;padding:13px}.v55-material-summary>div{padding:11px;border:1px solid #e4eae7;border-top:3px solid var(--sector-color);border-radius:10px;text-align:center}.v55-material-summary span,.v55-material-summary small{display:block;color:#7c8781;font-size:8px}.v55-material-summary strong{display:block;margin:4px 0;color:#142b23;font-size:18px}.v55-other-planning-view{margin-top:0}.v55-other-planning-view .week-planning-grid{padding:16px}.v55-week-event{border-left:4px solid var(--trade-border)!important;background:var(--trade-bg)!important;color:var(--trade-text)!important}

/* Matériel dans la fenêtre d'affectation */
.intervention-material-editor{margin-top:18px;padding:18px;border:1px solid #cfe1d7;border-radius:16px;background:#f7fbf8}.intervention-material-editor[hidden]{display:none}.intervention-material-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}.intervention-material-head h4{margin:0;color:#173d2f;font-size:16px}.intervention-material-head p{margin:5px 0 0;color:#738078;font-size:11px}.intervention-material-total{min-width:150px;padding:12px 14px;border-radius:12px;background:#173d2f;color:#fff;text-align:right}.intervention-material-total span{display:block;color:#cce0d5;font-size:9px}.intervention-material-total strong{display:block;margin-top:3px;font-size:18px}.intervention-material-table{display:grid;gap:9px;margin-bottom:12px}.intervention-material-row{position:relative;display:grid;grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) 85px 100px 120px 100px 34px;gap:9px;align-items:end;padding:12px;border:1px solid #dce7e1;border-radius:12px;background:#fff}.intervention-material-row label{font-size:9px}.intervention-material-row input,.intervention-material-row select{padding:9px}.material-line-total{display:grid;gap:6px;padding-bottom:8px}.material-line-total span{color:#7b8780;font-size:9px}.material-line-total strong{font-size:12px;color:#173d2f}.material-remove{width:32px;height:32px;margin-bottom:1px;border:1px solid #efc6c8;border-radius:9px;background:#fff4f4;color:#bd3037;font-size:19px;cursor:pointer}.intervention-material-summary-total{padding:10px 13px;border-radius:11px;background:#edf8f2;color:#147246;font-size:17px}.intervention-material-summary tfoot th{background:#f1f8f4;color:#173d2f}

@media(max-width:1300px){.v55-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v55-dashboard-row-main,.v55-dashboard-row-secondary{grid-template-columns:1fr 1fr}.v55-source-panel{grid-column:1/-1}.v55-planning-kpis{grid-template-columns:repeat(3,1fr)}.v55-planning-layout{grid-template-columns:1fr}.v55-planning-sidebar{grid-template-columns:repeat(3,1fr)}.intervention-material-row{grid-template-columns:2fr 1fr 90px 100px 120px}.material-line-total{grid-column:5}.material-remove{position:absolute;right:8px;top:8px}}
@media(max-width:980px){.v55-dashboard-head,.v55-planning-head{align-items:flex-start;flex-direction:column}.v55-dashboard-row-main,.v55-dashboard-row-secondary,.v55-document-grid{grid-template-columns:1fr}.v55-source-panel{grid-column:auto}.v55-planning-tools{width:100%;flex-wrap:wrap}.v55-planning-search{width:100%;flex:1 1 100%}.v55-planning-kpis{grid-template-columns:1fr 1fr}.v55-planning-sidebar{grid-template-columns:1fr}.v55-status-board{grid-template-columns:58px repeat(4,minmax(210px,1fr))}.intervention-material-row{grid-template-columns:1fr 1fr}.material-description{grid-column:1/-1}.material-line-total{grid-column:auto}}
@media(max-width:640px){.content{padding-left:12px;padding-right:12px}.v55-kpi-grid,.v55-planning-kpis{grid-template-columns:1fr}.v55-dashboard-actions{width:100%}.v55-dashboard-actions .btn{flex:1}.v55-donut-layout{grid-template-columns:1fr;justify-items:center}.v55-document-list>a{grid-template-columns:1fr auto}.v55-document-list>a .badge,.v55-document-list>a time{grid-row:2}.v55-line-chart{padding-left:38px}.v55-planning-tools>input[type=date]{width:100%}.intervention-material-head{flex-direction:column}.intervention-material-total{width:100%;text-align:left}.intervention-material-row{grid-template-columns:1fr}.material-description{grid-column:auto}.material-remove{position:absolute;right:8px;top:8px}}

/* === v59.css === */
.moving-kicker{display:inline-flex;align-items:center;gap:6px;margin-bottom:8px;color:#1f7a55;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.moving-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px;margin-bottom:20px;border:1px solid #d7e9df;border-radius:20px;background:linear-gradient(135deg,#f5fbf7 0%,#edf8f3 55%,#f9fcfb 100%);box-shadow:0 12px 34px rgba(22,59,45,.07)}
.moving-hero h1,.moving-detail-head h1{margin:0 0 10px;font-size:clamp(1.65rem,3vw,2.45rem);line-height:1.08;color:#163b2d}.moving-hero p,.moving-detail-head p{max-width:780px;margin:0;color:#5e7068;line-height:1.6}.moving-hero-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.moving-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:20px}.moving-kpis article{min-height:126px;padding:18px;border:1px solid #e2e8e5;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(27,50,41,.05)}.moving-kpis span{display:block;color:#718078;font-size:.8rem;font-weight:700}.moving-kpis strong{display:block;margin:10px 0 4px;color:#163b2d;font-size:1.45rem;line-height:1.1}.moving-kpis small{color:#8b9691;line-height:1.35}
.moving-grid{display:grid;gap:20px}.moving-grid-main{grid-template-columns:minmax(0,1.7fr) minmax(290px,.8fr)}.moving-side-stack{display:flex;flex-direction:column;gap:20px}.moving-address-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:20px}
.moving-list{display:flex;flex-direction:column}.moving-list-row{display:grid;grid-template-columns:68px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 18px;border-bottom:1px solid #edf1ef}.moving-list-row:last-child{border-bottom:0}.moving-date{display:flex;flex-direction:column;align-items:center;padding:10px 6px;border-radius:12px;background:#eff8f3;color:#1f6c4c}.moving-date strong{font-size:1.25rem}.moving-date span,.moving-date small{font-size:.72rem}.moving-list-content{display:flex;flex-direction:column;gap:4px;min-width:0}.moving-list-content a{color:#183f30;text-decoration:none}.moving-list-content span,.moving-list-content small{color:#718078;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.moving-row-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.moving-steps{display:flex;flex-direction:column;gap:16px}.moving-steps>div{display:flex;gap:12px;align-items:flex-start}.moving-steps b{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:#1f7a55;color:#fff}.moving-steps span{display:flex;flex-direction:column;gap:2px}.moving-steps small{color:#7c8983;line-height:1.4}.moving-quick-links{display:grid;gap:8px}.moving-quick-links a{padding:11px 12px;border:1px solid #e1e9e5;border-radius:10px;color:#245b45;text-decoration:none;font-weight:700;background:#fbfdfc}.moving-table-sub{display:block;margin-top:3px;color:#84918b;font-weight:400}
.moving-form{display:flex;flex-direction:column;gap:20px}.moving-form-section{overflow:visible}.moving-form-section>.card-header>div{display:flex;align-items:center;gap:10px}.moving-step-number{display:grid;place-items:center;min-width:32px;height:32px;padding:0 8px;border-radius:10px;background:#e7f5ed;color:#1c6b49;font-weight:900}.moving-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.moving-form-grid .form-group.full{grid-column:1/-1}.moving-check{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 12px;border:1px solid #dfe8e3;border-radius:10px;background:#fafdfb}.moving-check input{width:18px;height:18px}.input-with-unit{display:flex;align-items:stretch}.input-with-unit input{min-width:0;border-radius:8px 0 0 8px}.input-with-unit span{display:flex;align-items:center;padding:0 12px;border:1px solid var(--line);border-left:0;border-radius:0 8px 8px 0;background:#f3f6f4;color:#607068;font-size:.82rem;white-space:nowrap}.moving-technician-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.moving-technician-grid label{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid #dfe7e3;border-radius:11px;background:#fbfdfc}.moving-technician-grid span{display:flex;flex-direction:column}.moving-technician-grid small{color:#829087}
.moving-detail-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px;padding:24px;border:1px solid #dce8e2;border-radius:18px;background:#f7fbf9}.moving-detail-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.moving-summary-list{display:flex;flex-direction:column;gap:0}.moving-summary-list>div{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid #edf1ef}.moving-summary-list>div:last-child{border-bottom:0}.moving-summary-list span{color:#718078}.moving-summary-list strong{text-align:right;color:#233f34;max-width:62%;white-space:pre-line}.moving-team-list,.moving-doc-list{display:flex;flex-direction:column;gap:10px}.moving-team-list>div,.moving-doc-list>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e0e8e4;border-radius:10px;background:#fbfdfc}.moving-team-list span,.moving-doc-list small{color:#7c8983}.moving-doc-list a{text-decoration:none;color:#244f3d}.moving-doc-list a>span{display:flex;flex-direction:column;gap:2px}.moving-doc-list b{white-space:nowrap}
.moving-pricing-grid{display:grid;gap:14px}.moving-pricing-grid>label{display:grid;grid-template-columns:minmax(180px,1fr) minmax(260px,1.2fr);align-items:center;gap:14px}.moving-pricing-grid>label>span{font-weight:700;color:#3c5148}.moving-pair{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:8px}.moving-pair-long{grid-template-columns:minmax(0,.65fr) auto minmax(0,.65fr) auto minmax(0,1fr) auto}.moving-pair input{min-width:0}.moving-pair span{color:#748179;font-size:.8rem;white-space:nowrap}.moving-pricing-aside{position:relative}.moving-estimate-card{position:sticky;top:18px;border-color:#cfe4d8;background:#f8fcfa}.moving-estimate-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #e3ece7}.moving-estimate-row.total{margin-top:4px;border-bottom:0;font-size:1.08rem}.moving-estimate-row.total strong{color:#176a47}.moving-estimate-card small{display:block;margin-top:12px;color:#7a8981;line-height:1.45}.moving-form-footer{border-top:1px solid var(--line);border-bottom:0}
.moving-invoice-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.moving-invoice-mode-grid label{display:flex;gap:10px;align-items:flex-start;padding:14px;border:1px solid #dfe7e3;border-radius:12px;background:#fbfdfc;cursor:pointer}.moving-invoice-mode-grid input{margin-top:3px}.moving-invoice-mode-grid span{display:flex;flex-direction:column;gap:4px}.moving-invoice-mode-grid small{color:#78877f;line-height:1.35}
@media(max-width:1180px){.moving-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.moving-grid-main{grid-template-columns:1fr}.moving-pricing-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.moving-estimate-card{position:static}.moving-technician-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.moving-hero,.moving-detail-head{align-items:flex-start;flex-direction:column;padding:20px}.moving-hero-actions,.moving-detail-head .actions{width:100%}.moving-hero-actions .btn,.moving-detail-head .btn{flex:1}.moving-kpis,.moving-detail-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.moving-address-grid{grid-template-columns:1fr}.moving-form-grid{grid-template-columns:1fr}.moving-form-grid .form-group.full{grid-column:auto}.moving-list-row{grid-template-columns:58px minmax(0,1fr)}.moving-row-actions{grid-column:1/-1;justify-content:flex-start}.moving-technician-grid,.moving-pricing-aside,.moving-invoice-mode-grid{grid-template-columns:1fr}.moving-pricing-grid>label{grid-template-columns:1fr;gap:7px}.moving-pair-long{grid-template-columns:minmax(0,.6fr) auto minmax(0,.6fr) auto minmax(0,1fr) auto}}
@media(max-width:520px){.moving-kpis,.moving-detail-kpis{grid-template-columns:1fr}.moving-pair,.moving-pair-long{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto}.moving-pair-long input:nth-of-type(3){grid-column:1}.moving-pair-long span:nth-of-type(3){grid-column:2}.moving-list-row{padding:14px 12px}}
.moving-doc-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.moving-doc-action>a:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e0e8e4;border-radius:10px;background:#fbfdfc;text-decoration:none;color:#244f3d}.moving-doc-action>a:first-child>span{display:flex;flex-direction:column;gap:2px}.moving-invoice-mode-grid label:has(input:disabled){cursor:not-allowed;opacity:.58;background:#f2f4f3}.moving-invoice-mode-grid input:disabled{cursor:not-allowed}
@media(max-width:520px){.moving-doc-action{grid-template-columns:1fr}.moving-doc-action>.btn{width:100%}}

/* === v60.css === */
/* GestiConnect V60 - devis metier demenagement */
.moving-company-search{display:flex;gap:8px}.moving-company-search input{min-width:0;flex:1}.moving-company-search .btn{white-space:nowrap}.moving-settings-form{display:flex;flex-direction:column;gap:14px}.moving-salespeople-list{display:flex;flex-direction:column;gap:10px}.moving-salespeople-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #dfe8e3;border-radius:12px;background:#fbfdfc}.moving-salespeople-list article>div{display:flex;flex-direction:column;gap:3px}.moving-salespeople-list small{color:#76847d}
.moving-quote-page{max-width:1480px;margin:0 auto}.moving-quote-head{margin-bottom:16px}.document-popup-page .moving-quote-head{position:sticky;top:-18px;z-index:8;margin:-18px -20px 14px;padding:15px 20px;border-bottom:1px solid #dfe7e2;background:rgba(255,255,255,.97);backdrop-filter:blur(8px)}
.moving-document-preview{overflow:hidden;border:1px solid #cfd8d3;border-radius:16px;background:#fff;box-shadow:0 12px 35px rgba(22,59,45,.06)}.moving-document-preview-top{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:18px 22px}.moving-preview-company,.moving-preview-customer{display:flex;flex-direction:column;gap:3px}.moving-preview-company strong,.moving-preview-customer strong{font-size:1.05rem;color:#172d24}.moving-preview-company small,.moving-preview-customer span{color:#66756e}.moving-preview-customer{text-align:right}.moving-preview-title{padding:9px 18px;border-top:2px solid #2f654f;border-bottom:2px solid #2f654f;text-align:center;color:#173f30;font-size:1.25rem;font-weight:900;letter-spacing:.03em}.moving-preview-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#dfe7e2}.moving-preview-facts>div{display:flex;flex-direction:column;gap:3px;padding:12px 16px;background:#f8fbf9}.moving-preview-facts span{color:#718078;font-size:.77rem}.moving-preview-route{display:grid;grid-template-columns:1fr 44px 1fr;align-items:stretch;padding:16px 22px;gap:12px}.moving-preview-route article{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid #dfe6e2;border-radius:12px}.moving-preview-route h3{margin:-12px -12px 8px;padding:7px 12px;border-radius:11px 11px 0 0;background:#edf2ef;text-align:center;font-size:.95rem}.moving-preview-route small{margin-top:4px;color:#6b7872}.moving-preview-arrow{display:grid;place-items:center;font-size:1.5rem;color:#39715a}.moving-preview-formula{padding:10px 18px;background:#e6ebe8;text-align:center;font-size:1rem}
.moving-quote-grid{align-items:start}.moving-value-table{display:flex;flex-direction:column;margin-top:18px;border:1px solid #cfd8d3;border-radius:12px;overflow:hidden}.moving-value-head,.moving-value-row{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(180px,.7fr) 42px;gap:0;align-items:stretch}.moving-value-head{background:#173b2d;color:#fff}.moving-value-head>*{padding:10px 12px}.moving-value-row{border-top:1px solid #dfe6e2}.moving-value-row input{border:0;border-radius:0;min-height:44px}.moving-value-row>.input-with-unit input{border:0}.moving-value-row>.input-with-unit span{border-top:0;border-bottom:0;border-right:0}.moving-value-row>.btn{margin:5px;border-radius:8px}.moving-warning-card{border-color:#efd49e;background:#fffaf0}.moving-warning-card p{color:#756649}.moving-quote-form .sticky-form-actions{z-index:9}.document-popup-page .moving-quote-form .sticky-form-actions{bottom:-30px;margin:0 -20px -30px;padding:14px 20px;background:rgba(255,255,255,.97);backdrop-filter:blur(8px)}
@media(max-width:900px){.moving-preview-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.moving-document-preview-top{grid-template-columns:1fr}.moving-preview-customer{text-align:left}.moving-preview-route{grid-template-columns:1fr}.moving-preview-arrow{transform:rotate(90deg)}}
@media(max-width:620px){.moving-company-search{flex-direction:column}.moving-preview-facts{grid-template-columns:1fr}.moving-value-head{display:none}.moving-value-row{grid-template-columns:1fr 1fr 42px}.moving-document-preview-top,.moving-preview-route{padding:14px}.document-popup-page .moving-quote-head{margin:-12px -12px 12px;padding:12px}.document-popup-page .moving-quote-form .sticky-form-actions{margin:0 -12px -12px;padding:12px}}

/* === v62.css === */
/* GestiConnect V62 - formulaire de devis demenagement simplifie */
.moving-quote-v62{max-width:1480px;margin:0 auto}.moving-simple-quote{display:flex;flex-direction:column;gap:18px}.moving-v62-section{overflow:visible}.moving-v62-title{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px 10px;border-bottom:1px solid var(--line)}.moving-v62-title h2{margin:0;font-size:1.28rem;font-weight:500}.moving-v62-title p{margin:4px 0 0;color:var(--muted)}.moving-v62-title.with-action>div{min-width:0}.moving-v62-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 36px}.moving-v62-grid.one-column{grid-template-columns:1fr}.moving-v62-grid .form-group.full{grid-column:1/-1}.moving-v62-grid .form-group{margin:0}.moving-v62-check{align-self:end;min-height:48px}.moving-v62-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.moving-v62-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.moving-v62-access-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.moving-v62-inline-checks{display:flex;gap:22px;flex-wrap:wrap;padding-top:4px}.moving-v62-financial-summary{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:82px;padding:14px 18px;border:1px solid #cfe4d8;border-radius:12px;background:#f7fbf9}.moving-v62-financial-summary span,.moving-v62-financial-summary small{color:#65766d}.moving-v62-financial-summary strong{font-size:1.35rem;color:#176a47}.moving-settings-value{max-width:430px;padding:16px;border:1px solid #d8e5de;border-radius:12px;background:#f8fbf9}.moving-settings-value small{display:block;margin-top:8px;line-height:1.45}.moving-simple-quote input[readonly]{background:#f5f7f6;color:#6c7771}.moving-simple-quote .moving-value-table{margin-top:0}.document-popup-page .moving-quote-v62{max-width:none}.document-popup-page .moving-v62-title{padding:14px 16px 9px}.document-popup-page .moving-v62-title h2{font-size:1.12rem}
@media(max-width:980px){.moving-v62-route-grid,.moving-v62-grid{grid-template-columns:1fr}.moving-v62-grid .form-group.full{grid-column:auto}}
@media(max-width:640px){.moving-v62-two,.moving-v62-access-row{grid-template-columns:1fr}.moving-v62-title{align-items:flex-start;flex-direction:column}.moving-v62-title.with-action .btn{width:100%}.moving-v62-inline-checks{flex-direction:column;gap:10px}}

/* === v64.css === */

/* GestiConnect V64 — formulaires plus lisibles et rendez-vous plus compacts */
.intervention-modal-dialog{
  width:min(790px,92vw);
  max-height:92vh;
}
.intervention-modal-dialog .modal-header h2{font-size:24px;line-height:1.2}
.intervention-modal-dialog .modal-header p{font-size:14px}
.intervention-modal-dialog .modal-body{padding:18px}
.intervention-modal-dialog .form-section{
  border:2px solid #a9c9bb;
  box-shadow:0 8px 24px rgba(21,61,45,.08);
}
.intervention-modal-dialog .form-section-title h3,
.moving-form .card-header h2{font-size:19px}
.intervention-modal-dialog .form-section-title p,
.intervention-modal-dialog .field-help,
.moving-form .form-group small{font-size:13px;line-height:1.45}
.intervention-modal-dialog .form-group>label:not(.check-card),
.moving-form .form-group>label:not(.moving-check),
.moving-form .moving-check span{
  color:#173d31;
  font-size:14px;
  font-weight:850;
}
.intervention-modal-dialog .form-group input,
.intervention-modal-dialog .form-group select,
.intervention-modal-dialog .form-group textarea,
.intervention-modal-dialog .dynamic-field-group input,
.intervention-modal-dialog .dynamic-field-group select,
.intervention-modal-dialog .dynamic-field-group textarea,
.moving-form .form-group input,
.moving-form .form-group select,
.moving-form .form-group textarea{
  min-height:50px;
  border:2px solid #8eac9f;
  border-radius:11px;
  background:#fff;
  color:#132f27;
  font-size:15px;
  line-height:1.35;
}
.intervention-modal-dialog .form-group textarea,
.moving-form .form-group textarea{min-height:104px}
.intervention-modal-dialog .form-group input:focus,
.intervention-modal-dialog .form-group select:focus,
.intervention-modal-dialog .form-group textarea:focus,
.moving-form .form-group input:focus,
.moving-form .form-group select:focus,
.moving-form .form-group textarea:focus{
  border-color:#d97706;
  outline:3px solid rgba(217,119,6,.16);
  box-shadow:none;
}
.intervention-modal-dialog .client-kind-tab,
.intervention-modal-dialog .check-card,
.moving-form .moving-check{
  border:2px solid #b5ccbf;
  font-size:14px;
}
.moving-form-section{
  border:2px solid #a9c9bb;
  box-shadow:0 8px 24px rgba(21,61,45,.06);
}
.review-settings-link{display:inline-flex;align-items:center;gap:7px}
.review-context-preview{margin-top:12px;padding:13px 15px;border:1px solid #b8d4c7;border-radius:11px;background:#f2faf6;color:#254b3e;line-height:1.55}
.review-settings-card{border-left:6px solid #d97706}
.seo-kpi-grid{margin-bottom:20px}
.seo-checklist{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.seo-checklist li{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid #d6e3dc;border-radius:11px;background:#fbfdfc}
.seo-checklist li::before{content:'✓';display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:999px;background:#e7f5ed;color:#176a47;font-weight:900}
@media(max-width:860px){
  .intervention-modal-dialog{width:100%;max-height:100vh;border-radius:0}
  .intervention-modal-dialog .modal-body{padding:12px}
}

.ff-lead-detail-head .actions form,.lead-conversion-actions form{margin:0}
.lead-conversion-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid #d9e4de}

/* === v65.css === */
/* GestiConnect V65 — fenêtres à leur taille d’origine et formulaires plus lisibles */
.intervention-modal-dialog{width:min(1180px,97vw);max-height:94vh}

/* Contours renforcés sans modifier la hauteur, la largeur ni la mise en page d’origine. */
form input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]),
form select,
form textarea{
  border-width:2px !important;
  border-style:solid !important;
  border-color:#78998c !important;
}
form input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):focus,
form select:focus,
form textarea:focus{
  border-color:#c66500 !important;
  outline:3px solid rgba(198,101,0,.16);
  box-shadow:none !important;
}
.primary-need-field{align-self:end}
.primary-need-field .field-help{display:block;margin-top:7px}
.lead-conversion-inline{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.lead-conversion-actions{display:flex;flex-wrap:wrap;gap:10px}
.platform-organic_search{color:#17633f;background:#e8f6ee;border-color:#acd8bd}
.platform-google_business{color:#1458a6;background:#eaf3ff;border-color:#b9d5f5}
@media(max-width:860px){.intervention-modal-dialog{width:100%;max-height:100vh}}

/* === v66.css === */
/* GestiConnect V66 — prise de rendez-vous simplifiée et clients dynamiques */
.appointment-main-grid>.appointment-date-field,.appointment-main-grid>.activity-field,.appointment-main-grid>.primary-need-field{grid-column:span 4}
.appointment-main-grid>.primary-need-field{align-self:start}
.check-card span,.dynamic-check span{display:grid;gap:3px;min-width:0}
.check-card strong,.check-card small,.dynamic-check strong,.dynamic-check small{display:block;min-width:0;line-height:1.35}
.check-card small,.dynamic-check small{color:#64736c;font-size:12px;font-weight:600}
.check-card,.dynamic-check{align-items:start!important}
.customer-picker-native{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
.customer-autocomplete-shell,.customer-live-search{position:relative;display:flex;gap:10px;align-items:center}
.customer-autocomplete-shell>input,.customer-live-search>input{flex:1;min-width:0}
.customer-search-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:9px;background:#eef3f0;color:#315447;font-size:22px;cursor:pointer}
.customer-autocomplete-results,.customer-live-results{position:absolute;z-index:60;left:0;right:0;top:calc(100% + 6px);display:grid;max-height:310px;overflow:auto;padding:6px;border:2px solid #78998c;border-radius:12px;background:#fff;box-shadow:0 16px 34px rgba(16,49,37,.16)}
.customer-autocomplete-item,.customer-live-results button{display:grid;gap:3px;width:100%;padding:11px 13px;border:0;border-bottom:1px solid #e5ece8;background:#fff;text-align:left;cursor:pointer}
.customer-autocomplete-item:hover,.customer-live-results button:hover{background:#eef8f3}
.customer-autocomplete-item strong,.customer-live-results strong{color:#153d2f;font-size:13px}.customer-autocomplete-item span,.customer-live-results span{color:#68776f;font-size:11px}
.customer-search-state{padding:12px;color:#6d7973;font-size:12px}
.selected-customer-summary{display:flex;justify-content:space-between;gap:12px;margin-top:9px;padding:11px 13px;border:1px solid #b9d2c5;border-radius:11px;background:#f3faf6}.selected-customer-summary span{color:#61736a;font-size:11px}
.customer-directory-card{overflow:visible}.customer-directory-head{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px}.customer-live-search{width:min(720px,100%)}
.customer-directory-list{display:grid}.customer-directory-row{border-bottom:1px solid #e1e9e5}.customer-directory-row:last-child{border-bottom:0}
.customer-row-main{display:grid;grid-template-columns:44px minmax(170px,1.1fr) minmax(190px,1fr) minmax(220px,1.3fr) 24px;gap:14px;align-items:center;width:100%;padding:16px 18px;border:0;background:#fff;text-align:left;cursor:pointer}
.customer-row-main:hover,.customer-row-main[aria-expanded="true"]{background:#f5faf7}.customer-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#173f31;color:#fff;font-weight:900}.customer-main-info,.customer-contact-info,.customer-address-info{display:grid;gap:3px;min-width:0}.customer-row-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#17382d;font-size:13px}.customer-row-main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6e7b75;font-size:11px}.customer-row-chevron{font-size:25px;color:#557266;transition:.18s}.customer-row-main[aria-expanded="true"] .customer-row-chevron{transform:rotate(90deg)}
.customer-action-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px 17px 76px;background:#f3f8f5;border-top:1px solid #dfe9e4}.customer-action-panel>div:first-child{display:grid;gap:3px}.customer-action-panel span{color:#6b7871;font-size:11px}.customer-action-buttons{display:flex;flex-wrap:wrap;gap:8px}
@media(max-width:1050px){.appointment-main-grid>.appointment-date-field,.appointment-main-grid>.activity-field,.appointment-main-grid>.primary-need-field{grid-column:span 6}.appointment-main-grid>.primary-need-field{grid-column:1/-1}.customer-row-main{grid-template-columns:44px 1fr 1fr 24px}.customer-address-info{display:none}.customer-action-panel{align-items:flex-start;flex-direction:column;padding-left:76px}}
@media(max-width:700px){.appointment-main-grid>.appointment-date-field,.appointment-main-grid>.activity-field,.appointment-main-grid>.primary-need-field{grid-column:1/-1}.customer-directory-head,.customer-action-panel{align-items:stretch;flex-direction:column}.customer-live-search{width:100%}.customer-row-main{grid-template-columns:40px 1fr 24px}.customer-contact-info{display:none}.customer-action-panel{padding-left:18px}.selected-customer-summary{align-items:flex-start;flex-direction:column}}

/* === v67.css === */
/* GestiConnect V67 — clients détaillés, pagination et formulaires métier */
.selected-customer-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px;padding:14px;border:2px solid #9bbcaf;border-radius:14px;background:#f7fbf9}
.selected-customer-fields .form-group{margin:0}.selected-customer-fields .adaptive-wide,.selected-customer-fields .quick-full{grid-column:span 2}
.selected-customer-fields input[readonly]{background:#fff;color:#17382d;font-weight:700;border-color:#9bbcaf}
.intervention-selected-customer,.moving-selected-customer{grid-template-columns:repeat(3,minmax(0,1fr))}
.list-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-top:1px solid #dce7e1;background:#f8fbf9}
.list-pagination-info{color:#5f7169;font-size:13px;font-weight:700}.list-pagination-actions{display:flex;align-items:center;gap:8px}.list-pagination select{min-width:92px;padding:9px 11px;border:2px solid #78998c;border-radius:10px;background:#fff;color:#17382d;font-weight:800}.list-pagination button{padding:9px 13px;border:1px solid #abc1b6;border-radius:10px;background:#fff;color:#17382d;font-weight:800;cursor:pointer}.list-pagination button:disabled{opacity:.42;cursor:not-allowed}
.moving-form-section:first-of-type .moving-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.moving-form-section:first-of-type .dynamic-customer-picker{grid-column:1/-1}
@media(max-width:800px){.selected-customer-fields,.intervention-selected-customer,.moving-selected-customer{grid-template-columns:1fr}.selected-customer-fields .adaptive-wide,.selected-customer-fields .quick-full{grid-column:auto}.list-pagination{align-items:stretch;flex-direction:column}.list-pagination-actions{justify-content:space-between}.moving-form-section:first-of-type .moving-form-grid{grid-template-columns:1fr}}

/* === v68.css === */
/* GestiConnect V68 — coordonnées client sans doublons. */
.moving-manual-customer-fields:not([hidden]){display:contents}
[data-existing-customer-duplicate][hidden],.moving-manual-customer-fields[hidden]{display:none!important}
.signature-layout-note{font-size:.82rem;color:#5b6d66}

/* === v69.css === */
/* GestiConnect V69 — bloc de facturation unique pour les clients existants. */
form[data-existing-customer-selected="1"] [data-existing-customer-duplicate]{display:none!important}

/* === v70.css === */
/* GestiConnect V70 - adresses client unifiees */
[data-existing-customer-duplicate][hidden],
[data-customer-site-fields][hidden],
.moving-manual-customer-fields[hidden]{display:none!important}
.customer-site-fields{margin-top:16px}
.moving-form .subsection-title.full{grid-column:1/-1;margin-top:8px}
.moving-form .subsection-title.full p{margin:4px 0 0;color:var(--muted,#64748b);font-size:.92rem}

/* === v71.css === */
.v71-score-card .card-body{display:grid;grid-template-columns:180px 1fr;gap:24px;align-items:center}.v71-score{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;border:2px solid #2f6f5c;border-radius:22px;background:#f1f8f5}.v71-score strong{font-size:42px;color:#163b2d}.v71-score span{font-weight:700;color:#587066}.v71-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v71-check{display:flex;gap:12px;align-items:flex-start;border:1px solid #cbdad4;border-radius:14px;padding:14px;background:#fff}.v71-check>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;font-weight:900;flex:0 0 auto}.v71-check div{display:flex;flex-direction:column;gap:3px}.v71-check small{color:#687a73;overflow-wrap:anywhere}.v71-check.is-ok>span{background:#daf2e7;color:#0e6549}.v71-check.is-warning>span{background:#fff0d9;color:#9b5400}.v71-stat-grid{margin-bottom:4px}.v71-export-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.v71-export{display:flex;flex-direction:column;gap:6px;border:2px solid #9ebcaf;border-radius:16px;padding:18px;text-decoration:none;color:#153d30;background:#fff;min-height:104px}.v71-export:hover{border-color:#1f6b52;box-shadow:0 8px 24px rgba(22,59,45,.1)}.v71-export span{color:#66766f;font-size:13px}.v71-export-primary{background:#163b2d;color:#fff;border-color:#163b2d}.v71-export-primary span{color:#d8e8e0}@media(max-width:980px){.v71-score-card .card-body{grid-template-columns:1fr}.v71-check-grid,.v71-export-grid{grid-template-columns:1fr}.v71-score{min-height:110px}}

/* === v72.css === */
/* GestiConnect V72 — statuts visuels et supervision renforcée */
:root{
  --gc-status-yellow:#fff0a8;--gc-status-yellow-border:#d49a00;--gc-status-yellow-text:#4f3a00;
  --gc-status-red:#ffd6dc;--gc-status-red-border:#d72d45;--gc-status-red-text:#671321;
  --gc-status-blue:#dbeafe;--gc-status-blue-border:#2574d6;--gc-status-blue-text:#123f78;
  --gc-status-green:#d9f7e3;--gc-status-green-border:#219653;--gc-status-green-text:#124d2c;
  --gc-status-purple:#eedcff;--gc-status-purple-border:#8e44c7;--gc-status-purple-text:#4f1c72;
  --gc-status-black:#1c1c1f;--gc-status-black-border:#000;--gc-status-black-text:#fff;
}
.gc-status-row>td,.gc-status-card,.gc-document-card{transition:background-color .16s ease,border-color .16s ease,color .16s ease}
.gc-status-row.gc-intervention-booked>td,.gc-status-card.gc-intervention-booked{background:var(--gc-status-yellow)!important;color:var(--gc-status-yellow-text)!important;border-color:var(--gc-status-yellow-border)!important}
.gc-status-row.gc-intervention-assigned>td,.gc-status-card.gc-intervention-assigned{background:var(--gc-status-red)!important;color:var(--gc-status-red-text)!important;border-color:var(--gc-status-red-border)!important}
.gc-status-row.gc-intervention-in_progress>td,.gc-status-card.gc-intervention-in_progress{background:var(--gc-status-blue)!important;color:var(--gc-status-blue-text)!important;border-color:var(--gc-status-blue-border)!important}
.gc-status-row.gc-intervention-completed>td,.gc-status-card.gc-intervention-completed{background:var(--gc-status-green)!important;color:var(--gc-status-green-text)!important;border-color:var(--gc-status-green-border)!important}
.gc-status-row.gc-intervention-complaint>td,.gc-status-card.gc-intervention-complaint{background:var(--gc-status-purple)!important;color:var(--gc-status-purple-text)!important;border-color:var(--gc-status-purple-border)!important}
.gc-status-row.gc-intervention-cancelled>td,.gc-status-card.gc-intervention-cancelled{background:var(--gc-status-black)!important;color:var(--gc-status-black-text)!important;border-color:var(--gc-status-black-border)!important}
.gc-status-row.gc-document-quote-created>td,.gc-document-card.gc-document-quote-created{background:var(--gc-status-blue)!important;color:var(--gc-status-blue-text)!important;border-color:var(--gc-status-blue-border)!important}
.gc-status-row.gc-document-quote-accepted>td,.gc-document-card.gc-document-quote-accepted{background:var(--gc-status-green)!important;color:var(--gc-status-green-text)!important;border-color:var(--gc-status-green-border)!important}
.gc-status-row.gc-document-invoice-issued>td,.gc-document-card.gc-document-invoice-issued{background:var(--gc-status-blue)!important;color:var(--gc-status-blue-text)!important;border-color:var(--gc-status-blue-border)!important}
.gc-status-row.gc-document-invoice-partial>td,.gc-document-card.gc-document-invoice-partial{background:var(--gc-status-yellow)!important;color:var(--gc-status-yellow-text)!important;border-color:var(--gc-status-yellow-border)!important}
.gc-status-row.gc-document-invoice-paid>td,.gc-document-card.gc-document-invoice-paid{background:var(--gc-status-green)!important;color:var(--gc-status-green-text)!important;border-color:var(--gc-status-green-border)!important}
.gc-status-row.gc-document-cancelled>td,.gc-document-card.gc-document-cancelled{background:var(--gc-status-black)!important;color:var(--gc-status-black-text)!important;border-color:var(--gc-status-black-border)!important}
.gc-status-row.gc-intervention-cancelled a,.gc-status-card.gc-intervention-cancelled a,.gc-status-card.gc-intervention-cancelled strong,.gc-status-card.gc-intervention-cancelled small,.gc-status-card.gc-intervention-cancelled span,.gc-document-card.gc-document-cancelled a,.gc-document-card.gc-document-cancelled strong,.gc-document-card.gc-document-cancelled small,.gc-document-card.gc-document-cancelled span,.gc-status-row.gc-document-cancelled a{color:#fff!important}
.gc-status-card,.gc-document-card{border:2px solid transparent!important;border-radius:12px}
.gc-status-row>td:first-child{border-left:6px solid transparent}
.gc-status-row.gc-intervention-booked>td:first-child{border-left-color:var(--gc-status-yellow-border)}
.gc-status-row.gc-intervention-assigned>td:first-child{border-left-color:var(--gc-status-red-border)}
.gc-status-row.gc-intervention-in_progress>td:first-child,.gc-status-row.gc-document-quote-created>td:first-child,.gc-status-row.gc-document-invoice-issued>td:first-child{border-left-color:var(--gc-status-blue-border)}
.gc-status-row.gc-intervention-completed>td:first-child,.gc-status-row.gc-document-quote-accepted>td:first-child,.gc-status-row.gc-document-invoice-paid>td:first-child{border-left-color:var(--gc-status-green-border)}
.gc-status-row.gc-intervention-complaint>td:first-child{border-left-color:var(--gc-status-purple-border)}
.gc-status-row.gc-intervention-cancelled>td:first-child,.gc-status-row.gc-document-cancelled>td:first-child{border-left-color:#000}
.gc-status-row.gc-document-invoice-partial>td:first-child{border-left-color:var(--gc-status-yellow-border)}
/* The operational state now takes precedence over the old trade palette. */
.v55-intervention-card.gc-status-card,.v55-week-event.gc-status-card{--trade-bg:transparent!important;--trade-border:currentColor!important;--trade-text:currentColor!important}
.v55-intervention-card.gc-status-card{box-shadow:0 5px 14px rgba(15,23,42,.12)!important}
.v55-status-board{grid-template-columns:68px repeat(5,minmax(180px,1fr))!important;overflow-x:auto}
.v55-planning-kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important}
.metric-purple{background:#f4e8ff!important;border-color:#caa1eb!important}.metric-dark{background:#25252a!important;border-color:#000!important;color:#fff!important}.metric-dark small,.metric-dark em{color:#eee!important}
.v55-upcoming-list .gc-status-card{padding:11px 12px!important;margin-bottom:8px}
.v55-document-list .gc-document-card{padding:12px!important;margin-bottom:7px}
.moving-list-row.gc-status-card,.moving-detail-head.gc-status-card{padding:16px!important}
.moving-doc-action.gc-document-card,.moving-doc-list>a.gc-document-card{padding:10px!important;margin-bottom:8px}
.intervention-hero.gc-status-card{padding:22px!important}
.v72-supervision-block{margin-top:16px;padding:18px}.v72-status-kpis{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px}.v72-document-kpis{grid-template-columns:repeat(5,minmax(130px,1fr))}.v72-status-kpi{padding:16px;border:2px solid transparent;border-radius:14px;display:grid;gap:5px}.v72-status-kpi span{font-weight:800}.v72-status-kpi strong{font-size:28px}.v72-status-kpi.yellow{background:var(--gc-status-yellow);border-color:var(--gc-status-yellow-border);color:var(--gc-status-yellow-text)}.v72-status-kpi.red{background:var(--gc-status-red);border-color:var(--gc-status-red-border);color:var(--gc-status-red-text)}.v72-status-kpi.blue{background:var(--gc-status-blue);border-color:var(--gc-status-blue-border);color:var(--gc-status-blue-text)}.v72-status-kpi.green{background:var(--gc-status-green);border-color:var(--gc-status-green-border);color:var(--gc-status-green-text)}.v72-status-kpi.purple{background:var(--gc-status-purple);border-color:var(--gc-status-purple-border);color:var(--gc-status-purple-text)}.v72-status-kpi.black{background:var(--gc-status-black);border-color:#000;color:#fff}.v72-supervision-lists{margin-top:16px}.v72-supervision-lists .v31-card{overflow:hidden}.v72-supervision-lists small{display:block}
.v72-security-overview,.v72-security-attempts{margin-bottom:16px}.v72-security-kpis{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;padding:18px}.v72-security-kpis article{background:#f4f7fb;border:1px solid #d6e0ec;border-radius:12px;padding:14px;display:grid;gap:4px}.v72-security-kpis article.warning{background:var(--gc-status-yellow);border-color:var(--gc-status-yellow-border)}.v72-security-kpis article.danger{background:var(--gc-status-red);border-color:var(--gc-status-red-border)}.v72-security-kpis strong{font-size:26px}.v72-security-locked td{background:#ffe0e4!important}.v72-security-warning td{background:#fff4c9!important}
@media(max-width:1100px){.v72-status-kpis,.v72-document-kpis,.v72-security-kpis{grid-template-columns:repeat(2,minmax(140px,1fr))}.v55-status-board{grid-template-columns:68px repeat(5,260px)!important}}
@media(max-width:640px){.v72-status-kpis,.v72-document-kpis,.v72-security-kpis{grid-template-columns:1fr}.gc-status-row>td:first-child{border-left-width:4px}}
.v72-status-legend{display:flex;flex-wrap:wrap;gap:8px;padding:10px 16px;border-top:1px solid #e2e8f0}.v72-status-legend span{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800;border:1px solid transparent}.v72-status-legend .intervention-booked{background:var(--gc-status-yellow);border-color:var(--gc-status-yellow-border);color:var(--gc-status-yellow-text)}.v72-status-legend .intervention-assigned{background:var(--gc-status-red);border-color:var(--gc-status-red-border);color:var(--gc-status-red-text)}.v72-status-legend .intervention-in_progress{background:var(--gc-status-blue);border-color:var(--gc-status-blue-border);color:var(--gc-status-blue-text)}.v72-status-legend .intervention-completed{background:var(--gc-status-green);border-color:var(--gc-status-green-border);color:var(--gc-status-green-text)}.v72-status-legend .appointment-complaint{background:var(--gc-status-purple);border-color:var(--gc-status-purple-border);color:var(--gc-status-purple-text)}.v72-status-legend .intervention-cancelled{background:var(--gc-status-black);border-color:#000;color:#fff}
.gc-status-row a:not(.btn),.gc-status-card a:not(.btn),.gc-document-card a:not(.btn){color:inherit!important}.gc-status-row.gc-intervention-cancelled .text-muted,.gc-status-card.gc-intervention-cancelled .text-muted,.gc-status-row.gc-document-cancelled .text-muted,.gc-document-card.gc-document-cancelled .text-muted{color:#f1f5f9!important}.gc-status-row.gc-intervention-cancelled .btn,.gc-status-card.gc-intervention-cancelled .btn,.gc-status-row.gc-document-cancelled .btn,.gc-document-card.gc-document-cancelled .btn{background:#fff!important;border-color:#fff!important;color:#111827!important}

/* === v75.css === */
.subscription-v75-head{align-items:flex-end}.subscription-kicker{display:inline-block;margin-bottom:6px;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#1e6c52}.plan-grid-v75{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.plan-card-v75{min-height:230px;border:2px solid #cbd5e1;border-radius:18px;background:#fff;transition:.18s ease;overflow:hidden}.plan-card-v75:hover{border-color:#1e6c52;transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.08)}.plan-card-v75.is-current{border-color:#15803d;box-shadow:0 0 0 3px rgba(21,128,61,.12)}.plan-card-v75>input{position:absolute;opacity:0}.plan-card-content{display:flex!important;flex-direction:column;gap:10px;height:100%;padding:18px}.plan-card-name{display:flex;align-items:center;justify-content:space-between;gap:10px}.plan-card-name strong{font-size:1.12rem}.plan-card-name em{font-size:.72rem;font-style:normal;font-weight:800;color:#166534;background:#dcfce7;padding:4px 8px;border-radius:999px}.plan-card-content>b{font-size:1.55rem;color:#0f172a}.plan-card-content>b small{font-size:.8rem;font-weight:600;color:#64748b}.plan-card-content>small{line-height:1.45;color:#475569}.plan-feature-summary{margin-top:auto;font-size:.8rem;font-weight:800;color:#1e6c52}.plan-proration{font-size:.74rem;font-weight:700;padding:7px 9px;border-radius:10px}.plan-proration.debit{background:#fef3c7;color:#92400e}.plan-proration.credit{background:#dcfce7;color:#166534}.btn-subscription-change{min-height:48px;padding-inline:26px}.current-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.current-feature-item{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid #d7dee8;border-radius:13px;background:#f8fafc}.current-feature-item>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-weight:900;flex:0 0 auto}.current-feature-item strong{display:block;font-size:.92rem}.current-feature-item small{display:block;margin-top:3px;color:#64748b}.current-feature-item.is-enabled{background:#ecfdf5;border-color:#86efac}.current-feature-item.is-enabled>span{background:#16a34a;color:#fff}.current-feature-item.is-included{background:#eff6ff;border-color:#93c5fd}.current-feature-item.is-included>span{background:#2563eb;color:#fff}.current-feature-item.is-locked{opacity:.72}.current-feature-item.is-locked>span{background:#e2e8f0;color:#64748b}.subscription-comparison-wrap{max-height:720px;overflow:auto}.subscription-comparison th{position:sticky;top:0;z-index:2;background:#f8fafc}.subscription-comparison th small{display:block;font-weight:500;color:#64748b}.feature-group-row td{background:#0f3d2e!important;color:#fff;font-weight:800;letter-spacing:.02em}.feature-check-cell{text-align:center;font-size:1.15rem;font-weight:900}.feature-check-cell.yes{background:#ecfdf5;color:#15803d}.feature-check-cell.no{background:#f8fafc;color:#94a3b8}.module-upgrade-box{display:grid;gap:10px;margin-top:14px;padding:12px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc}.advanced-module-card.is-locked{opacity:.78;border-style:dashed}.pa-subscription-feature-grid{display:grid;gap:10px}.pa-subscription-group-title{margin:16px 0 2px;padding-bottom:7px;border-bottom:1px solid #dbe3ec;grid-column:1/-1}.pa-subscription-feature-row{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:14px;align-items:center;padding:10px 12px;border:1px solid #dbe3ec;border-radius:12px;background:#fff}.pa-subscription-feature-row strong,.pa-subscription-feature-row small{display:block}.pa-subscription-feature-row small{margin-top:3px;color:#64748b}.pa-subscription-feature-row select{border:2px solid #94a3b8;border-radius:10px;padding:9px;background:#fff}.pa-plan-admin-card .pa-feature-grid{max-height:420px;overflow:auto;padding:10px;border:1px solid #dbe3ec;border-radius:12px}@media(max-width:1100px){.plan-grid-v75{grid-template-columns:repeat(2,minmax(0,1fr))}.current-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.plan-grid-v75,.current-feature-grid{grid-template-columns:1fr}.pa-subscription-feature-row{grid-template-columns:1fr}.subscription-comparison{min-width:860px}}

/* V76 — Business sur mesure et fonctions privées */
.plan-card-v75:has(input[value="business"]){border-color:#8b5cf6;background:linear-gradient(180deg,#faf5ff 0%,#fff 52%)}
.plan-business-message{display:block;padding:10px 12px;border-radius:12px;background:#f3e8ff;color:#5b21b6;font-size:.8rem;line-height:1.45;font-weight:700}
.plan-business-private{display:block;color:#6b21a8;font-size:.75rem;font-weight:800}
.subscription-business-details{margin:16px 0;padding:14px;border:1px solid #ddd6fe;border-radius:14px;background:#faf5ff}
.subscription-business-details textarea{width:100%;min-height:82px}
#private-features .current-feature-item{border-color:#c4b5fd;background:#faf5ff}
#private-features .current-feature-item>span{background:#7c3aed;color:#fff}
@media(max-width:700px){.subscription-business-details{padding:11px}.plan-business-message{font-size:.76rem}}

/* === v77.css === */
.messaging-head{align-items:flex-start}.message-credit-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}.message-credit-kpi{display:flex;align-items:center;gap:14px;padding:18px}.message-credit-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#e8f1ff;color:#1267e5;font-size:13px;font-weight:900}.message-credit-kpi.whatsapp .message-credit-icon{background:#e8faef;color:#159447}.message-credit-kpi div{display:grid;gap:2px}.message-credit-kpi small,.message-credit-kpi span{color:var(--muted);font-size:11px}.message-credit-kpi strong{font-size:28px;color:#102a43}.message-credit-section{margin-top:16px}.message-pack-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:18px}.message-pack-card{border:1px solid var(--line);border-radius:18px;padding:18px;background:linear-gradient(180deg,#fff,#f8fbff);display:flex;flex-direction:column;gap:10px}.message-pack-card.channel-whatsapp{background:linear-gradient(180deg,#fff,#f3fff7)}.message-pack-card h3{margin:0;font-size:16px}.message-pack-card p{margin:0;color:var(--muted);min-height:42px}.message-pack-units{font-size:30px;font-weight:900;color:#1267e5}.message-pack-units small{font-size:12px}.message-pack-price{font-size:18px}.message-pack-card form{margin-top:auto}.message-pack-card button{width:100%}.message-credit-history{margin-top:16px}.message-ledger-list{display:grid;gap:8px;padding:14px}.message-ledger-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;border-bottom:1px solid var(--line);padding:10px 0}.message-ledger-row div{display:grid}.message-ledger-row small{color:var(--muted)}.message-ledger-row .positive{color:#159447;font-weight:900}.message-ledger-row .negative{color:#c0392b;font-weight:900}.pa-message-pack-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.pa-message-pack-admin{padding:14px;display:grid;gap:10px}.pa-span-2{grid-column:span 2}@media(max-width:980px){.message-credit-kpis,.message-pack-grid,.pa-message-pack-admin-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.message-credit-kpis,.message-pack-grid,.pa-message-pack-admin-grid{grid-template-columns:1fr}.message-credit-kpi strong{font-size:24px}.pa-span-2{grid-column:auto}}

/* === v79.css === */
.md79-head{align-items:flex-start}.md79-eyebrow{display:inline-block;margin-bottom:6px;color:#087d4d;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.md79-head h2{max-width:760px;margin-bottom:7px}.md79-head p{max-width:880px}.md79-period-card{margin-bottom:16px}.md79-period-form{display:flex;align-items:center;gap:12px;padding:15px 18px}.md79-period-form>div{display:grid;gap:3px;margin-right:auto}.md79-period-form small{color:var(--muted)}.md79-period-form select{width:auto;min-width:180px}.md79-portfolio-alert{display:flex;align-items:center;gap:14px;margin-bottom:16px;padding:13px 16px;border:1px solid #b9d2ff;border-left:5px solid #2563eb;border-radius:13px;background:#eff6ff;color:#17385e}.md79-portfolio-alert strong{white-space:nowrap}.md79-portfolio-alert span{font-size:12px;line-height:1.55}.md79-kpis{margin-bottom:18px}.md79-kpis .stat-card{min-height:105px}.md79-kpis .stat-card small{display:block;margin-top:6px;color:var(--muted);font-size:10px}.md79-kpis .stat-hot{border-color:#ffc8a8;background:#fff8f3}.md79-kpis .stat-hot strong,.md79-hot-value{color:#db4f16}.md79-kpis .stat-revenue{border-color:#b9e7ca;background:#f4fff8}.md79-kpis .stat-revenue strong{color:#087d4d}.md79-intent-card{margin-bottom:18px}.md79-intent-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;padding:0 18px 18px}.md79-intent-grid>div{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;padding:12px;border:1px solid #e1e9e5;border-radius:13px;background:#f8fbfa}.md79-intent-grid strong{font-size:21px;color:#163b2d}.md79-intent-grid small{grid-column:2;color:#75827c}.md79-intent-icon{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#e9f4ff;color:#1675df;font-size:17px;font-weight:900}.md79-top-grid{align-items:start;margin-bottom:18px}.md79-hot-list{display:grid;padding:0 18px 18px}.md79-hot-row{display:grid;grid-template-columns:42px minmax(160px,1.2fr) minmax(170px,1fr) 90px;align-items:center;gap:10px;padding:11px 0;border-bottom:1px dashed #dfe7e3;color:inherit;text-decoration:none}.md79-hot-row:last-child{border-bottom:0}.md79-hot-row:hover{background:#f8fbfa}.md79-score{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#edf1ef;color:#60716a;font-weight:900}.temp-hot .md79-score{background:#ffeadf;color:#d8490e}.temp-warm .md79-score{background:#fff3ce;color:#a56b00}.md79-hot-main,.md79-hot-meta{display:grid;gap:3px}.md79-hot-row small{color:var(--muted);font-size:10px}.md79-hot-money{text-align:right;color:#087d4d;font-weight:900}.md79-advice-list{display:grid;gap:10px;padding:0 18px 18px}.md79-advice{padding:12px 14px;border:1px solid #dfe7e3;border-left:4px solid #79a493;border-radius:12px;background:#fafcfb}.md79-advice>span{display:inline-block;margin-bottom:5px;color:#687a72;font-size:9px;font-weight:900;text-transform:uppercase}.md79-advice h4{margin:0 0 5px;font-size:14px;color:#163b2d}.md79-advice p{margin:0;color:#5f6f68;font-size:11px;line-height:1.55}.md79-advice.advice-high{border-left-color:#e05a24;background:#fff8f4}.md79-advice.advice-medium{border-left-color:#e3a100;background:#fffdf4}.md79-advice.advice-info{border-left-color:#287fdc;background:#f6faff}.md79-table-card{margin-bottom:18px}.md79-table td{vertical-align:top}.md79-table td strong{display:block}.md79-table td small{display:block;margin-top:4px;max-width:260px;color:var(--muted);font-size:10px;line-height:1.45}.md79-table td .badge{display:inline-block;margin-top:6px}.md79-rate{display:inline-block;margin-top:5px;padding:3px 7px;border-radius:8px;background:#edf7f1;color:#087d4d;font-size:10px;font-weight:900}.md79-decision{display:inline-block;padding:4px 8px;border-radius:8px;background:#eef4ff;color:#1759a9;font-size:10px;font-weight:900}.md79-pagination{display:flex;align-items:center;justify-content:center;gap:12px;padding:13px;border-top:1px solid #e5ece8;color:#65756d;font-size:11px}.md79-method-card{margin-bottom:18px}.md79-method-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:0 18px 12px}.md79-method-grid>div{display:grid;gap:5px;padding:12px;border-radius:12px;background:#f5f9f7}.md79-method-grid strong{font-size:12px;color:#163b2d}.md79-method-grid span{color:#6c7c74;font-size:10px;line-height:1.45}.md79-method-card>.help{padding:0 18px 18px;margin:0}
@media(max-width:1180px){.md79-intent-grid{grid-template-columns:repeat(3,1fr)}.md79-method-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:780px){.md79-period-form{align-items:stretch;flex-direction:column}.md79-period-form>div{margin-right:0}.md79-period-form select{width:100%}.md79-portfolio-alert{align-items:flex-start;flex-direction:column;gap:4px}.md79-intent-grid{grid-template-columns:repeat(2,1fr)}.md79-hot-row{grid-template-columns:40px 1fr 70px}.md79-hot-meta{grid-column:2}.md79-hot-money{grid-column:3;grid-row:1/3}.md79-method-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.md79-intent-grid,.md79-method-grid{grid-template-columns:1fr}.md79-hot-row{grid-template-columns:38px 1fr}.md79-hot-money{grid-column:2;grid-row:auto;text-align:left}.md79-pagination{flex-wrap:wrap}.md79-kpis{grid-template-columns:1fr 1fr!important}}

/* === v83.css === */
/* GestiConnect V83 — multicompte, cartes marketing et indicateurs responsive */
.md79-kpis{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important}
.md79-kpis .stat-card{display:grid;align-content:start;gap:5px;min-width:0;min-height:112px;padding:15px 16px;overflow:hidden}
.md79-kpis .stat-card>span,.md79-kpis .stat-card>strong,.md79-kpis .stat-card>small{display:block;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal}
.md79-kpis .stat-card>span{font-size:12px;line-height:1.25;font-weight:800;color:#23372f}
.md79-kpis .stat-card>strong{font-size:21px;line-height:1.05;letter-spacing:-.02em}
.md79-kpis .stat-card>small{margin-top:2px;font-size:10px;line-height:1.4}
.md83-map-card{margin-bottom:18px;overflow:hidden}
.md83-map-head{align-items:flex-start;gap:18px}
.md83-map-head>div:first-child{min-width:0;max-width:720px}
.md83-map-eyebrow{display:block;margin-bottom:5px;color:#14704b;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.md83-map-head h3{margin:0 0 5px;font-size:17px;line-height:1.25}
.md83-map-head p{margin:0;line-height:1.5}
.md83-map-totals{display:grid;grid-template-columns:repeat(4,minmax(88px,1fr));gap:8px;margin-left:auto;min-width:min(100%,430px)}
.md83-map-totals span{display:grid;gap:3px;padding:9px 10px;border:1px solid #dfe9e4;border-radius:11px;background:#f8fbfa;min-width:0}
.md83-map-totals small{font-size:9px;color:#697a72;white-space:normal;line-height:1.3}
.md83-map-totals strong{font-size:16px;color:#143b2d;overflow-wrap:anywhere}
.md83-map-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:16px;padding:0 18px 18px;align-items:stretch}
.md83-map-canvas{position:relative;min-width:0;min-height:430px;border:1px solid #dce8e2;border-radius:16px;background:radial-gradient(circle at 50% 45%,#fff 0,#f6faf8 70%,#edf5f1 100%);overflow:hidden}
.md83-zone-map{display:block;width:100%;height:100%;min-height:420px}
.md83-map-shape{fill:url(#md83-map-fill);stroke:#8db7a5;stroke-width:3;stroke-linejoin:round}
.md83-map-line{fill:none;stroke:#8ab1d2;stroke-width:8;stroke-linecap:round;opacity:.75}.md83-map-line.thin{stroke:#afc8bd;stroke-width:1.4;opacity:.68}
.md83-paris-core{fill:#fff4dc;stroke:#e6a733;stroke-width:2}.md83-core-label{font-size:12px;font-weight:900;fill:#7d5610}.md83-map-caption{font-size:10px;font-weight:800;fill:#667a71;text-anchor:middle}
.md83-map-point circle{stroke:#fff;stroke-width:3}.md83-map-point text{font-size:10px;font-weight:900;fill:#fff;pointer-events:none}.md83-map-point.point-low circle{fill:#4f91d7}.md83-map-point.point-medium circle{fill:#e2a21c}.md83-map-point.point-high circle{fill:#df5727}
.md83-map-legend{position:absolute;left:14px;bottom:12px;display:flex;flex-wrap:wrap;gap:8px;padding:7px 9px;border:1px solid #dde7e2;border-radius:10px;background:rgba(255,255,255,.9);font-size:9px;font-weight:800;color:#52645b}
.md83-map-legend span:before{content:"";display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:50%;vertical-align:-1px}.md83-map-legend .low:before{background:#4f91d7}.md83-map-legend .medium:before{background:#e2a21c}.md83-map-legend .high:before{background:#df5727}
.md83-zone-ranking{display:grid;align-content:start;gap:0;min-width:0;border:1px solid #dfe8e3;border-radius:16px;background:#fff;overflow:hidden}
.md83-zone-ranking-head{display:grid;gap:4px;padding:14px 15px;background:#f5faf7;border-bottom:1px solid #e0e9e4}.md83-zone-ranking-head strong{font-size:13px;color:#173d2f}.md83-zone-ranking-head small{font-size:10px;line-height:1.45;color:#687a71}
.md83-zone-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(150px,1fr) auto;gap:10px;align-items:center;padding:12px 14px;border-bottom:1px solid #edf1ef;min-width:0}.md83-zone-row:last-child{border-bottom:0}.md83-zone-row>div:first-child{min-width:0}.md83-zone-row>div:first-child strong{display:block;font-size:11px;line-height:1.35;color:#173d2f;overflow-wrap:anywhere}.md83-zone-row>div:first-child small{display:block;margin-top:3px;font-size:9px;color:#78877f;overflow-wrap:anywhere}
.md83-zone-metrics{display:grid;grid-template-columns:1fr 1fr;gap:3px 8px;min-width:0}.md83-zone-metrics span{font-size:9px;color:#6a7a72;white-space:nowrap}.md83-zone-metrics b{color:#253a31}.md83-zone-revenue{font-size:11px;color:#087d4d;white-space:nowrap}
.team-multicount{display:inline-flex;align-items:center;gap:5px;margin-top:5px;padding:3px 7px;border-radius:999px;background:#edf6f1;color:#176444;font-size:9px;font-weight:850}
.team-role-note{margin:0;padding:13px 15px;border:1px solid #bfd8ca;border-left:4px solid #26805b;border-radius:12px;background:#f3fbf6;color:#38584b;font-size:11px;line-height:1.55}
.team-member-actions{display:flex;flex-wrap:wrap;gap:7px;align-items:center}.team-member-actions form{margin:0}.team-remove-btn{color:#9b2c2c;border-color:#efcaca;background:#fff8f8}
.multi-account-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.multi-account-card{display:grid;gap:10px;padding:15px;border:1px solid #dfe8e3;border-radius:14px;background:#fff;min-width:0}.multi-account-card.active{border-color:#72a88e;background:#f4fbf7;box-shadow:0 8px 24px rgba(22,76,52,.08)}.multi-account-card strong{font-size:13px;overflow-wrap:anywhere}.multi-account-card small{color:#718078;font-size:10px}.multi-account-role{justify-self:start;padding:4px 8px;border-radius:999px;background:#edf3ff;color:#25599a;font-size:9px;font-weight:900}
@media(max-width:1360px){.md79-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}.md83-map-head{display:grid}.md83-map-totals{margin-left:0;width:100%}.md83-map-layout{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr)}}
@media(max-width:1040px){.md83-map-layout{grid-template-columns:1fr}.md83-map-canvas{min-height:390px}.multi-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.md79-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}.md79-kpis .stat-card{min-height:100px;padding:13px}.md79-kpis .stat-card>strong{font-size:19px}.md83-map-totals{grid-template-columns:1fr 1fr}.md83-map-layout{padding:0 12px 12px}.md83-map-canvas{min-height:330px}.md83-zone-map{min-height:330px}.md83-zone-row{grid-template-columns:1fr auto}.md83-zone-metrics{grid-column:1/3;grid-row:2}.multi-account-grid{grid-template-columns:1fr}}
@media(max-width:430px){.md79-kpis{grid-template-columns:1fr!important}.md79-kpis .stat-card{min-height:auto}.md83-map-totals{grid-template-columns:1fr 1fr}.md83-map-totals strong{font-size:14px}.md83-map-canvas{min-height:285px}.md83-zone-map{min-height:285px}.md83-map-legend{position:static;margin:0 10px 10px}.md83-zone-row{grid-template-columns:1fr}.md83-zone-metrics{grid-column:1;grid-row:auto}.md83-zone-revenue{justify-self:start}}

/* === v84.css === */
/* GestiConnect V84 */
.gc-preserved-form-notice,.gc-form-error-summary{display:grid;gap:4px;margin:0 0 16px;padding:13px 15px;border-radius:12px;line-height:1.4}
.gc-preserved-form-notice{border:1px solid #a9d6bd;border-left:4px solid #178153;background:#f1fbf5;color:#174c37}.gc-preserved-form-notice strong,.gc-form-error-summary strong{font-size:13px}.gc-preserved-form-notice span,.gc-form-error-summary span{font-size:11px}
.gc-form-error-summary{border:1px solid #efc0b7;border-left:4px solid #cf4029;background:#fff6f3;color:#7c291d}.gc-form-error-summary small{font-size:10px;color:#87594f}.gc-field-missing{border-color:#cf4029!important;box-shadow:0 0 0 3px rgba(207,64,41,.1)!important}
.gc-sales-assignment-card{border-color:#cee0d7;background:#f8fcfa}.gc-sales-assignment-card .card-body{padding-top:13px;padding-bottom:13px}
.gc-osm-map{height:470px;min-height:320px;width:100%;border:1px solid #dce8e2;border-radius:15px;overflow:hidden;background:#eef5f1}.gc-profile-map{height:390px}.gc-map-popup{display:grid;gap:5px;min-width:190px}.gc-map-popup>strong{font-size:13px;color:#153c2d}.gc-map-popup>small{display:block;margin-bottom:3px;color:#65766e}.gc-map-popup>div{display:flex;justify-content:space-between;gap:14px;font-size:10px}.gc-map-popup b{color:#173d2f}
.gc-map-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) minmax(120px,180px) auto;gap:10px;align-items:end;width:min(100%,760px)}.gc-map-toolbar .form-group{margin:0}.gc-map-toolbar label{font-size:10px}.gc-map-toolbar input,.gc-map-toolbar select{min-width:0}
.md84-map-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:16px;padding:0 18px 18px;align-items:start}.md84-map-side{min-width:0}.md84-map-side .md83-zone-row{grid-template-columns:minmax(0,1fr);gap:6px}.md84-map-side .md83-zone-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.md84-map-side .md83-zone-metrics span{white-space:normal;overflow-wrap:anywhere}.md83-map-head>*{min-width:0}.md83-map-head .gc-map-toolbar{margin-top:10px}
.md79-kpis .stat-card>span,.md79-kpis .stat-card>strong,.md79-kpis .stat-card>small,.md83-map-totals span,.md83-map-totals strong,.md83-map-totals small{overflow-wrap:anywhere;word-break:normal;white-space:normal;min-width:0}
.business-profile-map-card{margin-bottom:18px}.business-profile-map-list{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.business-profile-map-list span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:#eef5ff;color:#205895;font-size:9px;font-weight:800}
.gc-sales-label{display:inline-flex;align-items:center;gap:5px;margin-top:4px;padding:3px 7px;border-radius:999px;background:#eef5ff;color:#255b9b;font-size:9px;font-weight:800}
@media(max-width:1100px){.md84-map-layout{grid-template-columns:1fr}.gc-osm-map{height:420px}.gc-map-toolbar{grid-template-columns:1fr 140px auto}}
@media(max-width:720px){.gc-osm-map{height:360px}.gc-profile-map{height:330px}.gc-map-toolbar{grid-template-columns:1fr 1fr}.gc-map-toolbar .btn{grid-column:1/3;width:100%}.md84-map-layout{padding:0 12px 12px}.md83-map-head{display:grid!important}.md83-map-totals{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%;min-width:0}.md79-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:430px){.gc-osm-map{height:310px}.gc-map-toolbar{grid-template-columns:1fr}.gc-map-toolbar .btn{grid-column:1}.md79-kpis{grid-template-columns:1fr!important}.md83-map-totals{grid-template-columns:1fr 1fr!important}}
.gc-map-unavailable{display:grid;place-items:center;padding:24px}.gc-map-unavailable>div{display:grid;gap:6px;max-width:430px;padding:18px;border:1px solid #d3e2da;border-radius:13px;background:#fff;text-align:center;color:#24483a}.gc-map-unavailable strong{font-size:14px}.gc-map-unavailable span{font-size:11px;color:#66786f}
.gc-conversion-matches{margin-top:20px;border-color:#bcdcca;background:#fbfefc}.gc-conversion-matches-head{align-items:flex-start}.gc-conversion-kicker{display:inline-flex;margin-bottom:5px;padding:4px 8px;border-radius:999px;background:#e4f7ec;color:#17633e;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.gc-conversion-match-list{display:grid;gap:16px;padding:0 18px 18px}.gc-conversion-match{display:grid;gap:15px;padding:17px;border:1px solid #d9e8df;border-left:5px solid #45966c;border-radius:14px;background:#fff}.gc-conversion-match.match-panel-review{border-left-color:#d79a28}.gc-conversion-match.match-panel-confirmed{border-left-color:#146ef5}.gc-conversion-match-title{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.gc-conversion-match-title h3{margin:8px 0 3px;font-size:17px}.gc-conversion-match-title p{margin:0;color:#68776f;font-size:10px}.gc-conversion-match-score{display:grid;justify-items:end;min-width:145px}.gc-conversion-match-score strong{font-size:27px;line-height:1;color:#174c37}.gc-conversion-match-score span{margin-top:5px;font-size:10px;font-weight:900}.gc-conversion-match-score small{margin-top:2px;color:#718078;font-size:9px}.gc-conversion-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.gc-conversion-detail-grid>section{min-width:0;padding:13px;border:1px solid #e1ebe5;border-radius:11px;background:#f8fcfa}.gc-conversion-detail-grid h4{margin:0 0 10px;color:#174c37;font-size:12px}.gc-conversion-detail-grid .detail-list{grid-template-columns:minmax(100px,.75fr) minmax(0,1.25fr);font-size:9px}.gc-conversion-detail-grid dd{overflow-wrap:anywhere}.gc-conversion-match-reasons{padding:13px;border-radius:11px;background:#f4faf6}.gc-conversion-match-reasons>strong{font-size:11px;color:#174c37}.gc-conversion-match-reasons .reason-list{margin-bottom:0}.gc-conversion-linked-records{margin:0}.gc-conversion-raw{border-top:1px solid #e2ece6;padding-top:10px}.gc-conversion-raw summary{cursor:pointer;font-size:10px;font-weight:800;color:#456457}.gc-conversion-raw .raw-json{max-height:260px;margin-top:9px;overflow:auto}.gc-conversion-match-actions{justify-content:flex-end}
@media(max-width:980px){.gc-conversion-detail-grid{grid-template-columns:1fr 1fr}.gc-conversion-detail-grid>section:last-child{grid-column:1/3}}
@media(max-width:720px){.gc-conversion-match-title{display:grid}.gc-conversion-match-score{justify-items:start}.gc-conversion-detail-grid{grid-template-columns:1fr}.gc-conversion-detail-grid>section:last-child{grid-column:auto}.gc-conversion-match-list{padding:0 12px 12px}.gc-conversion-match{padding:13px}.gc-conversion-linked-records{grid-template-columns:1fr!important}}
.gc-ads-nav{display:flex;flex-wrap:wrap;gap:10px}.gc-ads-nav a{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border:1px solid #d0ddd6;border-radius:999px;background:#fff;color:#173d2f;font-weight:700;text-decoration:none}.gc-ads-nav a.active,.gc-ads-nav a:hover{background:#eef7f2;border-color:#7ab493;color:#0d3325}@media(max-width:780px){.gc-ads-nav a{flex:1 1 160px}}

/* === v89.css === */
.oauth89-intro .pa-card-body{border-top:1px solid #e3e9ef}.oauth89-note{color:#35465b;line-height:1.65}.oauth89-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.oauth89-status-card{display:grid;gap:10px;padding:16px;border:1px solid #dbe4ec;border-radius:16px;background:#fff}.oauth89-status-card.ready{border-color:#b7dfca;background:#f7fcf9}.oauth89-status-card.missing{border-color:#f0d89c;background:#fffdf6}.oauth89-status-card>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.oauth89-status-card label{font-size:11px;font-weight:800;color:#5f6e80}.oauth89-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.oauth89-copy input{min-width:0;background:#f6f8fb;font-size:12px}.oauth89-form{display:grid;gap:16px;margin-top:16px}.oauth89-group{overflow:hidden}.oauth89-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.oauth89-field{display:grid;gap:7px}.oauth89-field>span{font-size:12px;font-weight:850;color:#20334a}.oauth89-field small{font-size:10px;color:#6d7b8d}.oauth89-savebar{position:sticky;bottom:12px;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #cfdbe6;border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 14px 34px rgba(27,48,70,.12);backdrop-filter:blur(8px)}.oauth89-savebar span{font-size:12px;color:#5f6e80}.gc-oauth-not-ready{border-left:5px solid #e4a21a}.ff-authorization-actions .text-muted{max-width:720px}.connection-status.status-error{background:#fff0f0;color:#9f2424}.connection-status.status-assistance_requested{background:#fff8e8;color:#8a5a00}@media(max-width:900px){.oauth89-status-grid,.oauth89-fields{grid-template-columns:1fr}.oauth89-savebar{align-items:stretch;flex-direction:column}.oauth89-savebar .pa-btn{width:100%}}

/* === v85.css === */
/* GestiConnect V85 - Connecteurs de facturation electronique */
.gc-einvoice-head{align-items:flex-start}.gc-einvoice-kicker{display:inline-flex;margin-bottom:6px;padding:5px 9px;border-radius:999px;background:#eaf7f0;color:#17613e;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.gc-einvoice-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.gc-einvoice-summary article{display:grid;gap:5px;min-width:0;padding:15px;border:1px solid #d9e7df;border-radius:15px;background:#fff}.gc-einvoice-summary span{font-size:9px;font-weight:900;text-transform:uppercase;color:#64776e}.gc-einvoice-summary strong{font-size:17px;color:#173d2f;overflow-wrap:anywhere}.gc-einvoice-summary small{color:#6d7d75;font-size:10px;overflow-wrap:anywhere}.gc-einvoice-provider-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:0 18px 18px}.gc-einvoice-provider-card{display:grid;gap:9px;padding:15px;border:1px solid #dce8e1;border-radius:14px;background:#fff}.gc-einvoice-provider-card.is-selected{border-color:#4f9f75;box-shadow:0 0 0 3px rgba(42,137,87,.08)}.gc-einvoice-provider-card.is-disabled{background:#f7f8f8;opacity:.78}.gc-einvoice-provider-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.gc-einvoice-provider-title strong{font-size:14px;color:#153d2e}.gc-einvoice-provider-card p{margin:0;font-size:10px;color:#63756c}.gc-einvoice-provider-card>small{font-size:9px;color:#77857f}.gc-einvoice-capabilities{display:flex;flex-wrap:wrap;gap:5px}.gc-einvoice-capabilities span{padding:4px 7px;border-radius:999px;background:#eef5f1;font-size:8px;font-weight:800;color:#39614f}.gc-einvoice-layout{align-items:start}.gc-einvoice-form small{display:block;margin-top:5px}.gc-env-state{color:#a65436!important;font-weight:800}.gc-env-state.is-ready{color:#167647!important}.gc-einvoice-checks{display:grid;grid-template-columns:1fr 1fr;gap:9px}.gc-einvoice-checks label{display:flex;align-items:flex-start;gap:9px;padding:11px;border:1px solid #dce7e1;border-radius:11px;background:#fafcfb}.gc-einvoice-checks input{margin-top:3px}.gc-einvoice-checks span{display:grid;gap:3px}.gc-einvoice-checks strong{font-size:11px;color:#173d2f}.gc-einvoice-checks small{margin:0!important;font-size:9px;color:#6c7b74}.gc-einvoice-side-stack{display:grid;gap:16px}.gc-einvoice-scopes{display:flex;flex-wrap:wrap;gap:7px}.gc-einvoice-scopes code{padding:6px 8px;border-radius:8px;background:#eef5ff;color:#275c9e}.gc-platform-einvoice-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.gc-platform-provider-list{display:grid;gap:16px;margin-top:18px}.gc-platform-provider-card{overflow:hidden}.gc-platform-provider-form{padding:18px}.gc-platform-provider-form .full{grid-column:1/-1}.gc-platform-provider-meta{display:grid;gap:5px;padding:11px;border-radius:10px;background:#f4f7fa;font-size:11px;color:#56646c}.gc-platform-provider-card .pa-card-head>strong{font-size:17px;white-space:nowrap}
@media(max-width:1100px){.gc-einvoice-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.gc-einvoice-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.gc-einvoice-summary,.gc-einvoice-provider-grid,.gc-einvoice-checks{grid-template-columns:1fr}.gc-einvoice-provider-grid{padding:0 12px 12px}.gc-platform-einvoice-kpis{grid-template-columns:1fr}.gc-platform-provider-form{grid-template-columns:1fr!important}.gc-platform-provider-form>*{grid-column:1!important}}
.gc-einvoice-pricing-grid{grid-template-columns:repeat(4,minmax(0,1fr));padding:18px}.gc-einvoice-pricing-card{display:grid;gap:10px;min-width:0;padding:14px;border:1px solid #dce7e1;border-radius:14px;background:#fafcfb}.gc-einvoice-pricing-card legend{padding:0 5px;font-weight:900;color:#173d2f}.gc-einvoice-pricing-card label{display:grid;gap:5px;font-size:11px;font-weight:800;color:#344f43}.gc-einvoice-pricing-card small{font-size:9px;color:#718078}@media(max-width:1100px){.gc-einvoice-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.gc-einvoice-pricing-grid{grid-template-columns:1fr}}
