/* STIMLAB R2.6. Scoped visual additions, matching v16-finish design. */
.v16-finish .dx-section{padding:82px 0 92px!important;background:#f7f8f7!important;scroll-margin-top:78px;border-top:1px solid #e9ecea;border-bottom:1px solid #e9ecea}
.v16-finish .dx-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.12fr);gap:clamp(34px,6.8vw,100px);align-items:start}
.v16-finish .dx-copy{padding-top:20px;max-width:475px}
.v16-finish .dx-kicker{font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#53856b}
.v16-finish .dx-copy h2{font-size:clamp(36px,3.8vw,55px);line-height:1.06;letter-spacing:-.045em;color:#171b20;margin:17px 0 20px;text-wrap:balance}
.v16-finish .dx-copy p{font-size:16px;line-height:1.7;color:#626d74;margin:0}
.v16-finish .dx-benefits{padding:0;margin:31px 0 0;list-style:none;display:grid;gap:16px}
.v16-finish .dx-benefits li{display:flex;align-items:start;gap:12px;font-size:14px;font-weight:650;color:#333d43;line-height:1.5}
.v16-finish .dx-benefits li:before{content:'✓';flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:900;background:#e5f2eb;color:#2f8f68}
.v16-finish .dx-panel{background:white;border:1px solid #e1e6e3;border-radius:24px;padding:clamp(22px,3vw,37px);box-shadow:0 18px 42px rgba(30,51,41,.045)}
.v16-finish .dx-form-head{border-bottom:1px solid #e9eeeb;padding-bottom:21px;margin-bottom:22px}
.v16-finish .dx-form-head h3{margin:0;color:#171b20;font-size:24px;letter-spacing:-.027em;line-height:1.22}
.v16-finish .dx-form-head p{margin:9px 0 0;color:#768088;font-size:13px;line-height:1.55}
.v16-finish .dx-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.v16-finish .dx-field{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:720;color:#303a3f}
.v16-finish .dx-field.dx-wide{grid-column:1/-1}
.v16-finish .dx-optional{font-weight:450;color:#7d858b}
.v16-finish .dx-field input,.v16-finish .dx-field textarea{min-height:52px;border:1px solid #d9e1dd;background:#fcfdfc;border-radius:12px;width:100%;font:inherit;font-size:16px;font-weight:450;color:#1c2425;padding:13px 15px;outline:none;transition:border-color .2s,box-shadow .2s}
.v16-finish .dx-field textarea{min-height:99px;resize:vertical}
.v16-finish .dx-field input::placeholder,.v16-finish .dx-field textarea::placeholder{color:#98a19f}
.v16-finish .dx-field input:focus,.v16-finish .dx-field textarea:focus{border-color:#2f8f68;box-shadow:0 0 0 3px rgba(47,143,104,.13)}
.v16-finish .dx-consents{display:grid;gap:15px;margin-top:22px}
.v16-finish .dx-checkbox{display:flex;align-items:start;gap:11px;font-size:12px;font-weight:450;color:#67716f;line-height:1.52;cursor:pointer}
.v16-finish .dx-checkbox input{width:18px;height:18px;flex:none;accent-color:#2f8f68;margin:0;cursor:pointer}
.v16-finish .dx-checkbox a{color:#207a55;text-underline-offset:2px}
.v16-finish .dx-actions{display:flex;flex-wrap:wrap;align-items:center;gap:15px;margin-top:24px}
.v16-finish .dx-submit{border:0;cursor:pointer;min-height:52px;padding-inline:27px;box-shadow:none!important;background:#2f8f68!important;border-radius:12px;font-weight:720}
.v16-finish .dx-submit:hover{background:#237c57!important}
.v16-finish .dx-small-note{max-width:220px;color:#89928e;font-size:11px;line-height:1.5}
.v16-finish .dx-status{min-height:0;margin-top:15px;font-size:13px;line-height:1.5;color:#a03e39}
.v16-finish .dx-status:empty{display:none}
.v16-finish .dx-success{padding:30px 22px;text-align:center;background:#edf6f1;border:1px solid #cfe5d9;border-radius:16px}
.v16-finish .dx-success h3{font-size:25px;letter-spacing:-.03em;color:#246a4c;margin:0 0 10px}
.v16-finish .dx-success p{color:#476357;line-height:1.6;margin:0}
.v16-finish .dx-page-intro{background:#fff;border-bottom:1px solid #e9ecea;padding:53px 0 0}
.v16-finish .dx-page-intro .dx-kicker{display:block}
.v16-finish .dx-page-intro h1{color:#171b20;font-size:clamp(36px,4vw,56px);line-height:1.06;letter-spacing:-.046em;max-width:840px;margin:15px 0 20px}
.v16-finish .dx-page-intro p{max-width:700px;color:#69727b;font-size:16px;line-height:1.7;margin:0 0 43px}
.v16-finish .dx-page-section{padding-top:58px!important}
@media(max-width:960px){.v16-finish .dx-layout{grid-template-columns:1fr;gap:32px}.v16-finish .dx-copy{max-width:750px;padding:0}.v16-finish .dx-benefits{margin-top:18px;grid-template-columns:repeat(3,1fr);gap:12px}.v16-finish .dx-benefits li{font-size:12px}}
@media(max-width:650px){.v16-finish .dx-section{padding:52px 0 57px!important;scroll-margin-top:66px}.v16-finish .dx-copy h2{font-size:clamp(35px,10vw,44px)}.v16-finish .dx-copy p{font-size:14px}.v16-finish .dx-benefits{grid-template-columns:1fr;gap:10px}.v16-finish .dx-panel{padding:22px 17px;border-radius:18px}.v16-finish .dx-fields{grid-template-columns:1fr;gap:15px}.v16-finish .dx-field.dx-wide{grid-column:auto}.v16-finish .dx-actions{display:grid;gap:10px}.v16-finish .dx-submit{width:100%}.v16-finish .dx-small-note{max-width:none;text-align:center}.v16-finish .dx-page-intro{padding:39px 0 0}.v16-finish .dx-page-intro p{margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){.v16-finish .dx-field input,.v16-finish .dx-field textarea{transition:none}}

/* R2.7 main-page diagnostics: overlay-only presentation. Standalone page unchanged. */
.dx-overlay[hidden],.dx-toast[hidden]{display:none!important}
.dx-overlay{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:clamp(10px,3vw,26px);isolation:isolate}
.dx-overlay-backdrop{position:absolute;inset:0;background:rgba(19,29,28,.66);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.v16-finish .dx-dialog{position:relative;z-index:1;display:flex;flex-direction:column;width:min(100%,650px);max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px);border-radius:24px;background:#fff;box-shadow:0 28px 90px rgba(10,25,16,.26);overflow:hidden;outline:none}
.v16-finish .dx-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:26px 28px 20px;border-bottom:1px solid #e6ece8;background:#fff}
.v16-finish .dx-dialog-heading h2{font-size:clamp(24px,3.8vw,31px);font-weight:790;line-height:1.15;letter-spacing:-.035em;color:#171b20;margin:9px 0}
.v16-finish .dx-dialog-heading p{font-size:14px;line-height:1.5;color:#69746e;margin:0}
.v16-finish .dx-close{flex:none;width:40px;height:40px;border:1px solid #dee5e0;border-radius:50%;background:#f6f8f6;color:#323f39;font-size:27px;cursor:pointer;line-height:1;display:grid;place-items:center}
.v16-finish .dx-close:focus-visible,.v16-finish .dx-submit:focus-visible,[data-dx-open]:focus-visible{outline:3px solid #67b18b;outline-offset:3px}
.v16-finish .dx-dialog-content{overflow-y:auto;overscroll-behavior:contain;padding:0 28px 28px;-webkit-overflow-scrolling:touch}
.v16-finish .dx-dialog .dx-panel{padding:0;box-shadow:none;border:0;border-radius:0}
.v16-finish .dx-dialog .dx-fields{gap:15px}
.v16-finish .dx-dialog .dx-consents{margin-top:19px;gap:14px}
.v16-finish .dx-dialog .dx-actions{margin-top:19px}
.v16-finish .dx-dialog .dx-field textarea{min-height:80px}
.dx-modal-open{overflow:hidden!important}
.dx-toast{position:fixed;bottom:max(22px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:1300;width:min(94vw,460px);display:flex;gap:13px;align-items:flex-start;background:#fff;border:1px solid #bfddcc;color:#23352b;border-radius:18px;padding:17px;box-shadow:0 14px 50px rgba(12,39,20,.2)}
.dx-toast-icon{display:grid;place-items:center;flex:none;border-radius:50%;width:27px;height:27px;background:#e5f5eb;color:#1e8753;font-weight:900}
.dx-toast strong{display:block;font-size:16px}
.dx-toast p{margin:4px 0 0;font-size:13px;line-height:1.45;color:#5b6861}
.dx-toast button{margin-left:auto;border:0;background:transparent;color:#607269;font-size:23px;cursor:pointer}
@media(max-width:650px){.dx-overlay{padding:0;align-items:flex-end}.v16-finish .dx-dialog{width:100%;max-height:calc(100vh - 25px);max-height:calc(100dvh - 25px);border-radius:22px 22px 0 0}.v16-finish .dx-dialog-heading{padding:20px 18px 16px}.v16-finish .dx-dialog-heading h2{font-size:25px}.v16-finish .dx-dialog-content{padding:0 18px max(22px,env(safe-area-inset-bottom))}.v16-finish .dx-dialog .dx-fields{grid-template-columns:1fr;gap:12px}.v16-finish .dx-dialog .dx-actions{display:grid}.v16-finish .dx-dialog .dx-submit{width:100%}.dx-toast{bottom:max(14px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.dx-overlay-backdrop{backdrop-filter:none;-webkit-backdrop-filter:none}}


/* STIMLAB R2.9 — compact modal spacing only. Standalone diagnostics page untouched. */
.v16-finish .dx-dialog{width:min(100%,620px)}
.v16-finish .dx-dialog-heading{padding:21px 24px 16px;gap:14px}
.v16-finish .dx-dialog-heading h2{font-size:26px;line-height:1.17;margin:7px 0 8px}
.v16-finish .dx-dialog-heading p{font-size:13px;line-height:1.48}
.v16-finish .dx-dialog-content{padding:16px 24px 22px;min-height:0}
.v16-finish .dx-dialog .dx-fields{gap:12px 14px}
.v16-finish .dx-dialog .dx-field{font-size:13px;gap:6px;line-height:1.35}
.v16-finish .dx-dialog .dx-field input{box-sizing:border-box;min-height:48px;height:48px;padding:11px 13px;font-size:16px;line-height:1.25;border-radius:11px}
.v16-finish .dx-dialog .dx-field textarea{box-sizing:border-box;min-height:77px;padding:11px 13px;font-size:16px;line-height:1.4;border-radius:11px}
.v16-finish .dx-dialog .dx-field input:focus,.v16-finish .dx-dialog .dx-field textarea:focus{outline:0!important;border-color:#398d69;box-shadow:0 0 0 2px rgba(47,143,104,.22)!important}
.v16-finish .dx-dialog .dx-question-label{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 9px}
.v16-finish .dx-dialog .dx-optional{font-size:12px;font-weight:400;line-height:1.25}
.v16-finish .dx-dialog .dx-consents{margin-top:16px;gap:11px}
.v16-finish .dx-dialog .dx-checkbox{font-size:12px;line-height:1.43;gap:10px}
.v16-finish .dx-dialog .dx-actions{margin-top:17px;gap:11px}
.v16-finish .dx-dialog .dx-submit{min-height:48px;padding:0 20px}
.v16-finish .dx-dialog .dx-status{margin-top:10px}
@media(max-width:650px){
  .dx-overlay{padding:0;align-items:flex-end}
  .v16-finish .dx-dialog{max-height:calc(100dvh - max(12px,env(safe-area-inset-top)));border-radius:22px 22px 0 0}
  .v16-finish .dx-dialog-heading{padding:15px 17px 12px;gap:10px;align-items:center}
  .v16-finish .dx-dialog-heading .dx-kicker{display:none}
  .v16-finish .dx-dialog-heading h2{font-size:22px;line-height:1.18;letter-spacing:-.028em;margin:0 0 5px}
  .v16-finish .dx-dialog-heading p{font-size:12px;line-height:1.42;margin:0;max-width:330px}
  .v16-finish .dx-close{width:40px;height:40px;font-size:24px}
  .v16-finish .dx-dialog-content{padding:14px 17px max(20px,env(safe-area-inset-bottom))}
  .v16-finish .dx-dialog .dx-fields{grid-template-columns:1fr;gap:12px}
  .v16-finish .dx-dialog .dx-field{gap:6px;font-size:13px;line-height:1.28}
  .v16-finish .dx-dialog .dx-field input{height:48px;min-height:48px;padding:10px 13px;font-size:16px}
  .v16-finish .dx-dialog .dx-field textarea{min-height:75px;padding:10px 13px}
  .v16-finish .dx-dialog .dx-consents{margin-top:14px;gap:10px}
  .v16-finish .dx-dialog .dx-actions{margin-top:15px;gap:8px}
  .v16-finish .dx-dialog .dx-submit{min-height:48px;width:100%}
  .v16-finish .dx-dialog .dx-small-note{font-size:11px;line-height:1.4}
}
@media(max-width:360px){
  .v16-finish .dx-dialog-heading{padding-inline:14px}
  .v16-finish .dx-dialog-content{padding-inline:14px}
  .v16-finish .dx-dialog-heading h2{font-size:20px}
}
