/* Sample controls are separate from the product state and never cover an action. */
.demo-banner { display: grid; grid-template-columns: 1fr auto; gap: 4px 24px; margin: 28px 0 0; padding: 16px 20px; border: 1px solid #554535; border-radius: 12px; background: #211b15; color: #f4efe6; }
.demo-banner > strong { font-size: 13px; font-weight: 500; }
.demo-banner > strong::before { content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: #e3b23c; }
.demo-banner > span { grid-column: 1; font-size: 12px; line-height: 1.6; color: #bdb0a0; }
.demo-controls { grid-column: 2; grid-row: 1 / 3; display: flex; align-items: center; gap: 18px; font-size: 12px; }
.demo-controls label { display: flex; align-items: center; gap: 10px; color: #bdb0a0; }
.demo-controls select { min-height: 44px; max-width: 100%; background: #12100e; color: #f4efe6; border: 1px solid #554535; border-radius: 8px; padding: 8px 28px 8px 12px; font: inherit; color-scheme: dark; }
.demo-controls a { display: inline-flex; align-items: center; min-height: 44px; color: #f4efe6; white-space: nowrap; }
.live-demo-invite { font-size: 13px; color: #a99b8c; margin: 22px 0 0; }
.live-demo-invite a { display: inline-flex; align-items: center; min-height: 44px; color: #ff8b6f; }
.is-demo .live-demo-invite { display: none; }
@media (max-width: 900px) {
  .demo-banner { grid-template-columns: minmax(0,1fr); gap: 5px; padding: 14px 16px; }
  .demo-controls { grid-column: 1; grid-row: auto; flex-wrap: wrap; gap: 6px 18px; margin-top: 4px; }
  .demo-controls label { flex-wrap: wrap; gap: 4px 10px; }
}
