/* Matériels : même langage visuel pour stock, ventes et formulaires. */
.equipment-stock,.equipment-editor,.equipment-payment { max-width:1100px; margin-inline:auto; color:var(--text,#233047); }
.equipment-stock *, .equipment-editor * { box-sizing:border-box; }
.equipment-eyebrow { color:var(--primary,#2563eb); font-size:.7rem; font-weight:800; letter-spacing:.09em; }
.equipment-muted { color:var(--text-secondary,#64748b); font-size:.85rem; }
.equipment-heading { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1rem; margin:0 0 1.25rem; padding:1.5rem; border:1px solid var(--border,#dce4ed); border-radius:18px; background:linear-gradient(115deg,var(--bg-secondary,#f0f5ff),var(--surface,#fff)); }
#modal .equipment-heading h3,#modal .equipment-form-heading h3 { margin:.4rem 0 0; padding:0; border:0; font-size:1.65rem; line-height:1.25; letter-spacing:-.025em; }
.equipment-heading p,.equipment-form-heading p { margin:.5rem 0 0; color:var(--text-secondary,#64748b); font-size:.9rem; }
.equipment-heading-status { display:inline-flex; gap:.5rem; align-items:center; font-size:.8rem; font-weight:600; color:var(--text-secondary,#64748b); }
.equipment-heading-status i { width:7px; height:7px; border-radius:50%; background:var(--primary,#2563eb); }
.equipment-dashboard { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.85rem; }
.equipment-dashboard > div { display:flex; flex-direction:column; gap:.6rem; padding:1.25rem; border:1px solid var(--border,#dce4ed); border-radius:16px; background:var(--surface,#fff); }
.equipment-dashboard span { font-size:.85rem; color:var(--text-secondary,#64748b); }
.equipment-dashboard strong { font-size:2.1rem; font-weight:750; line-height:1.15; letter-spacing:-.035em; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.equipment-dashboard small { font-size:.75rem; color:var(--text-secondary,#64748b); }
.equipment-dashboard .equipment-dashboard-available { background:var(--primary,#2563eb); color:#fff; border-color:transparent; }
.equipment-dashboard-available span,.equipment-dashboard-available small { color:#e2ebff; }
.equipment-dashboard .has-alerts { background:#fff8eb; border-color:#f5dfb8; color:#92510d; }
.equipment-dashboard .has-alerts span,.equipment-dashboard .has-alerts small { color:inherit; }
.equipment-tabs { display:flex; gap:.35rem; overflow:auto; margin:1.5rem 0 2rem; padding:.35rem; border:1px solid var(--border,#e2e8f0); border-radius:12px; background:var(--bg-secondary,#f3f6fb); }
.equipment-tabs .btn { flex:1 0 auto; gap:.6rem; min-height:46px; border:0; border-radius:9px; background:transparent; color:var(--text-secondary,#64748b); box-shadow:none; justify-content:center; white-space:nowrap; }
.equipment-tabs .btn-primary { background:var(--surface,#fff); color:var(--primary,#2563eb); box-shadow:0 2px 7px #172b4d0b; }
.equipment-tabs b { font-weight:inherit; }
.equipment-tabs .equipment-tab-short { display:none; }
.equipment-tabs .btn > span { display:grid; place-items:center; min-width:24px; height:24px; padding:0 .4rem; border-radius:6px; font-size:.72rem; background:var(--bg-secondary,#eef3fb); color:var(--text-secondary,#64748b); }
.equipment-tabs .btn-primary > span { color:var(--primary,#2563eb); background:#edf3ff; }
.equipment-section { margin-top:1.75rem; }
.equipment-section-heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; flex-wrap:wrap; margin-bottom:1.1rem; }
#modal .equipment-section-heading h4 { margin:0; font-size:1.2rem; letter-spacing:-.02em; }
.equipment-section-heading p { margin:.35rem 0 0; color:var(--text-secondary,#64748b); font-size:.85rem; line-height:1.5; }
.equipment-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:.6rem; margin:1rem 0; }
.equipment-section-heading .equipment-toolbar { margin:0; }
.equipment-stock .btn,[data-equipment-stock-form] .btn { min-height:44px; justify-content:center; }
.equipment-sale-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.75rem; }
.equipment-step { display:flex; align-items:center; gap:.8rem; padding:1rem; border:1px solid var(--border,#dce4ed); border-radius:14px; background:var(--surface,#fff); color:var(--text,#233047); font:inherit; font-size:.8rem; text-align:left; cursor:pointer; transition:border-color .12s,background .12s; }
.equipment-step > span:last-child { min-width:0; }
.equipment-step strong { display:block; margin-top:.3rem; font-size:1.65rem; line-height:1.1; }
.equipment-step-number { display:grid; place-items:center; flex:0 0 32px; height:32px; background:var(--bg-secondary,#f1f5fa); border-radius:10px; color:var(--text-secondary,#64748b); font-weight:700; }
.equipment-step:hover { background:var(--bg-secondary,#f5f8ff); border-color:var(--primary,#2563eb); }
.equipment-step.is-selected { background:#edf3ff; border-color:var(--primary,#2563eb); color:var(--primary,#2563eb); }
.equipment-step.is-selected .equipment-step-number { background:var(--primary,#2563eb); color:#fff; }
.equipment-models { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; align-items:stretch; }
.equipment-card { min-width:0; margin:0; padding:1.3rem; border:1px solid var(--border,#dce4ed); border-radius:17px; background:var(--surface,#fff); box-shadow:0 3px 12px #172b4d04; overflow-wrap:anywhere; }
.equipment-card header { display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:.75rem; }
.equipment-card h4 { margin:0; font-size:1.1rem; line-height:1.4; }
.equipment-model-card { display:flex; flex-direction:column; }
.equipment-model-identity { display:flex; flex:1 1 200px; align-items:center; gap:.8rem; min-width:0; }
.equipment-model-identity > div { min-width:0; }
.equipment-model-index { display:block; margin-bottom:.3rem; font-size:.65rem; font-weight:700; letter-spacing:.08em; color:var(--text-secondary,#64748b); }
.equipment-model-identity .equipment-muted { display:block; margin-top:.25rem; font-size:.75rem; }
.equipment-model-thumb { width:62px; height:62px; flex:0 0 62px; object-fit:cover; border-radius:10px; background:var(--bg-secondary,#f3f6fb); }
.equipment-badge { display:inline-flex; align-items:center; align-self:flex-start; width:fit-content; padding:.3rem .6rem; border-radius:7px; font-size:.72rem; font-weight:700; line-height:1.4; }
.equipment-badge.is-ok { color:#126b43; background:#e9f7ef; }
.equipment-badge.is-warning,.equipment-notice.is-warning { color:#915107; background:#fff4dc; }
.equipment-badge.is-danger,.equipment-notice.is-danger { color:#ad2933; background:#fff0f1; }
.equipment-badge.is-neutral { color:var(--primary,#2563eb); background:var(--bg-secondary,#eff4fc); }
.equipment-availability { display:flex; align-items:center; gap:1rem; padding:1.4rem 0 1.1rem; }
.equipment-availability > strong { font-size:2.8rem; line-height:1; letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
.equipment-availability span { font-size:.9rem; }
.equipment-availability small { display:block; margin-top:.25rem; color:var(--text-secondary,#64748b); font-size:.75rem; }
.equipment-availability.is-warning > strong { color:#a76008; }
.equipment-availability.is-danger > strong { color:#bd3541; }
.equipment-stock-breakdown { display:flex; gap:1rem; padding:.8rem 1rem; border-radius:10px; background:var(--bg-secondary,#f4f7fb); font-size:.8rem; }
.equipment-stock-breakdown span { flex:1; display:flex; justify-content:space-between; gap:.5rem; }
.equipment-model-prices { display:flex; flex-direction:column; gap:.3rem; padding:1.15rem 0; }
.equipment-model-prices > span,.equipment-model-prices > small { font-size:.8rem; color:var(--text-secondary,#64748b); }
.equipment-model-prices > strong { font-size:1.45rem; font-weight:750; }
.equipment-purchase { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:.6rem; padding:.65rem .8rem; background:var(--bg-secondary,#f6f8fb); border-radius:10px; font-size:.75rem; }
.equipment-purchase b { display:block; margin-top:.2rem; }
.equipment-purchase .btn { background:var(--surface,#fff); }
.equipment-model-card > .equipment-toolbar .btn { flex:1; }
.equipment-model-card > .equipment-toolbar { margin-top:auto; padding-top:1rem; }
.equipment-model-details { margin-top:0; }
.equipment-stock details { border-top:1px solid var(--border,#e2e8f0); font-size:.85rem; }
.equipment-stock summary,.equipment-purchase-editor summary { cursor:pointer; padding:.8rem 0; min-height:44px; font-weight:600; }
.equipment-stock summary::marker { color:var(--primary,#2563eb); }
.equipment-stock .equipment-model-details .card-info { border:0; padding:.25rem 0; background:transparent; }
.equipment-stock details p { line-height:1.55; }
.equipment-filters { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,260px) auto; align-items:end; gap:1rem; padding:1rem; margin:1.25rem 0 .5rem; background:var(--bg-secondary,#f4f7fb); border-radius:12px; }
.equipment-filters label { min-width:0; font-size:.8rem; font-weight:600; }
.equipment-filters .form-input,.equipment-filters .form-select { display:block; margin-top:.4rem; min-height:46px; background:var(--surface,#fff); }
.equipment-filters > span { white-space:nowrap; padding-bottom:.9rem; font-size:.75rem; }
[data-equipment-order-scope] { margin:.5rem 0 1.25rem; }
.equipment-sale-list { display:grid; gap:1.25rem; }
.equipment-sale-card > header h4 { margin-top:.35rem; font-size:1.2rem; }
.equipment-sale-progress { display:grid; grid-template-columns:repeat(4,1fr); list-style:none; padding:0; margin:1.2rem 0; gap:.4rem; }
.equipment-sale-progress li { padding-top:.5rem; border-top:3px solid var(--border,#e2e8f0); font-size:.75rem; color:var(--text-secondary,#64748b); }
.equipment-sale-progress .is-done { border-color:#9dbbf5; }
.equipment-sale-progress .is-current { border-color:var(--primary,#2563eb); color:var(--primary,#2563eb); font-weight:700; }
.equipment-sale-body { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(220px,1fr); gap:1.25rem; align-items:start; }
.equipment-sale-card .equipment-sale-lines { list-style:none; padding:0; margin:0; }
.equipment-sale-lines li { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.4rem 1rem; padding:.85rem 0; border-bottom:1px solid var(--border,#e2e8f0); font-size:.85rem; }
.equipment-sale-lines li small { width:100%; color:var(--text-secondary,#64748b); }
.equipment-sale-amounts { display:grid; gap:.85rem; border-radius:12px; background:var(--bg-secondary,#f4f7fb); padding:1.15rem; }
.equipment-sale-amounts > div { display:flex; justify-content:space-between; gap:1rem; }
.equipment-sale-amounts span { color:var(--text-secondary,#64748b); font-size:.8rem; }
.equipment-sale-amounts strong { font-size:.95rem; text-align:right; font-variant-numeric:tabular-nums; }
.equipment-sale-amounts > div:first-child strong { color:var(--primary,#2563eb); font-size:1.2rem; }
.equipment-sale-footer { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,1fr); align-items:center; gap:1rem; margin-top:1.25rem; }
.equipment-sale-footer > .equipment-toolbar { margin:0; }
.equipment-order-documents { padding:1rem; background:var(--bg-secondary,#f6f8fc); border-radius:12px; }
.equipment-order-documents h5 { margin:0; font-size:.8rem; color:var(--text-secondary,#64748b); }
.equipment-order-documents .equipment-toolbar { margin:.65rem 0 0; }
.equipment-order-documents .btn { max-width:100%; white-space:normal; overflow-wrap:anywhere; }
.equipment-sale-card > details { margin-top:1rem; }
.equipment-notice { padding:.65rem .85rem; border-radius:9px; font-size:.85rem; }
.equipment-empty { padding:2.5rem 1rem; text-align:center; border:1px dashed var(--border,#dce4ed); border-radius:14px; color:var(--text-secondary,#64748b); line-height:1.6; }
.equipment-history { display:grid; gap:.8rem; }
.equipment-history-row { display:flex; gap:1rem; align-items:start; padding:1.1rem; }
.equipment-history-mark { display:grid; place-items:center; flex:0 0 36px; height:36px; border-radius:11px; font-size:1.25rem; font-weight:700; background:var(--bg-secondary,#edf3fb); color:var(--primary,#2563eb); }
.equipment-history-mark.is-ok { color:#126b43; background:#e9f7ef; }
.equipment-history-mark.is-danger { color:#ad2933; background:#fff0f1; }
.equipment-history-content { flex:1; min-width:0; }
.equipment-history-content header { flex-wrap:nowrap; align-items:center; }
.equipment-history-content header > div { min-width:0; }
.equipment-history-content strong { display:block; margin-top:.25rem; font-size:.95rem; }
.equipment-history-delete { flex:0 0 36px; width:36px; padding:0; color:var(--text-secondary,#64748b); font-size:1.2rem; border:0; }
.equipment-history-delete:hover { color:var(--danger,#dc2626); background:#fff0f1; }
.equipment-history-reason { margin:.5rem 0; font-size:.85rem; }
.equipment-history-meta { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.4rem; color:var(--text-secondary,#64748b); font-size:.75rem; }
.equipment-history-meta > span { font-weight:600; color:var(--text,#233047); }
.equipment-summary { display:flex; flex-wrap:wrap; gap:.65rem; align-items:center; padding:1rem; margin:1rem 0; border:1px solid var(--border,#dce4ed); border-radius:12px; }
.equipment-summary strong { width:100%; }
.equipment-summary span { flex:1 1 220px; }
/* Formulaires : sections courtes et récapitulatif persistant sur ordinateur. */
.equipment-management-form { max-width:850px; display:grid; gap:1.25rem; }
.equipment-management-form > .equipment-form-heading { margin-bottom:.25rem; }
.equipment-form-heading { margin:0 0 1.5rem; }
.equipment-editor-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:1.25rem; align-items:start; }
.equipment-editor-main,.equipment-editor-sidebar { display:grid; gap:1.25rem; min-width:0; }
.equipment-editor-sidebar { position:sticky; top:calc(var(--test-page-sticky-top,0px) + 100px); }
.equipment-form-card { min-width:0; padding:1.25rem; border:1px solid var(--border,#dce4ed); border-radius:16px; background:var(--surface,#fff); }
.equipment-form-card-heading { display:flex; align-items:flex-start; gap:.75rem; margin-bottom:1.1rem; }
.equipment-form-card-heading > div { flex:1; min-width:0; }
#modal .equipment-form-card-heading h4 { margin:0; font-size:1rem; line-height:1.4; }
.equipment-form-card-heading p { margin:.3rem 0 0; font-size:.8rem; line-height:1.5; color:var(--text-secondary,#64748b); }
.equipment-section-index { display:grid; place-items:center; flex:0 0 28px; height:28px; border-radius:8px; background:#edf3ff; color:var(--primary,#2563eb); font-size:.8rem; font-weight:700; }
.equipment-editor .form-group { display:block; margin-bottom:1rem; }
.equipment-editor .form-group:last-child { margin-bottom:0; }
.equipment-editor .form-label { display:block; min-width:0; margin-bottom:.4rem; font-size:.8rem; font-weight:600; }
.equipment-editor .form-label > span { color:var(--text-secondary,#64748b); font-weight:400; }
.equipment-editor .form-input,.equipment-editor .form-select { min-height:46px; background:var(--surface,#fff); }
.equipment-editor input,.equipment-editor select,.equipment-editor textarea { scroll-margin-block:110px; }
.equipment-editor [data-retry-clients] { margin-top:.65rem; }
.equipment-order-lines { display:grid; gap:.75rem; }
.equipment-order-line { padding:1rem; border:1px solid var(--border,#dce4ed); border-radius:12px; background:var(--surface,#fff); transition:border-color .12s,background .12s; }
.equipment-order-line[data-selected="true"] { border-color:#a4c0ff; background:var(--bg-secondary,#f6f9ff); }
.equipment-order-choice { display:flex; gap:.75rem; align-items:flex-start; cursor:pointer; }
.equipment-order-choice > input { width:20px; height:20px; margin:.2rem 0 0; flex:0 0 20px; accent-color:var(--primary,#2563eb); }
.equipment-order-choice > span { min-width:0; }
.equipment-order-choice strong { display:block; font-size:.95rem; line-height:1.5; }
.equipment-form-heading h3,.equipment-order-choice strong { overflow-wrap:anywhere; }
.equipment-order-choice small { display:block; font-size:.75rem; color:var(--text-secondary,#64748b); margin-top:.2rem; }
.equipment-order-choice .equipment-line-stock.is-low { color:#98570e; }
.equipment-order-choice .equipment-line-stock.is-empty { color:#ad2933; }
.equipment-order-numbers { display:grid; grid-template-columns:85px minmax(100px,1fr) minmax(90px,1fr); gap:.75rem; align-items:end; margin-top:.85rem; padding-left:2rem; }
.equipment-order-numbers .form-label { margin:0; }
.equipment-order-numbers input { margin-top:.35rem; }
.equipment-order-numbers [data-line-quantity] { text-align:center; }
.equipment-order-line-amount { display:flex; flex-direction:column; justify-content:center; align-items:flex-end; min-height:68px; gap:.5rem; text-align:right; }
.equipment-order-line-amount span { font-size:.75rem; color:var(--text-secondary,#64748b); }
.equipment-order-line-amount strong { font-size:.9rem; font-variant-numeric:tabular-nums; }
.equipment-form-note { margin:1rem 0 0; padding:.75rem .85rem; border-radius:9px; background:var(--bg-secondary,#f5f8fc); color:var(--text-secondary,#64748b); font-size:.8rem; line-height:1.55; }
.equipment-order-total-card { border-radius:16px; padding:1.35rem; background:#153465; color:#fff; }
.equipment-order-total-card h4 { margin:0; font-size:1rem; }
.equipment-order-total-selection { margin:.55rem 0 1.2rem; font-size:.8rem; color:#c1d2ef; }
.equipment-order-total-card dl { margin:0; }
.equipment-order-total-card dl > div { display:flex; justify-content:space-between; gap:.6rem; margin:.85rem 0; }
.equipment-order-total-card dt { font-size:.8rem; color:#c1d2ef; }
.equipment-order-total-card dd { margin:0; font-size:.9rem; font-weight:600; text-align:right; font-variant-numeric:tabular-nums; }
.equipment-order-total-card .equipment-order-grand-total { align-items:flex-end; border-top:1px solid #ffffff26; padding-top:1rem; margin:1rem 0 0; }
.equipment-order-grand-total dt { color:#fff; }
.equipment-order-grand-total dd { font-size:1.65rem; line-height:1.1; letter-spacing:-.025em; }
.equipment-order-total-hint { margin:1rem 0 0; color:#d4e1f7; font-size:.75rem; line-height:1.5; }
#modal .equipment-editor > .form-actions { margin:1.5rem 0 0; padding:1rem 0; gap:.65rem; background:var(--surface,#fff); border-top:1px solid var(--border,#dce4ed); }
#modal .equipment-editor > .form-actions .btn { justify-content:center; text-align:center; min-height:48px; }
.equipment-editor [data-equipment-error]:empty { display:none; }
[data-equipment-error]:not(:empty),[data-stock-error] { color:var(--danger,#b42318); padding:.8rem; border-radius:9px; background:#fff5f5; font-size:.85rem; }
.equipment-photos { display:flex; flex-wrap:wrap; gap:.8rem; padding:1rem; margin:0; border:1px solid var(--border,#dce4ed); border-radius:12px; }
.equipment-photos > p { width:100%; font-size:.8rem; color:var(--text-secondary,#64748b); }
.equipment-photo-choice { display:flex; flex-direction:column; gap:.5rem; width:140px; max-width:100%; padding:.5rem; border:1px solid var(--border,#dce4ed); border-radius:10px; cursor:pointer; }
.equipment-photo-choice img { display:block; width:100%; height:95px; object-fit:cover; border-radius:6px; }
.equipment-photo-choice span { font-size:.75rem; overflow-wrap:anywhere; }
.equipment-photo-choice:has(input:checked) { border-color:var(--primary,#2563eb); background:#f1f6ff; }
.equipment-purchase-editor { padding:.1rem .85rem; border:1px solid var(--border,#dce4ed); border-radius:10px; margin:0 0 1rem; }
.equipment-purchase-editor[open] { padding-bottom:.85rem; }
.equipment-model-declaration .equipment-purchase-editor { grid-column:1 / -1; }
.equipment-model-card[hidden],.equipment-empty[hidden] { display:none; }
@media(max-width:900px) {
 .equipment-editor-layout { grid-template-columns:1fr; }
 .equipment-editor-sidebar { position:static; grid-template-columns:1fr 1fr; align-items:start; }
 .equipment-heading-status { display:none; }
}
@media(max-width:650px) {
 .equipment-dashboard,.equipment-sale-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .equipment-heading { padding:1.15rem; }
 #modal .equipment-heading h3,#modal .equipment-form-heading h3 { font-size:1.35rem; }
 .equipment-dashboard > div { padding:1rem; }
 .equipment-dashboard strong { font-size:1.8rem; }
 .equipment-dashboard small { font-size:.7rem; }
 .equipment-tabs { margin-block:1.2rem 1.5rem; }
 .equipment-tabs .btn { flex:1 1 0; min-width:0; font-size:.72rem; padding-inline:.3rem; gap:.3rem; }
 .equipment-tabs .btn > span { min-width:18px; height:20px; padding-inline:.2rem; font-size:.65rem; }
 .equipment-tabs .equipment-tab-full { display:none; }
 .equipment-tabs .equipment-tab-short { display:inline; }
 .equipment-section-heading { align-items:flex-start; }
 .equipment-section-heading > .btn { width:100%; }
 .equipment-step { padding:.85rem; gap:.6rem; }
 .equipment-step strong { font-size:1.4rem; }
 .equipment-models,.equipment-sale-body,.equipment-sale-footer { grid-template-columns:1fr; }
 .equipment-filters { grid-template-columns:1fr; gap:.7rem; }
 .equipment-filters > span { padding:0; }
 .equipment-card { padding:1.1rem; }
 .equipment-toolbar .btn { flex:1 1 auto; }
 .equipment-editor-sidebar { grid-template-columns:1fr; }
 .equipment-form-card { padding:1rem; }
 .equipment-form-card-heading { flex-wrap:wrap; }
 .equipment-order-numbers { padding-left:0; grid-template-columns:75px minmax(0,1fr); }
 .equipment-order-line-amount { grid-column:1 / -1; flex-direction:row; justify-content:space-between; min-height:0; padding-top:.65rem; border-top:1px solid var(--border,#dce4ed); }
 .equipment-history-row { gap:.65rem; }
 .equipment-history-mark { flex-basis:28px; height:28px; font-size:1rem; border-radius:8px; }
 #modal .equipment-editor > .form-actions { flex-direction:row; flex-wrap:nowrap; }
 #modal .equipment-editor > .form-actions .btn { flex:1; min-width:0; font-size:.8rem; padding-inline:.6rem; white-space:normal; }
}
/* Confirmation ponctuelle au-dessus de la commande, sans changer de page. */
.equipment-delivery-popup { width:min(620px,calc(100vw - 2rem)); }
.equipment-delivery-reference { margin:0 0 .85rem; }
.equipment-delivery-reference strong,.equipment-delivery-reference span { display:block; }
.equipment-delivery-reference span { margin-top:.25rem; color:var(--text-secondary,#64748b); font-size:.85rem; }
.equipment-delivery-lines { max-height:45dvh; overflow:auto; overscroll-behavior:contain; margin:1rem 0; border:1px solid var(--border,#dce4ed); border-radius:12px; }
.equipment-delivery-line { display:grid; grid-template-columns:minmax(0,1fr) 110px; gap:1rem; align-items:center; padding:1rem; }
.equipment-delivery-line + .equipment-delivery-line { border-top:1px solid var(--border,#dce4ed); }
.equipment-delivery-line > label { min-width:0; overflow-wrap:anywhere; }
.equipment-delivery-line strong,.equipment-delivery-line small { display:block; }
.equipment-delivery-line small { margin-top:.3rem; color:var(--text-secondary,#64748b); line-height:1.5; }
.equipment-delivery-line .form-label { font-size:.8rem; margin-bottom:.35rem; }
.equipment-delivery-line .form-input { min-height:44px; text-align:center; font-weight:700; }
.equipment-delivery-popup [data-equipment-error]:empty { display:none; }
.equipment-delivery-popup .recipient-interest-popup-actions { padding-top:1rem; border-top:1px solid var(--border,#dce4ed); }
@media(max-width:480px) {
 .equipment-delivery-popup { padding:1rem; }
 .equipment-delivery-line { grid-template-columns:minmax(0,1fr) 85px; gap:.75rem; padding:.8rem; }
}
/* Paiement : situation enregistrée, puis deux sujets de saisie distincts. */
.equipment-payment { display:flex; flex-direction:column; gap:1.5rem; max-width:1100px; margin-inline:auto; color:var(--text,#233047); }
#modal .equipment-payment-heading h3 { margin:.25rem 0 0; padding:0; border:0; font-size:1.4rem; line-height:1.3; }
.equipment-payment-heading p { margin:.4rem 0 0; color:var(--text-secondary,#64748b); overflow-wrap:anywhere; }
.equipment-payment-caption { margin:0 0 .6rem; color:var(--text-secondary,#64748b); font-size:.8rem; font-weight:600; }
.equipment-payment-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0; border:1px solid var(--border,#dce4ed); border-radius:14px; overflow:hidden; background:var(--surface,#fff); }
.equipment-payment-summary > div { min-width:0; padding:1.15rem 1.25rem; }
.equipment-payment-summary > div + div { border-left:1px solid var(--border,#dce4ed); }
.equipment-payment-summary dt { color:var(--text-secondary,#64748b); font-size:.85rem; }
.equipment-payment-summary dd { margin:.45rem 0 0; font-size:1.6rem; font-weight:750; line-height:1.3; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.equipment-payment-outstanding { background:var(--bg-secondary,#f4f7fb); }
.equipment-payment-outstanding dd { color:var(--primary,#2563eb); }
.equipment-payment-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:1.25rem; }
.equipment-payment-card { display:flex; flex-direction:column; min-width:0; padding:1.25rem; border:1px solid var(--border,#dce4ed); border-radius:14px; background:var(--surface,#fff); }
#modal .equipment-payment-card h4 { margin:0; font-size:1.1rem; line-height:1.4; }
.equipment-payment-card > p { margin:.5rem 0 1.4rem; color:var(--text-secondary,#64748b); font-size:.875rem; line-height:1.55; }
.equipment-payment-card .form-group { display:block; min-width:0; margin:auto 0 0; }
.equipment-payment-card .form-label { font-size:.875rem; font-weight:600; }
.equipment-payment-card .form-label span { font-weight:400; color:var(--text-secondary,#64748b); }
.equipment-payment-amount { display:flex; align-items:stretch; gap:.65rem; }
.equipment-payment-amount .form-input { flex:1 1 0; min-width:0; }
.equipment-payment-amount .btn { flex:0 0 auto; padding-inline:1rem; white-space:nowrap; }
.equipment-payment-card .form-input { display:block; min-width:0; min-height:48px; }
.equipment-payment [data-equipment-error] { margin:0; }
.equipment-payment [data-equipment-error]:empty { display:none; }
#modal .equipment-payment .form-actions { margin:0; padding:1.1rem 0; gap:.75rem; background:var(--surface,#fff); }
#modal .equipment-payment .form-actions .btn { min-width:150px; justify-content:center; }
@media(max-width:800px) {
 .equipment-payment-grid { grid-template-columns:1fr; }
}
@media(max-width:480px) {
 .equipment-payment { gap:1.15rem; }
 .equipment-payment-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .equipment-payment-summary > div { padding:1rem; }
 .equipment-payment-summary > div:first-child { grid-column:1 / -1; border-bottom:1px solid var(--border,#dce4ed); }
 .equipment-payment-summary > div:nth-child(2) { border-left:0; }
 .equipment-payment-summary dd { font-size:1.25rem; }
 .equipment-payment-card { padding:1rem; }
 .equipment-payment-amount { flex-direction:column; }
 .equipment-payment-amount .btn { align-self:flex-start; }
}
