.agreement-shell{max-width:1180px;margin:0 auto 50px;color:#173952}
.agreement-top{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:0 0 28px}
.agreement-back{border:0;background:none;color:#52738a;font-size:12px;font-weight:700;min-height:40px;padding:6px 0}
.agreement-tag{font-size:10px;font-weight:750;letter-spacing:.04em;background:#e8f4f6;border:1px solid #c9e4e9;border-radius:7px;color:#277585;padding:5px 9px}
.agreement-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:25px}
.agreement-heading h2{font-size:clamp(26px,3vw,38px);letter-spacing:-.045em;margin:0 0 9px;font-weight:800}
.agreement-heading .eyebrow{margin-bottom:9px}
.agreement-heading p{font-size:13px;color:#61778c;margin:0;max-width:570px}
.agreement-shell svg{width:19px;height:19px;flex-shrink:0}
.agreement-heading-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:19px;border:1px solid #c4dfe9;background:linear-gradient(140deg,#e1f4f6,#eaf0fa);color:#237b95;box-shadow:inset 0 1px white}
.agreement-heading-icon svg{width:28px;height:28px}
.agreement-progress{list-style:none;display:flex;gap:0;padding:0;margin:0 0 26px;border-bottom:1px solid #d9e5ee}
.agreement-progress li{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 10px;flex:1;color:#708394;font-size:12px;font-weight:750;position:relative}
.agreement-progress li>span{display:grid;place-items:center;border:1px solid #d4e1ec;border-radius:9px;width:28px;height:28px;background:#f9fbfd;font-size:11px}
.agreement-progress li[aria-current]{color:#165e87}
.agreement-progress li[aria-current]::after{content:"";position:absolute;bottom:-1px;height:3px;left:0;right:0;background:linear-gradient(90deg,#1c68a5,#26afba);border-radius:3px 3px 0 0}
.agreement-progress li[aria-current]>span{background:#196c96;color:white;border-color:#196c96;box-shadow:0 3px 10px #18689222}
.agreement-progress li.done{color:#297d77}.agreement-progress li.done>span{background:#e8f5ef;border-color:#c4e6d8;color:#298269}
.agreement-capture,.agreement-review{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px;align-items:start}
.agreement-paper{padding:28px;border:1px solid #dae5ee;background:white;border-radius:20px;box-shadow:0 9px 34px #173d5a08;min-width:0}
.agreement-paper>label{margin-top:18px}
.agreement-shell label{display:grid;gap:7px;font-size:12px;font-weight:700}
.agreement-shell label small{font-weight:450;color:#778b9c;font-size:10px}
.agreement-shell input,.agreement-shell textarea,.agreement-shell select{width:100%;padding:11px 12px}
.agreement-shell textarea{min-height:95px}
.agreement-shell input[type=checkbox],.agreement-shell input[type=radio]{width:18px;height:18px;min-height:18px;padding:0}
.agreement-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.agreement-channel{border:0;padding:0;margin:24px 0;display:flex;gap:10px;flex-wrap:wrap}
.agreement-channel legend{font-size:12px;font-weight:700;margin-bottom:9px}
.agreement-channel label{display:flex;align-items:center;gap:8px;border:1px solid #dbe6ef;border-radius:10px;padding:10px 14px;font-size:12px;font-weight:550;cursor:pointer}
.agreement-channel label:has(input:checked){border-color:#68b0bd;background:#edf8fa;color:#18637a}
.agreement-note-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}
.agreement-note-heading label{font-size:13px}
.agreement-shell .agreement-dictate{min-height:38px;padding:7px 12px;font-size:12px}
.agreement-dictate[aria-pressed=true]{background:#fff0f6!important;border-color:#c7508c!important;color:#9f2464!important;animation:agreement-pulse 1.5s ease-in-out infinite}
#agreementMemo{min-height:200px;font-size:15px;background:#f8fbfd;padding:17px;line-height:1.8}
.agreement-voice-status{font-size:11px;color:#6d8295;margin:10px 0 23px;min-height:18px}
.agreement-attachment{border:1px dashed #c6d9e6;padding:15px;border-radius:12px;background:#f9fbfd}
.agreement-attachment summary{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:12px;font-weight:650}
.agreement-attachment summary span{margin-left:auto;color:#7b8e9f;font-size:10px;font-weight:400}
.agreement-attachment p,.agreement-attachment small{font-size:11px;color:#60778c;line-height:1.6}
.agreement-attachment input{font-size:12px;margin:5px 0 9px;min-height:40px}
.agreement-footer{border-top:1px solid #e2eaf1;margin-top:25px;padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.agreement-footer>span{font-size:11px;color:#6a8094;max-width:220px}
.agreement-guide{padding:28px 23px;border-radius:20px;background:linear-gradient(155deg,#102f50,#16445f);border:1px solid #245674;color:#e1f0f7;box-shadow:0 10px 24px #123d5612}
.agreement-guide-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #8acede45;background:#68c5d620;border-radius:12px;color:#81dfeb;margin-bottom:20px}
.agreement-guide h3{color:#fff;font-size:21px;line-height:1.3;margin:0 0 12px}
.agreement-guide p{font-size:12px;color:#c5dbe7;margin:0 0 18px}
.agreement-guide ul{list-style:none;margin:0;padding:0}
.agreement-guide li{font-size:12px;padding:12px 0;border-bottom:1px solid #acd9ed20}
.agreement-guide li::before{content:"·";color:#7fe2e9;font-size:20px;vertical-align:middle;margin-right:9px}
.agreement-guide-note{font-size:11px;line-height:1.7;margin-top:22px;color:#a9c9db}
.agreement-guide .button{margin-top:20px;width:100%}
.agreement-review-source{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}
.agreement-review-source>strong{font-size:17px;overflow-wrap:anywhere}
.agreement-text-button{padding:6px 0;border:0;background:none;font-size:11px;font-weight:700;color:#227c98;min-height:32px}
.agreement-source{font-size:12px;background:#f3f8fb;border-radius:10px;padding:12px 14px;color:#537186}
.agreement-source summary{cursor:pointer;font-weight:650}
.agreement-source p,.agreement-answer p,.agreement-correction p{white-space:pre-wrap;overflow-wrap:anywhere}
.agreement-line{border:1px solid #d8e5ed;border-radius:14px;margin:20px 0;padding:20px;background:#fcfdff}
.agreement-line-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;font-size:10px;letter-spacing:.05em;font-weight:800;color:#4d738b;text-transform:uppercase}
.agreement-line-head button{border:0;background:none;color:#8c5166;font-size:11px;text-transform:none;min-height:30px}
.agreement-numbers{display:grid;grid-template-columns:.65fr 1fr 1fr;gap:12px;margin:15px 0 0}
.agreement-line .agreement-fields{margin-top:12px}
.agreement-add{width:100%;border-style:dashed!important;margin-bottom:14px}
.agreement-shell .agreement-check{display:flex;align-items:flex-start;gap:11px;font-weight:500;font-size:12px;line-height:1.6;margin:23px 0 0}
.agreement-check input{margin-top:2px}
.agreement-confirm-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:24px;align-items:start}
.agreement-status{font-size:10px;background:#eaf4fb;border:1px solid #d1e5f2;color:#326b94;border-radius:7px;padding:5px 9px;white-space:nowrap}
.agreement-status.is-confirmed{background:#e9f6ee;border-color:#c7e8d6;color:#297653}
.agreement-totals{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0 0}
.agreement-totals>div{padding:16px;background:#f5f9fc;border:1px solid #e0eaf1;border-radius:12px}
.agreement-totals span{font-size:10px;display:block;color:#6c8296;line-height:1.5}
.agreement-totals strong{display:block;font-size:24px;letter-spacing:-.04em;margin-top:8px;font-variant-numeric:tabular-nums}
.agreement-message{font-size:12px;margin-top:22px}
.agreement-message summary{font-weight:700;cursor:pointer;color:#3d6480}
.agreement-message blockquote{white-space:pre-wrap;overflow-wrap:anywhere;padding:18px;background:#f5f9fc;border-radius:12px;margin:15px 0;border-left:3px solid #29a4b0;color:#49667a;font-size:12px;line-height:1.75}
.agreement-send-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.agreement-next{position:sticky;top:88px}
.agreement-next .agreement-guide-icon{color:#258597;background:#e9f6f8;border-color:#c9e6eb}
.agreement-next h3{font-size:23px;margin:0 0 13px}
.agreement-next>p{font-size:13px;color:#637b91;margin-bottom:22px}
.agreement-next>.button,.agreement-next .agreement-reply>.button{width:100%}
.agreement-next>.agreement-text-button{width:100%;margin-top:9px}
.agreement-next>details{font-size:12px;margin-top:22px}
.agreement-next>details summary{cursor:pointer;color:#5e788e}
.agreement-reply{display:grid;gap:18px;margin-top:17px}
.agreement-reply textarea{min-height:130px}
.agreement-reply .agreement-check{margin:0}
.agreement-answer,.agreement-correction{border:1px solid #cce8d7;border-radius:12px;background:#f0f9f4;padding:17px;margin-top:20px;font-size:12px;color:#31694d}
.agreement-correction{border-color:#ead9b3;background:#fff9ed;color:#7e6333;margin-bottom:20px}
.agreement-correction p{margin:8px 0}
.agreement-correction span{font-size:11px}
#agreementAudio audio{max-width:100%;width:100%;margin-top:15px;height:40px}
.agreement-shell[aria-busy=true]{cursor:progress}
@keyframes agreement-pulse{50%{box-shadow:0 0 0 5px #bf448719}}
@media(max-width:1150px){.agreement-capture,.agreement-review{grid-template-columns:minmax(0,1fr) 220px;gap:17px}.agreement-guide{padding:23px 18px}.agreement-paper{padding:22px}.agreement-numbers{gap:8px}.agreement-confirm-grid{gap:17px}}
@media(max-width:760px){.agreement-capture,.agreement-review,.agreement-confirm-grid{grid-template-columns:1fr}.agreement-guide{display:none}.agreement-review .agreement-guide:has(#agreementAudio){display:block}.agreement-heading-icon{display:none}.agreement-top{margin-bottom:18px}.agreement-heading{margin-bottom:17px}.agreement-progress{margin-bottom:20px}.agreement-paper{padding:20px;border-radius:17px}.agreement-next{position:static}.agreement-heading h2{font-size:29px}.agreement-fields{gap:13px}.agreement-footer{align-items:stretch;flex-direction:column;gap:12px}.agreement-footer>span{max-width:none}.agreement-footer .button{width:100%}.agreement-numbers{grid-template-columns:1fr 1fr}.agreement-numbers>label:first-child{grid-column:1/-1}.agreement-progress li{font-size:11px;gap:7px}.agreement-line{padding:16px}.agreement-line .agreement-fields{grid-template-columns:1fr}.agreement-tag{font-size:9px}.agreement-shell .agreement-dictate{min-height:42px}.agreement-review-source{flex-wrap:wrap}.agreement-totals strong{font-size:22px}}
@media(max-width:420px){.agreement-fields{grid-template-columns:1fr}.agreement-paper{padding:17px}.agreement-heading h2{font-size:26px}.agreement-attachment summary{flex-wrap:wrap}.agreement-attachment summary span{margin-left:27px}.agreement-totals{gap:9px}.agreement-totals>div{padding:12px}.agreement-totals strong{font-size:20px}.agreement-send-actions>.button{width:100%}}
/* Supplier confirmation is a separate, explicit action after internal review. */
.supplier-share{margin-top:24px}.supplier-share h3{margin-top:6px;font-size:24px}.supplier-share input[readonly]{font-size:12px}.supplier-comparison article{padding:15px 0;border-bottom:1px solid #dce6ed}.supplier-comparison p{font-size:13px}.supplier-comparison del{color:#8c5765}.supplier-share .agreement-send-actions{margin:16px 0}
.agreement-confirm-grid>.supplier-share{margin-top:0;align-self:start}
