/* Native company demo form; shares the app request fields and backend. */
.company-demo-form { max-width:780px; margin:0 auto; padding:32px; border:1px solid #ead6ff; border-radius:8px; background:#f6f6f6; color:#41434a; font-family:Outfit,sans-serif; }
.company-demo-form h3 { margin:0 0 24px; padding-bottom:14px; border-bottom:1px solid #ead6ff; font-size:18px; line-height:1.4; color:#67458c; }
.company-demo-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:18px 16px; }
.company-demo-field { min-width:0; }
.company-demo-field label { display:block; margin-bottom:6px; font-size:13px; font-weight:500; }
.company-demo-field label span { color:#67458c; }
.company-demo-field input,.company-demo-field select { display:block; width:100%; height:48px; margin:0; padding:12px 14px; border:1px solid #dedde3; border-radius:0; background:#fff; color:#41434a; font:400 14px/22px Outfit,sans-serif; }
.company-demo-field input::placeholder { color:#727787; }
.company-demo-field input:focus,.company-demo-field select:focus { outline:2px solid #bb78ff; outline-offset:-2px; }
.company-demo-form [aria-invalid="true"] { border-color:#f04438; }
.company-demo-error { display:block; color:#d92d20; font-size:12px; line-height:1.5; margin-top:4px; }
.company-demo-error:empty { display:none; }
.company-demo-consent { display:flex; align-items:flex-start; gap:10px; margin:28px 0 0; font-size:13px; font-weight:400; line-height:1.6; }
.company-demo-consent input { width:18px; height:18px; flex:none; margin:2px 0 0; accent-color:#bb78ff; }
.company-demo-consent a { color:#67458c; text-decoration:underline; }
.company-demo-submit { width:100%; min-height:48px; margin-top:28px; border:0; background:#bb78ff; color:#000; font:600 14px Outfit,sans-serif; cursor:pointer; }
.company-demo-submit:hover { background:#c994ff; }
.company-demo-submit:disabled { opacity:.65; cursor:wait; }
.company-demo-submit:focus-visible { outline:2px solid #67458c; outline-offset:3px; }
#company-demo-status { margin:16px 0 0; font-size:14px; line-height:1.5; }
#company-demo-status:empty { display:none; }
@media(max-width:599px) { .company-demo-form { padding:20px; } .company-demo-grid { grid-template-columns:minmax(0,1fr); } }

#company-demo-status.company-demo-status-success { padding:14px 16px; border:1px solid #abefc6; border-radius:8px; background:#ecfdf3; color:#067647; font-weight:500; }
#company-demo-status.company-demo-status-error { padding:14px 16px; border:1px solid #fecdca; border-radius:8px; background:#fef3f2; color:#b42318; }
.company-demo-success { width:calc(100% - 40px); max-width:480px; max-height:calc(100dvh - 40px); overflow:auto; padding:40px 32px 32px; border:0; border-radius:12px; background:#fff; color:#41434a; text-align:center; box-shadow:0 16px 64px #0003; font-family:Outfit,sans-serif; }
.company-demo-success::backdrop { background:#19102299; }
.company-demo-success h2 { margin:16px 0 12px; color:#41434a; font-size:24px; font-weight:600; line-height:1.3; }
.company-demo-success p { margin:0; color:#666; font-size:16px; line-height:1.6; }
.company-demo-success-close { position:absolute; top:12px; right:12px; width:36px; height:36px; padding:0; border:0; background:transparent; color:#545454; font:28px/1 Outfit,sans-serif; cursor:pointer; }
.company-demo-check { width:120px; height:120px; margin:0 auto; position:relative; }
.company-demo-check-fallback { position:absolute; inset:15px; display:grid; place-items:center; border:3px solid #32b779; border-radius:50%; color:#32b779; background:#ecfdf3; font:56px/1 Outfit,sans-serif; }
.company-demo-check.is-animated .company-demo-check-fallback { display:none; }
.company-demo-success-done { width:100%; min-height:48px; margin-top:28px; border:0; background:#bb78ff; color:#000; font:600 14px Outfit,sans-serif; cursor:pointer; }
.company-demo-success-done:hover { background:#c994ff; }
.company-demo-success button:focus-visible { outline:2px solid #67458c; outline-offset:3px; }
@media(max-width:599px) { .company-demo-success { padding:36px 24px 24px; } .company-demo-success h2 { font-size:22px; } }
