@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
button:disabled,input:disabled,select:disabled,textarea:disabled{opacity:.6;cursor:wait}.working{padding:8px 24px;color:#41705a;font-size:13px}.working::before{content:'●';margin-right:8px;animation:pulse 1s infinite alternate}@keyframes pulse{to{opacity:.25}}.required{margin:0 22px 14px;padding:10px;background:#f4f0df;color:#77682d;font-size:12px;border-radius:6px}.connection-note{padding:10px 22px 0;color:#789084;font-size:11px;line-height:1.6}.connection-note p{font-size:12px}.text-button{display:block;padding:5px 0;background:none;border:0;color:#216148;font-size:11px}.connection-note summary{cursor:pointer;color:#216148}.message.error{background:#fff1e9;color:#8b4b29}.print-options{display:none}#toast.visible{display:block!important}@media print{.print-options{display:block}.connection-note,.working{display:none!important}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
:root{font-family:'DM Sans',sans-serif;color:#203d35;background:#f5f7f4;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a,input,select,textarea{outline-offset:4px}button{transition:background .18s,transform .18s}button:hover{filter:brightness(.96)}.sidebar{position:fixed;inset:0 auto 0 0;width:240px;background:#102e27;color:#d5e5dd;padding:36px 20px;display:flex;flex-direction:column}.brand{font:800 38px Manrope,sans-serif;color:white;text-decoration:none;display:flex;gap:12px;align-items:center;padding-left:14px}.brand-dot{color:#b3d5a7}.workspace{font-size:11px;letter-spacing:1.7px;color:#82a294;margin:55px 14px 17px}.nav{border:0;text-align:left;background:none;color:#a9c1b7;padding:15px 12px;border-radius:7px;font-size:14px;margin-bottom:8px}.nav.active{background:#254a3e;color:#fff}.nav span{float:right;background:#3a5c50;padding:0 6px;border-radius:4px}.sidebar-bottom{margin-top:auto;display:flex;align-items:center;gap:10px;padding:20px 0 0;border-top:1px solid #355047;font-size:14px}.avatar{background:#cadbb1;color:#254435;padding:11px;border-radius:50%;font-size:12px;font-weight:bold}small{display:block;font-size:11px;color:#91afa1;margin-top:5px}main{margin-left:240px;padding:0 42px;max-width:1800px}header{height:85px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e0e7df;font-size:12px}.breadcrumb{color:#668076}.breadcrumb span{margin:0 12px;color:#a4b4ac}.demo-badge{background:#eaf0df;color:#5b7135;border:1px solid #dfe7cd;border-radius:30px;padding:7px 12px}.heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:36px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#72917d}h1{font:700 clamp(24px,2.4vw,35px) Manrope,sans-serif;letter-spacing:-1.1px;margin:10px 0}p{color:#789084;font-size:14px;line-height:1.6}.secondary{background:#fff;border:1px solid #d7e1d8;border-radius:7px;padding:11px 16px;font-size:13px;color:#365446;white-space:nowrap}.notice{background:#edf1e8;color:#68795b;padding:12px 16px;font-size:12px;border-radius:6px;margin:16px 0 24px}.work-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:24px}.panel{background:#fff;border:1px solid #dfe6df;border-radius:12px;overflow:hidden}.panel-head{padding:20px 22px;border-bottom:1px solid #eef1ed;display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:14px}.assistant-icon{display:inline-flex;background:#e6efe6;color:#35634b;border-radius:8px;width:30px;height:30px;align-items:center;justify-content:center;margin-right:8px}.live{font-size:10px;color:#7c9082;font-weight:400}.messages{height:330px;overflow:auto;padding:24px 24px 8px;scroll-behavior:smooth}.message{font-size:14px;line-height:1.65;white-space:pre-wrap;background:#f2f5ef;border-radius:0 12px 12px 12px;padding:16px 18px;margin:0 28px 18px 0;color:#486051}.message.user{background:#1f5847;color:white;margin-left:45px;margin-right:0;border-radius:12px 0 12px 12px}.message-label{font-size:10px;letter-spacing:1px;display:block;font-weight:700;margin-bottom:7px;color:#79937d}.message.user .message-label{color:#bddaca}.suggestions{display:flex;gap:6px;padding:8px 20px;flex-wrap:wrap}.suggestions button{border:1px solid #dce6da;background:white;border-radius:20px;font-size:11px;color:#667d67;padding:8px 10px}.composer{margin:10px 20px 0;border:1px solid #ccdacc;border-radius:9px;display:flex;align-items:center;padding:10px;gap:8px}.composer:focus-within{border-color:#467e62;box-shadow:0 0 0 2px #eff5ed}textarea{border:0;resize:none;flex:1;min-width:0;padding:4px;color:#354f41;background:none;font-size:13px;outline:0}.send{border:0;background:#24634b;color:white;border-radius:7px;padding:7px 13px;font-size:24px}.composer-note{font-size:10px;color:#8b9b8e;margin:10px 22px 20px}.car-visual{text-align:center;background:linear-gradient(#fafcf7,#fff);padding:15px 20px 17px}.car-visual svg{width:205px;height:83px}.car-visual h2{font:700 20px Manrope,sans-serif;margin:7px 0}.car-visual span{color:#7a8d7e;font-size:12px}#progress{font-size:11px;color:#74917e;background:#edf3e9;padding:4px 9px;border-radius:20px}#vehicleForm{padding:4px 22px 0}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{font-size:11px;color:#69816e}input,select{display:block;width:100%;min-width:0;border:1px solid #dae4d8;background:#fff;padding:10px;border-radius:6px;margin-top:6px;font-size:13px;color:#354f3e}.primary{border:0;border-radius:7px;background:#216148;color:white;padding:13px 17px;font-size:13px;font-weight:600}.full{width:100%;margin-top:20px;display:flex;justify-content:space-between}.source-note{font-size:10px;line-height:1.7;color:#8c9a8b;padding:15px 22px 18px}footer{display:flex;justify-content:space-between;margin:25px 0;font-size:9px;letter-spacing:1px;color:#8b9b8c}footer span{letter-spacing:0}.result-header{display:flex;justify-content:space-between;align-items:center;margin:28px 0 18px;gap:15px}.result-header h2{font:700 25px Manrope;margin:0}.result-header p{margin:6px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.plan{background:#fff;border:1px solid #dce6d9;border-radius:10px;padding:23px;position:relative}.plan.recommended{border:2px solid #357151;background:#fafff6}.plan-tag{font-size:10px;letter-spacing:1px;color:#64806a;font-weight:bold}.plan h3{font:700 21px Manrope;margin:13px 0}.price{font:800 33px Manrope;letter-spacing:-1px}.price small{display:inline;font:12px 'DM Sans';color:#7d8d7e;margin-left:5px}.plan ul{list-style:none;padding:0;font-size:13px;line-height:2;color:#59705e}.plan li::before{content:'✓';color:#67925d;margin-right:8px}.plan .secondary{width:100%}.plan .primary{width:100%}.exclusion{font-size:11px;line-height:1.6;color:#80917c}.selection{padding:25px;background:white;margin-top:20px;border:1px solid #dce6d9;border-radius:10px}.selection h3{margin-top:0}.selection label{display:block;margin:14px 0;font-size:14px}.selection input{display:inline;width:auto;margin-right:8px}.total{border-top:1px solid #e2e8de;padding-top:15px;font-weight:700;font-size:21px}.actions{display:flex;gap:10px;margin-top:20px}.history{padding:25px}.case-row{padding:20px 0;border-bottom:1px solid #e1e9df;display:flex;align-items:center;justify-content:space-between;gap:15px}.case-row strong{display:block}.case-row p{margin:5px 0}.empty{padding:35px;text-align:center;color:#799078}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#173f30;color:#fff;padding:14px 22px;border-radius:9px;display:none;z-index:10}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(min-width:1500px){.messages{height:365px}}@media(max-width:1100px){.sidebar{width:195px;padding:28px 12px}main{margin-left:195px;padding:0 24px}.work-grid{grid-template-columns:minmax(0,1.2fr) minmax(285px,1fr)}.live{display:none}.heading{align-items:flex-start}.cards{gap:10px}.plan{padding:16px}}@media(max-width:800px){.sidebar{position:static;width:auto;padding:14px 20px;flex-direction:row;align-items:center;gap:12px}.brand{font-size:27px;padding:0}.workspace,.sidebar-bottom{display:none}.nav{font-size:11px;margin:0;padding:10px}.nav span{margin-left:5px}main{margin:0;padding:0 18px}header{height:60px}.breadcrumb{display:none}header{justify-content:flex-end}.heading{padding-top:23px;flex-wrap:wrap}h1{font-size:26px}.work-grid{grid-template-columns:1fr}.messages{height:290px}.cards{grid-template-columns:1fr}.notice{line-height:1.6}.result-header{flex-wrap:wrap}footer span{display:none}}@media print{.sidebar,header,.heading,.notice,.work-grid,.result-header,.cards,.actions,footer,#toast,.selection label{display:none!important}main{margin:0;padding:20px}#results,.selection{display:block!important}.selection{border:0}.selection:before{content:'GA — PROPOSITION DE DÉMONSTRATION';display:block;margin-bottom:25px;font-weight:bold}}

/* — Administration & multi-utilisateurs — */
a.nav{text-decoration:none;display:block}
.logout-link{color:#91afa1;font-size:11px}
.panel h2{font:700 18px Manrope;margin:0;padding:20px 22px 0}
.form-panel{padding-bottom:22px;margin-bottom:22px}
.admin-form{padding:14px 22px 0}
.admin-form label{display:block;font-size:11px;color:#69816e;margin-bottom:12px}
.admin-form .primary{margin-top:6px}
.admin-form .secondary{margin-left:8px}
.admin-table{width:100%;border-collapse:collapse;font-size:13px}
.admin-table th{text-align:left;font-size:10px;letter-spacing:1px;color:#7d9384;padding:14px 16px;border-bottom:1px solid #eef1ed;text-transform:uppercase}
.admin-table td{padding:13px 16px;border-bottom:1px solid #f0f4ee;color:#486051;vertical-align:middle}
.admin-table tr:last-child td{border-bottom:0}
.admin-table select{display:inline-block;width:auto;padding:6px 8px;margin:0;font-size:12px}
.badge{display:inline-block;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:600}
.badge.ok{background:#e6f2e2;color:#357151}
.badge.off{background:#f6ece2;color:#8b4b29}
.actions form.inline{display:inline}
form.inline{display:inline}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:8px 0 24px}
.stat-card{background:#fff;border:1px solid #dfe6df;border-radius:12px;padding:22px}
.stat-value{font:800 32px Manrope;color:#203d35}
.stat-label{font-size:11px;letter-spacing:1px;color:#7d9384;text-transform:uppercase;margin-top:6px}
.provider-tabs{display:flex;gap:8px;margin:0 0 20px}
.provider-tab{background:#fff;border:1px solid #d7e1d8;border-radius:20px;padding:8px 16px;font-size:12px;color:#365446;text-decoration:none}
.provider-tab.active{background:#216148;color:#fff;border-color:#216148}
.field-status{display:flex;flex-wrap:wrap;gap:6px;padding:0 22px 10px}
.field-chip{font-size:10px;padding:4px 9px;border-radius:20px;font-weight:600}
.field-chip.ok{background:#e6f2e2;color:#357151}
.field-chip.missing{background:#fdf0e2;color:#8b5a1e}
.customer-field{font-size:12px;display:flex;align-items:center;gap:8px}
.customer-field input{width:200px;display:inline-block;margin:0;padding:9px}
.cell-text{max-width:280px}
.panel .admin-table{display:block;overflow-x:auto}
.panel .admin-table tbody,.panel .admin-table thead{display:table;width:100%}
@media(max-width:800px){.admin-table{font-size:12px}.cell-text{max-width:140px}.stats-grid{grid-template-columns:1fr 1fr}}

/* Défilement de la sidebar quand le menu dépasse la hauteur d'écran */
.sidebar{overflow-y:auto;scrollbar-width:thin}
.stats-filter{margin:18px 0}
.filter-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:18px 22px}
.filter-form label{min-width:145px;margin:0}
.filter-form .primary{margin:0 0 1px}
.stats-period{font-size:12px;color:#789084;margin:-7px 0 12px}
.sales-pitch{margin:20px 0;padding:18px;background:#f3f8ef;border-left:4px solid #60905f;border-radius:7px}
.sales-pitch p{color:#405e4b}.sales-pitch summary{cursor:pointer;color:#216148;font-size:12px}.sales-pitch li{margin:7px 0;font-size:12px;color:#607665}
.account-panel{max-width:620px}.login-error{background:#fff1e9;color:#8b4b29;padding:12px 16px;border-radius:6px;margin:16px 0;font-size:13px}
.customer-grid,.quote-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.quote-columns{grid-template-columns:1fr 1fr;border-bottom:1px solid #e2e8de;padding-bottom:18px}.quote-document{padding:30px;margin:20px 0}.quote-document-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #216148;padding-bottom:20px;margin-bottom:25px}.print-brand{color:#1c5441;padding:0}.quote-totals{margin:25px 0 20px auto;max-width:380px}.quote-totals p{display:flex;justify-content:space-between;margin:7px 0}.quote-totals div{display:flex;justify-content:space-between;border-top:2px solid #216148;padding-top:12px;font-size:22px}.history-list{padding:18px 22px}.history-list>div{padding:10px 0;border-bottom:1px solid #eef1ed;font-size:13px}.search-bar{display:flex;gap:10px;margin:18px 0}.search-bar input{margin:0}.client-layout{display:grid;grid-template-columns:minmax(360px,1.2fr) 1fr;gap:20px;margin-bottom:20px}
@media print{.no-print{display:none!important}.quote-document{border:0;margin:0;padding:0}}
@media(max-width:800px){.filter-form label{width:100%}.filter-form .primary{width:100%}.selection .actions{flex-direction:column}.customer-field{display:block}.customer-field input{width:100%;margin-top:6px}.customer-grid,.quote-columns,.client-layout{grid-template-columns:1fr}}
