/* Public CFP bracket page. Bump version_css_main after edits. */

.tn-cfp {
    color: #1d1d1f;
    padding: 0 0 32px;
}

html.dark-mode .tn-cfp {
    color: var(--dm-text-primary, #f1f5f9);
}

.tn-cfp h1 {
    margin: 0 0 12px;
    color: #fff;
    font: 400 clamp(26px, 4vw, 40px)/1.15 Georgia, serif;
}

html.dark-mode .tn-cfp h1 {
    color: #fff;
}

.tn-cfp__hero {
    background: linear-gradient(125deg, #522d80 0%, #3a1f5c 58%, #2a1644 100%);
    color: #fff;
    border-radius: 12px;
    padding: 22px 20px 18px;
    margin-bottom: 14px;
}

.tn-cfp__kicker {
    margin: 0 0 6px;
    color: #f56600;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.tn-cfp__nav {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    font-weight: 700;
}

.tn-cfp__nav select {
    border-radius: 6px;
    border: 0;
    padding: 6px 8px;
    font-weight: 700;
}

.tn-cfp__sr {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}

.tn-cfp__note,
.tn-cfp__empty,
.tn-cfp__pre {
    color: #5a5a60;
}

html.dark-mode .tn-cfp__note,
html.dark-mode .tn-cfp__empty,
html.dark-mode .tn-cfp__pre {
    color: var(--dm-text-secondary, #bbb);
}

.tn-cfp__hero .tn-cfp__note {
    color: rgba(255, 255, 255, 0.85);
    margin: 10px 0 0;
}

.tn-cfp__snapshot {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 10px;
    margin: 0 0 18px;
}

.tn-cfp__snap {
    background: #fff;
    border: 1px solid rgba(82, 45, 128, 0.16);
    border-radius: 10px;
    padding: 12px;
}

html.dark-mode .tn-cfp__snap {
    background: var(--dm-bg-elevated, #1c1f25);
    border-color: rgba(255, 255, 255, 0.14);
}

.tn-cfp__snap-label {
    display: block;
    color: #522d80;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

html.dark-mode .tn-cfp__snap-label {
    color: var(--dm-text-secondary, #bbb);
}

.tn-cfp__snap strong {
    display: block;
    margin-top: 4px;
    font-size: 18px;
}

.tn-cfp__rounds {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin: 0 0 24px;
}

.tn-cfp__round h2 {
    margin: 0 0 8px;
    color: #522d80;
    font-size: 14px;
}

html.dark-mode .tn-cfp__round h2 {
    color: var(--dm-text-primary, #f1f5f9);
}

.tn-cfp__game {
    background: #fff;
    border: 1px solid rgba(82, 45, 128, 0.16);
    border-radius: 10px;
    padding: 10px;
    margin-bottom: 10px;
}

html.dark-mode .tn-cfp__game {
    background: var(--dm-bg-elevated, #1c1f25);
    border-color: rgba(255, 255, 255, 0.14);
}

.tn-cfp__game--clemson {
    background: #fff2e8;
}

html.dark-mode .tn-cfp__game--clemson {
    background: rgba(245, 102, 0, 0.18);
}

.tn-cfp__bowl {
    display: block;
    margin-bottom: 6px;
    color: #5a5a60;
    font-size: 12px;
}

html.dark-mode .tn-cfp__bowl {
    color: var(--dm-text-muted, #a0a0a0);
}

.tn-cfp__slot {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    padding: 4px 0;
}

.tn-cfp__slot--clemson {
    font-weight: 700;
}

.tn-cfp h2 {
    color: #522d80;
}

html.dark-mode .tn-cfp h2 {
    color: var(--dm-text-primary, #f1f5f9);
}

.tn-cfp__history {
    width: 100%;
    border-collapse: collapse;
}

.tn-cfp__history th,
.tn-cfp__history td {
    border-bottom: 1px solid rgba(82, 45, 128, 0.16);
    padding: 8px 6px;
    text-align: left;
}

html.dark-mode .tn-cfp__history th,
html.dark-mode .tn-cfp__history td {
    border-bottom-color: rgba(255, 255, 255, 0.14);
}

.tn-cfp__history th {
    color: #522d80;
    font-size: 12px;
}

html.dark-mode .tn-cfp__history th {
    color: var(--dm-text-primary, #f1f5f9);
}

.tn-cfp__polls {
    margin-top: 16px;
}

@media (max-width: 600px) {
    .tn-cfp__rounds {
        grid-template-columns: 1fr;
    }
}
