.demo-banner { position: sticky; top: 0; z-index: 2000; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 20px; padding: 10px 20px; background: #fff2cf; color: #493710; border-bottom: 1px solid #d7b455; font: 13px/1.4 Inter, system-ui, sans-serif; }
.demo-banner strong, .demo-banner span { display: block; }
.demo-controls { display: flex; flex-wrap: wrap; gap: 8px; }
.demo-controls button { cursor: pointer; border: 1px solid #947329; background: #fff; color: #493710; border-radius: 6px; padding: 6px 10px; font: inherit; }
.demo-controls button:disabled { opacity: .6; cursor: wait; }
body:has(.demo-banner) .dash-sidebar { top: var(--demo-height, 70px); height: calc(100dvh - var(--demo-height, 70px) - var(--dashboard-banner-height, 42px)); }
#demo-status:empty { display: none; }
.demo-start { max-width: 660px; margin: 10vh auto; padding: 24px; font: 16px/1.6 system-ui, sans-serif; color: #142b3b; }
.demo-start button, .demo-entry a { display: inline-block; margin: 5px; padding: 10px 16px; background: #06295b; color: #fff; border: 0; border-radius: 8px; font: inherit; text-decoration: none; cursor: pointer; }
.demo-entry { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 18px 0; }
.demo-entry a { margin: 0; }
.demo-entry p { flex-basis: 100%; margin: 0; }
@media (max-width: 600px) { .demo-banner { padding: 8px 12px; font-size: 12px; } }
