/* /Pages/Bracket.razor.rz.scp.css */
/* =============================================
   BRACKET — space-around layout
   R32 sorted by R16 feeder so each adjacent
   pair feeds the same R16 slot. All rounds
   use justify-content: space-around which
   gives perfect alignment with no absolute
   positioning needed.
   ============================================= */

.bk-scroll-wrapper[b-p17i85ysq1] {
    overflow-x: auto;
    overflow-y: auto;
    padding-bottom: 1rem;
}

.bk-root[b-p17i85ysq1] {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    min-width: 950px;
}

/* Round column */
.bk-round[b-p17i85ysq1] {
    flex: 1;
    min-width: 125px;
    display: flex;
    flex-direction: column;
}

.bk-round-label[b-p17i85ysq1] {
    background: linear-gradient(135deg, #162f5a 0%, #1b55a0 100%);
    color: #e2eaf8;
    font-size: 0.63rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    text-align: center;
    padding: 0.4rem 0.3rem;
    white-space: nowrap;
    flex-shrink: 0;
}

.bk-round-label--final[b-p17i85ysq1] { background: linear-gradient(135deg, #7c2d00, #c65800); }
.bk-round-label--third[b-p17i85ysq1] { background: linear-gradient(135deg, #4a3000, #8b6000); margin-top:4px; }

/* Card column — space-around distributes cards evenly */
.bk-col[b-p17i85ysq1] {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    padding: 4px 4px;
}

.bk-col--final[b-p17i85ysq1] {
    justify-content: space-evenly;
}

/* Each slot takes equal vertical space */
.bk-slot[b-p17i85ysq1] {
    flex: 1;
    display: flex;
    align-items: center;
    padding: 3px 2px;
    min-height: 0;
}

/* Trophy */
.bk-trophy-row[b-p17i85ysq1] {
    text-align: center;
    font-size: 1.5rem;
    padding: 6px 0 2px;
    filter: drop-shadow(0 2px 4px rgba(180,130,0,0.3));
    flex-shrink: 0;
}

/* Match card */
.bk-card[b-p17i85ysq1] {
    width: 100%;
    background: #fff;
    border: 1px solid #d0dae8;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 5px rgba(15,23,42,0.06);
    transition: box-shadow 0.15s, border-color 0.15s;
}

    .bk-card:hover[b-p17i85ysq1] {
        box-shadow: 0 4px 10px rgba(15,23,42,0.11);
        border-color: #a8bdd4;
    }

.bk-card--played[b-p17i85ysq1] { border-color: #90b4cc; }

.bk-card--tbd[b-p17i85ysq1] {
    background: #f8fafc;
    border-style: dashed;
    border-color: #c8d5e2;
    box-shadow: none;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.6rem 0;
    font-size: 0.63rem;
    color: #94a3b8;
    font-style: italic;
    min-height: 55px;
}

.bk-card-header[b-p17i85ysq1] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: linear-gradient(135deg, #162f5a 0%, #1b55a0 100%);
    padding: 0.22rem 0.4rem;
    gap: 0.25rem;
}

.bk-game-code[b-p17i85ysq1] {
    font-size: 0.6rem;
    font-weight: 800;
    color: #dde8f5;
    white-space: nowrap;
}

.bk-venue[b-p17i85ysq1] {
    font-size: 0.54rem;
    color: #8baecf;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 65px;
    text-align: right;
}

.bk-team[b-p17i85ysq1] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.26rem 0.38rem;
    min-height: 21px;
    background: #fff;
}

    .bk-team:first-of-type[b-p17i85ysq1] { border-bottom: 1px solid #f0f4f8; }

.bk-team--winner[b-p17i85ysq1] { background: #f0faf4; }
.bk-team--loser[b-p17i85ysq1]  { opacity: 0.42; }

.bk-flag[b-p17i85ysq1] {
    width: 16px;
    height: 11px;
    min-width: 16px;
    object-fit: cover;
    border: 1px solid #d0d8e4;
    border-radius: 2px;
    flex-shrink: 0;
}

.bk-flag-ph[b-p17i85ysq1] {
    width: 16px;
    height: 11px;
    min-width: 16px;
    background: #e8edf4;
    border-radius: 2px;
    flex-shrink: 0;
}

.bk-name[b-p17i85ysq1] {
    font-size: 0.67rem;
    font-weight: 500;
    color: #0f172a;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
    min-width: 0;
}

.bk-team--winner .bk-name[b-p17i85ysq1] { font-weight: 700; color: #14532d; }

.bk-score[b-p17i85ysq1] {
    font-size: 0.7rem;
    font-weight: 700;
    color: #334155;
    margin-left: auto;
    flex-shrink: 0;
    min-width: 12px;
    text-align: center;
}

.bk-score--w[b-p17i85ysq1] { color: #15803d; font-weight: 800; }

.bk-vs[b-p17i85ysq1] {
    background: #f7f9fc;
    border-top: 1px solid #edf2f7;
    border-bottom: 1px solid #edf2f7;
    font-size: 0.55rem;
    font-weight: 700;
    color: #94a3b8;
    text-align: center;
    padding: 1px 0;
    min-height: 1px;
}
/* /Shared/MainLayout.razor.rz.scp.css */
/* ── Base layout ── */
.page[b-ish31uy40u] {
    display: flex;
    flex-direction: row;
    min-height: 100vh;
}

main[b-ish31uy40u] {
    flex: 1;
    min-width: 0;
    overflow-x: auto;
}

/* ── Desktop: sticky left sidebar ── */
.sidebar[b-ish31uy40u] {
    width: auto;
    flex-shrink: 0;
    position: sticky;
    top: 0;
    height: 100vh;
    overflow-y: auto;
    transition: width 0.2s ease;
}

/* ── Mobile ── */
@media (max-width: 640px) {
    /* Stack vertically */
    .page[b-ish31uy40u] {
        flex-direction: column;
    }

    /* Sidebar sits in normal flow at top — NOT fixed */
    /* The nav drawer is fixed separately via CSS */
    .sidebar[b-ish31uy40u] {
        position: relative !important;
        width: 100% !important;
        height: auto !important;
        overflow: visible !important;
    }

    /* Main content flows naturally below the sidebar brand bar */
    main[b-ish31uy40u] {
        flex: 1;
        padding-top: 0;
    }

    article.content[b-ish31uy40u] {
        padding: 0.75rem;
    }
}
/* /Shared/NavMenu.razor.rz.scp.css */
/* Styles moved to site.css */
