.fj-demo-dialog { box-sizing:border-box; width:min(100% - 32px, 460px); max-height:calc(100vh - 32px); margin:auto; padding:0; border:1px solid #dddde2; border-radius:12px; box-shadow:0 24px 70px #171b2c40; color:#1a1a1c; background:#fff; font:15px/1.5 'Instrument Sans',sans-serif; }
.fj-demo-dialog::backdrop { background:#171b2c99; }
.fj-demo-form { position:relative; display:grid; gap:8px; padding:28px; }
.fj-demo-form h2 { margin:0; padding-right:32px; font-size:24px; line-height:1.25; }
.fj-demo-form > p:first-of-type { margin:0 0 12px; color:#585960; }
.fj-demo-form label { font-weight:600; font-size:14px; }
.fj-demo-form label span { color:#74757e; font-weight:400; }
.fj-demo-form input,.fj-demo-form textarea { box-sizing:border-box; width:100%; min-height:42px; padding:9px 11px; border:1px solid #c8c9cf; border-radius:6px; background:#fff; color:#1a1a1c; font:inherit; }
.fj-demo-form textarea { resize:vertical; }
.fj-demo-form input:focus,.fj-demo-form textarea:focus { outline:2px solid #4a5bd0; outline-offset:1px; }
.fj-demo-close { position:absolute; top:18px; right:18px; border:0; background:transparent; color:#585960; font:28px/1 sans-serif; cursor:pointer; }
.fj-demo-submit { min-height:44px; margin-top:6px; padding:10px 16px; border:1px solid #4a5bd0; border-radius:6px; background:#4a5bd0; color:#fff; font:600 15px 'Instrument Sans',sans-serif; cursor:pointer; }
.fj-demo-submit:disabled { opacity:.65; cursor:wait; }
.fj-demo-status { margin:0; color:#a63732; }
.fj-demo-status:empty { display:none; }
.fj-demo-status[data-success] { color:#287451; }
@media(max-width:480px) { .fj-demo-form { padding:22px; } }
