.demo-card{background:var(--bg-2);border:1px solid var(--line);border-radius:16px;padding:1.6rem;box-shadow:var(--shadow-sm)}
.demo-drop{border:2px dashed var(--line);border-radius:12px;padding:2rem 1.2rem;text-align:center;transition:border-color .15s,background .15s}
.demo-drop.drag{border-color:var(--signal);background:var(--glow-soft)}
#demo-chart{width:100%;height:auto;background:#fff;border:1px solid var(--line);border-radius:10px;margin:.6rem 0}
.demo-busy{opacity:.6;pointer-events:none}

/* demo dropzone beauty */
.demo-drop { background: #fff; border: 2px dashed #C9D6EE; border-radius: 16px; padding: 2.2rem 1.6rem 2rem; box-shadow: var(--shadow-sm); transition: border-color .15s ease, background .15s ease, transform .15s ease; }
.demo-drop.drag { border-color: var(--signal); background: #F0F6FF; transform: scale(1.004); }
.demo-ico { width: 54px; height: 54px; border-radius: 50%; margin: 0 auto .85rem; display: flex; align-items: center; justify-content: center; background: linear-gradient(115deg, #2563EB, #0E9CB0); box-shadow: 0 10px 22px -12px rgba(37,99,235,.55); }
.demo-title { margin: .1rem 0 .55rem; font-size: 1.06rem; }

/* landing alignment & air */
.demo-drop { text-align: center; }
.demo-drop p, .demo-card p { max-width: 100%; margin-left: auto; margin-right: auto; }
.section-head + .lead, .section-head + p { text-align: center; max-width: 46rem; margin-left: auto; margin-right: auto; }
.section .hero-cta { margin-top: 1.6rem; }

/* nav dd tap */
.nav-dd.open .nav-dd-menu { display: block; }
