.demo-mode-banner {
    display: none;
    box-sizing: border-box;
    flex: 0 0 auto;
    align-self: stretch;
    width: 100%;
    max-width: 100%;
    border-bottom: 1px solid color-mix(in srgb, var(--info) 45%, var(--border) 55%);
    background: linear-gradient(
        90deg,
        color-mix(in srgb, var(--info) 18%, var(--surface) 82%) 0%,
        color-mix(in srgb, var(--primary) 12%, var(--surface) 88%) 100%
    );
    color: var(--gray-800, #1e293b);
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}

.demo-mode-banner-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 16px;
    padding: 10px 16px;
    font-size: 14px;
    line-height: 1.4;
}

.demo-mode-banner-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    font-weight: 800;
    font-size: 12px;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #fff;
    background: color-mix(in srgb, var(--info) 78%, #0e7490 22%);
}

.demo-mode-banner-text {
    font-weight: 600;
    color: var(--gray-700, #334155);
}

.demo-mode-banner-countdown {
    font-weight: 800;
    color: color-mix(in srgb, var(--info) 70%, var(--gray-900) 30%);
    font-variant-numeric: tabular-nums;
}

.demo-mode-banner-hint {
    color: var(--gray-500, #64748b);
    font-size: 13px;
}
