.opero-site .demo-preparation{max-width:920px;margin:0 auto;border:1px solid var(--line);padding:42px;border-radius:30px;background:#fff;box-shadow:var(--shadow-soft)}
.opero-site .demo-preparation h2{margin:0 0 14px;font-size:clamp(28px,3vw,42px);line-height:1.12;letter-spacing:-.045em}
.opero-site .demo-preparation-intro>p{color:var(--muted);line-height:1.7}
.opero-site .demo-preparation .demo-availability{background:#e9f6fc;border:1px solid #c7e8f7;border-radius:16px;padding:18px 20px;color:#16465e;font-size:14px;line-height:1.6}
.opero-site .demo-availability strong{display:block;margin-bottom:5px}
.opero-site .demo-preparation .full{grid-column:1/-1}
.opero-site .demo-preparation .field{display:flex;flex-direction:column;gap:7px;min-width:0}
.opero-site .demo-preparation .field label{font-size:13px;font-weight:700;color:var(--ink)}
.opero-site .demo-preparation .field label span{font-weight:400;color:var(--muted)}
.opero-site .demo-preparation .field input,.opero-site .demo-preparation .field select,.opero-site .demo-preparation .field textarea{box-sizing:border-box;width:100%;border:1px solid var(--line);border-radius:12px;background:#fafbf9;color:var(--ink);font:inherit;font-size:15px;padding:13px 14px}
.opero-site .demo-preparation .field textarea{resize:vertical;min-height:130px}
.opero-site .demo-preparation .field input:focus,.opero-site .demo-preparation .field select:focus,.opero-site .demo-preparation .field textarea:focus{outline:2px solid var(--accent);outline-offset:2px}
.opero-site .demo-selected-plan{padding:14px 18px;border-radius:12px;background:var(--soft);font-size:14px;font-weight:700}
.opero-site .demo-form-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:7px}
.opero-site .demo-form-actions>span{font-size:12px;color:var(--muted)}
.opero-site .demo-result{margin-top:32px}
.opero-site .demo-result[hidden],.opero-site .demo-selected-plan[hidden]{display:none}
.opero-site .demo-result pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:14px;line-height:1.7;background:#fff;padding:18px;border:1px solid var(--line);border-radius:12px;margin:18px 0 22px}
.opero-site #demo-result-title:focus{outline:2px solid var(--accent);outline-offset:6px}
@media(max-width:600px){.opero-site .demo-preparation{padding:25px 20px;border-radius:24px}.opero-site .demo-preparation .demo-availability{padding:15px}.opero-site .demo-result{padding:23px 18px}}
