
/* 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}}
