:root {
    /* Auctra brand guide tokens, sampled from the supplied logo assets. */
    --brand-night: #050817;
    --brand-navy: #07133f;
    --brand-cyan: #28d7ff;
    --brand-blue: #2f63ff;
    --brand-violet: #7b4dff;
    --brand-magenta: #d83cff;
    --brand-white: #ffffff;
    --brand-cyan-rgb: 40, 215, 255;
    --brand-violet-rgb: 123, 77, 255;
    --brand-magenta-rgb: 216, 60, 255;
    --brand-gradient: linear-gradient(135deg, var(--brand-cyan), var(--brand-blue) 48%, var(--brand-magenta));
    --brand-glow: 0 0 32px rgba(var(--brand-cyan-rgb), .24), 0 0 42px rgba(var(--brand-magenta-rgb), .14);
    --ui-heavy-weight: 850;
    --font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-display: var(--font-sans);
    --ink: #050817;
    --ink-2: #091026;
    --surface: #10172c;
    --surface-2: #17213a;
    --surface-3: #202b46;
    --line: rgba(255, 255, 255, .13);
    --line-strong: rgba(255, 255, 255, .25);
    --text: #f7fafc;
    --muted: #a9b6c5;
    --grass: var(--brand-cyan);
    --grass-rgb: var(--brand-cyan-rgb);
    --lime: #8ee6ff;
    --gold: #bf7cff;
    --gold-rgb: 191, 124, 255;
    --orange: var(--brand-magenta);
    --blue: var(--brand-blue);
    --red: #ff4668;
    --shadow: 0 22px 70px rgba(0, 0, 0, .38);
}

.sport-cricket {
    --arena-bg: url("../images/brand/broadcast-arena-cricket.webp");
    --sport-primary: #28d7ff;
    --sport-accent: #d83cff;
    --sport-third: #55f59b;
    --sport-field-line: rgba(40, 215, 255, .18);
}

.sport-pickleball {
    --arena-bg: url("../images/brand/broadcast-arena-pickleball.webp");
    --sport-primary: #8ce85b;
    --sport-accent: #ffca45;
    --sport-third: #28d7ff;
    --sport-field-line: rgba(140, 232, 91, .2);
}

.sport-volleyball {
    --arena-bg: url("../images/brand/broadcast-arena-volleyball.webp");
    --sport-primary: #57b8ff;
    --sport-accent: #ff6f91;
    --sport-third: #ffe66d;
    --sport-field-line: rgba(87, 184, 255, .2);
}

.sport-badminton {
    --arena-bg: url("../images/brand/broadcast-arena-badminton.webp");
    --sport-primary: #67f2c3;
    --sport-accent: #c084fc;
    --sport-third: #f7ef8a;
    --sport-field-line: rgba(103, 242, 195, .2);
}

.sport-lawn-tennis {
    --arena-bg: url("../images/brand/broadcast-arena-lawn-tennis.webp");
    --sport-primary: #b9f248;
    --sport-accent: #4fb3ff;
    --sport-third: #ffffff;
    --sport-field-line: rgba(185, 242, 72, .2);
}

.sport-kabaddi {
    --arena-bg: url("../images/brand/broadcast-arena-kabaddi.webp");
    --sport-primary: #ff7661;
    --sport-accent: #ffd166;
    --sport-third: #57e8ff;
    --sport-field-line: rgba(255, 118, 97, .22);
}

.sport-football {
    --arena-bg: url("../images/brand/broadcast-arena-football.webp");
    --sport-primary: #45d483;
    --sport-accent: #f5f7fb;
    --sport-third: #28d7ff;
    --sport-field-line: rgba(69, 212, 131, .2);
}

.sport-custom {
    --arena-bg: url("../images/brand/broadcast-arena-custom.webp");
    --sport-primary: #7dd3fc;
    --sport-accent: #f0abfc;
    --sport-third: #fde68a;
    --sport-field-line: rgba(125, 211, 252, .2);
}

.app-body[class*="sport-"],
.public-body[class*="sport-"],
.projector-body[class*="sport-"],
.auction-room[class*="sport-"],
.live-shell[class*="sport-"],
.projector-screen[class*="sport-"],
.whatsapp-squad-graphic[class*="sport-"],
.team-contact-graphic[class*="sport-"] {
    --grass: var(--sport-primary, var(--brand-cyan));
    --gold: var(--sport-accent, var(--brand-magenta));
    --brand-gradient: linear-gradient(135deg, var(--sport-primary, var(--brand-cyan)), var(--sport-third, var(--brand-blue)) 48%, var(--sport-accent, var(--brand-magenta)));
}

*,
*::before,
*::after {
    box-sizing: border-box;
    letter-spacing: 0;
}

html { color-scheme: dark; }

.container {
    width: min(100% - 2rem, 1140px);
    margin-inline: auto;
}

.container-fluid {
    width: 100%;
    margin-inline: auto;
}

.row {
    --grid-gap: 1rem;
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: var(--grid-gap);
}

.g-2 { --grid-gap: .5rem; }
.g-3 { --grid-gap: 1rem; }
.g-4 { --grid-gap: 1.5rem; }

.col-6 { grid-column: span 6; }
.col-12,
.col-md-3,
.col-md-4,
.col-md-6,
.col-lg-5,
.col-lg-7,
.col-xl-4,
.col-xl-5,
.col-xl-7,
.col-xl-8 { grid-column: 1 / -1; }

.d-none,
.auction-modal.d-none {
    display: none !important;
}

[data-entity-card][hidden],
[data-entity-row][hidden] {
    display: none !important;
}

.d-flex { display: flex !important; }
.d-inline-flex { display: inline-flex !important; }
.flex-wrap { flex-wrap: wrap !important; }
.align-items-center { align-items: center !important; }
.justify-content-between { justify-content: space-between !important; }
.justify-content-end { justify-content: flex-end !important; }
.gap-2 { gap: .5rem !important; }
.w-100 { width: 100% !important; }
.m-0 { margin: 0 !important; }
.mt-2 { margin-top: .5rem !important; }
.mt-3 { margin-top: 1rem !important; }
.mt-4 { margin-top: 1.5rem !important; }
.mb-0 { margin-bottom: 0 !important; }
.mb-1 { margin-bottom: .25rem !important; }
.mb-2 { margin-bottom: .5rem !important; }
.mb-3 { margin-bottom: 1rem !important; }
.mb-4 { margin-bottom: 1.5rem !important; }
.me-1 { margin-right: .25rem !important; }
.me-2 { margin-right: .5rem !important; }
.me-3 { margin-right: 1rem !important; }
.me-auto { margin-right: auto !important; }
.px-3 { padding-left: 1rem !important; padding-right: 1rem !important; }
.py-4 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
.pt-3 { padding-top: 1rem !important; }
.text-center { text-align: center !important; }
.text-end { text-align: right !important; }
.small { font-size: .875rem !important; }
.border-0 { border: 0 !important; }
.shadow-sm { box-shadow: 0 8px 22px rgba(0, 0, 0, .22) !important; }
.flex-fill { flex: 1 1 auto !important; }

.h2 { font-size: clamp(1.7rem, 1.34rem + 1.4vw, 2.35rem); }
.h4 { font-size: clamp(1.25rem, 1.08rem + .6vw, 1.55rem); }
.h5 { font-size: 1.2rem; }
.h6 { font-size: 1rem; }

@media (min-width: 768px) {
    .col-md-3 { grid-column: span 3; }
    .col-md-4 { grid-column: span 4; }
    .col-md-6 { grid-column: span 6; }
}

@media (min-width: 992px) {
    .px-lg-4 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
    .col-lg-5 { grid-column: span 5; }
    .col-lg-7 { grid-column: span 7; }
}

@media (min-width: 1200px) {
    .col-xl-4 { grid-column: span 4; }
    .col-xl-5 { grid-column: span 5; }
    .col-xl-7 { grid-column: span 7; }
    .col-xl-8 { grid-column: span 8; }
}

body {
    margin: 0;
    color: var(--text);
    background: var(--ink);
    font-family: var(--font-sans);
    font-synthesis: none;
    text-rendering: geometricPrecision;
}

button,
input,
select,
textarea {
    font: inherit;
}

body.modal-open {
    overflow: hidden;
}

.app-body,
.public-body {
    min-height: 100vh;
    background:
        linear-gradient(115deg, rgba(var(--grass-rgb), .11) 0 12%, transparent 12% 100%),
        linear-gradient(295deg, rgba(var(--brand-violet-rgb), .16) 0 11%, transparent 11% 100%),
        repeating-linear-gradient(90deg, rgba(255,255,255,.025) 0 1px, transparent 1px 84px),
        repeating-linear-gradient(0deg, rgba(255,255,255,.018) 0 1px, transparent 1px 84px),
        linear-gradient(180deg, var(--brand-night), var(--ink-2) 46%, #040611);
}

.app-body[class*="sport-"],
.public-body[class*="sport-"] {
    background:
        linear-gradient(115deg, color-mix(in srgb, var(--sport-primary, var(--brand-cyan)) 14%, transparent) 0 12%, transparent 12% 100%),
        linear-gradient(295deg, color-mix(in srgb, var(--sport-accent, var(--brand-magenta)) 15%, transparent) 0 11%, transparent 11% 100%),
        repeating-linear-gradient(90deg, rgba(255,255,255,.025) 0 1px, transparent 1px 84px),
        repeating-linear-gradient(0deg, rgba(255,255,255,.018) 0 1px, transparent 1px 84px),
        linear-gradient(180deg, var(--brand-night), var(--ink-2) 46%, #040611);
}

.app-body::before,
.public-body::before,
.projector-body::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, transparent 0 48%, rgba(255,255,255,.045) 48% 52%, transparent 52% 100%),
        linear-gradient(180deg, transparent 0 49%, rgba(255,255,255,.035) 49% 51%, transparent 51% 100%);
    mask-image: linear-gradient(180deg, rgba(0,0,0,.82), transparent 72%);
}

.app-main { position: relative; z-index: 1; }

.app-body.auction-room-page::before,
.public-body.public-live-page::before,
.projector-body::before {
    content: none;
    display: none;
}

.app-nav {
    background:
        linear-gradient(90deg, rgba(var(--brand-cyan-rgb), .08), rgba(var(--brand-magenta-rgb), .07)),
        rgba(5, 8, 23, .9);
    border-bottom: 1px solid rgba(var(--brand-cyan-rgb), .18);
    backdrop-filter: blur(18px);
}

.sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020;
}

.navbar .container,
.navbar .container-fluid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-height: 72px;
}

.navbar-collapse {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    gap: 1rem;
}

.navbar-nav {
    display: flex;
    align-items: center;
    gap: .25rem;
    padding-left: 0;
    margin: 0;
    list-style: none;
}

.nav-item { display: inline-flex; }

.nav-link {
    color: inherit;
    border: 0;
    font: inherit;
    text-decoration: none;
    cursor: pointer;
}

.navbar-toggler {
    display: none;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: rgba(255,255,255,.06);
}

.navbar-toggler-icon {
    width: 20px;
    height: 14px;
    display: block;
    border-top: 2px solid var(--text);
    border-bottom: 2px solid var(--text);
    position: relative;
}

.navbar-toggler-icon::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 5px;
    border-top: 2px solid var(--text);
}

.navbar-brand {
    display: inline-flex;
    align-items: center;
    color: inherit;
    text-decoration: none;
}

.brand-lockup {
    display: inline-flex;
    align-items: center;
    gap: .7rem;
    min-width: 0;
    color: var(--text);
    text-decoration: none;
}

.brand-lockup strong {
    display: block;
    font-size: 1.05rem;
    font-weight: 950;
    line-height: 1;
    text-transform: uppercase;
}

.brand-lockup small {
    display: block;
    color: var(--muted);
    font-size: .64rem;
    font-weight: 800;
    line-height: 1.1;
    text-transform: uppercase;
}

.brand-logo {
    display: inline-flex;
    align-items: center;
    max-width: min(250px, 54vw);
}

.brand-logo-wordmark {
    width: auto;
    height: 52px;
    max-width: 100%;
    display: block;
    object-fit: contain;
    filter: drop-shadow(0 0 18px rgba(var(--brand-cyan-rgb), .22)) drop-shadow(0 0 20px rgba(var(--brand-magenta-rgb), .12));
}

.brand-context small {
    color: var(--brand-cyan);
    font-size: .72rem;
    font-weight: 950;
    text-transform: uppercase;
}

.navbar-nav .nav-link {
    color: #dce5ef;
    font-weight: 800;
    border-radius: 8px;
    padding-inline: .9rem;
}

.navbar-nav .nav-link:hover {
    color: var(--grass);
    background: rgba(var(--grass-rgb), .08);
}

@media (max-width: 991px) {
    .navbar .container,
    .navbar .container-fluid {
        flex-wrap: wrap;
        align-items: center;
    }

    .navbar-toggler { display: inline-flex; }

    .navbar-collapse {
        display: none;
        flex-basis: 100%;
        width: 100%;
        padding: .75rem 0 1rem;
    }

    .navbar-collapse.show {
        display: grid;
        gap: .75rem;
    }

    .navbar-nav {
        align-items: stretch;
        flex-direction: column;
    }
}

.user-chip {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: var(--text);
    background: rgba(255,255,255,.07);
    border: 1px solid var(--line);
    border-radius: 999px;
    padding: .38rem .7rem;
    font-size: .84rem;
}

.user-chip b {
    color: var(--grass);
    font-size: .72rem;
    text-transform: uppercase;
}

.fa-solid,
.fa-regular,
.fa-brands {
    display: inline-grid;
    width: 1em;
    min-width: 1em;
    height: 1em;
    place-items: center;
    line-height: 1;
    font-style: normal;
    vertical-align: -.12em;
}

.fa-solid::before,
.fa-regular::before,
.fa-brands::before {
    content: "";
    width: 1em;
    height: 1em;
    display: block;
    border-radius: .18em;
    background: currentColor;
    opacity: .9;
}

.fa-icon-ready::before {
    content: none !important;
    display: none !important;
}

.fa-icon-ready svg {
    width: 1em;
    height: 1em;
    display: block;
    overflow: visible;
}

.fa-icon-ready svg * {
    vector-effect: non-scaling-stroke;
}

.fa-icon-ready svg.fa-svg-line * {
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.fa-icon-ready svg.fa-svg-filled * {
    fill: currentColor;
    stroke: none;
    stroke-width: 0;
    vector-effect: none;
}

.sport-role-icon {
    width: 1.75rem;
    height: 1.75rem;
    color: var(--sport-primary, var(--brand-cyan));
    background: color-mix(in srgb, var(--sport-primary, var(--brand-cyan)) 16%, rgba(255,255,255,.08));
    border: 1px solid color-mix(in srgb, var(--sport-primary, var(--brand-cyan)) 36%, rgba(255,255,255,.12));
    border-radius: 8px;
}

.sport-admin-name {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    min-width: 0;
}

.sport-admin-name i {
    color: var(--grass);
}

.sport-config-editor {
    min-height: 520px;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size: .82rem;
    line-height: 1.5;
    resize: vertical;
}

.sport-field-check-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.sport-category-suggestions {
    border-left: 3px solid var(--sport-primary, var(--brand-cyan));
}

.suggestion-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-top: .5rem;
}
.fw-black { font-weight: 950; }
.eyebrow {
    color: var(--grass);
    text-transform: uppercase;
    font-size: .74rem;
    font-weight: 950;
    margin-bottom: .55rem;
}

.page-head {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 1rem;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}

.page-head h1,
.section-title {
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
    line-height: .95;
    max-width: min(100%, 22ch);
    overflow-wrap: anywhere;
}

.page-head h1 { font-size: clamp(1.9rem, 1.35rem + 2vw, 2.5rem); }

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    border: 1px solid transparent;
    border-radius: 8px;
    font-weight: 760;
    line-height: 1.2;
    padding: .6rem .9rem;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease;
}

.btn:hover { transform: translateY(-2px); }

.btn-sm {
    padding: .38rem .64rem;
    font-size: .82rem;
}

.btn-lg {
    padding: .78rem 1rem;
    font-size: 1rem;
}

.btn-neon {
    background: linear-gradient(
        135deg,
        var(--brand-primary, var(--brand-cyan)),
        color-mix(in srgb, var(--brand-primary, var(--brand-cyan)) 54%, var(--brand-accent, var(--brand-magenta))) 48%,
        var(--brand-accent, var(--brand-magenta))
    );
    border: 0;
    color: var(--brand-white);
    box-shadow: 0 12px 32px rgba(var(--grass-rgb), .25);
    text-shadow: 0 1px 10px rgba(0, 0, 0, .34);
}

.btn-neon:hover,
.btn-neon:focus,
.btn-neon:active,
.btn-neon:disabled {
    color: var(--brand-white);
    box-shadow: 0 16px 42px rgba(var(--brand-cyan-rgb), .24), 0 12px 38px rgba(var(--brand-magenta-rgb), .2);
}

.btn-outline-light,
.btn-glass {
    border-color: var(--line-strong);
    background: rgba(255,255,255,.06);
    color: var(--text);
}

.btn-outline-light:hover,
.btn-glass:hover {
    border-color: var(--grass);
    background: rgba(var(--grass-rgb), .12);
    color: var(--text);
}

.btn-success {
    background: linear-gradient(135deg, #18c872, var(--brand-cyan));
    border-color: transparent;
    color: #06110a;
}

.btn-warning {
    background: linear-gradient(135deg, var(--brand-violet), var(--brand-magenta));
    border-color: transparent;
    color: #151006;
}

.control-card,
.mini-card,
.auction-card,
.auth-card,
.scoreboard-panel {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.02)),
        var(--surface);
    border: 1px solid var(--line);
    border-radius: 8px;
    box-shadow: var(--shadow);
    animation: card-enter .45s ease both;
}

.control-card::before,
.auction-card::before,
.scoreboard-panel::before,
.auth-card::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(125deg, rgba(var(--grass-rgb), .16), transparent 28%),
        linear-gradient(305deg, rgba(var(--gold-rgb), .12), transparent 26%);
    opacity: .85;
}

.control-card > *,
.mini-card > *,
.auction-card > *,
.auth-card > *,
.scoreboard-panel > * {
    position: relative;
    z-index: 1;
}

.control-card,
.mini-card,
.auction-card,
.auth-card,
.scoreboard-panel { padding: 1rem; }

.auction-card,
.mini-card,
.control-card {
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.auction-card:hover,
.mini-card:hover,
.control-card:hover {
    transform: translateY(-3px);
    border-color: rgba(var(--grass-rgb), .42);
    box-shadow: 0 26px 80px rgba(0,0,0,.46);
}

.mini-card {
    min-height: 112px;
    display: grid;
    align-content: space-between;
}

.mini-card span {
    color: var(--muted);
    font-size: .78rem;
    font-weight: 900;
    text-transform: uppercase;
}

.mini-card h2 {
    color: var(--text);
    font-weight: var(--ui-heavy-weight);
}

.avatar-lg,
.avatar-md,
.avatar-sm {
    object-fit: cover;
    background: #0d131b;
    border: 1px solid var(--line);
}

.avatar-lg { width: 68px; height: 68px; border-radius: 8px; }
.avatar-md { width: 46px; height: 46px; border-radius: 8px; }
.avatar-sm { width: 34px; height: 34px; border-radius: 7px; }

.form-label {
    display: block;
    color: #dde7f1;
    font-size: .78rem;
    font-weight: 900;
    text-transform: uppercase;
    margin-bottom: .36rem;
}

.form-control,
.form-select {
    display: block;
    width: 100%;
    min-height: 44px;
    color: var(--text);
    background: rgba(4, 8, 13, .7);
    border: 1px solid var(--line-strong);
    border-radius: 8px;
    padding: .68rem .82rem;
}

.form-control-lg {
    min-height: 52px;
    padding: .82rem 1rem;
    font-size: 1rem;
}

.input-group {
    display: flex;
    align-items: stretch;
    width: 100%;
}

.input-group > .form-control,
.input-group > .form-select {
    flex: 1 1 auto;
    min-width: 0;
}

.input-group > .btn {
    flex: 0 0 auto;
}

.form-control::placeholder {
    color: #b7c4d2;
    opacity: 1;
}

.form-control:focus,
.form-select:focus {
    color: var(--text);
    background: rgba(4, 8, 13, .84);
    border-color: var(--grass);
    box-shadow: 0 0 0 .22rem rgba(var(--grass-rgb), .16);
}

.form-control:read-only,
.form-control:disabled {
    color: #d4dde7;
    background: rgba(255,255,255,.08);
}

.form-control[type="file"] {
    min-height: 44px;
    padding: .46rem;
    line-height: 1.2;
}

.form-control::file-selector-button {
    color: #07110c;
    background: var(--grass);
    border: 0;
    font-weight: 900;
    min-height: 34px;
    margin: -.46rem .75rem -.46rem -.46rem;
    padding: .65rem .9rem;
    border-radius: 8px 0 0 8px;
}

.form-control-color { padding: .35rem; }

.nav {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin: 0;
    list-style: none;
}

.nav-pills .nav-link {
    color: #d7e2ec;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: rgba(255,255,255,.045);
    padding: .72rem 1.08rem;
    font-weight: 900;
    text-transform: uppercase;
}

.nav-pills .nav-link.active {
    background: var(--brand-gradient);
    border: 0;
    color: #fff;
}

.tab-pane { display: none; }
.tab-pane.show,
.tab-pane.active { display: block; }

.alert {
    color: var(--text);
    background: rgba(255,255,255,.08);
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: .85rem 1rem;
}

.alert-success {
    background: rgba(40, 239, 159, .14);
    color: #dcfff2;
}

.alert-danger {
    background: rgba(255, 70, 104, .14);
    color: #ffe5eb;
}

.auction-toast-stack {
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 4000;
    display: grid;
    gap: .65rem;
    width: min(380px, calc(100vw - 2rem));
    pointer-events: none;
}

.auction-error-toast {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: .7rem;
    padding: .85rem 1rem;
    border: 1px solid rgba(255, 70, 104, .5);
    border-radius: 8px;
    color: #fff;
    background: linear-gradient(135deg, rgba(45, 12, 24, .98), rgba(20, 18, 37, .96));
    box-shadow: 0 18px 50px rgba(0,0,0,.34);
    animation: auction-toast-in .18s ease-out both;
}

.auction-error-toast i {
    color: #ffdf3c;
}

.auction-error-toast span {
    min-width: 0;
    font-weight: 900;
}

.app-toast {
    border-color: rgba(255,255,255,.18);
}

.app-toast-success {
    border-color: rgba(40, 239, 159, .48);
    background: linear-gradient(135deg, rgba(6, 42, 33, .98), rgba(17, 25, 43, .96));
}

.app-toast-success i {
    color: #55f59b;
}

.app-toast-danger {
    border-color: rgba(255, 70, 104, .5);
    background: linear-gradient(135deg, rgba(45, 12, 24, .98), rgba(20, 18, 37, .96));
}

.app-toast-danger i {
    color: #ffdf3c;
}

.auction-error-toast.is-leaving {
    animation: auction-toast-out .28s ease-in both;
}

@keyframes auction-toast-in {
    from { opacity: 0; transform: translateY(-10px) scale(.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes auction-toast-out {
    to { opacity: 0; transform: translateY(-8px) scale(.98); }
}

.text-secondary { color: var(--muted) !important; }

.table-shell {
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: rgba(3, 6, 10, .52);
}

.table {
    margin-bottom: 0;
    --bs-table-bg: rgba(10, 15, 22, .82);
    --bs-table-border-color: rgba(255,255,255,.1);
}

.table > :not(caption) > * > * {
    color: var(--text);
    padding: .85rem;
}

.table thead th {
    color: #dce7ef;
    font-size: .74rem;
    font-weight: 950;
    text-transform: uppercase;
}

.status-pill {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    border-radius: 999px;
    padding: .25rem .62rem;
    font-size: .72rem;
    font-weight: 950;
    text-transform: uppercase;
    background: rgba(255,255,255,.08);
    color: var(--muted);
}

.status-pill::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
}

.status-active,
.status-sold { color: var(--grass); background: rgba(var(--grass-rgb), .13); }
.status-completed { color: var(--brand-cyan); background: rgba(var(--brand-cyan-rgb), .14); }
.status-available { color: var(--gold); background: rgba(var(--gold-rgb), .13); }
.status-unsold,
.status-disabled { color: var(--red); background: rgba(255,70,104,.13); }

.hero-band {
    position: relative;
    min-height: calc(100vh - 72px);
    display: flex;
    align-items: center;
    padding: 4rem 0;
    overflow: hidden;
}

.brand-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(6,8,11,.94) 0 38%, rgba(6,8,11,.58) 58%, rgba(6,8,11,.86)),
        var(--hero-bg, var(--arena-bg)) center / cover no-repeat;
    opacity: .74;
}

.brand-hero > .container {
    position: relative;
    z-index: 1;
}

.hero-brand-logo {
    width: min(320px, 72vw);
    height: auto;
    display: block;
    margin-bottom: 1.1rem;
    border-radius: 8px;
    opacity: .98;
}

.hero-stage {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
    gap: 2rem;
    align-items: center;
}

.hero-title {
    font-size: 5.4rem;
    line-height: .86;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.hero-copy {
    max-width: 720px;
    color: #d7e1ea;
    font-size: 1.2rem;
}

.arena-board {
    position: relative;
    min-height: 520px;
    display: grid;
    place-items: center;
    background:
        linear-gradient(160deg, rgba(var(--grass-rgb), .22), transparent 34%),
        linear-gradient(25deg, rgba(var(--brand-violet-rgb), .18), transparent 34%),
        #101722;
    border: 1px solid var(--line);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: var(--shadow);
}

.arena-board::before {
    content: "";
    position: absolute;
    inset: 34px;
    border: 2px solid rgba(255,255,255,.16);
    border-radius: 8px;
}

.arena-board::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, transparent 0 48%, rgba(255,255,255,.14) 48% 52%, transparent 52% 100%),
        repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 64px);
    opacity: .9;
}

.hero-player-card {
    position: relative;
    z-index: 1;
    width: min(86%, 360px);
    min-height: 455px;
    padding: 1rem;
    display: grid;
    align-content: space-between;
    background:
        var(--brand-gradient),
        #141a21;
    border: 2px solid rgba(255,255,255,.72);
    border-radius: 8px;
    color: #08100c;
    box-shadow: 0 28px 90px rgba(0,0,0,.48);
    transform: perspective(900px) rotateY(-7deg) rotateX(4deg);
    animation: card-float 4.5s ease-in-out infinite;
}

.hero-card-label {
    font-size: 1.05rem;
    font-weight: var(--ui-heavy-weight);
    line-height: 1;
    text-transform: uppercase;
}

.hero-player-card .role {
    font-size: .9rem;
    font-weight: 950;
    text-transform: uppercase;
}

.hero-card-photo {
    height: 190px;
    display: grid;
    place-items: end center;
    margin: .5rem 0;
}

.hero-card-photo img {
    width: 74%;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 8px;
    border: 2px solid rgba(7, 16, 12, .18);
    background: rgba(255,255,255,.22);
}

.hero-player-card h2 {
    font-size: 1.6rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
    text-align: center;
}

.hero-profile-note {
    padding: .7rem;
    color: #07110c;
    background: rgba(255,255,255,.24);
    border: 1px solid rgba(7,16,12,.14);
    border-radius: 8px;
    font-size: .86rem;
    font-weight: var(--ui-heavy-weight);
    text-align: center;
    text-transform: uppercase;
}

.score-ticker {
    position: absolute;
    z-index: 2;
    left: 1rem;
    right: 1rem;
    bottom: 1rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: .75rem;
}

.score-ticker div {
    background: rgba(6, 8, 11, .82);
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: .75rem;
}

.score-ticker span {
    color: var(--muted);
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
}

.score-ticker strong {
    display: block;
    color: var(--text);
    font-size: 1.12rem;
    font-weight: var(--ui-heavy-weight);
}

.scoreboard-panel { padding: 2rem; }
.scoreboard-top { color: var(--muted); text-transform: uppercase; font-weight: 950; }
.scoreboard-price { color: var(--gold); font-size: 3.8rem; line-height: 1; font-weight: var(--ui-heavy-weight); }
.progress { height: 8px; background: rgba(255,255,255,.1); }
.progress-bar { background: var(--brand-gradient); }
.mini-grid { display: grid; grid-template-columns: 1fr auto; gap: .65rem; color: var(--muted); }
.mini-grid b { color: var(--text); }

.card-meta { display: grid; gap: .65rem; color: var(--muted); }
.card-meta span { display: flex; gap: .55rem; align-items: center; }
.min-w-0 { min-width: 0; }

.match-card-top {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: .9rem;
    align-items: center;
}

.match-card-top h2 {
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.match-card-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: .55rem;
}

.match-card-stats div,
.match-card-stats a {
    background: rgba(4,8,13,.42);
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 8px;
    padding: .65rem;
    color: inherit;
    text-decoration: none;
    min-width: 0;
}

.match-card-stats span {
    display: block;
    color: var(--muted);
    font-size: .66rem;
    font-weight: 950;
    text-transform: uppercase;
}

.match-card-stats strong {
    display: block;
    color: var(--text);
    font-size: .94rem;
    font-weight: var(--ui-heavy-weight);
}

.match-card-stats a {
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

.match-card-stats a:hover {
    border-color: rgba(85,243,160,.42);
    background: rgba(85,243,160,.1);
    transform: translateY(-1px);
}
.empty-state {
    border: 1px dashed var(--line-strong);
    border-radius: 8px;
    padding: 2rem;
    color: var(--muted);
    background: rgba(255,255,255,.055);
}

.auth-shell {
    min-height: calc(100vh - 72px);
    display: grid;
    place-items: center;
    padding: 2rem;
}

.auth-card {
    width: min(100%, 470px);
    padding: 1.25rem;
}

.auction-grid,
.public-grid {
    display: grid;
    gap: clamp(.85rem, 2vw, 1.25rem);
    align-items: start;
}

.auction-grid {
    grid-template-columns: minmax(250px, 300px) minmax(0, 1fr) minmax(260px, 320px);
}

.public-grid {
    grid-template-columns: minmax(0, 1fr) minmax(240px, 300px) minmax(240px, 320px);
}

.live-shell .current-panel {
    min-height: clamp(430px, 62vh, 640px);
}

.live-shell .control-card:hover,
.projector-screen .control-card:hover {
    transform: none;
}

.current-panel {
    min-height: 520px;
    background:
        linear-gradient(140deg, rgba(var(--grass-rgb), .12), transparent 35%),
        linear-gradient(320deg, rgba(var(--gold-rgb), .12), transparent 34%),
        #0e141d;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 1rem;
    box-shadow: var(--shadow);
    overflow: hidden;
}

.player-focus,
.projector-player {
    min-height: 360px;
    display: grid;
    grid-template-columns: minmax(290px, 40%) minmax(0, 1fr);
    gap: 1.2rem;
    align-items: center;
}

.player-card-frame {
    position: relative;
    min-height: 380px;
    padding: .9rem;
    display: grid;
    align-content: space-between;
    gap: .85rem;
    overflow: hidden;
    background:
        linear-gradient(135deg, var(--card-accent, var(--gold)), var(--card-accent-2, var(--grass))),
        var(--surface);
    border: 2px solid rgba(255,255,255,.6);
    border-radius: 8px;
    color: #07110c;
    box-shadow: 0 20px 60px rgba(0,0,0,.32);
}

.player-card-frame::before {
    content: "";
    position: absolute;
    inset: -24% -20% auto auto;
    width: 64%;
    aspect-ratio: 1;
    background:
        repeating-linear-gradient(45deg, rgba(255,255,255,.2) 0 2px, transparent 2px 16px),
        rgba(255,255,255,.18);
    clip-path: polygon(15% 0, 100% 18%, 78% 100%, 0 82%);
    opacity: .45;
}

.player-card-frame > * {
    position: relative;
    z-index: 1;
}

.player-card-profile img,
.player-card-frame img {
    width: min(96%, 315px);
    aspect-ratio: 1;
    object-fit: cover;
    justify-self: center;
    border-radius: 50%;
    background: rgba(255,255,255,.2);
    border: 4px solid rgba(255,255,255,.56);
    box-shadow: 0 18px 34px rgba(7,17,12,.22);
}

.player-card-info {
    display: grid;
    gap: .6rem;
}

.player-card-frame h2 {
    font-size: clamp(1.28rem, 2.2vw, 1.65rem);
    font-weight: var(--ui-heavy-weight);
    text-align: center;
    text-transform: uppercase;
    line-height: 1;
}

.player-card-detail-list > span {
    min-width: 0;
    border: 1px solid rgba(7,17,12,.12);
    border-radius: 8px;
    background: rgba(255,255,255,.2);
}

.player-card-detail-list small {
    display: block;
    font-size: .62rem;
    font-weight: 950;
    color: rgba(7,17,12,.68);
    text-transform: uppercase;
}

.player-card-detail-list {
    display: grid;
    gap: .42rem;
}

.player-card-detail-list > span {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    grid-template-areas:
        "icon label"
        "icon value";
    column-gap: .55rem;
    align-items: center;
    padding: .5rem .62rem;
}

.skill-icon {
    grid-area: icon;
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background:
        radial-gradient(circle at 76% 18%, rgba(87,184,255,.24), transparent 34%),
        linear-gradient(135deg, rgba(7,17,12,.16), rgba(7,17,12,.06));
    border: 1px solid rgba(7,17,12,.1);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
    font-size: 1rem;
    position: relative;
    overflow: hidden;
}

.skill-icon *,
.skill-icon::before,
.skill-icon::after {
    box-sizing: border-box;
}

.cricket-icon-bat::before,
.cricket-icon-bat::after {
    content: "";
    position: absolute;
}

.cricket-icon-bat::before {
    width: 10px;
    height: 22px;
    border-radius: 7px 7px 4px 4px;
    top: 7px;
    left: 13px;
    background: linear-gradient(160deg, #07110c 0%, #173023 100%);
    clip-path: polygon(18% 0, 100% 0, 88% 90%, 54% 100%, 0 90%, 8% 15%);
    box-shadow: inset -2px 0 0 rgba(255,255,255,.18);
    transform: rotate(38deg);
}

.cricket-icon-bat::after {
    width: 4px;
    height: 14px;
    border-radius: 99px;
    top: 3px;
    left: 21px;
    background: #07110c;
    box-shadow:
        0 -3px 0 -1px rgba(87,184,255,.8),
        0 4px 0 -2px rgba(155,123,255,.72);
    transform: rotate(38deg);
}

.cricket-icon-bat.handle-left::before {
    left: 9px;
    transform: rotate(-38deg);
}

.cricket-icon-bat.handle-left::after {
    left: 7px;
    transform: rotate(-38deg);
}

.cricket-icon-ball::before {
    content: "";
    position: absolute;
    width: 18px;
    height: 18px;
    top: 7px;
    left: 7px;
    border-radius: 50%;
    background:
        radial-gradient(circle at 32% 26%, rgba(255,255,255,.36), transparent 28%),
        linear-gradient(135deg, #07110c, #152a20);
    box-shadow: inset -3px -3px 0 rgba(0,0,0,.12);
}

.cricket-icon-ball::after {
    content: "";
    position: absolute;
    width: 9px;
    height: 20px;
    top: 6px;
    left: 12px;
    border-radius: 99px;
    border-left: 2px solid rgba(255,255,255,.42);
    border-right: 2px solid rgba(255,255,255,.22);
    transform: rotate(-28deg);
}

.cricket-icon-gloves::before,
.cricket-icon-gloves::after {
    content: "";
    position: absolute;
    top: 7px;
    width: 11px;
    height: 18px;
    border-radius: 8px 8px 5px 5px;
    background:
        linear-gradient(90deg, transparent 0 18%, rgba(255,255,255,.2) 18% 28%, transparent 28% 45%, rgba(255,255,255,.16) 45% 55%, transparent 55%),
        linear-gradient(160deg, #07110c, #173023);
    border-bottom: 3px solid rgba(155,123,255,.72);
    box-shadow: inset -1px -1px 0 rgba(255,255,255,.12);
}

.cricket-icon-gloves::before {
    left: 6px;
    transform: rotate(-12deg);
}

.cricket-icon-gloves::after {
    right: 6px;
    transform: rotate(12deg);
}

.cricket-icon-allrounder .allrounder-bat {
    position: absolute;
    width: 8px;
    height: 22px;
    top: 6px;
    left: 9px;
    border-radius: 7px 7px 4px 4px;
    background: linear-gradient(160deg, #07110c, #173023);
    clip-path: polygon(18% 0, 100% 0, 88% 90%, 54% 100%, 0 90%, 8% 15%);
    box-shadow: inset -2px 0 0 rgba(255,255,255,.18);
    transform: rotate(-34deg);
}

.cricket-icon-allrounder .allrounder-bat::after {
    content: "";
    position: absolute;
    width: 3px;
    height: 13px;
    top: -11px;
    left: 3px;
    border-radius: 99px;
    background: #07110c;
    box-shadow: 0 4px 0 -2px rgba(87,184,255,.78);
}

.cricket-icon-allrounder.handle-left .allrounder-bat {
    left: 14px;
    transform: rotate(34deg);
}

.cricket-icon-allrounder .allrounder-ball {
    position: absolute;
    right: 6px;
    bottom: 6px;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background:
        radial-gradient(circle at 35% 26%, rgba(255,255,255,.36), transparent 30%),
        linear-gradient(135deg, #07110c, #152a20);
    box-shadow: 0 0 0 2px rgba(255,255,255,.12);
}

.cricket-icon-allrounder .allrounder-ball::after {
    content: "";
    position: absolute;
    width: 6px;
    height: 14px;
    top: -1px;
    left: 4px;
    border-radius: 99px;
    border-left: 1px solid rgba(255,255,255,.42);
    border-right: 1px solid rgba(255,255,255,.24);
    transform: rotate(-26deg);
}

.cricket-icon-svg::before,
.cricket-icon-svg::after {
    content: none !important;
    display: none !important;
}

.cricket-icon-svg {
    color: #07110c;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.cricket-icon-img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    filter: none;
    mix-blend-mode: multiply;
}

.player-card-frame .cricket-icon-img {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    justify-self: stretch;
    border-radius: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.cricket-icon-svg.is-flipped .cricket-icon-img {
    transform: scaleX(-1);
}

.player-card-detail-list small {
    grid-area: label;
}

.player-card-detail-list b {
    grid-area: value;
    display: block;
    color: #07110c;
    font-size: .9rem;
    line-height: 1.08;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
    overflow-wrap: break-word;
}

.category-chip {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .35rem .7rem;
    border-radius: 999px;
    color: #07110c;
    background: linear-gradient(135deg, var(--card-accent, var(--gold)), var(--card-accent-2, var(--grass)));
    border: 1px solid rgba(255,255,255,.34);
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.bid-main {
    min-width: 0;
}

.bid-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: center;
    margin-bottom: .7rem;
}

.base-price-chip {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    padding: .35rem .7rem;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 999px;
    color: var(--text);
    background: rgba(255,255,255,.07);
    font-size: .82rem;
    font-weight: 950;
    text-transform: uppercase;
}

.base-price-chip i {
    color: var(--gold);
}

.bid-amount {
    color: var(--gold);
    font-size: 4.4rem;
    font-weight: var(--ui-heavy-weight);
    line-height: .92;
    text-shadow: 0 0 28px rgba(var(--gold-rgb), .2);
}

.leading-team {
    color: #edf4fb;
    font-size: 1.25rem;
    font-weight: 950;
    text-transform: uppercase;
}

.bid-rules {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: .55rem;
}

.bid-rules span {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    padding: .38rem .55rem;
    color: #dff4ff;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background: rgba(255,255,255,.06);
    font-size: .78rem;
    font-weight: 900;
    text-transform: uppercase;
}

.bid-rules i { color: var(--gold); }

.bid-pad { display: grid; gap: .75rem; margin-top: 1rem; }
.quick-row { display: flex; gap: .75rem; flex-wrap: wrap; }
.quick-row .btn { flex: 1; min-width: 105px; }
.team-list { display: grid; gap: .7rem; }

.team-row {
    width: 100%;
    color: var(--text);
    text-align: left;
    background: rgba(255,255,255,.055);
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    padding: .75rem;
}

.team-row div:first-child {
    display: flex;
    justify-content: space-between;
    gap: .8rem;
}

.team-row strong { text-transform: uppercase; }
.team-row span { color: var(--muted); }
.team-row b {
    display: block;
    margin-top: .35rem;
}

.team-max-bid {
    display: block;
    color: var(--gold);
    font-size: .76rem;
    font-weight: 950;
    text-transform: uppercase;
    margin-top: .12rem;
}

.team-row:hover {
    border-color: rgba(var(--brand-cyan-rgb), .52);
    background: rgba(var(--brand-cyan-rgb), .1);
}

.meter {
    height: 6px;
    border-radius: 999px;
    background: rgba(255,255,255,.09);
    overflow: hidden;
    margin-top: .65rem;
}

.meter span {
    display: block;
    height: 100%;
    background: var(--brand-gradient);
}

.activity-row,
.metric-row {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: .6rem 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
}

.activity-row span,
.metric-row span { color: var(--muted); }

.activity-button {
    width: 100%;
    color: var(--text);
    text-align: left;
    background: transparent;
    border-left: 0;
    border-right: 0;
    border-top: 0;
}

.activity-button strong {
    display: block;
    color: var(--text);
    font-size: .92rem;
    text-transform: uppercase;
}

.activity-button small {
    display: block;
    color: var(--muted);
}

.activity-button:hover {
    color: var(--text);
    background: rgba(var(--brand-cyan-rgb), .08);
}

.team-button-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
    gap: .55rem;
}

.team-bid-button,
.draw-card {
    color: var(--text);
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 8px;
    padding: .8rem;
    text-align: left;
    font-weight: 950;
    transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

.team-bid-button {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .7rem;
    min-width: 0;
}

.team-bid-button span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.team-bid-button kbd {
    flex: 0 0 auto;
    opacity: 0;
    min-width: 28px;
    text-align: center;
    color: #07110c;
    background: var(--gold);
    border-radius: 6px;
    transition: opacity .16s ease;
}

.team-bid-button:hover kbd,
.team-bid-button.active kbd { opacity: 1; }

.fast-bid-strip {
    padding: .75rem;
    border: 1px solid rgba(var(--gold-rgb), .36);
    border-radius: 8px;
    color: var(--gold);
    background: rgba(var(--gold-rgb), .12);
    font-weight: 950;
    text-transform: uppercase;
}

.team-bid-button:hover,
.team-bid-button.active,
.draw-card:hover {
    transform: translateY(-2px);
    border-color: var(--grass);
    background: rgba(var(--grass-rgb), .13);
}

.team-bid-button:disabled,
.draw-card:disabled {
    opacity: .45;
    cursor: not-allowed;
    transform: none;
}

.category-draw-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: .75rem;
}

.draw-card {
    min-height: 124px;
    display: grid;
    gap: .35rem;
}

.draw-card span { color: var(--muted); font-size: .84rem; text-transform: uppercase; }
.draw-card strong { font-size: 1.2rem; text-transform: uppercase; }
.draw-card small { color: var(--gold); }

.sold-strip {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: .75rem;
}

.sold-card {
    display: flex;
    width: 100%;
    color: var(--text);
    text-align: left;
    gap: .7rem;
    align-items: center;
    background: rgba(255,255,255,.055);
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 8px;
    padding: .65rem;
}

.sold-card:hover {
    border-color: rgba(var(--gold-rgb), .42);
    background: rgba(var(--gold-rgb), .09);
}

.sold-card img {
    width: 48px;
    height: 48px;
    object-fit: cover;
    border-radius: 8px;
}

.sold-card span {
    display: block;
    color: var(--muted);
    font-size: .9rem;
}

.no-current {
    min-height: 340px;
    display: grid;
    place-items: center;
    text-align: center;
    color: var(--muted);
}

.no-current h2 {
    color: var(--text);
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.standby-state {
    align-content: center;
    gap: .7rem;
}

.standby-loader {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .42rem;
    justify-self: center;
    padding: .48rem .62rem;
    border: 1px solid rgba(var(--brand-cyan-rgb), .22);
    border-radius: 999px;
    background: rgba(255,255,255,.055);
}

.standby-loader span {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: var(--brand-cyan);
    box-shadow: 0 0 18px rgba(var(--brand-cyan-rgb), .46);
    animation: standby-pulse 1s ease-in-out infinite;
}

.standby-loader span:nth-child(2) { animation-delay: .14s; }
.standby-loader span:nth-child(3) { animation-delay: .28s; }

@keyframes standby-pulse {
    0%, 100% { transform: translateY(0); opacity: .38; }
    50% { transform: translateY(-4px); opacity: 1; }
}

.auction-timeline-panel {
    max-height: min(78vh, 760px);
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.auction-timeline-scroll {
    min-height: 0;
    overflow-y: auto;
    padding-right: .25rem;
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--grass-rgb), .55) rgba(255,255,255,.08);
}

.locked-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: .75rem;
}

.locked-grid div,
.locked-note {
    display: grid;
    gap: .25rem;
    padding: .85rem;
    background: rgba(255,255,255,.055);
    border: 1px solid var(--line);
    border-radius: 8px;
}

.locked-grid span,
.locked-note span {
    color: var(--muted);
    font-size: .78rem;
    font-weight: 900;
    text-transform: uppercase;
}

.locked-grid strong {
    font-size: 1.08rem;
    font-weight: var(--ui-heavy-weight);
}

.auction-lock-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin: 0 0 1rem;
    padding: 1rem;
    border: 1px solid rgba(var(--brand-cyan-rgb), .28);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .14), rgba(var(--brand-magenta-rgb), .08)),
        rgba(255,255,255,.055);
}

.auction-lock-banner.is-locked {
    border-color: rgba(255,212,90,.34);
    background:
        linear-gradient(135deg, rgba(255,212,90,.14), rgba(255,255,255,.04)),
        rgba(255,255,255,.055);
}

.auction-lock-banner span {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    color: var(--broadcast-gold);
    font-size: .72rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.auction-lock-banner strong {
    display: block;
    margin-top: .15rem;
    color: #fff;
    font-size: 1.2rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.auction-lock-banner p {
    margin: .18rem 0 0;
    color: var(--muted);
    font-weight: 800;
}

.check-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: .65rem;
}

.check-grid.sport-field-check-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.check-grid label {
    color: #e7eff7;
    background: rgba(255,255,255,.055);
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 8px;
    padding: .7rem;
    font-weight: 850;
}

.inline-panel {
    padding: .85rem;
    background: rgba(var(--grass-rgb), .08);
    border: 1px solid rgba(var(--grass-rgb), .18);
    border-radius: 8px;
}

.form-hint-line {
    min-height: 1.1rem;
    color: var(--muted);
    font-size: .82rem;
    font-weight: 800;
}

.settings-feature-card {
    padding: 1rem;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(var(--grass-rgb), .12), rgba(255,255,255,.035)),
        rgba(7, 11, 17, .84);
    box-shadow: 0 18px 44px rgba(0,0,0,.22);
}

.settings-feature-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    padding-bottom: .75rem;
    border-bottom: 2px solid rgba(var(--grass-rgb), .48);
}

.settings-feature-head span,
.increment-setting-row label span {
    color: var(--muted);
    font-size: .78rem;
    font-weight: 950;
    text-transform: uppercase;
}

.settings-feature-head h3,
.copy-setting-card h3 {
    margin: .15rem 0 0;
    font-size: 1rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.settings-feature-head strong {
    color: var(--broadcast-gold);
    font-size: .82rem;
    font-weight: 950;
    text-transform: uppercase;
}

.increment-setting-row {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) minmax(180px, 1fr) auto;
    gap: .85rem;
    align-items: end;
}

.increment-setting-row label {
    display: grid;
    gap: .35rem;
    margin: 0;
}

.bid-increment-rule-list {
    display: grid;
    gap: .65rem;
}

.bid-increment-rule-row {
    display: grid;
    grid-template-columns: minmax(150px, 1fr) minmax(150px, 1fr) 42px;
    gap: .75rem;
    align-items: end;
    padding: .65rem;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background: rgba(255,255,255,.045);
}

.bid-increment-rule-row label {
    display: grid;
    gap: .35rem;
    margin: 0;
}

.bid-increment-rule-row label span {
    color: var(--muted);
    font-size: .68rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.icon-action:disabled {
    opacity: .42;
    cursor: not-allowed;
    transform: none;
}

.increment-empty {
    margin: 1rem 0 0;
    color: var(--text);
    font-weight: 900;
    text-align: center;
}

.branding-current-preview {
    min-height: 86px;
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    align-items: center;
    gap: .8rem;
    margin-top: .65rem;
    padding: .65rem;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background: rgba(255,255,255,.055);
}

.branding-current-preview img {
    width: 72px;
    height: 72px;
    object-fit: cover;
    border-radius: 8px;
}

.branding-current-preview-wide img {
    aspect-ratio: 16 / 9;
    height: auto;
}

.branding-current-preview i {
    width: 72px;
    height: 72px;
    display: grid;
    place-items: center;
    color: var(--muted);
    border: 1px dashed rgba(255,255,255,.18);
    border-radius: 8px;
    background: rgba(255,255,255,.04);
}

.branding-current-preview span {
    min-width: 0;
    color: var(--text);
    font-weight: var(--ui-heavy-weight);
}

.branding-current-preview.is-empty span {
    color: var(--muted);
}

.copy-setting-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

[hidden].copy-setting-grid {
    display: none !important;
}

.copy-source-field {
    grid-column: 1 / -1;
    display: grid;
    gap: .5rem;
    padding: 1rem;
    border: 1px solid rgba(var(--brand-cyan-rgb), .2);
    border-radius: 8px;
    background: rgba(var(--brand-cyan-rgb), .07);
}

.copy-source-field p {
    margin: 0;
    color: var(--muted);
    font-size: .86rem;
    font-weight: 850;
}

.copy-source-single {
    display: grid;
    gap: .18rem;
    padding: .8rem .9rem;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background: rgba(255,255,255,.055);
}

.copy-source-single strong {
    color: var(--text);
    font-weight: var(--ui-heavy-weight);
}

.copy-source-single span {
    color: var(--muted);
    font-size: .86rem;
    font-weight: 850;
}

.copy-source-single.is-empty strong {
    color: var(--broadcast-gold);
}

.copy-setting-card {
    min-height: 210px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: .9rem;
    padding: 1rem;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background: rgba(255,255,255,.045);
}

.copy-setting-card p {
    margin: 0;
    color: var(--muted);
    font-size: .9rem;
    line-height: 1.45;
}

.copy-toggle {
    display: flex;
    align-items: center;
    gap: .55rem;
    min-height: 46px;
    padding: .7rem .8rem;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background: rgba(255,255,255,.06);
    color: var(--text);
    font-weight: 950;
}

.copy-toggle-muted {
    color: var(--muted);
}

.skill-muted {
    opacity: .58;
}

.skill-muted .form-label::after {
    content: " optional";
    color: var(--muted);
    font-size: .72rem;
    font-weight: 700;
}

.switch-row {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: var(--muted);
}

.share-box {
    background: rgba(var(--grass-rgb), .08);
    border: 1px solid rgba(var(--grass-rgb), .2);
    border-radius: 8px;
    padding: .65rem;
    color: var(--grass);
    font-size: .82rem;
    word-break: break-all;
}

.live-alert {
    background: rgba(var(--gold-rgb), .14);
    color: #ffe7a7;
}

.projector-body {
    overflow: auto;
    background: #030508;
}

.projector-screen {
    min-height: 100vh;
    height: 100vh;
    overflow: hidden;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: clamp(.65rem, 1.3vh, 1rem);
    padding: clamp(.85rem, 1.8vw, 1.7rem);
    background:
        linear-gradient(115deg, rgba(var(--grass-rgb), .12) 0 18%, transparent 18% 100%),
        linear-gradient(292deg, rgba(var(--gold-rgb), .12) 0 14%, transparent 14% 100%),
        repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 88px),
        #05080d;
}

.projector-header,
.projector-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 2rem;
}

.projector-header p {
    color: var(--grass);
    text-transform: uppercase;
    font-weight: var(--ui-heavy-weight);
    margin: 0;
}

.projector-header h1 {
    font-size: clamp(2rem, 4.6vw, 3.55rem);
    font-weight: var(--ui-heavy-weight);
    line-height: .95;
    text-transform: uppercase;
    max-width: 17ch;
    overflow-wrap: anywhere;
}

.projector-live {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    border: 2px solid var(--gold);
    color: var(--gold);
    padding: .65rem 1rem;
    border-radius: 999px;
    font-weight: var(--ui-heavy-weight);
    animation: live-pulse 1.5s ease-in-out infinite;
}

.projector-player {
    min-height: 0;
    grid-template-columns: minmax(300px, 39%) minmax(0, 1fr);
    gap: clamp(1.2rem, 2.5vw, 2.1rem);
    align-items: center;
}

.projector-player .player-card-frame {
    min-height: 0;
    height: min(58vh, 520px);
}

.projector-player .player-card-frame img {
    width: min(86%, 330px);
}

.projector-player .bid-amount {
    font-size: clamp(3.8rem, 7vw, 6.1rem);
}

.projector-footer > div {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: .75rem;
}

.projector-team {
    color: var(--text);
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 8px;
    padding: .75rem 1rem;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.trial-banner {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
    margin-bottom: 1rem;
    padding: .85rem 1rem;
    border: 1px solid rgba(var(--gold-rgb), .4);
    border-radius: 8px;
    background:
        linear-gradient(120deg, rgba(var(--brand-magenta-rgb), .18), rgba(var(--brand-cyan-rgb), .1)),
        rgba(8,13,19,.9);
    box-shadow: 0 18px 46px rgba(0,0,0,.28);
}

.trial-banner strong {
    display: block;
    color: var(--gold);
    text-transform: uppercase;
    font-weight: var(--ui-heavy-weight);
}

.trial-banner span { color: #d9e5ef; }

.auction-flash {
    --auction-flash-duration: 1.4s;
    position: fixed;
    z-index: 1080;
    inset: 0;
    display: grid;
    place-items: center;
    text-align: center;
    pointer-events: none;
    background: radial-gradient(circle at center, rgba(6,8,11,.34), rgba(6,8,11,.8));
    animation: flash-out var(--auction-flash-duration) ease both;
}

.auction-flash-sold {
    --auction-flash-duration: 2.4s;
}

.flash-label {
    font-size: clamp(4.8rem, 16vw, 13rem);
    font-weight: var(--ui-heavy-weight);
    line-height: .82;
    text-transform: uppercase;
    text-shadow: 0 18px 70px rgba(0,0,0,.55);
    animation: flash-pop .7s cubic-bezier(.2, 1.3, .2, 1) both;
}

.auction-flash-sold .flash-label {
    color: var(--gold);
    -webkit-text-stroke: 2px rgba(255,255,255,.28);
}

.auction-flash-unsold .flash-label {
    color: var(--red);
    -webkit-text-stroke: 2px rgba(255,255,255,.18);
}

.result-flash {
    --result-flash-duration: 1.75s;
    animation: result-flash-out var(--result-flash-duration) ease both;
}

.result-flash-overlay {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw;
    min-height: 100vh;
    min-height: 100dvh;
    z-index: 5000;
    overflow: hidden;
    isolation: isolate;
    background:
        radial-gradient(circle at 50% 46%, rgba(var(--brand-magenta-rgb), .18), transparent 34%),
        radial-gradient(circle at 50% 52%, rgba(6,8,11,.42), rgba(6,8,11,.9) 72%);
}

.result-flash-sold {
    --result-flash-duration: 2.75s;
}

.result-flash-card {
    position: relative;
    display: grid;
    justify-items: center;
    gap: clamp(.5rem, 1.5vw, 1rem);
    padding: clamp(1rem, 3vw, 2rem);
}

.sold-stamp-mark {
    width: clamp(86px, 13vw, 150px);
    height: clamp(86px, 13vw, 150px);
    display: grid;
    place-items: center;
    padding: clamp(.45rem, 1vw, .8rem);
    border: 2px solid rgba(255,255,255,.5);
    border-radius: 999px;
    background:
        radial-gradient(circle at 30% 18%, rgba(255,255,255,.34), transparent 33%),
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .32), rgba(var(--brand-magenta-rgb), .22)),
        rgba(4, 8, 20, .88);
    box-shadow: 0 20px 70px rgba(0,0,0,.38), 0 0 48px rgba(var(--brand-cyan-rgb), .22);
    transform: rotate(-8deg);
}

.auction-flash > .sold-stamp-mark {
    position: absolute;
    top: clamp(1.2rem, 6vw, 4.5rem);
    right: clamp(1.2rem, 7vw, 6rem);
}

.result-flash-card .sold-stamp-mark {
    margin-bottom: clamp(-.2rem, -1vw, -.6rem);
}

.sold-stamp-badge {
    width: 100%;
    height: 100%;
    min-width: 0;
    font-size: clamp(1.1rem, 2.6vw, 2.1rem);
    border-width: 0;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.28);
}

.sold-stamp-badge img {
    width: 82%;
    height: 82%;
    object-fit: contain;
}

.result-team-lockup {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: clamp(.75rem, 2vw, 1.2rem);
    min-width: min(86vw, 560px);
    padding: clamp(.8rem, 1.6vw, 1.2rem);
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .18), rgba(var(--brand-magenta-rgb), .12)),
        rgba(8, 13, 19, .86);
    box-shadow: 0 28px 90px rgba(0,0,0,.42);
}

.result-team-lockup > div {
    min-width: 0;
    display: grid;
    justify-items: start;
    gap: .1rem;
}

.result-team-lockup span {
    color: var(--muted);
    font-size: .72rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.result-team-lockup strong {
    max-width: 100%;
    color: var(--text);
    font-size: clamp(1.3rem, 4vw, 2.6rem);
    font-weight: var(--ui-heavy-weight);
    line-height: 1;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.result-team-lockup b {
    color: var(--gold);
    font-size: clamp(1.05rem, 2.5vw, 1.8rem);
    font-weight: var(--ui-heavy-weight);
}

.result-team-badge {
    width: clamp(72px, 11vw, 120px);
    height: clamp(72px, 11vw, 120px);
    min-width: clamp(72px, 11vw, 120px);
    font-size: clamp(1.1rem, 2.4vw, 2rem);
}

.flash-player {
    color: var(--text);
    font-size: clamp(1.4rem, 4vw, 3.2rem);
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.flash-meta {
    color: #dce8f2;
    font-size: clamp(1rem, 2vw, 1.5rem);
    font-weight: 900;
    text-transform: uppercase;
}

.draw-reveal-overlay {
    position: fixed;
    inset: 0;
    z-index: 4800;
    display: grid;
    place-items: center;
    padding: clamp(1.25rem, 4vw, 3rem);
    pointer-events: none;
    overflow: hidden;
    isolation: isolate;
    background:
        radial-gradient(circle at 50% 38%, rgba(var(--brand-cyan-rgb), .2), transparent 34%),
        radial-gradient(circle at 50% 62%, rgba(var(--brand-magenta-rgb), .16), transparent 38%),
        rgba(2, 5, 12, .97);
    animation: draw-reveal-in .18s ease-out both;
}

.draw-reveal-overlay.is-leaving {
    animation: draw-reveal-out .42s ease-in both;
}

body.is-draw-reveal-active [data-public-view] [data-render="current"],
body.is-draw-reveal-active [data-projector-view] [data-render="current"] {
    visibility: hidden !important;
}

.draw-reveal-stage {
    position: relative;
    display: grid;
    place-items: center;
    width: min(92vw, 760px);
    min-height: clamp(330px, 58vh, 560px);
}

.draw-reveal-pool {
    position: absolute;
    inset: 50% auto auto 50%;
    width: min(86vw, 720px);
    height: min(58vw, 390px);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 999px;
    background:
        radial-gradient(circle at 50% 45%, rgba(255,255,255,.08), transparent 34%),
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .11), rgba(var(--brand-magenta-rgb), .1)),
        rgba(7, 12, 22, .62);
    box-shadow: inset 0 0 90px rgba(0,0,0,.34), 0 36px 110px rgba(0,0,0,.32);
    transform: translate(-50%, -50%);
}

.draw-reveal-pool span {
    position: absolute;
    left: calc(50% - clamp(32px, 5vw, 48px));
    top: calc(50% - clamp(20px, 3vw, 30px));
    width: clamp(64px, 10vw, 96px);
    height: clamp(40px, 6vw, 60px);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(255,255,255,.18), rgba(255,255,255,.04)),
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .42), rgba(var(--brand-magenta-rgb), .28));
    box-shadow: 0 16px 34px rgba(0,0,0,.28);
    opacity: .45;
    transform: rotate(var(--angle)) translateY(clamp(-150px, -19vw, -104px)) rotate(var(--reverse));
    animation: draw-pool-card 1.04s ease-in-out both;
    animation-delay: calc(var(--i) * .04s);
}

.draw-reveal-wheel {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: clamp(150px, 18vw, 230px);
    aspect-ratio: 1;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 999px;
    background:
        radial-gradient(circle at 35% 24%, rgba(255,255,255,.26), transparent 18%),
        conic-gradient(from -18deg, rgba(var(--brand-cyan-rgb), .96), rgba(var(--brand-magenta-rgb), .86), rgba(255,213,66,.9), rgba(var(--brand-cyan-rgb), .96));
    box-shadow: 0 28px 90px rgba(0,0,0,.42), 0 0 70px rgba(var(--brand-cyan-rgb), .22);
    animation: draw-wheel-spin 1.1s cubic-bezier(.14, .78, .2, 1) both;
    will-change: transform;
}

.draw-reveal-wheel::before,
.draw-reveal-wheel::after {
    content: "";
    position: absolute;
    inset: 14%;
    border-radius: inherit;
    border: 1px solid rgba(255,255,255,.22);
}

.draw-reveal-wheel::after {
    inset: -10px;
    border-color: rgba(var(--brand-cyan-rgb), .34);
    box-shadow: 0 0 0 8px rgba(255,255,255,.035);
}

.draw-reveal-wheel span {
    position: absolute;
    left: calc(50% - 5px);
    top: calc(50% - 5px);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(255,255,255,.86);
    box-shadow: 0 0 18px rgba(255,255,255,.45);
    transform: rotate(var(--angle)) translateY(calc(clamp(150px, 18vw, 230px) * -.42));
}

.draw-reveal-wheel b {
    position: relative;
    z-index: 2;
    display: grid;
    place-items: center;
    width: clamp(58px, 7vw, 86px);
    height: clamp(58px, 7vw, 86px);
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 999px;
    color: #06101c;
    background: rgba(255,255,255,.92);
    box-shadow: inset 0 0 0 6px rgba(3, 8, 18, .08);
}

.draw-reveal-wheel b .svg-inline--fa,
.draw-reveal-wheel b i {
    width: clamp(1.45rem, 2.6vw, 2.2rem);
    height: clamp(1.45rem, 2.6vw, 2.2rem);
}

.draw-reveal-card {
    position: relative;
    z-index: 2;
    display: grid;
    justify-items: center;
    width: min(86vw, 560px);
    margin-top: clamp(-.4rem, -1vw, -.1rem);
    padding: clamp(1rem, 2.6vw, 1.55rem);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 8px;
    text-align: center;
    background:
        linear-gradient(135deg, rgba(255,255,255,.11), transparent 32%),
        linear-gradient(120deg, rgba(var(--brand-cyan-rgb), .2), rgba(var(--brand-magenta-rgb), .18)),
        rgba(8, 13, 28, .9);
    box-shadow: 0 24px 80px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.18);
    animation: draw-card-land .58s .34s cubic-bezier(.2, 1.18, .22, 1) both;
}

.draw-reveal-card::before {
    content: "";
    position: absolute;
    inset: -30% -16%;
    background: linear-gradient(110deg, transparent 34%, rgba(255,255,255,.34) 48%, transparent 62%);
    transform: translateX(-120%);
    animation: draw-card-scratch .72s .5s ease-out both;
}

.draw-reveal-card small,
.draw-reveal-card strong,
.draw-reveal-card em {
    position: relative;
    z-index: 1;
}

.draw-reveal-card small {
    max-width: 100%;
    color: var(--gold);
    font-size: clamp(.74rem, 1.3vw, .9rem);
    font-weight: var(--ui-heavy-weight);
    line-height: 1.2;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.draw-reveal-card strong {
    max-width: 100%;
    color: var(--text);
    font-size: clamp(1.35rem, 4vw, 3rem);
    font-weight: var(--ui-heavy-weight);
    line-height: 1.05;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.draw-reveal-card em {
    max-width: 100%;
    margin-top: .35rem;
    color: #5cff99;
    font-size: clamp(1rem, 2.35vw, 1.45rem);
    font-style: normal;
    font-weight: var(--ui-heavy-weight);
    line-height: 1.12;
    text-transform: uppercase;
    opacity: 0;
    transform: translateY(10px);
    overflow-wrap: anywhere;
    animation: draw-name-reveal .28s .85s ease-out both;
}

.confetti-burst {
    position: fixed;
    z-index: 5100;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.confetti-burst span {
    position: absolute;
    left: 50%;
    top: 48%;
    width: 10px;
    height: 18px;
    border-radius: 3px;
    animation: confetti-fall 1.3s var(--delay) cubic-bezier(.2, .8, .26, 1) both;
}

.auction-modal {
    position: fixed;
    z-index: 3000;
    inset: 0;
    display: grid;
    place-items: center;
    padding: clamp(.75rem, 2.5vw, 1.5rem);
}

.auction-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(3, 6, 10, .72);
    backdrop-filter: blur(10px);
}

.auction-modal-panel {
    position: relative;
    width: min(100%, 560px);
    max-height: min(88vh, 780px);
    overflow: auto;
    padding: clamp(1rem, 2.2vw, 1.5rem);
    padding-top: clamp(3.1rem, 5vw, 3.5rem);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .12), rgba(var(--brand-violet-rgb), .08)),
        #101722;
    box-shadow: 0 30px 90px rgba(0,0,0,.55);
    animation: card-enter .24s ease both;
}

.auction-modal-wide { width: min(100%, 1040px); }

.modal-icon-close {
    position: absolute;
    top: .75rem;
    right: .75rem;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    color: var(--text);
    background: rgba(255,255,255,.08);
    border: 1px solid var(--line);
    border-radius: 8px;
    z-index: 3;
    transition: transform .14s ease, background .14s ease, border-color .14s ease;
}

.modal-icon-close:hover {
    transform: scale(1.04);
    border-color: rgba(255,255,255,.36);
    background: rgba(255,255,255,.14);
}

.summary-card-grid,
.squad-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
    gap: .8rem;
}

.summary-card {
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background: rgba(255,255,255,.055);
    padding: .8rem;
}

.summary-card-head {
    display: flex;
    gap: .75rem;
    align-items: center;
}

.summary-card-head h3,
.squad-player-card h3,
.list-player-card h3 {
    overflow-wrap: anywhere;
}

.summary-card-head img {
    width: 54px;
    height: 54px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--line);
}

.summary-card-head .team-badge {
    width: 54px;
    height: 54px;
    min-width: 54px;
}

.summary-card h3 {
    margin: 0;
    font-size: 1rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.summary-card span {
    display: block;
    color: var(--muted);
    font-size: .82rem;
}

.squad-player-card {
    position: relative;
    overflow: hidden;
    min-height: 360px;
    display: grid;
    grid-template-rows: minmax(175px, auto) 1fr;
    gap: .75rem;
    padding: .8rem;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 8px;
    background:
        linear-gradient(135deg, var(--card-accent, var(--gold)), var(--card-accent-2, var(--grass))),
        #121923;
    color: #07110c;
    box-shadow: 0 20px 50px rgba(0,0,0,.32);
    cursor: pointer;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.squad-player-card::before {
    content: "";
    position: absolute;
    inset: auto -30% -24% auto;
    width: 82%;
    aspect-ratio: 1;
    background:
        repeating-linear-gradient(45deg, rgba(255,255,255,.22) 0 2px, transparent 2px 14px),
        rgba(255,255,255,.18);
    clip-path: polygon(10% 0, 100% 16%, 82% 100%, 0 80%);
    opacity: .48;
}

.squad-player-card > * {
    position: relative;
    z-index: 1;
}

.squad-player-card:hover {
    transform: translateY(-3px);
    border-color: rgba(255,255,255,.52);
    box-shadow: 0 26px 72px rgba(0,0,0,.42);
}

.squad-card-media {
    display: grid;
    place-items: center;
    min-height: 175px;
    padding: .45rem;
    border: 1px solid rgba(7,17,12,.14);
    border-radius: 8px;
    background: rgba(255,255,255,.22);
}

.squad-card-media img {
    width: min(100%, 190px);
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 8px;
    border: 2px solid rgba(7,17,12,.2);
}

.squad-card-body {
    display: grid;
    gap: .48rem;
    align-content: start;
}

.squad-player-card .category-chip {
    width: fit-content;
    max-width: 100%;
    color: #07110c;
    background: rgba(255,255,255,.32);
    border: 1px solid rgba(7,17,12,.12);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.squad-player-card h3 {
    margin: 0;
    font-size: 1.08rem;
    line-height: 1.02;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.squad-card-facts {
    display: grid;
    gap: .35rem;
}

.squad-card-facts span,
.squad-player-card small {
    display: flex;
    align-items: center;
    gap: .35rem;
    color: rgba(7,17,12,.8);
    font-size: .78rem;
    font-weight: 900;
    overflow-wrap: anywhere;
}

.squad-card-facts i,
.squad-card-facts .skill-icon,
.squad-player-card small i {
    color: rgba(7,17,12,.72);
}

.squad-card-facts .skill-icon {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    background: rgba(7,17,12,.14);
}

.squad-player-card b {
    display: block;
    width: fit-content;
    padding: .3rem .52rem;
    border-radius: 999px;
    color: #07110c;
    background: rgba(255,255,255,.28);
    border: 1px solid rgba(7,17,12,.12);
    font-weight: var(--ui-heavy-weight);
}

.squad-player-card .btn {
    justify-self: start;
    color: var(--text);
    background: rgba(6,8,11,.74);
}

.summary-metrics {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
    gap: .45rem;
    margin-top: .8rem;
}

.summary-metrics i,
.player-detail-grid i {
    color: var(--grass);
    margin-right: .28rem;
}

.summary-metrics div {
    min-width: 0;
    padding: .6rem;
    border-radius: 8px;
    background: rgba(4,8,13,.46);
}

.summary-metrics span {
    display: block;
    color: var(--muted);
    font-size: .66rem;
    font-weight: 950;
    text-transform: uppercase;
}

.summary-metrics b {
    display: block;
    color: var(--text);
    font-size: clamp(.76rem, 1.2vw, .96rem);
    font-weight: var(--ui-heavy-weight);
    overflow-wrap: anywhere;
    line-height: 1.15;
}

.summary-warning {
    margin-top: .7rem;
    padding: .55rem .65rem;
    color: #ffe6ad;
    border: 1px solid rgba(var(--gold-rgb), .24);
    border-radius: 8px;
    background: rgba(var(--gold-rgb), .09);
    font-size: .82rem;
    font-weight: 850;
}

.summary-warning i {
    margin-right: .35rem;
    color: var(--gold);
}

.category-breakdown {
    margin-top: .7rem;
    padding-top: .7rem;
    border-top: 1px solid rgba(255,255,255,.08);
}

.category-breakdown p {
    margin: 0 0 .45rem;
    color: var(--muted);
    font-size: .68rem;
    font-weight: 950;
    text-transform: uppercase;
}

.category-breakdown p i {
    color: var(--blue);
    margin-right: .3rem;
}

.category-breakdown > div {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(118px, 1fr));
    gap: .45rem;
}

.category-breakdown span {
    min-width: 0;
    display: grid;
    gap: .08rem;
    padding: .52rem;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background: rgba(255,255,255,.045);
}

.category-breakdown span.needs-attention {
    border-color: rgba(var(--gold-rgb), .28);
    background: rgba(var(--gold-rgb), .08);
}

.category-breakdown b,
.category-breakdown strong,
.category-breakdown small {
    min-width: 0;
    overflow-wrap: anywhere;
}

.category-breakdown b {
    color: var(--text);
    font-size: .78rem;
    font-weight: 950;
    text-transform: uppercase;
}

.category-breakdown strong {
    color: var(--grass);
    font-size: 1rem;
    font-weight: var(--ui-heavy-weight);
}

.category-breakdown small {
    color: var(--muted);
    font-size: .7rem;
}

@keyframes flash-pop {
    from { opacity: 0; transform: scale(.68) rotate(-3deg); }
    to { opacity: 1; transform: scale(1) rotate(0); }
}

@keyframes flash-out {
    0%, 72% { opacity: 1; }
    100% { opacity: 0; visibility: hidden; }
}

@keyframes result-flash-out {
    0%, 78% { opacity: 1; }
    100% { opacity: 0; visibility: hidden; }
}

@keyframes draw-reveal-in {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes draw-reveal-out {
    from { opacity: 1; }
    to { opacity: 0; visibility: hidden; }
}

@keyframes draw-wheel-spin {
    0% { opacity: 0; transform: rotate(-120deg) scale(.78); }
    72% { opacity: 1; transform: rotate(660deg) scale(1.04); }
    100% { opacity: 1; transform: rotate(720deg) scale(1); }
}

@keyframes draw-card-land {
    from { opacity: 0; transform: translateY(18px) scale(.95); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes draw-card-scratch {
    0% { transform: translateX(-120%); }
    100% { transform: translateX(120%); }
}

@keyframes draw-pool-card {
    0% { opacity: 0; transform: rotate(var(--angle)) translateY(-32px) rotate(var(--reverse)) scale(.72); }
    55% { opacity: .62; }
    100% { opacity: .45; }
}

@keyframes draw-name-reveal {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes confetti-fall {
    from { opacity: 1; transform: translate(-50%, -50%) rotate(0); }
    to { opacity: 0; transform: translate(calc(-50% + var(--x)), 56vh) rotate(var(--r)); }
}

.projector-team span {
    color: var(--muted);
    display: block;
}

.public-link-panel {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}

.live-shell::before,
.live-shell::after,
.auction-room::after,
.projector-screen::before,
.projector-screen::after {
    content: none;
    display: none;
}

.projector-screen > :not(.auction-modal),
.live-shell > :not(.auction-modal) { position: relative; z-index: 1; }

.live-shell > .auction-modal,
.projector-screen > .auction-modal {
    position: fixed;
    z-index: 3000;
}

.copy-confirm {
    align-self: center;
    color: var(--grass);
    font-weight: 950;
    text-transform: uppercase;
}

.filter-bar {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: .75rem;
    margin-bottom: 1rem;
}

.status-count-row {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-bottom: 1rem;
}

.status-count-row span {
    padding: .4rem .65rem;
    border: 1px solid var(--line);
    border-radius: 999px;
    color: var(--muted);
    background: rgba(255,255,255,.06);
    font-size: .78rem;
    font-weight: 950;
    text-transform: uppercase;
}

.status-count-row b { color: var(--text); }

.player-list-grid,
.category-screen-grid,
.manage-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: .8rem;
}

.manage-feedback:empty {
    display: none;
}

.manage-feedback {
    margin-top: .75rem;
    padding: .75rem;
    border: 1px solid currentColor;
    border-radius: 6px;
    background: #101722;
    font-size: .9rem;
    overflow-wrap: anywhere;
}

.manage-feedback-success { color: #74efad; }
.manage-feedback-error { color: #ffd070; }

[data-manage-modal] .btn[data-manage-action="update_points"],
[data-manage-modal] .btn[data-manage-action="reset_category"] {
    color: #fff;
    --bs-btn-color: #fff;
    --bs-btn-hover-color: #fff;
    --bs-btn-active-color: #fff;
    --bs-btn-disabled-color: #fff;
}

.list-player-card,
.category-screen-card {
    display: grid;
    gap: .7rem;
    border: 1px solid rgba(255,255,255,.12);
    border-left: 4px solid var(--card-accent, var(--grass));
    border-radius: 8px;
    background:
        linear-gradient(135deg, color-mix(in srgb, var(--card-accent, var(--grass)) 24%, transparent), color-mix(in srgb, var(--card-accent-2, var(--gold)) 14%, transparent) 58%, transparent),
        rgba(255,255,255,.055);
    padding: .85rem;
}

.category-palette-panel {
    border-color: color-mix(in srgb, var(--card-accent, var(--grass)) 55%, rgba(255,255,255,.2));
    background:
        radial-gradient(circle at 92% 6%, color-mix(in srgb, var(--card-accent-2, var(--gold)) 44%, transparent), transparent 30%),
        linear-gradient(135deg, color-mix(in srgb, var(--card-accent, var(--grass)) 38%, #101722), color-mix(in srgb, var(--card-accent-2, var(--gold)) 30%, #101722)),
        #101722;
}

.category-palette-panel .eyebrow {
    color: var(--card-accent, var(--grass));
}

.list-player-card {
    grid-template-columns: auto 1fr auto;
    align-items: center;
}

.list-player-card img {
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--line);
}

.list-player-card h3,
.category-screen-card h3 {
    margin: 0;
    font-size: 1rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.list-player-card span,
.category-screen-card span,
.owner-welcome {
    color: var(--muted);
    font-size: .85rem;
}

.list-player-card b { color: var(--gold); }

.list-player-card {
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

.list-player-card:hover {
    transform: translateY(-2px);
    border-color: rgba(var(--grass-rgb), .42);
    background: rgba(var(--grass-rgb), .08);
}

.player-detail-hero {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1rem;
    align-items: center;
    padding: 1rem;
    border: 1px solid rgba(255,255,255,.14);
    border-left: 4px solid var(--card-accent, var(--grass));
    border-radius: 8px;
    background:
        linear-gradient(135deg, color-mix(in srgb, var(--card-accent, var(--grass)) 18%, transparent), transparent 45%),
        linear-gradient(135deg, rgba(var(--grass-rgb), .1), rgba(var(--gold-rgb), .08)),
        rgba(255,255,255,.045);
}

.player-detail-hero img {
    width: 104px;
    height: 104px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--line);
}

.player-detail-hero h2 {
    font-size: clamp(1.8rem, 4vw, 3.5rem);
    font-weight: var(--ui-heavy-weight);
    line-height: .9;
    text-transform: uppercase;
}

.player-detail-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: .65rem;
}

.player-detail-grid div {
    padding: .75rem;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 8px;
    background: rgba(4,8,13,.46);
}

.player-detail-grid span {
    display: block;
    color: var(--muted);
    font-size: .72rem;
    font-weight: 950;
    text-transform: uppercase;
}

.player-detail-grid b {
    display: block;
    color: var(--text);
    font-size: .98rem;
    overflow-wrap: anywhere;
}

@keyframes card-enter {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes card-float {
    0%, 100% { transform: perspective(900px) rotateY(-7deg) rotateX(4deg) translateY(0); }
    50% { transform: perspective(900px) rotateY(-4deg) rotateX(3deg) translateY(-10px); }
}

@keyframes live-pulse {
    0%, 100% { box-shadow: 0 0 0 rgba(var(--gold-rgb), 0); }
    50% { box-shadow: 0 0 28px rgba(var(--gold-rgb), .34); }
}

@media (max-width: 1100px) {
    .hero-stage,
    .auction-grid,
    .public-grid { grid-template-columns: 1fr; }
    .current-panel { min-height: auto; }
    .hero-title { font-size: 4rem; }
    .arena-board { min-height: 500px; }
}

@media (max-width: 760px) {
    .increment-setting-row,
    .bid-increment-rule-row,
    .copy-setting-grid {
        grid-template-columns: 1fr;
    }

    .brand-lockup small { display: none; }
    .brand-logo-wordmark { height: 40px; }
    .brand-logo { max-width: min(180px, 48vw); }
    .page-head h1 { font-size: 2rem; }
    .hero-band { min-height: auto; padding: 3rem 0; }
    .hero-title { font-size: 3rem; }
    .hero-copy { font-size: 1rem; }
    .arena-board {
        min-height: auto;
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 1rem;
        padding: 1rem;
    }
    .hero-player-card { width: min(92%, 330px); min-height: 420px; transform: none; }
    .score-ticker {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;
        width: min(100%, 330px);
        grid-template-columns: 1fr;
    }
    .player-focus,
    .projector-player { grid-template-columns: 1fr; }
    .bid-amount { font-size: 3.2rem; }
    .projector-screen {
        height: auto;
        min-height: 100vh;
        grid-template-rows: auto auto auto;
        padding: 1rem;
        overflow-y: visible;
    }
    .projector-header,
    .projector-footer { display: grid; }
    .projector-header h1 { font-size: 2.35rem; }
    .projector-player .player-card-frame { height: auto; min-height: 0; }
    .projector-player .bid-amount { font-size: clamp(2.65rem, 14vw, 3.4rem); }
    .projector-footer {
        max-height: none;
        overflow: visible;
    }
    .projector-footer > div {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: none;
        grid-auto-rows: minmax(52px, auto);
    }
    .quick-row .btn { min-width: 100%; }
    .trial-banner { display: grid; }
    .summary-metrics { grid-template-columns: 1fr; }
    .public-link-panel { display: grid; }
    .auction-modal { align-items: end; padding: .65rem; }
    .auction-modal-panel { width: 100%; max-height: 92vh; border-radius: 8px 8px 0 0; }
    .player-detail-hero { grid-template-columns: 1fr; text-align: center; }
    .player-detail-hero img { justify-self: center; width: 92px; height: 92px; }
    .list-player-card { grid-template-columns: auto 1fr; }
    .list-player-card .status-pill { grid-column: 1 / -1; width: fit-content; }
}

@media (max-width: 390px) {
    .brand-logo-wordmark { height: 35px; }
    .brand-logo { max-width: 150px; }
}

/* World-class broadcast/control redesign */
:root {
    --arena-bg: url("../images/brand/broadcast-arena.webp");
    --broadcast-gold: #ffd45a;
    --broadcast-emerald: #28ef9f;
    --panel-glass: rgba(9, 14, 28, .72);
    --panel-glass-strong: rgba(7, 10, 21, .86);
}

.page-subtitle {
    max-width: 760px;
    margin: .65rem 0 0;
    color: #bfd0df;
    font-size: .98rem;
}

.btn-neon,
.btn-glass,
.btn-outline-light {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-neon {
    position: relative;
    overflow: hidden;
}

.btn-neon::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg, transparent, rgba(255,255,255,.32), transparent);
    transform: translateX(-120%);
    transition: transform .45s ease;
}

.btn-neon:hover::after {
    transform: translateX(120%);
}

.broadcast-hero {
    min-height: calc(100vh - 72px);
    isolation: isolate;
}

.broadcast-hero::before {
    background:
        linear-gradient(90deg, rgba(2,5,12,.96) 0 34%, rgba(2,5,12,.5) 62%, rgba(2,5,12,.86)),
        radial-gradient(circle at 21% 42%, rgba(var(--brand-cyan-rgb), .18), transparent 34%),
        var(--hero-bg, var(--arena-bg)) center / cover no-repeat;
    opacity: 1;
}

.broadcast-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, transparent 0 8%, rgba(255,255,255,.055) 8.1% 8.2%, transparent 8.3% 100%),
        repeating-linear-gradient(90deg, rgba(255,255,255,.025) 0 1px, transparent 1px 108px);
    opacity: .62;
    mix-blend-mode: screen;
}

.hero-copy-wrap {
    position: relative;
    z-index: 2;
}

.hero-title {
    letter-spacing: 0;
    text-shadow: 0 24px 80px rgba(0,0,0,.6);
}

.hero-copy {
    color: #e7f0f8;
}

.hero-kicker-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
    max-width: 740px;
    margin-top: 1.35rem;
}

.hero-kicker-grid span {
    min-height: 72px;
    padding: .78rem;
    display: grid;
    align-content: center;
    gap: .2rem;
    color: #dce7f1;
    background: rgba(255,255,255,.065);
    border: 1px solid rgba(255,255,255,.13);
    border-left: 3px solid var(--broadcast-gold);
    border-radius: 8px;
    backdrop-filter: blur(16px);
}

.hero-kicker-grid b {
    color: var(--broadcast-gold);
    font-size: .72rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.hero-action-row {
    gap: .9rem 1.25rem;
}

.hero-action-row .btn {
    min-width: 190px;
    padding-inline: 1.35rem;
}

.broadcast-board {
    min-height: 580px;
    background:
        linear-gradient(160deg, rgba(6,10,22,.16), rgba(6,10,22,.82)),
        var(--arena-bg) center / cover no-repeat;
    border-color: rgba(255,255,255,.18);
    box-shadow: 0 34px 110px rgba(0,0,0,.58), inset 0 1px 0 rgba(255,255,255,.12);
}

.broadcast-board::before {
    inset: 26px;
    border-color: rgba(255,255,255,.22);
    box-shadow: inset 0 0 80px rgba(var(--brand-cyan-rgb), .08);
}

.stage-label {
    position: absolute;
    z-index: 2;
    top: 1rem;
    left: 1rem;
    display: inline-grid;
    gap: .1rem;
    padding: .65rem .85rem;
    color: var(--text);
    background: rgba(3,6,12,.72);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 8px;
    backdrop-filter: blur(18px);
}

.stage-label span {
    color: var(--broadcast-gold);
    font-size: .68rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.stage-label b {
    font-size: .94rem;
    text-transform: uppercase;
}

.hero-player-card {
    border-color: rgba(255,255,255,.82);
    background:
        radial-gradient(circle at 76% 12%, rgba(255,255,255,.32), transparent 24%),
        linear-gradient(135deg, var(--brand-cyan), #4c71ff 46%, var(--brand-magenta));
    box-shadow: 0 40px 120px rgba(0,0,0,.55), 0 0 34px rgba(var(--brand-cyan-rgb), .25);
}

.live-shell,
.projector-screen {
    position: relative;
    isolation: isolate;
    min-height: 100vh;
    background:
        linear-gradient(90deg, rgba(2,5,12,.82), rgba(2,5,12,.36) 58%, rgba(2,5,12,.72)),
        var(--arena-bg) center / cover fixed no-repeat;
}

.live-shell[class*="sport-"],
.projector-screen[class*="sport-"] {
    background:
        linear-gradient(90deg, rgba(2,5,12,.86), rgba(2,5,12,.38) 58%, rgba(2,5,12,.74)),
        linear-gradient(135deg, color-mix(in srgb, var(--sport-primary, var(--brand-cyan)) 16%, transparent), transparent 42%),
        linear-gradient(305deg, color-mix(in srgb, var(--sport-accent, var(--brand-magenta)) 13%, transparent), transparent 48%),
        var(--arena-bg) center / cover fixed no-repeat;
}

.auction-room {
    position: relative;
    isolation: isolate;
    min-height: calc(100vh - 122px);
    background:
        linear-gradient(90deg, rgba(2,5,12,.82), rgba(2,5,12,.36) 58%, rgba(2,5,12,.72)),
        var(--arena-bg) center / cover no-repeat;
    border-radius: 8px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06), inset 0 -80px 180px rgba(2,5,12,.45);
}

.auction-room[class*="sport-"] {
    background:
        linear-gradient(90deg, rgba(2,5,12,.86), rgba(2,5,12,.38) 58%, rgba(2,5,12,.74)),
        linear-gradient(135deg, color-mix(in srgb, var(--sport-primary, var(--brand-cyan)) 16%, transparent), transparent 42%),
        linear-gradient(305deg, color-mix(in srgb, var(--sport-accent, var(--brand-magenta)) 13%, transparent), transparent 48%),
        var(--arena-bg) center / cover no-repeat;
}

.live-shell {
    padding-bottom: .85rem;
}

.live-shell .container-fluid {
    position: relative;
    z-index: 1;
    padding-bottom: .75rem !important;
}

.public-grid {
    grid-template-columns: minmax(0, 1.25fr) minmax(245px, .52fr) minmax(245px, .55fr);
}

.live-shell .current-panel,
.auction-room .current-panel {
    background:
        linear-gradient(140deg, rgba(var(--brand-cyan-rgb), .16), transparent 40%),
        linear-gradient(315deg, rgba(255,212,90,.13), transparent 36%),
        rgba(3,6,12,.7);
    backdrop-filter: blur(20px);
    border-color: rgba(255,255,255,.16);
    box-shadow: 0 34px 110px rgba(0,0,0,.46);
}

.player-focus,
.projector-player {
    grid-template-columns: minmax(300px, 38%) minmax(0, 1fr);
}

.player-card-frame {
    min-height: 520px;
    padding: 1rem;
    background:
        radial-gradient(circle at 78% 12%, rgba(255,255,255,.42), transparent 24%),
        linear-gradient(135deg, color-mix(in srgb, var(--card-accent, var(--broadcast-gold)) 84%, #ffffff), var(--card-accent-2, var(--brand-cyan))),
        #101722;
    border-color: rgba(255,255,255,.72);
    box-shadow: 0 28px 90px rgba(0,0,0,.42), 0 0 0 1px rgba(255,255,255,.08) inset;
}

.player-card-frame::before {
    inset: -18% -18% auto auto;
    opacity: .5;
}

.player-card-frame::after {
    content: "";
    position: absolute;
    inset: 12px;
    pointer-events: none;
    border: 1px solid rgba(7,17,12,.18);
    border-radius: 8px;
}

.player-card-topline {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 45%);
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.profile-lockup strong {
    display: block;
    max-width: 14ch;
    font-size: clamp(1rem, 2vw, 1.35rem);
    font-weight: var(--ui-heavy-weight);
    line-height: 1;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.profile-lockup span,
.tier-lockup small {
    display: block;
    font-size: .78rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.tier-lockup {
    min-width: 0;
    width: 100%;
    text-align: right;
}

.tier-lockup b {
    display: block;
    font-size: .9rem;
    font-weight: var(--ui-heavy-weight);
    line-height: 1;
    text-transform: uppercase;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
    font-size: clamp(.7rem, 1.4vw, .9rem);
}

.player-card-media {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    min-height: clamp(230px, 30vh, 300px);
}

.player-card-profile .player-card-media img,
.player-card-frame .player-card-media img {
    width: min(74%, 260px);
    border-radius: 8px;
    border-width: 3px;
    box-shadow: 0 22px 52px rgba(7,17,12,.28);
}

.player-card-media span {
    position: absolute;
    right: 10%;
    bottom: 4%;
    min-width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    color: var(--text);
    background: rgba(6,8,11,.82);
    border: 1px solid rgba(255,255,255,.26);
    border-radius: 8px;
    font-weight: var(--ui-heavy-weight);
    box-shadow: 0 14px 30px rgba(0,0,0,.28);
}

.broadcast-bid-panel {
    position: relative;
    min-height: 100%;
    display: grid;
    align-content: center;
    padding: clamp(1rem, 2vw, 2rem);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.02)),
        rgba(3,6,12,.52);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
}

.live-scorebug {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: .55rem;
    margin-bottom: 1rem;
    padding: .48rem .72rem;
    color: var(--text);
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 999px;
}

.live-scorebug span,
.live-scorebug b {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    font-size: .74rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.live-scorebug span {
    color: var(--broadcast-gold);
}

.bid-amount {
    color: var(--broadcast-gold);
    font-size: clamp(4rem, 8vw, 7.6rem);
    line-height: 1.04;
    padding-bottom: .08em;
    letter-spacing: 0;
    text-shadow: 0 16px 70px rgba(255,212,90,.18);
}

.player-focus .bid-amount {
    font-size: clamp(3.15rem, 4.4vw, 4.9rem);
    white-space: nowrap;
}

.leading-team {
    font-size: clamp(1.2rem, 2vw, 1.65rem);
}

.leading-team-lockup {
    display: inline-grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: .7rem;
    max-width: 100%;
    padding: .52rem .72rem;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background: rgba(255,255,255,.065);
}

.leading-team-lockup .team-badge {
    width: 44px;
    height: 44px;
    min-width: 44px;
    flex-basis: 44px;
}

.leading-team-lockup span {
    min-width: 0;
    display: grid;
    gap: .06rem;
}

.leading-team-lockup small {
    color: var(--muted);
    font-size: .62rem;
    font-weight: var(--ui-heavy-weight);
    line-height: 1;
}

.leading-team-lockup strong {
    min-width: 0;
    color: var(--text);
    font-size: clamp(.9rem, 1.6vw, 1.18rem);
    line-height: 1;
    overflow-wrap: anywhere;
}

.team-row,
.activity-row,
.sold-card,
.projector-team {
    transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

.team-row:hover,
.activity-button:hover,
.projector-team:hover {
    transform: translateY(-1px);
}

.projector-screen {
    position: relative;
    padding: clamp(1rem, 2vw, 2rem);
}

.projector-screen::before {
    z-index: 0;
}

.projector-header,
.projector-current,
.projector-footer {
    position: relative;
    z-index: 1;
}

.projector-header {
    padding: .85rem 1rem;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 8px;
    background: rgba(3,6,12,.58);
    backdrop-filter: blur(18px);
}

.projector-header .btn {
    background: rgba(255,255,255,.07);
    backdrop-filter: blur(12px);
}

[data-projector-view] [data-shortcut-hint],
[data-public-view] [data-shortcut-hint] {
    position: relative;
}

[data-projector-view] [data-shortcut-hint]::after,
[data-public-view] [data-shortcut-hint]::after {
    content: attr(data-shortcut-hint);
    position: absolute;
    z-index: 6;
    top: .28rem;
    right: .28rem;
    display: grid;
    min-width: 1.35rem;
    height: 1.35rem;
    place-items: center;
    padding: 0 .3rem;
    color: #07110c;
    background: var(--broadcast-gold);
    border: 1px solid rgba(255,255,255,.3);
    border-radius: 6px;
    box-shadow: 0 10px 24px rgba(0,0,0,.34);
    font-size: .68rem;
    font-weight: var(--ui-heavy-weight);
    line-height: 1;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-4px);
    transition: opacity .16s ease, transform .16s ease;
}

[data-projector-view] [data-shortcut-hint]:hover::after,
[data-projector-view] [data-shortcut-hint]:focus-visible::after,
[data-public-view] [data-shortcut-hint]:hover::after,
[data-public-view] [data-shortcut-hint]:focus-visible::after {
    opacity: 1;
    transform: translateY(0);
}

.projector-player .player-card-frame {
    min-height: 0;
    height: min(50vh, 520px);
}

.projector-player .player-card-media {
    min-height: min(23vh, 230px);
}

.projector-player .player-card-profile .player-card-media img,
.projector-player .player-card-frame .player-card-media img {
    width: min(62%, 230px);
}

.projector-player .player-card-detail-list {
    display: none;
}

.projector-player .player-card-frame h2 {
    font-size: clamp(1.45rem, 2.2vw, 2rem);
}

.projector-footer {
    padding: .8rem;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background: rgba(3,6,12,.62);
    backdrop-filter: blur(18px);
}

.projector-team {
    min-height: 66px;
    background:
        linear-gradient(135deg, rgba(255,255,255,.1), rgba(255,255,255,.03)),
        rgba(255,255,255,.05);
}

.operator-command-strip {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .75rem;
    margin-bottom: 1rem;
}

.operator-command-strip div,
.command-metric,
.setup-preview {
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(255,255,255,.07), rgba(255,255,255,.02)),
        rgba(6,8,11,.48);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

.operator-command-strip div {
    padding: .85rem;
}

.operator-command-strip span,
.command-metric span,
.preview-rule-grid span {
    display: block;
    color: var(--muted);
    font-size: .68rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.operator-command-strip strong,
.command-metric h2 {
    color: var(--text);
    font-weight: var(--ui-heavy-weight);
}

.dashboard-head {
    align-items: center;
    padding: 1rem;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .12), rgba(255,212,90,.06)),
        rgba(255,255,255,.035);
}

.dashboard-metric-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .85rem;
}

.command-metric {
    position: relative;
    overflow: hidden;
}

.command-metric::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 3px;
    background: var(--brand-gradient);
}

.command-metric small {
    display: block;
    margin-top: .35rem;
    color: var(--muted);
}

.section-command-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.command-tournament-card {
    position: relative;
    overflow: hidden;
}

.command-tournament-card::after {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 4px;
    background: var(--brand-gradient);
}

.match-status-ribbon {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .75rem;
    margin-top: 1rem;
    padding: .7rem .8rem;
    color: var(--text);
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background: rgba(255,255,255,.055);
}

.match-status-ribbon span {
    color: var(--broadcast-gold);
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.match-status-ribbon b {
    font-size: .9rem;
}

.setup-form {
    display: grid;
    gap: 1rem;
}

.setup-form-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    gap: 1rem;
    align-items: start;
}

.setup-form-main,
.form-section,
.setup-preview {
    min-width: 0;
}

.form-section,
.setup-preview {
    padding: 1rem;
}

.form-section {
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.025)),
        rgba(6,8,11,.46);
}

.form-section-head {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: end;
    margin-bottom: 1rem;
    padding-bottom: .85rem;
    border-bottom: 1px solid rgba(255,255,255,.09);
}

.form-section-head div {
    display: flex;
    align-items: center;
    gap: .75rem;
}

.form-section-head span {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    color: #07110c;
    background: var(--broadcast-gold);
    border-radius: 8px;
    font-weight: var(--ui-heavy-weight);
}

.form-section-head h2,
.setup-preview h2 {
    margin: 0;
    font-size: 1.25rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.form-section-head p {
    max-width: 420px;
    margin: 0;
    color: var(--muted);
    font-size: .88rem;
}

.setup-preview {
    position: sticky;
    top: 92px;
    display: grid;
    gap: 1rem;
}

.sport-field-empty {
    grid-column: 1 / -1;
    padding: .85rem;
    color: var(--muted);
    border: 1px dashed rgba(255,255,255,.16);
    border-radius: 8px;
    background: rgba(255,255,255,.04);
    font-weight: 850;
}

.preview-player-card {
    min-height: 315px;
    display: grid;
    align-content: space-between;
    padding: .9rem;
    color: #07110c;
    border: 2px solid rgba(255,255,255,.6);
    border-radius: 8px;
    background:
        radial-gradient(circle at 80% 10%, rgba(255,255,255,.36), transparent 25%),
        var(--brand-gradient);
    box-shadow: 0 22px 70px rgba(0,0,0,.32);
}

.preview-player-card strong {
    font-size: 3.8rem;
    font-weight: var(--ui-heavy-weight);
    line-height: .82;
}

.preview-player-card span,
.preview-player-card b {
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.preview-player-card img {
    width: min(78%, 210px);
    aspect-ratio: 1;
    object-fit: cover;
    justify-self: center;
    border: 3px solid rgba(255,255,255,.5);
    border-radius: 8px;
    background: rgba(255,255,255,.22);
}

.preview-rule-grid {
    display: grid;
    gap: .55rem;
}

.preview-rule-grid div {
    display: flex;
    justify-content: space-between;
    gap: .75rem;
    padding: .7rem;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background: rgba(255,255,255,.045);
}

.entity-form-card {
    display: grid;
    gap: .85rem;
    align-content: start;
}

.entity-form-head {
    margin: -1rem -1rem .25rem;
    padding: 1rem;
    border-bottom: 1px solid rgba(255,255,255,.1);
    background:
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .13), rgba(var(--brand-magenta-rgb), .09)),
        rgba(255,255,255,.035);
}

.entity-form-head span,
.entity-list-head span {
    display: inline-flex;
    width: fit-content;
    align-items: center;
    gap: .35rem;
    color: var(--brand-cyan);
    font-size: .68rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.entity-form-head h2,
.entity-list-head h2 {
    margin: .2rem 0 .25rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.entity-form-head p {
    max-width: 42ch;
    margin: 0;
    color: var(--muted);
    font-size: .84rem;
    font-weight: 750;
}

.entity-list-card {
    background:
        linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.018)),
        rgba(3,6,12,.58);
    box-shadow: 0 24px 70px rgba(0,0,0,.34);
}

.entity-list-head {
    position: sticky;
    left: 0;
    z-index: 2;
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 1rem;
    min-width: min(100%, 720px);
    padding: .95rem 1rem;
    border-bottom: 1px solid rgba(255,255,255,.1);
    background:
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .11), rgba(var(--brand-magenta-rgb), .065)),
        rgba(3,6,12,.72);
}

.entity-list-head span {
    padding: .35rem .55rem;
    color: var(--text);
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 999px;
}

.entity-list-card .table {
    min-width: 760px;
}

.entity-list-card td:first-child,
.entity-list-card th:first-child {
    max-width: 280px;
}

.entity-list-card td {
    vertical-align: middle;
}

.squad-player-card {
    position: relative;
    overflow: hidden;
}

.team-row-head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: .65rem;
    align-items: center;
}

.team-badge {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    color: #07110c;
    background:
        radial-gradient(circle at 30% 22%, rgba(255,255,255,.5), transparent 28%),
        linear-gradient(135deg, var(--brand-cyan), var(--brand-magenta));
    border: 1px solid rgba(255,255,255,.3);
    border-radius: 8px;
    font-size: .7rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
    box-shadow: 0 10px 24px rgba(0,0,0,.22);
}

.team-logo-badge {
    overflow: hidden;
    background: rgba(255,255,255,.08);
}

.team-logo-badge img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.team-name-stack {
    min-width: 0;
    display: grid;
    gap: .1rem;
}

.team-name-stack strong {
    min-width: 0;
    overflow-wrap: anywhere;
    line-height: 1.08;
}

.team-name-stack small {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.team-name-stack small {
    color: var(--muted);
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.team-row .team-row-head > b,
.projector-team .team-row-head > b {
    margin: 0;
    color: var(--text);
    font-weight: var(--ui-heavy-weight);
    white-space: nowrap;
}

.projector-team {
    display: grid;
}

.projector-team .team-row-head {
    width: 100%;
    grid-template-columns: auto minmax(0, 1fr) auto;
}

.projector-team .team-badge {
    width: 32px;
    height: 32px;
    font-size: .62rem;
}

.projector-team .team-name-stack strong {
    font-size: .86rem;
}

.projector-team .team-name-stack small {
    display: none;
}

.projector-team .team-row-head > b {
    max-width: 96px;
    overflow: hidden;
    text-align: right;
    text-overflow: ellipsis;
    font-size: .88rem;
}

.projector-team-more {
    border-color: rgba(var(--brand-cyan-rgb), .38);
    background:
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .16), rgba(var(--brand-magenta-rgb), .1)),
        rgba(255,255,255,.055);
}

.projector-team-more .team-badge {
    color: var(--text);
    background: rgba(var(--brand-cyan-rgb), .22);
}

.projector-team-more .team-row-head > b {
    max-width: none;
    color: var(--brand-cyan);
}

.public-grid > .control-card {
    max-height: min(72vh, 760px);
    overflow: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--brand-cyan-rgb), .48) rgba(255,255,255,.08);
}

.public-grid > .control-card::-webkit-scrollbar {
    width: 8px;
}

.public-grid > .control-card::-webkit-scrollbar-track {
    background: rgba(255,255,255,.08);
    border-radius: 999px;
}

.public-grid > .control-card::-webkit-scrollbar-thumb {
    background: rgba(var(--brand-cyan-rgb), .48);
    border-radius: 999px;
}

.activity-button {
    position: relative;
    padding-left: .7rem;
}

.activity-button::before {
    content: "";
    position: absolute;
    left: 0;
    top: .78rem;
    bottom: .78rem;
    width: 3px;
    border-radius: 999px;
    background: rgba(255,255,255,.18);
}

.activity-button:has(.activity-event-bid)::before,
.activity-button:has(.activity-event-selected)::before {
    background: var(--brand-cyan);
}

.activity-button:has(.activity-event-sold)::before {
    background: var(--broadcast-emerald);
}

.activity-button:has(.activity-event-unsold)::before {
    background: var(--red);
}

.activity-event-bid,
.activity-event-sold,
.activity-event-unsold,
.activity-event-selected {
    align-self: center;
    padding: .22rem .5rem;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
    white-space: nowrap;
}

.activity-event-bid,
.activity-event-selected {
    color: #07110c;
    background: var(--brand-cyan);
}

.activity-event-sold {
    color: #07110c;
    background: var(--broadcast-emerald);
}

.activity-event-unsold {
    color: var(--text);
    background: var(--red);
}

.squad-player-card::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(115deg, transparent 0 34%, rgba(255,255,255,.28) 45%, transparent 58% 100%);
    transform: translateX(-125%);
    transition: transform .65s ease;
}

.squad-player-card:hover::after {
    transform: translateX(125%);
}

.squad-card-media {
    position: relative;
}

.squad-card-media .sold-team-overlay {
    position: absolute;
    right: .34rem;
    bottom: .34rem;
    z-index: 3;
    width: 42px;
    height: 42px;
    min-width: 42px;
    flex-basis: 42px;
    color: #fff;
    border-color: rgba(255,255,255,.55);
    box-shadow: 0 14px 32px rgba(0,0,0,.42);
}

.squad-card-media::after {
    content: "";
    position: absolute;
    inset: 16% 12% 8%;
    z-index: 0;
    border-radius: 999px;
    background: radial-gradient(circle, color-mix(in srgb, var(--card-accent-2, var(--brand-cyan)) 38%, transparent), transparent 62%);
    filter: blur(4px);
}

.squad-card-media img {
    position: relative;
    z-index: 1;
}

.projector-player .broadcast-bid-panel {
    min-height: 0;
    align-content: center;
}

.public-live-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .9rem;
    margin-bottom: .85rem;
    padding: .55rem .75rem;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 8px;
    background: rgba(3,6,12,.68);
    box-shadow: 0 18px 54px rgba(0,0,0,.34);
    backdrop-filter: blur(18px);
}

.public-live-brand,
.projector-brand-lockup {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: .7rem;
}

.public-live-brand > div,
.projector-brand-lockup > div {
    min-width: 0;
}

.public-brand-logo,
.projector-brand-logo {
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    object-fit: contain;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(255,255,255,.08);
}

.public-page-head .public-live-brand {
    align-items: center;
}

.public-live-title {
    min-width: 0;
    display: flex;
    align-items: baseline;
    gap: .65rem;
}

.public-live-title span {
    color: var(--broadcast-gold);
    font-size: .68rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.public-live-title strong {
    min-width: 0;
    font-size: clamp(1rem, 2vw, 1.45rem);
    font-weight: var(--ui-heavy-weight);
    line-height: 1;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.public-live-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .45rem;
}

.public-live-actions .btn {
    padding: .42rem .58rem;
    font-size: .72rem;
}

.public-grid {
    grid-template-areas: "bank current timeline";
    grid-template-columns: minmax(230px, .48fr) minmax(0, 1.24fr) minmax(245px, .52fr);
}

.public-bank-panel { grid-area: bank; }
.public-current-panel { grid-area: current; }
.public-timeline-panel { grid-area: timeline; }

.team-badge {
    width: 46px;
    height: 46px;
    min-width: 46px;
    flex: 0 0 46px;
    padding: 0;
    place-items: center;
    color: #ffffff;
    border-color: rgba(255,255,255,.42);
    font-size: .78rem;
    line-height: 1;
    text-align: center;
    text-shadow: 0 2px 8px rgba(0,0,0,.58);
}

.team-row-head {
    align-items: center;
}

.projector-screen {
    gap: clamp(.42rem, .85vh, .75rem);
    padding: clamp(.55rem, 1.1vw, 1rem);
}

.projector-header {
    min-height: 0;
    padding: .48rem .65rem;
    align-items: center;
}

.projector-header > div:first-child {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: .65rem;
}

.projector-header p {
    font-size: .62rem;
    line-height: 1;
    white-space: nowrap;
}

.projector-header h1 {
    font-size: clamp(1.15rem, 1.9vw, 1.7rem);
    line-height: .95;
    max-width: 24ch;
}

.projector-header .btn {
    min-height: 38px;
    padding: .38rem .55rem;
    font-size: .72rem;
}

.projector-live {
    min-height: 38px;
    padding: .38rem .65rem;
    font-size: .72rem;
}

.projector-footer {
    padding: .55rem;
}

.projector-footer > div {
    grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
    gap: .5rem;
}

.projector-team {
    min-height: 54px;
    padding: .45rem .55rem;
}

.projector-team .team-row-head {
    grid-template-columns: auto minmax(0, 1fr);
    gap: .5rem;
}

.projector-team .team-badge {
    width: 42px;
    height: 42px;
    min-width: 42px;
    flex-basis: 42px;
    font-size: .7rem;
}

.team-row .team-badge,
.projector-team .team-badge {
    display: grid;
    color: #ffffff;
}

.projector-team .team-name-stack {
    display: grid;
    min-width: 0;
    gap: .08rem;
}

.projector-team .team-row-head > b {
    max-width: none;
    color: #f6fbff;
    text-align: right;
    overflow: visible;
    text-overflow: clip;
    font-size: clamp(.74rem, 1vw, .92rem);
}

.projector-team .team-name-stack strong {
    min-width: 0;
    color: #f6fbff;
    font-size: clamp(.68rem, .82vw, .88rem);
    line-height: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.projector-team .team-name-stack small {
    display: block;
    min-width: 0;
    color: var(--muted);
    font-size: clamp(.55rem, .68vw, .7rem);
    line-height: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.projector-player-facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .55rem;
    margin-top: .75rem;
}

.projector-player-facts > span {
    min-width: 0;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    grid-template-areas:
        "icon label"
        "icon value";
    column-gap: .55rem;
    align-items: center;
    padding: .55rem .65rem;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 8px;
    background: rgba(255,255,255,.065);
}

.projector-player-facts .skill-icon {
    grid-area: icon;
    width: 34px;
    height: 34px;
    background:
        radial-gradient(circle at 76% 18%, rgba(87,184,255,.26), transparent 34%),
        linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.04));
    border-color: rgba(255,255,255,.13);
}

.projector-player-facts small {
    grid-area: label;
    color: var(--muted);
    font-size: .62rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.projector-player-facts b {
    grid-area: value;
    min-width: 0;
    color: var(--text);
    font-size: clamp(.72rem, .9vw, .9rem);
    font-weight: var(--ui-heavy-weight);
    line-height: 1.05;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.projector-player .player-card-detail-list {
    display: none;
}

.public-grid {
    align-items: stretch;
}

.public-bank-panel,
.public-timeline-panel {
    display: flex;
    flex-direction: column;
    align-self: stretch;
    height: 100%;
    max-height: none;
    min-height: 100%;
    overflow: hidden;
}

.public-bank-panel [data-render="teams"],
.public-timeline-panel [data-render="bids"] {
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding-right: .2rem;
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--brand-cyan-rgb), .48) rgba(255,255,255,.08);
}

.public-bank-panel [data-render="teams"] {
    display: grid;
    grid-auto-rows: minmax(58px, auto);
    align-content: start;
    gap: .5rem;
}

.public-timeline-panel [data-render="bids"] {
    display: grid;
    align-content: start;
    gap: .5rem;
}

.public-bank-panel .projector-team {
    width: 100%;
    min-height: 58px;
    padding: .55rem .62rem;
    justify-content: stretch;
}

.public-bank-panel .projector-team .team-row-head {
    width: 100%;
    justify-self: stretch;
    grid-template-columns: max-content minmax(0, 1fr);
    gap: .55rem;
}

.public-bank-panel .projector-team .team-row-head > b {
    justify-self: end;
    text-align: right;
}

.public-bank-panel .projector-team-identity {
    gap: .38rem;
}

.public-bank-panel .projector-team-identity .team-badge {
    width: clamp(38px, 3.2vw, 46px);
    height: clamp(38px, 3.2vw, 46px);
    min-width: clamp(38px, 3.2vw, 46px);
    flex-basis: clamp(38px, 3.2vw, 46px);
}

.public-bank-panel .projector-team-identity .team-badge:not(.team-logo-badge) {
    font-size: clamp(.78rem, 1vw, 1rem);
}

.public-bank-panel .projector-team .team-name-stack strong {
    font-size: clamp(1rem, 1.35vw, 1.34rem);
    line-height: 1.04;
}

.public-bank-panel .projector-team .team-name-stack small {
    font-size: clamp(.76rem, .92vw, .98rem);
    line-height: 1.08;
    color: #d6e2ec;
}

.player-card-frame .player-card-media img {
    width: auto !important;
    height: auto !important;
    max-width: min(82%, var(--player-photo-natural-width, 320px), 320px) !important;
    max-height: min(34vh, var(--player-photo-natural-height, 320px), 320px) !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
}

.projector-player .player-card-frame {
    grid-template-rows: auto minmax(0, 1fr) auto;
    align-content: stretch;
}

.projector-player .player-card-media {
    min-height: 0;
    align-self: center;
    overflow: visible;
    padding-block: .2rem;
}

.projector-player .player-card-frame .player-card-media img {
    max-width: min(72%, var(--player-photo-natural-width, 300px), 300px) !important;
    max-height: min(26vh, var(--player-photo-natural-height, 280px), 280px) !important;
}

.projector-player .player-card-info {
    align-self: end;
    min-height: 0;
    gap: .42rem;
    padding-top: .35rem;
}

.projector-player .player-card-frame h2 {
    margin: 0;
    line-height: 1.04;
}

.projector-footer {
    max-height: clamp(118px, 14vh, 150px);
    overflow: hidden;
}

.projector-footer > div {
    grid-template-columns: repeat(var(--projector-team-columns, 6), minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(48px, 1fr));
    grid-auto-rows: minmax(48px, 1fr);
    align-items: stretch;
}

.projector-footer .projector-team {
    width: 100%;
    min-width: 0;
    min-height: 48px;
    padding: .35rem .5rem;
    justify-content: stretch;
}

.projector-footer .projector-team .team-row-head {
    min-width: 0;
    width: 100%;
    justify-self: stretch;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .4rem;
}

.projector-footer .projector-team .team-row-head > b {
    justify-self: end;
    min-width: 0;
    font-size: clamp(.68rem, .82vw, .86rem);
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.projector-team .team-name-stack strong {
    min-width: 0;
    color: #f6fbff;
    font-size: clamp(.68rem, .82vw, .88rem);
    line-height: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.projector-team .team-name-stack small {
    display: block;
    min-width: 0;
    color: var(--muted);
    font-size: clamp(.55rem, .68vw, .7rem);
    line-height: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.projector-footer .projector-team .team-name-stack strong {
    font-size: clamp(1.05rem, 1.28vw, 1.55rem);
    line-height: 1.02;
}

.projector-footer .projector-team .team-name-stack small {
    color: #d6e2ec;
    font-size: clamp(.82rem, .95vw, 1.08rem);
    line-height: 1.08;
}

.projector-footer .projector-team .team-badge {
    width: 40px;
    height: 40px;
    min-width: 40px;
    flex-basis: 40px;
}

.projector-team-identity {
    display: inline-flex !important;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: .38rem;
    min-width: 0;
    width: max-content;
    max-width: none;
}

.projector-team-identity .team-badge {
    margin: 0;
    flex: 0 0 40px;
    max-width: none;
}

@media (min-width: 1200px) and (min-height: 820px) {
    .projector-footer {
        max-height: clamp(190px, 22vh, 260px);
        padding: clamp(.85rem, 1vw, 1.15rem);
    }

    .projector-footer > div {
        gap: clamp(.7rem, .85vw, 1rem);
        grid-template-rows: repeat(2, minmax(82px, 1fr));
        grid-auto-rows: minmax(82px, 1fr);
    }

    .projector-footer .projector-team {
        min-height: 82px;
        padding: clamp(.65rem, .8vw, .95rem);
    }

    .projector-footer .projector-team .team-row-head {
        grid-template-columns: max-content minmax(0, 1fr);
        gap: clamp(.65rem, .75vw, .95rem);
    }

    .projector-footer .projector-team .team-badge {
        width: clamp(54px, 4vw, 72px);
        height: clamp(54px, 4vw, 72px);
        min-width: clamp(54px, 4vw, 72px);
        flex-basis: clamp(54px, 4vw, 72px);
    }

    .projector-footer .projector-team-identity {
        gap: clamp(.45rem, .55vw, .7rem);
    }

    .projector-footer .projector-team-identity .team-badge {
        flex-basis: clamp(54px, 4vw, 72px);
    }

    .projector-footer .projector-team-identity .team-badge:not(.team-logo-badge) {
        font-size: clamp(1.18rem, 1.45vw, 1.9rem);
    }

    .projector-footer .projector-team .team-name-stack {
        gap: .18rem;
    }

    .projector-footer .projector-team .team-name-stack strong {
        display: block;
        font-size: clamp(1.45rem, 1.85vw, 2.2rem);
        line-height: 1.02;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .projector-footer .projector-team .team-name-stack small {
        color: #d6e2ec;
        font-size: clamp(1rem, 1.2vw, 1.36rem);
        line-height: 1.1;
    }
}

.entity-table {
    table-layout: fixed;
}

.entity-table th,
.entity-table td {
    vertical-align: middle;
}

.entity-table td {
    height: 72px;
}

.entity-avatar-name {
    min-width: 0;
    display: inline-grid;
    grid-template-columns: 50px minmax(0, 1fr);
    align-items: center;
    gap: .7rem;
    width: 100%;
}

.entity-avatar-name .avatar-sm {
    margin: 0;
}

.entity-avatar-name strong,
.entity-text-strong {
    min-width: 0;
    display: block;
    color: var(--text);
    font-weight: 850;
    line-height: 1.15;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fetch-number-pill {
    display: inline-grid;
    min-width: 48px;
    height: 34px;
    padding: 0 .55rem;
    place-items: center;
    border: 1px solid rgba(var(--grass-rgb), .4);
    border-radius: 8px;
    background: rgba(var(--grass-rgb), .14);
    color: var(--broadcast-gold);
    font-weight: var(--ui-heavy-weight);
}

.player-name-with-fetch {
    min-width: 0;
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    max-width: 100%;
}

.player-name-with-fetch h3,
.player-name-with-fetch strong:last-child {
    min-width: 0;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.entity-actions-heading,
.entity-actions-cell {
    width: 132px;
}

.entity-actions-cell {
    text-align: right;
}

.entity-row-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: .45rem;
    white-space: nowrap;
}

.entity-row-actions form {
    margin: 0;
}

.icon-action {
    width: 38px;
    height: 38px;
    display: inline-grid;
    place-items: center;
    color: var(--text);
    background: rgba(255,255,255,.065);
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 8px;
    text-decoration: none;
    transition: transform .16s ease, border-color .16s ease, background .16s ease, color .16s ease;
}

.icon-action:hover {
    color: var(--brand-cyan);
    border-color: rgba(var(--brand-cyan-rgb), .5);
    background: rgba(var(--brand-cyan-rgb), .12);
    transform: translateY(-1px);
}

.icon-action-danger {
    color: #ffb7c0;
    background: rgba(255,70,104,.12);
    border-color: rgba(255,70,104,.24);
}

.icon-action-danger:hover {
    color: #fff;
    border-color: rgba(255,70,104,.64);
    background: rgba(255,70,104,.24);
}

.status-icon-pill {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    min-width: 96px;
    padding: .34rem .55rem;
    border: 1px solid currentColor;
    border-radius: 999px;
    color: var(--brand-cyan);
    background: rgba(var(--brand-cyan-rgb), .1);
    font-size: .72rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.status-icon-pill.status-active,
.status-icon-pill.status-available,
.status-icon-pill.status-sold {
    color: var(--broadcast-emerald);
    background: rgba(40,239,159,.11);
}

.status-icon-pill.status-disabled,
.status-icon-pill.status-unsold {
    color: var(--broadcast-gold);
    background: rgba(255,212,90,.12);
}

.status-icon-pill.status-deleted {
    color: #ff7a8d;
    background: rgba(255,70,104,.12);
}

@keyframes ticker-slide {
    from { transform: translateX(0); }
    to { transform: translateX(-38%); }
}

@media (max-width: 1100px) {
    .public-grid,
    .setup-form-grid,
    .dashboard-metric-grid {
        grid-template-columns: 1fr;
    }

    .public-grid {
        grid-template-areas:
            "current"
            "bank"
            "timeline";
    }

    .setup-preview {
        position: static;
    }
}

@media (max-width: 760px) {
    .hero-kicker-grid,
    .operator-command-strip {
        grid-template-columns: 1fr;
    }

    .broadcast-board {
        min-height: 500px;
    }

    .player-card-frame {
        min-height: 500px;
    }

    .broadcast-bid-panel {
        padding: 1rem;
    }

    .projector-header {
        padding: .75rem;
    }

    .projector-current {
        min-height: auto;
    }

    .projector-header .d-flex {
        justify-content: start !important;
    }

    .public-live-topbar {
        display: grid;
        align-items: start;
    }

    .public-live-brand,
    .projector-brand-lockup,
    .bulk-delete-panel {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .public-live-title {
        display: grid;
        gap: .2rem;
    }

    .public-live-actions {
        justify-content: start;
    }

    .form-section-head {
        display: grid;
        align-items: start;
    }

    .dashboard-head {
        align-items: start;
    }
}

@media (max-width: 760px) {
    .player-focus,
    .projector-player,
    .public-grid {
        grid-template-columns: 1fr;
    }

    .broadcast-bid-panel,
    .player-main {
        min-width: 0;
    }

    .player-focus .bid-amount {
        white-space: normal;
        font-size: clamp(2.65rem, 14vw, 3.5rem);
    }

    .projector-player {
        gap: .85rem;
        align-items: stretch;
    }

    .projector-player .projector-player-facts {
        grid-template-columns: 1fr;
    }

    .projector-player .player-card-frame {
        height: auto;
    }

    .projector-player .player-card-media {
        min-height: 210px;
    }

    .projector-screen {
        height: auto;
        min-height: 100vh;
        grid-template-rows: auto auto auto;
        overflow-y: visible;
    }

    .projector-footer {
        max-height: none;
        overflow: visible;
    }

    .projector-footer > div {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: none;
        grid-auto-rows: minmax(52px, auto);
    }

    .player-card-frame {
        min-height: auto;
    }

    .player-card-media {
        min-height: 220px;
    }

}

.squad-card-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 450px), 1fr));
    gap: .78rem;
}

.team-modal-head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: .85rem;
    margin-bottom: 1rem;
    padding: .8rem .9rem;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .12), rgba(var(--brand-magenta-rgb), .08)),
        rgba(3,6,12,.62);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

.team-modal-head > div {
    min-width: 0;
}

.team-modal-head h2 {
    margin: 0;
    color: #f8fbff;
    font-size: clamp(1.35rem, 2.4vw, 2.15rem);
    font-weight: var(--ui-heavy-weight);
    line-height: 1;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.team-modal-head span {
    display: block;
    margin-top: .24rem;
    color: var(--muted);
    font-size: .9rem;
}

.team-modal-head > div > span {
    display: block;
    margin-top: .24rem;
    color: #d8e6f5;
    font-size: .9rem;
}

.team-modal-head .team-modal-badge:not(.team-logo-badge) {
    color: #07110c;
    background:
        radial-gradient(circle at 28% 20%, rgba(255,255,255,.62), transparent 30%),
        linear-gradient(135deg, var(--broadcast-gold), var(--broadcast-emerald));
    border-color: rgba(255,255,255,.55);
    text-shadow: none;
}

.team-modal-badge {
    width: 64px;
    height: 64px;
    min-width: 64px;
    flex: 0 0 64px;
    display: grid;
    place-items: center;
    font-size: .95rem;
}

.team-modal-badge.team-logo-badge img {
    object-fit: contain;
    padding: .16rem;
}

.squad-player-card--broadcast {
    min-height: 168px;
    grid-template-columns: minmax(96px, 148px) minmax(0, 1fr);
    grid-template-rows: none;
    align-items: center;
    gap: 1rem;
    padding: .8rem .9rem .8rem 1rem;
    color: #f7fbff;
    background:
        linear-gradient(112deg, rgba(5,8,18,.96), rgba(10,14,28,.92) 56%, rgba(3,6,12,.96)),
        radial-gradient(circle at 86% 26%, color-mix(in srgb, var(--card-accent, var(--broadcast-gold)) 28%, transparent), transparent 36%),
        radial-gradient(circle at 12% 110%, color-mix(in srgb, var(--card-accent-2, var(--brand-cyan)) 20%, transparent), transparent 42%);
    border: 1px solid color-mix(in srgb, var(--card-accent, #ffffff) 36%, rgba(255,255,255,.16));
    border-left: 3px solid var(--card-accent, var(--broadcast-gold));
    box-shadow: 0 18px 46px rgba(0,0,0,.34);
}

.squad-player-card--broadcast::before {
    inset: 0 auto 0 0;
    width: 3px;
    height: auto;
    aspect-ratio: auto;
    opacity: 1;
    clip-path: none;
    background: linear-gradient(180deg, var(--card-accent, var(--broadcast-gold)), var(--card-accent-2, var(--brand-cyan)));
}

.squad-player-card--broadcast::after {
    inset: 0;
    opacity: .4;
    transform: none;
    background:
        radial-gradient(circle at 20% 120%, color-mix(in srgb, var(--card-accent-2, var(--brand-cyan)) 16%, transparent), transparent 40%),
        linear-gradient(116deg, transparent 0 68%, rgba(var(--gold-rgb), .08) 68.2% 100%);
}

.squad-player-card--broadcast:hover::after {
    transform: none;
}

.squad-card-number-chip {
    position: absolute;
    z-index: 4;
    top: -.15rem;
    left: -.15rem;
    min-width: 32px;
    height: 32px;
    padding: 0 .35rem;
    display: grid;
    place-items: center;
    color: #07110c;
    background: linear-gradient(135deg, var(--card-accent), var(--card-accent-2));
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 7px;
    font-size: .72rem;
    font-weight: var(--ui-heavy-weight);
    line-height: 1;
    text-shadow: 0 2px 8px rgba(0,0,0,.35);
    box-shadow: 0 10px 24px rgba(0,0,0,.34);
}

.squad-player-card--broadcast .squad-card-media {
    min-height: 0;
    aspect-ratio: 1;
    padding: .24rem;
    overflow: hidden;
    place-items: center;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.22);
    box-shadow: 0 14px 34px rgba(0,0,0,.36);
}

.squad-player-card--broadcast .squad-card-media::after {
    inset: 10% 8%;
    opacity: .65;
}

.squad-player-card--broadcast .squad-card-media img {
    position: absolute;
    inset: .24rem;
    width: calc(100% - .48rem);
    height: calc(100% - .48rem);
    max-width: none;
    max-height: none;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center center;
    border: 2px solid rgba(255,255,255,.62);
}

.squad-player-card--broadcast .squad-card-media .sold-team-overlay {
    right: .26rem;
    bottom: .26rem;
    width: 34px;
    height: 34px;
    min-width: 34px;
    flex-basis: 34px;
    font-size: .58rem;
}

.squad-player-card--broadcast .squad-card-body {
    min-width: 0;
    gap: .38rem;
    align-content: center;
}

.squad-player-card--broadcast .category-chip {
    padding: .26rem .46rem;
    color: #07110c;
    background: linear-gradient(135deg, var(--card-accent), var(--card-accent-2));
    border: 1px solid rgba(255,255,255,.22);
    font-size: .78rem;
    letter-spacing: 0;
    box-shadow: 0 10px 24px rgba(0,0,0,.22);
}

.squad-player-card--broadcast h3 {
    color: #ffffff;
    font-size: clamp(1.45rem, 2.15vw, 2.25rem);
    line-height: .98;
    text-shadow: 0 3px 14px rgba(0,0,0,.62);
}

.squad-player-card--broadcast .squad-card-facts {
    gap: .16rem;
}

.squad-player-card--broadcast .squad-card-facts span,
.squad-player-card--broadcast small {
    color: #f5f8ff;
    font-size: .78rem;
    line-height: 1.14;
    text-shadow: 0 2px 10px rgba(0,0,0,.55);
}

.squad-player-card--broadcast .squad-card-facts .skill-icon {
    width: 24px;
    height: 24px;
    color: #07110c;
    background: linear-gradient(135deg, var(--card-accent), var(--card-accent-2));
    border-color: rgba(255,255,255,.22);
}

.squad-player-card--broadcast .squad-card-facts i,
.squad-player-card--broadcast .squad-card-facts .skill-icon,
.squad-player-card--broadcast small i {
    color: #f7fbff;
}

.squad-player-card--broadcast .squad-card-facts .skill-icon i,
.squad-player-card--broadcast .squad-card-facts .skill-icon svg {
    color: #07110c;
}

.squad-player-card--broadcast b {
    margin-top: .08rem;
    padding: .24rem .5rem;
    color: var(--broadcast-gold);
    background: rgba(var(--gold-rgb), .1);
    border: 1px solid rgba(var(--gold-rgb), .22);
    border-radius: 999px;
    font-size: 1rem;
    line-height: 1;
}

.skill-icon-fa i {
    font-size: 1rem;
}

.skill-icon-fa svg {
    width: 1.02em;
    height: 1.02em;
}

.skill-icon-fa.handle-left i {
    transform: scaleX(-1);
}

.squad-card-facts .cricket-icon-svg,
.projector-player-facts .cricket-icon-svg,
.squad-player-card--broadcast .squad-card-facts .cricket-icon-svg {
    background: transparent;
    border: 0;
    box-shadow: none;
}

.squad-card-facts .cricket-icon-img,
.projector-player-facts .cricket-icon-img,
.squad-player-card--broadcast .squad-card-facts .cricket-icon-img {
    width: 100%;
    height: 100%;
}

.projector-player-facts .cricket-icon-img,
.squad-player-card--broadcast .squad-card-facts .cricket-icon-img {
    filter: invert(1) brightness(1.35) drop-shadow(0 2px 8px rgba(0,0,0,.42));
    mix-blend-mode: screen;
}

.summary-card-head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
}

.summary-card-head > div {
    min-width: 0;
}

.summary-card-head .summary-team-badge {
    display: grid;
    place-items: center;
    align-self: center;
    width: 46px;
    height: 46px;
    min-width: 46px;
    flex: 0 0 46px;
    padding: 0;
    color: #ffffff;
    font-size: .72rem;
    line-height: 1;
    letter-spacing: 0;
    text-align: center;
    text-shadow: 0 2px 10px rgba(0,0,0,.62);
    overflow-wrap: anywhere;
}

.summary-card-head .summary-team-badge.team-logo-badge img {
    object-fit: contain;
    padding: .12rem;
}

.broadcast-bid-panel {
    row-gap: .55rem;
}

.projector-current {
    display: grid;
    align-items: center;
    min-height: 0;
}

.projector-current > .projector-player {
    width: 100%;
    align-self: center;
}

.projector-player .broadcast-bid-panel {
    row-gap: .46rem;
}

.projector-player .bid-amount {
    margin: .02rem 0 .08rem;
    max-width: 100%;
    font-size: clamp(3.45rem, 6.35vw, 6.45rem);
    line-height: 1.03;
    padding-bottom: .1em;
    overflow-wrap: anywhere;
}

.projector-player .leading-team-lockup {
    width: min(100%, 430px);
    padding: .38rem .55rem;
    gap: .5rem;
    margin-top: 0;
}

.projector-player .leading-team-lockup .team-badge {
    width: 36px;
    height: 36px;
    min-width: 36px;
    flex-basis: 36px;
    font-size: .62rem;
}

.projector-player .leading-team-lockup small {
    font-size: .58rem;
}

.projector-player .leading-team-lockup strong {
    font-size: clamp(.78rem, .9vw, 1rem);
    line-height: 1.08;
}

@media (max-width: 760px) {
    .squad-card-grid {
        grid-template-columns: 1fr;
    }

    .squad-player-card--broadcast {
        grid-template-columns: minmax(86px, 104px) minmax(0, 1fr);
        gap: .7rem;
        min-height: 136px;
        padding: .7rem;
    }

    .squad-player-card--broadcast h3 {
        font-size: clamp(1.05rem, 6vw, 1.45rem);
    }

    .projector-player .bid-amount {
        font-size: clamp(2.65rem, 13vw, 3.35rem);
        line-height: 1.04;
        padding-bottom: .08em;
    }
}

/* Premium product upgrade pass */
.text-truncate-pro { min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.public-body .app-nav {
    position: sticky;
    top: 0;
    z-index: 1020;
}

.landing-nav-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: .45rem;
}

.landing-nav-links .nav-link {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: .42rem .62rem;
    color: #dce5ef;
    border-radius: 8px;
    font-size: .78rem;
    font-weight: 720;
    text-decoration: none;
    text-transform: uppercase;
}

.landing-nav-links .nav-link:hover {
    color: var(--brand-cyan);
    background: rgba(var(--brand-cyan-rgb), .08);
}

@media (max-width: 760px) {
    .landing-nav-links { width: 100%; justify-content: flex-start; }
    .landing-nav-links .nav-link { display: none; }
}

.landing-live-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; align-items: stretch; }
.premium-live-card, .broadcast-match-tile { padding: 0; overflow: hidden; }
.premium-live-card-horizontal { display: grid; grid-template-columns: minmax(84px, 102px) minmax(0, 1fr); align-items: stretch; min-height: 132px; }
.premium-card-media, .match-tile-art { position: relative; overflow: hidden; background: rgba(255,255,255,.055); }
.premium-card-media { min-height: 118px; }
.match-tile-art { min-height: 138px; }
.premium-card-media img { width: 100%; height: 100%; min-height: 118px; display: block; object-fit: cover; filter: saturate(1.12) contrast(1.04); }
.match-tile-art img { width: 100%; height: 100%; min-height: 138px; display: block; object-fit: cover; filter: saturate(1.12) contrast(1.04); }
.premium-card-media::after, .match-tile-art::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 20%, rgba(3,6,12,.78)); }
.premium-live-card-horizontal .premium-card-media,
.premium-live-card-horizontal .premium-card-media img { min-height: 0; height: 100%; }
.premium-live-card-horizontal .premium-card-body { display: flex; flex-direction: column; gap: .38rem; min-width: 0; padding: .54rem .62rem .62rem; }
.premium-card-body { padding: .72rem; }
.premium-live-card-horizontal h3 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    margin-top: 0;
    margin-bottom: .12rem !important;
    font-size: .96rem;
    line-height: 1.08;
    white-space: normal;
}
.premium-live-card-horizontal .text-secondary { font-size: .78rem; line-height: 1.18; }
.premium-live-actions { display: flex; flex-wrap: wrap; gap: .42rem; margin-top: auto; }
.premium-live-actions .btn { flex: 1 1 100%; min-height: 34px; padding-inline: .55rem; }
.premium-live-actions .fa-solid { font-size: 1.04em; }
.premium-live-actions .fa-arrow-up-right-from-square { font-size: 1.1em; }
.premium-live-actions .btn-neon .btn-label { position: static; width: auto; height: auto; overflow: visible; clip: auto; white-space: nowrap; color: inherit; }
.live-badge { position: absolute; top: .55rem; right: .55rem; z-index: 2; display: inline-flex; align-items: center; gap: .32rem; padding: .3rem .46rem; color: #06110b; background: var(--broadcast-emerald); border-radius: 999px; font-size: .62rem; font-weight: var(--ui-heavy-weight); text-transform: uppercase; box-shadow: 0 12px 34px rgba(0,0,0,.28); }
.premium-live-card-horizontal .live-badge { top: 0; right: 0; border-radius: 0 8px 0 8px; box-shadow: 0 10px 26px rgba(0,0,0,.26); }
.live-badge-paused, .live-badge-idle { color: #07110c; background: var(--broadcast-gold); }
.live-badge-completed { color: var(--text); background: var(--red); }
.countdown-chip { display: inline-flex; align-self: flex-start; flex: 0 0 auto; flex-direction: column; align-items: flex-end; justify-content: center; min-width: 68px; padding: .24rem .44rem; text-align: right; border: 1px solid rgba(255,255,255,.12); border-radius: 8px; background: rgba(255,255,255,.065); }
.countdown-chip span, .countdown-chip b { display: block; line-height: 1; }
.countdown-chip span { color: var(--muted); font-size: .52rem; font-weight: var(--ui-heavy-weight); text-transform: uppercase; }
.countdown-chip b { margin-top: .12rem; color: var(--broadcast-gold); font-size: .72rem; font-weight: var(--ui-heavy-weight); white-space: nowrap; }
.premium-stat-grid, .report-chart-strip, .finance-command-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; }
.premium-stat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.premium-stat-grid div, .report-chart-strip div { min-width: 0; padding: .7rem; border: 1px solid rgba(255,255,255,.1); border-radius: 8px; background: rgba(255,255,255,.055); }
.premium-stat-grid span, .report-chart-strip span { display: block; color: var(--muted); font-size: .66rem; font-weight: var(--ui-heavy-weight); text-transform: uppercase; }
.premium-stat-grid strong, .report-chart-strip strong { display: block; min-width: 0; margin-top: .2rem; color: var(--text); font-weight: var(--ui-heavy-weight); overflow-wrap: anywhere; }
@media (max-width: 1180px) {
    .landing-live-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
    .landing-live-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .landing-live-grid { grid-template-columns: 1fr; }
    .premium-live-card-horizontal { grid-template-columns: minmax(82px, 100px) minmax(0, 1fr); }
    .premium-live-card-horizontal .premium-card-media,
    .premium-live-card-horizontal .premium-card-media img { min-height: 0; }
    .premium-live-actions .btn { flex: 1 1 100%; }
}
.auth-shell-premium { grid-template-columns: minmax(260px, 420px) minmax(320px, 460px); align-items: stretch; gap: 1rem; padding: clamp(1rem, 3vw, 2rem); }
.auth-shell-aligned { min-height: calc(100vh - 92px); align-items: center; justify-content: center; }
.auth-shell-aligned .auth-card { align-self: center; width: min(100%, 460px); }
.auth-shell-aligned .secure-control-room-panel { min-height: min(520px, calc(100vh - 150px)); }
.secure-control-room-panel { position: relative; overflow: hidden; display: grid; align-content: end; min-height: 520px; padding: clamp(1rem, 2.6vw, 2rem); border: 1px solid rgba(255,255,255,.16); border-radius: 8px; background: linear-gradient(180deg, rgba(3,6,12,.18), rgba(3,6,12,.88)), var(--arena-bg) center / cover no-repeat; box-shadow: var(--shadow); }
.secure-control-room-panel h2 { max-width: 11ch; margin: 0 0 1rem; font-size: clamp(2rem, 4vw, 3.4rem); font-weight: var(--ui-heavy-weight); line-height: .92; text-transform: uppercase; overflow-wrap: anywhere; }
.secure-signal-grid { display: grid; gap: .55rem; }
.secure-signal-grid span { display: inline-flex; align-items: center; gap: .5rem; width: fit-content; max-width: 100%; padding: .5rem .65rem; border: 1px solid rgba(255,255,255,.13); border-radius: 999px; background: rgba(255,255,255,.08); font-size: .78rem; font-weight: 900; }
.readiness-checklist, .quick-action-rail, .report-export-grid, .projector-control-grid { display: flex; flex-wrap: wrap; gap: .5rem; }
.readiness-checklist span { display: inline-flex; align-items: center; gap: .35rem; padding: .36rem .52rem; border: 1px solid rgba(255,255,255,.1); border-radius: 999px; font-size: .68rem; font-weight: var(--ui-heavy-weight); text-transform: uppercase; }
.readiness-checklist .is-ready { color: #07110c; background: var(--broadcast-emerald); }
.readiness-checklist .is-pending { color: var(--broadcast-gold); background: rgba(255,212,90,.08); }
.quick-action-rail .btn, .quick-action-rail form { flex: 1 1 auto; }
.payment-state-card { display: grid; gap: .22rem; padding: .75rem; border: 1px solid rgba(255,255,255,.1); border-radius: 8px; background: rgba(255,255,255,.055); }
.payment-state-card span, .payment-state-card b { color: var(--muted); font-size: .72rem; font-weight: var(--ui-heavy-weight); text-transform: uppercase; }
.payment-state-card strong { font-size: 1.2rem; font-weight: var(--ui-heavy-weight); overflow-wrap: anywhere; }
.payment-state-card.is-paid b { color: var(--broadcast-emerald); }
.payment-state-card.is-due b { color: var(--broadcast-gold); }
.command-stepper { position: sticky; top: 0; z-index: 30; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .5rem; margin-bottom: 1rem; padding: .55rem; border: 1px solid rgba(255,255,255,.12); border-radius: 8px; background: rgba(3,6,12,.92); box-shadow: 0 16px 42px rgba(0,0,0,.32); backdrop-filter: blur(18px); }
.command-stepper a { min-width: 0; display: grid; gap: .1rem; padding: .58rem .66rem; color: var(--text); text-decoration: none; border: 1px solid rgba(255,255,255,.1); border-radius: 8px; background: rgba(255,255,255,.05); }
.command-stepper span, .command-step-section span { color: var(--broadcast-gold); font-size: .64rem; font-weight: var(--ui-heavy-weight); }
.command-stepper b { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .78rem; text-transform: uppercase; }
.command-step-section { scroll-margin-top: 150px; padding: .8rem; border: 1px solid rgba(255,255,255,.11); border-radius: 8px; background: linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .1), rgba(255,255,255,.035)); }
.command-step-section h3 { margin: .1rem 0 .25rem; font-size: 1rem; font-weight: var(--ui-heavy-weight); text-transform: uppercase; }
.command-step-section p { margin: 0; color: var(--muted); font-size: .84rem; }
.entity-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(160px, 220px); gap: .65rem; margin-bottom: .75rem; }
.bulk-delete-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto auto;
    align-items: center;
    gap: .75rem;
    margin: 0 0 .75rem;
    padding: .68rem .75rem;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background: rgba(255,255,255,.045);
}
.bulk-delete-panel span {
    color: var(--muted);
    font-size: .76rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}
.bulk-delete-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 96px;
    padding: .42rem .6rem;
    color: var(--muted);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 999px;
    background: rgba(255,255,255,.055);
    font-size: .72rem;
    font-weight: var(--ui-action-weight);
    text-transform: uppercase;
    white-space: nowrap;
}
.bulk-delete-panel .btn {
    justify-self: end;
    white-space: nowrap;
}
.bulk-selection-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .4rem;
}
.bulk-selection-actions .btn {
    min-height: 34px;
    padding: .42rem .58rem;
}
.bulk-delete-panel.is-selection-active {
    border-color: rgba(255,70,104,.44);
    background:
        linear-gradient(135deg, rgba(255,70,104,.13), rgba(255,255,255,.045)),
        rgba(255,255,255,.05);
    box-shadow: 0 16px 44px rgba(255,70,104,.08);
}
.bulk-delete-panel.is-selection-active .bulk-delete-count {
    color: #fff;
    border-color: rgba(255,70,104,.5);
    background: rgba(255,70,104,.24);
}
.bulk-delete-panel.is-locked {
    border-color: rgba(255,212,90,.18);
    background: rgba(255,212,90,.045);
}
.bulk-select-heading,
.bulk-select-cell {
    width: 76px;
    text-align: center;
}
.bulk-select-cell .form-check-input,
.bulk-card-check .form-check-input {
    float: none;
    margin: 0;
}
.bulk-card-check {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    color: var(--broadcast-gold);
    font-size: .72rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}
.btn-outline-danger {
    color: #ffb3c1;
    border-color: rgba(255,70,104,.45);
    background: rgba(255,70,104,.08);
}
.btn-outline-danger:hover {
    color: #fff;
    border-color: rgba(255,70,104,.7);
    background: rgba(255,70,104,.16);
}
.btn-danger {
    color: #fff;
    border-color: transparent;
    background: linear-gradient(135deg, #ff4668, #b41638);
    box-shadow: 0 14px 34px rgba(255,70,104,.25);
}
.btn:disabled {
    cursor: not-allowed;
    opacity: .55;
    transform: none;
    box-shadow: none;
}
.btn:disabled:hover {
    transform: none;
}
.mobile-card-list { display: none; gap: .75rem; }
.mobile-entity-card { display: grid; gap: .75rem; padding: .9rem; border: 1px solid rgba(255,255,255,.12); border-radius: 8px; background: rgba(255,255,255,.055); }
.mobile-entity-card.is-bulk-selected,
tr.is-bulk-selected {
    border-color: rgba(255,70,104,.42);
    background: rgba(255,70,104,.075);
}
.mobile-entity-card.is-bulk-selected .bulk-card-check {
    color: #fff;
    border-color: rgba(255,70,104,.46);
    background: rgba(255,70,104,.18);
}
.mobile-card-metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: .5rem; }
.mobile-card-metrics span { color: var(--muted); font-size: .72rem; font-weight: 900; }
.mobile-card-metrics b { display: block; color: var(--text); overflow-wrap: anywhere; }
.sticky-bid-stage { position: sticky; top: 86px; }
.audience-priority-shell .public-current-panel { box-shadow: 0 34px 120px rgba(0,0,0,.52), 0 0 0 1px rgba(var(--brand-cyan-rgb), .12) inset; }
.live-drawer-trigger, .live-timeline-drawer, .live-timeline-backdrop { display: none; }
.projector-header-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .5rem; }
.projector-control-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.report-export-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 1rem 0 1.5rem; }
.report-export-card { min-width: 0; display: grid; gap: .35rem; padding: 1rem; color: var(--text); text-align: left; text-decoration: none; border: 1px solid rgba(255,255,255,.12); border-radius: 8px; background: rgba(255,255,255,.055); cursor: pointer; }
.report-export-card i { color: var(--broadcast-gold); }
.report-export-card span { font-weight: var(--ui-heavy-weight); text-transform: uppercase; }
.report-export-card small { color: var(--muted); }

.report-graphic-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 1rem;
    margin: 1.25rem 0 1.5rem;
}

.report-graphic-card {
    min-width: 0;
    display: grid;
    gap: .8rem;
    padding: 1rem;
    border: 1px solid rgba(var(--brand-cyan-rgb), .22);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .14), rgba(var(--brand-magenta-rgb), .08)),
        rgba(255,255,255,.045);
    box-shadow: 0 18px 46px rgba(0,0,0,.22);
}

.report-graphic-card-prime {
    background:
        linear-gradient(135deg, rgba(255,212,90,.24), rgba(var(--brand-magenta-rgb), .08)),
        rgba(255,255,255,.05);
}

.report-graphic-head span {
    color: var(--broadcast-gold);
    font-size: .68rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.report-graphic-head h2 {
    margin: .1rem 0 0;
    font-size: 1.05rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.report-rank-row {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    align-items: center;
    gap: .75rem;
    padding: .7rem;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background: rgba(4,8,20,.48);
}

.report-rank-row > b {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    color: #07101f;
    background: var(--broadcast-gold);
    font-weight: var(--ui-heavy-weight);
}

.report-rank-row span {
    min-width: 0;
    color: var(--text);
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.report-rank-row small {
    display: block;
    margin-top: .1rem;
    color: var(--muted);
    font-size: .72rem;
    font-weight: 800;
    text-transform: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.report-rank-row strong {
    color: var(--brand-cyan);
    font-weight: var(--ui-heavy-weight);
    white-space: nowrap;
}

.team-graphic-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.team-contact-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.team-contact-graphic {
    min-width: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: .85rem;
    padding: 1rem;
    border: 1px solid rgba(var(--brand-cyan-rgb), .22);
    border-radius: 8px;
    background:
        radial-gradient(circle at 12% 10%, rgba(var(--brand-cyan-rgb), .18), transparent 28%),
        linear-gradient(145deg, rgba(9,20,38,.96), rgba(18,18,42,.92) 58%, rgba(5,7,13,.98));
    box-shadow: 0 20px 54px rgba(0,0,0,.28);
}

.team-contact-head {
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr);
    align-items: center;
    gap: .85rem;
}

.team-contact-logo {
    width: 70px;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 8px;
    background: linear-gradient(135deg, #50e6ff, #8f7dff 48%, #d83cff);
}

.team-contact-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.team-contact-logo span {
    color: #fff;
    font-weight: var(--ui-heavy-weight);
}

.team-contact-head span {
    color: var(--broadcast-gold);
    font-size: .68rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.team-contact-head h3 {
    margin: .05rem 0 .12rem;
    color: #fff;
    font-size: clamp(1.05rem, 2vw, 1.42rem);
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.team-contact-head p {
    margin: 0;
    color: var(--muted);
    font-weight: 850;
}

.team-contact-player-list {
    display: grid;
    gap: .55rem;
}

.team-contact-player {
    min-width: 0;
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) auto minmax(112px, auto) 36px;
    align-items: center;
    gap: .65rem;
    padding: .62rem;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background: rgba(255,255,255,.06);
}

.team-contact-player > b {
    color: var(--broadcast-gold);
    font-weight: var(--ui-heavy-weight);
}

.team-contact-player > span {
    min-width: 0;
    color: #fff;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.team-contact-player small {
    display: block;
    margin-top: .08rem;
    color: var(--muted);
    font-size: .72rem;
    font-weight: 850;
    text-transform: capitalize;
}

.team-contact-player > strong {
    color: var(--broadcast-emerald);
    font-weight: var(--ui-heavy-weight);
    white-space: nowrap;
}

.team-contact-player-phone {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: .35rem;
    color: var(--brand-cyan);
    font-style: normal;
    font-weight: var(--ui-heavy-weight);
    white-space: nowrap;
}

.team-contact-player .team-graphic-player-action {
    justify-self: end;
}

.completed-team-graphics {
    margin-top: 1rem;
    padding: 1rem;
    border: 1px solid rgba(var(--brand-cyan-rgb), .2);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(9,20,38,.86), rgba(18,18,42,.78)),
        rgba(255,255,255,.035);
    box-shadow: 0 24px 70px rgba(0,0,0,.24);
}

.completed-team-graphics.d-none {
    display: none !important;
}

.is-auction-completed [data-live-auction-surface] {
    display: none !important;
}

.is-auction-completed .completed-team-graphics {
    display: block;
}

.is-auction-completed .public-completed-graphics,
.is-auction-completed .projector-completed-graphics {
    margin-top: 1rem;
}

.completed-team-graphics-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .9rem;
}

.completed-team-graphics-head h2 {
    color: #fff;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.completed-team-graphics-head > span {
    color: var(--muted);
    font-size: .9rem;
    font-weight: 800;
    text-align: right;
}

.completed-team-graphics .team-graphic-grid {
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}

.completed-team-graphics .team-graphic-grid > .empty-state {
    grid-column: 1 / -1;
}

.public-completed-graphics {
    margin-bottom: 1rem;
}

.public-completed-graphics .team-graphic-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
}

.public-completed-graphics .whatsapp-squad-graphic {
    grid-template-rows: auto auto auto;
    min-height: 0;
    height: auto;
    overflow: visible;
}

.public-completed-graphics .team-graphic-player-list-compact {
    max-height: none;
    overflow: visible;
    padding-right: 0;
}

.projector-completed-graphics {
    position: relative;
    z-index: 3;
    margin: .8rem 1.25rem 1.25rem;
    max-height: 58vh;
    overflow-y: auto;
    scrollbar-width: thin;
}

.projector-completed-graphics .team-graphic-grid {
    grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
}

.projector-completed-graphics .whatsapp-squad-graphic {
    min-height: 520px;
}

.team-graphic-open-page {
    display: grid;
    padding: 1rem 0 2rem;
}

.whatsapp-squad-graphic {
    position: relative;
    min-width: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: .9rem;
    overflow: hidden;
    min-height: 560px;
    padding: 1rem;
    border: 1px solid rgba(var(--brand-cyan-rgb), .25);
    border-radius: 8px;
    background:
        radial-gradient(circle at 12% 10%, rgba(var(--brand-cyan-rgb), .22), transparent 28%),
        linear-gradient(145deg, rgba(9,20,38,.96), rgba(20,18,45,.94) 58%, rgba(5,7,13,.98));
    box-shadow: 0 22px 60px rgba(0,0,0,.3);
}

.whatsapp-squad-graphic[class*="sport-"],
.team-contact-graphic[class*="sport-"] {
    border-color: color-mix(in srgb, var(--sport-primary, var(--brand-cyan)) 34%, rgba(255,255,255,.14));
    background:
        linear-gradient(135deg, color-mix(in srgb, var(--sport-primary, var(--brand-cyan)) 18%, transparent), transparent 36%),
        linear-gradient(310deg, color-mix(in srgb, var(--sport-accent, var(--brand-magenta)) 14%, transparent), transparent 42%),
        linear-gradient(145deg, rgba(9,20,38,.96), rgba(20,18,45,.94) 58%, rgba(5,7,13,.98));
}

.whatsapp-squad-graphic::after {
    content: "";
    position: absolute;
    inset: 0 0 auto auto;
    width: 45%;
    height: 38%;
    background: linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .12), rgba(var(--brand-magenta-rgb), .05));
    clip-path: polygon(22% 0, 100% 0, 100% 100%, 0 72%);
    pointer-events: none;
}

.whatsapp-squad-graphic[class*="sport-"]::after {
    background: linear-gradient(135deg, color-mix(in srgb, var(--sport-primary, var(--brand-cyan)) 18%, transparent), color-mix(in srgb, var(--sport-accent, var(--brand-magenta)) 8%, transparent));
}

.whatsapp-squad-graphic-large {
    width: min(100%, 680px);
}

.team-graphic-open-page .whatsapp-squad-graphic-large {
    width: 100%;
    max-width: none;
    min-height: 0;
    overflow: visible;
}

.whatsapp-graphic-head {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    align-items: center;
    gap: .9rem;
}

.team-graphic-logo {
    width: 76px;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,.2);
    background: linear-gradient(135deg, #50e6ff, #8f7dff 48%, #d83cff);
    box-shadow: 0 14px 34px rgba(0,0,0,.26);
}

.whatsapp-squad-graphic[class*="sport-"] .team-graphic-logo,
.team-contact-graphic[class*="sport-"] .team-contact-logo {
    background: linear-gradient(135deg, var(--sport-primary, var(--brand-cyan)), var(--sport-third, var(--brand-blue)) 48%, var(--sport-accent, var(--brand-magenta)));
}

.team-graphic-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.team-graphic-logo span {
    color: #fff;
    font-weight: var(--ui-heavy-weight);
    text-align: center;
}

.whatsapp-graphic-head span,
.graphic-powered {
    color: var(--broadcast-gold);
    font-size: .68rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.whatsapp-graphic-head h3 {
    margin: .05rem 0 .12rem;
    color: #fff;
    font-size: clamp(1.1rem, 2vw, 1.55rem);
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
}

.whatsapp-graphic-head p {
    margin: 0;
    color: var(--muted);
    font-weight: 850;
}

.team-graphic-player-list {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: start;
    gap: .7rem;
    min-height: 0;
}

.team-graphic-player-list-compact {
    grid-template-columns: 1fr;
    max-height: 340px;
    overflow-y: auto;
    padding-right: .2rem;
    scrollbar-width: thin;
}

.team-graphic-player-list-full {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    max-height: none;
    overflow: visible;
    padding-right: 0;
}

.team-graphic-player-list-full .team-graphic-player {
    color: #f7fbff;
    background:
        radial-gradient(circle at 88% 8%, color-mix(in srgb, var(--card-accent-2, var(--brand-cyan)) 24%, transparent), transparent 34%),
        linear-gradient(145deg, color-mix(in srgb, var(--card-accent, var(--broadcast-gold)) 22%, #070b16), #070914 58%, color-mix(in srgb, var(--card-accent-2, var(--brand-cyan)) 12%, #05070d));
    border-color: color-mix(in srgb, var(--card-accent, #ffffff) 42%, rgba(255,255,255,.12));
    border-left: 4px solid var(--card-accent, var(--broadcast-gold));
    box-shadow: 0 18px 46px rgba(0,0,0,.3);
}

.team-graphic-player {
    position: relative;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    align-items: stretch;
    gap: .55rem;
    min-width: 0;
    padding: .62rem;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    background: rgba(255,255,255,.07);
}

.team-graphic-player-photo {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 5;
    display: block;
    overflow: hidden;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(255,255,255,.08);
}

.team-graphic-player-list-full .team-graphic-player-photo {
    aspect-ratio: 1;
    border-color: rgba(255,255,255,.34);
}

.team-graphic-category-sticker {
    position: absolute;
    left: .55rem;
    bottom: .55rem;
    max-width: calc(100% - 1.1rem);
    padding: .28rem .55rem;
    color: #07101f;
    background: linear-gradient(135deg, var(--card-accent, var(--broadcast-gold)), var(--card-accent-2, var(--brand-cyan)));
    border: 1px solid rgba(255,255,255,.26);
    border-radius: 999px;
    font-size: .72rem;
    font-weight: var(--ui-heavy-weight);
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-shadow: 0 12px 24px rgba(0,0,0,.3);
}

.team-graphic-player-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.team-graphic-player-compact {
    grid-template-columns: 52px auto minmax(0, 1fr) auto auto;
    grid-template-rows: none;
    align-items: center;
    gap: .58rem;
    padding: .55rem;
}

.team-graphic-player-compact .team-graphic-player-photo {
    width: 52px;
    aspect-ratio: 1;
}

.team-graphic-player-compact > b {
    color: var(--broadcast-gold);
    font-weight: var(--ui-heavy-weight);
    white-space: nowrap;
}

.team-graphic-player-name {
    min-width: 0;
    color: #fff;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.team-graphic-player-name small {
    display: block;
    margin-top: .08rem;
    color: var(--muted);
    font-size: .72rem;
    font-weight: 850;
    text-transform: capitalize;
}

.team-graphic-player-compact > strong {
    color: var(--broadcast-emerald);
    font-weight: var(--ui-heavy-weight);
    white-space: nowrap;
}

.team-contact-player.team-graphic-player-compact {
    grid-template-columns: 52px 52px minmax(0, 1fr) auto minmax(112px, auto) 36px;
    grid-template-rows: none;
}

.team-contact-player .team-contact-player-photo {
    width: 52px;
    aspect-ratio: 1;
}

.team-contact-player .team-contact-player-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.team-graphic-player-copy {
    min-width: 0;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .28rem .45rem;
    align-items: start;
}

.team-graphic-player-copy b {
    color: var(--broadcast-gold);
    font-weight: var(--ui-heavy-weight);
}

.team-graphic-player-copy span {
    min-width: 0;
    color: #fff;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.team-graphic-player-copy small {
    display: block;
    margin-top: .08rem;
    color: var(--muted);
    font-size: .72rem;
    font-weight: 850;
}

.team-graphic-player-copy strong {
    grid-column: 1 / -1;
    color: var(--broadcast-emerald);
    font-weight: var(--ui-heavy-weight);
    white-space: nowrap;
}

.team-graphic-player-action {
    width: 36px;
    height: 36px;
    min-width: 36px;
    display: inline-grid;
    place-items: center;
    color: #f7fbff;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 8px;
    background: rgba(255,255,255,.08);
}

.team-graphic-player:not(.team-graphic-player-compact) .team-graphic-player-action {
    position: absolute;
    right: .7rem;
    bottom: .7rem;
    z-index: 3;
    background: rgba(5,7,13,.78);
    backdrop-filter: blur(8px);
}

.team-graphic-actions {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: stretch;
    align-self: end;
}

.team-graphic-actions .btn {
    min-height: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

[data-team-graphic-download].is-loading,
[data-player-graphic-download].is-loading {
    cursor: wait;
    opacity: .82;
    pointer-events: none;
}

[data-team-graphic-download].is-loading {
    gap: .45rem;
    min-width: 132px;
}

[data-player-graphic-download].is-loading {
    color: #f7fbff;
}

.graphic-powered {
    position: relative;
    z-index: 1;
    text-align: right;
}

.report-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .85rem;
}

.report-section-head h2 {
    margin: 0;
}

.report-section-head .form-control {
    max-width: 320px;
}

.report-disclosure-section {
    overflow: hidden;
}

.report-disclosure-summary {
    cursor: pointer;
    list-style: none;
}

.report-disclosure-summary::-webkit-details-marker {
    display: none;
}

.report-disclosure-cue {
    width: 34px;
    height: 34px;
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 999px;
    color: var(--muted);
    background: rgba(255,255,255,.055);
    transition: transform .18s ease, color .18s ease, border-color .18s ease;
}

.report-disclosure-section[open] .report-disclosure-cue {
    color: var(--text);
    border-color: rgba(var(--brand-cyan-rgb), .32);
    transform: rotate(180deg);
}

.report-section-tools {
    display: flex;
    justify-content: flex-end;
    margin: -.15rem 0 .85rem;
}

.report-section-tools .form-control {
    max-width: 320px;
}

.copy-link-inline {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    min-width: 0;
}

.account-security-card {
    max-width: 560px;
}

.organiser-reset-form {
    display: grid;
    grid-template-columns: minmax(150px, 1fr) minmax(130px, 1fr) auto;
    gap: .5rem;
    align-items: center;
}

.super-admin-dashboard .dashboard-pro-card {
    background:
        linear-gradient(145deg, rgba(11,18,31,.94), rgba(17,22,36,.9)),
        rgba(255,255,255,.04);
}

.super-admin-tournament-mark {
    width: 64px;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border: 1px solid rgba(var(--brand-cyan-rgb), .32);
    border-radius: 8px;
    color: var(--brand-cyan);
    background: rgba(var(--brand-cyan-rgb), .1);
}

.super-admin-tournament-mark i {
    font-size: 1.35rem;
}

.quick-copy-link .btn {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.quick-copy-link .icon-action,
.copy-link-inline .icon-action {
    flex: 0 0 38px;
}
.responsive-label { overflow-wrap: anywhere; }

.auction-room .page-head {
    align-items: center;
    flex-wrap: nowrap;
}

.auction-room .page-head > div:first-child {
    flex: 1 1 auto;
    min-width: 0;
}

.auction-room .page-head h1 {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.auction-room-actions .btn {
    min-height: 40px;
}

.auction-room-actions {
    justify-content: flex-end;
    margin-left: auto;
}

.auction-room-actions [data-mobile-hint] {
    position: relative;
}

.team-row .team-name-stack strong,
.team-bid-button span {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.08;
}

.btn-next-player-xl {
    flex: 3.4 1 360px;
    min-width: min(100%, 360px);
    min-height: 54px;
    font-size: 1.02rem;
    font-weight: var(--ui-heavy-weight);
    white-space: nowrap;
    justify-content: center;
}

.quick-row .btn-next-player-xl {
    flex: 3.4 1 360px;
    min-width: min(100%, 360px);
}

.auction-grid-equal-height {
    align-items: start;
}

.auction-grid-equal-height > .control-card {
    height: auto;
}

.auction-grid-equal-height .auction-timeline-panel {
    height: var(--club-bank-height, auto);
    max-height: var(--club-bank-height, min(78vh, 760px));
}

.player-horizontal-card-list {
    display: grid;
    gap: .75rem;
}

.player-horizontal-card-list ~ .player-table-legacy {
    display: none;
}

.player-horizontal-card-list .mobile-entity-card {
    grid-template-columns: 84px minmax(0, 1fr) auto auto;
    align-items: center;
    min-height: 112px;
    padding: .75rem;
}

.player-horizontal-card-list.has-bulk-select .mobile-entity-card {
    grid-template-columns: minmax(74px, max-content) 84px minmax(0, 1fr) auto auto;
}

.player-horizontal-media {
    width: 84px;
    height: 84px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 8px;
    background: rgba(255,255,255,.06);
}

.player-horizontal-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.player-horizontal-main {
    min-width: 0;
}

.player-horizontal-main h3 {
    margin: .25rem 0 .45rem;
    font-size: 1.06rem;
    font-weight: var(--ui-heavy-weight);
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.player-horizontal-actions {
    justify-content: end;
    justify-self: end;
}

.player-horizontal-card-list .bulk-card-check {
    align-self: center;
    padding: .46rem .55rem;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 8px;
    background: rgba(255,255,255,.055);
    white-space: nowrap;
}

.mobile-entity-card.is-progressive-hidden {
    display: none !important;
}

.progressive-list-footer {
    display: none;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-top: .75rem;
    padding: .75rem;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    color: var(--muted);
    background: rgba(255,255,255,.04);
}

.progressive-list-footer[hidden] {
    display: none !important;
}

.progressive-list-footer span {
    font-size: .78rem;
    font-weight: var(--ui-value-weight);
    text-transform: uppercase;
}

.broadcast-match-tile .match-tile-art,
.broadcast-match-tile .match-tile-art img {
    min-height: 112px;
}

.broadcast-match-tile .match-card-top,
.broadcast-match-tile .premium-card-body {
    padding: .85rem;
}

.broadcast-match-tile .match-card-stats {
    gap: .5rem;
}

.broadcast-match-tile .match-card-stats div,
.broadcast-match-tile .payment-state-card,
.broadcast-match-tile .match-status-ribbon {
    padding: .55rem .62rem;
}

.broadcast-match-tile .avatar-lg {
    width: 54px;
    height: 54px;
}

.dashboard-horizontal-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-auto-rows: auto;
    align-items: stretch;
    gap: 0;
}

.dashboard-horizontal-card .match-tile-art {
    grid-row: 1 / span 8;
    align-self: stretch;
    min-height: 100%;
    height: 100%;
}

.dashboard-horizontal-card .match-tile-art img {
    min-height: 100%;
    height: 100%;
}

.dashboard-horizontal-card .match-card-top,
.dashboard-horizontal-card .match-status-ribbon,
.dashboard-horizontal-card .match-card-stats,
.dashboard-horizontal-card .card-meta,
.dashboard-horizontal-card .payment-state-card,
.dashboard-horizontal-card .share-box,
.dashboard-horizontal-card .quick-action-rail {
    grid-column: 1;
    margin-left: .9rem;
    margin-right: .9rem;
}

.dashboard-horizontal-card .match-card-top {
    margin-top: .85rem;
    padding: 0;
}

.dashboard-horizontal-card .match-status-ribbon,
.dashboard-horizontal-card .match-card-stats,
.dashboard-horizontal-card .card-meta,
.dashboard-horizontal-card .payment-state-card,
.dashboard-horizontal-card .share-box,
.dashboard-horizontal-card .quick-action-rail {
    margin-top: .65rem !important;
}

.dashboard-horizontal-card .quick-action-rail {
    margin-bottom: .85rem;
}

.dashboard-horizontal-card .match-card-stats span,
.premium-stat-grid span {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.dashboard-compact-card {
    min-height: 0;
}

.dashboard-compact-card.dashboard-horizontal-card {
    grid-template-columns: minmax(0, 1fr);
}

.dashboard-compact-card .match-tile-art,
.dashboard-compact-card .match-tile-art img {
    min-height: 156px;
}

.dashboard-compact-card .live-badge {
    top: .55rem;
    right: .55rem;
    padding: .28rem .45rem;
    font-size: .58rem;
}

.dashboard-compact-card .match-card-top,
.dashboard-compact-card .match-status-ribbon,
.dashboard-compact-card .match-card-stats,
.dashboard-compact-card .card-meta,
.dashboard-compact-card .payment-state-card,
.dashboard-compact-card .share-box,
.dashboard-compact-card .quick-action-rail {
    margin-left: .68rem;
    margin-right: .68rem;
}

.dashboard-compact-card .match-card-top {
    margin-top: .68rem;
    gap: .62rem;
}

.dashboard-compact-card .avatar-lg {
    width: 42px;
    height: 42px;
}

.dashboard-compact-card .eyebrow {
    margin-bottom: .16rem;
    font-size: .58rem;
}

.dashboard-compact-card h2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: .96rem;
    line-height: 1.05;
}

.dashboard-compact-card .match-card-stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.dashboard-compact-card .match-card-stats div,
.dashboard-compact-card .match-card-stats a,
.dashboard-compact-card .payment-state-card,
.dashboard-compact-card .match-status-ribbon {
    padding: .42rem .5rem;
}

.dashboard-compact-card .match-card-stats span,
.dashboard-compact-card .payment-state-card span,
.dashboard-compact-card .payment-state-card b {
    font-size: .58rem;
}

.dashboard-compact-card .match-card-stats strong,
.dashboard-compact-card .payment-state-card strong {
    font-size: .86rem;
}

.dashboard-compact-card .readiness-checklist span {
    padding: .28rem .42rem;
    font-size: .56rem;
}

.dashboard-compact-card .card-meta {
    gap: .35rem;
    font-size: .72rem;
}

.dashboard-compact-card .quick-action-rail {
    display: grid;
    grid-template-columns: repeat(4, minmax(38px, 1fr));
    gap: .35rem;
}

.dashboard-compact-card .quick-action-rail .btn,
.dashboard-compact-card .quick-action-rail form {
    min-width: 0;
}

.dashboard-url-box {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 34px;
    align-items: center;
    gap: .35rem;
    padding: .42rem .45rem .42rem .58rem;
}

.dashboard-url-box span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-url-box .icon-action {
    width: 34px;
    height: 34px;
    min-width: 34px;
}

.dashboard-pro-card {
    position: relative;
    border-color: rgba(105,137,255,.34);
    background:
        linear-gradient(145deg, rgba(33,42,67,.94), rgba(21,26,44,.95) 58%, rgba(47,30,78,.8)),
        rgba(14,18,31,.96);
    box-shadow: 0 22px 70px rgba(0,0,0,.38);
}

.dashboard-pro-card::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    background: linear-gradient(90deg, rgba(78,178,255,.9), rgba(162,65,255,.9)) top / 100% 4px no-repeat;
}

.dashboard-pro-card .match-tile-art {
    display: none;
}

.dashboard-pro-card .live-badge {
    color: #06110b;
    background: #55f3a0;
    font-weight: 760;
}

.dashboard-pro-card .eyebrow,
.dashboard-pro-card .match-card-stats span,
.dashboard-pro-card .payment-state-card span,
.dashboard-pro-card .payment-state-card b,
.dashboard-payment-mini,
.dashboard-pro-card .readiness-checklist span,
.status-pill,
.countdown-chip span,
.premium-stat-grid span,
.report-chart-strip span,
.payment-state-card span,
.payment-state-card b {
    font-weight: 720;
}

.dashboard-pro-card h2 {
    font-weight: 820;
    text-transform: none;
    letter-spacing: 0;
}

.dashboard-card-top {
    align-items: center;
    gap: .72rem;
}

.dashboard-card-top .avatar-lg {
    width: 52px;
    height: 52px;
    border-radius: 12px;
}

.dashboard-card-main {
    display: grid;
    gap: .38rem;
}

.dashboard-title-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: .55rem;
}

.dashboard-title-row .status-pill {
    white-space: nowrap;
}

.dashboard-payment-mini {
    width: fit-content;
    padding: .22rem .48rem;
    border-radius: 999px;
    font-size: .62rem;
    line-height: 1;
    text-transform: uppercase;
}

.dashboard-payment-mini.is-paid {
    color: #07110c;
    background: rgba(85,243,160,.92);
}

.dashboard-payment-mini.is-due {
    color: #ffd45a;
    background: rgba(255,212,90,.14);
}

.dashboard-pro-card .match-status-ribbon {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    background: rgba(255,255,255,.075);
}

.dashboard-pro-card .match-status-ribbon span {
    color: var(--broadcast-gold);
    font-weight: 820;
}

.dashboard-pro-card .match-status-ribbon b,
.dashboard-pro-card .match-card-stats strong,
.dashboard-pro-card .payment-state-card strong {
    font-weight: 820;
}

.dashboard-pro-card .match-card-stats div,
.dashboard-pro-card .match-card-stats a,
.dashboard-stat-link,
.dashboard-stat-static {
    background: rgba(6,10,22,.62);
    border-color: rgba(255,255,255,.09);
}

.dashboard-stat-link {
    cursor: pointer;
}

.dashboard-stat-link:hover {
    border-color: rgba(85,243,160,.38);
    background: rgba(85,243,160,.12);
}

.dashboard-pro-card .readiness-checklist .is-ready {
    background: rgba(85,243,160,.18);
    color: #7dffbc;
    border-color: rgba(85,243,160,.34);
}

.dashboard-pro-card .readiness-checklist .is-pending {
    background: rgba(255,212,90,.12);
}

.dashboard-pro-card .quick-action-rail .btn {
    min-height: 44px;
    padding: .48rem .5rem;
    background: rgba(255,255,255,.06);
    border-color: rgba(255,255,255,.18);
    font-size: .84rem;
}

.dashboard-pro-card .quick-action-rail {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(112px, 1fr));
    align-items: stretch;
}

.dashboard-pro-card .quick-action-rail .btn-neon {
    color: #fff;
    background: linear-gradient(135deg, #32b4ff, #8d3cff);
    border: 0;
}

/* dense-ui-type-polish */
:root {
    --ui-label-weight: 680;
    --ui-value-weight: 760;
    --ui-action-weight: 720;
}

.match-card-stats span,
.premium-stat-grid span,
.report-chart-strip span,
.payment-state-card span,
.payment-state-card b,
.mobile-card-metrics span,
.responsive-label::before,
.status-icon-pill,
.report-export-card span,
.command-stepper span,
.command-step-section span,
.entity-list-head span,
.countdown-chip span,
.secure-signal-grid span,
.readiness-checklist span {
    font-weight: var(--ui-label-weight);
}

.match-card-stats strong,
.premium-stat-grid strong,
.report-chart-strip strong,
.payment-state-card strong,
.mobile-card-metrics b,
.entity-text-strong,
.report-rank-row strong,
.dashboard-pro-card .match-status-ribbon span,
.dashboard-pro-card .match-status-ribbon b,
.dashboard-pro-card .match-card-stats strong,
.dashboard-pro-card .payment-state-card strong {
    font-weight: var(--ui-value-weight);
}

.btn,
.icon-action,
.report-export-card small,
.command-stepper b {
    font-weight: var(--ui-action-weight);
}

/* .dashboard-icon-polish */
.dashboard-pro-card .match-card-stats i,
.dashboard-pro-card .card-meta i,
.dashboard-pro-card .payment-state-card i {
    width: 1.05em;
    color: rgba(213, 226, 255, .72);
}

.dashboard-pro-card .quick-action-rail i,
.dashboard-url-box .icon-action i {
    color: currentColor;
    opacity: .88;
}

.team-badge-center {
    display: grid !important;
    place-items: center;
    align-items: center;
    justify-items: center;
    text-align: center;
    line-height: 1;
}

.summary-card-head .team-badge-center,
.summary-card-head .summary-team-badge {
    display: grid !important;
    place-items: center !important;
}

.summary-card-head .summary-team-badge:not(.team-logo-badge) {
    color: #07110c;
    background:
        radial-gradient(circle at 28% 20%, rgba(255,255,255,.62), transparent 30%),
        linear-gradient(135deg, var(--broadcast-gold), var(--broadcast-emerald));
    border-color: rgba(255,255,255,.55);
    text-shadow: none;
}

.team-badge-center img {
    margin: auto;
}

@media (max-width: 1100px) {
    .finance-command-grid, .report-chart-strip, .report-export-grid, .report-graphic-grid, .team-graphic-grid, .team-contact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .sticky-bid-stage { position: relative; top: auto; }
    .auction-room .page-head {
        align-items: flex-start;
        flex-wrap: wrap;
    }
    .auction-room .page-head h1 {
        white-space: normal;
    }
}

@media (max-width: 760px) {
    .auth-shell-premium { grid-template-columns: 1fr; min-height: auto; padding-block: 1.25rem 2rem; }
    .secure-control-room-panel { min-height: 280px; }
    .premium-stat-grid, .finance-command-grid, .report-chart-strip, .report-export-grid, .report-graphic-grid, .team-graphic-grid, .team-contact-grid { grid-template-columns: 1fr; }
    .public-completed-graphics .team-graphic-grid { grid-template-columns: 1fr; }
    .team-contact-player.team-graphic-player-compact {
        grid-template-columns: 44px minmax(0, 1fr) 36px;
    }
    .team-contact-player .team-contact-player-photo {
        display: none;
    }
    .team-contact-player > strong,
    .team-contact-player-phone {
        grid-column: 2 / -1;
        justify-self: start;
        justify-content: flex-start;
    }
    .completed-team-graphics-head {
        align-items: flex-start;
        flex-direction: column;
    }
    .completed-team-graphics-head > span {
        text-align: left;
    }
    .organiser-reset-form {
        grid-template-columns: 1fr;
    }
    .command-stepper { position: relative; top: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .entity-toolbar { grid-template-columns: 1fr; }
    .bulk-delete-panel {
        grid-template-columns: 1fr;
        align-items: stretch;
    }
    .bulk-selection-actions,
    .bulk-delete-panel .btn {
        justify-content: stretch;
        justify-self: stretch;
    }
    .bulk-selection-actions .btn {
        flex: 1 1 120px;
    }
    .bulk-delete-count {
        width: 100%;
    }
    .mobile-card-list { display: grid; }
    .mobile-card-list + .table-shell,
    .mobile-card-list + .progressive-list-footer + .table-shell { display: none; }
    .entity-list-card .table, .responsive-report-table { min-width: 0; }
    .entity-list-card thead, .responsive-report-table thead { display: none; }
    .entity-list-card table, .entity-list-card tbody, .entity-list-card tr, .entity-list-card td, .responsive-report-table, .responsive-report-table tbody, .responsive-report-table tr, .responsive-report-table td { display: block; width: 100%; }
    .entity-list-card tr, .responsive-report-table tr { margin: .75rem; padding: .75rem; border: 1px solid rgba(255,255,255,.12); border-radius: 8px; background: rgba(255,255,255,.045); }
    .entity-list-card td, .responsive-report-table td { height: auto; padding: .45rem 0; border: 0; }
    .responsive-label::before { content: attr(data-label); display: block; margin-bottom: .12rem; color: var(--muted); font-size: .62rem; font-weight: var(--ui-heavy-weight); text-transform: uppercase; }
    .is-icon-compact .btn-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
    .is-icon-compact .btn { min-width: 42px; padding-inline: .62rem; }
    .auction-room-actions {
        gap: .45rem !important;
    }
    .auction-room-actions .btn,
    .auction-room-actions a.btn {
        min-width: 52px;
        min-height: 48px;
        padding: .45rem .55rem .95rem;
    }
    .auction-room-actions .btn i,
    .auction-room-actions a.btn i {
        margin-right: 0 !important;
    }
    .auction-room-actions [data-mobile-hint]::after {
        content: attr(data-mobile-hint);
        position: absolute;
        right: .28rem;
        bottom: .2rem;
        max-width: calc(100% - .56rem);
        padding: .03rem .2rem;
        overflow: hidden;
        border-radius: 999px;
        color: var(--text);
        background: rgba(255,255,255,.13);
        font-size: .46rem;
        font-weight: var(--ui-value-weight);
        line-height: 1.25;
        text-overflow: ellipsis;
        text-transform: uppercase;
        white-space: nowrap;
    }
    .progressive-list-footer {
        display: flex;
    }
    .report-disclosure-summary {
        margin-bottom: .65rem;
    }
    .report-section-tools,
    .report-section-tools .form-control {
        max-width: none;
        width: 100%;
    }
    .player-horizontal-card-list .mobile-entity-card {
        grid-template-columns: 72px minmax(0, 1fr);
    }
    .player-horizontal-actions,
    .player-horizontal-card-list .status-icon-pill {
        grid-column: 1 / -1;
        justify-self: start;
    }
    .player-horizontal-media {
        width: 72px;
        height: 72px;
    }
    .dashboard-horizontal-card {
        grid-template-columns: 1fr;
    }
    .dashboard-horizontal-card .match-tile-art {
        grid-row: auto;
        min-height: 132px;
        height: 132px;
    }
    .dashboard-horizontal-card .match-card-top,
    .dashboard-horizontal-card .match-status-ribbon,
    .dashboard-horizontal-card .match-card-stats,
    .dashboard-horizontal-card .readiness-checklist,
    .dashboard-horizontal-card .card-meta,
    .dashboard-horizontal-card .payment-state-card,
    .dashboard-horizontal-card .share-box,
    .dashboard-horizontal-card .quick-action-rail {
        grid-column: 1;
        margin-left: .85rem;
        margin-right: .85rem;
    }
    .dashboard-compact-card .match-card-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .quick-row .btn-next-player-xl {
        flex-basis: 100%;
        min-width: 100%;
        padding-inline: .9rem;
    }
    .public-timeline-panel { display: none; }
    .live-drawer-trigger { display: inline-flex; }
    .live-timeline-drawer { position: fixed; inset: auto 0 0; z-index: 30; display: grid; max-height: 78vh; gap: .75rem; padding: 3rem 1rem 1rem; overflow: auto; border: 1px solid rgba(255,255,255,.16); border-radius: 8px 8px 0 0; background: rgba(3,6,12,.94); backdrop-filter: blur(18px); transform: translateY(105%); transition: transform .2s ease; }
    .live-timeline-drawer.is-open { transform: translateY(0); }
    .live-timeline-backdrop { position: fixed; inset: 0; z-index: 29; display: none; background: rgba(0,0,0,.45); }
    .live-timeline-backdrop.is-open { display: block; }
    .projector-control-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    /* .projector-mobile-safe */
    .projector-body {
        overflow-y: auto;
    }
    .projector-screen {
        min-height: 100svh;
        height: auto;
        overflow-x: hidden;
        overflow-y: auto;
    }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}

/* final-conversion-polish */
.fw-black,
.brand-lockup strong,
.brand-context small,
.eyebrow,
.navbar-nav .nav-link,
.team-bid-button,
.draw-card,
.entity-form-head p {
    font-weight: var(--ui-value-weight, 760);
}

.page-head h1,
.section-title,
.hero-title,
.projector-header h1,
.bid-amount,
.scoreboard-price {
    font-weight: var(--ui-heavy-weight);
}

.btn,
.nav-link,
.status-pill,
.category-chip,
.base-price-chip,
.live-badge {
    font-weight: var(--ui-action-weight, 720);
}

.landing-live-chip {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    padding: .34rem .5rem;
    color: #07110c;
    border-radius: 999px;
    background: var(--broadcast-emerald);
    font-size: .68rem;
    font-weight: var(--ui-action-weight);
    text-transform: uppercase;
}

.landing-bid-stack {
    display: grid;
    gap: .42rem;
}

.landing-bid-stack b {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    min-width: 0;
    width: fit-content;
    max-width: 100%;
    padding: .42rem .55rem;
    color: #dff2ff;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background: rgba(255,255,255,.06);
    font-size: .82rem;
    font-weight: var(--ui-label-weight);
    overflow-wrap: anywhere;
}

.landing-live-empty {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: clamp(1rem, 3vw, 1.35rem);
    border: 1px solid rgba(var(--brand-cyan-rgb), .22);
    border-radius: 8px;
    background:
        radial-gradient(circle at 4% 0, rgba(var(--brand-cyan-rgb), .16), transparent 32%),
        linear-gradient(135deg, rgba(255,255,255,.07), rgba(255,255,255,.025)),
        rgba(5,8,18,.72);
    box-shadow: 0 18px 54px rgba(0,0,0,.24);
}

.landing-live-empty h3 {
    margin: .25rem 0 .35rem;
    font-size: clamp(1.25rem, 2.3vw, 2rem);
    line-height: 1.08;
    font-weight: var(--ui-heavy-weight);
    overflow-wrap: anywhere;
}

.landing-live-empty p:last-child {
    max-width: 780px;
    margin: 0;
    color: var(--muted);
}

.landing-empty-icon {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    margin-bottom: .75rem;
    color: var(--brand-cyan);
    border: 1px solid rgba(var(--brand-cyan-rgb), .24);
    border-radius: 8px;
    background: rgba(var(--brand-cyan-rgb), .09);
}

.landing-empty-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .55rem;
}

.pricing-card-team-tier p {
    min-height: 2.6em;
    text-align: center;
}

.pricing-team-limit span:first-child {
    font-size: 0;
}

.pricing-team-limit span:first-child::after {
    content: "Up to";
    color: inherit;
    font-size: .82rem;
}

.dashboard-stat-link[href$="#teams"] i,
.report-export-card .fa-user-group,
.report-export-card .fa-users {
    color: var(--broadcast-emerald);
}

.dashboard-stat-link[href$="#players"] i {
    color: var(--brand-cyan);
}

.dashboard-stat-link[href$="#categories"] i,
.report-export-card .fa-file-zipper,
.report-export-card .fa-chart-line {
    color: var(--broadcast-gold);
}

.dashboard-stat-static i,
.report-export-card .fa-gavel {
    color: var(--brand-violet);
}

.dashboard-pro-card .match-card-stats i svg.fa-svg-line *,
.dashboard-pro-card .card-meta i svg.fa-svg-line *,
.report-export-card i svg.fa-svg-line *,
.entity-form-card i svg.fa-svg-line *,
.entity-list-card i svg.fa-svg-line * {
    stroke-width: 1.85;
}

.dashboard-title-row,
.match-status-ribbon,
.payment-state-card,
.report-rank-row,
.team-graphic-player,
.team-row-head,
.team-bid-button,
.draw-card {
    min-width: 0;
}

.page-head h1,
.dashboard-title-row h2,
.match-status-ribbon span,
.match-status-ribbon b,
.payment-state-card strong,
.report-rank-row span,
.report-rank-row strong,
.team-graphic-player-name,
.team-graphic-player-compact > strong,
.team-name-stack strong,
.team-bid-button span,
.draw-card span,
.public-live-title strong,
.projector-header h1 {
    overflow-wrap: anywhere;
}

.team-name-stack strong,
.dashboard-title-row h2,
.team-bid-button span,
.draw-card span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.team-row .team-row-head > b,
.projector-team .team-row-head > b,
.bid-amount,
.payment-state-card strong,
.report-chart-strip strong,
.report-rank-row strong,
.team-graphic-player-compact > strong {
    font-variant-numeric: tabular-nums;
    line-height: 1.08;
}

.team-row .team-row-head > b,
.projector-team .team-row-head > b {
    min-width: 0;
    white-space: normal;
    text-align: right;
}

.team-button-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 148px), 1fr));
}

.report-export-panel {
    margin: 1rem 0 1.5rem;
}

.report-export-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    padding-bottom: .85rem;
    border-bottom: 1px solid rgba(255,255,255,.1);
}

.report-export-head > span {
    max-width: 420px;
    color: var(--muted);
    font-size: .86rem;
    text-align: right;
}

.report-export-panel .report-export-grid {
    margin: 0;
}

.report-export-card-prime {
    border-color: rgba(var(--brand-cyan-rgb), .32);
    background:
        linear-gradient(135deg, rgba(var(--brand-cyan-rgb), .15), rgba(var(--brand-magenta-rgb), .08)),
        rgba(255,255,255,.055);
}

@media (max-width: 760px) {
    .public-body .app-nav .container {
        min-height: 64px;
        flex-wrap: nowrap;
        gap: .75rem;
    }

    .landing-nav-links {
        width: auto;
        flex: 0 0 auto;
        margin-left: auto;
        overflow: visible;
        padding-bottom: 0;
        scrollbar-width: auto;
    }

    .landing-nav-links::-webkit-scrollbar {
        display: none;
    }

    .landing-nav-links .nav-link {
        display: none;
    }

    .landing-nav-links .btn {
        min-height: 34px;
        padding-inline: .7rem;
        white-space: nowrap;
    }

    .landing-live-empty,
    .report-export-head {
        align-items: stretch;
        flex-direction: column;
    }

    .landing-empty-actions .btn {
        flex: 1 1 150px;
    }

    .report-export-head > span {
        justify-content: flex-start;
        text-align: left;
    }

    .report-rank-row {
        grid-template-columns: 34px minmax(0, 1fr);
    }

    .report-rank-row strong {
        grid-column: 2;
        white-space: normal;
    }
}

@media (max-width: 760px) {
    .live-drawer-trigger { display: inline-flex; }

    .live-timeline-drawer {
        position: fixed !important;
        inset: auto 0 0 !important;
        z-index: 30;
        display: grid;
        max-height: 78svh;
        gap: .75rem;
        padding: 3rem 1rem 1rem;
        overflow: auto;
        border: 1px solid rgba(255,255,255,.16);
        border-radius: 8px 8px 0 0;
        background: rgba(3,6,12,.94);
        backdrop-filter: blur(18px);
        transform: translateY(105%);
        transition: transform .2s ease;
    }

    .live-timeline-drawer.is-open { transform: translateY(0); }

    .live-timeline-backdrop {
        position: fixed;
        inset: 0;
        z-index: 29;
        display: none;
        background: rgba(0,0,0,.45);
    }

    .live-timeline-backdrop.is-open { display: block; }
}

@media print {
    @page { margin: 12mm; }
    .app-nav, .page-head .btn, .nav, .report-export-panel, .report-graphic-grid, .team-graphic-actions, .report-section-head .form-control { display: none !important; }
    body { background: #fff; color: #000; }
    .app-main { padding: 0 !important; }
    .page-head { margin-bottom: 10mm; border-bottom: 1px solid #bbb; padding-bottom: 4mm; }
    .page-head h1, .page-head .eyebrow { color: #000; }
    .control-card, .mini-card, .table-shell, .report-chart-strip div { background: #fff; color: #000; border-color: #bbb; box-shadow: none; }
    .table { --bs-table-bg: #fff; --bs-table-color: #000; --bs-table-border-color: #bbb; }
    .report-chart-strip { grid-template-columns: repeat(4, 1fr) !important; break-inside: avoid; }
    .printable-squad-sheet { break-before: page; }
    .responsive-report-table { min-width: 0 !important; width: 100%; font-size: 10pt; }
    .responsive-report-table thead { display: table-header-group !important; }
    .responsive-report-table tr { break-inside: avoid; }
    .whatsapp-squad-graphic { break-inside: avoid; box-shadow: none; }
}
