/* Product demo pages: extends css/tooplate-style.css. */
.swd-section { padding: 60px 0 80px; }
.swd-card {
    background: rgba(255, 255, 255, .58);
    backdrop-filter: blur(18px) saturate(180%);
    -webkit-backdrop-filter: blur(18px) saturate(180%);
    border: 1px solid rgba(255, 255, 255, .52);
    border-radius: 18px;
    box-shadow: 0 8px 32px rgba(14, 165, 233, .1), inset 0 1px 0 rgba(255, 255, 255, .65);
    padding: 28px;
    margin-bottom: 24px;
}
.swd-card h2 { font-size: 22px; margin: 0 0 12px; }
.swd-card p, .swd-card li { color: #575757; font-size: 15px; line-height: 1.65; }
.swd-card ol, .swd-card ul { padding-left: 20px; margin: 0; }
.swd-try { list-style: none; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0 0 !important; }
.swd-try li { background: rgba(14, 165, 233, .1); color: #0369a1; border-radius: 999px; padding: 6px 14px; font-size: 14px; }
.swd-code { display: block; font-family: Consolas, Menlo, monospace; font-size: 13px; background: #0c4a6e; color: #e0f2fe; border-radius: 12px; padding: 14px; white-space: pre-wrap; word-break: break-all; margin-top: 10px; }
.swd-status { color: #b91c1c; margin: 10px 0 0; }
.swd-cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.swd-cta .section-btn { display: inline-block; }
.swd-btn-ghost, .swd-btn-ghost:focus { background: rgba(255, 255, 255, .75); color: #0369a1; border: 1px solid rgba(14, 165, 233, .35); border-radius: 50px; padding: 11px 28px; font-size: 16px; display: inline-block; }
.swd-btn-ghost:hover { background: #fff; color: #0284c7; }
.swd-arrow { color: #f97316; font-weight: 600; }

/* Phone simulator */
.swd-phone { background: linear-gradient(160deg, #0c4a6e, #312e81); border-radius: 36px; padding: 18px; box-shadow: 0 24px 60px rgba(14, 165, 233, .28); max-width: 400px; margin: 0 auto; }
.swd-screen { background: #fff; border-radius: 22px; height: 460px; display: flex; flex-direction: column; overflow: hidden; }
.swd-screen .bar { background: linear-gradient(90deg, #0ea5e9, #6366f1); color: #fff; padding: 14px 16px; font-weight: 600; display: flex; justify-content: space-between; }
.swd-screen .log { flex: 1; overflow-y: auto; padding: 14px; display: flex; flex-direction: column; gap: 8px; }
.swd-screen .m { max-width: 85%; padding: 9px 12px; border-radius: 14px; font-size: 14px; line-height: 1.45; }
.swd-screen .m.bot { background: #f1f5f9; color: #353535; align-self: flex-start; }
.swd-screen .m.me { background: #0ea5e9; color: #fff; align-self: flex-end; }
.swd-screen .m.sys { align-self: center; color: #757575; font-size: 12px; }
.swd-screen form { display: flex; gap: 8px; padding: 10px; border-top: 1px solid #e2e8f0; margin: 0; }
.swd-screen input { flex: 1; padding: 10px 14px; border: 1px solid #cbd5e1; border-radius: 999px; font-size: 14px; }
.swd-screen button { border: 0; border-radius: 999px; padding: 10px 16px; font-weight: 600; background: #0ea5e9; color: #fff; }
.swd-screen button:disabled, .swd-screen input:disabled { opacity: .55; }
.swd-call { width: 100%; margin-top: 14px; border: 0; border-radius: 999px; background: #f97316; color: #fff; font-size: 16px; padding: 14px; transition: .3s; }
.swd-call:hover { background: #ea580c; }
.swd-call.end { background: #ef4444; }
