/* One shared, accessible request form for all confidential service demos. */
html:has(#demo-request-dialog[open]) {overflow:hidden;scrollbar-gutter:stable}
.demo-request-dialog:not([open]), .demo-request-dialog [hidden] {display:none}
.demo-request-dialog {width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #505050;background:#111;color:#f6f6f2;overflow:auto;color-scheme:dark}
.demo-request-dialog::backdrop {background:#000c}
.demo-request-header {position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 28px;background:#111;border-bottom:1px solid #3b3b3b}
.demo-request-header h2 {font-size:28px;line-height:1.2;letter-spacing:-.035em}
.demo-request-close {min-height:44px;padding:8px 12px;border:1px solid #777;background:none;color:inherit;font:inherit;cursor:pointer}
.demo-request-form {padding:24px 28px 28px}
.demo-request-fields {display:grid;gap:18px}
.demo-request-form label {display:grid;gap:8px;font-size:15px;line-height:1.4}
.demo-request-form label small {color:#b8b8b4;font-size:13px}
.demo-request-form input,.demo-request-form select,.demo-request-form textarea {width:100%;min-width:0;min-height:48px;box-sizing:border-box;padding:11px 12px;border:1px solid #676767;border-radius:0;background:#1e1e1e;color:inherit;font:inherit;font-size:16px;line-height:1.5}
.demo-request-form textarea {resize:vertical;min-height:104px;max-height:240px}
.demo-request-form :is(input,select,textarea,button,a):focus-visible,.demo-request-close:focus-visible {outline:2px solid #fff;outline-offset:4px}
.demo-request-pair {display:grid;grid-template-columns:1fr 1fr;gap:16px}
.demo-request-submit {min-height:48px;padding:13px 18px;border:1px solid #f6f6f2;background:#f6f6f2;color:#111;font:inherit;font-weight:600;cursor:pointer}
.demo-request-submit:disabled {opacity:.65;cursor:wait}
.demo-request-status {margin:16px 0 0;font-size:15px;line-height:1.55;color:#d0d0cc}
.demo-request-status:empty {display:none}
.demo-request-success {padding:12px 0}
.demo-request-success h3 {font-size:30px;line-height:1.25;letter-spacing:-.035em;margin:0 0 14px}
.demo-request-success p {font-size:17px;line-height:1.6;color:#c3c3bf;margin:0}
.demo-request-alternative {font-size:14px;line-height:1.5;color:#b8b8b4;margin:16px 0 0}
.demo-request-alternative a {color:inherit;text-decoration:underline;text-underline-offset:3px}
.demo-request-honey {display:none!important}
@media(max-width:560px) {
  .demo-request-header {padding:16px 18px}
  .demo-request-header h2 {font-size:25px}
  .demo-request-form {padding:20px 18px}
  .demo-request-pair {grid-template-columns:1fr;gap:18px}
}
