/* Module contrats : noir, ivoire et or ; aucune dépendance graphique. */
.contract-home{border-top:1px solid #ffffff12;background:radial-gradient(ellipse at 78% 25%,#b38a4310,transparent 50%),#0c1213}
.contract-home-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:75px;align-items:center}
.contract-home h2{font-size:clamp(30px,3.3vw,46px);line-height:1.17;max-width:680px}
.contract-home h2 span{color:var(--gold)}
.contract-home p:not(.eyebrow){max-width:570px;color:#b6c0b8;font-size:14px;line-height:1.9}
.contract-home .button{margin-top:16px}
.contract-home-method{border-left:1px solid #b6995b55;padding-left:45px}
.contract-home-method ol{list-style:none;padding:0;margin:20px 0}
.contract-home-method li{display:flex;align-items:center;gap:22px;font-size:14px;margin:18px 0}
.contract-home-method li span{font-size:11px;letter-spacing:.15em;color:#b89a5d}
.contract-home-method>p:last-child{font-size:11px;max-width:360px}
.contract-hero{padding-bottom:35px}
.contract-hero h1{max-width:1100px}
.contract-privacy-line{display:flex;align-items:center;gap:13px;margin-top:27px;max-width:800px;padding:15px 20px;background:#e7e6d9;border-left:2px solid #9c854d;color:#4d5a4c;font-size:12px;line-height:1.8}
.contract-privacy-line .icon{color:#8a6c31}
.contract-workspace{padding-bottom:75px}
.contract-workspace-head{display:flex;justify-content:space-between;align-items:center;gap:22px;margin:15px 0 25px}
.contract-workspace-head h2{font-size:30px;margin-bottom:0}
.contract-workspace-head .eyebrow{color:#94713c;font-size:9px;margin-bottom:10px}
.contract-service-status{flex-shrink:0;padding:9px 13px;border:1px solid #d1c4a8;background:#f7f4eb;color:#7b725e;font-size:10px;border-radius:3px}
.contract-service-status.is-available{background:#e8eee3;color:#4c624c;border-color:#aab6a0}
.contract-steps{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:0 0 28px;border:1px solid #d5c8ac}
.contract-steps li{display:flex;align-items:center;gap:12px;padding:16px 20px;font-size:12px;color:#5b6458}
.contract-steps li+li{border-left:1px solid #d5c8ac}
.contract-steps span{color:#a47f3c;font-size:10px;letter-spacing:.12em}
.contract-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:30px;align-items:start}
.contract-main{min-width:0}
.contract-panel{padding:30px;background:#fffdf6;border:1px solid #d9cdb5;border-top:2px solid #b69a60;margin-bottom:25px}
.contract-panel>.eyebrow{font-size:9px;color:#977139;margin-bottom:13px}
.contract-panel h3{font-size:23px;line-height:1.35;margin-bottom:20px}
.contract-panel p{font-size:12px;color:#697061;line-height:1.9}
.contract-dropzone{position:relative;display:flex;align-items:center;flex-direction:column;padding:30px 16px;border:1px dashed #b69a60;background:#f4f0e5;cursor:pointer;text-align:center;gap:7px;border-radius:3px}
.contract-dropzone:hover,.contract-dropzone.is-dragging,.contract-dropzone:focus-within{border-style:solid;background:#ece7d8}
.contract-dropzone>.icon{width:31px;height:31px;margin-bottom:6px;color:#a68343}
.contract-dropzone strong{font-size:15px}.contract-dropzone>span{font-size:12px;color:#6b715f}.contract-dropzone small{font-size:10px;color:#8c8976}
.contract-file-status{overflow-wrap:anywhere;margin:12px 0}
.contract-paste{padding-top:13px;border-top:1px solid #e2d8c4}
.contract-paste summary{font-size:12px;font-weight:700;cursor:pointer;margin-bottom:16px}
.contract-paste label,.contract-context label,.contract-followup>label{display:block;font-size:11px;font-weight:650;margin-bottom:9px;color:#565f52}
.contract-workspace textarea,.contract-workspace select{width:100%;border:1px solid #cfc3a8;border-radius:3px;background:#fffef9;color:#303a31;padding:13px;font:400 13px/1.75 var(--font)}
.contract-workspace textarea{resize:vertical;white-space:pre-wrap;overflow-wrap:anywhere}
.contract-workspace textarea:disabled,.contract-workspace select:disabled{opacity:.7;background:#f2efe5}
.contract-paste textarea{margin-bottom:14px}
.contract-panel .contract-text-button{font-size:11px}
.contract-text-button{border:0;background:none;padding:9px 0;color:#8a682c;text-decoration:underline;text-decoration-color:#c6b17b;text-underline-offset:4px;cursor:pointer;text-align:left}
.contract-text-button:disabled{opacity:.5;cursor:default}
.contract-panel .contract-help{font-size:10px;line-height:1.8;margin:6px 0 0;color:#878775}
.contract-review>p:not(.eyebrow){margin-bottom:17px}
.contract-review-actions{display:flex;align-items:center;justify-content:flex-start;gap:12px 22px;flex-wrap:wrap;margin-top:13px}
.contract-review-actions .button{font-size:10px;min-height:38px}
.contract-panel .contract-counter{font-size:10px;margin:13px 0 21px;color:#827357}
.contract-context{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:15px 0 24px}
.contract-context select{font-size:12px;min-height:45px}
.contract-approval{display:flex;align-items:flex-start;gap:11px;font-size:11px;line-height:1.85;color:#5f695d;padding:18px;background:#f0eee3;border:1px solid #dfd6bf}
.contract-approval input{margin-top:5px;accent-color:#a98746;flex-shrink:0}
.contract-approval a{color:#88662b;text-decoration:underline;text-underline-offset:3px}
.contract-send{margin-top:22px;font-size:12px}
.contract-workspace button:disabled{cursor:default;opacity:.45}
.contract-panel .contract-status{margin:17px 0 0;padding:13px 15px;background:#eef0e7;border-left:2px solid #91a080;color:#5b6955;font-size:11px}
.contract-panel .contract-status.is-error{background:#f6eae2;border-color:#ad7355;color:#915537}
.contract-verification{margin-top:20px;padding:16px;background:#f4f0e6;border:1px solid #dfd2b7}
.contract-verification p{margin-bottom:10px}
.contract-sidebar{position:sticky;top:25px}
.contract-scope{padding:28px 25px;color:#eeeade;background:#101a1b}
.contract-scope .eyebrow{color:#c4a362;font-size:8px}
.contract-scope h3{font-size:24px;line-height:1.3}
.contract-scope ul{list-style:none;padding:0;margin:23px 0 0}
.contract-scope li{font-size:11px;padding:12px 0;border-top:1px solid #ffffff19;color:#c5cec3}
.contract-side-note{padding:24px 20px 0;border-left:1px solid #d2c5a8;margin:24px 0}
.contract-side-note h3{font-size:18px}.contract-side-note p{font-size:11px;line-height:1.9;color:#747a69}
.contract-reading{padding:22px 20px;background:#e9e3d4;margin-top:28px}
.contract-reading .eyebrow{font-size:8px;color:#92703c}
.contract-reading a{display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:12px;margin:15px 0;color:#59644f}
.contract-reading .icon{width:17px;height:17px}
.contract-results{padding-top:30px;scroll-margin-top:30px}
.contract-results-head{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:22px}
.contract-results-head .eyebrow{color:#967139;font-size:9px}.contract-results h2{font-size:32px;margin:0}
.contract-analysis-summary{font-size:13px;color:#67705d;line-height:1.8}
.contract-point-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.contract-point{padding:27px;background:#fffdf6;border:1px solid #d8c9aa;border-top:2px solid #ae8b45}
.contract-point-status{display:inline-block;max-width:100%;font-size:8px;line-height:1.6;text-transform:uppercase;letter-spacing:.07em;padding:5px 8px;margin-bottom:17px;background:#e7edde;color:#58694d}
.contract-point-status.is-missing{background:#eee6d6;color:#917544}
.contract-point h3{font-size:23px;line-height:1.3}
.contract-observation,.contract-point-action{font-size:12px;line-height:1.9;color:#5b6656}
.contract-point-action{margin:20px 0 0;padding-top:16px;border-top:1px solid #e2d9c6}.contract-point-action strong{color:#8d6a2e}
.contract-source{margin:18px 0 0;padding:14px 16px;border-left:2px solid #b79d67;background:#f1eee3}
.contract-source blockquote{margin:0;font-size:11px;line-height:1.9;color:#707664;white-space:pre-wrap;overflow-wrap:anywhere}
.contract-source-jump{background:none;border:0;padding:10px 0 0;font-size:9px;color:#92713b;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.contract-result-note{font-size:10px;color:#8b8775;line-height:1.9;margin-top:18px}
.contract-followup{margin-top:35px;padding:35px;border:1px solid #bca46f;background:#faf7ed}
.contract-followup>.eyebrow{font-size:9px;color:#92703c}
.contract-followup>h3{font-size:29px;margin-bottom:15px}
.contract-followup>p{font-size:12px;line-height:1.9;color:#747a67}
.contract-suggestions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}
.contract-suggestion{background:#ebe6d7;color:#696c55;border:1px solid #d9caab;padding:10px 13px;font-size:10px;text-align:left;line-height:1.7;border-radius:3px}
.contract-question-actions{display:flex;align-items:center;gap:23px;margin-top:17px;flex-wrap:wrap}
.contract-question-actions>span{font-size:10px;color:#87816b}
.contract-history-item{border-top:1px solid #d9ccb0;margin-top:25px;padding-top:25px}
.contract-user-question{font-size:13px;font-weight:700;color:#3f4b3b}
.contract-agent-answer{font-size:13px;line-height:1.9;color:#68725d;white-space:pre-wrap}
.contract-unverified{display:block;margin-top:13px;font-size:10px;color:#9a7e4e}
.contract-result-actions{display:flex;align-items:center;flex-wrap:wrap;gap:15px 28px;padding-top:28px}.contract-result-actions .inline-link{color:#91703b;font-size:12px}.contract-result-actions>p{font-size:10px;color:#85836e;margin:0}
.contract-noscript{padding:20px;border:1px solid #cbb78c;background:#fff9e9;font-size:13px}
@media(max-width:1100px){.contract-layout{grid-template-columns:minmax(0,1fr) 250px;gap:22px}.contract-panel{padding:25px}.contract-home-grid{gap:45px}.contract-home-method{padding-left:30px}}
@media(max-width:900px){.contract-layout{grid-template-columns:1fr}.contract-sidebar{position:static;display:grid;grid-template-columns:1fr 1fr;gap:20px}.contract-scope{grid-row:span 2}.contract-side-note{margin:0}.contract-reading{margin:0;grid-column:1/-1}.contract-home-grid{grid-template-columns:1fr 1fr;gap:28px}.contract-home-method{padding-left:25px}.contract-home-method li{font-size:12px;gap:15px}.contract-steps li{padding:14px;font-size:11px;gap:9px}.contract-workspace-head{align-items:flex-start}.contract-workspace-head h2{font-size:26px}.contract-service-status{font-size:9px}.contract-approval{font-size:11px}}
@media(max-width:600px){.contract-home-grid{grid-template-columns:1fr;gap:30px}.contract-home-method{padding-left:22px}.contract-home h2{font-size:31px}.contract-home p:not(.eyebrow){font-size:13px}.contract-hero h1{font-size:34px}.contract-privacy-line{font-size:10px;align-items:flex-start;padding:14px}.contract-workspace-head{display:block}.contract-workspace-head h2{font-size:25px}.contract-service-status{display:inline-block;margin-top:17px}.contract-steps{grid-template-columns:1fr 1fr}.contract-steps li:nth-child(3){border-left:0}.contract-steps li:nth-child(n+3){border-top:1px solid #d5c8ac}.contract-panel{padding:22px 17px}.contract-panel h3{font-size:22px}.contract-panel p{font-size:12px}.contract-workspace textarea,.contract-workspace select{font-size:16px}.contract-context{grid-template-columns:1fr}.contract-approval{padding:15px 12px;font-size:11px}.contract-send{width:100%;font-size:11px}.contract-sidebar{display:block}.contract-scope,.contract-side-note,.contract-reading{margin-bottom:22px}.contract-side-note{padding-top:0}.contract-point-grid{grid-template-columns:1fr}.contract-results-head{display:block}.contract-results-head>.button{margin-top:18px}.contract-results h2{font-size:28px}.contract-point{padding:23px 20px}.contract-followup{padding:25px 18px}.contract-followup>h3{font-size:25px}.contract-question-actions{gap:14px}.contract-point h3{font-size:22px}.contract-verification{padding:12px 0;background:none;border:0;overflow:hidden}.contract-workspace{padding-bottom:40px}}
