@import '_content/BlazorChat/BlazorChat.d9dhndpqvv.bundle.scp.css';
@import '_content/BlazorEmo/BlazorEmo.h4iw52rek1.bundle.scp.css';
@import '_content/BlazorRTE/BlazorRTE.03a4d5ag9t.bundle.scp.css';

/* /Components/Layout/MainLayout.razor.rz.scp.css */
#blazor-error-ui[b-ovcfxtjn8j] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-ovcfxtjn8j] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-2y1lrlqypj],
.components-reconnect-repeated-attempt-visible[b-2y1lrlqypj],
.components-reconnect-failed-visible[b-2y1lrlqypj],
.components-pause-visible[b-2y1lrlqypj],
.components-resume-failed-visible[b-2y1lrlqypj],
.components-rejoining-animation[b-2y1lrlqypj] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-2y1lrlqypj],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-2y1lrlqypj],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-2y1lrlqypj],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-2y1lrlqypj],
#components-reconnect-modal.components-reconnect-retrying[b-2y1lrlqypj],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-2y1lrlqypj],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-2y1lrlqypj],
#components-reconnect-modal.components-reconnect-failed[b-2y1lrlqypj],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-2y1lrlqypj] {
    display: block;
}


#components-reconnect-modal[b-2y1lrlqypj] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-2y1lrlqypj 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-2y1lrlqypj 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-2y1lrlqypj 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-2y1lrlqypj]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-2y1lrlqypj 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-2y1lrlqypj {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-2y1lrlqypj {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-2y1lrlqypj {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-2y1lrlqypj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-2y1lrlqypj] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-2y1lrlqypj] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-2y1lrlqypj] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-2y1lrlqypj] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-2y1lrlqypj] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-2y1lrlqypj] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-2y1lrlqypj 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-2y1lrlqypj] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-2y1lrlqypj {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/About.razor.rz.scp.css */
.about[b-epm73u591n] {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #222;
}

/* ── Hero ──────────────────────────────────────────────────────────── */
.about-hero[b-epm73u591n] {
    background: linear-gradient(135deg, var(--brand-navy-dark) 0%, var(--brand-navy) 100%);
    padding: 5rem 1.5rem 4rem;
    text-align: center;
    color: #fff;
}

.hero-inner[b-epm73u591n] {
    max-width: 640px;
    margin: 0 auto;
}

.hero-logo[b-epm73u591n] {
    width: 280px;
    height: auto;
    margin-bottom: 1.5rem;
    background: #fff;
    border-radius: 12px;
    padding: 0.75rem 1.25rem;
}

.hero-title[b-epm73u591n] {
    font-size: 2.4rem;
    font-weight: 800;
    margin: 0 0 1rem;
    line-height: 1.15;
}

.hero-tagline[b-epm73u591n] {
    font-size: 1.35rem;
    font-weight: 400;
    opacity: 0.9;
    margin: 0;
}

/* ── Sections ──────────────────────────────────────────────────────── */
.about-section[b-epm73u591n] {
    padding: 3.5rem 1.5rem;
    background: #fff;
}

.about-section--alt[b-epm73u591n] {
    background: #f4f6f9;
}

.section-inner[b-epm73u591n] {
    max-width: 760px;
    margin: 0 auto;
}

.section-title[b-epm73u591n] {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--brand-navy);
    margin: 0 0 1.25rem;
    text-align: center;
}

/* ── Body copy ─────────────────────────────────────────────────────── */
.about-intro[b-epm73u591n] {
    font-size: 1.05rem;
    line-height: 1.75;
    color: #444;
    margin: 0 0 1rem;
    text-align: center;
}

.about-body[b-epm73u591n] {
    font-size: 0.97rem;
    line-height: 1.7;
    color: #444;
    margin: 0 0 1rem;
}

/* ── Lists ─────────────────────────────────────────────────────────── */
.about-list[b-epm73u591n] {
    list-style: none;
    padding: 0;
    margin: 0 0 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.about-list li[b-epm73u591n] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.97rem;
    color: #333;
    line-height: 1.5;
}

.about-list li[b-epm73u591n]::before {
    content: '✓';
    color: var(--brand-green);
    font-weight: 700;
    flex-shrink: 0;
    margin-top: 0.05rem;
}

.features-list[b-epm73u591n] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 0.75rem 2rem;
}

.features-list li[b-epm73u591n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.95rem;
    color: #333;
    line-height: 1.5;
    padding: 0.5rem 0.75rem;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}

/* ── Callouts ──────────────────────────────────────────────────────── */
.about-callout[b-epm73u591n] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--brand-navy);
    text-align: center;
    margin: 1.25rem 0 0;
    padding: 0.875rem 1.25rem;
    background: #fff;
    border-radius: 8px;
    border-left: 3px solid var(--brand-blue);
}

.about-goal[b-epm73u591n] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--brand-navy);
    text-align: center;
    margin: 0.5rem 0 0;
    font-style: italic;
}

/* ── CTA ───────────────────────────────────────────────────────────── */
.about-cta[b-epm73u591n] {
    background: linear-gradient(135deg, var(--brand-navy-dark), var(--brand-navy));
    color: #fff;
    text-align: center;
    padding: 4rem 1.5rem;
}

.about-cta h2[b-epm73u591n] {
    font-size: 1.6rem;
    margin: 0 0 0.5rem;
}

.about-cta p[b-epm73u591n] {
    opacity: 0.8;
    margin: 0 0 2rem;
}

.btn-cta-primary[b-epm73u591n] {
    background: var(--brand-blue);
    color: #fff;
    padding: 0.875rem 2rem;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 700;
    text-decoration: none;
    transition: opacity 0.2s;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.btn-cta-primary:hover[b-epm73u591n] {
    opacity: 0.88;
}

/* ── Footer ────────────────────────────────────────────────────────── */
.about-footer[b-epm73u591n] {
    background: var(--brand-navy-dark);
    color: rgba(255, 255, 255, 0.5);
    text-align: center;
    padding: .25rem;
    font-size: 0.8rem;
}

.about-footer a[b-epm73u591n] {
    color: rgba(255, 255, 255, 0.7);
}

.about-footer a:hover[b-epm73u591n] {
    color: #fff;
}

/* ── Responsive ────────────────────────────────────────────────────── */
@media (max-width: 600px) {
    .hero-title[b-epm73u591n] {
        font-size: 1.8rem;
    }

    .hero-tagline[b-epm73u591n] {
        font-size: 1.1rem;
    }

    .section-title[b-epm73u591n] {
        font-size: 1.35rem;
    }

    .features-list[b-epm73u591n] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Admin.razor.rz.scp.css */
/* ─────────────────────────────────────────────────────────────────────────────
   Admin Login
   ───────────────────────────────────────────────────────────────────────────── */
.admin-login[b-1swm4r5s93] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--brand-navy-dark), var(--brand-navy));
}

.admin-login-card[b-1swm4r5s93] {
    background: #fff;
    border-radius: 14px;
    padding: 2.5rem;
    width: 100%;
    max-width: 360px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.35);
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: center;
}

    .admin-login-card h2[b-1swm4r5s93] {
        margin: 0;
        color: var(--brand-navy);
    }

.admin-password-input[b-1swm4r5s93] {
    width: 100%;
    box-sizing: border-box;
    padding: 0.75rem 1rem;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    font-size: 1rem;
    outline: none;
    transition: border-color 0.2s;
}

    .admin-password-input:focus[b-1swm4r5s93] {
        border-color: var(--brand-blue);
    }

.admin-error[b-1swm4r5s93] {
    color: var(--brand-red);
    font-size: 0.875rem;
    margin: 0;
}

.btn-admin-login[b-1swm4r5s93] {
    width: 100%;
    padding: 0.75rem;
    background: linear-gradient(135deg, var(--brand-navy), var(--brand-blue));
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
}

/* ─────────────────────────────────────────────────────────────────────────────
   Admin Layout & Header
   ───────────────────────────────────────────────────────────────────────────── */
.admin-layout[b-1swm4r5s93] {
    min-height: 100vh;
    background: #f0f2f5;
    padding: 1.5rem;
}

.admin-header[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.5rem;
}

    .admin-header h1[b-1swm4r5s93] {
        margin: 0;
        font-size: 1.5rem;
        color: var(--brand-navy);
        flex: 0 0 auto;
    }

.admin-header-center[b-1swm4r5s93] {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

.header-since-update[b-1swm4r5s93] {
    font-size: 0.8rem;
    color: #888;
    white-space: nowrap;
}

    .header-since-update strong[b-1swm4r5s93] {
        color: var(--brand-blue, #4a6fa5);
    }

.btn-admin-logout[b-1swm4r5s93] {
    background: none;
    border: 1px solid #ccc;
    border-radius: 6px;
    padding: 0.4rem 0.9rem;
    cursor: pointer;
    font-size: 0.85rem;
    color: #666;
}

/* ─────────────────────────────────────────────────────────────────────────────
   Header Actions
   ───────────────────────────────────────────────────────────────────────────── */
.admin-header-actions[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.refresh-countdown[b-1swm4r5s93] {
    font-size: 0.8rem;
    color: #999;
    font-variant-numeric: tabular-nums;
    min-width: 4.5rem;
    text-align: right;
}

.btn-admin-action[b-1swm4r5s93] {
    background: none;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 0.4rem 0.9rem;
    cursor: pointer;
    font-size: 0.85rem;
    color: #555;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    transition: background 0.15s;
}

    .btn-admin-action:hover[b-1swm4r5s93] {
        background: #f5f5f5;
    }


/* ─────────────────────────────────────────────────────────────────────────────
   Admin Health Dashboard
   ───────────────────────────────────────────────────────────────────────────── */
.admin-health-dashboard[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: 1.1fr 1.4fr 1fr;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.health-group[b-1swm4r5s93] {
    background: #fff;
    border-radius: 12px;
    padding: 1rem;
    box-shadow: 0 1px 4px rgba(0,0,0,0.07);
}

.health-group-title[b-1swm4r5s93] {
    font-size: 0.78rem;
    font-weight: 800;
    color: var(--brand-navy);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin-bottom: 0.75rem;
}

.health-kpi-grid[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(115px, 1fr));
    gap: 0.75rem;
}

.health-kpi-card[b-1swm4r5s93] {
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 10px;
    padding: 0.85rem;
    min-height: 86px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.health-kpi-label[b-1swm4r5s93] {
    font-size: 0.74rem;
    color: #777;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.health-kpi-value[b-1swm4r5s93] {
    font-size: 1.8rem;
    font-weight: 850;
    color: var(--brand-navy);
    line-height: 1.05;
}

.health-kpi-sub[b-1swm4r5s93] {
    margin-top: 0.35rem;
    font-size: 0.72rem;
    color: #888;
    white-space: nowrap;
}

@media (max-width: 1100px) {
    .admin-health-dashboard[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   Legacy Summary Cards / Shared Summary List Styles
   ───────────────────────────────────────────────────────────────────────────── */
.admin-cards[b-1swm4r5s93] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 2rem;
}

.admin-card[b-1swm4r5s93] {
    background: #fff;
    border-radius: 10px;
    padding: 1.25rem 1.5rem;
    flex: 1;
    min-width: 140px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.07);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
}

.card-icon[b-1swm4r5s93] {
    font-size: 1.5rem;
}

.card-value[b-1swm4r5s93] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--brand-navy);
}

/* ── SM summary card ───────────────────────────────────────────────────────── */
.card-sm-summary[b-1swm4r5s93],
.card-template-stats[b-1swm4r5s93] {
    justify-content: flex-start;
    gap: 0.5rem;
}

    .card-template-stats .sm-summary-list li[b-1swm4r5s93] {
        white-space: nowrap;
    }

.card-template-stats[b-1swm4r5s93] {
    min-width: 220px;
}

.sm-summary-list[b-1swm4r5s93] {
    list-style: none;
    padding: 0;
    margin: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

    .sm-summary-list li[b-1swm4r5s93] {
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-size: 0.88rem;
    }

.sm-summary-label[b-1swm4r5s93] {
    color: #777;
    font-weight: 500;
}

.sm-summary-value[b-1swm4r5s93] {
    font-weight: 700;
    color: var(--brand-navy);
    font-size: 1rem;
}

.unreviewed-alert[b-1swm4r5s93] {
    color: #e53935;
    font-weight: 700;
}

.sm-summary-divider[b-1swm4r5s93] {
    border-top: 1px solid #eee;
    margin: 0.2rem 0;
    padding: 0 !important;
    height: 0;
}

.bot-label[b-1swm4r5s93] {
    color: #c0392b;
}

.bot-value[b-1swm4r5s93] {
    color: #c0392b;
}

.human-label[b-1swm4r5s93] {
    color: #27ae60;
}

.human-value[b-1swm4r5s93] {
    color: #27ae60;
}

.card-visitor-breakdown .card-label[b-1swm4r5s93] {
    margin-top: 0.25rem;
}

.card-label[b-1swm4r5s93] {
    font-size: 0.75rem;
    color: #888;
    text-align: center;
}

/* ─────────────────────────────────────────────────────────────────────────────
   Shared Section / Table Styles
   ───────────────────────────────────────────────────────────────────────────── */
.admin-section[b-1swm4r5s93] {
    background: #fff;
    border-radius: 10px;
    padding: 1.25rem 1.5rem;
    margin-bottom: 1.5rem;
    box-shadow: 0 1px 4px rgba(0,0,0,0.07);
}

.admin-section-title[b-1swm4r5s93] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--brand-navy);
    margin: 0 0 1rem;
}

/* ─────────────────────────────────────────────────────────────────────────────
   Visitor & Data Tables
   ───────────────────────────────────────────────────────────────────────────── */
.admin-table-wrap[b-1swm4r5s93] {
    overflow-x: auto;
}

.admin-table[b-1swm4r5s93] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
}

    .admin-table th[b-1swm4r5s93] {
        text-align: left;
        padding: 0.5rem 0.75rem;
        border-bottom: 2px solid #e8e8e8;
        color: #888;
        font-weight: 600;
        white-space: nowrap;
    }

    .admin-table td[b-1swm4r5s93] {
        padding: 0.5rem 0.75rem;
        border-bottom: 1px solid #f0f0f0;
        vertical-align: middle;
    }

    .admin-table tr:last-child td[b-1swm4r5s93] {
        border-bottom: none;
    }

.role-chip[b-1swm4r5s93] {
    display: inline-block;
    padding: 0.15rem 0.5rem;
    border-radius: 10px;
    font-size: 0.72rem;
    font-weight: 700;
}

.role-sm[b-1swm4r5s93] {
    background: #e8f4fd;
    color: #1565c0;
}

.role-participant[b-1swm4r5s93] {
    background: #e8f5e9;
    color: #2e7d32;
}

.role-visitor[b-1swm4r5s93] {
    background: #f5f5f5;
    color: #666;
}

.role-bot[b-1swm4r5s93] {
    background: #FFE2E2;
    color: #FF6467;
}

.page-path[b-1swm4r5s93] {
    color: #aaa;
    font-size: 0.75rem;
}

.btn-map[b-1swm4r5s93] {
    font-size: 1rem;
    text-decoration: none;
    cursor: pointer;
    background: none;
    border: none;
    padding: 0;
    line-height: 1;
    display: inline-flex;
    align-items: center;
}

/* ─────────────────────────────────────────────────────────────────────────────
   Ratings
   ───────────────────────────────────────────────────────────────────────────── */
.ratings-list[b-1swm4r5s93] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.rating-row[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem 0;
    border-bottom: 1px solid #f0f0f0;
    flex-wrap: wrap;
}

    .rating-row:last-child[b-1swm4r5s93] {
        border-bottom: none;
    }

.star-on[b-1swm4r5s93] {
    color: #f39c12;
    font-size: 1.1rem;
}

.star-off[b-1swm4r5s93] {
    color: #ddd;
    font-size: 1.1rem;
}

.rating-comment-text[b-1swm4r5s93] {
    font-style: italic;
    color: #555;
    font-size: 0.875rem;
    margin: 0;
    flex: 1;
}

.rating-date[b-1swm4r5s93] {
    font-size: 0.75rem;
    color: #aaa;
    white-space: nowrap;
}

/* ─────────────────────────────────────────────────────────────────────────────
   Visitor / Regional / Country Grid Layout
   ───────────────────────────────────────────────────────────────────────────── */
.grids-container[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.grid-section[b-1swm4r5s93] {
    margin-bottom: 0;
    overflow: hidden;
}

    .grid-section .admin-table-wrap[b-1swm4r5s93] {
        max-height: 500px;
        overflow-y: auto;
        overflow-x: auto;
    }

.sm-section .admin-table-wrap[b-1swm4r5s93] {
    max-height: 500px;
    overflow-y: auto;
}

.grid-section .admin-table thead th[b-1swm4r5s93],
.sm-section .admin-table thead th[b-1swm4r5s93] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #f8f8f8;
}

@media (max-width: 900px) {
    .grids-container[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   Legacy Bar Chart Styles
   ───────────────────────────────────────────────────────────────────────────── */
.chart-area[b-1swm4r5s93] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.chart-bars[b-1swm4r5s93] {
    display: flex;
    align-items: flex-end;
    gap: 3px;
    height: 120px;
    padding: 0 0.5rem;
}

.chart-col[b-1swm4r5s93] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    height: 100%;
    cursor: default;
}

.bar-wrap[b-1swm4r5s93] {
    display: flex;
    align-items: flex-end;
    gap: 1px;
    height: 100%;
    width: 100%;
    justify-content: center;
}

.bar[b-1swm4r5s93] {
    width: 45%;
    border-radius: 2px 2px 0 0;
    min-height: 2px;
    transition: height 0.3s;
}

.bar-visits[b-1swm4r5s93] {
    background: rgb(102, 126, 234);
}

.bar-unique[b-1swm4r5s93] {
    background: rgb(229, 62, 62);
}

.bar-label[b-1swm4r5s93] {
    font-size: 0.6rem;
    color: #aaa;
    margin-top: 2px;
}

.chart-legend[b-1swm4r5s93] {
    display: flex;
    gap: 1.5rem;
    font-size: 0.75rem;
    color: #666;
    padding-left: 0.5rem;
}

.legend-dot[b-1swm4r5s93] {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin-right: 0.3rem;
    vertical-align: middle;
}

    .legend-dot.visits[b-1swm4r5s93] {
        background: rgb(102, 126, 234);
    }

    .legend-dot.unique[b-1swm4r5s93] {
        background: rgb(229, 62, 62);
    }

/* ─────────────────────────────────────────────────────────────────────────────
   Header Actions Duplicate Legacy Block
   ───────────────────────────────────────────────────────────────────────────── */
.admin-header-actions[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.btn-admin-action[b-1swm4r5s93] {
    background: none;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 0.4rem 0.9rem;
    cursor: pointer;
    font-size: 0.85rem;
    color: #555;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    transition: background 0.15s;
}

    .btn-admin-action:hover[b-1swm4r5s93] {
        background: #f5f5f5;
    }

/* ─────────────────────────────────────────────────────────────────────────────
   Visits Line Chart
   ───────────────────────────────────────────────────────────────────────────── */
/* Promoted traffic trend card */
.traffic-chart-section[b-1swm4r5s93] {
    padding: 1.4rem 1.5rem 1.25rem;
    border-radius: 14px;
    margin-bottom: 1.5rem;
}

.traffic-chart-header[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: minmax(180px, 0.8fr) minmax(360px, 1.5fr) minmax(320px, 1.2fr);
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
}

.traffic-chart-title-wrap[b-1swm4r5s93] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

    .traffic-chart-title-wrap .admin-section-title[b-1swm4r5s93] {
        margin: 0;
        font-size: 1.05rem;
    }

.traffic-chart-month[b-1swm4r5s93] {
    font-size: 0.82rem;
    color: #888;
    font-weight: 600;
}

.traffic-chart-summary[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: repeat(3, minmax(100px, 1fr));
    gap: 0.7rem;
}

.traffic-chart-stat[b-1swm4r5s93] {
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 10px;
    padding: 0.65rem 0.75rem;
    min-width: 0;
}

.traffic-chart-stat-value[b-1swm4r5s93] {
    display: block;
    color: var(--brand-navy);
    font-weight: 850;
    font-size: 1.25rem;
    line-height: 1.1;
    white-space: nowrap;
}

.traffic-chart-stat-label[b-1swm4r5s93] {
    display: block;
    margin-top: 0.25rem;
    color: #888;
    font-size: 0.72rem;
    font-weight: 700;
    white-space: nowrap;
}

.traffic-chart-stat-muted .traffic-chart-stat-value[b-1swm4r5s93] {
    color: #777;
    font-size: 1.05rem;
}

.traffic-chart-controls[b-1swm4r5s93] {
    justify-content: flex-end;
}

.traffic-chart-section .chart-scroll[b-1swm4r5s93] {
    padding-top: 0.25rem;
}

.traffic-chart-section .line-chart[b-1swm4r5s93] {
    height: 280px;
}

@media (max-width: 1200px) {
    .traffic-chart-header[b-1swm4r5s93] {
        grid-template-columns: 1fr;
        align-items: stretch;
    }

    .traffic-chart-controls[b-1swm4r5s93] {
        justify-content: space-between;
    }
}

@media (max-width: 700px) {
    .traffic-chart-summary[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }

    .traffic-chart-controls[b-1swm4r5s93] {
        align-items: flex-start;
        flex-direction: column;
    }
}

.chart-header[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    margin-bottom: 0.75rem;
    gap: 0.5rem;
}

    .chart-header .admin-section-title[b-1swm4r5s93] {
        margin: 0;
    }

.chart-month-stats[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    font-size: 1.1rem;
    color: #666;
}

    .chart-month-stats strong[b-1swm4r5s93] {
        color: var(--brand-navy);
    }

.chart-stat-bots[b-1swm4r5s93] {
    font-size: 0.85rem;
    color: #aaa;
}

.chart-scroll[b-1swm4r5s93] {
    overflow-x: auto;
    padding-bottom: 0.5rem;
}

.line-chart[b-1swm4r5s93] {
    width: 100%;
    min-width: 500px;
    height: 260px;
    display: block;
    overflow: visible;
}

.chart-legend[b-1swm4r5s93] {
    display: flex;
    gap: 1.5rem;
    font-size: 0.75rem;
    color: #666;
}

.legend-line[b-1swm4r5s93] {
    display: inline-block;
    width: 20px;
    height: 3px;
    border-radius: 2px;
    margin-right: 0.3rem;
    vertical-align: middle;
}

    .legend-line.visits[b-1swm4r5s93] {
        background: rgb(102, 126, 234);
    }

    .legend-line.unique[b-1swm4r5s93] {
        background: rgb(229, 62, 62);
    }

    .legend-line.bots[b-1swm4r5s93] {
        background: rgb(156, 163, 175);
    }

.sortable[b-1swm4r5s93] {
    cursor: pointer;
    user-select: none;
    white-space: nowrap;
}

    .sortable:hover[b-1swm4r5s93] {
        background: #f5f5f5;
    }

.sort-icon[b-1swm4r5s93] {
    font-size: 0.65rem;
    opacity: 0.6;
    margin-left: 0.2rem;
}

.chart-controls[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    gap: 1rem;
    justify-self: end;
}

.chart-nav[b-1swm4r5s93] {
    display: flex;
    gap: 0.25rem;
}

.btn-chart-nav[b-1swm4r5s93] {
    background: none;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 0.25rem 0.6rem;
    cursor: pointer;
    font-size: 1rem;
    color: #555;
    line-height: 1;
    transition: background 0.15s;
}

    .btn-chart-nav:hover:not(:disabled)[b-1swm4r5s93] {
        background: #f0f0f0;
    }

    .btn-chart-nav:disabled[b-1swm4r5s93] {
        opacity: 0.35;
        cursor: default;
    }

/* ─────────────────────────────────────────────────────────────────────────────
   Role Breakdown / Chips
   ───────────────────────────────────────────────────────────────────────────── */
.card-role-breakdown[b-1swm4r5s93] {
    align-items: flex-start;
    min-width: 160px;
    flex: 1;
}

.card-breakdown-title[b-1swm4r5s93] {
    font-weight: 700;
    color: var(--brand-navy);
    margin-bottom: 0.4rem;
}

.role-breakdown-list[b-1swm4r5s93] {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

    .role-breakdown-list li[b-1swm4r5s93] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        font-size: 1rem;
        gap: 0.5rem;
    }

        .role-breakdown-list li span:last-child[b-1swm4r5s93] {
            font-weight: 600;
            color: var(--brand-navy);
            min-width: 2ch;
            text-align: right;
        }

/* ─────────────────────────────────────────────────────────────────────────────
   Browser & Device Section
   ───────────────────────────────────────────────────────────────────────────── */
.browser-device-section[b-1swm4r5s93] {
}

.browser-device-grids[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

@media (max-width: 700px) {
    .browser-device-grids[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }
}

.admin-subsection-title[b-1swm4r5s93] {
    font-size: 0.85rem;
    font-weight: 600;
    color: #666;
    margin: 0 0 0.5rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

/* browser chip */
.browser-chip[b-1swm4r5s93] {
    display: inline-block;
    padding: 1px 7px;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    background: #e8eaf6;
    color: #3949ab;
}

.bot-reason-chip[b-1swm4r5s93] {
    display: inline-block;
    padding: 1px 7px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 600;
    background: #fdecea;
    color: #c62828;
    max-width: 160px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
}

/* device chips */
.device-chip[b-1swm4r5s93] {
    display: inline-block;
    padding: 1px 7px;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    background: #e8f5e9;
    color: #388e3c;
}

    .device-chip.device-mobile[b-1swm4r5s93] {
        background: #fff3e0;
        color: #e65100;
    }

    .device-chip.device-tablet[b-1swm4r5s93] {
        background: #e3f2fd;
        color: #1565c0;
    }

    .device-chip.device-desktop[b-1swm4r5s93] {
        background: #e8f5e9;
        color: #388e3c;
    }

    .device-chip.device-unknown[b-1swm4r5s93] {
        background: #f5f5f5;
        color: #9e9e9e;
    }

/* share bar */
.share-bar-wrap[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-width: 80px;
}

.share-bar[b-1swm4r5s93] {
    height: 8px;
    border-radius: 4px;
    background: linear-gradient(90deg, rgb(102,126,234), rgb(118,75,162));
    transition: width 0.3s ease;
    min-width: 2px;
}

.share-label[b-1swm4r5s93] {
    font-size: 0.72rem;
    color: #888;
    white-space: nowrap;
}

/* ─────────────────────────────────────────────────────────────────────────────
   Team Activity + Browser/Device Row
   ───────────────────────────────────────────────────────────────────────────── */
.sm-browser-row[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: 2fr 2fr;
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}

    .sm-browser-row .sm-section[b-1swm4r5s93] {
        min-width: 0;
    }

    .sm-browser-row .browser-device-section[b-1swm4r5s93] {
        min-width: 0;
    }

/* ─────────────────────────────────────────────────────────────────────────────
   Ratings + Feedback Row
   ───────────────────────────────────────────────────────────────────────────── */
.ratings-feedback-row[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: 2fr minmax(200px, 1fr);
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}

    .ratings-feedback-row .ratings-section[b-1swm4r5s93],
    .ratings-feedback-row .feedback-section[b-1swm4r5s93] {
        min-width: 0;
    }

/* ─────────────────────────────────────────────────────────────────────────────
   Empty States
   ───────────────────────────────────────────────────────────────────────────── */
.admin-empty-state[b-1swm4r5s93] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 2rem 1rem;
    text-align: center;
    color: #aaa;
}

.admin-empty-icon[b-1swm4r5s93] {
    font-size: 2rem;
    line-height: 1;
    opacity: 0.4;
}

.admin-empty-state p[b-1swm4r5s93] {
    margin: 0;
    font-size: 0.88rem;
}

.admin-empty-hint[b-1swm4r5s93] {
    font-size: 0.78rem !important;
    opacity: 0.7;
}

@media (max-width: 900px) {
    .sm-browser-row[b-1swm4r5s93],
    .ratings-feedback-row[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }
}

.referer-cell[b-1swm4r5s93] {
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

tr.row-sm-highlight td[b-1swm4r5s93] {
    background-color: rgba(102, 126, 234, 0.15);
    outline: 1px solid rgba(102, 126, 234, 0.4);
}

tr.row-sm-selected td[b-1swm4r5s93] {
    background-color: rgba(102, 126, 234, 0.12);
}

.admin-table tbody tr[title][b-1swm4r5s93] {
    cursor: pointer;
}

/* ─────────────────────────────────────────────────────────────────────────────
   Team / Session / Participant Drill-down Grids
   ───────────────────────────────────────────────────────────────────────────── */

.sm-expand-cell[b-1swm4r5s93] {
    width: 28px;
    padding: 0 4px !important;
    text-align: center;
}

.btn-sm-expand[b-1swm4r5s93] {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--brand-blue);
    font-size: 0.65rem;
    padding: 3px 5px;
    border-radius: 3px;
    transition: background 0.15s;
    line-height: 1;
}

    .btn-sm-expand:hover[b-1swm4r5s93] {
        background: rgba(102, 126, 234, 0.12);
    }

.sm-parent-row[b-1swm4r5s93] {
    cursor: pointer;
}

.sm-row-expanded td[b-1swm4r5s93] {
    background-color: rgba(102, 126, 234, 0.06);
    border-bottom: none;
}

/* Subgrid container row — no hover effect, no padding bleed */
.sm-subgrid-row td[b-1swm4r5s93] {
    padding: 0 !important;
    background: #f4f6fb;
    border-top: none;
    border-bottom: 2px solid rgba(102, 126, 234, 0.18);
}

.sm-subgrid-wrap[b-1swm4r5s93] {
    padding: 0.5rem 1rem 0.75rem 2.75rem;
}

.sm-subgrid[b-1swm4r5s93] {
    width: 100%;
    font-size: 0.78rem;
    border-collapse: collapse;
}

    .sm-subgrid thead th[b-1swm4r5s93] {
        background: rgba(102, 126, 234, 0.1);
        font-size: 0.72rem;
        font-weight: 600;
        color: var(--brand-navy);
        padding: 6px 20px;
        white-space: nowrap;
    }

    .sm-subgrid tbody td[b-1swm4r5s93] {
        padding: 5px 20px;
        border-bottom: 1px solid #e8eaf0;
        white-space: nowrap;
    }

    .sm-subgrid tbody tr:last-child td[b-1swm4r5s93] {
        border-bottom: none;
    }

.sm-session-name[b-1swm4r5s93] {
    font-weight: 500;
    color: var(--brand-navy);
    white-space: normal;
    min-width: 160px;
}

.sm-subgrid-loading[b-1swm4r5s93] {
    padding: 0.6rem 1rem 0.6rem 2.75rem;
    color: #888;
    font-size: 0.82rem;
    font-style: italic;
}

/* Center-align numeric columns in the SM subgrid (Sessions, Participants, etc.)
   These start at col 4 in the SM subgrid — leave col 1-3 left-aligned */
.sm-subgrid thead th:nth-child(n+4)[b-1swm4r5s93],
.sm-subgrid tbody td:nth-child(n+4)[b-1swm4r5s93] {
    text-align: center;
}

/* Extra left padding on "Last Hit" (col 5 in visitor subgrid) */
.sm-subgrid thead th:nth-child(5)[b-1swm4r5s93],
.sm-subgrid tbody td:nth-child(5)[b-1swm4r5s93] {
    padding-left: 36px;
}

/* ── Sessions subgrid (inside SM expand) — overrides for the two extra leading columns ── */
.sm-sessions-subgrid thead th:nth-child(-n+5)[b-1swm4r5s93],
.sm-sessions-subgrid tbody td:nth-child(-n+5)[b-1swm4r5s93] {
    text-align: left;
}

.sm-sessions-subgrid thead th:nth-child(n+6)[b-1swm4r5s93],
.sm-sessions-subgrid tbody td:nth-child(n+6)[b-1swm4r5s93] {
    text-align: center;
}

.sm-session-expand-cell[b-1swm4r5s93] {
    width: 28px;
    text-align: center !important;
    padding: 4px 6px !important;
}

/* ── Nested participant sub-subgrid ── */
.session-participants-row td[b-1swm4r5s93] {
    padding: 0 !important;
    background: #edf0fa;
    border-bottom: 1px solid rgba(102, 126, 234, 0.15);
}

.session-participants-wrap[b-1swm4r5s93] {
    padding: 0.35rem 1rem 0.45rem 3.5rem;
}

.session-participants-loading[b-1swm4r5s93] {
    padding: 0.35rem 1rem 0.35rem 3.5rem;
    color: #888;
    font-size: 0.78rem;
    font-style: italic;
}

.session-participants-table[b-1swm4r5s93] {
    font-size: 0.75rem;
    border-collapse: collapse;
    width: auto;
}

    .session-participants-table thead th[b-1swm4r5s93] {
        background: rgba(102, 126, 234, 0.12);
        font-size: 0.7rem;
        font-weight: 600;
        color: var(--brand-navy);
        padding: 3px 12px;
        white-space: nowrap;
    }

    .session-participants-table tbody td[b-1swm4r5s93] {
        padding: 3px 12px;
        border-bottom: 1px solid #dde2ee;
        white-space: nowrap;
    }

    .session-participants-table tbody tr:last-child td[b-1swm4r5s93] {
        border-bottom: none;
    }

/* ─────────────────────────────────────────────────────────────────────────────
   Visitor Detail Expandable Table
   ───────────────────────────────────────────────────────────────────────────── */

/* Table-layout fixed is required for resize: horizontal to work on <th> */
.visitor-table[b-1swm4r5s93] {
    table-layout: fixed;
    width: max-content;
    min-width: 100%;
}

/* Resizable header cells — default auto-stretch columns */
.vt-resizable[b-1swm4r5s93] {
    overflow: hidden;
    resize: horizontal;
    min-width: 60px;
    box-sizing: border-box;
    position: relative;
    padding: 0 !important; /* padding lives inside .sort-btn */
}

/* Compact columns — explicit width just wide enough for header + sort icon */
.vt-narrow[b-1swm4r5s93] {
    width: 80px;
    min-width: 70px;
    white-space: nowrap;
}

/* Narrow expand-toggle column */
.vt-expand-cell[b-1swm4r5s93] {
    width: 28px;
    min-width: 28px;
    padding: 0 4px !important;
    text-align: center;
    overflow: visible;
}

/* Sort button inside <th> — fills all clickable space, leaving right edge for resize grip */
.sort-btn[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    gap: 0;
    width: calc(100% - 6px);
    background: none;
    border: none;
    cursor: pointer;
    font: inherit;
    font-size: 0.82rem;
    font-weight: 600;
    color: #888;
    text-align: left;
    padding: 0.5rem 0.75rem;
    white-space: nowrap;
    user-select: none;
}

    .sort-btn:hover[b-1swm4r5s93] {
        background: #f5f5f5;
    }

/* Give the resize handle a visible drag affordance on hover */
.vt-resizable:hover[b-1swm4r5s93]::after {
    content: '';
    position: absolute;
    right: 0;
    top: 20%;
    height: 60%;
    width: 3px;
    background: rgba(102, 126, 234, 0.45);
    border-radius: 2px;
    pointer-events: none;
}

/* Visitor subgrid — outer indent wrapper */
.visitor-subgrid-wrap[b-1swm4r5s93] {
    padding: 0.5rem 1rem 0.75rem 2.5rem;
}

/* Visitor subgrid — horizontal scroll so long page paths never squeeze date columns */
.visitor-subgrid-scroll[b-1swm4r5s93] {
    overflow-x: auto;
}

    /* Allow the visitor subgrid table to size to its content — override the shared sm-subgrid rules */
    .visitor-subgrid-scroll .sm-subgrid[b-1swm4r5s93] {
        width: auto;
        min-width: 100%;
        table-layout: auto;
    }

        /* Give date columns a fixed minimum so they never compress */
        .visitor-subgrid-scroll .sm-subgrid td:nth-child(4)[b-1swm4r5s93],
        .visitor-subgrid-scroll .sm-subgrid th:nth-child(4)[b-1swm4r5s93],
        .visitor-subgrid-scroll .sm-subgrid td:nth-child(5)[b-1swm4r5s93],
        .visitor-subgrid-scroll .sm-subgrid th:nth-child(5)[b-1swm4r5s93] {
            min-width: 140px;
            white-space: nowrap;
        }

        /* Page column — allow it to grow freely, pushing scroll when long */
        .visitor-subgrid-scroll .sm-subgrid td:nth-child(3)[b-1swm4r5s93],
        .visitor-subgrid-scroll .sm-subgrid th:nth-child(3)[b-1swm4r5s93] {
            white-space: nowrap;
        }

/* ─────────────────────────────────────────────────────────────────────────────
   Visitor Detail Header / Bot Tinting / Feedback Styles
   ───────────────────────────────────────────────────────────────────────────── */
.visitor-detail-header[b-1swm4r5s93] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

    .visitor-detail-header .admin-section-title[b-1swm4r5s93] {
        margin: 0;
        flex-shrink: 0;
    }

.visitor-detail-stats[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    font-size: 0.8rem;
    color: #666;
    flex: 1;
}

    .visitor-detail-stats strong[b-1swm4r5s93] {
        color: var(--brand-navy);
    }

.vd-stat-sep[b-1swm4r5s93] {
    color: #ccc;
}

.vd-stat-month[b-1swm4r5s93] {
    font-style: italic;
    color: #aaa;
}

/* Bot row tinting — parent and child rows */
.row-bot td[b-1swm4r5s93] {
    background-color: #fff5f5 !important;
    color: #b71c1c;
    opacity: 0.82;
}

.row-bot.sm-subgrid-row td[b-1swm4r5s93] {
    background-color: #fff0f0 !important;
}

.sm-subgrid .row-bot td[b-1swm4r5s93] {
    background-color: #fff0f0 !important;
    color: #b71c1c;
}

/* Template column — give it room for longer names */
.sm-subgrid-wrap .sm-subgrid td:nth-child(2)[b-1swm4r5s93],
.sm-subgrid-wrap .sm-subgrid th:nth-child(2)[b-1swm4r5s93] {
    min-width: 11rem;
    white-space: nowrap;
}

.feedback-row[b-1swm4r5s93] {
    cursor: pointer;
}

.row-reviewed td[b-1swm4r5s93] {
    background: #fafbfc;
}

.row-unreviewed td[b-1swm4r5s93] {
    background: #fffdf7;
}

.feedback-type-chip[b-1swm4r5s93] {
    display: inline-block;
    padding: 0.18rem 0.6rem;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 700;
}

.feedback-type-general-feedback[b-1swm4r5s93] {
    background: #e8f0fb;
    color: #2d5d97;
}

.feedback-type-feature-request[b-1swm4r5s93] {
    background: #ecf7ef;
    color: #2a7a48;
}

.feedback-type-bug-report[b-1swm4r5s93] {
    background: #fdeceb;
    color: #c0392b;
}

.feedback-preview[b-1swm4r5s93] {
    max-width: 320px;
    color: #555;
}

.feedback-reviewed-badge[b-1swm4r5s93] {
    display: inline-block;
    padding: 0.18rem 0.55rem;
    border-radius: 999px;
    background: #e8f5e9;
    color: #2e7d32;
    font-size: 0.72rem;
    font-weight: 700;
}

.btn-mark-reviewed[b-1swm4r5s93] {
    border: none;
    border-radius: 6px;
    padding: 0.4rem 0.7rem;
    background: var(--brand-green);
    color: #fff;
    font-size: 0.75rem;
    font-weight: 700;
    cursor: pointer;
}

    .btn-mark-reviewed:hover[b-1swm4r5s93] {
        background: #23663c;
    }

.feedback-full-comment[b-1swm4r5s93] {
    padding: 0.8rem 1rem 0.9rem 2.75rem;
}

    .feedback-full-comment p[b-1swm4r5s93] {
        margin: 0;
        color: #444;
        line-height: 1.55;
        white-space: pre-wrap;
    }

@media (max-width: 700px) {
    .feedback-preview[b-1swm4r5s93] {
        max-width: 180px;
    }
}
/* ── Launch Pulse: Today + Funnel + Recent Activity ─────────────────────── */
.admin-launch-pulse[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: minmax(220px, 0.9fr) minmax(300px, 1.25fr) minmax(280px, 1.1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.pulse-panel[b-1swm4r5s93] {
    background: #fff;
    border-radius: 12px;
    padding: 1rem;
    box-shadow: 0 1px 4px rgba(0,0,0,0.07);
    min-width: 0;
}

.pulse-panel-header[b-1swm4r5s93] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.9rem;
}

    .pulse-panel-header h2[b-1swm4r5s93] {
        margin: 0;
        font-size: 0.95rem;
        font-weight: 800;
        color: var(--brand-navy);
    }

    .pulse-panel-header span[b-1swm4r5s93] {
        color: #999;
        font-size: 0.72rem;
        white-space: nowrap;
    }

.today-kpi-list[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
}

.today-kpi[b-1swm4r5s93] {
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 10px;
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.today-kpi-value[b-1swm4r5s93] {
    font-size: 1.55rem;
    line-height: 1;
    font-weight: 850;
    color: var(--brand-navy);
}

.today-kpi-label[b-1swm4r5s93] {
    font-size: 0.7rem;
    color: #777;
    line-height: 1.2;
}

.since-refresh-card[b-1swm4r5s93] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 0.75rem;
    align-items: center;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid #edf0f6;
    font-size: 0.76rem;
    color: #777;
}

    .since-refresh-card strong[b-1swm4r5s93] {
        color: var(--brand-blue);
    }

.since-refresh-title[b-1swm4r5s93] {
    width: 100%;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 800;
    font-size: 0.66rem;
}

.funnel-list[b-1swm4r5s93] {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.funnel-step-top[b-1swm4r5s93] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.25rem;
}

.funnel-step-label[b-1swm4r5s93] {
    color: #666;
    font-size: 0.78rem;
    font-weight: 700;
}

.funnel-step-value[b-1swm4r5s93] {
    color: var(--brand-navy);
    font-size: 0.85rem;
    font-weight: 850;
    font-variant-numeric: tabular-nums;
}

.funnel-bar-wrap[b-1swm4r5s93] {
    height: 8px;
    background: #eef1f7;
    border-radius: 999px;
    overflow: hidden;
}

.funnel-bar[b-1swm4r5s93] {
    height: 100%;
    min-width: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgb(102,126,234), rgb(118,75,162));
}

.funnel-step-sub[b-1swm4r5s93] {
    margin-top: 0.2rem;
    color: #999;
    font-size: 0.68rem;
}

.recent-activity-list[b-1swm4r5s93] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    max-height: 285px;
    overflow-y: auto;
}

.recent-activity-item[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr) auto;
    gap: 0.55rem;
    align-items: center;
    padding: 0.45rem 0;
    border-bottom: 1px solid #f1f2f5;
}

    .recent-activity-item:last-child[b-1swm4r5s93] {
        border-bottom: none;
    }

.recent-activity-icon[b-1swm4r5s93] {
    font-size: 0.95rem;
    text-align: center;
}

.recent-activity-copy[b-1swm4r5s93] {
    min-width: 0;
}

.recent-activity-title[b-1swm4r5s93] {
    color: var(--brand-navy);
    font-size: 0.78rem;
    font-weight: 750;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.recent-activity-sub[b-1swm4r5s93] {
    color: #999;
    font-size: 0.68rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.recent-activity-time[b-1swm4r5s93] {
    color: #aaa;
    font-size: 0.68rem;
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

.admin-empty-state--compact[b-1swm4r5s93] {
    padding: 1.25rem 0.5rem;
}

@media (max-width: 1100px) {
    .admin-launch-pulse[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }
}


/* ── Phase 3: Today + Funnel snapshot ───────────────────────────────────── */
.admin-pulse-grid[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: 0.95fr 1.35fr;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

    .admin-pulse-grid .pulse-panel[b-1swm4r5s93] {
        margin-bottom: 0;
    }

/* ── Phase 3: Recent Activity Feed ──────────────────────────────────────── */
.recent-activity-section[b-1swm4r5s93] {
    padding: 1.35rem 1.5rem;
}

.recent-activity-header[b-1swm4r5s93] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

    .recent-activity-header .admin-section-title[b-1swm4r5s93] {
        margin: 0 0 0.2rem;
    }

    .recent-activity-header p[b-1swm4r5s93] {
        margin: 0;
        font-size: 0.82rem;
        color: #888;
    }

.recent-activity-count[b-1swm4r5s93] {
    flex: 0 0 auto;
    background: #f5f7fb;
    border: 1px solid #e5ebf5;
    border-radius: 999px;
    padding: 0.25rem 0.65rem;
    font-size: 0.75rem;
    color: #777;
    white-space: nowrap;
}

.recent-activity-timeline[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem 1rem;
}

.recent-activity-event[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
    gap: 0.65rem;
    align-items: flex-start;
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 10px;
    padding: 0.75rem;
}

.recent-activity-dot[b-1swm4r5s93] {
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background: #fff;
    border: 1px solid #dde6f3;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

.recent-activity-body[b-1swm4r5s93] {
    min-width: 0;
}

.recent-activity-title-row[b-1swm4r5s93] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.75rem;
}

.recent-activity-title[b-1swm4r5s93] {
    font-size: 0.84rem;
    font-weight: 750;
    color: var(--brand-navy);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.recent-activity-time[b-1swm4r5s93] {
    flex: 0 0 auto;
    font-size: 0.72rem;
    color: #999;
    white-space: nowrap;
}

.recent-activity-sub[b-1swm4r5s93] {
    margin-top: 0.15rem;
    font-size: 0.76rem;
    color: #777;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 1100px) {
    .admin-pulse-grid[b-1swm4r5s93],
    .recent-activity-timeline[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 700px) {
    .recent-activity-header[b-1swm4r5s93] {
        flex-direction: column;
        align-items: stretch;
    }

    .recent-activity-count[b-1swm4r5s93] {
        width: fit-content;
    }
}

/* ── Phase 4: Today Strip + Launch Funnel ───────────────────────────────── */
.admin-today-strip[b-1swm4r5s93] {
    margin-bottom: 1rem;
}

.today-strip-card[b-1swm4r5s93] {
    background: #fff;
    border-radius: 12px;
    padding: 1rem 1.25rem;
    box-shadow: 0 1px 4px rgba(0,0,0,0.07);
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 1.25rem;
}

.today-strip-heading[b-1swm4r5s93] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 90px;
}

.today-strip-title[b-1swm4r5s93] {
    font-size: 0.78rem;
    font-weight: 800;
    color: var(--brand-navy);
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.today-strip-date[b-1swm4r5s93] {
    font-size: 0.78rem;
    color: #999;
}

.today-strip-metrics[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: repeat(4, minmax(90px, 1fr));
    gap: 0.75rem;
}

.today-strip-metric[b-1swm4r5s93] {
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 10px;
    padding: 0.65rem 0.75rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.today-strip-value[b-1swm4r5s93] {
    font-size: 1.45rem;
    font-weight: 850;
    color: var(--brand-navy);
    line-height: 1;
}

.today-strip-label[b-1swm4r5s93] {
    margin-top: 0.25rem;
    font-size: 0.7rem;
    color: #888;
    text-align: center;
    white-space: nowrap;
}

.today-strip-refresh[b-1swm4r5s93] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    font-size: 0.74rem;
    color: #777;
    white-space: nowrap;
    border-left: 1px solid #e8e8e8;
    padding-left: 1rem;
}

    .today-strip-refresh span[b-1swm4r5s93] {
        font-size: 0.68rem;
        color: #aaa;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-weight: 700;
    }

    .today-strip-refresh strong[b-1swm4r5s93] {
        color: var(--brand-blue, #4a6fa5);
    }

.launch-funnel-section[b-1swm4r5s93] {
    padding: 1.4rem 1.5rem;
}

.launch-funnel-header[b-1swm4r5s93] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.1rem;
}

    .launch-funnel-header .admin-section-title[b-1swm4r5s93] {
        margin-bottom: 0.25rem;
    }

    .launch-funnel-header p[b-1swm4r5s93] {
        margin: 0;
        font-size: 0.82rem;
        color: #888;
    }

.launch-funnel-summary[b-1swm4r5s93] {
    display: flex;
    gap: 0.65rem;
    flex-wrap: wrap;
    justify-content: flex-end;
    font-size: 0.78rem;
    color: #777;
}

    .launch-funnel-summary span[b-1swm4r5s93] {
        background: #f8faff;
        border: 1px solid #e5ebf5;
        border-radius: 999px;
        padding: 0.35rem 0.65rem;
    }

    .launch-funnel-summary strong[b-1swm4r5s93] {
        color: var(--brand-navy);
    }

.launch-funnel-flow[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: repeat(6, minmax(130px, 1fr));
    gap: 0.75rem;
}

.launch-funnel-step[b-1swm4r5s93] {
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 12px;
    padding: 0.9rem;
    min-width: 0;
}

.launch-funnel-step-top[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-height: 1.25rem;
}

.launch-funnel-icon[b-1swm4r5s93] {
    font-size: 1rem;
}

.launch-funnel-label[b-1swm4r5s93] {
    font-size: 0.74rem;
    color: #666;
    font-weight: 800;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.launch-funnel-value[b-1swm4r5s93] {
    margin-top: 0.55rem;
    font-size: 2rem;
    font-weight: 850;
    color: var(--brand-navy);
    line-height: 1;
}

.launch-funnel-bar-wrap[b-1swm4r5s93] {
    margin-top: 0.65rem;
    height: 8px;
    background: #e7ecf6;
    border-radius: 999px;
    overflow: hidden;
}

.launch-funnel-bar[b-1swm4r5s93] {
    height: 100%;
    min-width: 3px;
    max-width: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, rgb(102,126,234), rgb(118,75,162));
}

.launch-funnel-rate[b-1swm4r5s93] {
    margin-top: 0.45rem;
    font-size: 0.73rem;
    font-weight: 700;
    color: var(--brand-blue, #4a6fa5);
}

.launch-funnel-sub[b-1swm4r5s93] {
    margin-top: 0.15rem;
    font-size: 0.7rem;
    color: #999;
}

@media (max-width: 1200px) {
    .launch-funnel-flow[b-1swm4r5s93] {
        grid-template-columns: repeat(3, minmax(140px, 1fr));
    }
}

@media (max-width: 900px) {
    .today-strip-card[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }

    .today-strip-metrics[b-1swm4r5s93] {
        grid-template-columns: repeat(2, minmax(120px, 1fr));
    }

    .today-strip-refresh[b-1swm4r5s93] {
        border-left: none;
        border-top: 1px solid #e8e8e8;
        padding-left: 0;
        padding-top: 0.75rem;
        flex-direction: row;
        flex-wrap: wrap;
    }

    .launch-funnel-header[b-1swm4r5s93] {
        flex-direction: column;
    }

    .launch-funnel-summary[b-1swm4r5s93] {
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .launch-funnel-flow[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }
}


/* ── Feedback Center ─────────────────────────────────────────────────────── */
.feedback-center-section[b-1swm4r5s93] {
    padding: 1.4rem 1.5rem;
}

.feedback-center-header[b-1swm4r5s93] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1rem;
}

    .feedback-center-header .admin-section-title[b-1swm4r5s93] {
        margin-bottom: 0.25rem;
    }

.feedback-center-subtitle[b-1swm4r5s93] {
    margin: 0;
    color: #888;
    font-size: 0.82rem;
}

.feedback-alert-pill[b-1swm4r5s93] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.35rem 0.7rem;
    border-radius: 999px;
    background: #fff3e0;
    color: #c65f00;
    border: 1px solid #ffd8a8;
    font-size: 0.75rem;
    font-weight: 800;
    white-space: nowrap;
}

.feedback-center-grid[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: minmax(230px, 0.85fr) minmax(420px, 1.65fr) minmax(220px, 0.9fr);
    gap: 1rem;
    align-items: flex-start;
}

.feedback-overview-panel[b-1swm4r5s93],
.feedback-table-panel[b-1swm4r5s93],
.ratings-panel[b-1swm4r5s93] {
    min-width: 0;
}

.feedback-overview-cards[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.feedback-metric-card[b-1swm4r5s93] {
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 10px;
    padding: 0.85rem;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.feedback-metric-card-alert[b-1swm4r5s93] {
    background: #fffdf7;
    border-color: #ffe3a3;
}

.feedback-metric-label[b-1swm4r5s93] {
    font-size: 0.72rem;
    color: #777;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.feedback-metric-value[b-1swm4r5s93] {
    color: var(--brand-navy);
    font-size: 1.65rem;
    line-height: 1.1;
    font-weight: 850;
}

.feedback-metric-sub[b-1swm4r5s93] {
    color: #888;
    font-size: 0.75rem;
}

.feedback-type-panel[b-1swm4r5s93] {
    background: #fafbfc;
    border: 1px solid #edf0f5;
    border-radius: 10px;
    padding: 0.85rem;
}

.feedback-type-list[b-1swm4r5s93] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
}

.feedback-type-row-main[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

.feedback-type-count[b-1swm4r5s93] {
    color: var(--brand-navy);
    font-size: 0.8rem;
    font-weight: 800;
}

.feedback-type-bar-wrap[b-1swm4r5s93] {
    height: 7px;
    border-radius: 999px;
    background: #e8edf6;
    overflow: hidden;
}

.feedback-type-bar[b-1swm4r5s93] {
    height: 100%;
    min-width: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgb(102,126,234), rgb(118,75,162));
}

.feedback-type-note[b-1swm4r5s93] {
    margin-top: 0.2rem;
    color: #c65f00;
    font-size: 0.7rem;
    font-weight: 700;
}

.feedback-table-wrap[b-1swm4r5s93] {
    max-height: 420px;
    overflow-y: auto;
}

    .feedback-table-wrap .admin-table thead th[b-1swm4r5s93] {
        position: sticky;
        top: 0;
        z-index: 1;
        background: #f8f8f8;
    }

.feedback-empty-compact[b-1swm4r5s93] {
    padding: 1rem 0.5rem;
}

.ratings-list-compact[b-1swm4r5s93] {
    max-height: 420px;
    overflow-y: auto;
    padding-right: 0.25rem;
}

@media (max-width: 1200px) {
    .feedback-center-grid[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }

    .feedback-overview-cards[b-1swm4r5s93] {
        grid-template-columns: repeat(3, minmax(140px, 1fr));
    }
}

@media (max-width: 700px) {
    .feedback-center-header[b-1swm4r5s93] {
        flex-direction: column;
        align-items: stretch;
    }

    .feedback-overview-cards[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }
}


/* ── Visitor Analytics & Geography Accordion ─────────────────────────────── */
.visitor-analytics-section[b-1swm4r5s93] {
    padding: 0;
    overflow: hidden;
}

    .visitor-analytics-section .admin-table-wrap[b-1swm4r5s93] {
        max-height: 560px;
        overflow-y: auto;
        overflow-x: auto;
    }

    .visitor-analytics-section .admin-table thead th[b-1swm4r5s93] {
        position: sticky;
        top: 0;
        z-index: 1;
        background: #f8f8f8;
    }

.geography-section[b-1swm4r5s93] {
    padding: 0;
    overflow: hidden;
}

.accordion-header[b-1swm4r5s93] {
    width: 100%;
    min-height: 60px;
    border: none;
    background: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.1rem 1.5rem;
    text-align: left;
}

    .accordion-header:hover[b-1swm4r5s93] {
        background: #f8faff;
    }

.accordion-title[b-1swm4r5s93] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 1rem;
    font-weight: 800;
    color: var(--brand-navy);
}

.accordion-caret[b-1swm4r5s93] {
    color: var(--brand-blue);
    font-size: 0.75rem;
    width: 1rem;
    display: inline-flex;
    justify-content: center;
}

.accordion-summary[b-1swm4r5s93] {
    font-size: 0.78rem;
    color: #888;
    white-space: nowrap;
}

.geography-grid[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    padding: 0 1.5rem 1.5rem;
}

.geography-table-card[b-1swm4r5s93] {
    border: 1px solid #edf0f5;
    border-radius: 10px;
    overflow: hidden;
    min-width: 0;
}

    .geography-table-card .admin-section-title[b-1swm4r5s93] {
        margin: 0;
        padding: 0.85rem 1rem;
        background: #f8faff;
        border-bottom: 1px solid #edf0f5;
    }

    .geography-table-card .admin-table-wrap[b-1swm4r5s93] {
        max-height: 360px;
        overflow-y: auto;
        overflow-x: auto;
    }

    .geography-table-card .admin-table thead th[b-1swm4r5s93] {
        position: sticky;
        top: 0;
        z-index: 1;
        background: #fff;
    }

@media (max-width: 900px) {
    .geography-grid[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }

    .accordion-header[b-1swm4r5s93] {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.35rem;
    }
}


/* ── Visitor Details Accordion ───────────────────────────────────────────── */
.visitor-analytics-section .admin-table-wrap[b-1swm4r5s93] {
    margin: 0 1.5rem 1.5rem;
}

.visitor-accordion-header .accordion-summary[b-1swm4r5s93] {
    font-variant-numeric: tabular-nums;
}


/* ─────────────────────────────────────────────────────────────────────────────
   Phase 8: Admin Tabs
   ───────────────────────────────────────────────────────────────────────────── */
.admin-tab-nav[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin: 0 0 1.25rem;
    padding: 0.45rem;
    background: #fff;
    border: 1px solid #e5ebf5;
    border-radius: 12px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.06);
}

.admin-tab[b-1swm4r5s93] {
    border: 1px solid transparent;
    background: transparent;
    color: #667;
    border-radius: 999px;
    padding: 0.55rem 0.9rem;
    font-size: 0.85rem;
    font-weight: 800;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
}

    .admin-tab:hover[b-1swm4r5s93] {
        background: #f5f7fb;
        color: var(--brand-navy);
    }

.admin-tab--active[b-1swm4r5s93] {
    background: linear-gradient(135deg, var(--brand-navy), var(--brand-blue));
    color: #fff;
    border-color: rgba(255,255,255,0.2);
    box-shadow: 0 4px 12px rgba(0,0,0,0.12);
}

    .admin-tab--active:hover[b-1swm4r5s93] {
        color: #fff;
        background: linear-gradient(135deg, var(--brand-navy), var(--brand-blue));
    }

/* ─────────────────────────────────────────────────────────────────────────────
   Phase 8: Team Retention / Team Insights
   ───────────────────────────────────────────────────────────────────────────── */
.team-retention-section[b-1swm4r5s93],
.team-insights-section[b-1swm4r5s93] {
    padding: 1.35rem 1.5rem;
}

.team-insights-header[b-1swm4r5s93] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1rem;
}

    .team-insights-header .admin-section-title[b-1swm4r5s93] {
        margin: 0 0 0.2rem;
    }

    .team-insights-header p[b-1swm4r5s93] {
        margin: 0;
        color: #888;
        font-size: 0.82rem;
    }

.team-insights-pill[b-1swm4r5s93] {
    flex: 0 0 auto;
    background: #f5f7fb;
    border: 1px solid #e5ebf5;
    border-radius: 999px;
    padding: 0.3rem 0.7rem;
    font-size: 0.75rem;
    font-weight: 800;
    color: #667;
    white-space: nowrap;
}

.team-retention-grid[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: repeat(3, minmax(150px, 1fr));
    gap: 0.8rem;
}

.team-retention-card[b-1swm4r5s93] {
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 12px;
    padding: 1rem;
    min-height: 100px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.team-retention-card--primary[b-1swm4r5s93] {
    background: linear-gradient(135deg, #f8faff, #eef4ff);
    border-color: rgba(102,126,234,0.32);
}

.team-retention-label[b-1swm4r5s93] {
    color: #777;
    font-size: 0.76rem;
    font-weight: 800;
}

.team-retention-value[b-1swm4r5s93] {
    margin-top: 0.25rem;
    color: var(--brand-navy);
    font-size: 2rem;
    line-height: 1;
    font-weight: 900;
}

.team-retention-sub[b-1swm4r5s93] {
    margin-top: 0.4rem;
    color: #888;
    font-size: 0.73rem;
}

.team-insights-grid[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.team-insight-card[b-1swm4r5s93] {
    min-width: 0;
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 12px;
    padding: 1rem;
}

.compact-insight-table[b-1swm4r5s93] {
    font-size: 0.78rem;
}

    .compact-insight-table th[b-1swm4r5s93],
    .compact-insight-table td[b-1swm4r5s93] {
        padding: 0.45rem 0.5rem;
    }

@media (max-width: 1150px) {
    .team-insights-grid[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .admin-tab-nav[b-1swm4r5s93] {
        align-items: stretch;
    }

    .admin-tab[b-1swm4r5s93] {
        flex: 1 1 45%;
    }

    .team-retention-grid[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }

    .team-insights-header[b-1swm4r5s93] {
        flex-direction: column;
    }
}


/* ─────────────────────────────────────────────────────────────────────────────
   Phase 9: Follow-Up Analytics
   ───────────────────────────────────────────────────────────────────────────── */
.followup-analytics-section[b-1swm4r5s93],
.followup-insights-section[b-1swm4r5s93] {
    overflow: hidden;
}

.followup-analytics-header[b-1swm4r5s93] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1rem;
}

    .followup-analytics-header p[b-1swm4r5s93] {
        margin: 0.2rem 0 0;
        color: #888;
        font-size: 0.86rem;
    }

.followup-analytics-pill[b-1swm4r5s93] {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    border-radius: 999px;
    background: #f8faff;
    border: 1px solid #e5ebf5;
    color: var(--brand-navy);
    font-size: 0.78rem;
    font-weight: 800;
    padding: 0.35rem 0.65rem;
}

.followup-analytics-pill--warning[b-1swm4r5s93] {
    background: #fff8e1;
    border-color: #ffe0a3;
    color: #9a6700;
}

.followup-kpi-grid[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.followup-kpi-card[b-1swm4r5s93] {
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 12px;
    padding: 1rem;
    min-height: 102px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.followup-kpi-card--primary[b-1swm4r5s93] {
    background: linear-gradient(135deg, #f8faff, #eef4ff);
    border-color: rgba(102,126,234,0.32);
}

.followup-kpi-label[b-1swm4r5s93] {
    color: #777;
    font-size: 0.76rem;
    font-weight: 800;
}

.followup-kpi-value[b-1swm4r5s93] {
    margin-top: 0.25rem;
    color: var(--brand-navy);
    font-size: 2rem;
    line-height: 1;
    font-weight: 900;
}

.followup-kpi-value--text[b-1swm4r5s93] {
    font-size: 1.1rem;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.followup-kpi-sub[b-1swm4r5s93] {
    margin-top: 0.4rem;
    color: #888;
    font-size: 0.73rem;
}

.followup-insights-grid[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.followup-insight-card[b-1swm4r5s93] {
    min-width: 0;
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 12px;
    padding: 1rem;
}

@media (max-width: 1200px) {
    .followup-kpi-grid[b-1swm4r5s93],
    .followup-insights-grid[b-1swm4r5s93] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 760px) {
    .followup-analytics-header[b-1swm4r5s93] {
        flex-direction: column;
    }

    .followup-kpi-grid[b-1swm4r5s93],
    .followup-insights-grid[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }
}


/* ─────────────────────────────────────────────────────────────────────────────
   Phase 10: Traffic Attribution
   ───────────────────────────────────────────────────────────────────────────── */
.traffic-attribution-section[b-1swm4r5s93] {
    border-radius: 14px;
}

.traffic-attribution-header[b-1swm4r5s93] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

    .traffic-attribution-header .admin-section-title[b-1swm4r5s93] {
        margin-bottom: 0.25rem;
    }

    .traffic-attribution-header p[b-1swm4r5s93] {
        margin: 0;
        color: #888;
        font-size: 0.86rem;
    }

.traffic-attribution-summary[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    justify-content: flex-end;
    color: #777;
    font-size: 0.78rem;
}

    .traffic-attribution-summary span[b-1swm4r5s93] {
        background: #f8faff;
        border: 1px solid #e5ebf5;
        border-radius: 999px;
        padding: 0.35rem 0.65rem;
        white-space: nowrap;
    }

    .traffic-attribution-summary strong[b-1swm4r5s93] {
        color: var(--brand-navy);
    }

.traffic-attribution-grid[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: minmax(360px, 1.2fr) minmax(320px, 1fr);
    gap: 1rem;
}

.traffic-source-card[b-1swm4r5s93] {
    min-width: 0;
    background: #f8faff;
    border: 1px solid #e5ebf5;
    border-radius: 12px;
    padding: 1rem;
}

    .traffic-source-card .admin-subsection-title[b-1swm4r5s93] {
        margin-bottom: 0.75rem;
    }

.traffic-source-list[b-1swm4r5s93] {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.traffic-source-row[b-1swm4r5s93] {
    display: grid;
    grid-template-columns: minmax(140px, 0.8fr) minmax(120px, 1fr) minmax(150px, auto);
    align-items: center;
    gap: 0.75rem;
}

.traffic-source-main[b-1swm4r5s93] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    min-width: 0;
}

.traffic-source-icon[b-1swm4r5s93] {
    font-size: 1rem;
    line-height: 1;
}

.traffic-source-name[b-1swm4r5s93] {
    color: var(--brand-navy);
    font-weight: 800;
    font-size: 0.86rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.traffic-source-bar-wrap[b-1swm4r5s93] {
    height: 9px;
    border-radius: 999px;
    background: #e9edf5;
    overflow: hidden;
}

.traffic-source-bar[b-1swm4r5s93] {
    height: 100%;
    min-width: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgb(102,126,234), rgb(118,75,162));
}

.traffic-source-meta[b-1swm4r5s93] {
    color: #888;
    font-size: 0.76rem;
    white-space: nowrap;
    text-align: right;
}

    .traffic-source-meta strong[b-1swm4r5s93] {
        color: var(--brand-navy);
    }

.traffic-referrer-table th:nth-child(n+2)[b-1swm4r5s93],
.traffic-referrer-table td:nth-child(n+2)[b-1swm4r5s93] {
    text-align: center;
}

.traffic-referrer-host[b-1swm4r5s93] {
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--brand-navy);
    font-weight: 700;
}

@media (max-width: 1100px) {
    .traffic-attribution-grid[b-1swm4r5s93] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .traffic-attribution-header[b-1swm4r5s93] {
        flex-direction: column;
    }

    .traffic-attribution-summary[b-1swm4r5s93] {
        justify-content: flex-start;
    }

    .traffic-source-row[b-1swm4r5s93] {
        grid-template-columns: 1fr;
        gap: 0.35rem;
    }

    .traffic-source-meta[b-1swm4r5s93] {
        text-align: left;
    }
}
/* /Components/Pages/Brand.razor.rz.scp.css */
.brand-page[b-gx4vkvdc5f] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    width: 100%;
}

.brand-logo[b-gx4vkvdc5f] {
    max-width: 90vw;
    max-height: 90vh;
    object-fit: contain;
}
/* /Components/Pages/Create.razor.rz.scp.css */
/* Create page shell/orchestration only.
   Form/session-ready styles are owned by CreateRetroPanel.
   Team access styles are owned by TeamAccessPanel.
   Welcome back internals are owned by WelcomeBackCard. */

.home-container[b-ma9i8lv7th] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem 1rem;
    background: linear-gradient(135deg, var(--brand-navy-dark) 0%, var(--brand-navy) 100%);
    box-sizing: border-box;
}

.create-page-shell[b-ma9i8lv7th] {
    width: 100%;
    transition: max-width 0.18s ease;
}

.create-page-shell--single[b-ma9i8lv7th] {
    max-width: 440px;
}

.create-page-shell--with-sidebar[b-ma9i8lv7th] {
    max-width: 800px;
}

.create-home-link[b-ma9i8lv7th] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    margin-bottom: 0.75rem;
    color: #d7e3ff;
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
    transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

.create-home-link:visited[b-ma9i8lv7th],
.create-home-link:active[b-ma9i8lv7th] {
    color: #d7e3ff;
}

.create-home-link:hover[b-ma9i8lv7th] {
    color: #ffffff;
    text-decoration: underline;
}

.home-card[b-ma9i8lv7th] {
    width: 100%;
    background: #fff;
    border-radius: 12px;
    padding: 2.9rem 2.6rem 2.5rem;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.28);
    box-sizing: border-box;
    transition: max-width 0.18s ease;
}

.home-card--single[b-ma9i8lv7th] {
    max-width: 440px;
}

.home-card--with-sidebar[b-ma9i8lv7th] {
    max-width: 800px;
}

.logo-banner[b-ma9i8lv7th] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.75rem;
    text-align: center;
}

    .logo-banner img[b-ma9i8lv7th] {
        display: block;
        width: 260px;
        max-width: 100%;
        height: auto;
        margin: 0 auto;
    }

.logo-tagline[b-ma9i8lv7th] {
    margin: 0.65rem 0 0;
    color: #7c8796;
    font-size: 0.82rem;
    line-height: 1.35;
}

.create-body[b-ma9i8lv7th] {
    display: grid;
    gap: 1.25rem;
    width: 100%;
}

.create-body--single[b-ma9i8lv7th] {
    grid-template-columns: 1fr;
}

    .create-body--single .create-form-panel[b-ma9i8lv7th] {
        width: 360px;
        min-width: 0;
        max-width: 100%;
        margin: 0 auto;
    }

.create-body--with-sidebar[b-ma9i8lv7th] {
    grid-template-columns: 320px 1px 1fr;
    gap: 1.25rem;
    align-items: start;
}

    .create-body--with-sidebar[b-ma9i8lv7th]::before {
        content: "";
        grid-column: 2;
        grid-row: 1;
        width: 1px;
        height: 100%;
        background: #e0e6f0;
    }

    .create-body--with-sidebar > .welcome-back-card[b-ma9i8lv7th] {
        grid-column: 1;
    }

    .create-body--with-sidebar > .create-form-panel[b-ma9i8lv7th] {
        grid-column: 3;
        width: 100%;
        min-width: 0;
    }

.create-body--checking-welcome[b-ma9i8lv7th]::before {
    background: transparent;
}

.create-body--checking-welcome > .welcome-back-card[b-ma9i8lv7th] {
    visibility: hidden;
    pointer-events: none;
}

.create-form-panel[b-ma9i8lv7th] {
    min-width: 0;
}

.create-mode-switch[b-ma9i8lv7th] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 0.25rem;
    width: min(100%, 340px);
    margin: 0 auto 1.25rem;
    padding: 0.25rem;
    border: 1px solid #d7e3f3;
    border-radius: 999px;
    background: #eef4fb;
    box-shadow: inset 0 1px 2px rgba(15, 52, 96, 0.04);
}

.create-mode-link[b-ma9i8lv7th] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    min-height: 36px;
    padding: 0.45rem 0.85rem;
    border: 1px solid transparent;
    border-radius: 999px;
    background: transparent;
    color: var(--brand-navy);
    font: inherit;
    font-size: 0.82rem;
    font-weight: 800;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

    .create-mode-link:hover[b-ma9i8lv7th] {
        color: var(--brand-blue);
        background: rgba(255, 255, 255, 0.58);
    }

    .create-mode-link.is-active[b-ma9i8lv7th] {
        color: #fff;
        background: linear-gradient(135deg, var(--brand-navy), var(--brand-blue));
        border-color: rgba(255, 255, 255, 0.58);
        box-shadow: 0 5px 14px rgba(15, 52, 96, 0.22);
    }

        .create-mode-link.is-active[b-ma9i8lv7th]::after {
            display: none;
        }

.create-mode-divider[b-ma9i8lv7th] {
    display: none;
}

.create-mode-content[b-ma9i8lv7th] {
    min-width: 0;
}

@media (max-width: 820px) {
    .home-container[b-ma9i8lv7th] {
        align-items: flex-start;
        padding: 1rem;
    }

    .create-page-shell[b-ma9i8lv7th],
    .create-page-shell--single[b-ma9i8lv7th],
    .create-page-shell--with-sidebar[b-ma9i8lv7th] {
        max-width: 440px;
    }

    .home-card[b-ma9i8lv7th],
    .home-card--single[b-ma9i8lv7th],
    .home-card--with-sidebar[b-ma9i8lv7th] {
        max-width: 440px;
        padding: 1.8rem 1.6rem;
    }

    .logo-banner img[b-ma9i8lv7th] {
        width: 240px;
    }

    .create-body--with-sidebar[b-ma9i8lv7th] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

        .create-body--with-sidebar[b-ma9i8lv7th]::before {
            display: none;
        }

        .create-body--with-sidebar > .welcome-back-card[b-ma9i8lv7th],
        .create-body--with-sidebar > .create-form-panel[b-ma9i8lv7th],
        .create-body--single .create-form-panel[b-ma9i8lv7th] {
            grid-column: auto;
            width: 100%;
        }
}

@media (max-width: 420px) {
    .home-container[b-ma9i8lv7th] {
        padding: 0.5rem;
    }

    .home-card[b-ma9i8lv7th] {
        padding: 1.55rem 1.35rem;
    }

    .create-mode-switch[b-ma9i8lv7th] {
        width: 100%;
    }

    .create-mode-link[b-ma9i8lv7th] {
        min-height: 34px;
        padding: 0.4rem 0.55rem;
        font-size: 0.78rem;
    }
}
/* /Components/Pages/CreateRetroPanel.razor.rz.scp.css */
/* ── Form ─────────────────────────────────────────────────────────────── */
.form-group[b-ewxucxw56d] {
    margin-bottom: 1.25rem;
}

    .form-group label[b-ewxucxw56d] {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        font-size: 0.875rem;
        font-weight: 600;
        color: #555;
        margin-bottom: 0.4rem;
    }

.form-input[b-ewxucxw56d] {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    font-size: 1rem;
    transition: border-color 0.2s;
    box-sizing: border-box;
}

    .form-input:focus[b-ewxucxw56d] {
        outline: none;
        border-color: var(--brand-blue);
    }

.error-msg[b-ewxucxw56d] {
    color: var(--brand-red);
    font-size: 0.875rem;
    margin-bottom: 0.75rem;
}

.success-banner[b-ewxucxw56d] {
    background: #eafaf1;
    border: 1px solid var(--brand-green);
    color: var(--brand-green-dark);
    border-radius: 8px;
    padding: 0.65rem 0.9rem;
    font-size: 0.875rem;
    margin-bottom: 0.75rem;
}

.role-badge[b-ewxucxw56d] {
    background: var(--brand-blue);
    color: #fff;
    font-size: 0.65rem;
    font-weight: 700;
    padding: 0.1rem 0.4rem;
    border-radius: 4px;
    letter-spacing: 0.03em;
}

.optional-badge[b-ewxucxw56d],
.team-linked-badge[b-ewxucxw56d] {
    background: #eef2f7;
    color: #666;
    font-size: 0.65rem;
    font-weight: 700;
    padding: 0.1rem 0.4rem;
    border-radius: 4px;
}

.team-linked-badge[b-ewxucxw56d] {
    background: #e9f6ef;
    color: var(--brand-green-dark);
}

.field-hint[b-ewxucxw56d] {
    margin: 0.35rem 0 0;
    font-size: 0.78rem;
    color: #888;
}

.template-select[b-ewxucxw56d] {
    appearance: auto;
    cursor: pointer;
    background-color: #fff;
}

/* ── Buttons / Links ──────────────────────────────────────────────────── */
.btn-primary[b-ewxucxw56d] {
    width: 100%;
    padding: 0.875rem;
    background: linear-gradient(135deg, var(--brand-navy), var(--brand-blue));
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
    min-height: 48px;
    transition: opacity 0.2s, transform 0.1s;
}

    .btn-primary:hover:not(:disabled)[b-ewxucxw56d] {
        opacity: 0.9;
    }

    .btn-primary:active[b-ewxucxw56d] {
        transform: scale(0.98);
    }

    .btn-primary:disabled[b-ewxucxw56d] {
        opacity: 0.6;
        cursor: not-allowed;
    }

.btn-secondary[b-ewxucxw56d] {
    width: 100%;
    padding: 0.875rem;
    background: transparent;
    color: var(--brand-navy);
    border: 2px solid var(--brand-navy);
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    min-height: 48px;
    margin-top: 0.5rem;
    transition: background 0.2s, color 0.2s;
}

    .btn-secondary:hover:not(:disabled)[b-ewxucxw56d] {
        background: var(--brand-navy);
        color: #fff;
    }

    .btn-secondary:disabled[b-ewxucxw56d] {
        opacity: 0.6;
        cursor: not-allowed;
    }


.share-before-meeting[b-ewxucxw56d] {
    margin-top: 0.9rem;
    text-align: center;
}

.share-before-meeting-text[b-ewxucxw56d] {
    margin: 0 0 0.15rem;
    color: #667;
    font-size: 0.8rem;
    line-height: 1.35;
}

.share-before-meeting-note[b-ewxucxw56d] {
    margin: 0 0 0.35rem;
    color: #8892a0;
    font-size: 0.74rem;
    line-height: 1.35;
}

.share-before-meeting-link[b-ewxucxw56d] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    padding: 0.25rem 0.35rem;
    border: none;
    background: transparent;
    color: var(--brand-navy);
    font-size: 0.86rem;
    font-weight: 750;
    cursor: pointer;
    text-decoration: none;
}

    .share-before-meeting-link:hover:not(:disabled)[b-ewxucxw56d] {
        color: var(--brand-blue);
        text-decoration: underline;
    }

    .share-before-meeting-link:disabled[b-ewxucxw56d] {
        opacity: 0.6;
        cursor: not-allowed;
    }

.join-link[b-ewxucxw56d] {
    display: block;
    text-align: center;
    margin-top: 1.25rem;
    color: var(--brand-navy);
    font-size: 0.875rem;
}

    .join-link:hover[b-ewxucxw56d] {
        text-decoration: underline;
    }

.go-home-link[b-ewxucxw56d] {
    display: block;
    text-align: center;
    font-size: 0.875rem;
    color: var(--brand-navy);
    padding-top: 0.25rem;
}

    .go-home-link:hover[b-ewxucxw56d] {
        text-decoration: underline;
    }

.team-code-toggle[b-ewxucxw56d] {
    margin-top: 0.35rem;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--brand-navy);
    font-size: 0.78rem;
    font-weight: 600;
    cursor: pointer;
}

    .team-code-toggle:hover[b-ewxucxw56d] {
        text-decoration: underline;
    }

.toggle-option[b-ewxucxw56d] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: #555;
    margin-bottom: 1.25rem;
    cursor: pointer;
}

    .toggle-option input[type="checkbox"][b-ewxucxw56d] {
        width: 1rem;
        height: 1rem;
        cursor: pointer;
        accent-color: var(--brand-blue);
        flex-shrink: 0;
    }

/* ── Team fields ──────────────────────────────────────────────────────── */
.linked-team-input[b-ewxucxw56d] {
    background: #f4f8ff;
    border-color: #b8d4f5;
    color: #1f3d5a;
    font-weight: 600;
    cursor: not-allowed;
}

.team-linked-note[b-ewxucxw56d] {
    margin-top: 0.35rem;
    font-size: 0.78rem;
    color: #667;
}

/* ── Toast ────────────────────────────────────────────────────────────── */
.create-toast[b-ewxucxw56d] {
    position: fixed;
    top: 1.25rem;
    left: 50%;
    transform: translateX(-50%);
    background: #1a2b4a;
    color: #fff;
    padding: 0.75rem 1.5rem;
    border-radius: 8px;
    font-size: 0.9rem;
    box-shadow: 0 4px 16px rgba(0,0,0,0.25);
    z-index: 9999;
    animation: toast-in-b-ewxucxw56d 0.3s ease, toast-out-b-ewxucxw56d 0.4s ease 3.6s forwards;
    white-space: nowrap;
}

@keyframes toast-in-b-ewxucxw56d {
    from {
        opacity: 0;
        transform: translateX(-50%) translateY(-12px);
    }

    to {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
    }
}

@keyframes toast-out-b-ewxucxw56d {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

/* ── Session ready card ───────────────────────────────────────────────── */
.session-ready[b-ewxucxw56d] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.session-ready-title[b-ewxucxw56d] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--brand-green-dark);
    margin: 0;
}

.share-block[b-ewxucxw56d] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.share-label[b-ewxucxw56d] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #555;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.share-hint[b-ewxucxw56d] {
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
    color: #999;
}

.share-row[b-ewxucxw56d] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: #f4f6f9;
    border: 1px solid #dde2ea;
    border-radius: 6px;
    padding: 0.5rem 0.75rem;
}

.share-value[b-ewxucxw56d] {
    flex: 1;
    font-family: monospace;
    font-size: 0.9rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.code-value[b-ewxucxw56d] {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    color: var(--brand-navy);
}

.btn-copy[b-ewxucxw56d] {
    flex-shrink: 0;
    padding: 0.3rem 0.75rem;
    background: var(--brand-navy);
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 0.8rem;
    cursor: pointer;
    white-space: nowrap;
}

    .btn-copy:hover[b-ewxucxw56d] {
        opacity: 0.85;
    }

.expiry-notice[b-ewxucxw56d] {
    font-size: 0.82rem;
    color: #b07d00;
    background: #fffbea;
    border: 1px solid #f0d070;
    border-radius: 6px;
    padding: 0.5rem 0.75rem;
    margin: 0;
}

.return-hint[b-ewxucxw56d] {
    font-size: 0.8rem;
    color: #888;
    margin: 0;
    text-align: center;
}

/* ── Sprint 4.3 Create page mode polish ─────────────────────────────── */
.form-group[b-ewxucxw56d] {
    margin-bottom: 1.05rem;
}

.form-input[b-ewxucxw56d] {
    min-height: 46px;
}

.btn-primary[b-ewxucxw56d],
.btn-secondary[b-ewxucxw56d] {
    min-height: 46px;
}
/* /Components/Pages/Faq.razor.rz.scp.css */
.faq[b-fu8hzmxplf] {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #222;
}

/* ── Hero ──────────────────────────────────────────────────────────── */
.faq-hero[b-fu8hzmxplf] {
    background: linear-gradient(135deg, var(--brand-navy-dark) 0%, var(--brand-navy) 100%);
    padding: 5rem 1.5rem 4rem;
    text-align: center;
    color: #fff;
}

.hero-inner[b-fu8hzmxplf] {
    max-width: 640px;
    margin: 0 auto;
}

.hero-logo[b-fu8hzmxplf] {
    width: 280px;
    height: auto;
    margin-bottom: 1.5rem;
    background: #fff;
    border-radius: 12px;
    padding: 0.75rem 1.25rem;
}

.hero-title[b-fu8hzmxplf] {
    font-size: 2.4rem;
    font-weight: 800;
    margin: 0 0 1rem;
    line-height: 1.15;
}

.hero-tagline[b-fu8hzmxplf] {
    font-size: 1.15rem;
    font-weight: 400;
    opacity: 0.9;
    margin: 0;
}

/* ── Content section ───────────────────────────────────────────────── */
.faq-section[b-fu8hzmxplf] {
    padding: 3.5rem 1.5rem;
    background: #fff;
}

.section-inner[b-fu8hzmxplf] {
    max-width: 760px;
    margin: 0 auto;
}

/* ── Accordion ─────────────────────────────────────────────────────── */
.faq-accordion[b-fu8hzmxplf] {
    display: flex;
    flex-direction: column;
}

.accordion-item[b-fu8hzmxplf] {
    border-bottom: 1px solid #e8ecf0;
}

.accordion-item:first-child[b-fu8hzmxplf] {
    border-top: 1px solid #e8ecf0;
}

.accordion-trigger[b-fu8hzmxplf] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 0.25rem;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1rem;
    font-weight: 600;
    color: var(--brand-navy);
    text-align: left;
    min-height: 52px;
    transition: color 0.15s;
}

.accordion-trigger:hover[b-fu8hzmxplf],
.accordion-trigger.is-open[b-fu8hzmxplf] {
    color: var(--brand-blue);
}

.accordion-chevron[b-fu8hzmxplf] {
    font-size: 1.2rem;
    line-height: 1;
    flex-shrink: 0;
    color: #aaa;
    transition: transform 0.2s ease;
}

.accordion-trigger.is-open .accordion-chevron[b-fu8hzmxplf] {
    transform: rotate(90deg);
    color: var(--brand-blue);
}

.accordion-body[b-fu8hzmxplf] {
    padding: 0 0.25rem 1.1rem;
    font-size: 0.95rem;
    color: #444;
    line-height: 1.7;
}

.accordion-body p[b-fu8hzmxplf] {
    margin: 0 0 0.6rem;
}

.accordion-body p:last-child[b-fu8hzmxplf] {
    margin-bottom: 0;
}

.accordion-body ul[b-fu8hzmxplf] {
    margin: 0.4rem 0 0.75rem 1.25rem;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.accordion-body ul li[b-fu8hzmxplf] {
    color: #333;
}

.accordion-body a[b-fu8hzmxplf] {
    color: var(--brand-blue);
    text-decoration: underline;
}

.accordion-body a:hover[b-fu8hzmxplf] {
    color: var(--brand-navy);
}

/* ── CTA ───────────────────────────────────────────────────────────── */
.faq-cta[b-fu8hzmxplf] {
    background: linear-gradient(135deg, var(--brand-navy-dark), var(--brand-navy));
    color: #fff;
    text-align: center;
    padding: 4rem 1.5rem;
}

.faq-cta h2[b-fu8hzmxplf] {
    font-size: 1.6rem;
    margin: 0 0 0.5rem;
}

.faq-cta p[b-fu8hzmxplf] {
    opacity: 0.8;
    margin: 0 0 2rem;
}

.btn-cta-primary[b-fu8hzmxplf] {
    background: var(--brand-blue);
    color: #fff;
    padding: 0.875rem 2rem;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 700;
    text-decoration: none;
    transition: opacity 0.2s;
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.btn-cta-primary:hover[b-fu8hzmxplf] {
    opacity: 0.88;
}

/* ── Footer ────────────────────────────────────────────────────────── */
.faq-footer[b-fu8hzmxplf] {
    background: var(--brand-navy-dark);
    color: rgba(255, 255, 255, 0.5);
    text-align: center;
    padding: .25rem;
    font-size: 0.8rem;
}

.faq-footer a[b-fu8hzmxplf] {
    color: rgba(255, 255, 255, 0.7);
}

.faq-footer a:hover[b-fu8hzmxplf] {
    color: #fff;
}

/* ── Responsive ────────────────────────────────────────────────────── */
@media (max-width: 600px) {
    .hero-title[b-fu8hzmxplf] {
        font-size: 1.8rem;
    }

    .hero-tagline[b-fu8hzmxplf] {
        font-size: 1rem;
    }

    .accordion-trigger[b-fu8hzmxplf] {
        font-size: 0.9rem;
        padding: 0.875rem 0.25rem;
        min-height: 48px;
    }
}
/* /Components/Pages/Home.razor.rz.scp.css */
body[b-6jhyf99j5o] {
}



.landing[b-6jhyf99j5o] {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #222;
}

/* ── Hero ───────────────────────────────────────────────────────────── */
.landing-hero[b-6jhyf99j5o] {
    background: linear-gradient(135deg, var(--brand-navy-dark) 0%, var(--brand-navy) 100%);
    padding: 5rem 1.5rem 4rem;
    text-align: center;
    color: #fff;
}

.hero-inner[b-6jhyf99j5o] {
    max-width: 640px;
    margin: 0 auto;
}

.hero-logo[b-6jhyf99j5o] {
    width: 280px;
    height: auto;
    margin-bottom: 1.5rem;
    background: #fff;
    border-radius: 12px;
    padding: 0.75rem 1.25rem;
}

.hero-tagline[b-6jhyf99j5o] {
    font-size: 1.35rem;
    font-weight: 400;
    opacity: 0.9;
    margin: 0 0 0.75rem;
}

.hero-free[b-6jhyf99j5o] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #2ecc71;
    letter-spacing: 0.01em;
    margin: 0 0 2rem;
    opacity: 1;
}

.hero-actions[b-6jhyf99j5o] {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}

.btn-hero-primary[b-6jhyf99j5o] {
    background: var(--brand-blue);
    color: #fff;
    padding: 0.875rem 2rem;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 700;
    text-decoration: none;
    transition: opacity 0.2s;
}

    .btn-hero-primary:hover[b-6jhyf99j5o] {
        opacity: 0.88;
    }

.btn-hero-secondary[b-6jhyf99j5o] {
    background: rgba(255,255,255,0.12);
    color: #fff;
    padding: 0.875rem 2rem;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    border: 1px solid rgba(255,255,255,0.3);
    transition: background 0.2s;
}

    .btn-hero-secondary:hover[b-6jhyf99j5o] {
        background: rgba(255,255,255,0.2);
    }

.btn-hero-video[b-6jhyf99j5o] {
    background: transparent;
    color: rgba(255,255,255,0.85);
    padding: 0.875rem 2rem;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 600;
    border: 1px solid rgba(255,255,255,0.3);
    cursor: pointer;
    transition: background 0.2s, color 0.2s;
    font-family: inherit;
}

    .btn-hero-video:hover[b-6jhyf99j5o] {
        background: rgba(255,255,255,0.12);
        color: #fff;
    }

/* ── Demo Video Modal ───────────────────────────────────────────────── */
.demo-video-backdrop[b-6jhyf99j5o] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.75);
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.demo-video-modal[b-6jhyf99j5o] {
    position: relative;
    background: #000;
    border-radius: 10px;
    overflow: hidden;
    max-width: 1400px;
    width: 100%;
    box-shadow: 0 8px 40px rgba(0,0,0,0.6);
}

.demo-video-player[b-6jhyf99j5o] {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    max-height: 80vh;
}

.demo-video-close[b-6jhyf99j5o] {
    position: absolute;
    top: 0.5rem;
    right: 0.6rem;
    background: rgba(0,0,0,0.55);
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 2rem;
    height: 2rem;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
    z-index: 1;
    transition: background 0.15s;
}

    .demo-video-close:hover[b-6jhyf99j5o] {
        background: rgba(0,0,0,0.85);
    }


/* ── Sections ───────────────────────────────────────────────────────── */
.landing-section[b-6jhyf99j5o] {
    padding: 3.5rem 1.5rem;
    text-align: center;
    background: #fff;
}

.landing-section--alt[b-6jhyf99j5o] {
    background: #f4f6f9;
}

.section-title[b-6jhyf99j5o] {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--brand-navy);
    margin: 0 0 2.5rem;
}

/* ── Steps ──────────────────────────────────────────────────────────── */
.steps[b-6jhyf99j5o] {
    display: flex;
    gap: 2rem;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 900px;
    margin: 0 auto;
}

.step[b-6jhyf99j5o] {
    flex: 1;
    min-width: 200px;
    max-width: 260px;
}

.step-num[b-6jhyf99j5o] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background: var(--brand-blue);
    color: #fff;
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
}

.step h3[b-6jhyf99j5o] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--brand-navy);
    margin: 0 0 0.4rem;
}

.step p[b-6jhyf99j5o] {
    font-size: 0.88rem;
    color: #666;
    margin: 0;
}

/* ── Solo tip ─────────────────────────────────────────────────────────────── */
.tip-wrap[b-6jhyf99j5o] {
    background: #fff;
    padding: 0 1.5rem 2.5rem;
    display: flex;
    justify-content: center;
}

.tip-box[b-6jhyf99j5o] {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    max-width: 800px;
    width: 100%;
    background: #fffbea;
    border: 1px solid #f0e080;
    border-left: 3px solid #f5c400;
    border-radius: 10px;
    padding: 1rem 1.25rem;
    font-size: 0.88rem;
    color: #555;
    line-height: 1.5;
}

.tip-icon[b-6jhyf99j5o] {
    font-size: 1.2rem;
    flex-shrink: 0;
    margin-top: 0.05rem;
}

.tip-box strong[b-6jhyf99j5o] {
    display: block;
    font-size: 0.93rem;
    font-weight: 700;
    color: var(--brand-navy);
    margin-bottom: 0.2rem;
}

.tip-box p[b-6jhyf99j5o] {
    margin: 0;
}

/* ── Social proof ─────────────────────────────────────────────────────────── */
.social-proof-wrap[b-6jhyf99j5o] {
    background: #fff;
    padding: 0 1.5rem 2.5rem;
    display: flex;
    justify-content: center;
}

.social-proof-card[b-6jhyf99j5o] {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    max-width: 800px;
    width: 100%;
    background: #f8faff;
    border: 1px solid #e0e6f0;
    border-left: 3px solid var(--brand-blue);
    border-radius: 10px;
    padding: 1rem 1.25rem;
    font-size: 0.88rem;
    color: #555;
    line-height: 1.5;
}

.social-proof-icon[b-6jhyf99j5o] {
    font-size: 1.2rem;
    flex-shrink: 0;
    margin-top: 0.05rem;
}

.social-proof-card strong[b-6jhyf99j5o] {
    display: block;
    font-size: 0.93rem;
    font-weight: 700;
    color: var(--brand-navy);
    margin-bottom: 0.2rem;
}

.social-proof-card p[b-6jhyf99j5o] {
    margin: 0;
}

/* ── Features ───────────────────────────────────────────────────────── */
.features[b-6jhyf99j5o] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1.25rem;
    max-width: 800px;
    margin: 0 auto;
    text-align: left;
}

.feature[b-6jhyf99j5o] {
    background: #fff;
    border-radius: 10px;
    padding: 1.1rem 1.25rem;
    font-size: 0.88rem;
    color: #444;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
    line-height: 1.5;
}

    .feature a[b-6jhyf99j5o] {
        color: var(--brand-blue);
        text-decoration: underline;
    }

        .feature a:hover[b-6jhyf99j5o] {
            color: var(--brand-navy);
        }

/* ── Learn resource cards ────────────────────────────────────────── */
.learn-cards[b-6jhyf99j5o] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1.25rem;
    max-width: 900px;
    margin: 0 auto;
    text-align: left;
}

.learn-card[b-6jhyf99j5o] {
    background: #fff;
    border-radius: 10px;
    padding: 1.25rem 1.25rem 1.5rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.07);
    border-top: 3px solid var(--brand-blue);
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    transition: box-shadow 0.15s, transform 0.15s;
}

    .learn-card:hover[b-6jhyf99j5o] {
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
        transform: translateY(-2px);
    }

.learn-card-icon[b-6jhyf99j5o] {
    font-size: 1.6rem;
    line-height: 1;
    margin-bottom: 0.1rem;
}

.learn-card h3[b-6jhyf99j5o] {
    font-size: 0.97rem;
    font-weight: 700;
    color: var(--brand-navy);
    margin: 0;
    line-height: 1.3;
}

.learn-card p[b-6jhyf99j5o] {
    font-size: 0.84rem;
    color: #666;
    margin: 0;
    line-height: 1.5;
}

/* ── CTA ────────────────────────────────────────────────────────────── */
.landing-cta[b-6jhyf99j5o] {
    background: linear-gradient(135deg, var(--brand-navy-dark), var(--brand-navy));
    color: #fff;
    text-align: center;
    padding: 4rem 1.5rem;
}

    .landing-cta h2[b-6jhyf99j5o] {
        font-size: 1.6rem;
        margin: 0 0 0.5rem;
    }

    .landing-cta p[b-6jhyf99j5o] {
        opacity: 0.8;
        margin: 0 0 2rem;
    }

    .landing-cta .cta-subtitle[b-6jhyf99j5o] {
        font-size: 0.9rem;
        opacity: 0.8;
        margin: 0 0 0.4rem;
    }

    .landing-cta .cta-subtitle_note[b-6jhyf99j5o] {
        margin-top: -2rem;
    }

/* ── Footer ─────────────────────────────────────────────────────────── */
.landing-footer[b-6jhyf99j5o] {
    background: var(--brand-navy-dark);
    color: rgba(255,255,255,0.5);
    text-align: center;
    padding: .25rem;
    font-size: 0.8rem;
}

    .landing-footer a[b-6jhyf99j5o] {
        color: rgba(255,255,255,0.7);
    }

        .landing-footer a:hover[b-6jhyf99j5o] {
            color: #fff;
        }

.footer-feedback-link[b-6jhyf99j5o] {
    display: inline;
    border: none;
    background: transparent;
    color: rgba(255,255,255,0.7);
    font: inherit;
    font-size: inherit;
    padding: 0;
    cursor: pointer;
    text-decoration: underline;
}

.footer-feedback-link:hover[b-6jhyf99j5o] {
    color: #fff;
}

.returning-shortcuts[b-6jhyf99j5o] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-top: 0.9rem;
}

.returning-shortcut-group[b-6jhyf99j5o] {
    min-width: 0;
}

.returning-shortcut-label[b-6jhyf99j5o] {
    display: block;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--brand-navy);
    margin-bottom: 0.35rem;
}

.returning-shortcut-pills[b-6jhyf99j5o] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.returning-team-pill[b-6jhyf99j5o] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    background: #fff;
    border: 1px solid #d8e0ec;
    border-radius: 999px;
    padding: 0.4rem 0.7rem;
    text-decoration: none;
    color: var(--brand-navy);
    font-size: 0.82rem;
    font-weight: 600;
}

    .returning-team-pill:hover[b-6jhyf99j5o] {
        background: #eef4ff;
        border-color: var(--brand-blue);
    }

@media (max-width: 700px) {
    .returning-shortcuts[b-6jhyf99j5o] {
        grid-template-columns: 1fr;
    }
}

/* ── What's New banner ───────────────────────────────────────────── */
.home-whats-new[b-6jhyf99j5o] {
    background: #fff;
    padding: 1.25rem 1.5rem 0;
}

.home-whats-new-content[b-6jhyf99j5o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    max-width: 900px;
    margin: 0 auto;
    background: #fff;
    border: 1px solid #e5eaf0;
    border-left: 4px solid var(--brand-blue);
    border-radius: 12px;
    padding: 1rem 1.1rem;
    box-shadow: 0 2px 12px rgba(15, 52, 96, 0.08);
    text-align: left;
}

.home-whats-new-kicker[b-6jhyf99j5o] {
    color: var(--brand-blue);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    margin-bottom: 0.25rem;
}

.home-whats-new h2[b-6jhyf99j5o] {
    margin: 0;
    color: var(--brand-navy);
    font-size: 1.05rem;
}

.home-whats-new p[b-6jhyf99j5o] {
    margin: 0.3rem 0 0;
    color: #5f6b7a;
    font-size: 0.88rem;
    line-height: 1.45;
}

.home-whats-new-link[b-6jhyf99j5o] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0.55rem 0.9rem;
    border-radius: 8px;
    background: var(--brand-blue);
    color: #fff;
    text-decoration: none;
    font-weight: 800;
    font-size: 0.9rem;
    white-space: nowrap;
}

    .home-whats-new-link:hover[b-6jhyf99j5o] {
        opacity: 0.88;
    }

@media (max-width: 720px) {
    .home-whats-new-content[b-6jhyf99j5o] {
        flex-direction: column;
        align-items: flex-start;
    }

    .home-whats-new-link[b-6jhyf99j5o] {
        width: 100%;
    }
}

/* ── Interactive Demo Sandbox ───────────────────────────────────────────── */
.home-demo-sandbox[b-6jhyf99j5o] {
    background: #fff;
    padding: 1.25rem 1.5rem 0;
}

.home-demo-sandbox-card[b-6jhyf99j5o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
    max-width: 900px;
    margin: 0 auto;
    background: linear-gradient(135deg, #f8faff 0%, #ffffff 100%);
    border: 1px solid #dfe7f3;
    border-left: 4px solid var(--brand-blue);
    border-radius: 14px;
    padding: 1.1rem 1.2rem;
    box-shadow: 0 2px 14px rgba(15, 52, 96, 0.10);
    text-align: left;
}

.home-demo-sandbox-copy[b-6jhyf99j5o] {
    min-width: 0;
}

.home-demo-sandbox-kicker[b-6jhyf99j5o] {
    color: var(--brand-blue);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    margin-bottom: 0.25rem;
}

.home-demo-sandbox h2[b-6jhyf99j5o] {
    margin: 0;
    color: var(--brand-navy);
    font-size: 1.08rem;
}

.home-demo-sandbox p[b-6jhyf99j5o] {
    margin: 0.35rem 0 0;
    color: #5f6b7a;
    font-size: 0.9rem;
    line-height: 1.45;
}

.home-demo-sandbox-button[b-6jhyf99j5o] {
    flex-shrink: 0;
    min-height: 42px;
    padding: 0.65rem 1rem;
    border: none;
    border-radius: 9px;
    background: var(--brand-blue);
    color: #fff;
    font: inherit;
    font-size: 0.92rem;
    font-weight: 800;
    cursor: pointer;
    white-space: nowrap;
    transition: opacity 0.2s, transform 0.15s;
}

    .home-demo-sandbox-button:hover:not(:disabled)[b-6jhyf99j5o] {
        opacity: 0.9;
        transform: translateY(-1px);
    }

    .home-demo-sandbox-button:disabled[b-6jhyf99j5o] {
        cursor: wait;
        opacity: 0.7;
    }

.home-demo-sandbox-error[b-6jhyf99j5o] {
    margin-top: 0.7rem;
    color: #9b1c1c;
    background: #fff1f1;
    border: 1px solid #f2caca;
    border-radius: 8px;
    padding: 0.55rem 0.7rem;
    font-size: 0.84rem;
    font-weight: 700;
}

@media (max-width: 720px) {
    .home-demo-sandbox-card[b-6jhyf99j5o] {
        flex-direction: column;
        align-items: stretch;
    }

    .home-demo-sandbox-button[b-6jhyf99j5o] {
        width: 100%;
    }
}

/* ── Interactive Demo resume / launch states ─────────────────────────── */
.home-demo-sandbox-card[b-6jhyf99j5o] {
    align-items: stretch;
}

.home-demo-sandbox-actions[b-6jhyf99j5o] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    gap: 0.55rem;
    flex-shrink: 0;
    min-width: 210px;
}

.home-demo-sandbox-status[b-6jhyf99j5o] {
    display: grid;
    grid-template-columns: repeat(2, minmax(120px, 1fr));
    gap: 1rem;
    margin-top: 0.9rem;
    max-width: 440px;
}

.home-demo-sandbox-status-item[b-6jhyf99j5o] {
    min-width: 0;
}

.home-demo-sandbox-status-label[b-6jhyf99j5o] {
    color: #6f7b8a;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.25;
}

.home-demo-sandbox-status-value[b-6jhyf99j5o] {
    margin-top: 0.15rem;
    color: var(--brand-navy);
    font-size: 0.95rem;
    font-weight: 800;
    line-height: 1.25;
}

.home-demo-sandbox-fresh-button[b-6jhyf99j5o] {
    border: 1px solid #cfd9e8;
    background: #fff;
    color: var(--brand-navy);
    border-radius: 9px;
    padding: 0.55rem 0.85rem;
    font: inherit;
    font-size: 0.86rem;
    font-weight: 800;
    cursor: pointer;
    transition: background 0.2s, border-color 0.2s;
}

    .home-demo-sandbox-fresh-button:hover:not(:disabled)[b-6jhyf99j5o] {
        background: #eef4ff;
        border-color: var(--brand-blue);
    }

    .home-demo-sandbox-fresh-button:disabled[b-6jhyf99j5o] {
        cursor: not-allowed;
        opacity: 0.65;
    }

.home-demo-modal-backdrop[b-6jhyf99j5o] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(10, 24, 44, 0.58);
    z-index: 1200;
    padding: 1rem;
}

.home-demo-modal[b-6jhyf99j5o] {
    position: relative;
    width: min(440px, 100%);
    background: #fff;
    border-radius: 16px;
    padding: 1.4rem;
    box-shadow: 0 16px 50px rgba(0, 0, 0, 0.28);
    text-align: left;
}

.home-demo-modal-close[b-6jhyf99j5o] {
    position: absolute;
    top: 0.65rem;
    right: 0.75rem;
    border: none;
    background: transparent;
    color: #7a8492;
    font-size: 1.4rem;
    line-height: 1;
    cursor: pointer;
}

    .home-demo-modal-close:hover[b-6jhyf99j5o] {
        color: var(--brand-navy);
    }

.home-demo-modal-kicker[b-6jhyf99j5o] {
    color: var(--brand-blue);
    font-size: 0.78rem;
    font-weight: 850;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    margin-bottom: 0.35rem;
}

.home-demo-modal h2[b-6jhyf99j5o] {
    color: var(--brand-navy);
    font-size: 1.12rem;
    margin: 0 1.6rem 1rem 0;
}

.home-demo-modal-input[b-6jhyf99j5o] {
    width: 100%;
    min-height: 46px;
    border: 2px solid #dce3ee;
    border-radius: 9px;
    padding: 0.75rem 0.9rem;
    font: inherit;
    font-size: 1rem;
    box-sizing: border-box;
}

    .home-demo-modal-input:focus[b-6jhyf99j5o] {
        outline: none;
        border-color: var(--brand-blue);
    }

.home-demo-modal-actions[b-6jhyf99j5o] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
    margin-top: 1rem;
}

.home-demo-modal-actions .home-demo-sandbox-button[b-6jhyf99j5o] {
    flex: 1;
}

.home-demo-modal-cancel[b-6jhyf99j5o] {
    border: none;
    background: transparent;
    color: #667085;
    font: inherit;
    font-size: 0.9rem;
    font-weight: 750;
    cursor: pointer;
    padding: 0.55rem 0.25rem;
}

    .home-demo-modal-cancel:hover:not(:disabled)[b-6jhyf99j5o] {
        color: var(--brand-navy);
        text-decoration: underline;
    }

    .home-demo-modal-cancel:disabled[b-6jhyf99j5o] {
        cursor: not-allowed;
        opacity: 0.65;
    }

@media (max-width: 720px) {
    .home-demo-sandbox-actions[b-6jhyf99j5o] {
        width: 100%;
        min-width: 0;
    }

    .home-demo-sandbox-status[b-6jhyf99j5o] {
        grid-template-columns: 1fr;
        gap: 0.6rem;
    }

    .home-demo-modal-actions[b-6jhyf99j5o] {
        flex-direction: column;
        align-items: stretch;
    }
}

.home-demo-modal-field[b-6jhyf99j5o] {
    display: block;
    margin-top: 0.9rem;
}

.home-demo-modal-label[b-6jhyf99j5o] {
    display: block;
    color: var(--brand-navy);
    font-size: 0.82rem;
    font-weight: 800;
    margin-bottom: 0.35rem;
}

.home-demo-modal-select[b-6jhyf99j5o] {
    width: 100%;
    min-height: 46px;
    border: 2px solid #dce3ee;
    border-radius: 9px;
    padding: 0.7rem 0.85rem;
    font: inherit;
    font-size: 0.96rem;
    box-sizing: border-box;
    background: #fff;
    color: var(--brand-navy);
}

.home-demo-modal-select:focus[b-6jhyf99j5o] {
    outline: none;
    border-color: var(--brand-blue);
}

.home-demo-modal-select:disabled[b-6jhyf99j5o] {
    cursor: wait;
    opacity: 0.7;
}

.home-demo-modal-help[b-6jhyf99j5o] {
    margin: 0.6rem 0 0;
    color: #667085;
    font-size: 0.82rem;
    line-height: 1.4;
}
/* /Components/Pages/Join.razor.rz.scp.css */
.join-container[b-z9jvbqfmxl] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--brand-navy-dark) 0%, var(--brand-navy) 100%);
    padding: 1rem;
}

.join-card[b-z9jvbqfmxl] {
    background: #fff;
    border-radius: 16px;
    padding: 2.5rem;
    width: 100%;
    max-width: 440px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
}

.logo[b-z9jvbqfmxl] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-size: 2rem;
    margin-bottom: 0.25rem;
}

.logo-text[b-z9jvbqfmxl] {
    font-size: 1.9rem;
    font-weight: 800;
    color: var(--brand-navy);
    letter-spacing: -1px;
}

.join-title[b-z9jvbqfmxl] {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 700;
    color: #333;
    margin: 0 0 1.75rem;
}

.session-hint[b-z9jvbqfmxl] {
    text-align: center;
    font-size: 0.875rem;
    color: #555;
    margin: -0.75rem 0 1.25rem;
}

.form-group[b-z9jvbqfmxl] {
    margin-bottom: 1.25rem;
}

.form-group label[b-z9jvbqfmxl] {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    color: #555;
    margin-bottom: 0.4rem;
}

.form-input[b-z9jvbqfmxl] {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    font-size: 1rem;
    transition: border-color 0.2s;
    box-sizing: border-box;
}

.form-input:focus[b-z9jvbqfmxl] {
    outline: none;
    border-color: var(--brand-blue);
}

.code-input[b-z9jvbqfmxl] {
    text-transform: uppercase;
    letter-spacing: 0.25em;
    font-weight: 700;
    font-family: monospace;
    font-size: 1.1rem;
}

.error-msg[b-z9jvbqfmxl] {
    color: var(--brand-red);
    font-size: 0.875rem;
    margin-bottom: 0.75rem;
}

.btn-code-toggle[b-z9jvbqfmxl] {
    background: none;
    border: none;
    color: var(--brand-navy);
    font-size: 0.8rem;
    cursor: pointer;
    padding: 0;
    margin-bottom: 1.25rem;
    text-decoration: underline;
    display: block;
}

.btn-code-toggle:hover[b-z9jvbqfmxl] {
    color: var(--brand-blue);
}

.btn-primary[b-z9jvbqfmxl] {
    width: 100%;
    padding: 0.875rem;
    background: linear-gradient(135deg, var(--brand-navy), var(--brand-blue));
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
    min-height: 48px;
    transition: opacity 0.2s, transform 0.1s;
}

.btn-primary:hover:not(:disabled)[b-z9jvbqfmxl] {
    opacity: 0.9;
}

.btn-primary:active[b-z9jvbqfmxl] {
    transform: scale(0.98);
}

.btn-primary:disabled[b-z9jvbqfmxl] {
    opacity: 0.6;
    cursor: not-allowed;
}

.create-link[b-z9jvbqfmxl] {
    display: block;
    text-align: center;
    margin-top: 1.25rem;
    color: var(--brand-navy);
    font-size: 0.875rem;
}

.create-link:hover[b-z9jvbqfmxl] {
    text-decoration: underline;
}

.logo-banner[b-z9jvbqfmxl] {
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
}

.logo-banner img[b-z9jvbqfmxl] {
    width: 260px;
    height: auto;
}
/* /Components/Pages/NotFound.razor.rz.scp.css */
.not-found[b-xv9c5ett9l] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    background: linear-gradient(135deg, var(--brand-navy-dark) 0%, var(--brand-navy) 100%);
    padding: 2rem 1.5rem;
}

.not-found-inner[b-xv9c5ett9l] {
    text-align: center;
    color: #fff;
    max-width: 480px;
}

.not-found-icon[b-xv9c5ett9l] {
    font-size: 3.5rem;
    margin-bottom: 1rem;
    opacity: 0.85;
    line-height: 1;
}

.not-found h1[b-xv9c5ett9l] {
    font-size: 2rem;
    font-weight: 800;
    margin: 0 0 0.75rem;
    line-height: 1.2;
}

.not-found p[b-xv9c5ett9l] {
    font-size: 1rem;
    opacity: 0.8;
    margin: 0 0 2rem;
    line-height: 1.6;
}

.not-found-actions[b-xv9c5ett9l] {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 1.75rem;
}

.not-found-btn-primary[b-xv9c5ett9l] {
    background: var(--brand-blue);
    color: #fff;
    padding: 0.75rem 1.75rem;
    border-radius: 8px;
    font-size: 0.95rem;
    font-weight: 700;
    text-decoration: none;
    transition: opacity 0.2s;
}

.not-found-btn-primary:hover[b-xv9c5ett9l] {
    opacity: 0.88;
}

.not-found-btn-secondary[b-xv9c5ett9l] {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    padding: 0.75rem 1.75rem;
    border-radius: 8px;
    font-size: 0.95rem;
    font-weight: 600;
    text-decoration: none;
    border: 1px solid rgba(255, 255, 255, 0.3);
    transition: background 0.2s;
}

.not-found-btn-secondary:hover[b-xv9c5ett9l] {
    background: rgba(255, 255, 255, 0.2);
}

.not-found-links[b-xv9c5ett9l] {
    display: flex;
    gap: 0.6rem;
    justify-content: center;
    align-items: center;
    font-size: 0.85rem;
    opacity: 0.6;
}

.not-found-links a[b-xv9c5ett9l] {
    color: rgba(255, 255, 255, 0.85);
    text-decoration: underline;
}

.not-found-links a:hover[b-xv9c5ett9l] {
    opacity: 1;
}

.not-found-links span[b-xv9c5ett9l] {
    color: rgba(255, 255, 255, 0.4);
}
/* /Components/Pages/Privacy.razor.rz.scp.css */
.privacy[b-cf5f48ijfr] {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #222;
}

/* ── Hero ──────────────────────────────────────────────────────────── */
.privacy-hero[b-cf5f48ijfr] {
    background: linear-gradient(135deg, var(--brand-navy-dark) 0%, var(--brand-navy) 100%);
    padding: 5rem 1.5rem 4rem;
    text-align: center;
    color: #fff;
}

.hero-inner[b-cf5f48ijfr] {
    max-width: 640px;
    margin: 0 auto;
}

.hero-logo[b-cf5f48ijfr] {
    width: 280px;
    height: auto;
    margin-bottom: 1.5rem;
    background: #fff;
    border-radius: 12px;
    padding: 0.75rem 1.25rem;
}

.hero-title[b-cf5f48ijfr] {
    font-size: 2.4rem;
    font-weight: 800;
    margin: 0 0 1rem;
    line-height: 1.15;
}

.hero-tagline[b-cf5f48ijfr] {
    font-size: 1.05rem;
    font-weight: 400;
    opacity: 0.9;
    margin: 0;
    line-height: 1.6;
}

/* ── Sections ──────────────────────────────────────────────────────── */
.privacy-section[b-cf5f48ijfr] {
    padding: 3rem 1.5rem;
    background: #fff;
}

.privacy-section--alt[b-cf5f48ijfr] {
    background: #f4f6f9;
}

.section-inner[b-cf5f48ijfr] {
    max-width: 760px;
    margin: 0 auto;
}

.section-title[b-cf5f48ijfr] {
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--brand-navy);
    margin: 0 0 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #e8ecf0;
}

/* ── Body copy ─────────────────────────────────────────────────────── */
.privacy-body[b-cf5f48ijfr] {
    font-size: 0.97rem;
    line-height: 1.75;
    color: #444;
    margin: 0 0 0.85rem;
}

.privacy-body:last-child[b-cf5f48ijfr] {
    margin-bottom: 0;
}

/* ── Lists ─────────────────────────────────────────────────────────── */
.privacy-list[b-cf5f48ijfr] {
    list-style: none;
    padding: 0;
    margin: 0 0 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.privacy-list li[b-cf5f48ijfr] {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    font-size: 0.97rem;
    color: #333;
    line-height: 1.55;
}

.privacy-list li[b-cf5f48ijfr]::before {
    content: '–';
    color: var(--brand-blue);
    font-weight: 700;
    flex-shrink: 0;
    margin-top: 0.05rem;
}

/* ── Footer ────────────────────────────────────────────────────────── */
.privacy-footer[b-cf5f48ijfr] {
    background: var(--brand-navy-dark);
    color: rgba(255, 255, 255, 0.5);
    text-align: center;
    padding: .25rem;
    font-size: 0.8rem;
}

.privacy-footer a[b-cf5f48ijfr] {
    color: rgba(255, 255, 255, 0.7);
}

.privacy-footer a:hover[b-cf5f48ijfr] {
    color: #fff;
}

/* ── Responsive ────────────────────────────────────────────────────── */
@media (max-width: 600px) {
    .hero-title[b-cf5f48ijfr] {
        font-size: 1.8rem;
    }

    .hero-tagline[b-cf5f48ijfr] {
        font-size: 0.97rem;
    }

    .section-title[b-cf5f48ijfr] {
        font-size: 1.15rem;
    }
}
/* /Components/Pages/Session.razor.rz.scp.css */
.loading-state[b-ti5ue6t8t5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    gap: 1rem;
    color: #555;
    font-size: 1rem;
}

/* ── Icebreaker Wheel Modal ──────────────────────────────────────── */
.icebreaker-modal-backdrop[b-ti5ue6t8t5] {
    position: fixed;
    inset: 0;
    background: rgba(22, 45, 74, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    z-index: 1100;
    backdrop-filter: blur(2px);
}

.icebreaker-modal[b-ti5ue6t8t5] {
    width: 100%;
    max-width: 420px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.3);
    display: flex;
    flex-direction: column;
    max-height: 98vh;
    overflow-x: hidden;
    overflow-y: auto;
}

.icebreaker-modal-header[b-ti5ue6t8t5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.9rem 1.1rem 0.75rem;
    background: var(--brand-navy);
    border-radius: 16px 16px 0 0;
    flex-shrink: 0;
}

    .icebreaker-modal-header h2[b-ti5ue6t8t5] {
        margin: 0;
        font-size: 1rem;
        font-weight: 700;
        color: #fff;
    }

.btn-close-icebreaker[b-ti5ue6t8t5] {
    background: none;
    border: none;
    color: rgba(255, 255, 255, 0.75);
    font-size: 1rem;
    cursor: pointer;
    padding: 0.2rem 0.4rem;
    border-radius: 4px;
    line-height: 1;
    transition: background 0.15s, color 0.15s;
}

    .btn-close-icebreaker:hover[b-ti5ue6t8t5] {
        background: rgba(255, 255, 255, 0.15);
        color: #fff;
    }

.icebreaker-open[b-ti5ue6t8t5] {
    animation: icebreaker-backdrop-in-b-ti5ue6t8t5 220ms ease-out both;
}

    .icebreaker-open .icebreaker-modal[b-ti5ue6t8t5] {
        animation: icebreaker-modal-in-b-ti5ue6t8t5 220ms ease-out both;
    }

.icebreaker-closing[b-ti5ue6t8t5] {
    animation: icebreaker-backdrop-out-b-ti5ue6t8t5 220ms ease-in both;
}

    .icebreaker-closing .icebreaker-modal[b-ti5ue6t8t5] {
        animation: icebreaker-modal-out-b-ti5ue6t8t5 220ms ease-in both;
    }

@keyframes icebreaker-backdrop-in-b-ti5ue6t8t5 {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes icebreaker-backdrop-out-b-ti5ue6t8t5 {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

@keyframes icebreaker-modal-in-b-ti5ue6t8t5 {
    from {
        opacity: 0;
        transform: translateY(10px) scale(0.96);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes icebreaker-modal-out-b-ti5ue6t8t5 {
    from {
        opacity: 1;
        transform: translateY(0) scale(1);
    }

    to {
        opacity: 0;
        transform: translateY(10px) scale(0.96);
    }
}

.btn-go-home[b-ti5ue6t8t5] {
    padding: 0.75rem 1.5rem;
    background: var(--brand-navy);
    color: #fff;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.95rem;
}

/* ── Layout ─────────────────────────────────────────────────────────── */
.session-layout[b-ti5ue6t8t5] {
    display: flex;
    flex-direction: column;
    height: 100vh;
    overflow: hidden;
    background: #f0f2f5;
}

/* ── Header ──────────────────────────────────────────────────────────────── */
.session-header[b-ti5ue6t8t5] {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    padding: 0.5rem 1.1rem;
    background: var(--brand-navy);
    border-bottom: 3px solid var(--brand-blue);
    color: #fff;
    flex-shrink: 0;
    column-gap: 0.75rem;
}

/* Logo in header — white pill so navy bug parts don't vanish into header */
.header-logo[b-ti5ue6t8t5] {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    background: #fff;
    border-radius: 6px;
    padding: 3px 10px;
    text-decoration: none;
}

    .header-logo img[b-ti5ue6t8t5] {
        height: 32px;
        width: auto;
        display: block;
    }

/* Thin vertical rule between logo and session name */
.header-divider[b-ti5ue6t8t5] {
    width: 1px;
    height: 28px;
    background: rgba(255, 255, 255, 0.25);
    flex-shrink: 0;
}

.header-left[b-ti5ue6t8t5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    justify-self: start;
    min-width: 0;
}

.header-info[b-ti5ue6t8t5] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.header-center[b-ti5ue6t8t5] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-template[b-ti5ue6t8t5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.1rem;
    text-align: center;
}

.template-pill[b-ti5ue6t8t5] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.3rem 0.75rem;
    background: #ffffff;
    border-radius: 999px;
    color: var(--brand-navy);
    font-size: 1.0rem;
    font-weight: 600;
    white-space: nowrap;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
    line-height: 1.2;
}

.template-pill-icon[b-ti5ue6t8t5] {
    font-size: 1.2rem;
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
}

.template-pill-emoji[b-ti5ue6t8t5] {
    font-size: 1rem;
    line-height: 1;
}

.template-pill-name[b-ti5ue6t8t5] {
    color: var(--brand-navy);
}

.template-label[b-ti5ue6t8t5] {
    font-size: 0.6rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.55;
    line-height: 1;
}

.template-name[b-ti5ue6t8t5] {
    font-size: 1.2rem;
    font-weight: 600;
    white-space: nowrap;
    line-height: 1.2;
    opacity: 0.9;
}

.session-name[b-ti5ue6t8t5] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
}

.session-meta[b-ti5ue6t8t5] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.72rem;
    opacity: 0.7;
    min-width: 0;
}

.badge-closed[b-ti5ue6t8t5] {
    background: var(--brand-red);
    color: #fff;
    padding: 0.1rem 0.35rem;
    border-radius: 3px;
    font-size: 0.6rem;
    font-weight: 700;
    letter-spacing: 0.05em;
}

.header-right[b-ti5ue6t8t5] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    justify-self: end;
}

/* ── Header action buttons ──────────────────────────────────────── */
.btn-header[b-ti5ue6t8t5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.42rem;
    min-height: 32px;
    height: 32px;
    padding: 0.12rem 0.62rem;
    border: 1px solid rgba(255, 255, 255, 0.26);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.09);
    color: rgba(255, 255, 255, 0.9);
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

    .btn-header:hover:not(:disabled)[b-ti5ue6t8t5],
    .btn-header.active[b-ti5ue6t8t5] {
        background: rgba(255, 255, 255, 0.18);
        border-color: rgba(255, 255, 255, 0.48);
        color: #fff;
        transform: translateY(-1px);
        box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
    }

    .btn-header:focus-visible[b-ti5ue6t8t5] {
        outline: 2px solid rgba(255, 255, 255, 0.85);
        outline-offset: 2px;
    }

    .btn-header:disabled[b-ti5ue6t8t5] {
        opacity: 0.45;
        cursor: not-allowed;
        transform: none;
        box-shadow: none;
    }

.btn-header-icon[b-ti5ue6t8t5] {
    min-width: 32px;
    height: 32px;
    padding: 0.12rem 0.62rem;
}

    .btn-header-icon .icon[b-ti5ue6t8t5],
    .timer-badge .icon[b-ti5ue6t8t5],
    .sm-menu-item .icon[b-ti5ue6t8t5] {
        width: 1.2rem;
        height: 1.2rem;
    }

.header-action-text[b-ti5ue6t8t5] {
    display: inline-flex;
    align-items: center;
}

.btn-timer-active[b-ti5ue6t8t5] {
    background: rgba(231, 76, 60, 0.22);
    border-color: rgba(231, 76, 60, 0.55);
    color: #fecaca;
}

/* ── Body ── */
.session-body[b-ti5ue6t8t5] {
    display: flex;
    flex: 1;
    overflow: hidden;
}

.board-area[b-ti5ue6t8t5] {
    flex: 8;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 1rem;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.board-area .retro-board[b-ti5ue6t8t5] {
    flex: 1;
    min-height: 0;
}

/* SM panel slides in/out while its column smoothly expands/collapses. */
.sm-aside[b-ti5ue6t8t5] {
    width: 410px;
    flex: 0 0 410px;
    min-width: 0;
    overflow: hidden;
    background: #fff;
    border-left: 2px solid #e8e8e8;
    will-change: flex-basis, width, opacity;
}

.sm-aside-inner[b-ti5ue6t8t5] {
    width: 410px;
    height: 100%;
    overflow-y: auto;
    will-change: transform, opacity;
}

.sm-aside-open[b-ti5ue6t8t5] {
    animation: sm-panel-column-in-b-ti5ue6t8t5 300ms ease-out both;
}

    .sm-aside-open .sm-aside-inner[b-ti5ue6t8t5] {
        animation: sm-panel-content-in-b-ti5ue6t8t5 300ms ease-out both;
    }

.sm-aside-closing[b-ti5ue6t8t5] {
    animation: sm-panel-column-out-b-ti5ue6t8t5 300ms ease-in both;
}

    .sm-aside-closing .sm-aside-inner[b-ti5ue6t8t5] {
        animation: sm-panel-content-out-b-ti5ue6t8t5 300ms ease-in both;
    }

@keyframes sm-panel-column-in-b-ti5ue6t8t5 {
    from {
        width: 0;
        flex-basis: 0;
        opacity: 0;
    }

    to {
        width: 410px;
        flex-basis: 410px;
        opacity: 1;
    }
}

@keyframes sm-panel-column-out-b-ti5ue6t8t5 {
    from {
        width: 410px;
        flex-basis: 410px;
        opacity: 1;
    }

    to {
        width: 0;
        flex-basis: 0;
        opacity: 0;
    }
}

@keyframes sm-panel-content-in-b-ti5ue6t8t5 {
    from {
        transform: translateX(100%);
        opacity: 0;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes sm-panel-content-out-b-ti5ue6t8t5 {
    from {
        transform: translateX(0);
        opacity: 1;
    }

    to {
        transform: translateX(100%);
        opacity: 0;
    }
}

.chat-aside[b-ti5ue6t8t5] {
    width: 340px;
    flex: 0 0 340px;
    min-width: 0;
    max-width: 380px;
    background: #fff;
    border-left: 2px solid #e8e8e8;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    height: 100%;
    will-change: flex-basis, width, opacity;
}

.chat-aside-inner[b-ti5ue6t8t5] {
    width: 340px;
    height: 100%;
    overflow: hidden;
    will-change: transform, opacity;
}

.chat-aside-open[b-ti5ue6t8t5] {
    animation: chat-panel-column-in-b-ti5ue6t8t5 300ms ease-out both;
}

    .chat-aside-open .chat-aside-inner[b-ti5ue6t8t5] {
        animation: chat-panel-content-in-b-ti5ue6t8t5 300ms ease-out both;
    }

.chat-aside-closing[b-ti5ue6t8t5] {
    animation: chat-panel-column-out-b-ti5ue6t8t5 300ms ease-in both;
}

    .chat-aside-closing .chat-aside-inner[b-ti5ue6t8t5] {
        animation: chat-panel-content-out-b-ti5ue6t8t5 300ms ease-in both;
    }

@keyframes chat-panel-column-in-b-ti5ue6t8t5 {
    from {
        width: 0;
        flex-basis: 0;
        opacity: 0;
    }

    to {
        width: 340px;
        flex-basis: 340px;
        opacity: 1;
    }
}

@keyframes chat-panel-column-out-b-ti5ue6t8t5 {
    from {
        width: 340px;
        flex-basis: 340px;
        opacity: 1;
    }

    to {
        width: 0;
        flex-basis: 0;
        opacity: 0;
    }
}

@keyframes chat-panel-content-in-b-ti5ue6t8t5 {
    from {
        transform: translateX(100%);
        opacity: 0;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes chat-panel-content-out-b-ti5ue6t8t5 {
    from {
        transform: translateX(0);
        opacity: 1;
    }

    to {
        transform: translateX(100%);
        opacity: 0;
    }
}

/* ── Footer ─────────────────────────────────────────────────────────────────────────────────── */
.session-footer[b-ti5ue6t8t5] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    padding: 0.6rem 1.25rem;
    background: var(--brand-navy-dark);
    border-top: 1px solid rgba(74, 144, 217, 0.25);
    font-size: 0.82rem;
}

.footer-label[b-ti5ue6t8t5] {
    color: rgba(255, 255, 255, 0.55);
    white-space: nowrap;
    font-weight: 500;
}

.footer-participants[b-ti5ue6t8t5] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.participant-chip[b-ti5ue6t8t5] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.6rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.07);
    color: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(255, 255, 255, 0.15);
}

/* Scrum Master chip — brand blue tint */
.chip-sm[b-ti5ue6t8t5] {
    border-color: rgba(74, 144, 217, 0.5);
    background: rgba(74, 144, 217, 0.12);
    color: #93c8f0;
}

/* Current user chip — brand green tint */
.chip-you[b-ti5ue6t8t5] {
    border-color: rgba(42, 122, 72, 0.5);
    background: rgba(42, 122, 72, 0.12);
    color: #7ddfaa;
}

.chip-you-label[b-ti5ue6t8t5] {
    font-size: 0.72rem;
    opacity: 0.7;
}

.chip-icon[b-ti5ue6t8t5] {
    font-size: 0.75rem;
}

/* ── Removed overlay ── */
.removed-overlay[b-ti5ue6t8t5] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.removed-card[b-ti5ue6t8t5] {
    background: #fff;
    border-radius: 12px;
    padding: 2.5rem 3rem;
    text-align: center;
    max-width: 420px;
    width: 90%;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
    border-top: 4px solid var(--brand-red);
}

.removed-icon[b-ti5ue6t8t5] {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.removed-card h2[b-ti5ue6t8t5] {
    margin: 0 0 0.75rem;
    font-size: 1.5rem;
    color: #222;
}

.removed-card p[b-ti5ue6t8t5] {
    color: #666;
    margin-bottom: 1.5rem;
    font-size: 0.95rem;
    line-height: 1.5;
}

/* ── Ready button — green tint when active ────────────────────────────────────────── */
.btn-ready-active[b-ti5ue6t8t5] {
    background: rgba(42, 122, 72, 0.35) !important;
    border-color: rgba(42, 122, 72, 0.8) !important;
    color: #a3e0bc !important;
}

/* Ready chip glow in the footer */
.chip-ready[b-ti5ue6t8t5] {
    border-color: #2a7a48 !important;
    background: #eafaf1 !important;
    color: #1a5c34 !important;
}

.chip-ready-icon[b-ti5ue6t8t5] {
    font-size: 0.7rem;
    margin-left: 0.2rem;
}

/* ── Timer badge in header ── */
.timer-badge[b-ti5ue6t8t5] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #fff;
    border-radius: 6px;
    padding: 0.35rem 0.7rem;
    font-size: 0.9rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    min-width: 72px;
    justify-content: center;
    min-height: 36px;
    transition: background 0.3s, border-color 0.3s, color 0.3s;
}

    .timer-badge.timer-warning[b-ti5ue6t8t5] {
        background: rgba(243, 156, 18, 0.35);
        border-color: rgba(243, 156, 18, 0.8);
        color: #fde68a;
    }

    .timer-badge.timer-expired[b-ti5ue6t8t5] {
        background: rgba(220, 53, 69, 0.35);
        border-color: rgba(220, 53, 69, 0.8);
        color: #fca5a5;
    }

    .timer-badge.timer-fading-out[b-ti5ue6t8t5] {
        animation: timer-fade-out-b-ti5ue6t8t5 1s ease forwards;
    }

@keyframes timer-fade-out-b-ti5ue6t8t5 {
    from {
        opacity: 1;
        transform: scale(1);
    }

    to {
        opacity: 0;
        transform: scale(0.96);
    }
}

/* ── SM Panel timer controls ── */
.timer-duration-row[b-ti5ue6t8t5] {
    display: flex;
    gap: 0.4rem;
    flex-wrap: wrap;
    margin-bottom: 0.75rem;
}

.btn-timer-preset[b-ti5ue6t8t5] {
    flex: 1;
    min-width: 60px;
    padding: 0.35rem 0.5rem;
    border: 1px solid #ddd;
    border-radius: 6px;
    background: #f5f5f5;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}

    .btn-timer-preset:hover:not(:disabled)[b-ti5ue6t8t5] {
        background: #e8e8e8;
    }

    .btn-timer-preset.active[b-ti5ue6t8t5] {
        background: var(--brand-blue);
        border-color: var(--brand-blue);
        color: #fff;
    }

    .btn-timer-preset:disabled[b-ti5ue6t8t5] {
        opacity: 0.5;
        cursor: default;
    }

.timer-controls[b-ti5ue6t8t5] {
    display: flex;
    flex-direction: column;
}

/* ── Header medium-width layout ─────────────────────────────────────────────
   At intermediate widths, keep the identity area readable by moving the
   action buttons onto their own row before the true mobile layout kicks in. */
@media (max-width: 1120px) {
    .session-header[b-ti5ue6t8t5] {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        row-gap: 0.45rem;
    }

    .header-left[b-ti5ue6t8t5] {
        flex: 1 1 100%;
        min-width: 0;
        justify-self: unset;
    }

    .header-info[b-ti5ue6t8t5] {
        flex: 1 1 auto;
        min-width: 0;
    }

    .session-name[b-ti5ue6t8t5] {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        max-width: 100%;
    }

    .session-team[b-ti5ue6t8t5] {
        flex-wrap: wrap;
        row-gap: 0.1rem;
        min-width: 0;
    }

    .header-right[b-ti5ue6t8t5] {
        width: 100%;
        flex-wrap: wrap;
        justify-content: flex-start;
        justify-self: unset;
        gap: 0.35rem;
    }
}

/* ── Responsive ─────────────────────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .session-body[b-ti5ue6t8t5] {
        flex-direction: column;
    }

    .board-area[b-ti5ue6t8t5] {
        overflow: auto;
    }

    .sm-aside[b-ti5ue6t8t5] {
        width: 100%;
        flex: 0 0 auto;
        min-height: 0;
        overflow: hidden;
        border-left: none;
        border-top: 2px solid #e8e8e8;
        background: #fff;
    }

    .sm-aside-inner[b-ti5ue6t8t5] {
        width: 100% !important;
        min-width: 100%;
        max-width: 100%;
        height: auto;
        max-height: 50vh;
        overflow-y: auto;
        display: block;
    }

    /* ScrumMasterPanel is a child component, so scoped CSS must use ::deep.
       Force the child panel root to fill the mobile host instead of keeping
       its desktop 410px intrinsic width. */
    .sm-aside-inner[b-ti5ue6t8t5]  .sm-panel {
        width: 100% !important;
        max-width: 100% !important;
    }

    .sm-aside-inner > *[b-ti5ue6t8t5] {
        width: 100%;
        max-width: 100%;
    }

    .sm-aside-open[b-ti5ue6t8t5] {
        animation: sm-panel-mobile-column-in-b-ti5ue6t8t5 300ms ease-out both;
    }

        .sm-aside-open .sm-aside-inner[b-ti5ue6t8t5] {
            animation: sm-panel-mobile-content-in-b-ti5ue6t8t5 300ms ease-out both;
        }

    .sm-aside-closing[b-ti5ue6t8t5] {
        animation: sm-panel-mobile-column-out-b-ti5ue6t8t5 300ms ease-in both;
    }

        .sm-aside-closing .sm-aside-inner[b-ti5ue6t8t5] {
            animation: sm-panel-mobile-content-out-b-ti5ue6t8t5 300ms ease-in both;
        }

    @keyframes sm-panel-mobile-column-in-b-ti5ue6t8t5 {
        from {
            max-height: 0;
            opacity: 0;
        }

        to {
            max-height: 50vh;
            opacity: 1;
        }
    }

    @keyframes sm-panel-mobile-column-out-b-ti5ue6t8t5 {
        from {
            max-height: 50vh;
            opacity: 1;
        }

        to {
            max-height: 0;
            opacity: 0;
        }
    }

    @keyframes sm-panel-mobile-content-in-b-ti5ue6t8t5 {
        from {
            transform: translateY(-18px);
            opacity: 0;
        }

        to {
            transform: translateY(0);
            opacity: 1;
        }
    }

    @keyframes sm-panel-mobile-content-out-b-ti5ue6t8t5 {
        from {
            transform: translateY(0);
            opacity: 1;
        }

        to {
            transform: translateY(-18px);
            opacity: 0;
        }
    }

    .chat-aside[b-ti5ue6t8t5] {
        width: 100%;
        max-width: 100%;
        min-height: 0;
        height: auto;
        flex: 0 0 auto;
        border-left: none;
        border-top: 2px solid #e8e8e8;
        overflow: hidden;
    }

    .chat-aside-inner[b-ti5ue6t8t5] {
        width: 100%;
        height: 300px;
        min-height: 300px;
        overflow: hidden;
    }

    .chat-aside-open[b-ti5ue6t8t5] {
        animation: chat-panel-mobile-column-in-b-ti5ue6t8t5 300ms ease-out both;
    }

        .chat-aside-open .chat-aside-inner[b-ti5ue6t8t5] {
            animation: chat-panel-mobile-content-in-b-ti5ue6t8t5 300ms ease-out both;
        }

    .chat-aside-closing[b-ti5ue6t8t5] {
        animation: chat-panel-mobile-column-out-b-ti5ue6t8t5 300ms ease-in both;
    }

        .chat-aside-closing .chat-aside-inner[b-ti5ue6t8t5] {
            animation: chat-panel-mobile-content-out-b-ti5ue6t8t5 300ms ease-in both;
        }

    @keyframes chat-panel-mobile-column-in-b-ti5ue6t8t5 {
        from {
            max-height: 0;
            opacity: 0;
        }

        to {
            max-height: 300px;
            opacity: 1;
        }
    }

    @keyframes chat-panel-mobile-column-out-b-ti5ue6t8t5 {
        from {
            max-height: 300px;
            opacity: 1;
        }

        to {
            max-height: 0;
            opacity: 0;
        }
    }

    @keyframes chat-panel-mobile-content-in-b-ti5ue6t8t5 {
        from {
            transform: translateY(-18px);
            opacity: 0;
        }

        to {
            transform: translateY(0);
            opacity: 1;
        }
    }

    @keyframes chat-panel-mobile-content-out-b-ti5ue6t8t5 {
        from {
            transform: translateY(0);
            opacity: 1;
        }

        to {
            transform: translateY(-18px);
            opacity: 0;
        }
    }

    /* Switch header from 3-column grid to wrapping flex so the button row
       can drop below the logo/template row instead of stacking vertically
       in its grid cell on narrow screens. */
    .session-header[b-ti5ue6t8t5] {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        row-gap: 0.4rem;
    }

    .header-left[b-ti5ue6t8t5] {
        min-width: 0;
        justify-self: unset;
    }

    /* Template row gets its own full line so it's never pushed off-screen */
    .header-center[b-ti5ue6t8t5] {
        width: 100%;
        justify-content: flex-start;
    }

    /* Button row always takes a full line so buttons wrap naturally */
    .header-right[b-ti5ue6t8t5] {
        width: 100%;
        flex-wrap: wrap;
        gap: 0.3rem;
        justify-self: unset;
    }

    .session-name[b-ti5ue6t8t5] {
        font-size: 0.9rem;
    }

    .header-logo img[b-ti5ue6t8t5] {
        height: 26px;
    }

    .header-divider[b-ti5ue6t8t5] {
        display: none;
    }

    /* Tighter buttons so they pack better on small screens */
    .btn-header[b-ti5ue6t8t5] {
        min-height: 34px;
        height: 34px;
        padding: 0.35rem 0.55rem;
        font-size: 0.75rem;
    }

    .btn-header-icon[b-ti5ue6t8t5] {
        min-width: 34px;
        height: 34px;
    }

    .btn-header-icon .icon[b-ti5ue6t8t5] {
        width: 1rem;
        height: 1rem;
    }
}

/* ── Footer expiry label ───────────────────────────────────────────────────────────────────── */
.footer-expiry[b-ti5ue6t8t5] {
    margin-left: auto;
    white-space: nowrap;
    color: rgba(255, 255, 255, 0.4);
    font-size: 0.78rem;
}

.footer-music[b-ti5ue6t8t5] {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    pointer-events: none;
}

.footer-expiry.expiry-warning[b-ti5ue6t8t5] {
    color: #f5a623;
}

.footer-expiry.expiry-urgent[b-ti5ue6t8t5] {
    color: #e74c3c;
    font-weight: 600;
    animation: expiry-pulse-b-ti5ue6t8t5 1.5s ease-in-out infinite;
}

@keyframes expiry-pulse-b-ti5ue6t8t5 {
    0%, 100% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }
}

.template-name-row[b-ti5ue6t8t5] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.template-icon[b-ti5ue6t8t5] {
    font-size: 1.4rem;
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    /* no opacity — colour comes from the icon's Color param */
}

/* ── Template change UI ─────────────────────────────────────────────────── */
.template-pill-row[b-ti5ue6t8t5] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

.btn-template-change[b-ti5ue6t8t5] {
    padding: 0.2rem 0.55rem;
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.85);
    font-size: 0.72rem;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s, border-color 0.15s;
}

    .btn-template-change:hover[b-ti5ue6t8t5] {
        background: rgba(255, 255, 255, 0.2);
        border-color: rgba(255, 255, 255, 0.6);
    }

    .btn-template-change:disabled[b-ti5ue6t8t5] {
        opacity: 0.35;
        cursor: not-allowed;
    }

.template-edit-row[b-ti5ue6t8t5] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.template-select[b-ti5ue6t8t5] {
    padding: 0.3rem 0.5rem;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    font-size: 0.85rem;
    font-weight: 500;
    cursor: pointer;
    outline: none;
}

    .template-select option[b-ti5ue6t8t5] {
        background: var(--brand-navy);
        color: #fff;
    }

.btn-template-action[b-ti5ue6t8t5] {
    padding: 0.3rem 0.65rem;
    border-radius: 5px;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    border: 1px solid transparent;
    white-space: nowrap;
    transition: background 0.15s, border-color 0.15s;
}

.btn-template-apply[b-ti5ue6t8t5] {
    background: var(--brand-green, #2a7a48);
    border-color: var(--brand-green, #2a7a48);
    color: #fff;
}

    .btn-template-apply:hover[b-ti5ue6t8t5] {
        background: #236640;
        border-color: #236640;
    }

.btn-template-cancel[b-ti5ue6t8t5] {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.3);
    color: rgba(255, 255, 255, 0.8);
}

    .btn-template-cancel:hover[b-ti5ue6t8t5] {
        background: rgba(255, 255, 255, 0.2);
    }

.session-team[b-ti5ue6t8t5] {
    display: flex;
    align-items: center;
    gap: 0.15rem;
    font-size: 0.8rem;
    color: rgba(255,255,255,0.75);
    margin-top: 0.1rem;
    font-weight: 500;
}

.session-meta-label[b-ti5ue6t8t5] {
    opacity: 0.7;
    font-weight: 500;
}

.session-meta-separator[b-ti5ue6t8t5] {
    opacity: 0.6;
    padding: 0 0.4rem;
}

.team-code[b-ti5ue6t8t5] {
    opacity: 0.65;
    font-size: 0.75rem;
    margin-right: 10px;
}

/* ── Audio Volume Popup ───────────────────────────────────────────── */
.audio-control-wrap[b-ti5ue6t8t5] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.audio-control-button[b-ti5ue6t8t5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 32px;
    min-height: 32px;
    padding: 0.12rem 0.62rem;
    line-height: 1;
}

    .audio-control-button .icon[b-ti5ue6t8t5] {
        width: 1.28rem;
        height: 1.28rem;
    }

.audio-popup-backdrop[b-ti5ue6t8t5] {
    position: fixed;
    inset: 0;
    z-index: 39;
    background: transparent;
}

.audio-popup[b-ti5ue6t8t5] {
    position: absolute;
    top: calc(100% + 0.45rem);
    right: 0;
    z-index: 1200;
    width: 205px;
    padding: 0.75rem;
    background: #fff;
    color: var(--brand-navy);
    border: 1px solid #d9e0ea;
    border-radius: 10px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.24);
}

    .audio-popup[b-ti5ue6t8t5]::before {
        content: "";
        position: absolute;
        top: -6px;
        right: 14px;
        width: 10px;
        height: 10px;
        background: #fff;
        border-left: 1px solid #d9e0ea;
        border-top: 1px solid #d9e0ea;
        transform: rotate(45deg);
    }

.audio-popup-header[b-ti5ue6t8t5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.6rem;
}

.audio-popup-title[b-ti5ue6t8t5] {
    font-size: 0.8rem;
    font-weight: 800;
    color: var(--brand-navy);
    line-height: 1.1;
}

.audio-popup-subtitle[b-ti5ue6t8t5] {
    margin-top: 0.15rem;
    font-size: 0.68rem;
    font-weight: 600;
    color: #7a8494;
    line-height: 1.1;
}

.audio-toggle[b-ti5ue6t8t5] {
    min-width: 44px;
    padding: 0.22rem 0.45rem;
    border: 1px solid #cfd8e3;
    border-radius: 999px;
    background: #f2f5f8;
    color: #667;
    font-size: 0.68rem;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}

    .audio-toggle:hover[b-ti5ue6t8t5] {
        background: #e8edf3;
    }

    .audio-toggle.audio-toggle-on[b-ti5ue6t8t5] {
        background: rgba(42, 122, 72, 0.12);
        border-color: rgba(42, 122, 72, 0.45);
        color: #1f6a3d;
    }

.audio-popup-label[b-ti5ue6t8t5] {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 0.72rem;
    font-weight: 700;
    color: #667;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.audio-popup input[type="range"][b-ti5ue6t8t5] {
    width: 100%;
    accent-color: var(--brand-blue);
}

    .audio-popup input[type="range"]:disabled[b-ti5ue6t8t5] {
        opacity: 0.45;
        cursor: not-allowed;
    }

.audio-popup-value[b-ti5ue6t8t5] {
    margin-top: 0.35rem;
    font-size: 0.75rem;
    font-weight: 700;
    color: #667;
    text-align: right;
}

@media (max-width: 768px) {
    .audio-control-button[b-ti5ue6t8t5] {
        height: 30px;
        min-height: 30px;
        min-width: 32px;
    }

    .audio-popup[b-ti5ue6t8t5] {
        left: 0;
        right: auto;
    }

        .audio-popup[b-ti5ue6t8t5]::before {
            left: 14px;
            right: auto;
        }
}

/* ── Scrum Master Condensed Menu ─────────────────────────────────── */
.sm-menu-wrap[b-ti5ue6t8t5] {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.sm-menu-button[b-ti5ue6t8t5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    height: 32px;
}

.sm-menu-backdrop[b-ti5ue6t8t5] {
    position: fixed;
    inset: 0;
    z-index: 39;
    background: transparent;
}

.sm-menu[b-ti5ue6t8t5] {
    position: absolute;
    top: calc(100% + 0.45rem);
    right: 0;
    z-index: 1200;
    width: 235px;
    padding: 0.45rem;
    background: #fff;
    color: var(--brand-navy);
    border: 1px solid #d9e0ea;
    border-radius: 10px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.24);
}

    .sm-menu[b-ti5ue6t8t5]::before {
        content: "";
        position: absolute;
        top: -6px;
        right: 18px;
        width: 10px;
        height: 10px;
        background: #fff;
        border-left: 1px solid #d9e0ea;
        border-top: 1px solid #d9e0ea;
        transform: rotate(45deg);
    }

.sm-menu-title[b-ti5ue6t8t5] {
    padding: 0.35rem 0.45rem 0.45rem;
    font-size: 0.72rem;
    font-weight: 800;
    color: #7a8494;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.sm-menu-item[b-ti5ue6t8t5] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    width: 100%;
    padding: 0.5rem 0.55rem;
    border: none;
    border-radius: 7px;
    background: transparent;
    color: var(--brand-navy);
    font-size: 0.84rem;
    font-weight: 650;
    text-align: left;
    cursor: pointer;
    line-height: 1.2;
}

    .sm-menu-item:hover[b-ti5ue6t8t5],
    .sm-menu-item.active[b-ti5ue6t8t5] {
        background: #f0f5fb;
    }

.sm-menu-separator[b-ti5ue6t8t5] {
    height: 1px;
    margin: 0.35rem 0.25rem;
    background: #e7edf4;
}

@media (max-width: 768px) {
    .sm-menu-button[b-ti5ue6t8t5] {
        height: 30px;
        min-height: 30px;
    }

    /* Keep the SM menu anchored to the right edge of the SM button on mobile.
       The header button is often near the viewport edge, so left-aligning the
       menu can push part of it off-screen. */
    .sm-menu[b-ti5ue6t8t5] {
        right: 0;
        left: auto;
        width: min(235px, calc(100vw - 1rem));
    }

        .sm-menu[b-ti5ue6t8t5]::before {
            right: 18px;
            left: auto;
        }
}


/* ── Mobile popup viewport correction ──────────────────────────────
   Keep dropdowns inside the visible browser width. */
@media (max-width: 768px) {
    .sm-menu-wrap[b-ti5ue6t8t5] {
        position: relative;
    }

    .sm-menu[b-ti5ue6t8t5] {
        left: auto !important;
        right: 0 !important;
        width: min(235px, calc(100vw - 1.5rem));
        max-width: calc(100vw - 1.5rem);
    }

        .sm-menu[b-ti5ue6t8t5]::before {
            left: auto !important;
            right: 18px !important;
        }
}

.sprint-continuity-body[b-ti5ue6t8t5] {
    max-height: calc(100vh - 220px);
    overflow-y: auto;
    padding-right: .5rem;
}

/* ── Header action control cleanup ─────────────────────────────────
   Single source of truth for compact session header controls.
   Keep this section consolidated; do not add additional stacked
   "final polish" overrides below it. */
.session-header .header-right .btn-header[b-ti5ue6t8t5],
.session-header .header-right .audio-control-button[b-ti5ue6t8t5],
.session-header .header-right .sm-menu-button[b-ti5ue6t8t5] {
    height: 32px;
    min-height: 32px;
    padding: 0.12rem 0.62rem;
    gap: 0.42rem;
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1;
}

.session-header .header-right .btn-header-icon[b-ti5ue6t8t5],
.session-header .header-right .audio-control-button[b-ti5ue6t8t5],
.session-header .header-right .sm-menu-button[b-ti5ue6t8t5] {
    min-width: 32px;
}

/* Icon is a child component, so ::deep is required for scoped CSS. */
.session-header .header-right .btn-header[b-ti5ue6t8t5]  svg.icon,
.session-header .header-right .btn-header[b-ti5ue6t8t5]  .icon,
.session-header .timer-badge[b-ti5ue6t8t5]  svg.icon,
.session-header .timer-badge[b-ti5ue6t8t5]  .icon,
.session-header .header-right .sm-menu-button[b-ti5ue6t8t5]  svg.icon:not(.header-chevron-icon),
.session-header .header-right .sm-menu-button[b-ti5ue6t8t5]  .icon:not(.header-chevron-icon) {
    width: 1.2rem;
    height: 1.2rem;
}

.session-header .header-right .audio-control-button[b-ti5ue6t8t5]  svg.icon,
.session-header .header-right .audio-control-button[b-ti5ue6t8t5]  .icon {
    width: 1.28rem;
    height: 1.28rem;
}

.session-header .header-right .sm-menu-button[b-ti5ue6t8t5]  svg.header-chevron-icon,
.session-header .header-right .sm-menu-button[b-ti5ue6t8t5]  .header-chevron-icon {
    width: 0.68rem;
    height: 0.68rem;
    opacity: 0.72;
    margin-left: 0.02rem;
}

.sm-menu-item .icon[b-ti5ue6t8t5],
.sm-menu-item[b-ti5ue6t8t5]  .icon {
    color: #667085;
    flex-shrink: 0;
}

.sm-menu-item:hover .icon[b-ti5ue6t8t5],
.sm-menu-item.active .icon[b-ti5ue6t8t5],
.sm-menu-item:hover[b-ti5ue6t8t5]  .icon,
.sm-menu-item.active[b-ti5ue6t8t5]  .icon {
    color: var(--brand-blue);
}

.audio-popup[b-ti5ue6t8t5],
.sm-menu[b-ti5ue6t8t5] {
    animation: header-popup-in-b-ti5ue6t8t5 120ms ease-out both;
}

@keyframes header-popup-in-b-ti5ue6t8t5 {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Keep the embedded chat visually aligned with BugNBrag instead of the
   default BlazorChat blue theme. */
.chat-aside[b-ti5ue6t8t5]  .chat-header,
.chat-aside[b-ti5ue6t8t5]  .blazor-chat-header,
.chat-aside[b-ti5ue6t8t5]  .bc-chat-header,
.chat-aside[b-ti5ue6t8t5]  .card-header,
.chat-aside[b-ti5ue6t8t5]  [class*="chat-header"],
.chat-aside[b-ti5ue6t8t5]  [class*="ChatHeader"] {
    background: var(--brand-navy) !important;
    border-color: var(--brand-navy) !important;
    color: #fff !important;
}

.chat-aside[b-ti5ue6t8t5]  .chat-header *,
.chat-aside[b-ti5ue6t8t5]  .blazor-chat-header *,
.chat-aside[b-ti5ue6t8t5]  .bc-chat-header *,
.chat-aside[b-ti5ue6t8t5]  .card-header *,
.chat-aside[b-ti5ue6t8t5]  [class*="chat-header"] *,
.chat-aside[b-ti5ue6t8t5]  [class*="ChatHeader"] * {
    color: #fff !important;
}

/* Board card/column header corner polish. These use ::deep because the
   markup is owned by child board/card components. */
.board-area[b-ti5ue6t8t5]  .column-header,
.board-area[b-ti5ue6t8t5]  .retro-column-header,
.board-area[b-ti5ue6t8t5]  .card-column-header,
.board-area[b-ti5ue6t8t5]  [class*="column-header"],
.board-area[b-ti5ue6t8t5]  [class*="ColumnHeader"] {
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    overflow: hidden;
}

@media (max-width: 768px) {
    .session-header .header-right .btn-header[b-ti5ue6t8t5],
    .session-header .header-right .audio-control-button[b-ti5ue6t8t5],
    .session-header .header-right .sm-menu-button[b-ti5ue6t8t5] {
        height: 30px;
        min-height: 30px;
        padding: 0.1rem 0.54rem;
        gap: 0.34rem;
        font-size: 0.74rem;
    }

    .session-header .header-right .btn-header-icon[b-ti5ue6t8t5],
    .session-header .header-right .audio-control-button[b-ti5ue6t8t5],
    .session-header .header-right .sm-menu-button[b-ti5ue6t8t5] {
        min-width: 30px;
    }

    .session-header .header-right .btn-header[b-ti5ue6t8t5]  svg.icon,
    .session-header .header-right .btn-header[b-ti5ue6t8t5]  .icon,
    .session-header .timer-badge[b-ti5ue6t8t5]  svg.icon,
    .session-header .timer-badge[b-ti5ue6t8t5]  .icon,
    .session-header .header-right .sm-menu-button[b-ti5ue6t8t5]  svg.icon:not(.header-chevron-icon),
    .session-header .header-right .sm-menu-button[b-ti5ue6t8t5]  .icon:not(.header-chevron-icon) {
        width: 1.08rem;
        height: 1.08rem;
    }

    .session-header .header-right .audio-control-button[b-ti5ue6t8t5]  svg.icon,
    .session-header .header-right .audio-control-button[b-ti5ue6t8t5]  .icon {
        width: 1.16rem;
        height: 1.16rem;
    }
}



/* Combined Scrum Master timer control: countdown + stop action in one button. */
.timer-button-with-countdown[b-ti5ue6t8t5] {
    gap: 0.45rem;
}

.timer-button-countdown[b-ti5ue6t8t5] {
    display: inline-flex;
    align-items: center;
    gap: 0.28rem;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}


/* ── Board-scoped Sprint Continuity layout ─────────────────────────────── */
.board-continuity-region[b-ti5ue6t8t5] {
    flex: 0 0 auto;
    min-height: 54px;
    overflow: hidden;
}

/* Expanded state is driven by the child panel rendering its body. This keeps
   the collapsed header visible on initial load without showing the splitter. */
.board-continuity-expanded[b-ti5ue6t8t5],
.board-continuity-region:has(.previous-followups-body)[b-ti5ue6t8t5] {
    height: 260px;
    flex-basis: 260px;
    max-height: min(52vh, 520px);
}

/* SprintContinuityPanel has its own isolated CSS. Use ::deep so the board
   column owns the outer alignment when the panel is hosted above the board. */
.board-area[b-ti5ue6t8t5]  .previous-followups-banner {
    margin: 0;
}

.board-continuity-region[b-ti5ue6t8t5]  .previous-followups-banner {
    height: auto;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.board-continuity-expanded[b-ti5ue6t8t5]  .previous-followups-banner,
.board-continuity-region:has(.previous-followups-body)[b-ti5ue6t8t5]  .previous-followups-banner {
    height: 100%;
}

/* One scrollbar only: the panel body scrolls; inner list wrappers do not. */
.board-continuity-region[b-ti5ue6t8t5]  .previous-followups-body {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    max-height: none;
}

.board-continuity-region[b-ti5ue6t8t5]  .sprint-continuity-body,
.board-continuity-region[b-ti5ue6t8t5]  .previous-followups-scroll {
    max-height: none;
    overflow: visible;
    padding-right: 0;
}

/* Thin splitter: visually reads as ──────────── • • • ──────────── */
.continuity-splitter[b-ti5ue6t8t5] {
    display: none;
    position: relative;
    flex: 0 0 10px;
    height: 10px;
    min-height: 10px;
    cursor: row-resize;
    user-select: none;
    touch-action: none;
    margin: -0.3rem 0 -0.15rem;
}


.board-continuity-expanded + .continuity-splitter[b-ti5ue6t8t5],
.board-continuity-region:has(.previous-followups-body) + .continuity-splitter[b-ti5ue6t8t5] {
    display: block;
}

.continuity-splitter[b-ti5ue6t8t5]::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    border-top: 1px solid #d8e0ea;
    transform: translateY(-50%);
}

.continuity-splitter-grip[b-ti5ue6t8t5] {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 0.45rem;
    background: #eef2f7;
    color: #7b8798;
    font-size: 0.82rem;
    font-weight: 900;
    letter-spacing: 0.18rem;
    line-height: 1;
}

.continuity-splitter:hover[b-ti5ue6t8t5]::before,
.continuity-splitter.dragging[b-ti5ue6t8t5]::before {
    border-color: var(--brand-blue, #4a90d9);
}

.continuity-splitter:hover .continuity-splitter-grip[b-ti5ue6t8t5],
.continuity-splitter.dragging .continuity-splitter-grip[b-ti5ue6t8t5] {
    color: var(--brand-blue, #4a90d9);
}
/* /Components/Pages/SmFeedbackPrompt.razor.rz.scp.css */
.sm-feedback-modal-backdrop[b-lhuwiy4420] {
    position: fixed;
    inset: 0;
    z-index: 2147482500;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(15, 23, 42, 0.62);
    backdrop-filter: blur(2px);
}

.sm-feedback-card[b-lhuwiy4420] {
    position: relative;
    margin-bottom: 1.25rem;
    padding: 1.25rem 1.25rem 1rem;
    border-radius: 14px;
    border: 1px solid rgba(74, 144, 217, 0.2);
    background: linear-gradient(135deg, rgba(74, 144, 217, 0.08), rgba(255, 255, 255, 0.98));
    box-shadow: 0 10px 28px rgba(30, 58, 95, 0.08);
}

.sm-feedback-card--modal[b-lhuwiy4420] {
    width: min(520px, 100%);
    margin-bottom: 0;
    background: #fff;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.36);
}

.sm-feedback-dismiss[b-lhuwiy4420] {
    position: absolute;
    top: 0.8rem;
    right: 0.8rem;
    border: none;
    background: none;
    color: #7a8796;
    cursor: pointer;
    font-size: 0.95rem;
    line-height: 1;
}

.sm-feedback-eyebrow[b-lhuwiy4420] {
    margin: 0 0 0.35rem;
    color: var(--brand-blue);
    font-size: 0.88rem;
    font-weight: 700;
}

.sm-feedback-title[b-lhuwiy4420] {
    margin: 0 2rem 0.85rem 0;
    color: var(--brand-navy);
    font-size: 1.2rem;
}

.sm-feedback-stars[b-lhuwiy4420] {
    display: flex;
    gap: 0.35rem;
    margin-bottom: 0.9rem;
}

.sm-feedback-star[b-lhuwiy4420] {
    border: none;
    background: none;
    padding: 0;
    color: #d5dce6;
    cursor: pointer;
    font-size: 2rem;
    line-height: 1;
    transition: transform 0.12s ease, color 0.12s ease;
}

.sm-feedback-star:hover[b-lhuwiy4420] {
    transform: scale(1.08);
}

.sm-feedback-star--hover[b-lhuwiy4420],
.sm-feedback-star--selected[b-lhuwiy4420] {
    color: var(--brand-gold);
}

.sm-feedback-comment[b-lhuwiy4420] {
    width: 100%;
    box-sizing: border-box;
    min-height: 110px;
    padding: 0.7rem 0.85rem;
    border: 1.5px solid #d9e1ea;
    border-radius: 10px;
    resize: vertical;
    font: inherit;
    margin-bottom: 0.9rem;
    outline: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.sm-feedback-comment:focus[b-lhuwiy4420] {
    border-color: var(--brand-blue);
    box-shadow: 0 0 0 3px rgba(74, 144, 217, 0.12);
}

.sm-feedback-actions[b-lhuwiy4420] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.btn-sm-feedback-submit[b-lhuwiy4420],
.btn-sm-feedback-skip[b-lhuwiy4420] {
    border-radius: 10px;
    padding: 0.72rem 1.1rem;
    font: inherit;
    cursor: pointer;
}

.btn-sm-feedback-submit[b-lhuwiy4420] {
    border: none;
    background: linear-gradient(135deg, var(--brand-navy), var(--brand-blue));
    color: #fff;
    font-weight: 700;
}

.btn-sm-feedback-submit:disabled[b-lhuwiy4420] {
    opacity: 0.45;
    cursor: default;
}

.btn-sm-feedback-skip[b-lhuwiy4420] {
    border: 1.5px solid #d7dde5;
    background: #fff;
    color: #66707c;
}

.btn-sm-feedback-skip:hover[b-lhuwiy4420],
.sm-feedback-dismiss:hover[b-lhuwiy4420] {
    color: var(--brand-navy);
}

@media (max-width: 640px) {
    .sm-feedback-actions[b-lhuwiy4420] {
        flex-direction: column;
    }

    .btn-sm-feedback-submit[b-lhuwiy4420],
    .btn-sm-feedback-skip[b-lhuwiy4420] {
        width: 100%;
    }
}
/* /Components/Pages/TeamAccessPanel.razor.rz.scp.css */
.team-access-panel[b-4zcgyi9cqa] {
    margin-top: 0;
}

.team-access-card[b-4zcgyi9cqa] {
    padding: 0.9rem;
    border: 1px solid #dce6f2;
    border-radius: 10px;
    background: #f8fbff;
}

.team-access-copy[b-4zcgyi9cqa] {
    margin-bottom: 0.85rem;
}

.team-access-title[b-4zcgyi9cqa] {
    margin: 0 0 0.25rem;
    color: #263f63;
    font-size: 0.9rem;
    font-weight: 800;
}

.team-access-description[b-4zcgyi9cqa] {
    margin: 0;
    color: #667;
    font-size: 0.78rem;
    line-height: 1.35;
}

.team-access-field-group[b-4zcgyi9cqa] {
    margin-bottom: 0.75rem;
}

    .team-access-field-group label[b-4zcgyi9cqa] {
        display: block;
        margin-bottom: 0.35rem;
        color: #555;
        font-size: 0.78rem;
        font-weight: 700;
    }

.team-access-input[b-4zcgyi9cqa] {
    width: 100%;
    box-sizing: border-box;
    padding: 0.65rem 0.8rem;
    border: 2px solid #e0e0e0;
    border-radius: 8px;
    background: #fff;
    font-size: 0.92rem;
    transition: border-color 0.2s;
}

    .team-access-input:focus[b-4zcgyi9cqa] {
        outline: none;
        border-color: var(--brand-blue);
    }

.team-access-message[b-4zcgyi9cqa] {
    margin: 0 0 0.75rem;
    font-size: 0.8rem;
    line-height: 1.35;
}

.team-access-message--error[b-4zcgyi9cqa] {
    color: var(--brand-red);
}

.team-access-message--success[b-4zcgyi9cqa] {
    color: var(--brand-green-dark);
}

.team-access-button[b-4zcgyi9cqa] {
    width: 100%;
    min-height: 42px;
    padding: 0.7rem;
    border: 1px solid var(--brand-navy);
    border-radius: 8px;
    background: var(--brand-navy);
    color: #fff;
    font-size: 0.9rem;
    font-weight: 700;
    cursor: pointer;
    transition: opacity 0.2s, transform 0.1s;
}

    .team-access-button:hover:not(:disabled)[b-4zcgyi9cqa] {
        opacity: 0.9;
    }

    .team-access-button:active[b-4zcgyi9cqa] {
        transform: scale(0.98);
    }

    .team-access-button:disabled[b-4zcgyi9cqa] {
        opacity: 0.6;
        cursor: not-allowed;
    }
/* /Components/Pages/Terms.razor.rz.scp.css */
.terms[b-00xtiamm8j] {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #222;
}

/* ── Hero ──────────────────────────────────────────────────────────── */
.terms-hero[b-00xtiamm8j] {
    background: linear-gradient(135deg, var(--brand-navy-dark) 0%, var(--brand-navy) 100%);
    padding: 5rem 1.5rem 4rem;
    text-align: center;
    color: #fff;
}

.hero-inner[b-00xtiamm8j] {
    max-width: 640px;
    margin: 0 auto;
}

.hero-logo[b-00xtiamm8j] {
    width: 280px;
    height: auto;
    margin-bottom: 1.5rem;
    background: #fff;
    border-radius: 12px;
    padding: 0.75rem 1.25rem;
}

.hero-title[b-00xtiamm8j] {
    font-size: 2.4rem;
    font-weight: 800;
    margin: 0 0 1rem;
    line-height: 1.15;
}

.hero-tagline[b-00xtiamm8j] {
    font-size: 1.05rem;
    font-weight: 400;
    opacity: 0.9;
    margin: 0;
    line-height: 1.6;
}

/* ── Sections ──────────────────────────────────────────────────────── */
.terms-section[b-00xtiamm8j] {
    padding: 3rem 1.5rem;
    background: #fff;
}

.terms-section--alt[b-00xtiamm8j] {
    background: #f4f6f9;
}

.section-inner[b-00xtiamm8j] {
    max-width: 760px;
    margin: 0 auto;
}

.section-title[b-00xtiamm8j] {
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--brand-navy);
    margin: 0 0 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #e8ecf0;
}

/* ── Body copy ─────────────────────────────────────────────────────── */
.terms-body[b-00xtiamm8j] {
    font-size: 0.97rem;
    line-height: 1.75;
    color: #444;
    margin: 0 0 0.85rem;
}

.terms-body:last-child[b-00xtiamm8j] {
    margin-bottom: 0;
}

.terms-link[b-00xtiamm8j] {
    color: var(--brand-blue);
    text-decoration: underline;
}

.terms-link:hover[b-00xtiamm8j] {
    color: var(--brand-navy);
}

/* ── Lists ─────────────────────────────────────────────────────────── */
.terms-list[b-00xtiamm8j] {
    list-style: none;
    padding: 0;
    margin: 0 0 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.terms-list li[b-00xtiamm8j] {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    font-size: 0.97rem;
    color: #333;
    line-height: 1.55;
}

.terms-list li[b-00xtiamm8j]::before {
    content: '–';
    color: var(--brand-blue);
    font-weight: 700;
    flex-shrink: 0;
    margin-top: 0.05rem;
}

/* ── Contact blocks ────────────────────────────────────────────────── */
.terms-contact-block[b-00xtiamm8j] {
    margin-bottom: 1.1rem;
}

.terms-contact-block:last-child[b-00xtiamm8j] {
    margin-bottom: 0;
}

.terms-contact-label[b-00xtiamm8j] {
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #999;
    margin: 0 0 0.2rem;
}

.terms-contact-link[b-00xtiamm8j] {
    font-size: 0.97rem;
    color: var(--brand-blue);
    text-decoration: underline;
}

.terms-contact-link:hover[b-00xtiamm8j] {
    color: var(--brand-navy);
}

/* ── Footer ────────────────────────────────────────────────────────── */
.terms-footer[b-00xtiamm8j] {
    background: var(--brand-navy-dark);
    color: rgba(255, 255, 255, 0.5);
    text-align: center;
    padding: .25rem;
    font-size: 0.8rem;
}

.terms-footer a[b-00xtiamm8j] {
    color: rgba(255, 255, 255, 0.7);
}

.terms-footer a:hover[b-00xtiamm8j] {
    color: #fff;
}

/* ── Responsive ────────────────────────────────────────────────────── */
@media (max-width: 600px) {
    .hero-title[b-00xtiamm8j] {
        font-size: 1.8rem;
    }

    .hero-tagline[b-00xtiamm8j] {
        font-size: 0.97rem;
    }

    .section-title[b-00xtiamm8j] {
        font-size: 1.15rem;
    }
}
/* /Components/Pages/WhatsNew.razor.rz.scp.css */
/* ── What's New Page ─────────────────────────────────────────────── */

.whats-new-page[b-33210d5uki] {
    min-height: 100vh;
    background:
        radial-gradient(circle at top left, rgba(74, 144, 217, 0.22), transparent 34rem),
        linear-gradient(135deg, var(--brand-navy-dark) 0%, var(--brand-navy) 100%);
    padding: 2rem 1rem 3rem;
}

.whats-new-shell[b-33210d5uki],
.whats-new-hero[b-33210d5uki],
.whats-new-section[b-33210d5uki],
.whats-new-feedback[b-33210d5uki] {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
}



.whats-new-shell[b-33210d5uki] {
    margin-bottom: 0.75rem;
}

.whats-new-home-link[b-33210d5uki] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    color: #d7e3ff;
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
    transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

.whats-new-home-link:visited[b-33210d5uki],
.whats-new-home-link:active[b-33210d5uki] {
    color: #d7e3ff;
}

.whats-new-home-link:hover[b-33210d5uki] {
    color: #ffffff;
    text-decoration: underline;
}

.whats-new-hero[b-33210d5uki] {
    background: #fff;
    border-radius: 16px;
    padding: 2.25rem 2rem 2rem;
    text-align: center;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.28);
}

    .whats-new-hero .logo-banner[b-33210d5uki] {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: 1.1rem;
    }

        .whats-new-hero .logo-banner img[b-33210d5uki] {
            width: 260px;
            max-width: 100%;
            height: auto;
        }

    .whats-new-hero h1[b-33210d5uki] {
        margin: 0;
        font-size: 2.6rem;
        line-height: 1.05;
        color: var(--brand-navy);
        letter-spacing: -0.035em;
    }

    .whats-new-hero p[b-33210d5uki] {
        max-width: 690px;
        margin: 0.9rem auto 0;
        color: #4f5d72;
        font-size: 1rem;
        line-height: 1.55;
    }

.whats-new-updated[b-33210d5uki] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    margin-top: 1.15rem;
    padding: 0.38rem 0.85rem;
    border-radius: 999px;
    background: #eef6ff;
    border: 1px solid #c7ddf5;
    color: #145fb0;
    font-size: 0.82rem;
    font-weight: 700;
}

.whats-new-section[b-33210d5uki] {
    margin-top: 1.75rem;
    background: #fff;
    border-radius: 16px;
    padding: 1.75rem;
    box-shadow: 0 14px 38px rgba(0, 0, 0, 0.18);
}

    .whats-new-section h2[b-33210d5uki] {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        margin: 0 0 1.15rem;
        padding-bottom: 0.75rem;
        border-bottom: 1px solid #dbe5f2;
        color: var(--brand-navy);
        font-size: 1.35rem;
    }

.release-grid[b-33210d5uki] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
}

.release-card[b-33210d5uki] {
    position: relative;
    min-height: 225px;
    padding: 1.05rem 0.95rem 1rem;
    background: linear-gradient(180deg, #f9fcff 0%, #fff 100%);
    border: 1px solid #c9d8ea;
    border-radius: 12px;
    text-align: center;
    box-shadow: 0 2px 8px rgba(31, 60, 136, 0.05);
}

.release-card-featured[b-33210d5uki] {
    background: linear-gradient(180deg, #f6fbff 0%, #fff 100%);
}

.release-badge[b-33210d5uki] {
    position: absolute;
    top: 0.6rem;
    left: 0.65rem;
    padding: 0.17rem 0.42rem;
    border-radius: 6px;
    background: #dff2df;
    border: 1px solid #bedfbe;
    color: #1d6b31;
    font-size: 0.68rem;
    line-height: 1;
    font-weight: 900;
    letter-spacing: 0.035em;
}

.release-icon[b-33210d5uki] {
    margin: 1.2rem auto 0.7rem;
    font-size: 2.65rem;
    line-height: 1;
}

.release-card h3[b-33210d5uki] {
    margin: 0 0 0.45rem;
    color: var(--brand-navy);
    font-size: 1rem;
    line-height: 1.2;
}

.release-card p[b-33210d5uki] {
    margin: 0;
    color: #253047;
    font-size: 0.86rem;
    line-height: 1.45;
}

.improvements-card[b-33210d5uki] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.9rem;
    margin-top: 0.85rem;
    padding: 0.9rem 1rem 1rem;
    border: 1px solid #bedfc7;
    border-radius: 12px;
    background: linear-gradient(180deg, #f7fff9 0%, #fff 100%);
}

.improvements-icon[b-33210d5uki] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background: #4c9a5e;
    color: #fff;
    font-size: 1.15rem;
    font-weight: 900;
    box-shadow: 0 0 0 4px rgba(76, 154, 94, 0.12);
}

.improvements-content h3[b-33210d5uki] {
    margin: 0 0 0.65rem;
    color: var(--brand-navy);
    font-size: 1.06rem;
}

.improvements-list[b-33210d5uki] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem 1.15rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

    .improvements-list li[b-33210d5uki] {
        position: relative;
        padding-left: 1.45rem;
        color: #243047;
        font-size: 0.84rem;
        line-height: 1.35;
    }

        .improvements-list li[b-33210d5uki]::before {
            content: "✓";
            position: absolute;
            left: 0;
            top: 0.02rem;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 0.95rem;
            height: 0.95rem;
            border-radius: 999px;
            background: #4c9a5e;
            color: #fff;
            font-size: 0.64rem;
            font-weight: 900;
        }

.older-release-card[b-33210d5uki] {
    margin-top: 0.85rem;
    padding: 0.95rem 1rem;
    border: 1px solid #c9d8ea;
    border-radius: 12px;
    background: #fbfdff;
}

    .older-release-card h3[b-33210d5uki] {
        display: flex;
        align-items: center;
        gap: 0.45rem;
        margin: 0 0 0.75rem;
        color: var(--brand-navy);
        font-size: 1.05rem;
    }

.older-updates[b-33210d5uki] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    list-style: none;
    padding: 0;
    margin: 0;
}

    .older-updates li[b-33210d5uki] {
        background: #fff;
        border: 1px solid #b9cef0;
        border-radius: 999px;
        padding: 0.4rem 0.85rem;
        color: #145fb0;
        font-size: 0.82rem;
        font-weight: 700;
    }

.whats-new-feedback[b-33210d5uki] {
    margin-top: 1.75rem;
    background: #fff;
    border-radius: 16px;
    padding: 1.75rem 2rem 2rem;
    text-align: center;
    box-shadow: 0 14px 38px rgba(0, 0, 0, 0.18);
}

.feedback-icon[b-33210d5uki] {
    margin-bottom: 0.55rem;
    font-size: 2rem;
    line-height: 1;
}

.whats-new-feedback h2[b-33210d5uki] {
    margin: 0;
    color: var(--brand-navy);
    font-size: 1.4rem;
}

.whats-new-feedback p[b-33210d5uki] {
    max-width: 660px;
    margin: 0.65rem auto 1.2rem;
    color: #4f5d72;
    line-height: 1.5;
}

.whats-new-actions[b-33210d5uki] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 1.2rem;
}

.whats-new-secondary-button[b-33210d5uki] {
    font: inherit;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    min-height: 46px;
    min-width: 180px;
    padding: 0.8rem 1.45rem;
    border: 2px solid var(--brand-blue);
    border-radius: 8px;
    background: #fff;
    color: var(--brand-blue);
    font-weight: 800;
    text-decoration: none;
}

.whats-new-secondary-button:hover[b-33210d5uki] {
    background: #f4f8ff;
    color: var(--brand-navy);
    text-decoration: none;
}

.whats-new-cta-button[b-33210d5uki] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    min-height: 46px;
    min-width: 180px;
    padding: 0.8rem 1.6rem;
    border-radius: 8px;
    border: 2px solid var(--brand-blue);
    background: linear-gradient(135deg, var(--brand-navy), var(--brand-blue));
    color: #fff;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 8px 18px rgba(74, 144, 217, 0.24);
}

.whats-new-cta-button:hover[b-33210d5uki] {
    color: #fff;
    opacity: 0.92;
    text-decoration: none;
}

@media (max-width: 980px) {
    .release-grid[b-33210d5uki] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .whats-new-page[b-33210d5uki] {
        padding: 1rem;
    }

    .whats-new-hero[b-33210d5uki],
    .whats-new-section[b-33210d5uki],
    .whats-new-feedback[b-33210d5uki] {
        padding: 1.35rem;
    }

    .whats-new-hero .logo-banner img[b-33210d5uki] {
        width: 220px;
    }

    .whats-new-hero h1[b-33210d5uki] {
        font-size: 2rem;
    }

    .release-grid[b-33210d5uki],
    .improvements-list[b-33210d5uki] {
        grid-template-columns: 1fr;
    }

    .release-card[b-33210d5uki] {
        min-height: auto;
    }

    .improvements-card[b-33210d5uki] {
        grid-template-columns: 1fr;
    }

    .improvements-icon[b-33210d5uki] {
        margin: 0 auto;
    }

    .improvements-content h3[b-33210d5uki] {
        text-align: center;
    }

    .whats-new-secondary-button[b-33210d5uki],
    .whats-new-cta-button[b-33210d5uki] {
        width: 100%;
    }
}
/* /Components/Pages/WorldMapModal.razor.rz.scp.css */
/* ── Overlay — full-screen backdrop only ── */
.map-overlay[b-qhmtvnsotw] {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    z-index: 1000;
}

.map-overlay--open[b-qhmtvnsotw] {
    display: block;
}

/* ── Panel — defaults to the full viewport client area ── */
.map-panel[b-qhmtvnsotw] {
    position: fixed;
    top:  0;
    left: 0;
    width:  100vw;
    height: 100vh;

    min-width:  420px;
    min-height: 360px;

    background: #fff;
    border-radius: 0;
    box-shadow: 0 8px 40px rgba(0, 0, 0, 0.3);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    resize: both;
    z-index: 1001;
}

/* ── Header doubles as the drag handle ── */
.map-panel-header[b-qhmtvnsotw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.9rem 1.25rem;
    border-bottom: 1px solid #e8e8e8;
    flex-shrink: 0;
    cursor: move;
    user-select: none;
}

.map-panel-title[b-qhmtvnsotw] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: #2d3748;
    pointer-events: none;
}

.map-panel-close[b-qhmtvnsotw] {
    background: none;
    border: none;
    font-size: 1.1rem;
    cursor: pointer;
    color: #888;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    line-height: 1;
    transition: background 0.15s, color 0.15s;
}

.map-panel-close:hover[b-qhmtvnsotw] {
    background: #f5f5f5;
    color: #333;
}

/* ── Legend ── */
.map-panel-legend[b-qhmtvnsotw] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.15rem;
    padding: 0.5rem 1.25rem;
    font-size: 0.78rem;
    color: #666;
    border-bottom: 1px solid #f0f0f0;
    flex-shrink: 0;
}

.legend-swatch[b-qhmtvnsotw] {
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    vertical-align: middle;
    flex-shrink: 0;
    box-sizing: border-box;
}

/* ── Leaflet container fills remaining flex space ── */
.map-leaflet-container[b-qhmtvnsotw] {
    flex: 1 1 0;
    min-height: 0;
    width: 100%;
}

/* ── Empty / notice states ── */
.map-panel-empty[b-qhmtvnsotw] {
    padding: 2.5rem 1.25rem;
    text-align: center;
    color: #aaa;
    font-size: 0.95rem;
}

.map-geocoding-notice[b-qhmtvnsotw] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1000;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid #e8e8e8;
    border-radius: 20px;
    padding: 0.4rem 1.25rem;
    font-size: 0.95rem;
    color: #555;
    pointer-events: none;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    white-space: nowrap;
}

/* Hidden state — Blazor adds/removes this class via _geocoding flag */
.map-geocoding-notice--hidden[b-qhmtvnsotw] {
    display: none;
}
/* /Components/Retro/AddCardComponent.razor.rz.scp.css */
.add-card-wrapper[b-i9fmcjcq2g] {
    padding: 0.6rem;
    border-bottom: 1px solid #eee;
    flex-shrink: 0; /* prevent flex from collapsing the add-card area into the card list */
}

.btn-add-card[b-i9fmcjcq2g] {
    width: 100%;
    padding: 0.5rem;
    background: transparent;
    border: 2px dashed #ccc;
    border-radius: 6px;
    color: #999;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    min-height: 40px;
    transition: border-color 0.2s, color 0.2s;
}

.btn-add-card:hover[b-i9fmcjcq2g],
.btn-add-card:focus[b-i9fmcjcq2g] {
    border-color: #888;
    color: #555;
}

.add-card-form[b-i9fmcjcq2g] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.card-textarea[b-i9fmcjcq2g] {
    width: 100%;
    padding: 0.5rem 0.6rem;
    border: 2px solid #ccc;
    border-radius: 6px;
    font-size: 0.875rem;
    font-family: inherit;
    resize: vertical;
    min-height: 60px;
    box-sizing: border-box;
    line-height: 1.5;
}

.card-textarea:focus[b-i9fmcjcq2g] {
    outline: none;
    border-color: #0f3460;
}

.add-card-actions[b-i9fmcjcq2g] {
    display: flex;
    gap: 0.5rem;
}

.btn-submit[b-i9fmcjcq2g] {
    padding: 0.4rem 1rem;
    background: #0f3460;
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    min-height: 36px;
}

.btn-submit:disabled[b-i9fmcjcq2g] {
    opacity: 0.45;
    cursor: not-allowed;
}

.btn-cancel[b-i9fmcjcq2g] {
    padding: 0.4rem 0.75rem;
    background: transparent;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 0.875rem;
    color: #666;
    cursor: pointer;
    min-height: 36px;
}
/* /Components/Retro/CommentSection.razor.rz.scp.css */
.comment-section[b-5pvy82l8kj] {
    border-top: 1px solid #f0f0f0;
    margin-top: 0.45rem;
    padding-top: 0.45rem;
}

.comments-list[b-5pvy82l8kj] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    margin-bottom: 0.4rem;
}

.comment-item[b-5pvy82l8kj] {
    background: #f4f6f8;
    border-radius: 5px;
    padding: 0.35rem 0.55rem;
}

.comment-display[b-5pvy82l8kj] {
    display: block;
    width: 100%;
    background: transparent;
    border: none;
    resize: none;
    margin: 0;
    font-size: 0.8rem;
    line-height: 1.45;
    font-family: inherit;
    color: #444;
    cursor: default;
    box-sizing: border-box;
    padding: 0;
    overflow: hidden;
    white-space: pre-wrap;
    word-break: break-word;
}

/* ── Footer row: author left, edit/delete right ── */
.comment-footer[b-5pvy82l8kj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 0.2rem;
    gap: 0.25rem;
}

.comment-author[b-5pvy82l8kj] {
    font-size: 0.68rem;
    color: #bbb;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.comment-owner-actions[b-5pvy82l8kj] {
    display: flex;
    gap: 0.25rem;
    flex-shrink: 0;
}

/* ── Add comment toggle ── */
.btn-add-comment[b-5pvy82l8kj] {
    background: none;
    border: none;
    color: #999;
    font-size: 0.75rem;
    cursor: pointer;
    padding: 0.15rem 0;
    min-height: 28px;
}

.btn-add-comment:hover[b-5pvy82l8kj] {
    color: #555;
}

/* ── Comment form ── */
.comment-form[b-5pvy82l8kj] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.comment-input[b-5pvy82l8kj] {
    width: 100%;
    padding: 0.4rem 0.5rem;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 0.8rem;
    font-family: inherit;
    resize: vertical;
    min-height: 50px;
    box-sizing: border-box;
}

.comment-input:focus[b-5pvy82l8kj] {
    outline: none;
    border-color: #0f3460;
}

.comment-error[b-5pvy82l8kj] {
    margin: 0;
    font-size: 0.75rem;
    color: #c0392b;
}

.comment-actions[b-5pvy82l8kj] {
    display: flex;
    gap: 0.4rem;
}

.btn-comment-submit[b-5pvy82l8kj] {
    padding: 0.28rem 0.75rem;
    background: #0f3460;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    cursor: pointer;
    min-height: 28px;
    transition: background 0.15s;
}

.btn-comment-submit:hover:not(:disabled)[b-5pvy82l8kj] {
    background: #1a4a80;
}

.btn-comment-submit:disabled[b-5pvy82l8kj] {
    opacity: 0.45;
    cursor: default;
}

.btn-comment-cancel[b-5pvy82l8kj] {
    padding: 0.28rem 0.5rem;
    background: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 0.75rem;
    color: #777;
    cursor: pointer;
    min-height: 28px;
    transition: background 0.15s, border-color 0.15s;
}

.btn-comment-cancel:hover[b-5pvy82l8kj] {
    background: #f0f0f0;
    border-color: #bbb;
    color: #444;
}
/* /Components/Retro/ExportPanel.razor.rz.scp.css */
.export-panel[b-e6scun7zq6] {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.export-options[b-e6scun7zq6] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.toggle-label[b-e6scun7zq6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    font-size: 0.875rem;
}

    .toggle-label input[type="checkbox"][b-e6scun7zq6] {
        width: 15px;
        height: 15px;
        cursor: pointer;
    }

.layout-row[b-e6scun7zq6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
}

.layout-select[b-e6scun7zq6] {
    flex: 1;
    padding: 0.3rem 0.4rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 0.8rem;
}

.export-actions[b-e6scun7zq6] {
    display: flex;
    gap: 0.5rem;
}

.btn-export[b-e6scun7zq6] {
    flex: 1;
    padding: 0.5rem 0.5rem;
    background: var(--brand-navy, #0f3460);
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    min-height: 36px;
}

    .btn-export:hover[b-e6scun7zq6] {
        opacity: 0.88;
    }
/* /Components/Retro/FocusMusicModal.razor.rz.scp.css */
.music-backdrop[b-l23pin9eih] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1100;
    backdrop-filter: blur(2px);
}

.music-modal[b-l23pin9eih] {
    background: #fff;
    border-radius: 12px;
    width: min(460px, 94vw);
    max-height: 88dvh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.25);
    animation: musicModalIn-b-l23pin9eih 0.15s ease-out;
}

@keyframes musicModalIn-b-l23pin9eih {
    from { opacity: 0; transform: translateY(-12px) scale(0.97); }
    to   { opacity: 1; transform: translateY(0)      scale(1);   }
}

/* ── Header ─────────────────────────────────────────────────────────────── */
.music-modal-header[b-l23pin9eih] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.1rem 0.8rem;
    border-bottom: 1px solid #eee;
    flex-shrink: 0;
}

.music-modal-header h2[b-l23pin9eih] {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--brand-navy);
}

.btn-close-modal[b-l23pin9eih] {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1rem;
    color: #999;
    min-height: 32px;
    min-width: 32px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-close-modal:hover[b-l23pin9eih] {
    background: #f5f5f5;
    color: #333;
}

/* ── Body ───────────────────────────────────────────────────────────────── */
.music-modal-body[b-l23pin9eih] {
    padding: 0.85rem 1.1rem 1.1rem;
    overflow-y: auto;
    flex: 1;
}

/* ── Enable toggle ──────────────────────────────────────────────────────── */
.music-enable-toggle[b-l23pin9eih] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: #333;
    padding-bottom: 0.85rem;
    margin-bottom: 0.85rem;
    border-bottom: 1px solid #eee;
    cursor: pointer;
}

.music-enable-toggle input[type="checkbox"][b-l23pin9eih] {
    width: 15px;
    height: 15px;
    cursor: pointer;
    flex-shrink: 0;
}

/* ── Loading ────────────────────────────────────────────────────────────── */
.music-loading[b-l23pin9eih] {
    text-align: center;
    color: #999;
    padding: 1rem 0;
    font-size: 0.875rem;
}

/* ── Track list ─────────────────────────────────────────────────────────── */
.track-list[b-l23pin9eih] {
    list-style: none;
    padding: 0;
    margin: 0 0 0.9rem;
    display: flex;
    flex-direction: column;
}

.track-item[b-l23pin9eih] {
    border-radius: 6px;
}

.track-item:hover[b-l23pin9eih] {
    background: #f7f8fa;
}

.track-label[b-l23pin9eih] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.35rem 0.5rem;
    cursor: pointer;
    font-size: 0.875rem;
}

.track-label input[type="checkbox"][b-l23pin9eih] {
    width: 15px;
    height: 15px;
    cursor: pointer;
    flex-shrink: 0;
}

.track-name[b-l23pin9eih] {
    flex: 1;
    color: #222;
}

.track-duration[b-l23pin9eih] {
    font-size: 0.78rem;
    color: #999;
    flex-shrink: 0;
}

/* ── Summary ────────────────────────────────────────────────────────────── */
.track-summary[b-l23pin9eih] {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    padding: 0.6rem 0.75rem;
    background: #f4f6f9;
    border-radius: 8px;
    font-size: 0.82rem;
    color: #555;
}

.track-summary strong[b-l23pin9eih] {
    color: var(--brand-navy);
}

/* ── Footer ─────────────────────────────────────────────────────────────── */
.music-modal-footer[b-l23pin9eih] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    padding: 0.8rem 1.1rem;
    border-top: 1px solid #eee;
    flex-shrink: 0;
}

.music-modal-footer .btn-primary[b-l23pin9eih] {
    background: var(--brand-blue-light);
    color: var(--brand-navy);
    border: none;
    border-radius: 5px;
    padding: 0.45rem 1.1rem;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}

.music-modal-footer .btn-primary:hover[b-l23pin9eih] {
    background: var(--brand-blue);
    color: #fff;
}

.music-modal-footer .btn-cancel[b-l23pin9eih] {
    background: #f5f5f5;
    color: #555;
    border: none;
    border-radius: 5px;
    padding: 0.45rem 1.1rem;
    font-size: 0.875rem;
    cursor: pointer;
    transition: background 0.15s;
}

.music-modal-footer .btn-cancel:hover[b-l23pin9eih] {
    background: #e8e8e8;
}

.music-error[b-l23pin9eih] {
    margin: 0.6rem 0 0;
    padding: 0.5rem 0.75rem;
    background: #fff4f4;
    border: 1px solid #f5c6c6;
    border-radius: 6px;
    font-size: 0.82rem;
    color: #c0392b;
}
/* /Components/Retro/IcebreakerWheel.razor.rz.scp.css */
.icebreaker-wheel-wrapper[b-5bc5o4yfvq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 0.5rem 1rem;
    overflow-x: hidden;
}

/* ── Wheel area (pointer + scene) ───────────────────────────── */
.wheel-area[b-5bc5o4yfvq] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Downward-pointing triangle indicator */
.wheel-pointer-tip[b-5bc5o4yfvq] {
    width: 0;
    height: 0;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-top: 20px solid var(--brand-navy);
    position: relative;
    z-index: 5;
    margin-bottom: -4px;
    filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.3));
    transform-origin: center top;
}

@keyframes pointer-bounce-b-5bc5o4yfvq {
    0%   { transform: translateY(0);    }
    30%  { transform: translateY(-7px); }
    65%  { transform: translateY(2px);  }
    100% { transform: translateY(0);    }
}

.wheel-pointer-tip.pointer-bounce[b-5bc5o4yfvq] {
    animation: pointer-bounce-b-5bc5o4yfvq 0.22s ease-out forwards;
}

.wheel-scene[b-5bc5o4yfvq] {
    position: relative;
    width: 380px;
    height: 380px;
    filter: drop-shadow(0 6px 18px rgba(0, 0, 0, 0.32)) drop-shadow(0 2px 4px rgba(0, 0, 0, 0.18));
    transform-origin: center center;
}

@keyframes wheel-thunk-b-5bc5o4yfvq {
    0%   { transform: scale(1.00); }
    40%  { transform: scale(1.05); }
    75%  { transform: scale(0.97); }
    100% { transform: scale(1.00); }
}

.wheel-scene.is-thunking[b-5bc5o4yfvq] {
    animation: wheel-thunk-b-5bc5o4yfvq 0.32s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

/* ── Spinning ring ───────────────────────────────────────────── */
.wheel-spin-ring[b-5bc5o4yfvq] {
    position: absolute;
    inset: 0;
    will-change: transform;
}

.wheel-svg[b-5bc5o4yfvq] {
    width: 100%;
    height: 100%;
    display: block;
}

/* ── Centre hub (stationary, above wheel) ────────────────────── */
.wheel-hub[b-5bc5o4yfvq] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid var(--brand-navy);
    box-shadow:
        0 4px 12px rgba(0, 0, 0, 0.28),
        0 1px 3px rgba(0, 0, 0, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.85);
    display: flex;
    align-items: center;
    justify-content: center;
}

.hub-img[b-5bc5o4yfvq] {
    width: 52px;
    height: 52px;
    object-fit: contain;
    pointer-events: none;
    user-select: none;
}

/* ── Spin button ─────────────────────────────────────────────── */
.btn-spin[b-5bc5o4yfvq] {
    margin-top: 0.5rem;
    padding: 0.6rem 1.6rem;
    background: linear-gradient(135deg, var(--brand-navy), var(--brand-blue));
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 0.92rem;
    font-weight: 700;
    cursor: pointer;
    min-height: 40px;
    min-width: 160px;
    transition: opacity 0.15s, transform 0.1s;
}

.btn-spin:hover:not(:disabled)[b-5bc5o4yfvq] {
    opacity: 0.9;
    transform: translateY(-1px);
}

.btn-spin:disabled[b-5bc5o4yfvq] {
    opacity: 0.55;
    cursor: default;
    transform: none;
}

/* ── Result card (always visible) ───────────────────────────── */
.icebreaker-result[b-5bc5o4yfvq] {
    width: 100%;
    min-height: 110px;
    background: #f8fafc;
    border: 1.5px solid #d8e4f0;
    border-top: 5px solid transparent; /* overridden by inline style on reveal */
    border-radius: 10px;
    padding: 0.85rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
    position: relative;
    overflow: hidden;
    transition: border-top-color 0.3s ease, box-shadow 0.3s ease;
}

/* Shimmer overlay — shown while spinning */
.result-shimmer-overlay[b-5bc5o4yfvq] {
    position: absolute;
    inset: 0;
    padding: 0.85rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    background: #f8fafc;
}

@keyframes shimmer-sweep-b-5bc5o4yfvq {
    0%   { background-position: -400px 0; }
    100% { background-position:  400px 0; }
}

.shimmer-bar[b-5bc5o4yfvq] {
    height: 14px;
    border-radius: 6px;
    background: linear-gradient(90deg, #e8edf2 25%, #d0d8e4 50%, #e8edf2 75%);
    background-size: 400px 100%;
    animation: shimmer-sweep-b-5bc5o4yfvq 1.4s ease-in-out infinite;
}

.shimmer-short[b-5bc5o4yfvq]  { width: 38%; margin-top: 0.5rem; }
.shimmer-long[b-5bc5o4yfvq]   { width: 92%; margin-top: 0.9rem; }
.shimmer-medium[b-5bc5o4yfvq] { width: 70%; }

/* Content layer */
.result-content-layer[b-5bc5o4yfvq] {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

/* Idle — placeholder text, subtle */
.icebreaker-result.state-idle .result-shimmer-overlay[b-5bc5o4yfvq] { opacity: 0; }
.icebreaker-result.state-idle .result-content-layer[b-5bc5o4yfvq]   { opacity: 0.45; }

/* Spinning — shimmer on top, content hidden */
.icebreaker-result.state-spinning .result-shimmer-overlay[b-5bc5o4yfvq] { opacity: 1; }
.icebreaker-result.state-spinning .result-content-layer[b-5bc5o4yfvq]   { opacity: 0; }

/* Category visible — shimmer gone, category pops in */
.icebreaker-result.state-category-visible .result-shimmer-overlay[b-5bc5o4yfvq] { opacity: 0; }
.icebreaker-result.state-category-visible .result-content-layer[b-5bc5o4yfvq]   { opacity: 1; }

/* Revealed — everything visible */
.icebreaker-result.state-revealed .result-shimmer-overlay[b-5bc5o4yfvq] { opacity: 0; }
.icebreaker-result.state-revealed .result-content-layer[b-5bc5o4yfvq]   { opacity: 1; }

/* ── Category name pop-in ─────────────────────────────────────── */
@keyframes category-pop-b-5bc5o4yfvq {
    0%   { opacity: 0; transform: scale(0.88); }
    60%  { opacity: 1; transform: scale(1.08); }
    100% { opacity: 1; transform: scale(1.00); }
}

.state-category-visible .result-category-name[b-5bc5o4yfvq],
.state-revealed .result-category-name[b-5bc5o4yfvq] {
    animation: category-pop-b-5bc5o4yfvq 0.32s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.category-reveal-badge[b-5bc5o4yfvq] {
    margin-right: 0.3rem;
}

/* ── Question slide-in ────────────────────────────────────────── */
@keyframes question-slide-in-b-5bc5o4yfvq {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0);   }
}

.state-revealed .result-question-text[b-5bc5o4yfvq] {
    animation: question-slide-in-b-5bc5o4yfvq 0.28s ease-out both;
}

.result-row[b-5bc5o4yfvq] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.result-label[b-5bc5o4yfvq] {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: #8090a2;
}

.result-category-name[b-5bc5o4yfvq] {
    font-size: 1.05rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    color: var(--brand-navy);
    letter-spacing: -0.01em;
}

.result-question-text[b-5bc5o4yfvq] {
    margin: 0;
    font-size: 0.88rem;
    line-height: 1.5;
    color: #333;
}

/* ── Post-to-chat button ─────────────────────────────────────── */
.btn-post-chat[b-5bc5o4yfvq] {
    align-self: flex-start;
    padding: 0.4rem 0.9rem;
    background: transparent;
    border: 1.5px solid var(--brand-blue);
    border-radius: 6px;
    color: var(--brand-blue);
    font-size: 0.8rem;
    font-weight: 600;
    cursor: pointer;
    min-height: 32px;
    transition: background 0.15s, color 0.15s;
}

.btn-post-chat:hover[b-5bc5o4yfvq] {
    background: var(--brand-blue);
    color: #fff;
}

/* ── Responsive ──────────────────────────────────────────────── */
@media (max-width: 380px) {
    .wheel-scene[b-5bc5o4yfvq] {
        width: 290px;
        height: 290px;
    }

    .wheel-hub[b-5bc5o4yfvq] {
        width: 62px;
        height: 62px;
    }

    .hub-img[b-5bc5o4yfvq] {
        width: 40px;
        height: 40px;
    }
}
/* /Components/Retro/ParticipantList.razor.rz.scp.css */
.participant-list[b-d8j5zu4bzj] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.participant-item[b-d8j5zu4bzj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0.5rem;
    background: #f4f6f8;
    border-radius: 6px;
}

.participant-avatar[b-d8j5zu4bzj] {
    width: 27px;
    height: 27px;
    background: #0f3460;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    font-weight: 700;
    flex-shrink: 0;
}

.participant-name[b-d8j5zu4bzj] {
    flex: 1;
    font-size: 0.85rem;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

.badge-sm[b-d8j5zu4bzj] {
    background: #f39c12;
    color: #fff;
    font-size: 0.6rem;
    font-weight: 700;
    padding: 0.1rem 0.3rem;
    border-radius: 3px;
}

.btn-kick[b-d8j5zu4bzj] {
    background: none;
    border: none;
    color: #c0392b;
    cursor: pointer;
    font-size: 0.78rem;
    padding: 0.2rem 0.4rem;
    border-radius: 4px;
    min-height: 26px;
    min-width: 26px;
}

.btn-kick:hover[b-d8j5zu4bzj] {
    background: #fdecea;
}
/* /Components/Retro/RatingPrompt.razor.rz.scp.css */
.rating-backdrop[b-b9aq05fczm] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

.rating-modal[b-b9aq05fczm] {
    background: #fff;
    border-radius: 14px;
    padding: 2rem;
    width: 100%;
    max-width: 420px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.rating-title[b-b9aq05fczm] {
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--brand-navy);
    margin: 0;
    text-align: center;
}

.rating-subtitle[b-b9aq05fczm] {
    font-size: 0.9rem;
    color: #666;
    margin: 0;
    text-align: center;
}

.star-row[b-b9aq05fczm] {
    display: flex;
    gap: 0.5rem;
}

.star-btn[b-b9aq05fczm] {
    background: none;
    border: none;
    font-size: 2.5rem;
    cursor: pointer;
    color: #ddd;
    transition: color 0.15s, transform 0.1s;
    line-height: 1;
    padding: 0;
}

.star-btn.star-hover[b-b9aq05fczm],
.star-btn.star-selected[b-b9aq05fczm] {
    color: #f39c12;
}

.star-btn:hover[b-b9aq05fczm] {
    transform: scale(1.15);
}

.rating-comment[b-b9aq05fczm] {
    width: 100%;
    box-sizing: border-box;
    padding: 0.6rem 0.75rem;
    border: 1.5px solid #e0e0e0;
    border-radius: 8px;
    font-size: 0.9rem;
    font-family: inherit;
    resize: vertical;
    min-height: 80px;
    outline: none;
    transition: border-color 0.15s;
}

.rating-comment:focus[b-b9aq05fczm] {
    border-color: var(--brand-blue);
}

.rating-actions[b-b9aq05fczm] {
    display: flex;
    gap: 0.75rem;
    width: 100%;
}

.btn-rating-submit[b-b9aq05fczm] {
    flex: 1;
    padding: 0.75rem;
    background: linear-gradient(135deg, var(--brand-navy), var(--brand-blue));
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
    transition: opacity 0.2s;
}

.btn-rating-submit:disabled[b-b9aq05fczm] {
    opacity: 0.4;
    cursor: default;
}

.btn-rating-submit:hover:not(:disabled)[b-b9aq05fczm] {
    opacity: 0.88;
}

.btn-rating-skip[b-b9aq05fczm] {
    padding: 0.75rem 1.25rem;
    background: none;
    border: 1.5px solid #ddd;
    border-radius: 8px;
    color: #888;
    font-size: 0.9rem;
    cursor: pointer;
    transition: background 0.15s;
}

.btn-rating-skip:hover[b-b9aq05fczm] {
    background: #f5f5f5;
}
/* /Components/Retro/ReadOnlySessionBanner.razor.rz.scp.css */
.readonly-session-banner[b-k9bn5iukv3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin: 0.75rem 1rem 0;
    padding: 0.7rem 0.85rem;
    border: 1px solid #f1d99b;
    border-radius: 12px;
    background: #fff8e6;
    color: #5d4708;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.readonly-session-content[b-k9bn5iukv3] {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    min-width: 0;
}

.readonly-session-icon[b-k9bn5iukv3] {
    font-size: 1.15rem;
    line-height: 1.2;
    flex-shrink: 0;
}

.readonly-session-text[b-k9bn5iukv3] {
    display: flex;
    flex-direction: column;
    gap: 0.12rem;
    font-size: 0.86rem;
    line-height: 1.35;
}

.readonly-session-text strong[b-k9bn5iukv3] {
    font-size: 0.9rem;
    font-weight: 800;
}

.readonly-session-text span[b-k9bn5iukv3] {
    color: rgba(93, 71, 8, 0.78);
}

.readonly-session-action[b-k9bn5iukv3] {
    flex-shrink: 0;
    border: 1px solid #d9a72e;
    border-radius: 8px;
    background: #fff;
    color: #6a4f00;
    padding: 0.42rem 0.75rem;
    font-size: 0.82rem;
    font-weight: 800;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}

.readonly-session-action:hover[b-k9bn5iukv3] {
    background: #fff2c2;
    border-color: #bd8b13;
    transform: translateY(-1px);
}

.readonly-session-action:focus-visible[b-k9bn5iukv3] {
    outline: 2px solid rgba(189, 139, 19, 0.45);
    outline-offset: 2px;
}

@media (max-width: 768px) {
    .readonly-session-banner[b-k9bn5iukv3] {
        align-items: stretch;
        flex-direction: column;
        margin: 0.6rem 0.75rem 0;
    }

    .readonly-session-action[b-k9bn5iukv3] {
        align-self: flex-start;
    }
}
/* /Components/Retro/RetroBoard.razor.rz.scp.css */
.retro-board[b-477tso5bct] {
    display: flex;
    flex-direction: row;
    gap: 0.9rem;
    align-items: stretch;
    height: 100%;
}

@media (max-width: 768px) {
    .retro-board[b-477tso5bct] {
        flex-direction: column;
        height: auto;
        align-items: stretch;
    }
}
/* /Components/Retro/RetroCardItem.razor.rz.scp.css */
.retro-card[b-iy56hdrl9t] {
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    padding: 0.7rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.card-hidden[b-iy56hdrl9t] {
    background: #f5f5f5;
    border-color: #ddd;
    box-shadow: none;
    opacity: 0.7;
}

/* ── Flip container ── */
.card-flip[b-iy56hdrl9t] {
    perspective: 900px;
    width: 100%;
}

.card-inner[b-iy56hdrl9t] {
    position: relative;
    width: 100%;
    transform-style: preserve-3d;
    transition: transform 0.55s cubic-bezier(0.4, 0.2, 0.2, 1);
    min-height: 80px;
}

/* hidden state → back face visible */
.card-flip.is-hidden .card-inner[b-iy56hdrl9t] {
    transform: rotateY(180deg);
}

.card-flip.card-jump-highlight .card-face-front[b-iy56hdrl9t] {
    animation: cardJumpPulse-b-iy56hdrl9t 1.0s ease-in-out 3;
}

@keyframes cardJumpPulse-b-iy56hdrl9t {

    0%, 100% {
        box-shadow: 0 0 0 0 rgba(243,156,18,0);
        border-left-width: 4px;
    }

    50% {
        box-shadow: 0 0 0 8px rgba(243,156,18,0.35);
        border-left-width: 10px;
    }
}

/* ── Shared face styles ── */
.card-face[b-iy56hdrl9t] {
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 8px;
    padding: 0.7rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}
 
.card-flip.is-followup .card-face-front[b-iy56hdrl9t] {
    border-left: 4px solid #f39c12;
}
.card-face-front[b-iy56hdrl9t] {
    /* takes normal document flow */
}

.card-face-back[b-iy56hdrl9t] {
    position: absolute;
    inset: 0;
    transform: rotateY(180deg);
    background: #f5f5f5;
    border-color: #ddd;
    box-shadow: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ── Card content ── */
.card-body[b-iy56hdrl9t] {
    margin-bottom: 0.3rem;
}

.card-text[b-iy56hdrl9t] {
    margin: 0;
    font-size: 0.9rem;
    line-height: 1.55;
    white-space: pre-wrap;
    word-break: break-word;
}
.card-text-row[b-iy56hdrl9t] {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: flex-start;
    gap: 0.45rem;
}

    .card-text-row .card-text[b-iy56hdrl9t] {
        min-width: 0;
    }

.card-followup-pin[b-iy56hdrl9t] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.45rem;
    height: 1.45rem;
    flex-shrink: 0;
    font-size: 1rem;
    line-height: 1;
    border-radius: 999px;
}

.card-followup-toggle[b-iy56hdrl9t] {
    border: none;
    background: transparent;
    cursor: pointer;
    opacity: 0.45;
    transition: opacity 0.15s, background 0.15s;
}

    .card-followup-toggle:hover[b-iy56hdrl9t] {
        opacity: 1;
        background: rgba(0, 0, 0, 0.06);
    }

    .card-followup-toggle.is-pinned[b-iy56hdrl9t],
    .card-followup-pin.is-pinned[b-iy56hdrl9t] {
        opacity: 1;
    }

        .card-followup-toggle.is-pinned:hover[b-iy56hdrl9t] {
            background: rgba(243, 156, 18, 0.12);
        }

 

.card-text-hidden[b-iy56hdrl9t] {
    color: #aaa;
    font-style: italic;
    font-size: 0.85rem;
    margin: 0;
}

/* ── Action bar: author left, controls right ── */
.card-action-bar[b-iy56hdrl9t] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.35rem;
    margin-top: 0.3rem;
}

.card-author[b-iy56hdrl9t] {
    font-size: 0.72rem;
    color: #aaa;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.card-actions-right[b-iy56hdrl9t] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex-shrink: 0;
}

/* ── Reaction pill ── */
.btn-reaction[b-iy56hdrl9t] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    background: #f5f5f5;
    border: 1px solid #e0e0e0;
    border-radius: 14px;
    padding: 0.28rem 0.6rem;
    cursor: pointer;
    font-size: 0.82rem;
    min-height: 28px;
    transition: background 0.15s, border-color 0.15s;
}

.btn-reaction.reacted[b-iy56hdrl9t] {
    background: #fff3cd;
    border-color: #f39c12;
}

.btn-reaction.has-votes[b-iy56hdrl9t] {
    background: #e6f6ec;
    border-color: #6dbf8a;
    color: #236b3d;
    font-weight: 600;
}

.btn-reaction:disabled[b-iy56hdrl9t] {
    opacity: 0.45;
    cursor: default;
}

.reaction-count[b-iy56hdrl9t] {
    font-weight: 700;
    font-size: 0.78rem;
}

/* ── Comments toggle pill ── */
.btn-comments-toggle[b-iy56hdrl9t] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    background: #f5f5f5;
    border: 1px solid #e0e0e0;
    border-radius: 14px;
    padding: 0.28rem 0.6rem;
    cursor: pointer;
    font-size: 0.82rem;
    min-height: 28px;
    color: #888;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
}

.btn-comments-toggle:hover[b-iy56hdrl9t] {
    background: #eaf0fb;
    border-color: #b0c8f0;
    color: #4a90d9;
}

.btn-comments-toggle.open[b-iy56hdrl9t] {
    background: #e8f0fe;
    border-color: #4a90d9;
    color: #4a90d9;
}

.btn-comments-toggle.has-comments[b-iy56hdrl9t] {
    background: #ddeeff;
    border-color: #7ab8f5;
    color: #2c6fad;
    font-weight: 600;
}

.comments-count[b-iy56hdrl9t] {
    font-weight: 700;
    font-size: 0.78rem;
}

/* ── Small icon buttons ── */
.btn-icon-sm[b-iy56hdrl9t] {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 0.85rem;
    padding: 0.2rem 0.25rem;
    border-radius: 4px;
    line-height: 1;
    opacity: 0.55;
    transition: opacity 0.15s, background 0.15s;
}

.btn-icon-sm:hover[b-iy56hdrl9t] {
    opacity: 1;
    background: rgba(0, 0, 0, 0.06);
}

.btn-danger-sm:hover[b-iy56hdrl9t] {
    background: rgba(220, 53, 69, 0.1);
}

/* ── Inline card editing ── */
.card-edit-input[b-iy56hdrl9t] {
    width: 100%;
    box-sizing: border-box;
    padding: 0.45rem 0.55rem;
    font-size: 0.9rem;
    line-height: 1.55;
    border: 1px solid #b0c4de;
    border-radius: 6px;
    resize: vertical;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
    font-family: inherit;
    color: inherit;
}

.card-edit-input:focus[b-iy56hdrl9t] {
    border-color: #4a90d9;
    box-shadow: 0 0 0 3px rgba(74, 144, 217, 0.18);
}

.card-edit-actions[b-iy56hdrl9t] {
    display: flex;
    gap: 0.4rem;
    margin-top: 0.4rem;
    justify-content: flex-end;
}

.btn-save[b-iy56hdrl9t],
.btn-cancel[b-iy56hdrl9t] {
    padding: 0.28rem 0.7rem;
    border-radius: 5px;
    border: 1px solid transparent;
    cursor: pointer;
    font-size: 0.82rem;
    font-family: inherit;
    transition: background 0.15s, border-color 0.15s;
}

.btn-save[b-iy56hdrl9t] {
    background: #e6f4ea;
    border-color: #81c784;
    color: #2e7d32;
}

.btn-save:hover[b-iy56hdrl9t] {
    background: #c8e6c9;
}

.btn-cancel[b-iy56hdrl9t] {
    background: #fafafa;
    border-color: #ccc;
    color: #555;
}

.btn-cancel:hover[b-iy56hdrl9t] {
    background: #f0f0f0;
}
/* /Components/Retro/RetroColumn.razor.rz.scp.css */
.retro-column[b-kaj9se3im5] {
    flex: 1;
    min-width: 240px;
    background: #f8f9fa;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
}

.column-header[b-kaj9se3im5] {
    padding: 0.8rem 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #fff;
    flex-shrink: 0;
}

.column-header-left[b-kaj9se3im5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.column-icon[b-kaj9se3im5] {
    font-size: 1.2rem;
    line-height: 1;
}

.column-title[b-kaj9se3im5] {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 700;
}

.column-count[b-kaj9se3im5] {
    background: rgba(255, 255, 255, 0.25);
    border-radius: 12px;
    padding: 0.1rem 0.5rem;
    font-size: 0.78rem;
    font-weight: 700;
}

.column-caption[b-kaj9se3im5] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.45rem 1rem;
    margin: 0;
    background: #fff;
    border-bottom: 1px solid #eee;
    flex-shrink: 0;
}

.caption-icon[b-kaj9se3im5] {
    font-size: 0.85rem;
    line-height: 1;
    flex-shrink: 0;
}

.caption-text[b-kaj9se3im5] {
    font-size: 0.78rem;
    color: #777;
}

/* Scrollable cards area — sits below the sticky header/caption */
.column-scroll[b-kaj9se3im5] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}

.column-cards[b-kaj9se3im5] {
    padding: 0.6rem;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    flex: 1 0 auto; /* grow to fill space, but never shrink below content height */
}

@media (max-width: 768px) {
    .retro-column[b-kaj9se3im5] {
        width: 100%;
        min-width: unset;
    }

    .column-scroll[b-kaj9se3im5] {
        overflow-y: visible;
    }
}
/* /Components/Retro/RetroHistoryModal.razor.rz.scp.css */
.retro-history-backdrop[b-tkrmw1pfvu] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(9, 30, 66, 0.42);
}

.retro-history-modal[b-tkrmw1pfvu] {
    width: min(505px, 100%);
    max-height: min(680px, calc(100vh - 2rem));
    overflow: hidden;
    background: #fff;
    border: 1px solid #dfe7f2;
    border-radius: 14px;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.26);
}

.retro-history-header[b-tkrmw1pfvu] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1rem 0.75rem;
    border-bottom: 1px solid #e5eaf2;
}

    .retro-history-header h2[b-tkrmw1pfvu] {
        margin: 0;
        color: var(--brand-navy);
        font-size: 1.05rem;
        line-height: 1.25;
    }

    .retro-history-header p[b-tkrmw1pfvu] {
        margin: 0.25rem 0 0;
        color: #7b8796;
        font-size: 0.8rem;
        line-height: 1.35;
    }

.retro-history-close[b-tkrmw1pfvu] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: 1px solid #d8e0ec;
    border-radius: 999px;
    background: #fff;
    color: #4f5e70;
    font-size: 1.35rem;
    line-height: 1;
    cursor: pointer;
}

    .retro-history-close:hover[b-tkrmw1pfvu] {
        background: #f2f7ff;
        border-color: var(--brand-blue);
        color: var(--brand-blue);
    }

.retro-history-list[b-tkrmw1pfvu] {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    max-height: calc(100vh - 10rem);
    overflow-y: auto;
    padding: 0.85rem 1rem 1rem;
}

.retro-history-item[b-tkrmw1pfvu] {
    display: grid;
    grid-template-columns: 1.35rem minmax(0, 1fr) 2.75rem;
    align-items: center;
    column-gap: 0.6rem;
    width: 100%;
    min-width: 0;
    border: 1px solid #d8e0ec;
    border-radius: 10px;
    background: #fff;
    padding: 0.65rem 0.7rem;
    color: var(--brand-navy);
    font: inherit;
    text-align: left;
    cursor: pointer;
}

    .retro-history-item:hover[b-tkrmw1pfvu] {
        background: #f2f7ff;
        border-color: var(--brand-blue);
    }

.history-item-icon[b-tkrmw1pfvu] {
    grid-column: 1;
    align-self: center;
    width: 1.35rem;
    text-align: center;
}

.history-item-main[b-tkrmw1pfvu] {
    grid-column: 2;
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 0.05rem;
    padding-right: 3rem; /* moves date left away from Open */
}

.history-item-title[b-tkrmw1pfvu],
.history-item-meta[b-tkrmw1pfvu] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.history-item-title[b-tkrmw1pfvu] {
    color: var(--brand-navy);
    font-size: 0.84rem;
    font-weight: 800;
}

.history-item-meta-row[b-tkrmw1pfvu] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    column-gap: 0.75rem;
    width: 100%;
}

.history-item-meta[b-tkrmw1pfvu] {
    min-width: 0;
}

.history-item-date[b-tkrmw1pfvu] {
    justify-self: end;
    color: #7b8796;
    font-size: 0.72rem;
    font-weight: 700;
    white-space: nowrap;
}

.history-item-action[b-tkrmw1pfvu] {
    grid-column: 3;
    justify-self: end;
    color: var(--brand-blue);
    font-size: 0.76rem;
    font-weight: 800;
    white-space: nowrap;
}

.retro-history-empty-note[b-tkrmw1pfvu] {
    margin: 0.85rem 1rem 1rem;
    background: #f7f9fc;
    border: 1px dashed #ccd7e6;
    border-radius: 8px;
    color: #7b8796;
    font-size: 0.8rem;
    line-height: 1.35;
    padding: 0.75rem;
}

@media (max-width: 520px) {
    .retro-history-backdrop[b-tkrmw1pfvu] {
        align-items: stretch;
        padding: 0.75rem;
    }

    .retro-history-modal[b-tkrmw1pfvu] {
        max-height: none;
    }

    .retro-history-item[b-tkrmw1pfvu] {
        grid-template-columns: 1.35rem minmax(0, 1fr) 2.75rem;
    }

    .history-item-meta-row[b-tkrmw1pfvu] {
        grid-template-columns: minmax(0, 1fr) auto;
    }
}
/* /Components/Retro/ScrumMasterPanel.razor.rz.scp.css */
/* ── Panel shell ────────────────────────────────────────────────────────────── */
.sm-panel[b-ghaeztlh2g] {
    display: flex;
    flex-direction: column;
    width: min(410px, 100vw);
    max-width: 100%;
    height: 100%;
    overflow: hidden;
    font-size: 0.875rem;
    background: #fff;
}

.sm-panel-header[b-ghaeztlh2g] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.46rem 0.85rem;
    background: var(--brand-navy);
    border-bottom: 3px solid var(--brand-blue);
    color: #fff;
    flex-shrink: 0;
}

    .sm-panel-header h2[b-ghaeztlh2g] {
        display: inline-flex;
        align-items: center;
        gap: 0.45rem;
        margin: 0;
        font-size: 0.92rem;
        font-weight: 700;
        color: #fff;
        line-height: 1;
    }

    .sm-panel-header h2[b-ghaeztlh2g]  .sm-panel-title-icon {
        width: 1.15rem;
        height: 1.15rem;
    }


.sm-panel-header-actions[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.btn-pin-panel[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    background: none;
    border: 1px solid transparent;
    border-radius: 6px;
    cursor: pointer;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.86rem;
    line-height: 1;
    opacity: 0.78;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
}

.btn-pin-panel:hover[b-ghaeztlh2g],
.btn-pin-panel.is-pinned[b-ghaeztlh2g] {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    opacity: 1;
}

.btn-pin-panel.is-pinned[b-ghaeztlh2g] {
    border-color: rgba(255, 255, 255, 0.22);
}

.btn-close-panel[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    background: none;
    border: 1px solid transparent;
    border-radius: 6px;
    cursor: pointer;
    color: rgba(255, 255, 255, 0.78);
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

    .btn-close-panel:hover[b-ghaeztlh2g] {
        background: rgba(255, 255, 255, 0.12);
        color: #fff;
    }

/* ── Accordion ──────────────────────────────────────────────────── */
.sm-accordion[b-ghaeztlh2g] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    min-height: 0;
    padding: 0 0.85rem 1rem;
}

.accordion-item[b-ghaeztlh2g] {
    border-bottom: 1px solid #edf0f3;
}

    .accordion-item:last-child[b-ghaeztlh2g] {
        border-bottom: none;
    }

.accordion-trigger[b-ghaeztlh2g] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.72rem 0.1rem;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.065em;
    color: #8a8f98;
    text-align: left;
    min-height: 40px;
    transition: color 0.15s;
}

    .accordion-trigger:hover[b-ghaeztlh2g],
    .accordion-trigger.is-open[b-ghaeztlh2g] {
        color: var(--brand-navy);
    }

.accordion-title[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.accordion-title-icon[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.1rem;
    font-size: 0.95rem;
    line-height: 1;
}


.accordion-meta[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.45rem;
    margin-left: auto;
    flex-shrink: 0;
}

.accordion-status-badge[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.2rem;
    min-height: 1.18rem;
    padding: 0.1rem 0.44rem;
    border-radius: 999px;
    border: 1px solid #d0d5dd;
    background: #f2f4f7;
    color: #667085;
    font-size: 0.62rem;
    font-weight: 650;
    line-height: 1;
    letter-spacing: normal;
    text-transform: none;
    white-space: nowrap;
}

.accordion-status-badge-icon[b-ghaeztlh2g] {
    font-size: 0.65rem;
    line-height: 1;
}

.accordion-status-badge.is-info[b-ghaeztlh2g] {
    border-color: #d7e3ff;
    background: #eef4ff;
    color: var(--brand-navy);
}

.accordion-status-badge.is-success[b-ghaeztlh2g] {
    border-color: #abefc6;
    background: #ecfdf3;
    color: #067647;
}

.accordion-status-badge.is-warning[b-ghaeztlh2g] {
    border-color: #f7d08a;
    background: #fff7e6;
    color: #7a4b00;
}

.accordion-status-badge.is-new[b-ghaeztlh2g] {
    border-color: #d7e3ff;
    background: #eef4ff;
    color: var(--brand-blue);
}

.accordion-chevron[b-ghaeztlh2g] {
    font-size: 1rem;
    line-height: 1;
    transition: transform 0.2s ease;
    flex-shrink: 0;
}

.accordion-trigger.is-open .accordion-chevron[b-ghaeztlh2g] {
    transform: rotate(90deg);
}

.accordion-body[b-ghaeztlh2g] {
    padding: 0 0 0.95rem;
}

.panel-section-intro[b-ghaeztlh2g] {
    margin: -0.1rem 0 0.7rem;
    color: #667085;
    font-size: 0.78rem;
    line-height: 1.4;
}

/* ── Shared card and form patterns ─────────────────────────────── */
.form-stack[b-ghaeztlh2g],
.control-stack[b-ghaeztlh2g],
.followup-stack[b-ghaeztlh2g] {
    display: flex;
    flex-direction: column;
    gap: 0.65rem;
}

.sm-card[b-ghaeztlh2g] {
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 0.85rem;
}

.empty-card[b-ghaeztlh2g] {
    background: #f8fafc;
    border: 1px dashed #d0d5dd;
    border-radius: 10px;
    padding: 0.9rem;
    color: #8a8f98;
    font-size: 0.82rem;
    font-style: italic;
}

.field-label[b-ghaeztlh2g] {
    font-size: 0.7rem;
    font-weight: 800;
    color: #777;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.35rem;
}

.field-help[b-ghaeztlh2g] {
    margin-top: 0.45rem;
    font-size: 0.76rem;
    color: #777;
    line-height: 1.35;
}

.field-error[b-ghaeztlh2g] {
    color: #c0392b;
    font-size: 0.78rem;
    margin: 0.15rem 0 0.35rem;
}

.section-subheading[b-ghaeztlh2g] {
    font-size: 0.72rem;
    font-weight: 800;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    margin: 0.75rem 0 0.4rem;
}

.setting-display-row[b-ghaeztlh2g],
.setting-input-row[b-ghaeztlh2g] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.65rem;
}

.setting-display-value[b-ghaeztlh2g] {
    flex: 1;
    min-width: 0;
    font-size: 1rem;
    font-weight: 800;
    color: var(--brand-navy);
    overflow-wrap: anywhere;
}

.setting-input-row[b-ghaeztlh2g] {
    font-size: 0.84rem;
    font-weight: 650;
    color: #344054;
}

    .setting-input-row > span:first-child[b-ghaeztlh2g] {
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        flex: 1;
        min-width: 0;
    }

.setting-input-suffix[b-ghaeztlh2g] {
    color: #667085;
    font-size: 0.78rem;
}

.muted-value[b-ghaeztlh2g] {
    color: #999;
    font-style: italic;
    font-weight: 500;
}

/* ── Buttons ────────────────────────────────────────────────────── */
.btn-full[b-ghaeztlh2g],
.btn-secondary-full[b-ghaeztlh2g] {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.58rem 1rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 800;
    cursor: pointer;
    min-height: 40px;
    transition: background 0.15s, color 0.15s, transform 0.15s, border-color 0.15s;
}

.btn-full[b-ghaeztlh2g] {
    border: none;
}

.btn-secondary-full[b-ghaeztlh2g] {
    background: #fff;
    border: 1.5px solid #d0d5dd;
    color: var(--brand-navy);
}

    .btn-secondary-full:hover[b-ghaeztlh2g] {
        border-color: var(--brand-blue);
        color: var(--brand-blue);
        transform: translateY(-1px);
    }

.btn-danger[b-ghaeztlh2g] {
    background: #c0392b;
    color: #fff;
}

    .btn-danger:hover[b-ghaeztlh2g] {
        background: #a93226;
        transform: translateY(-1px);
    }

.btn-success[b-ghaeztlh2g] {
    background: #27ae60;
    color: #fff;
}

    .btn-success:hover[b-ghaeztlh2g] {
        background: #208d4f;
        transform: translateY(-1px);
    }

.btn-music[b-ghaeztlh2g] {
    width: 100%;
    padding: 0.5rem 1rem;
    background: #fff;
    border: 1.5px solid var(--brand-blue);
    border-radius: 8px;
    color: var(--brand-blue);
    font-size: 0.82rem;
    font-weight: 800;
    cursor: pointer;
    min-height: 38px;
    transition: background 0.15s, color 0.15s, transform 0.15s;
}

    .btn-music:hover[b-ghaeztlh2g] {
        background: var(--brand-blue);
        color: #fff;
        transform: translateY(-1px);
    }

.btn-sm[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.3rem;
    padding: 0.35rem 0.75rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 800;
    cursor: pointer;
    border: none;
    min-height: 30px;
    white-space: nowrap;
}

.btn-primary-sm[b-ghaeztlh2g] {
    background: #0f3460;
    color: #fff;
}

.btn-secondary-sm[b-ghaeztlh2g] {
    background: #fff;
    border: 1px solid #d0d5dd;
    color: #555;
}

    .btn-secondary-sm:hover:not(:disabled)[b-ghaeztlh2g] {
        background: #eef4ff;
        color: var(--brand-navy);
        border-color: #b9c7df;
    }

    .btn-secondary-sm:disabled[b-ghaeztlh2g] {
        opacity: 0.55;
        cursor: not-allowed;
    }

.btn-icon[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    cursor: pointer;
    font-size: 0.85rem;
    padding: 0.15rem 0.25rem;
    border-radius: 5px;
    min-height: 28px;
    min-width: 28px;
}

    .btn-icon:hover[b-ghaeztlh2g] {
        background: #e8edf3;
    }

/* ── Inputs and toggles ─────────────────────────────────────────── */
.edit-input[b-ghaeztlh2g] {
    width: 100%;
    padding: 0.45rem 0.55rem;
    border: 1px solid #cfd5dd;
    border-radius: 6px;
    font-size: 0.82rem;
    margin-bottom: 0.35rem;
    box-sizing: border-box;
    background: #fff;
}

.form-input-sm[b-ghaeztlh2g] {
    width: 4.2rem;
    padding: 0.35rem 0.4rem;
    border: 1px solid #cfd5dd;
    border-radius: 6px;
    font-size: 0.8rem;
    background: #fff;
}

.toggle-label[b-ghaeztlh2g] {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    cursor: pointer;
    font-size: 0.84rem;
    line-height: 1.35;
    color: #344054;
}

    .toggle-label input[type="checkbox"][b-ghaeztlh2g] {
        width: 15px;
        height: 15px;
        cursor: pointer;
        margin-top: 0.1rem;
        flex-shrink: 0;
    }

    .toggle-label span[b-ghaeztlh2g] {
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
    }

.toggle-hint[b-ghaeztlh2g] {
    font-size: 0.72rem;
    color: #c0392b;
    margin: 0.2rem 0 0 1.4rem;
}

.edit-actions[b-ghaeztlh2g] {
    display: flex;
    gap: 0.4rem;
    margin-top: 0.35rem;
}

/* ── Team ──────────────────────────────────────────────────────── */
.team-card[b-ghaeztlh2g] {
    padding: 0.9rem;
}

.team-name[b-ghaeztlh2g] {
    font-size: 1.05rem;
    font-weight: 800;
    color: var(--brand-navy);
    margin-bottom: 0.85rem;
    overflow-wrap: anywhere;
}

.team-code-row[b-ghaeztlh2g] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.team-code[b-ghaeztlh2g] {
    flex: 1;
    min-width: 0;
    font-family: Consolas, monospace;
    font-size: 0.95rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    background: #eef4ff;
    border: 1px solid #d7e3ff;
    border-radius: 7px;
    padding: 0.4rem 0.65rem;
    overflow-wrap: anywhere;
}

/* ── Column editor ─────────────────────────────────────────────── */
.column-editor[b-ghaeztlh2g] {
    padding: 0.6rem 0.65rem;
}

.column-row[b-ghaeztlh2g] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.col-dot[b-ghaeztlh2g] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    flex-shrink: 0;
}

.col-name[b-ghaeztlh2g] {
    flex: 1;
    font-size: 0.86rem;
    font-weight: 650;
    color: #344054;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.col-actions[b-ghaeztlh2g] {
    display: flex;
    gap: 0.15rem;
}

.color-row[b-ghaeztlh2g] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.35rem;
}

.color-label[b-ghaeztlh2g] {
    font-size: 0.78rem;
    color: #666;
    flex-shrink: 0;
}

.color-picker[b-ghaeztlh2g] {
    flex: 1;
    height: 36px;
    border: 1px solid #cfd5dd;
    border-radius: 6px;
    padding: 0.1rem;
    cursor: pointer;
    background: #fff;
}

.btn-add-col[b-ghaeztlh2g] {
    width: 100%;
    padding: 0.55rem;
    background: #fff;
    border: 2px dashed #cfd5dd;
    border-radius: 9px;
    color: #8a8f98;
    font-size: 0.82rem;
    font-weight: 800;
    cursor: pointer;
    min-height: 38px;
}

    .btn-add-col:hover[b-ghaeztlh2g] {
        border-color: var(--brand-blue);
        color: var(--brand-blue);
        background: #f8fbff;
    }

/* ── Participants ────────────────────────────────────────────────── */
.banned-name[b-ghaeztlh2g] {
    color: #999;
    text-decoration: line-through;
    flex: 1;
    font-size: 0.85rem;
}

.btn-unban[b-ghaeztlh2g] {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1rem;
    padding: 0.1rem 0.3rem;
    border-radius: 4px;
    opacity: 0.7;
    transition: opacity 0.15s, background 0.15s;
}

    .btn-unban:hover[b-ghaeztlh2g] {
        opacity: 1;
        background: #e8edf3;
    }

.sm-panel .participant-list[b-ghaeztlh2g] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.sm-panel .participant-item[b-ghaeztlh2g] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.45rem 0.55rem;
    background: #f4f6f8;
    border-radius: 8px;
}

.sm-panel .participant-avatar[b-ghaeztlh2g] {
    width: 28px;
    height: 28px;
    background: #888;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    font-weight: 800;
    flex-shrink: 0;
}

/* ── Follow-Up Items ─────────────────────────────────────────────── */
.followup-count[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.15rem;
    height: 1.15rem;
    padding: 0 0.35rem;
    border-radius: 999px;
    background: #f39c12;
    color: #fff;
    font-size: 0.68rem;
    font-weight: 800;
    line-height: 1;
}

.followup-group[b-ghaeztlh2g] {
    padding: 0.7rem;
}

.followup-group-title[b-ghaeztlh2g] {
    font-size: 0.7rem;
    font-weight: 800;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0 0 0.4rem;
}

.followup-list[b-ghaeztlh2g] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.followup-item[b-ghaeztlh2g] {
    display: flex;
    align-items: flex-start;
    gap: 0.45rem;
    padding: 0.5rem 0.55rem;
    border-left: 4px solid #f39c12;
    background: #fff;
    border-radius: 7px;
    cursor: pointer;
    transition: background 0.15s, transform 0.15s;
}

    .followup-item:hover[b-ghaeztlh2g] {
        background: #fff7e6;
        transform: translateY(-1px);
    }

.followup-votes[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    flex-shrink: 0;
    color: #666;
    font-size: 0.72rem;
    font-weight: 800;
    min-width: 2rem;
}

.followup-text[b-ghaeztlh2g] {
    flex: 1;
    min-width: 0;
    display: block;
    font-size: 0.82rem;
    line-height: 1.35;
    color: #344054;
}

.followup-empty[b-ghaeztlh2g] {
    color: #999;
    font-style: italic;
    font-size: 0.82rem;
}

/* ── AI accordion ───────────────────────────────────────────────── */
.accordion-item-ai .accordion-trigger.is-open[b-ghaeztlh2g] {
    color: var(--brand-navy);
}

.ai-accordion-body[b-ghaeztlh2g] {
    padding-bottom: 0.95rem;
}

.ai-summary-card[b-ghaeztlh2g] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.ai-summary-card-header[b-ghaeztlh2g] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.7rem;
}

.ai-action-title[b-ghaeztlh2g] {
    font-size: 0.92rem;
    font-weight: 850;
    color: var(--brand-navy);
    margin-bottom: 0.22rem;
}

.ai-action-description[b-ghaeztlh2g] {
    font-size: 0.78rem;
    color: #667085;
    line-height: 1.4;
}

.ai-summary-badge[b-ghaeztlh2g] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 0.22rem 0.55rem;
    border-radius: 999px;
    background: #f2f4f7;
    color: #667085;
    font-size: 0.68rem;
    font-weight: 850;
    white-space: nowrap;
}

    .ai-summary-badge.is-current[b-ghaeztlh2g] {
        background: #ecfdf3;
        color: #067647;
    }

    .ai-summary-badge.is-warning[b-ghaeztlh2g] {
        background: #fff7e6;
        color: #7a4b00;
    }

    .ai-summary-badge.is-working[b-ghaeztlh2g] {
        background: #eef4ff;
        color: var(--brand-navy);
    }

.ai-summary-meta-grid[b-ghaeztlh2g] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.45rem;
    padding: 0.65rem;
    border-radius: 8px;
    background: #fff;
    border: 1px solid #e5e7eb;
}

.ai-summary-meta-item[b-ghaeztlh2g] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-width: 0;
}

.ai-summary-meta-label[b-ghaeztlh2g] {
    color: #667085;
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.ai-summary-meta-value[b-ghaeztlh2g] {
    min-width: 0;
    color: #344054;
    font-size: 0.78rem;
    font-weight: 750;
    text-align: right;
    overflow-wrap: anywhere;
}

.ai-summary-meta-value-current[b-ghaeztlh2g] {
    color: #067647;
}

.ai-summary-meta-value-warning[b-ghaeztlh2g] {
    color: #7a4b00;
}

.ai-summary-meta-value-info[b-ghaeztlh2g] {
    color: var(--brand-navy);
}

.ai-action-buttons[b-ghaeztlh2g] {
    display: flex;
    align-items: stretch;
    gap: 0.45rem;
    flex-wrap: wrap;
}

.ai-action-buttons-stacked[b-ghaeztlh2g] {
    flex-direction: column;
}

.btn-ai-action[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.3rem;
    width: 100%;
    min-height: 38px;
    padding: 0.5rem 0.75rem;
    border: 1.5px solid var(--brand-blue);
    border-radius: 8px;
    background: #fff;
    color: var(--brand-blue);
    font-size: 0.8rem;
    font-weight: 850;
    text-decoration: none;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, transform 0.15s, border-color 0.15s;
    white-space: nowrap;
}

    .btn-ai-action:hover:not(:disabled)[b-ghaeztlh2g] {
        background: var(--brand-blue);
        color: #fff;
        transform: translateY(-1px);
    }

.btn-ai-action-primary[b-ghaeztlh2g] {
    background: var(--brand-navy);
    border-color: var(--brand-navy);
    color: #fff;
}

    .btn-ai-action-primary:hover:not(:disabled)[b-ghaeztlh2g] {
        background: var(--brand-blue);
        border-color: var(--brand-blue);
    }

.btn-ai-action-disabled[b-ghaeztlh2g],
.btn-ai-action:disabled[b-ghaeztlh2g] {
    border-color: #d0d5dd;
    background: #f2f4f7;
    color: #98a2b3;
    cursor: not-allowed;
    transform: none;
}

/* ── AI summary status and animation ───────────────────────────── */
.ai-summary-status[b-ghaeztlh2g],
.ai-summary-error[b-ghaeztlh2g],
.ai-summary-result[b-ghaeztlh2g] {
    margin-top: 0.75rem;
    border-radius: 8px;
    padding: 0.75rem 0.85rem;
    font-size: 0.8rem;
}

.ai-summary-status[b-ghaeztlh2g] {
    background: #eef4ff;
    border: 1px solid #d7e3ff;
    color: var(--brand-navy);
    font-weight: 800;
}

.ai-summary-error[b-ghaeztlh2g] {
    background: #fff1f0;
    border: 1px solid #ffd1cc;
    color: #b42318;
    line-height: 1.4;
}

.ai-summary-result[b-ghaeztlh2g] {
    background: #f8fafc;
    border: 1px solid #e5e7eb;
}

.ai-summary-result-header[b-ghaeztlh2g] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.6rem;
}

.ai-summary-result-title[b-ghaeztlh2g] {
    color: var(--brand-navy);
    font-size: 0.88rem;
    font-weight: 800;
}

.ai-summary-result-meta[b-ghaeztlh2g] {
    color: #667085;
    font-size: 0.72rem;
    margin-top: 0.1rem;
}

.ai-summary-markdown[b-ghaeztlh2g] {
    max-height: 320px;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
    margin: 0;
    padding: 0.75rem;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    color: #1f2937;
    font-family: Consolas, Monaco, 'Courier New', monospace;
    font-size: 0.75rem;
    line-height: 1.45;
}

.ai-summary-result-actions[b-ghaeztlh2g] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    flex-shrink: 0;
}

.ai-summary-status-warning[b-ghaeztlh2g] {
    background: #fff7e6;
    border-color: #f7d08a;
    color: #7a4b00;
}

.ai-summary-status-generating[b-ghaeztlh2g] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.ai-summary-status-success[b-ghaeztlh2g] {
    background: #ecfdf3;
    border-color: #abefc6;
    color: #067647;
}

.ai-summary-generating-line[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-weight: 850;
}

.ai-summary-sparkle[b-ghaeztlh2g] {
    display: inline-block;
    animation: aiSparklePulse-b-ghaeztlh2g 1.15s ease-in-out infinite;
    transform-origin: center;
}

.ai-summary-generating-subtext[b-ghaeztlh2g] {
    position: relative;
    min-height: 1.1rem;
    color: #667085;
    font-size: 0.76rem;
    font-weight: 650;
    line-height: 1.35;
}

.ai-summary-message[b-ghaeztlh2g] {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    animation: aiSummaryMessageCycle-b-ghaeztlh2g 10s linear infinite;
}

.ai-summary-message-1[b-ghaeztlh2g] {
    animation-delay: 0s;
}

.ai-summary-message-2[b-ghaeztlh2g] {
    animation-delay: 2.5s;
}

.ai-summary-message-3[b-ghaeztlh2g] {
    animation-delay: 5s;
}

.ai-summary-message-4[b-ghaeztlh2g] {
    animation-delay: 7.5s;
}

.ai-summary-ellipsis[b-ghaeztlh2g]::after {
    content: "";
    animation: aiSummaryEllipsis-b-ghaeztlh2g 1.2s steps(4, end) infinite;
}

@keyframes aiSparklePulse-b-ghaeztlh2g {
    0%, 100% {
        transform: scale(1) rotate(0deg);
        opacity: 0.72;
    }

    50% {
        transform: scale(1.28) rotate(12deg);
        opacity: 1;
    }
}

@keyframes aiSummaryMessageCycle-b-ghaeztlh2g {
    0%, 20% {
        opacity: 1;
        transform: translateY(0);
    }

    25%, 100% {
        opacity: 0;
        transform: translateY(-2px);
    }
}

@keyframes aiSummaryEllipsis-b-ghaeztlh2g {
    0% {
        content: "";
    }

    25% {
        content: ".";
    }

    50% {
        content: "..";
    }

    75%, 100% {
        content: "...";
    }
}

/* ── Export shell ───────────────────────────────────────────────── */
.export-card-shell[b-ghaeztlh2g] {
    padding: 0.75rem;
}

.export-card-shell :deep(button)[b-ghaeztlh2g],
.export-card-shell :deep(a)[b-ghaeztlh2g] {
    border-radius: 8px;
}

/* ── Confirm dialog ─────────────────────────────────────────────── */
.sm-confirm-backdrop[b-ghaeztlh2g] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    backdrop-filter: blur(2px);
}

.sm-confirm-box[b-ghaeztlh2g] {
    background: #fff;
    border-radius: 12px;
    padding: 1.75rem 2rem;
    max-width: 380px;
    width: 90%;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
    border-top: 4px solid var(--brand-red);
    animation: confirmSlideIn-b-ghaeztlh2g 0.15s ease-out;
}

@keyframes confirmSlideIn-b-ghaeztlh2g {
    from {
        opacity: 0;
        transform: translateY(-12px) scale(0.97);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.sm-confirm-message[b-ghaeztlh2g] {
    margin: 0 0 1.5rem;
    font-size: 0.95rem;
    line-height: 1.55;
    color: #222;
    font-weight: 500;
}

.sm-confirm-actions[b-ghaeztlh2g] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
}



/* ── Panel feedback footer ─────────────────────────────────────── */
.sm-panel-feedback-footer[b-ghaeztlh2g] {
    flex-shrink: 0;
    margin: 0 0.85rem 0.85rem;
    padding-top: 0.75rem;
    border-top: 1px solid #edf0f3;
    text-align: center;
}

.sm-panel-feedback-text[b-ghaeztlh2g] {
    margin-bottom: 0.15rem;
    color: #8a8f98;
    font-size: 0.76rem;
    line-height: 1.3;
}

.sm-panel-feedback-link[b-ghaeztlh2g] {
    border: none;
    background: transparent;
    color: var(--brand-blue);
    cursor: pointer;
    font: inherit;
    font-size: 0.82rem;
    font-weight: 800;
    line-height: 1.3;
    padding: 0.25rem 0.35rem;
    border-radius: 6px;
}

.sm-panel-feedback-link:hover[b-ghaeztlh2g] {
    background: #eef4ff;
    color: var(--brand-navy);
    text-decoration: underline;
}

@media (max-width: 420px) {
    .sm-panel[b-ghaeztlh2g] {
        width: 100vw;
    }

    .sm-accordion[b-ghaeztlh2g] {
        padding: 0 0.75rem 1rem;
    }

    .setting-display-row[b-ghaeztlh2g],
    .team-code-row[b-ghaeztlh2g],
    .ai-summary-card-header[b-ghaeztlh2g] {
        align-items: stretch;
        flex-direction: column;
    }

    .setting-display-row .btn-sm[b-ghaeztlh2g],
    .team-code-row .btn-sm[b-ghaeztlh2g] {
        width: 100%;
    }

    .ai-summary-badge[b-ghaeztlh2g] {
        align-self: flex-start;
    }
}

@media (prefers-reduced-motion: reduce) {
    .ai-summary-sparkle[b-ghaeztlh2g],
    .ai-summary-message[b-ghaeztlh2g],
    .ai-summary-ellipsis[b-ghaeztlh2g]::after {
        animation: none;
    }

    .ai-summary-message[b-ghaeztlh2g] {
        position: static;
        opacity: 1;
        transform: none;
    }

    .ai-summary-message:not(.ai-summary-message-1)[b-ghaeztlh2g] {
        display: none;
    }

    .btn-full[b-ghaeztlh2g],
    .btn-secondary-full[b-ghaeztlh2g],
    .btn-music[b-ghaeztlh2g],
    .btn-ai-action[b-ghaeztlh2g],
    .followup-item[b-ghaeztlh2g] {
        transition: none;
    }
}

/* ── Export action layout ────────────────────────────────────────── */
.export-card-shell[b-ghaeztlh2g]  .export-actions,
.export-card-shell[b-ghaeztlh2g]  .export-action-row,
.export-card-shell[b-ghaeztlh2g]  .export-buttons,
.export-card-shell[b-ghaeztlh2g]  .export-button-row,
.export-card-shell[b-ghaeztlh2g]  .export-download-actions,
.export-card-shell[b-ghaeztlh2g]  .export-format-actions,
.export-card-shell[b-ghaeztlh2g]  div:has(> button),
.export-card-shell[b-ghaeztlh2g]  div:has(> a) {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0.5rem !important;
}

.export-card-shell[b-ghaeztlh2g]  button,
.export-card-shell[b-ghaeztlh2g]  a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.3rem !important;
    width: 100% !important;
    min-height: 38px !important;
    padding: 0.5rem 0.75rem !important;
    border-radius: 8px !important;
    font-size: 0.8rem !important;
    font-weight: 850 !important;
    text-decoration: none !important;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, transform 0.15s, border-color 0.15s !important;
    white-space: nowrap !important;
}

.export-card-shell[b-ghaeztlh2g]  button:hover:not(:disabled),
.export-card-shell[b-ghaeztlh2g]  a:hover {
    background: var(--brand-blue) !important;
    border-color: var(--brand-blue) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

.export-card-shell[b-ghaeztlh2g]  button:disabled {
    border-color: #d0d5dd !important;
    background: #f2f4f7 !important;
    color: #98a2b3 !important;
    cursor: not-allowed !important;
    transform: none !important;
}


/* ── Phase 4.2 UI button standardization ──────────────────────────
   Keep all Scrum Master Panel buttons on the same visual system.
   Variants should differ by intent, not by one-off hover behavior. */
.sm-panel button[b-ghaeztlh2g],
.sm-confirm-box button[b-ghaeztlh2g],
.sm-panel :deep(button)[b-ghaeztlh2g],
.sm-panel :deep(a)[b-ghaeztlh2g],
.sm-panel[b-ghaeztlh2g] (button),
.sm-panel[b-ghaeztlh2g] (a) {
    font-family: inherit;
}

.btn-full[b-ghaeztlh2g],
.btn-secondary-full[b-ghaeztlh2g],
.btn-music[b-ghaeztlh2g],
.btn-sm[b-ghaeztlh2g],
.btn-ai-action[b-ghaeztlh2g],
.btn-add-col[b-ghaeztlh2g],
.btn-icon[b-ghaeztlh2g],
.btn-unban[b-ghaeztlh2g],
.sm-confirm-box .btn-confirm-delete[b-ghaeztlh2g],
.sm-confirm-box .btn-cancel[b-ghaeztlh2g],
.export-card-shell :deep(button)[b-ghaeztlh2g],
.export-card-shell :deep(a)[b-ghaeztlh2g],
.export-card-shell[b-ghaeztlh2g] (button),
.export-card-shell[b-ghaeztlh2g] (a) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    border-radius: 8px;
    font-weight: 800;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
}

.btn-full[b-ghaeztlh2g],
.btn-secondary-full[b-ghaeztlh2g],
.btn-music[b-ghaeztlh2g],
.btn-ai-action[b-ghaeztlh2g],
.export-card-shell :deep(button)[b-ghaeztlh2g],
.export-card-shell :deep(a)[b-ghaeztlh2g],
.export-card-shell[b-ghaeztlh2g] (button),
.export-card-shell[b-ghaeztlh2g] (a) {
    width: 100%;
    min-height: 40px;
    padding: 0.55rem 0.85rem;
    font-size: 0.82rem;
    white-space: nowrap;
}

.btn-sm[b-ghaeztlh2g],
.sm-confirm-box .btn-confirm-delete[b-ghaeztlh2g],
.sm-confirm-box .btn-cancel[b-ghaeztlh2g] {
    min-height: 32px;
    padding: 0.38rem 0.75rem;
    font-size: 0.76rem;
    white-space: nowrap;
}

.btn-icon[b-ghaeztlh2g],
.btn-unban[b-ghaeztlh2g] {
    min-width: 32px;
    min-height: 32px;
    padding: 0.25rem;
    border: 1px solid transparent;
    background: transparent;
    color: var(--brand-navy);
}


.btn-full[b-ghaeztlh2g],
.btn-ai-action-primary[b-ghaeztlh2g],
.sm-confirm-box .btn-confirm-delete[b-ghaeztlh2g] {
    border: 1.5px solid var(--brand-navy);
    background: var(--brand-navy);
    color: #fff;
}

.btn-full:hover:not(:disabled)[b-ghaeztlh2g],
.btn-ai-action-primary:hover:not(:disabled)[b-ghaeztlh2g],
.sm-confirm-box .btn-confirm-delete:hover:not(:disabled)[b-ghaeztlh2g] {
    background: var(--brand-blue);
    border-color: var(--brand-blue);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(15, 52, 96, 0.14);
}

.btn-secondary-full[b-ghaeztlh2g],
.btn-music[b-ghaeztlh2g],
.btn-ai-action[b-ghaeztlh2g],
.btn-secondary-sm[b-ghaeztlh2g],
.sm-confirm-box .btn-cancel[b-ghaeztlh2g],
.export-card-shell :deep(button)[b-ghaeztlh2g],
.export-card-shell :deep(a)[b-ghaeztlh2g],
.export-card-shell[b-ghaeztlh2g] (button),
.export-card-shell[b-ghaeztlh2g] (a) {
    border: 1.5px solid var(--brand-blue);
    background: #fff;
    color: var(--brand-blue);
}

.btn-secondary-full:hover:not(:disabled)[b-ghaeztlh2g],
.btn-music:hover:not(:disabled)[b-ghaeztlh2g],
.btn-ai-action:hover:not(:disabled)[b-ghaeztlh2g],
.btn-secondary-sm:hover:not(:disabled)[b-ghaeztlh2g],
.sm-confirm-box .btn-cancel:hover:not(:disabled)[b-ghaeztlh2g],
.export-card-shell :deep(button:hover:not(:disabled))[b-ghaeztlh2g],
.export-card-shell :deep(a:hover)[b-ghaeztlh2g],
.export-card-shell[b-ghaeztlh2g] (button:hover:not(:disabled)),
.export-card-shell[b-ghaeztlh2g] (a:hover) {
    background: var(--brand-blue);
    border-color: var(--brand-blue);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(15, 52, 96, 0.14);
}

.btn-primary-sm[b-ghaeztlh2g] {
    border: 1.5px solid var(--brand-navy);
    background: var(--brand-navy);
    color: #fff;
}

.btn-primary-sm:hover:not(:disabled)[b-ghaeztlh2g] {
    background: var(--brand-blue);
    border-color: var(--brand-blue);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(15, 52, 96, 0.14);
}

.btn-danger[b-ghaeztlh2g] {
    border-color: #c0392b;
    background: #c0392b;
    color: #fff;
}

.btn-danger:hover:not(:disabled)[b-ghaeztlh2g] {
    background: #a93226;
    border-color: #a93226;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(192, 57, 43, 0.16);
}

.btn-success[b-ghaeztlh2g] {
    border-color: #27ae60;
    background: #27ae60;
    color: #fff;
}

.btn-success:hover:not(:disabled)[b-ghaeztlh2g] {
    background: #208d4f;
    border-color: #208d4f;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(39, 174, 96, 0.16);
}

.btn-add-col[b-ghaeztlh2g] {
    width: 100%;
    min-height: 38px;
    border: 2px dashed #cfd5dd;
    background: #fff;
    color: #667085;
}

.btn-add-col:hover:not(:disabled)[b-ghaeztlh2g] {
    border-color: var(--brand-blue);
    background: #eef4ff;
    color: var(--brand-blue);
    transform: translateY(-1px);
}

.btn-icon:hover:not(:disabled)[b-ghaeztlh2g],
.btn-unban:hover:not(:disabled)[b-ghaeztlh2g] {
    border-color: #d7e3ff;
    background: #eef4ff;
    color: var(--brand-blue);
    transform: translateY(-1px);
}

.btn-pin-panel:hover:not(:disabled)[b-ghaeztlh2g],
.btn-close-panel:hover:not(:disabled)[b-ghaeztlh2g] {
    border-color: rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    transform: translateY(-1px);
}

.btn-full:focus-visible[b-ghaeztlh2g],
.btn-secondary-full:focus-visible[b-ghaeztlh2g],
.btn-music:focus-visible[b-ghaeztlh2g],
.btn-sm:focus-visible[b-ghaeztlh2g],
.btn-ai-action:focus-visible[b-ghaeztlh2g],
.btn-add-col:focus-visible[b-ghaeztlh2g],
.btn-icon:focus-visible[b-ghaeztlh2g],
.btn-pin-panel:focus-visible[b-ghaeztlh2g],
.btn-close-panel:focus-visible[b-ghaeztlh2g],
.btn-unban:focus-visible[b-ghaeztlh2g],
.sm-confirm-box .btn-confirm-delete:focus-visible[b-ghaeztlh2g],
.sm-confirm-box .btn-cancel:focus-visible[b-ghaeztlh2g],
.export-card-shell :deep(button:focus-visible)[b-ghaeztlh2g],
.export-card-shell :deep(a:focus-visible)[b-ghaeztlh2g],
.export-card-shell[b-ghaeztlh2g] (button:focus-visible),
.export-card-shell[b-ghaeztlh2g] (a:focus-visible) {
    outline: 3px solid rgba(45, 140, 240, 0.28);
    outline-offset: 2px;
}

.btn-full:disabled[b-ghaeztlh2g],
.btn-secondary-full:disabled[b-ghaeztlh2g],
.btn-music:disabled[b-ghaeztlh2g],
.btn-sm:disabled[b-ghaeztlh2g],
.btn-ai-action:disabled[b-ghaeztlh2g],
.btn-add-col:disabled[b-ghaeztlh2g],
.btn-icon:disabled[b-ghaeztlh2g],
.btn-unban:disabled[b-ghaeztlh2g],
.export-card-shell :deep(button:disabled)[b-ghaeztlh2g],
.export-card-shell[b-ghaeztlh2g] (button:disabled) {
    border-color: #d0d5dd !important;
    background: #f2f4f7 !important;
    color: #98a2b3 !important;
    cursor: not-allowed !important;
    transform: none !important;
    box-shadow: none !important;
    opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
    .btn-full[b-ghaeztlh2g],
    .btn-secondary-full[b-ghaeztlh2g],
    .btn-music[b-ghaeztlh2g],
    .btn-sm[b-ghaeztlh2g],
    .btn-ai-action[b-ghaeztlh2g],
    .btn-add-col[b-ghaeztlh2g],
    .btn-icon[b-ghaeztlh2g],
    .btn-close-panel[b-ghaeztlh2g],
    .btn-unban[b-ghaeztlh2g],
    .sm-confirm-box .btn-confirm-delete[b-ghaeztlh2g],
    .sm-confirm-box .btn-cancel[b-ghaeztlh2g],
    .export-card-shell :deep(button)[b-ghaeztlh2g],
    .export-card-shell :deep(a)[b-ghaeztlh2g],
    .export-card-shell[b-ghaeztlh2g] (button),
    .export-card-shell[b-ghaeztlh2g] (a) {
        transition: none;
    }

    .btn-full:hover:not(:disabled)[b-ghaeztlh2g],
    .btn-secondary-full:hover:not(:disabled)[b-ghaeztlh2g],
    .btn-music:hover:not(:disabled)[b-ghaeztlh2g],
    .btn-sm:hover:not(:disabled)[b-ghaeztlh2g],
    .btn-ai-action:hover:not(:disabled)[b-ghaeztlh2g],
    .btn-add-col:hover:not(:disabled)[b-ghaeztlh2g],
    .btn-icon:hover:not(:disabled)[b-ghaeztlh2g],
    .btn-close-panel:hover:not(:disabled)[b-ghaeztlh2g],
    .btn-unban:hover:not(:disabled)[b-ghaeztlh2g],
    .sm-confirm-box .btn-confirm-delete:hover:not(:disabled)[b-ghaeztlh2g],
    .sm-confirm-box .btn-cancel:hover:not(:disabled)[b-ghaeztlh2g],
    .export-card-shell :deep(button:hover:not(:disabled))[b-ghaeztlh2g],
    .export-card-shell :deep(a:hover)[b-ghaeztlh2g],
    .export-card-shell[b-ghaeztlh2g] (button:hover:not(:disabled)),
    .export-card-shell[b-ghaeztlh2g] (a:hover) {
        transform: none;
    }
}

/* ── Phase 4.2 Design System normalization ───────────────────────
   Keep shared UI behavior consistent across every SM Panel section.
   These rules intentionally sit at the end so older section-specific
   styles inherit a single visual language without changing behavior. */
.sm-panel[b-ghaeztlh2g] {
    --sm-surface: #fff;
    --sm-surface-muted: #f8fafc;
    --sm-border: #e5e7eb;
    --sm-border-strong: #d0d5dd;
    --sm-text: #344054;
    --sm-text-muted: #667085;
    --sm-text-soft: #8a8f98;
    --sm-info-bg: #eef4ff;
    --sm-info-border: #d7e3ff;
    --sm-info-text: var(--brand-navy);
    --sm-success-bg: #ecfdf3;
    --sm-success-border: #abefc6;
    --sm-success-text: #067647;
    --sm-warning-bg: #fff7e6;
    --sm-warning-border: #f7d08a;
    --sm-warning-text: #7a4b00;
    --sm-error-bg: #fff1f0;
    --sm-error-border: #ffd1cc;
    --sm-error-text: #b42318;
    --sm-radius-sm: 6px;
    --sm-radius-md: 8px;
    --sm-radius-lg: 10px;
    --sm-focus-ring: 0 0 0 3px rgba(74, 144, 217, 0.22);
    --sm-hover-lift: translateY(-1px);
    --sm-transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.sm-card[b-ghaeztlh2g],
.empty-card[b-ghaeztlh2g],
.ai-summary-result[b-ghaeztlh2g],
.ai-summary-meta-grid[b-ghaeztlh2g],
.export-card-shell[b-ghaeztlh2g],
.session-name-editor[b-ghaeztlh2g],
.template-editor[b-ghaeztlh2g],
.team-card[b-ghaeztlh2g],
.column-editor[b-ghaeztlh2g],
.followup-group[b-ghaeztlh2g] {
    border-radius: var(--sm-radius-lg);
    border-color: var(--sm-border);
}

.sm-card[b-ghaeztlh2g],
.ai-summary-result[b-ghaeztlh2g],
.export-card-shell[b-ghaeztlh2g],
.session-name-editor[b-ghaeztlh2g],
.template-editor[b-ghaeztlh2g],
.team-card[b-ghaeztlh2g],
.column-editor[b-ghaeztlh2g],
.followup-group[b-ghaeztlh2g] {
    background: var(--sm-surface-muted);
    border: 1px solid var(--sm-border);
    padding: 0.85rem;
}

.empty-card[b-ghaeztlh2g] {
    background: var(--sm-surface-muted);
    border: 1px dashed var(--sm-border-strong);
    padding: 0.9rem;
    color: var(--sm-text-soft);
}

.field-label[b-ghaeztlh2g],
.section-subheading[b-ghaeztlh2g],
.followup-group-title[b-ghaeztlh2g],
.ai-summary-meta-label[b-ghaeztlh2g] {
    color: #777;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.panel-section-intro[b-ghaeztlh2g],
.field-help[b-ghaeztlh2g],
.ai-action-description[b-ghaeztlh2g],
.ai-summary-result-meta[b-ghaeztlh2g],
.ai-summary-generating-subtext[b-ghaeztlh2g] {
    color: var(--sm-text-muted);
}

.field-error[b-ghaeztlh2g],
.ai-summary-error[b-ghaeztlh2g] {
    color: var(--sm-error-text);
}

.edit-input[b-ghaeztlh2g],
.form-input-sm[b-ghaeztlh2g],
.color-picker[b-ghaeztlh2g] {
    border-color: var(--sm-border-strong);
    border-radius: var(--sm-radius-sm);
    color: var(--sm-text);
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.edit-input:focus[b-ghaeztlh2g],
.form-input-sm:focus[b-ghaeztlh2g],
.color-picker:focus[b-ghaeztlh2g] {
    border-color: var(--brand-blue);
    box-shadow: var(--sm-focus-ring);
    outline: none;
}

/* One button language for every action inside the SM Panel. */
.btn-full[b-ghaeztlh2g],
.btn-secondary-full[b-ghaeztlh2g],
.btn-music[b-ghaeztlh2g],
.btn-sm[b-ghaeztlh2g],
.btn-ai-action[b-ghaeztlh2g],
.btn-add-col[b-ghaeztlh2g],
.btn-confirm-delete[b-ghaeztlh2g],
.btn-cancel[b-ghaeztlh2g],
.sm-panel :deep(button)[b-ghaeztlh2g],
.sm-panel :deep(a)[b-ghaeztlh2g] {
    transition: var(--sm-transition);
}

.btn-full[b-ghaeztlh2g],
.btn-secondary-full[b-ghaeztlh2g],
.btn-music[b-ghaeztlh2g],
.btn-ai-action[b-ghaeztlh2g],
.export-card-shell :deep(button)[b-ghaeztlh2g],
.export-card-shell :deep(a)[b-ghaeztlh2g] {
    width: 100%;
    min-height: 40px;
    border-radius: var(--sm-radius-md);
    font-weight: 850;
}

.btn-secondary-full[b-ghaeztlh2g],
.btn-music[b-ghaeztlh2g],
.btn-ai-action[b-ghaeztlh2g],
.export-card-shell :deep(button)[b-ghaeztlh2g],
.export-card-shell :deep(a)[b-ghaeztlh2g] {
    background: var(--sm-surface);
    border: 1.5px solid var(--brand-blue);
    color: var(--brand-blue);
}

.btn-secondary-full:hover:not(:disabled)[b-ghaeztlh2g],
.btn-music:hover:not(:disabled)[b-ghaeztlh2g],
.btn-ai-action:hover:not(:disabled)[b-ghaeztlh2g],
.export-card-shell :deep(button:hover:not(:disabled))[b-ghaeztlh2g],
.export-card-shell :deep(a:hover)[b-ghaeztlh2g] {
    background: var(--brand-blue);
    border-color: var(--brand-blue);
    color: #fff;
    transform: var(--sm-hover-lift);
}

.btn-full:hover:not(:disabled)[b-ghaeztlh2g],
.btn-primary-sm:hover:not(:disabled)[b-ghaeztlh2g],
.btn-confirm-delete:hover:not(:disabled)[b-ghaeztlh2g] {
    transform: var(--sm-hover-lift);
}

.btn-primary-sm[b-ghaeztlh2g],
.btn-ai-action-primary[b-ghaeztlh2g] {
    background: var(--brand-navy);
    border-color: var(--brand-navy);
    color: #fff;
}

.btn-primary-sm:hover:not(:disabled)[b-ghaeztlh2g],
.btn-ai-action-primary:hover:not(:disabled)[b-ghaeztlh2g] {
    background: var(--brand-blue);
    border-color: var(--brand-blue);
    color: #fff;
}

.btn-secondary-sm[b-ghaeztlh2g],
.btn-cancel[b-ghaeztlh2g] {
    background: var(--sm-surface);
    border: 1px solid var(--sm-border-strong);
    color: var(--sm-text);
}

.btn-secondary-sm:hover:not(:disabled)[b-ghaeztlh2g],
.btn-cancel:hover:not(:disabled)[b-ghaeztlh2g] {
    background: var(--sm-info-bg);
    border-color: var(--sm-info-border);
    color: var(--brand-navy);
    transform: var(--sm-hover-lift);
}

.btn-danger[b-ghaeztlh2g],
.btn-confirm-delete[b-ghaeztlh2g] {
    background: #c0392b;
    border-color: #c0392b;
    color: #fff;
}

.btn-danger:hover:not(:disabled)[b-ghaeztlh2g],
.btn-confirm-delete:hover:not(:disabled)[b-ghaeztlh2g] {
    background: #a93226;
    border-color: #a93226;
    color: #fff;
}

.btn-success[b-ghaeztlh2g] {
    background: #27ae60;
    border-color: #27ae60;
    color: #fff;
}

.btn-success:hover:not(:disabled)[b-ghaeztlh2g] {
    background: #208d4f;
    border-color: #208d4f;
    color: #fff;
}

.btn-icon[b-ghaeztlh2g],
.btn-unban[b-ghaeztlh2g],
.btn-close-panel[b-ghaeztlh2g] {
    transition: var(--sm-transition);
}

.btn-icon:hover:not(:disabled)[b-ghaeztlh2g],
.btn-unban:hover:not(:disabled)[b-ghaeztlh2g] {
    background: #e8edf3;
    transform: var(--sm-hover-lift);
}

.btn-full:focus-visible[b-ghaeztlh2g],
.btn-secondary-full:focus-visible[b-ghaeztlh2g],
.btn-music:focus-visible[b-ghaeztlh2g],
.btn-sm:focus-visible[b-ghaeztlh2g],
.btn-icon:focus-visible[b-ghaeztlh2g],
.btn-unban:focus-visible[b-ghaeztlh2g],
.btn-pin-panel:focus-visible[b-ghaeztlh2g],
.btn-close-panel:focus-visible[b-ghaeztlh2g],
.btn-ai-action:focus-visible[b-ghaeztlh2g],
.btn-add-col:focus-visible[b-ghaeztlh2g],
.btn-confirm-delete:focus-visible[b-ghaeztlh2g],
.btn-cancel:focus-visible[b-ghaeztlh2g],
.export-card-shell :deep(button:focus-visible)[b-ghaeztlh2g],
.export-card-shell :deep(a:focus-visible)[b-ghaeztlh2g] {
    box-shadow: var(--sm-focus-ring);
    outline: none;
}

.btn-full:disabled[b-ghaeztlh2g],
.btn-secondary-full:disabled[b-ghaeztlh2g],
.btn-music:disabled[b-ghaeztlh2g],
.btn-sm:disabled[b-ghaeztlh2g],
.btn-ai-action:disabled[b-ghaeztlh2g],
.btn-add-col:disabled[b-ghaeztlh2g],
.export-card-shell :deep(button:disabled)[b-ghaeztlh2g] {
    border-color: var(--sm-border-strong);
    background: #f2f4f7;
    color: #98a2b3;
    cursor: not-allowed;
    opacity: 1;
    transform: none;
}

/* Shared status language. */
.ai-summary-status[b-ghaeztlh2g],
.ai-summary-badge.is-working[b-ghaeztlh2g] {
    background: var(--sm-info-bg);
    border-color: var(--sm-info-border);
    color: var(--sm-info-text);
}

.ai-summary-status-success[b-ghaeztlh2g],
.ai-summary-badge.is-current[b-ghaeztlh2g],
.ai-summary-meta-value-current[b-ghaeztlh2g] {
    background: var(--sm-success-bg);
    border-color: var(--sm-success-border);
    color: var(--sm-success-text);
}

.ai-summary-status-warning[b-ghaeztlh2g],
.ai-summary-badge.is-warning[b-ghaeztlh2g],
.ai-summary-meta-value-warning[b-ghaeztlh2g] {
    background: var(--sm-warning-bg);
    border-color: var(--sm-warning-border);
    color: var(--sm-warning-text);
}

.ai-summary-error[b-ghaeztlh2g],
.field-error[b-ghaeztlh2g] {
    background: var(--sm-error-bg);
    border-color: var(--sm-error-border);
    color: var(--sm-error-text);
}

.field-error[b-ghaeztlh2g] {
    background: transparent;
    border: none;
}

.ai-summary-meta-value-info[b-ghaeztlh2g] {
    color: var(--sm-info-text);
}

.ai-summary-badge[b-ghaeztlh2g] {
    border: 1px solid transparent;
}

/* ExportPanel is a child component; normalize its buttons/actions from here. */
.export-card-shell :deep(.export-actions)[b-ghaeztlh2g],
.export-card-shell :deep(.export-button-row)[b-ghaeztlh2g],
.export-card-shell :deep(.export-download-actions)[b-ghaeztlh2g],
.export-card-shell :deep(.button-row)[b-ghaeztlh2g],
.export-card-shell :deep(.actions)[b-ghaeztlh2g] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.export-card-shell :deep(button)[b-ghaeztlh2g],
.export-card-shell :deep(a)[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    text-decoration: none;
    cursor: pointer;
}


/* ── AI summary simplified state layout ───────────────────────────── */
.ai-summary-state[b-ghaeztlh2g] {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;
    margin-top: 0.85rem;
    padding: 0.75rem 0.85rem;
    border: 1px solid var(--sm-border);
    border-radius: 10px;
    background: #f8fafc;
}

.ai-summary-state-icon[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    height: 1.35rem;
    border-radius: 999px;
    flex-shrink: 0;
    font-size: 0.8rem;
    font-weight: 900;
    line-height: 1;
}

.ai-summary-state-copy[b-ghaeztlh2g] {
    min-width: 0;
}

.ai-summary-state-title[b-ghaeztlh2g] {
    color: var(--brand-navy);
    font-size: 0.88rem;
    font-weight: 900;
    line-height: 1.2;
}

.ai-summary-state-description[b-ghaeztlh2g] {
    margin-top: 0.25rem;
    color: var(--sm-text-muted);
    font-size: 0.78rem;
    line-height: 1.35;
}

.ai-summary-state.is-muted .ai-summary-state-icon[b-ghaeztlh2g] {
    background: #eef2f6;
    color: #667085;
}

.ai-summary-state.is-info[b-ghaeztlh2g] {
    background: #eef4ff;
    border-color: #d7e3ff;
}

.ai-summary-state.is-info .ai-summary-state-icon[b-ghaeztlh2g] {
    background: #d7e3ff;
    color: var(--brand-blue);
}

.ai-summary-state.is-current[b-ghaeztlh2g] {
    background: #ecfdf3;
    border-color: #abefc6;
}

.ai-summary-state.is-current .ai-summary-state-icon[b-ghaeztlh2g] {
    background: #17a867;
    color: #fff;
}

.ai-summary-state.is-current .ai-summary-state-title[b-ghaeztlh2g] {
    color: #067647;
}

.ai-summary-state.is-warning[b-ghaeztlh2g] {
    background: #fff7e6;
    border-color: #f7d08a;
}

.ai-summary-state.is-warning .ai-summary-state-icon[b-ghaeztlh2g] {
    background: #f39c12;
    color: #fff;
}

.ai-summary-state.is-warning .ai-summary-state-title[b-ghaeztlh2g] {
    color: #7a4b00;
}

.ai-summary-generated-card[b-ghaeztlh2g] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.75rem;
    padding: 0.65rem 0.75rem;
    border: 1px solid var(--sm-border);
    border-radius: 9px;
    background: #fff;
    color: var(--brand-navy);
    font-size: 0.8rem;
    font-weight: 700;
}

.ai-summary-generated-icon[b-ghaeztlh2g] {
    flex-shrink: 0;
}

/* ── Previous Sessions (Interactive Demo) ───────────────────────── */
.accordion-item-previous-sessions .accordion-trigger.is-open[b-ghaeztlh2g] {
    color: var(--brand-navy);
}

.previous-sessions-body[b-ghaeztlh2g] {
    padding-bottom: 0.95rem;
}

.previous-sessions-list[b-ghaeztlh2g] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    padding: 0.65rem;
}

.previous-session-item[b-ghaeztlh2g] {
    width: 100%;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 0.5rem;
    min-height: 36px;
    padding: 0.48rem 0.55rem;
    border-radius: 8px;
    border: 1px solid transparent;
    background: #fff;
    color: #344054;
    font: inherit;
    text-align: left;
    box-sizing: border-box;
}

.previous-session-button[b-ghaeztlh2g] {
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.previous-session-button:hover:not(:disabled)[b-ghaeztlh2g] {
    background: #eef4ff;
    border-color: #d7e3ff;
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(15, 52, 96, 0.08);
}

.previous-session-item.is-current[b-ghaeztlh2g] {
    background: #ecfdf3;
    border-color: #abefc6;
    color: #067647;
    cursor: default;
}

.previous-session-marker[b-ghaeztlh2g] {
    color: var(--brand-blue);
    font-size: 0.75rem;
    line-height: 1;
}

.previous-session-item.is-current .previous-session-marker[b-ghaeztlh2g] {
    color: #067647;
}

.previous-session-name[b-ghaeztlh2g] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.82rem;
    font-weight: 800;
}

.previous-session-open[b-ghaeztlh2g] {
    color: var(--brand-blue);
    font-size: 0.72rem;
    font-weight: 850;
}

.previous-session-current-badge[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.1rem;
    padding: 0.1rem 0.42rem;
    border-radius: 999px;
    background: #d1fadf;
    color: #067647;
    font-size: 0.62rem;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

@media (prefers-reduced-motion: reduce) {
    .previous-session-button[b-ghaeztlh2g] {
        transition: none;
    }

    .previous-session-button:hover:not(:disabled)[b-ghaeztlh2g] {
        transform: none;
    }
}


/* ── SM Panel header pin action ─────────────────────────────────── */
.sm-panel-header-actions[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.btn-pin-panel[b-ghaeztlh2g] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    background: none;
    border: 1px solid transparent;
    border-radius: 6px;
    cursor: pointer;
    color: rgba(255, 255, 255, 0.78);
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.btn-pin-panel:hover:not(:disabled)[b-ghaeztlh2g],
.btn-pin-panel.is-pinned[b-ghaeztlh2g] {
    border-color: rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    transform: translateY(-1px);
}

.btn-pin-panel[b-ghaeztlh2g]  .sm-panel-pin-icon,
.btn-pin-panel .sm-panel-pin-icon[b-ghaeztlh2g] {
    width: 1.08rem;
    height: 1.08rem;
    transform: rotate(45deg);
    transform-origin: 50% 50%;
    transition: transform 0.15s ease;
}

.btn-pin-panel.is-pinned[b-ghaeztlh2g]  .sm-panel-pin-icon,
.btn-pin-panel.is-pinned .sm-panel-pin-icon[b-ghaeztlh2g] {
    transform: rotate(0deg);
}

.btn-pin-panel:focus-visible[b-ghaeztlh2g] {
    outline: 3px solid rgba(45, 140, 240, 0.28);
    outline-offset: 2px;
}

.sm-readonly-note[b-ghaeztlh2g] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    width: 100%;
    box-sizing: border-box;
    padding: 0.65rem 0.75rem;
    border: 1px solid #ead28f;
    border-radius: 8px;
    background: #fff8e6;
    color: #6a4f00;
    font-size: 0.85rem;
    font-weight: 700;
}

.sm-readonly-note .icon[b-ghaeztlh2g] {
    width: 1rem;
    height: 1rem;
}
/* /Components/Retro/SprintContinuityPanel.razor.rz.scp.css */
/* ── Sprint Continuity Banner ───────────────────────────── */

.previous-followups-banner[b-l8gqevrm0i] {
    margin: 0.75rem 1rem 0.65rem;
    background: #fff;
    border-left: 4px solid #f39c12;
    border-radius: 10px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.07);
    overflow: hidden;
}

.previous-followups-header[b-l8gqevrm0i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.65rem;
    padding: 0.6rem 0.8rem 0.6rem 0.9rem;
}

.previous-followups-toggle[b-l8gqevrm0i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    width: 100%;
    border: none;
    background: transparent;
    cursor: pointer;
    color: var(--brand-navy, #1f3c88);
    text-align: left;
    padding: 0;
}

.previous-followups-toggle:hover[b-l8gqevrm0i] {
    opacity: 0.88;
}

.previous-followups-heading[b-l8gqevrm0i] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    min-width: 0;
    font-size: 0.95rem;
    font-weight: 800;
    line-height: 1.2;
}

.previous-followups-heading-icon[b-l8gqevrm0i] {
    flex-shrink: 0;
}

.previous-followups-count[b-l8gqevrm0i] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.35rem;
    height: 1.35rem;
    padding: 0 0.4rem;
    border-radius: 999px;
    background: #fff4df;
    border: 1px solid #efd29b;
    color: #8a5a00;
    font-size: 0.72rem;
    font-weight: 900;
}

.previous-followups-chevron[b-l8gqevrm0i] {
    color: #777;
    font-size: 0.78rem;
    flex-shrink: 0;
}

.previous-followups-dismiss[b-l8gqevrm0i] {
    border: none;
    background: transparent;
    color: #999;
    cursor: pointer;
    font-size: 0.95rem;
    padding: 0.18rem 0.4rem;
    border-radius: 5px;
    line-height: 1.2;
}

.previous-followups-dismiss:hover[b-l8gqevrm0i] {
    background: rgba(0,0,0,0.06);
    color: #555;
}

.previous-followups-body[b-l8gqevrm0i] {
    border-top: 1px solid #eee;
    padding: 0.75rem 0.9rem 0.85rem;
    transform-origin: top center;
    animation: previous-followups-banner-body-open-b-l8gqevrm0i 220ms ease-out both;
}

.previous-followups-body .previous-followups-message[b-l8gqevrm0i],
.previous-followups-body .previous-followups-group[b-l8gqevrm0i] {
    animation: previous-followups-banner-content-in-b-l8gqevrm0i 180ms ease-out both;
}

.previous-followups-body .previous-followups-group:nth-of-type(2)[b-l8gqevrm0i] {
    animation-delay: 35ms;
}

.previous-followups-body .previous-followups-group:nth-of-type(3)[b-l8gqevrm0i] {
    animation-delay: 70ms;
}

.previous-followups-body .previous-followups-group:nth-of-type(n+4)[b-l8gqevrm0i] {
    animation-delay: 105ms;
}

@keyframes previous-followups-banner-body-open-b-l8gqevrm0i {
    from {
        opacity: 0;
        max-height: 0;
        padding-top: 0;
        padding-bottom: 0;
        transform: translateY(-8px);
    }

    to {
        opacity: 1;
        max-height: 1200px;
        padding-top: 0.75rem;
        padding-bottom: 0.85rem;
        transform: translateY(0);
    }
}

@keyframes previous-followups-banner-content-in-b-l8gqevrm0i {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.previous-followups-message[b-l8gqevrm0i] {
    margin: 0 0 0.7rem;
    font-size: 0.82rem;
    line-height: 1.35;
    color: #606b7c;
}

.previous-followups-group + .previous-followups-group[b-l8gqevrm0i] {
    margin-top: 0.8rem;
}

.previous-followups-column[b-l8gqevrm0i] {
    font-size: 0.7rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.055em;
    color: #7c8797;
    margin-bottom: 0.35rem;
}

.previous-followups-item[b-l8gqevrm0i] {
    display: flex;
    gap: 0.5rem;
    align-items: flex-start;
    padding: 0.52rem 0.6rem;
    margin-bottom: 0.45rem;
    background: #fffaf0;
    border: 1px solid #f1dfb8;
    border-radius: 9px;
    font-size: 0.88rem;
    line-height: 1.35;
}

.previous-followups-item-reviewed[b-l8gqevrm0i] {
    background: #f7fbf8;
    border-color: #d7eadc;
}

.previous-followups-main[b-l8gqevrm0i] {
    display: flex;
    flex-direction: column;
    gap: 0.42rem;
    width: 100%;
    min-width: 0;
}

.previous-followups-title-row[b-l8gqevrm0i] {
    display: flex;
    align-items: flex-start;
    gap: 0.45rem;
    min-width: 0;
}

.previous-followups-votes[b-l8gqevrm0i] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.6rem;
    padding: 0.1rem 0.35rem;
    border-radius: 999px;
    background: rgba(255,255,255,0.72);
    border: 1px solid rgba(0,0,0,0.06);
    font-size: 0.76rem;
    font-weight: 800;
    color: #606b7c;
}

.previous-followups-text[b-l8gqevrm0i] {
    font-weight: 800;
    color: #283447;
    word-break: break-word;
}

.previous-followups-footer-row[b-l8gqevrm0i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 0.15rem;
}

.previous-followups-history-row[b-l8gqevrm0i] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    min-width: 0;
}

.previous-followups-history-pill[b-l8gqevrm0i] {
    appearance: none;
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.34rem 0.72rem;
    border-radius: 999px;
    font-size: 0.8rem;
    line-height: 1.15;
    font-weight: 900;
    white-space: nowrap;
    border: 1px solid transparent;
    font-family: inherit;
}

.previous-followups-history-icon[b-l8gqevrm0i] {
    font-size: 0.95rem;
    line-height: 1;
}

.previous-followups-history-created[b-l8gqevrm0i] {
    background: #eef6ff;
    border-color: #b8d8f8;
    color: #155aa8;
}

.previous-followups-history-open-green[b-l8gqevrm0i] {
    background: #edf8ef;
    border-color: #b7ddbf;
    color: #1f7a3c;
}

.previous-followups-history-open-amber[b-l8gqevrm0i] {
    background: #fff7e6;
    border-color: #f2cf82;
    color: #9a6400;
}

.previous-followups-history-open-red[b-l8gqevrm0i] {
    background: #fdeeee;
    border-color: #e58a8a;
    color: #b3261e;
}

.previous-followups-history-last[b-l8gqevrm0i] {
    background: #edf8ef;
    border-color: #b7ddbf;
    color: #1f7a3c;
}

.previous-followups-history-history[b-l8gqevrm0i] {
    background: #f8f0ff;
    border-color: #d8c1e8;
    color: #6e2c8f;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, transform 0.1s;
}

.previous-followups-history-history:hover[b-l8gqevrm0i],
.previous-followups-history-history.active[b-l8gqevrm0i] {
    background: #f3e7ff;
    border-color: #bf9ed8;
    transform: translateY(-1px);
}

.previous-followups-history-caret[b-l8gqevrm0i] {
    margin-left: 0.1rem;
    font-size: 0.68rem;
    line-height: 1;
}

.previous-followups-history-panel[b-l8gqevrm0i] {
    margin-top: 0.45rem;
    padding: 0.55rem 0.65rem 0.6rem;
    border: 1px solid #eadff4;
    border-radius: 9px;
    background: linear-gradient(180deg, #fcf8ff 0%, #fff 100%);
    overflow: hidden;
    transform-origin: top center;
    will-change: opacity, transform, max-height;
}

.previous-followups-history-panel-open[b-l8gqevrm0i] {
    animation: previous-followups-history-open-b-l8gqevrm0i 220ms ease-out both;
}

.previous-followups-history-panel-closing[b-l8gqevrm0i] {
    animation: previous-followups-history-close-b-l8gqevrm0i 190ms ease-in both;
}

.previous-followups-history-panel-open .previous-followups-history-entry[b-l8gqevrm0i] {
    animation: previous-followups-history-entry-in-b-l8gqevrm0i 180ms ease-out both;
}

.previous-followups-history-panel-open .previous-followups-history-entry:nth-child(2)[b-l8gqevrm0i] {
    animation-delay: 35ms;
}

.previous-followups-history-panel-open .previous-followups-history-entry:nth-child(3)[b-l8gqevrm0i] {
    animation-delay: 70ms;
}

.previous-followups-history-panel-open .previous-followups-history-entry:nth-child(n+4)[b-l8gqevrm0i] {
    animation-delay: 105ms;
}

@keyframes previous-followups-history-open-b-l8gqevrm0i {
    from {
        opacity: 0;
        max-height: 0;
        padding-top: 0;
        padding-bottom: 0;
        transform: translateY(-6px);
    }

    to {
        opacity: 1;
        max-height: 600px;
        padding-top: 0.55rem;
        padding-bottom: 0.6rem;
        transform: translateY(0);
    }
}

@keyframes previous-followups-history-close-b-l8gqevrm0i {
    from {
        opacity: 1;
        max-height: 600px;
        padding-top: 0.55rem;
        padding-bottom: 0.6rem;
        transform: translateY(0);
    }

    to {
        opacity: 0;
        max-height: 0;
        padding-top: 0;
        padding-bottom: 0;
        transform: translateY(-6px);
    }
}

@keyframes previous-followups-history-entry-in-b-l8gqevrm0i {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.previous-followups-history-panel-title[b-l8gqevrm0i] {
    margin-bottom: 0.45rem;
    font-size: 0.7rem;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.055em;
    color: #5f3278;
}

.previous-followups-history-timeline[b-l8gqevrm0i] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.previous-followups-history-entry[b-l8gqevrm0i] {
    display: grid;
    grid-template-columns: 1rem minmax(0, 1fr);
    gap: 0.45rem;
    align-items: flex-start;
    position: relative;
}

.previous-followups-history-entry:not(:last-child)[b-l8gqevrm0i]::before {
    content: "";
    position: absolute;
    left: 0.42rem;
    top: 1rem;
    bottom: -0.45rem;
    width: 1px;
    background: #d8c1e8;
}

.previous-followups-history-entry-dot[b-l8gqevrm0i] {
    width: 0.55rem;
    height: 0.55rem;
    margin-top: 0.22rem;
    border-radius: 999px;
    background: #7a3aa0;
    box-shadow: 0 0 0 3px rgba(122, 58, 160, 0.12);
    z-index: 1;
}

.previous-followups-history-entry-body[b-l8gqevrm0i] {
    min-width: 0;
}

.previous-followups-history-entry-sprint[b-l8gqevrm0i] {
    font-size: 0.76rem;
    font-weight: 900;
    color: var(--brand-navy, #1f3c88);
    line-height: 1.2;
}

.previous-followups-history-entry-text[b-l8gqevrm0i] {
    margin-top: 0.12rem;
    font-size: 0.8rem;
    color: #3f4a5d;
    line-height: 1.35;
    word-break: break-word;
}

.previous-followups-progress-card[b-l8gqevrm0i] {
    padding: 0.38rem 0.5rem;
    background: #f7f8fb;
    border-left: 3px solid #d8dee8;
    border-radius: 6px;
}

.previous-followups-progress-label[b-l8gqevrm0i] {
    margin-bottom: 0.12rem;
    font-size: 0.66rem;
    line-height: 1.2;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.055em;
    color: #687386;
}

.previous-followups-progress-text[b-l8gqevrm0i] {
    font-size: 0.82rem;
    line-height: 1.35;
    color: #3f4a5d;
    word-break: break-word;
}

.previous-followups-progress-row[b-l8gqevrm0i] {
    display: grid;
    grid-template-columns: 74px minmax(0, 1fr);
    align-items: center;
    gap: 0.45rem;
}

.previous-followups-progress-input-label[b-l8gqevrm0i] {
    flex-shrink: 0;
    font-size: 0.72rem;
    font-weight: 900;
    color: #687386;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.previous-followups-progress-input[b-l8gqevrm0i] {
    width: 100%;
    min-width: 0;
    padding: 0.4rem 0.52rem;
    border: 1px solid #d8dee8;
    border-radius: 7px;
    font-size: 0.84rem;
    color: #283447;
    background: #fff;
}

.previous-followups-progress-input:focus[b-l8gqevrm0i] {
    outline: none;
    border-color: var(--brand-blue, #4a90d9);
    box-shadow: 0 0 0 2px rgba(74, 144, 217, 0.14);
}

.previous-followups-actions[b-l8gqevrm0i] {
    display: flex;
    justify-content: flex-end;
    gap: 0.42rem;
    flex-wrap: wrap;
    margin-left: auto;
}

.btn-followup-action[b-l8gqevrm0i] {
    border: 1px solid transparent;
    border-radius: 7px;
    padding: 0.33rem 0.62rem;
    font-size: 0.76rem;
    font-weight: 900;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, transform 0.1s;
}

.btn-followup-action:hover[b-l8gqevrm0i] {
    transform: translateY(-1px);
}

.btn-followup-complete[b-l8gqevrm0i] {
    background: rgba(42, 122, 72, 0.12);
    border-color: rgba(42, 122, 72, 0.35);
    color: #1f6a3d;
}

.btn-followup-complete:hover[b-l8gqevrm0i] {
    background: rgba(42, 122, 72, 0.18);
    border-color: rgba(42, 122, 72, 0.5);
}

.btn-followup-carry[b-l8gqevrm0i] {
    background: rgba(74, 144, 217, 0.12);
    border-color: rgba(74, 144, 217, 0.35);
    color: var(--brand-navy, #1f3c88);
}

.btn-followup-carry:hover[b-l8gqevrm0i] {
    background: rgba(74, 144, 217, 0.18);
    border-color: rgba(74, 144, 217, 0.5);
}

.previous-followups-reviewed-row[b-l8gqevrm0i] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    flex-wrap: wrap;
}

.previous-followups-status-pill[b-l8gqevrm0i] {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0.22rem 0.55rem;
    font-size: 0.76rem;
    font-weight: 900;
    line-height: 1.2;
}

.previous-followups-status-complete[b-l8gqevrm0i] {
    background: rgba(42, 122, 72, 0.13);
    border: 1px solid rgba(42, 122, 72, 0.28);
    color: #1f6a3d;
}

.previous-followups-status-carry[b-l8gqevrm0i] {
    background: rgba(74, 144, 217, 0.13);
    border: 1px solid rgba(74, 144, 217, 0.28);
    color: var(--brand-navy, #1f3c88);
}

.previous-followups-status-later-complete[b-l8gqevrm0i] {
    background: rgba(42, 122, 72, 0.09);
    border: 1px solid rgba(42, 122, 72, 0.22);
    color: #246a3f;
}

.previous-followups-confirmation[b-l8gqevrm0i] {
    font-size: 0.78rem;
    font-weight: 700;
    color: #687386;
}

.previous-followups-complete-note[b-l8gqevrm0i] {
    font-size: 0.78rem;
    font-weight: 700;
    color: #687386;
}

.btn-followup-undo-complete[b-l8gqevrm0i] {
    background: rgba(255, 255, 255, 0.85);
    border-color: rgba(42, 122, 72, 0.35);
    color: #1f6a3d;
}

.btn-followup-undo-complete:hover[b-l8gqevrm0i] {
    background: rgba(42, 122, 72, 0.10);
    border-color: rgba(42, 122, 72, 0.50);
}

@media (max-width: 768px) {
    .previous-followups-banner[b-l8gqevrm0i] {
        margin: 0.65rem 0.75rem 0.55rem;
    }

    .previous-followups-header[b-l8gqevrm0i] {
        padding: 0.55rem 0.7rem;
    }

    .previous-followups-body[b-l8gqevrm0i] {
        padding: 0.7rem;
    }

    .previous-followups-heading[b-l8gqevrm0i] {
        font-size: 0.88rem;
    }

    .previous-followups-progress-row[b-l8gqevrm0i] {
        grid-template-columns: 1fr;
        gap: 0.25rem;
    }

    .previous-followups-footer-row[b-l8gqevrm0i] {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.55rem;
    }

    .previous-followups-history-row[b-l8gqevrm0i] {
        gap: 0.35rem;
    }

    .previous-followups-history-pill[b-l8gqevrm0i] {
        padding: 0.28rem 0.55rem;
        font-size: 0.74rem;
    }

    .previous-followups-actions[b-l8gqevrm0i] {
        justify-content: flex-start;
        margin-left: 0;
    }
}

.previous-followups-progress-validation[b-l8gqevrm0i] {
    margin: -0.1rem 0 0.1rem 82px;
    color: #b42318;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.25;
}



.previous-followups-scroll[b-l8gqevrm0i] {
    max-height: min(430px, calc(100vh - 340px));
    overflow-y: auto;
    padding-right: .35rem;
}

@media (max-width: 768px) {
    .previous-followups-scroll[b-l8gqevrm0i] {
        max-height: 320px;
    }
}
/* /Components/Retro/WelcomeBackCard.razor.rz.scp.css */
.welcome-back-card[b-qbsxcbfdpz] {
    background: #f8faff;
    border: 1px solid #dbe5f2;
    border-radius: 12px;
    padding: 0.9rem;
    margin-top: 0;
    font-size: 0.88rem;
    max-height: 620px;
    overflow-y: auto;
}

.welcome-back-header[b-qbsxcbfdpz] {
    margin-bottom: 0.85rem;
}

.welcome-back-title[b-qbsxcbfdpz] {
    font-size: 0.95rem;
    font-weight: 800;
    color: var(--brand-navy);
    line-height: 1.35;
}

.welcome-back-subtitle[b-qbsxcbfdpz] {
    margin-top: 0.25rem;
    color: #667;
    font-size: 0.76rem;
    line-height: 1.35;
}

.welcome-back-section[b-qbsxcbfdpz] {
    background: #fff;
    border: 1px solid #dfe7f2;
    border-radius: 10px;
    padding: 0.75rem;
}

.welcome-back-section-header[b-qbsxcbfdpz] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.65rem;
}

.welcome-back-section-title[b-qbsxcbfdpz] {
    font-size: 0.72rem;
    font-weight: 800;
    color: #4f5e70;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.welcome-back-section-hint[b-qbsxcbfdpz] {
    margin-top: 0.2rem;
    color: #7b8796;
    font-size: 0.72rem;
    line-height: 1.3;
}

.welcome-back-count[b-qbsxcbfdpz] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.35rem;
    height: 1.35rem;
    padding: 0 0.35rem;
    border-radius: 999px;
    background: #eef6ff;
    color: var(--brand-blue);
    font-size: 0.72rem;
    font-weight: 800;
}

.welcome-back-team-list[b-qbsxcbfdpz] {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.welcome-back-team-card[b-qbsxcbfdpz] {
    display: grid;
    gap: 0.32rem;
    min-width: 0;
    padding: 0.6rem 0.65rem;
    border: 1px solid #d8e0ec;
    border-radius: 8px;
    background: #fff;
    box-sizing: border-box;
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

    .welcome-back-team-card:hover[b-qbsxcbfdpz] {
        background: #f8fbff;
        border-color: var(--brand-blue);
        box-shadow: 0 5px 14px rgba(15, 52, 96, 0.1);
        transform: translateY(-1px);
    }

.team-card-top-row[b-qbsxcbfdpz] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    min-width: 0;
}

.team-name[b-qbsxcbfdpz] {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--brand-navy);
    font-size: 0.84rem;
    font-weight: 800;
}

.team-use-button[b-qbsxcbfdpz] {
    flex-shrink: 0;
    min-height: 28px;
    padding: 0.25rem 0.65rem;
    border: 1px solid #b9c8da;
    border-radius: 999px;
    background: #fff;
    color: var(--brand-blue);
    font: inherit;
    font-size: 0.74rem;
    font-weight: 800;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

    .team-use-button:hover[b-qbsxcbfdpz] {
        background: var(--brand-blue);
        border-color: var(--brand-blue);
        color: #fff;
    }

.team-card-bottom-row[b-qbsxcbfdpz] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-width: 0;
}

.team-history-link[b-qbsxcbfdpz] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    width: fit-content;
    max-width: 100%;
    min-width: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #5f7084;
    font: inherit;
    font-size: 0.74rem;
    font-weight: 800;
    text-align: left;
    cursor: pointer;
    white-space: nowrap;
}

    .team-history-link:hover[b-qbsxcbfdpz] {
        color: var(--brand-blue);
        text-decoration: underline;
    }


.team-hide-link[b-qbsxcbfdpz] {
    flex-shrink: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #8a96a8;
    font: inherit;
    font-size: 0.7rem;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
}

    .team-hide-link:hover[b-qbsxcbfdpz] {
        color: #5f7084;
        text-decoration: underline;
    }

.sprint-history-backdrop[b-qbsxcbfdpz] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(9, 18, 33, 0.48);
    z-index: 1000;
}

.sprint-history-modal[b-qbsxcbfdpz] {
    width: min(460px, 100%);
    max-height: min(620px, calc(100vh - 2rem));
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.32);
}

.sprint-history-header[b-qbsxcbfdpz] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.05rem 0.85rem;
    border-bottom: 1px solid #e2e9f3;
    background: linear-gradient(180deg, #f8fbff 0%, #fff 100%);
}

    .sprint-history-header h2[b-qbsxcbfdpz] {
        margin: 0;
        color: var(--brand-navy);
        font-size: 1.05rem;
        font-weight: 850;
        line-height: 1.25;
    }

    .sprint-history-header p[b-qbsxcbfdpz] {
        margin: 0.25rem 0 0;
        color: #7b8796;
        font-size: 0.78rem;
        line-height: 1.35;
    }

.sprint-history-close[b-qbsxcbfdpz] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: 1px solid #d8e0ec;
    border-radius: 999px;
    background: #fff;
    color: #667;
    font-size: 1.25rem;
    line-height: 1;
    cursor: pointer;
}

    .sprint-history-close:hover[b-qbsxcbfdpz] {
        background: #f2f7ff;
        border-color: var(--brand-blue);
        color: var(--brand-navy);
    }

.sprint-history-list[b-qbsxcbfdpz] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.85rem;
    overflow-y: auto;
}

.sprint-history-row[b-qbsxcbfdpz] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    width: 100%;
    min-width: 0;
    padding: 0.65rem 0.7rem;
    border: 1px solid #d8e0ec;
    border-radius: 9px;
    background: #fff;
    color: var(--brand-navy);
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

    .sprint-history-row:hover[b-qbsxcbfdpz] {
        background: #f2f7ff;
        border-color: var(--brand-blue);
        box-shadow: 0 5px 14px rgba(15, 52, 96, 0.1);
        transform: translateY(-1px);
    }

    .sprint-history-row--active[b-qbsxcbfdpz] {
        border-color: #bde3ca;
        background: #f6fff9;
    }

.history-session-icon[b-qbsxcbfdpz] {
    flex-shrink: 0;
    width: 1.35rem;
    text-align: center;
}

.history-session-main[b-qbsxcbfdpz] {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 0.08rem;
    min-width: 0;
}

.history-session-title[b-qbsxcbfdpz] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--brand-navy);
    font-size: 0.84rem;
    font-weight: 800;
}

.history-session-status[b-qbsxcbfdpz] {
    color: #7b8796;
    font-size: 0.7rem;
    font-weight: 800;
}

.sprint-history-row--active .history-session-status[b-qbsxcbfdpz] {
    color: var(--brand-green, #2a7a48);
}

.history-session-date[b-qbsxcbfdpz] {
    flex-shrink: 0;
    color: #7b8796;
    font-size: 0.72rem;
    font-weight: 800;
    white-space: nowrap;
}

.sprint-history-empty[b-qbsxcbfdpz] {
    background: #f7f9fc;
    border: 1px dashed #ccd7e6;
    border-radius: 8px;
    color: #7b8796;
    font-size: 0.78rem;
    line-height: 1.35;
    padding: 0.75rem;
}

@media (max-width: 860px) {
    .welcome-back-card[b-qbsxcbfdpz] {
        max-height: none;
    }
}
/* /Components/Shared/FeedbackModal.razor.rz.scp.css */
.feedback-backdrop[b-jupzzoqle8] {
    position: fixed;
    inset: 0;
    background: rgba(22, 45, 74, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    z-index: 1100;
}

.feedback-modal[b-jupzzoqle8] {
    width: 100%;
    max-width: 480px;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28);
    padding: 1.6rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-height: min(92vh, 820px);
    overflow-y: auto;
}

.feedback-title[b-jupzzoqle8] {
    margin: 0;
    color: var(--brand-navy);
    font-size: 1.35rem;
    font-weight: 700;
}

.feedback-subtitle[b-jupzzoqle8] {
    margin: 0;
    color: #627182;
    line-height: 1.45;
}

.feedback-field[b-jupzzoqle8] {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.feedback-field label[b-jupzzoqle8] {
    color: var(--brand-navy);
    font-size: 0.92rem;
    font-weight: 600;
}

.feedback-optional[b-jupzzoqle8] {
    color: #8090a2;
    font-weight: 500;
}



.feedback-stars[b-jupzzoqle8] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    flex-wrap: wrap;
}

.feedback-star[b-jupzzoqle8] {
    border: none;
    background: transparent;
    color: #c5ccd6;
    cursor: pointer;
    font-size: 1.9rem;
    line-height: 1;
    padding: 0;
    transition: color 0.15s ease, transform 0.12s ease;
}

.feedback-star:hover[b-jupzzoqle8],
.feedback-star.is-selected[b-jupzzoqle8] {
    color: #f39c12;
}

.feedback-star:hover[b-jupzzoqle8] {
    transform: scale(1.08);
}

.feedback-clear-rating[b-jupzzoqle8] {
    margin-left: 0.35rem;
    border: none;
    background: transparent;
    color: #7a8796;
    cursor: pointer;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 700;
    text-decoration: underline;
}

.feedback-clear-rating:hover[b-jupzzoqle8] {
    color: var(--brand-blue);
}

.feedback-input[b-jupzzoqle8],
.feedback-textarea[b-jupzzoqle8] {
    width: 100%;
    box-sizing: border-box;
    border: 1.5px solid #d8e0ea;
    border-radius: 10px;
    padding: 0.75rem 0.85rem;
    font: inherit;
    outline: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.feedback-input:focus[b-jupzzoqle8],
.feedback-textarea:focus[b-jupzzoqle8] {
    border-color: var(--brand-blue);
    box-shadow: 0 0 0 3px rgba(74, 144, 217, 0.12);
}

.feedback-select[b-jupzzoqle8] {
    background: #fff;
}

.feedback-textarea[b-jupzzoqle8] {
    min-height: 140px;
    resize: vertical;
}

.feedback-actions[b-jupzzoqle8] {
    display: flex;
    gap: 0.75rem;
}

.btn-feedback-submit[b-jupzzoqle8],
.btn-feedback-cancel[b-jupzzoqle8] {
    border-radius: 10px;
    padding: 0.8rem 1.1rem;
    font: inherit;
    cursor: pointer;
}

.btn-feedback-submit[b-jupzzoqle8] {
    flex: 1;
    border: none;
    background: linear-gradient(135deg, var(--brand-navy), var(--brand-blue));
    color: #fff;
    font-weight: 700;
}

.btn-feedback-submit:disabled[b-jupzzoqle8] {
    opacity: 0.45;
    cursor: default;
}

.btn-feedback-cancel[b-jupzzoqle8] {
    border: 1.5px solid #d8e0ea;
    background: #fff;
    color: #66707c;
}

.feedback-thankyou[b-jupzzoqle8] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    text-align: center;
    padding: 1.25rem 0.5rem;
}

@media (max-width: 640px) {
    .feedback-actions[b-jupzzoqle8] {
        flex-direction: column;
    }

    .btn-feedback-cancel[b-jupzzoqle8] {
        width: 100%;
    }
}
/* /Components/Shared/Icon.razor.rz.scp.css */
.icon[b-2240phdnmf] {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: -0.15em;
    flex-shrink: 0;
}
/* /Components/Shared/Tooltip.razor.rz.scp.css */
.tooltip-wrap[b-i8hpzvox5h] {
    display: inline-flex;
}

.tooltip-wrap[b-i8hpzvox5h]::before,
.tooltip-wrap[b-i8hpzvox5h]::after {
    position: absolute;
    left: 50%;
    bottom: calc(100% + 7px);
    pointer-events: none;
    opacity: 0;
    transform: translateX(-50%) translateY(4px);
    transition: opacity 0.15s ease, transform 0.15s ease;
    z-index: 9999;
    white-space: nowrap;
}

/* Bubble */
.tooltip-wrap[b-i8hpzvox5h]::before {
    content: attr(data-tip);
    background: var(--brand-navy);
    color: #ffffff;
    font-size: 0.72rem;
    font-weight: 500;
    line-height: 1.3;
    padding: 0.3rem 0.65rem;
    border-radius: 8px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25);
    display: block;
}

/* Arrow */
.tooltip-wrap[b-i8hpzvox5h]::after {
    content: '';
    border: 7px solid transparent;
    border-top-color: var(--brand-navy);
    bottom: calc(100% - 1px);
    transform: translateX(-50%);
}

.tooltip-wrap:hover[b-i8hpzvox5h]::before,
.tooltip-wrap:hover[b-i8hpzvox5h]::after {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.tooltip-wrap:hover[b-i8hpzvox5h]::after {
    transform: translateX(-50%);
}}
/* /Features/Export/Components/DocumentEditorModal.razor.rz.scp.css */
/*
   DocumentEditorModal is a Blazor-rendered modal so RichTextEditor can bind and
   edit HTML as part of the Blazor component lifecycle.
*/

.bnb-document-editor-root[b-clzhyh38v9] {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(15, 23, 42, 0.62);
    box-sizing: border-box;
    backdrop-filter: blur(2px);
}

.bnb-document-editor-modal[b-clzhyh38v9] {
    width: min(1100px, 94vw);
    max-height: min(86vh, 900px);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.36);
}

.bnb-document-editor-header[b-clzhyh38v9] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.85rem 1rem;
    background: var(--brand-navy, #0f3460);
    color: #fff;
    flex-shrink: 0;
}

.bnb-document-editor-heading[b-clzhyh38v9] {
    min-width: 0;
}

.bnb-document-editor-title[b-clzhyh38v9] {
    font-size: 0.98rem;
    font-weight: 800;
    line-height: 1.2;
}

.bnb-document-editor-subtitle[b-clzhyh38v9] {
    margin-top: 0.15rem;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.76rem;
    line-height: 1.25;
}

.bnb-document-editor-actions[b-clzhyh38v9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

.bnb-document-editor-action[b-clzhyh38v9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0.35rem 0.75rem;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.14);
    color: #fff;
    font-size: 0.78rem;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
}

.bnb-document-editor-action:hover[b-clzhyh38v9] {
    background: rgba(255, 255, 255, 0.25);
    border-color: rgba(255, 255, 255, 0.55);
}

.bnb-document-editor-close[b-clzhyh38v9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    min-height: 32px;
    padding: 0.25rem;
    border: none;
    border-radius: 6px;
    background: transparent;
    color: #fff;
    font-size: 1.05rem;
    cursor: pointer;
    line-height: 1;
}

.bnb-document-editor-close:hover[b-clzhyh38v9] {
    background: rgba(255, 255, 255, 0.18);
}

.bnb-document-editor-body[b-clzhyh38v9] {
    flex: 1;
    min-height: 0;
    padding: 1rem;
    overflow: auto;
    background: #f8fafc;
}

@media (max-width: 700px) {
    .bnb-document-editor-root[b-clzhyh38v9] {
        padding: 0.5rem;
    }

    .bnb-document-editor-modal[b-clzhyh38v9] {
        width: 96vw;
        max-height: 90vh;
        border-radius: 10px;
    }

    .bnb-document-editor-header[b-clzhyh38v9] {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.65rem;
    }

    .bnb-document-editor-actions[b-clzhyh38v9] {
        width: 100%;
        justify-content: flex-end;
        flex-wrap: wrap;
    }
}
/* /Features/Export/Components/DocumentViewerModal.razor.rz.scp.css */
/*
   DocumentViewerModal renders its visible markup at document.body level through
   JavaScript so it can escape parent overflow/positioning contexts.

   Styles are injected with that body-level markup by the component script.
   This file intentionally remains small so Blazor still treats the modal as a
   normal component with a matching isolated CSS file.
*/
