/* Desktop primary toolbar and separate native league rail. */
:root {
    --tsp-business-band: linear-gradient(90deg, var(--tsp-business-band-edge, #101010), #62211a 24%, #ac261b 47%, #79211a 71%, var(--tsp-business-band-edge, #101010));
    --tsp-business-band-ink: #fff7e8;
}
.tsp-toolbar-context { display: none; }
@media (min-width: 761px) {
    body:has([data-tsp-desktop-toolbar]) :is(.tsp-masthead, header.masthead, .tsp-business-masthead):not(:has([data-tsp-desktop-toolbar])) {
        display: none !important;
    }
    html body #tsp-desktop-toolbar.tsp-nav.tsp-nav-compact[data-tsp-desktop-toolbar] > .tsp-nav-inner {
        display: flex !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        gap: clamp(4px, 1vw, 16px) !important;
        width: var(--tsp-toolbar-width) !important;
        max-width: 1392px !important;
        height: 100% !important;
        min-height: 0 !important;
        margin-inline: auto !important;
        padding: 0 !important;
    }
    :is(#tsp-desktop-toolbar, .tsp-toolbar-context) {
        --tsp-toolbar-gutter: clamp(8px, 1.6vw, 24px);
        --tsp-toolbar-width: calc(100% - var(--tsp-toolbar-gutter) - var(--tsp-toolbar-gutter));
    }
    #tsp-desktop-toolbar {
        --tsp-toolbar-link-size: 12px;
        --tsp-toolbar-link-padding: 8px;
        box-sizing: border-box;
        height: 50px;
        min-height: 50px;
        position: relative;
        z-index: 40;
    }
    html body #tsp-desktop-toolbar.tsp-nav.tsp-nav-compact[data-tsp-desktop-toolbar] .tsp-links {
        display: flex !important;
        flex: 0 0 auto !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0 !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        overflow: visible !important;
    }
    html body #tsp-desktop-toolbar.tsp-nav.tsp-nav-compact[data-tsp-desktop-toolbar] .nav-editorial {
        flex: 1 1 auto !important;
        min-width: 0;
        justify-content: flex-end !important;
        background: var(--tsp-business-band) !important;
    }
    #tsp-desktop-toolbar :is(.nav-editorial, .nav-editorial > [data-tsp-sports-nav="desks"]) {
        --tsp-nav-ink: var(--tsp-business-band-ink);
        --tsp-nav-accent: #fff7e8;
        --tsp-nav-hover: #fff7e81c;
        --tsp-nav-rule: transparent;
    }
    .tsp-nav[data-tsp-desktop-toolbar] .tsp-toolbar-brand {
        display: flex;
        flex: none;
        align-items: center;
        width: clamp(82px, 11vw, 140px);
        min-height: 44px;
        padding: 0 4px;
    }
    .tsp-nav[data-tsp-desktop-toolbar] .tsp-toolbar-brand img {
        display: block;
        width: 100%;
        height: auto;
    }
    .tsp-nav[data-tsp-desktop-toolbar]:not([data-tsp-nav-theme="light"]) .tsp-toolbar-brand img {
        mix-blend-mode: screen;
    }
    .tsp-nav[data-tsp-nav-theme="light"] .tsp-toolbar-brand { background: #101010; }
    #tsp-desktop-toolbar :is(.tsp-links > a, .tsp-links > span > a) {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 0 var(--tsp-toolbar-link-padding) !important;
        color: var(--tsp-nav-ink) !important;
        font: 650 var(--tsp-toolbar-link-size)/1.2 'TSP Inter', Arial, sans-serif !important;
        letter-spacing: 0 !important;
        white-space: nowrap !important;
        text-decoration: none !important;
        text-transform: none !important;
    }
    #tsp-desktop-toolbar :is(.tsp-links > a, .tsp-links > span > a)::after { content: none !important; }
    #tsp-desktop-toolbar :is(.tsp-links > a, .tsp-links > span > a):hover { background: var(--tsp-nav-hover) !important; }
    #tsp-desktop-toolbar #tsp-departments > span > a::before { content: none !important; }
    #tsp-desktop-toolbar #tsp-departments > span > a:focus-visible {
        outline: 2px solid var(--tsp-nav-accent);
        outline-offset: -3px;
    }
    #tsp-desktop-toolbar #tsp-departments:has(> span > a[aria-expanded="true"]) {
        -webkit-mask-image: none !important;
        mask-image: none !important;
    }
    #tsp-desktop-toolbar :is(.tsp-links > a, .tsp-links > span > a)[aria-current="page"] {
        color: var(--tsp-nav-accent) !important;
        box-shadow: inset 0 -2px #ffe600 !important;
    }
    #tsp-desktop-toolbar .nav-editorial .nav-business {
        gap: 6px;
        font-weight: 800 !important;
    }
    #tsp-desktop-toolbar .nav-business .tsp-business-nav-mark {
        display: none;
        flex: none;
        width: 22px;
        height: 22px;
        object-fit: contain;
    }
    #tsp-desktop-toolbar .nav-editorial > [data-tsp-sports-nav="desks"] {
        background: transparent !important;
    }
    #tsp-desktop-toolbar .nav-editorial > a:not([aria-current="page"]) {
        box-shadow: none !important;
    }
    #tsp-desktop-toolbar :is(.nav-editorial > a, .nav-editorial .nav-business)[aria-current="page"] {
        box-shadow: inset 0 -2px var(--tsp-nav-accent) !important;
    }
    #tsp-desktop-toolbar #tsp-more-destinations :is(.tsp-nav-overflow, .tsp-nav-overflow-touch) { display: none !important; }
    .tsp-nav[data-tsp-desktop-toolbar] .tsp-links > span { position: relative; }
    #tsp-desktop-toolbar #tsp-departments > span > button { display: none !important; }
    html body .tsp-nav[data-tsp-desktop-toolbar] .nav-editorial > span > button {
        display: inline-grid;
        place-items: center;
        width: 22px;
        min-width: 22px;
        margin: 0;
    }
    .tsp-nav[data-tsp-desktop-toolbar] .nav-editorial > span > button svg { display: none; }
    .tsp-nav[data-tsp-desktop-toolbar] .nav-editorial > span > button::before {
        content: '…';
        font: 800 15px/1 system-ui, sans-serif;
    }
    .tsp-nav[data-tsp-desktop-toolbar] :is(.tsp-toolbar-brand, .tsp-toolbar-search summary):focus-visible {
        outline: 2px solid var(--tsp-nav-accent);
        outline-offset: -3px;
    }
    .tsp-toolbar-search {
        position: relative;
        color: var(--tsp-nav-ink);
        border-inline-start: 1px solid var(--tsp-nav-rule);
    }
    .tsp-toolbar-search > summary {
        display: grid;
        place-items: center;
        width: 44px;
        height: 100%;
        min-height: 44px;
        cursor: pointer;
        list-style: none;
    }
    .tsp-toolbar-search > summary::-webkit-details-marker { display: none; }
    .tsp-toolbar-search > summary:hover,
    .tsp-toolbar-search[open] > summary { background: var(--tsp-nav-hover); }
    .tsp-nav .tsp-toolbar-search > summary svg { width: 18px; height: 18px; }
    .tsp-toolbar-search form {
        position: absolute;
        z-index: 2;
        inset: calc(100% + 5px) 0 auto auto;
        display: flex;
        gap: 6px;
        width: min(360px, calc(100vw - 24px));
        padding: 8px;
        border: 1px solid #dadfe2;
        border-radius: 6px;
        background: #fff;
        color: #17242b;
        box-shadow: 0 8px 24px #0003;
    }
    .tsp-toolbar-search:not([open]) form { display: none; }
    .tsp-toolbar-search form :is(input, button) { min-height: 44px; border-radius: 4px; }
    .tsp-toolbar-search form input { flex: 1; min-width: 0; padding: 0 8px; border: 1px solid #78858c; font: inherit; }
    .tsp-toolbar-search form button { padding: 0 12px; border: 0; background: #ffe600; color: #101010; font-weight: 750; cursor: pointer; }
    .tsp-toolbar-search form :focus-visible { outline: 2px solid #17242b; outline-offset: 2px; }
    .tsp-toolbar-context { display: block; background: #fff; color: #17242b; border-bottom: 1px solid #dce3e7; }
    .tsp-toolbar-context > div {
        display: flex;
        align-items: stretch;
        max-width: 1392px;
        margin: 0 auto;
        width: var(--tsp-toolbar-width);
        overflow-x: auto;
    }
    .tsp-toolbar-context a {
        display: inline-flex;
        align-items: center;
        flex: none;
        min-height: 44px;
        padding: 0 clamp(8px, 1vw, 14px);
        color: inherit;
        font: 650 13px/1.2 'TSP Inter', Arial, sans-serif;
        white-space: nowrap;
        text-decoration: none;
    }
    .tsp-toolbar-context .tsp-toolbar-context-title { gap: 7px; font-weight: 800; font-size: 17px; border-inline-end: 1px solid #dce3e7; }
    .tsp-toolbar-context-title img { width: 22px; height: 22px; object-fit: contain; }
    .tsp-toolbar-context a:hover { background: #f1f3f4; text-decoration: underline; }
    .tsp-toolbar-context a:focus-visible { outline: 2px solid #17242b; outline-offset: -3px; }
    body:has(.tsp-toolbar-context) :is(.tsp-nfl-entry, .tsp-nba-entry, .tsp-nhl-entry, .tsp-mlb-entry) { display: none !important; }
}
@media (min-width: 1120px), (min-width: 761px) and (hover: hover) and (pointer: fine) {
    #tsp-desktop-toolbar .nav-business .tsp-business-nav-mark { display: block; }
}
@media (min-width: 761px) and (max-width: 983px) {
    #tsp-desktop-toolbar #tsp-more-destinations .tsp-nav-overflow { display: block !important; }
}
@media (min-width: 761px) and (max-width: 879px) {
    #tsp-desktop-toolbar { --tsp-toolbar-link-padding: 4px; }
    .tsp-toolbar-context a { font-size: 12px; }
}
@media (min-width: 761px) and (max-width: 819px) {
    #tsp-desktop-toolbar { --tsp-toolbar-link-size: 11px; }
}
@media (min-width: 761px) and (max-width: 1199px) and (hover: none) {
    #tsp-desktop-toolbar #tsp-more-destinations .tsp-nav-overflow { display: block !important; }
}
@media (min-width: 761px) and (max-width: 949px) and (hover: none) {
    #tsp-desktop-toolbar #tsp-more-destinations .tsp-nav-overflow-touch { display: block !important; }
}
@media (min-width: 761px) and (hover: hover) and (pointer: fine) {
    html body .tsp-nav[data-tsp-desktop-toolbar] .nav-editorial > span > button {
        position: absolute;
        inset: 0 0 auto auto;
        z-index: 1;
        clip-path: inset(50%);
        pointer-events: none;
    }
    html body .tsp-nav[data-tsp-desktop-toolbar] .nav-editorial > span > button:focus-visible {
        width: 100%;
        clip-path: none;
        pointer-events: auto;
        background: var(--tsp-nav-hover) !important;
    }
}
