/* /Components/Layout/BackgroundScene.razor.rz.scp.css */
/* ── Background scene ─────────────────────────────────────────────────────── */
.background-scene[b-r6ie2wk6gg] {
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    overflow: hidden;
}

.scene-asset[b-r6ie2wk6gg] {
    position: absolute;
    image-rendering: pixelated;
    bottom: 0;
}

/* Mountains */
.mountain-double-1[b-r6ie2wk6gg] {
    left: 5%;
    bottom: 0;
    width: 600px;
    opacity: 1;
}

.mountain-single-1[b-r6ie2wk6gg] {
    left: 40%;
    bottom: 0;
    width: 300px;
    opacity: 1;
}

.mountain-single-2[b-r6ie2wk6gg] {
    left: 88%;
    bottom: 0;
    width: 400px;
    opacity: 1;
}

.mountain-single-3[b-r6ie2wk6gg] {
    left: -140px;
    bottom: 0;
    width: 350px;
    opacity: 1;
}

/* Pine x5 */
.pine-1[b-r6ie2wk6gg] {
    left: 36%;
    bottom: 0;
    width: 100px;
    opacity: 1;
}

.pine-2[b-r6ie2wk6gg] {
    left: 34%;
    bottom: 0;
    width: 64px;
    opacity: 1;
}

.pine-3[b-r6ie2wk6gg] {
    left: 56%;
    bottom: 0;
    width: 64px;
    opacity: 1;
}

.pine-4[b-r6ie2wk6gg] {
    left: 84.5%;
    bottom: -10px;
    width: 105px;
    opacity: 1;
}

.pine-5[b-r6ie2wk6gg] {
    left: 10%;
    bottom: 0;
    width: 90px;
    opacity: 1;
}

/* ── Pixel birds ──────────────────────────────────────────────────────────── */
@keyframes flap-up-b-r6ie2wk6gg {
    0%, 49.9% {
        opacity: 1;
    }

    50%, 100% {
        opacity: 0;
    }
}

@keyframes flap-down-b-r6ie2wk6gg {
    0%, 49.9% {
        opacity: 0;
    }

    50%, 100% {
        opacity: 1;
    }
}

@keyframes fly-right-b-r6ie2wk6gg {
    0% {
        transform: translateX(-10vw);
    }

    100% {
        transform: translateX(120vw);
    }
}

@keyframes bird-bob-b-r6ie2wk6gg {
    0%, 100% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-15px);
    }
}

.wing-up[b-r6ie2wk6gg] {
    animation: flap-up-b-r6ie2wk6gg 0.4s infinite;
}

.wing-down[b-r6ie2wk6gg] {
    animation: flap-down-b-r6ie2wk6gg 0.4s infinite;
}

.bird-wrapper[b-r6ie2wk6gg] {
    position: absolute;
    left: 0;
    image-rendering: pixelated;
    pointer-events: none;
}

    .bird-wrapper img[b-r6ie2wk6gg] {
        width: 100%;
        height: 100%;
        image-rendering: pixelated;
        filter: drop-shadow(0px 4px 2px rgba(0,0,0,0.08));
    }

/* Bird 1: largest, foreground, flies above the mountain peaks */
.bird-1[b-r6ie2wk6gg] {
    bottom: 40%;
    width: 64px;
    height: 64px;
    animation: fly-right-b-r6ie2wk6gg 12s linear infinite;
}

    .bird-1 svg[b-r6ie2wk6gg] {
        animation: bird-bob-b-r6ie2wk6gg 2.5s ease-in-out infinite;
    }

/* Bird 2: medium, midground, delayed */
.bird-2[b-r6ie2wk6gg] {
    top: 12%;
    width: 48px;
    height: 48px;
    animation: fly-right-b-r6ie2wk6gg 16s linear infinite 3s;
    animation-fill-mode: backwards;
}

    .bird-2 svg[b-r6ie2wk6gg] {
        animation: bird-bob-b-r6ie2wk6gg 3.2s ease-in-out infinite 1s;
    }

/* Bird 3: smallest, background depth, delayed */
.bird-3[b-r6ie2wk6gg] {
    top: 7%;
    width: 32px;
    height: 32px;
    animation: fly-right-b-r6ie2wk6gg 22s linear infinite 7s;
    animation-fill-mode: backwards;
}

    .bird-3 svg[b-r6ie2wk6gg] {
        animation: bird-bob-b-r6ie2wk6gg 4s ease-in-out infinite 2s;
    }

@media (max-width: 640px) {
    .bird-wrapper[b-r6ie2wk6gg] {
        display: none;
    }

    .mountain-double-1[b-r6ie2wk6gg] {
        width: 320px;
    }

    .mountain-single-1[b-r6ie2wk6gg] {
        width: 180px;
    }

    .mountain-single-2[b-r6ie2wk6gg] {
        width: 220px;
    }

    .mountain-single-3[b-r6ie2wk6gg] {
        width: 200px;
        left: -90px;
    }

    .pine-1[b-r6ie2wk6gg] { width: 60px; }
    .pine-2[b-r6ie2wk6gg] { width: 40px; }
    .pine-3[b-r6ie2wk6gg] { width: 40px; }
    .pine-4[b-r6ie2wk6gg] { width: 64px; }
    .pine-5[b-r6ie2wk6gg] { width: 56px; }
}
/* /Components/Layout/LandingLayout.razor.rz.scp.css */
.landing-page[b-q7wefh9l8t] {
    position: relative;
    z-index: 1;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background-color: transparent;
}
/* /Components/Layout/LoginLayout.razor.rz.scp.css */
.login-page[b-bx6jp831bx] {
    position: relative;
    z-index: 1;
    min-height: 100vh;
    display: flex;
    align-items: flex-start;
    padding-top: 1vh;
    justify-content: center;
}

.login-wrapper[b-bx6jp831bx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    width: 100%;
    max-width: 960px;
}

.login-logo[b-bx6jp831bx] {
    width: 700px;
}

/* /Components/Layout/MainLayout.razor.rz.scp.css */

.page[b-3r65ik0813] {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background-color: transparent;
}

/* ── Full-width top bar ── */
.top-bar[b-3r65ik0813] {
    position: sticky;
    top: 0;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 1.5rem;
    height: 4rem;
    background-color: var(--smw-sand-light, #f4eccc);
    overflow: visible;
}

.top-bar[b-3r65ik0813]::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 270px;
    right: 0;
    height: 2px;
    background-color: #111111;
    pointer-events: none;
}

.top-bar-brand[b-3r65ik0813] {
    display: flex;
    align-items: center;
    text-decoration: none;
    width: 300px;
    transition: opacity 0.15s ease, filter 0.15s ease;
}

.top-bar-brand:hover[b-3r65ik0813] {
    opacity: 0.8;
    filter: brightness(1.15);
    cursor: pointer;
}

.top-bar-auth[b-3r65ik0813] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    white-space: nowrap;
}

/* Centered slot in the top bar (currently holds the TierPill).
   Absolute positioning keeps it perfectly centered regardless of how
   wide the brand and auth groups grow. */
.top-bar-center[b-3r65ik0813] {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

/* ── Sidebar + main below the top bar ── */
.layout-body[b-3r65ik0813] {
    display: flex;
    flex: 1;
}

.sidebar[b-3r65ik0813] {
    width: 270px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    background-color: var(--smw-sand-light, #f4eccc);
    border-right: 3px solid #111111;
    position: sticky;
    top: 4rem;
    height: calc(100vh - 4rem);
    overflow-y: auto;
}

main[b-3r65ik0813] {
    flex: 1;
    background-color: transparent;
    height: calc(100vh - 4rem);
    overflow-y: auto;
}

.content[b-3r65ik0813] {
    padding-top: 1.5rem;
}

/* ── Auth link styles ── */
.top-bar-auth[b-3r65ik0813]  a,
.top-bar-auth[b-3r65ik0813]  .btn-link {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    color: var(--smw-dark-grey, #3c4850);
    text-decoration: none;
}

.top-bar-auth[b-3r65ik0813]  a:hover,
.top-bar-auth[b-3r65ik0813]  .btn-link:hover {
    color: var(--smw-coin, #e8a800);
}

/* ── User settings link in top bar ── */
.top-bar-user-link[b-3r65ik0813] {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    text-decoration: none;
    color: var(--smw-dark-grey);
    transition: color 0.1s, filter 0.1s;
}

.top-bar-user-link:hover[b-3r65ik0813] {
    color: var(--smw-coin);
    filter: none;
}

.top-bar-user-icon[b-3r65ik0813] {
    width: 1.75rem;
    height: 1.75rem;
    flex-shrink: 0;
    filter: drop-shadow(1px 1px 1px rgba(0,0,0,0.3));
    transition: filter 0.1s;
}

.top-bar-user-link:hover .top-bar-user-icon[b-3r65ik0813] {
    filter: drop-shadow(1px 1px 2px rgba(232,168,0,0.5));
}

.top-bar-username[b-3r65ik0813] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    white-space: nowrap;
}

/* ── Sign out as plain text link with divider ── */
.top-bar-signout-form[b-3r65ik0813] {
    display: flex;
    align-items: center;
    padding-left: 0.75rem;
    border-left: 2px solid rgba(60, 72, 80, 0.2);
}

.top-bar-signout-btn[b-3r65ik0813] {
    background: none;
    border: none;
    padding: 0;
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    color: var(--smw-grey);
    cursor: pointer;
    text-transform: uppercase;
    transition: color 0.1s;
}

.top-bar-signout-btn:hover[b-3r65ik0813] {
    color: var(--smw-mario-red);
}

/* ── Mobile (≤640px): stack sidebar above main, shrink top bar ── */
@media (max-width: 640px) {
    .top-bar[b-3r65ik0813] {
        padding: 0 0.75rem;
    }

    .top-bar[b-3r65ik0813]::after {
        left: 0;
    }

    .top-bar-brand[b-3r65ik0813] {
        width: auto;
    }

    .top-bar-auth[b-3r65ik0813] {
        gap: 0.5rem;
    }

    .top-bar-username[b-3r65ik0813] {
        display: none;
    }

    .top-bar-signout-form[b-3r65ik0813] {
        padding-left: 0.5rem;
    }

    .layout-body[b-3r65ik0813] {
        flex-direction: column;
    }

    .sidebar[b-3r65ik0813] {
        width: 100%;
        height: auto;
        flex-shrink: 0;
        position: relative;
        top: auto;
        border-right: none;
        border-bottom: 3px solid #111111;
        min-height: 3.5rem;
    }

    main[b-3r65ik0813] {
        height: auto;
        min-height: calc(100vh - 7.5rem);
        overflow-y: visible;
    }

    .content[b-3r65ik0813] {
        padding-top: 1rem;
    }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-bltf498xjm] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: var(--smw-dark-grey, #3c4850);
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 2px solid rgba(90, 74, 40, 0.4);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2860%2C72%2C80%2C0.9%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem transparent;
}

.navbar-toggler:checked[b-bltf498xjm] {
    background-color: rgba(200, 184, 120, 0.4);
}

.nav-icon[b-bltf498xjm] {
    display: inline-block;
    width: 2.6rem;
    height: 2.6rem;
    margin-right: 0.75rem;
    vertical-align: middle;
    flex-shrink: 0;
    filter: drop-shadow(1px 2px 2px rgba(0,0,0,0.3));
}

.nav-icon svg[b-bltf498xjm],
.nav-icon img[b-bltf498xjm] {
    width: 100%;
    height: 100%;
}

.nav-item[b-bltf498xjm] {
    font-size: 1.17rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-bltf498xjm] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-bltf498xjm] {
        padding-bottom: 1rem;
    }

    .nav-item[b-bltf498xjm]  a {
        font-family: var(--ui-font);
        font-size: 1.12rem;
        color: #5a4a28;
        border-radius: 0;
        height: 4.5rem;
        display: flex;
        align-items: center;
        line-height: 4.5rem;
        border-left: 3px solid transparent;
        transition: color 0.1s, border-color 0.1s, background-color 0.1s;
    }

.nav-item[b-bltf498xjm]  a.active {
    color: #7a5200;
    border-left-color: #e8a800;
    background-color: rgba(232, 168, 0, 0.18);
    text-shadow: 1px 1px 0 rgba(255,255,255,0.4);
}

.nav-item[b-bltf498xjm]  a:hover {
    color: #267326;
    border-left-color: #3cb83c;
    background-color: rgba(60, 184, 60, 0.12);
    text-shadow: 1px 1px 0 rgba(255,255,255,0.4);
}

.nav-scrollable[b-bltf498xjm] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-bltf498xjm] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-bltf498xjm] {
        display: none;
    }

    .nav-scrollable[b-bltf498xjm] {
        display: flex;
        flex-direction: column;
        flex: 1;
        overflow-y: auto;
    }
}
/* /Components/Pages/Account/AccountSettings.razor.rz.scp.css */
/* ── Settings cards ──────────────────────────────────────────────────────── */

.settings-card[b-4hmzbo3ni1] {
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.25);
    max-width: 600px;
}

.settings-card-header[b-4hmzbo3ni1] {
    background: var(--smw-sand);
    border-bottom: 3px solid var(--smw-sand-dark);
    padding: 0.55rem 1.25rem;
    font-family: var(--ui-font);
    font-size: 0.79rem;
    color: var(--smw-dark-grey);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.5);
}

.settings-card-body[b-4hmzbo3ni1] {
    padding: 1.25rem 1.5rem;
}

/* ── Danger zone variant ─────────────────────────────────────────────────── */

.settings-card--danger[b-4hmzbo3ni1] {
    border-color: var(--sfc-btn-a);
    box-shadow: 4px 4px 0 rgba(216, 40, 0, 0.2);
}

.settings-card--danger .settings-card-header[b-4hmzbo3ni1] {
    background: #fff0ee;
    border-bottom-color: var(--sfc-btn-a);
    color: #8b1a0a;
    text-shadow: none;
}

/* ── Current value hint ──────────────────────────────────────────────────── */

.settings-current-value[b-4hmzbo3ni1] {
    font-size: 0.75rem;
    color: var(--smw-grey);
}

.settings-current-value strong[b-4hmzbo3ni1] {
    color: var(--smw-dark-grey);
    font-weight: 400;
}

/* ── Success alert override (pixel style) ────────────────────────────────── */

.alert-success[b-4hmzbo3ni1] {
    background: #f0fff4;
    border: 2px solid var(--smw-grass);
    color: var(--smw-grass-dark);
    font-size: 0.75rem;
    border-radius: 0;
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.15);
}
/* /Components/Pages/Account/ConfirmEmail.razor.rz.scp.css */
.confirm-email-card[b-2sr1vybfbm] {
    width: 100%;
    max-width: 420px;
    padding: 2rem;
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    border-radius: 0;
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.35);
}
/* /Components/Pages/Account/ConfirmEmailChange.razor.rz.scp.css */
.confirm-email-change-card[b-yqhp2ly9dg] {
    width: 100%;
    max-width: 420px;
    padding: 2rem;
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    border-radius: 0;
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.35);
}

.alert-success[b-yqhp2ly9dg] {
    background: #f0fff4;
    border: 2px solid var(--smw-grass);
    color: var(--smw-grass-dark);
    font-size: 0.75rem;
    border-radius: 0;
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.15);
}
/* /Components/Pages/Account/ForgotPassword.razor.rz.scp.css */
.forgot-password-card[b-77sw265tkb] {
    width: 100%;
    max-width: 420px;
    padding: 2rem;
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    border-radius: 0;
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.35);
}

/* Reserve Turnstile widget dimensions before it loads to prevent layout shift */
.forgot-password-card .cf-turnstile[b-77sw265tkb] {
    min-height: 65px;
    width: 300px;
    margin: 0 auto;
}
/* /Components/Pages/Account/Login.razor.rz.scp.css */
.login-card[b-8715hjo6tu] {
    width: 100%;
    max-width: 420px;
    padding: 2rem;
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    border-radius: 0;
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.35);
}
/* /Components/Pages/Account/Register.razor.rz.scp.css */
.register-card[b-jhtx29kbyl] {
    width: 100%;
    max-width: 420px;
    padding: 2rem;
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    border-radius: 0;
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.35);
}

/* Reserve Turnstile widget dimensions before it loads to prevent layout shift */
.register-card .cf-turnstile[b-jhtx29kbyl] {
    min-height: 65px;
    width: 300px;
    margin: 0 auto;
}
/* /Components/Pages/Account/ResetPassword.razor.rz.scp.css */
.reset-password-card[b-lmn96wo2hu] {
    width: 100%;
    max-width: 420px;
    padding: 2rem;
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    border-radius: 0;
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.35);
}
/* /Components/Pages/Account/UnsubscribeEmail.razor.rz.scp.css */
.unsubscribe-card[b-14qhamjv86] {
    width: 100%;
    max-width: 420px;
    padding: 2rem;
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    border-radius: 0;
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.35);
}
/* /Components/Pages/Admin/SystemHealth.razor.rz.scp.css */
.health-page[b-9os6w7k0ow] {
    --ok:   var(--smw-grass-dark);
    --info: var(--smw-water);
    --warn: var(--smw-coin);
    --fail: var(--smw-mario-red);
    max-width: 960px;
    margin: 0 auto;
    padding: 0 0 2rem;
}

.mono[b-9os6w7k0ow] { font-family: var(--mono-font); }

.health-head h1[b-9os6w7k0ow] {
    font-size: 2rem;
    margin-bottom: 0.75rem;
}

.health-overall[b-9os6w7k0ow] {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.6rem 1rem;
    font-size: 1.25rem;
    font-weight: 700;
    background: var(--smw-white);
    border: 2px solid var(--smw-sand-dark);
    box-shadow: 4px 4px 0 var(--smw-sand-dark);
}

.health-meta[b-9os6w7k0ow] {
    margin: 0.9rem 0 1.5rem;
    font-size: 0.875rem;
    opacity: 0.8;
}

.health-section[b-9os6w7k0ow] {
    margin-bottom: 1.5rem;
    background: var(--smw-white);
    border: 2px solid var(--smw-sand-dark);
    box-shadow: 4px 4px 0 var(--smw-sand-dark);
}

.health-section h2[b-9os6w7k0ow] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    padding: 0.6rem 1rem;
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    border-bottom: 2px solid var(--smw-sand-dark);
    background: var(--smw-sand-light);
}

.health-list[b-9os6w7k0ow] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.health-row[b-9os6w7k0ow] {
    display: grid;
    grid-template-columns: 4.25rem 1fr auto;
    gap: 0.75rem;
    align-items: start;
    padding: 0.7rem 1rem;
    border-left: 6px solid var(--row-color, var(--smw-grey));
}

.health-row + .health-row[b-9os6w7k0ow] { border-top: 1px solid rgba(0, 0, 0, 0.12); }

.pill[b-9os6w7k0ow] {
    display: inline-block;
    min-width: 3.75rem;
    padding: 0.15rem 0;
    text-align: center;
    font-family: var(--mono-font);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    color: var(--smw-white);
    background: var(--row-color, var(--smw-grey));
}

.health-name[b-9os6w7k0ow] { font-weight: 600; }

.health-summary[b-9os6w7k0ow] { font-size: 0.95rem; }

.health-detail[b-9os6w7k0ow] {
    margin-top: 0.2rem;
    font-size: 0.8rem;
    opacity: 0.75;
    overflow-wrap: anywhere;
}

.health-time[b-9os6w7k0ow] {
    font-size: 0.75rem;
    opacity: 0.7;
    white-space: nowrap;
}

.dot[b-9os6w7k0ow] {
    display: inline-block;
    width: 0.8rem;
    height: 0.8rem;
    flex: none;
    background: var(--row-color, var(--smw-grey));
    border: 2px solid var(--smw-sand-dark);
}

.status-ok[b-9os6w7k0ow]   { --row-color: var(--ok); }
.status-info[b-9os6w7k0ow] { --row-color: var(--info); }
.status-warn[b-9os6w7k0ow] { --row-color: var(--warn); }
.status-fail[b-9os6w7k0ow] { --row-color: var(--fail); }

/* The dot inside the overall banner / section heading takes its parent's status. */
.health-overall .dot[b-9os6w7k0ow] { background: var(--row-color); }

/* The warn yellow is too light for white pill text. */
.status-warn .pill[b-9os6w7k0ow] { color: var(--smw-sand-dark); }

@media (max-width: 600px) {
    .health-row[b-9os6w7k0ow] { grid-template-columns: 4.25rem 1fr; }
    .health-time[b-9os6w7k0ow] { grid-column: 2; }
}
/* /Components/Pages/Billing.razor.rz.scp.css */
/* ── Billing card ─────────────────────────────────────────────────────────
   Matches the SMW theme used by .settings-card on AccountSettings:
   white surface, 3px sand-dark border, pixel drop shadow.
   ───────────────────────────────────────────────────────────────────────── */

.billing-card[b-pslmh0c71b] {
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.25);
    color: var(--smw-dark-grey);
    border-radius: 0;
    overflow: hidden;
    max-width: 720px;
}

.billing-card-header[b-pslmh0c71b] {
    background: var(--smw-sand);
    border-bottom: 3px solid var(--smw-sand-dark);
    padding: 0.55rem 1.25rem;
    font-family: var(--ui-font);
    font-size: 0.79rem;
    color: var(--smw-dark-grey);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.5);
}

.billing-card-body[b-pslmh0c71b] {
    padding: 1.25rem 1.5rem;
    background: var(--smw-white);
}

/* ── Tier badge ───────────────────────────────────────────────────────────
   Pixel-style chip — square corners, drop shadow, Silkscreen text.
   ───────────────────────────────────────────────────────────────────────── */

.tier-badge[b-pslmh0c71b] {
    display: inline-block;
    padding: 0.35em 0.85em;
    border: 2px solid var(--smw-sand-dark);
    border-radius: 0;
    font-family: var(--ui-font);
    font-size: 0.79rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.3);
}

.tier-badge--free[b-pslmh0c71b] {
    background: var(--sfc-shell);
    color: var(--smw-white);
    border-color: var(--smw-grey);
}

.tier-badge--pro[b-pslmh0c71b] {
    background: var(--smw-grass);
    color: var(--smw-white);
    border-color: var(--smw-grass-dark);
}

.tier-badge--ultra[b-pslmh0c71b] {
    background: var(--smw-purple);
    color: var(--smw-white);
    border-color: var(--smw-purple-dark);
}

/* ── Progress bar — pixel-rounded, themed colours ─────────────────────── */

.billing-card[b-pslmh0c71b]  .progress {
    background-color: var(--smw-sand-light);
    border: 2px solid var(--smw-sand-dark);
    border-radius: 0;
    height: 12px !important;
    padding: 0;
    overflow: hidden;
    box-shadow: inset 1px 1px 0 rgba(0, 0, 0, 0.15);
}

.billing-card[b-pslmh0c71b]  .progress-bar.bg-success {
    background-color: var(--smw-grass) !important;
}

.billing-card[b-pslmh0c71b]  .progress-bar.bg-danger {
    background-color: var(--sfc-btn-a) !important;
}

/* ── Plan comparison grid ─────────────────────────────────────────────── */

.plan-grid[b-pslmh0c71b] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1.25rem;
}

.plan-card[b-pslmh0c71b] {
    display: flex;
    flex-direction: column;
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    padding: 1.25rem;
    border-radius: 0;
}

.plan-card--featured[b-pslmh0c71b] {
    border-color: var(--smw-grass-dark);
    box-shadow: 4px 4px 0 rgba(38, 115, 38, 0.35);
    position: relative;
}

.plan-card--featured[b-pslmh0c71b]::before {
    content: "★ Recommended";
    position: absolute;
    top: -0.7rem;
    left: 0.75rem;
    background: var(--smw-grass);
    color: var(--smw-white);
    border: 2px solid var(--smw-grass-dark);
    padding: 0.15rem 0.5rem;
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.3);
}

.plan-name[b-pslmh0c71b] {
    font-family: var(--ui-font);
    font-size: 1.23rem;
    color: var(--smw-dark-grey);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.5);
    margin-bottom: 0.5rem;
}

.plan-limit[b-pslmh0c71b] {
    font-family: var(--ui-font);
    font-size: 1.79rem;
    line-height: 1.2;
    color: var(--smw-grass-dark);
    margin-bottom: 1.1rem;
}

.plan-limit .plan-per[b-pslmh0c71b] {
    color: var(--smw-grey);
    font-size: 0.79rem;
    margin-left: 0.3rem;
}

.plan-features[b-pslmh0c71b] {
    list-style: none;
    padding: 0;
    margin: 0 0 1.25rem;
    flex: 1;
}

.plan-features li[b-pslmh0c71b] {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    padding: 0.3rem 0;
    font-family: var(--ui-font);
    font-size: 0.81rem;
    line-height: 1.7;
    color: var(--smw-dark-grey);
}

.plan-features li[b-pslmh0c71b]  svg {
    color: var(--smw-grass-dark);
    flex-shrink: 0;
    margin-top: 0.35rem;
}

/* ── Renewal hint line ────────────────────────────────────────────────── */

.billing-card[b-pslmh0c71b]  .text-muted.small {
    color: var(--smw-grey) !important;
    font-size: 0.75rem;
}

/* ── Redirect overlay (shown while a button is sending the user to Stripe) ── */

.redirect-overlay[b-pslmh0c71b] {
    position: fixed;
    inset: 0;
    background: rgba(20, 20, 30, 0.55);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    backdrop-filter: blur(2px);
    animation: redirect-fade-in-b-pslmh0c71b 120ms ease-out;
}

@keyframes redirect-fade-in-b-pslmh0c71b {
    from { opacity: 0; }
    to   { opacity: 1; }
}

.redirect-card[b-pslmh0c71b] {
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.35);
    padding: 1.5rem 2.25rem;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.85rem;
    max-width: 90vw;
}

.redirect-spinner[b-pslmh0c71b] {
    width: 32px;
    height: 32px;
    border: 4px solid var(--smw-sand-light);
    border-top-color: var(--smw-grass);
    border-radius: 50%;
    animation: redirect-spin-b-pslmh0c71b 0.8s linear infinite;
}

@keyframes redirect-spin-b-pslmh0c71b {
    to { transform: rotate(360deg); }
}

.redirect-text[b-pslmh0c71b] {
    font-family: var(--ui-font);
    font-size: 0.89rem;
    color: var(--smw-dark-grey);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 0;
}

.redirect-subtext[b-pslmh0c71b] {
    font-size: 0.79rem;
    color: var(--smw-grey);
    margin: 0;
}

/* ── Pre-purchase disclosure ──────────────────────────────────────────────
   Clear-and-conspicuous text adjacent to the upgrade buttons. Body-weight
   so it satisfies ROSCA / CA ARL requirements.
   ───────────────────────────────────────────────────────────────────────── */

.billing-disclosure[b-pslmh0c71b] {
    font-size: 0.79rem;
    line-height: 1.5;
    color: var(--smw-dark-grey);
}

.billing-disclosure a[b-pslmh0c71b] {
    color: var(--smw-dark-grey);
    text-decoration: underline;
}

/* Money and data figures use the mono face */
.plan-limit[b-pslmh0c71b] {
    font-family: var(--mono-font);
    font-variant-numeric: tabular-nums;
}
/* /Components/Pages/Blog/Blog.razor.rz.scp.css */
/* Blog styles are global (used by both Blog.razor and BlogPost.razor)
   and live in wwwroot/app.css under the `.blog-*` namespace.
   Blazor scoped CSS only applies to elements rendered by its companion
   component — and the post detail page is a different component — so
   keeping the styles here would silently break post pages. */
/* /Components/Pages/BrowseDeals.razor.rz.scp.css */
.browse-search[b-nqpq4tkzoo] {
    max-width: 40rem;
    margin-bottom: 1.25rem;
}

.browse-list[b-nqpq4tkzoo] {
    margin-bottom: 1.5rem;
}

.browse-card[b-nqpq4tkzoo] {
    position: relative;
    display: flex;
    flex-direction: column;
    cursor: pointer;
}

.browse-card-link[b-nqpq4tkzoo] {
    position: absolute;
    inset: 0;
    z-index: 1;
}

.browse-card-link:focus-visible[b-nqpq4tkzoo] {
    outline: 3px solid var(--smw-grass-dark);
    outline-offset: 2px;
}

.browse-card-actions[b-nqpq4tkzoo] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    margin-top: auto;
    padding-top: 0.75rem;
}

/* A quiet text action, not a button: repeated on every card, a filled button turned the
   grid into a wall of green. Sits above the card's stretched link (z-index). */
.browse-track[b-nqpq4tkzoo] {
    position: relative;
    z-index: 2;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--smw-grass-dark);
    text-decoration: none;
}

.browse-track:hover[b-nqpq4tkzoo],
.browse-track:focus-visible[b-nqpq4tkzoo] {
    color: var(--smw-dark-grey);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.browse-track.tracking[b-nqpq4tkzoo] {
    font-weight: 500;
    color: var(--smw-grey);
}

.browse-open[b-nqpq4tkzoo] {
    font-size: 0.8125rem;
    color: var(--smw-grey);
}

.browse-kinds[b-nqpq4tkzoo] {
    max-width: 820px;
}
/* /Components/Pages/CreateProfile.razor.rz.scp.css */
/* Alternating row tint for the live preview listing rows */
[b-4yvhg6jwt0] .list-group-item:nth-child(even) {
    background-color: var(--bs-tertiary-bg, #f8f9fa);
}

/* Cap the preview card's height to match the form column on the left.
   Absolute positioning takes the card out of the column's content-size
   calculation, so the form column drives the row height and the card
   fills whatever space the column gets. The body scrolls internally
   and the footer stays pinned at the bottom.

   Only applied at lg+ where the two columns sit side-by-side. Below lg
   the columns stack and the preview card flows naturally below the form. */
.preview-card[b-4yvhg6jwt0] {
    display: flex;
    flex-direction: column;
}

.preview-body[b-4yvhg6jwt0] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}

@media (min-width: 992px) {
    .preview-col[b-4yvhg6jwt0] {
        position: relative;
    }

    .preview-card[b-4yvhg6jwt0] {
        position: absolute;
        top: 0;
        bottom: 0;
        left: calc(var(--bs-gutter-x) * 0.5);
        right: calc(var(--bs-gutter-x) * 0.5);
    }
}

/* Advanced filters: collapsible section that holds Conditions, Include/Exclude
   keywords, and Seller reputation. Hidden by default; the EditProfile page
   opens it automatically when any of those fields are already populated. */
.advanced-toggle[b-4yvhg6jwt0] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.55rem 0.5rem;
    background: transparent;
    border: none;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

.advanced-toggle:hover[b-4yvhg6jwt0] {
    background-color: var(--smw-sand-light, #f4eccc);
}

.advanced-chevron[b-4yvhg6jwt0] {
    display: inline-block;
    font-size: 1.12rem;
    line-height: 1;
    font-weight: 700;
    color: inherit;
    transition: transform 0.15s ease;
}

.advanced-toggle.open .advanced-chevron[b-4yvhg6jwt0] {
    transform: rotate(90deg);
}

.advanced-count[b-4yvhg6jwt0] {
    margin-left: auto;
    font-size: 0.79rem;
    color: var(--smw-grey, #6c757d);
}

.advanced-body[b-4yvhg6jwt0] {
    display: none;
    padding-top: 0.85rem;
}

.advanced-body.open[b-4yvhg6jwt0] {
    display: block;
}

/* Notification caveat shown below the preview results */
.preview-notice[b-4yvhg6jwt0] {
    font-size: 0.75rem;
    color: var(--smw-grey);
    background-color: var(--smw-sand-light);
    border-top: 2px solid var(--smw-sand-dark);
    padding: 0.5rem 0.85rem;
    line-height: 1.7;
}

/* /Components/Pages/Deals/GameDealsPage.razor.rz.scp.css */
/* Deal-page scoped styles. The whole article renders as one big pixel-card
   over the sky background so editorial + stats + feed read as a single
   document, not a stack of floating sections. */

.game-deals-page[b-tsf24r0y5b] {
    /* --deal-accent gets overridden per data-console below; everything that wants
       to pick up the console's signature colour reads from this single var. */
    --deal-accent: var(--smw-mario-red, #d82800);

    max-width: 920px;
    margin: 2rem auto 3rem;
    padding: 2.5rem 2.5rem 3rem;
    background: var(--smw-white, #ffffff);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.22);
    color: var(--smw-sand-dark, #111111);
}

/* Console-themed accent — one custom property override per console slug.
   Keep these saturated enough to register as the "this console's page" cue
   but not loud enough to overpower the editorial body. */
.game-deals-page[data-console="nes"][b-tsf24r0y5b]       { --deal-accent: #d82800; } /* NES red */
.game-deals-page[data-console="snes"][b-tsf24r0y5b]      { --deal-accent: #8b46c8; } /* SNES purple */
.game-deals-page[data-console="n64"][b-tsf24r0y5b]       { --deal-accent: #1f7a1f; } /* N64 green */
.game-deals-page[data-console="gamecube"][b-tsf24r0y5b]  { --deal-accent: #4090d8; } /* GC indigo */
.game-deals-page[data-console="gameboy"][b-tsf24r0y5b]   { --deal-accent: #7a9a3c; } /* DMG olive */
.game-deals-page[data-console="gba"][b-tsf24r0y5b]       { --deal-accent: #8b46c8; } /* GBA violet */
.game-deals-page[data-console="ds"][b-tsf24r0y5b]        { --deal-accent: #b32d2d; } /* DS crimson */
.game-deals-page[data-console="ps1"][b-tsf24r0y5b]       { --deal-accent: #3c4850; } /* PS1 slate */
.game-deals-page[data-console="ps2"][b-tsf24r0y5b]       { --deal-accent: #1c2030; } /* PS2 deep navy */
.game-deals-page[data-console="genesis"][b-tsf24r0y5b]   { --deal-accent: #1c1c1c; } /* Sega obsidian */
.game-deals-page[data-console="saturn"][b-tsf24r0y5b]    { --deal-accent: #4a4a4a; } /* Saturn grey */
.game-deals-page[data-console="dreamcast"][b-tsf24r0y5b] { --deal-accent: #d8771c; } /* Dreamcast orange */

@media (max-width: 640px) {
    .game-deals-page[b-tsf24r0y5b] {
        margin: 1rem 0.75rem 2rem;
        padding: 1.5rem 1.25rem 2rem;
        box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    }
}

.deals-breadcrumb[b-tsf24r0y5b] {
    font-size: 0.98rem;
    margin-bottom: 1.5rem;
    color: var(--bs-secondary-color, #6c757d);
}

.deals-breadcrumb a[b-tsf24r0y5b] {
    color: inherit;
    text-decoration: none;
}

.deals-breadcrumb a:hover[b-tsf24r0y5b] {
    text-decoration: underline;
}

.deals-breadcrumb span[b-tsf24r0y5b] {
    margin: 0 0.35rem;
    color: var(--deal-accent);
}

.game-deals-hero[b-tsf24r0y5b] {
    margin-bottom: 2.5rem;
}

.game-deals-hero h1[b-tsf24r0y5b] {
    margin-bottom: 0.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 4px solid var(--deal-accent);
    display: inline-block;
}

.game-deals-hero-sub[b-tsf24r0y5b] {
    color: var(--bs-secondary-color, #6c757d);
    margin-bottom: 0.75rem;
}

.game-deals-verdict[b-tsf24r0y5b] {
    padding: 0.75rem 1rem;
    background: rgba(0, 0, 0, 0.04);
    border-left: 4px solid var(--deal-accent);
    border-radius: 0;
}

/* Anchor-jump landing offset — keeps the section heading from sitting flush
   against the top of the viewport after the jump. */
#current-listings[b-tsf24r0y5b] {
    scroll-margin-top: 5rem; /* clears the 64px sticky nav */
}

.game-deals-section[b-tsf24r0y5b] {
    margin: 2.5rem 0;
}

.game-deals-section > h2[b-tsf24r0y5b] {
    margin-bottom: 1rem;
    padding-bottom: 0.3rem;
    border-bottom: 2px solid var(--deal-accent);
}

.game-deals-filter-promise[b-tsf24r0y5b] {
    max-width: 65ch;
    margin: 0 0 1.25rem;
    line-height: 1.6;
}

/* ── Scoreboard HUD ─────────────────────────────────────────────────────────
   Three-tile pixel scoreboard sitting under the hero. Reads at a glance:
   median ask · listings now · 90d trend. Tiles share the page-card vocabulary
   but use sand-light as their fill so they read as recessed inserts, not
   floating sub-cards. */
.game-deals-hud[b-tsf24r0y5b] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin: 1.5rem 0 2.5rem;
}

.game-deals-hud-tile[b-tsf24r0y5b] {
    padding: 1rem 1.1rem 1.1rem;
    background: var(--smw-sand-light, #f4eccc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
    color: var(--smw-sand-dark, #111111);
    text-align: left;
}

.game-deals-hud-label[b-tsf24r0y5b] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.7;
    margin-bottom: 0.4rem;
}

.game-deals-hud-value[b-tsf24r0y5b] {
    font-family: var(--ui-font);
    font-size: 1.85rem;
    line-height: 1.15;
    margin-bottom: 0.35rem;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    word-break: break-word;
}

.game-deals-hud-arrow[b-tsf24r0y5b] {
    font-size: 1.35rem;
    line-height: 1;
}

.game-deals-hud-sub[b-tsf24r0y5b] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    opacity: 0.65;
}

/* Trend tile colour-codes the value/arrow only — keeps the label & sub neutral
   so the tile doesn't shout at the reader. */
.game-deals-hud-tile.trend-up   .game-deals-hud-value[b-tsf24r0y5b] { color: #b32d2d; }
.game-deals-hud-tile.trend-down .game-deals-hud-value[b-tsf24r0y5b] { color: #1f7a1f; }
.game-deals-hud-tile.trend-flat .game-deals-hud-value[b-tsf24r0y5b] { color: var(--smw-sand-dark, #111111); }

@media (max-width: 640px) {
    .game-deals-hud[b-tsf24r0y5b] {
        grid-template-columns: 1fr;
        gap: 0.75rem;
        margin: 1rem 0 2rem;
    }

    .game-deals-hud-value[b-tsf24r0y5b] {
        font-size: 1.57rem;
    }
}

/* Editorial body is rendered from MarkupString, so its descendants don't get
   the Blazor scope attribute — typography rules must use ::deep to apply.
   No own background/border: the page card now wraps everything, so a second
   card here would read as a card-in-a-card. A thin top divider separates it
   from the curation block above. */
.game-deals-editorial[b-tsf24r0y5b] {
    margin: 2.5rem 0;
    padding-top: 2rem;
    border-top: 2px solid var(--smw-sand-dark, #111111);
    color: inherit;
}

.game-deals-editorial[b-tsf24r0y5b]  > *:first-child {
    margin-top: 0;
}

.game-deals-editorial[b-tsf24r0y5b]  > *:last-child {
    margin-bottom: 0;
}

.game-deals-editorial[b-tsf24r0y5b]  h1 {
    font-size: 1.79rem;
    line-height: 1.25;
    margin: 0 0 1.25rem;
    padding-bottom: 0.75rem;
    border-bottom: 3px solid var(--deal-accent);
}

.game-deals-editorial[b-tsf24r0y5b]  h2 {
    font-size: 1.45rem;
    line-height: 1.3;
    margin: 2.25rem 0 0.75rem;
}

.game-deals-editorial[b-tsf24r0y5b]  h3 {
    font-size: 1.23rem;
    line-height: 1.35;
    margin: 1.5rem 0 0.5rem;
}

.game-deals-editorial[b-tsf24r0y5b]  p {
    line-height: 1.7;
    margin: 0 0 1rem;
}

.game-deals-editorial[b-tsf24r0y5b]  ul,
.game-deals-editorial[b-tsf24r0y5b]  ol {
    line-height: 1.7;
    margin: 0 0 1rem;
    padding-left: 1.4rem;
}

.game-deals-editorial[b-tsf24r0y5b]  li {
    margin-bottom: 0.4rem;
}

.game-deals-editorial[b-tsf24r0y5b]  li > p {
    margin-bottom: 0.4rem;
}

.game-deals-editorial[b-tsf24r0y5b]  strong {
    color: var(--smw-sand-dark, #111111);
}

.game-deals-editorial[b-tsf24r0y5b]  code {
    background: rgba(0, 0, 0, 0.06);
    padding: 0.1em 0.35em;
    border-radius: 3px;
    font-size: 0.92em;
}

.game-deals-editorial[b-tsf24r0y5b]  a {
    color: var(--smw-water, #4090d8);
    text-decoration: underline;
}

.game-deals-editorial[b-tsf24r0y5b]  a:hover {
    color: var(--smw-mario-red, #d82800);
}

@media (max-width: 640px) {
    .game-deals-editorial[b-tsf24r0y5b] {
        padding-top: 1.5rem;
    }

    .game-deals-editorial[b-tsf24r0y5b]  h1 {
        font-size: 1.51rem;
    }

    .game-deals-editorial[b-tsf24r0y5b]  h2 {
        font-size: 1.29rem;
        margin-top: 1.75rem;
    }
}

/* ── 90-day trend block ────────────────────────────────────────────────────
   Side-by-side: big delta numerals on the left, sparkline filling the right.
   On narrow screens it stacks. The whole block is its own pixel card so the
   trend reads as a deliberate data callout, not a quiet aside. */
.game-deals-trend[b-tsf24r0y5b] {
    margin-top: 1.5rem;
    display: grid;
    grid-template-columns: minmax(170px, 1fr) 2fr;
    gap: 1.25rem;
    align-items: center;
    padding: 1.25rem 1.5rem;
    background: var(--smw-sand-light, #f4eccc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
}

.game-deals-trend-figure[b-tsf24r0y5b] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.game-deals-trend-label[b-tsf24r0y5b] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.7;
}

.game-deals-trend-delta[b-tsf24r0y5b] {
    font-family: var(--ui-font);
    font-size: 2.91rem;
    line-height: 1.05;
    color: currentColor;
}

.game-deals-trend-caption[b-tsf24r0y5b] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    opacity: 0.65;
    color: var(--smw-sand-dark, #111111);
}

.game-deals-trend-sparkline[b-tsf24r0y5b] {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

@media (max-width: 640px) {
    .game-deals-trend[b-tsf24r0y5b] {
        grid-template-columns: 1fr;
        gap: 0.5rem;
        padding: 1rem 1.25rem;
    }

    .game-deals-trend-delta[b-tsf24r0y5b] {
        font-size: 2.24rem;
    }

    .game-deals-trend-sparkline[b-tsf24r0y5b] {
        justify-content: flex-start;
    }
}

/* Trend direction colours — applied to the trend block via .trend-up/down/flat
   modifier classes. Only the delta numerals + sparkline (currentColor) pick
   up the tint; labels stay neutral. The HUD tiles also use these modifiers,
   so the colour assignment is shared via the existing HUD trend-up/down/flat
   rules above — but the .trend-* classes themselves only set `color`, which
   the HUD value rules then override to their own value selectors. */
.trend-up[b-tsf24r0y5b]   { color: #b32d2d; } /* climbing prices = "bad for buyers" red */
.trend-down[b-tsf24r0y5b] { color: #1f7a1f; } /* easing prices  = "good for buyers" green */
.trend-flat[b-tsf24r0y5b] { color: var(--smw-sand-dark, #111111); }

/* Link to the full daily series (/prices/...), sitting under the trend block. */
.game-deals-history-link[b-tsf24r0y5b] {
    margin: 1rem 0 1.5rem;
    font-weight: 600;
}

.game-deals-history-link a[b-tsf24r0y5b] {
    color: var(--smw-dark-grey, #3c4850);
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
}

.game-deals-history-link a:hover[b-tsf24r0y5b] {
    color: var(--smw-grass-dark, #267326);
}

.game-deals-frequency-list[b-tsf24r0y5b] {
    list-style: none;
    padding: 0;
}

.game-deals-frequency-list li[b-tsf24r0y5b] {
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.game-deals-frequency-list li:last-child[b-tsf24r0y5b] {
    border-bottom: none;
}

.game-deals-empty[b-tsf24r0y5b] {
    padding: 1.5rem;
    background: rgba(0, 0, 0, 0.025);
    border-radius: 6px;
    color: var(--bs-secondary-color, #6c757d);
}

.game-deals-related-list[b-tsf24r0y5b] {
    list-style: none;
    padding: 0;
}

.game-deals-related-list li[b-tsf24r0y5b] {
    padding: 0.4rem 0;
}

/* Index + hub pages share a few utility classes — colocated here because
   they're all under /deals and the rest of the styles live in this file. */

.deals-index[b-tsf24r0y5b] {
    max-width: 880px;
    margin: 0 auto;
    padding: 2rem 1.25rem 4rem;
}

.deals-console-list[b-tsf24r0y5b],
.deals-game-list[b-tsf24r0y5b] {
    list-style: none;
    padding: 0;
}

.deals-console-list li[b-tsf24r0y5b],
.deals-game-list li[b-tsf24r0y5b] {
    padding: 0.6rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.deals-console-list a[b-tsf24r0y5b],
.deals-game-list a[b-tsf24r0y5b] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 1rem;
    color: inherit;
    text-decoration: none;
}

.deals-console-list a:hover[b-tsf24r0y5b],
.deals-game-list a:hover strong[b-tsf24r0y5b] {
    text-decoration: underline;
}

.deals-console-hub[b-tsf24r0y5b] {
    max-width: 880px;
    margin: 0 auto;
    padding: 2rem 1.25rem 4rem;
}

/* Trend sparkline currentColor inherits from .game-deals-trend so it picks
   up the trend-direction tint above when nested under it. Default ink. */
.trend-sparkline[b-tsf24r0y5b] {
    margin: 0;
    color: currentColor;
}

.trend-sparkline svg[b-tsf24r0y5b] {
    width: 100%;
    max-width: 320px;
    height: auto;
}

/* ── Floating "Get alerts" CTA ─────────────────────────────────────────────
   Fixed bottom-right pill. Hidden by default; the inline IntersectionObserver
   on the page adds .visible once the sentinel near the top scrolls offscreen
   so the pill only shows up while the user is engaged with the feed. */
.game-deals-cta-sentinel[b-tsf24r0y5b] {
    height: 1px;
    width: 100%;
    margin: 0;
    pointer-events: none;
}

.game-deals-floating-cta[b-tsf24r0y5b] {
    position: fixed;
    bottom: 1.25rem;
    right: 1.25rem;
    z-index: 20;

    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.7rem 1.1rem;

    background: var(--smw-coin, #e8a800);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.3);
    color: var(--smw-sand-dark, #111111);
    text-decoration: none;

    font-family: var(--ui-font);
    font-size: 0.79rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;

    opacity: 0;
    pointer-events: none;
    transform: translateY(0.5rem);
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.game-deals-floating-cta.visible[b-tsf24r0y5b] {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

.game-deals-floating-cta:hover[b-tsf24r0y5b] {
    background: var(--smw-coin-bright, #ffd84e);
    transform: translateY(-1px);
}

.game-deals-floating-cta-icon[b-tsf24r0y5b] {
    font-size: 1.07rem;
    line-height: 1;
}

@media (max-width: 640px) {
    .game-deals-floating-cta[b-tsf24r0y5b] {
        bottom: 0.75rem;
        right: 0.75rem;
        padding: 0.6rem 0.9rem;
        font-size: 0.75rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .game-deals-floating-cta[b-tsf24r0y5b] {
        transition: opacity 0.2s ease;
        transform: none;
    }

    .game-deals-floating-cta.visible[b-tsf24r0y5b] {
        transform: none;
    }

    .game-deals-floating-cta:hover[b-tsf24r0y5b] {
        transform: none;
    }
}

/* Money and data figures use the mono face */
.game-deals-hud-value[b-tsf24r0y5b] {
    font-family: var(--mono-font);
    font-variant-numeric: tabular-nums;
}
/* /Components/Pages/DiscordBot.razor.rz.scp.css */
/* Discord bot landing pages (/discord-bot and its two niche variants). Hero over the
   sky background, then one pixel-card holding the content sections, same chrome as
   the tools pages: 3px black border, offset shadow, square corners. Blurple accent
   for the Discord bits, coin gold for the honesty callout. */

.dbot-hero[b-mtt9watmos] {
    --dbot-accent: #5865f2;

    display: grid;
    grid-template-columns: 1.05fr 1fr;
    gap: 3rem;
    align-items: center;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 3rem 2rem 2.5rem;
}

.dbot-hero-copy[b-mtt9watmos] {
    min-width: 0;
}

.dbot-hero-visual[b-mtt9watmos] {
    display: flex;
    justify-content: center;
    min-width: 0;
}

.dbot-breadcrumb[b-mtt9watmos] {
    font-size: 0.875rem;
    margin-bottom: 1.25rem;
    color: var(--smw-dark-grey, #3c4850);
}

.dbot-breadcrumb a[b-mtt9watmos] {
    color: inherit;
    text-decoration: none;
}

.dbot-breadcrumb a:hover[b-mtt9watmos] {
    text-decoration: underline;
}

.dbot-breadcrumb span[b-mtt9watmos] {
    margin: 0 0.3rem;
    color: var(--dbot-accent);
}

.dbot-headline[b-mtt9watmos] {
    font-size: 2.25rem;
    line-height: 1.25;
    color: var(--smw-dark-grey, #3c4850);
    text-shadow: 2px 2px 0 rgba(255, 255, 255, 0.7);
    margin: 0 0 1.1rem;
}

.dbot-lead[b-mtt9watmos] {
    font-size: 1.0625rem;
    line-height: 1.7;
    color: var(--smw-dark-grey, #3c4850);
    margin: 0 0 1.5rem;
    max-width: 36rem;
}

.dbot-cta-row[b-mtt9watmos] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1rem 1.5rem;
    margin-bottom: 1.5rem;
}

.dbot-cta[b-mtt9watmos] {
    font-size: 1rem;
    padding: 0.75rem 1.5rem;
}

.dbot-cta-secondary[b-mtt9watmos] {
    font-size: 1rem;
    color: var(--smw-dark-grey, #3c4850);
}

.dbot-facts[b-mtt9watmos] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem 1.25rem;
    font-size: 0.9375rem;
    color: var(--smw-dark-grey, #3c4850);
}

.dbot-facts li[b-mtt9watmos] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* ── Content card ─────────────────────────────────────────────────────── */

.dbot-page[b-mtt9watmos] {
    --dbot-accent: #5865f2;

    width: calc(100% - 4rem);
    max-width: 960px;
    margin: 1rem auto 1rem;
    padding: 1rem 2.5rem 2.5rem;
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.22);
    color: var(--smw-sand-dark, #111111);
}

.dbot-section[b-mtt9watmos] {
    margin-top: 2.25rem;
    scroll-margin-top: 4rem;
}

.dbot-section h2[b-mtt9watmos] {
    display: inline-block;
    font-size: 1.5rem;
    margin-bottom: 1rem;
    padding-bottom: 0.35rem;
    border-bottom: 4px solid var(--dbot-accent);
}

.dbot-section p[b-mtt9watmos],
.dbot-section li[b-mtt9watmos],
.dbot-section dd[b-mtt9watmos] {
    font-size: 1rem;
    line-height: 1.7;
}

.dbot-page code[b-mtt9watmos] {
    font-family: var(--mono-font);
    font-size: 0.9em;
    color: var(--smw-purple-dark, #5e2a93);
    background: rgba(139, 70, 200, 0.08);
    padding: 0.05rem 0.3rem;
    word-break: break-word;
}

/* Audience cards (main page only) */

.dbot-audience-grid[b-mtt9watmos] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    margin-top: 1.25rem;
}

.dbot-audience-card[b-mtt9watmos] {
    display: flex;
    flex-direction: column;
    padding: 1.1rem 1.1rem 1rem;
    background: var(--smw-sky-light, #d6eeff);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
    color: inherit;
    text-decoration: none;
    transition: transform 0.12s, box-shadow 0.12s;
}

.dbot-audience-card:hover[b-mtt9watmos] {
    transform: translate(-2px, -2px);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.25);
    color: inherit;
}

.dbot-audience-card h3[b-mtt9watmos] {
    font-size: 1.25rem;
    margin: 0 0 0.5rem;
}

.dbot-audience-card p[b-mtt9watmos] {
    font-size: 0.9375rem;
    margin: 0 0 0.75rem;
}

.dbot-audience-cta[b-mtt9watmos] {
    margin-top: auto;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--smw-grass-dark, #267326);
}

/* Example commands */

.dbot-examples[b-mtt9watmos] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 0.75rem;
}

.dbot-example[b-mtt9watmos] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 0.8rem 1rem;
    border: 3px solid var(--smw-sand-dark, #111111);
    background: var(--smw-sky-light, #d6eeff);
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.15);
}

.dbot-page .dbot-example-cmd[b-mtt9watmos] {
    align-self: flex-start;
    font-size: 0.9375rem;
    color: #e3e5e8;
    background: #313338;
    padding: 0.2rem 0.55rem;
}

.dbot-example-what[b-mtt9watmos] {
    font-size: 0.9375rem;
    color: var(--smw-dark-grey, #3c4850);
}

/* Command reference */

.dbot-commands[b-mtt9watmos] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9375rem;
}

.dbot-commands th[b-mtt9watmos],
.dbot-commands td[b-mtt9watmos] {
    padding: 0.55rem 0.75rem;
    border: 2px solid var(--smw-sand-dark, #111111);
    vertical-align: top;
    text-align: left;
}

.dbot-commands thead th[b-mtt9watmos] {
    font-size: 0.75rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    background: var(--smw-sand-light, #f4eccc);
}

.dbot-commands td:first-child[b-mtt9watmos] {
    width: 34%;
    white-space: nowrap;
}

/* How it works */

.dbot-steps[b-mtt9watmos] {
    margin: 0 0 1.25rem;
    padding-left: 1.4rem;
}

.dbot-steps li[b-mtt9watmos] {
    margin-bottom: 0.6rem;
}

.dbot-terms[b-mtt9watmos] {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 0.4rem 1rem;
    margin: 0 0 1.25rem;
    padding: 1rem 1.1rem;
    background: var(--smw-sky-light, #d6eeff);
    border: 3px solid var(--smw-sand-dark, #111111);
}

.dbot-terms dt[b-mtt9watmos] {
    font-family: var(--mono-font);
    font-weight: 600;
}

.dbot-terms dd[b-mtt9watmos] {
    margin: 0;
}

.dbot-honest[b-mtt9watmos] {
    margin: 0;
    padding: 0.9rem 1.1rem;
    background: var(--smw-sand-light, #f4eccc);
    border: 3px solid var(--smw-sand-dark, #111111);
    border-left: 8px solid var(--smw-coin, #e8a800);
}

/* Privacy */

.dbot-privacy[b-mtt9watmos] {
    margin: 0;
    padding-left: 1.2rem;
}

.dbot-privacy li[b-mtt9watmos] {
    margin-bottom: 0.5rem;
}

/* Add + alerts */

.dbot-add[b-mtt9watmos] {
    padding: 1.25rem 1.4rem 1.5rem;
    border: 3px solid var(--smw-sand-dark, #111111);
    border-left: 8px solid var(--dbot-accent);
    background: var(--smw-white, #fcfcfc);
}

.dbot-pending[b-mtt9watmos] {
    margin: 0;
    padding: 0.75rem 1rem;
    border: 2px dashed var(--smw-coin, #e8a800);
    background: var(--smw-sand-light, #f4eccc);
}

.dbot-support[b-mtt9watmos] {
    margin: 1.25rem 0 0;
    font-size: 0.95rem;
    color: var(--smw-dark-grey, #3c4850);
}

.dbot-alerts[b-mtt9watmos] {
    padding: 1.25rem 1.4rem 1.5rem;
    background: var(--smw-grass-dark, #267326);
    color: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.22);
}

.dbot-alerts h2[b-mtt9watmos] {
    color: var(--smw-white, #fcfcfc);
    border-bottom-color: var(--smw-coin-bright, #ffd84e);
}

.dbot-alerts a:not(.btn)[b-mtt9watmos] {
    color: var(--smw-coin-bright, #ffd84e);
}

.dbot-alerts-btn[b-mtt9watmos] {
    background: var(--smw-coin-bright, #ffd84e);
    color: var(--smw-sand-dark, #111111);
    border: 3px solid var(--smw-sand-dark, #111111);
}

.dbot-alerts-btn:hover[b-mtt9watmos] {
    background: var(--smw-coin, #e8a800);
    color: var(--smw-sand-dark, #111111);
}

.dbot-related[b-mtt9watmos] {
    margin: 2rem 0 0;
    font-size: 1rem;
    line-height: 1.7;
    color: var(--smw-dark-grey, #3c4850);
}

/* ── Responsive ───────────────────────────────────────────────────────── */

@media (max-width: 900px) {
    .dbot-hero[b-mtt9watmos] {
        grid-template-columns: 1fr;
        gap: 2.5rem;
        padding: 2rem 1.25rem 1.5rem;
    }
}

@media (max-width: 640px) {
    .dbot-headline[b-mtt9watmos] {
        font-size: 1.75rem;
    }

    .dbot-facts[b-mtt9watmos],
    .dbot-audience-grid[b-mtt9watmos] {
        grid-template-columns: minmax(0, 1fr);
    }

    .dbot-page[b-mtt9watmos] {
        width: calc(100% - 1.5rem);
        margin: 0.5rem auto;
        padding: 0.5rem 1.1rem 2rem;
        box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    }

    .dbot-add[b-mtt9watmos],
    .dbot-alerts[b-mtt9watmos] {
        padding: 1rem;
    }

    .dbot-commands td:first-child[b-mtt9watmos] {
        width: auto;
        white-space: normal;
    }

    .dbot-terms[b-mtt9watmos] {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* /Components/Pages/EditProfile.razor.rz.scp.css */
/* Alternating row tint for the live preview listing rows */
[b-pt69ijzby0] .list-group-item:nth-child(even) {
    background-color: var(--bs-tertiary-bg, #f8f9fa);
}

/* Cap the preview card's height to match the form column on the left.
   Absolute positioning takes the card out of the column's content-size
   calculation, so the form column drives the row height and the card
   fills whatever space the column gets. The body scrolls internally.

   Only applied at lg+ where the two columns sit side-by-side. Below lg
   the columns stack and the preview card flows naturally below the form. */
.preview-card[b-pt69ijzby0] {
    display: flex;
    flex-direction: column;
}

.preview-body[b-pt69ijzby0] {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}

@media (min-width: 992px) {
    .preview-col[b-pt69ijzby0] {
        position: relative;
    }

    .preview-card[b-pt69ijzby0] {
        position: absolute;
        top: 0;
        bottom: 0;
        left: calc(var(--bs-gutter-x) * 0.5);
        right: calc(var(--bs-gutter-x) * 0.5);
    }
}

/* Advanced filters: collapsible section that holds Conditions, Include/Exclude
   keywords, and Seller reputation. Auto-expanded when editing a profile that
   already has any of those fields populated. */
.advanced-toggle[b-pt69ijzby0] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.55rem 0.5rem;
    background: transparent;
    border: none;
    color: inherit;
    text-align: left;
    cursor: pointer;
}

.advanced-toggle:hover[b-pt69ijzby0] {
    background-color: var(--smw-sand-light, #f4eccc);
}

.advanced-chevron[b-pt69ijzby0] {
    display: inline-block;
    font-size: 1.12rem;
    line-height: 1;
    font-weight: 700;
    color: inherit;
    transition: transform 0.15s ease;
}

.advanced-toggle.open .advanced-chevron[b-pt69ijzby0] {
    transform: rotate(90deg);
}

.advanced-count[b-pt69ijzby0] {
    margin-left: auto;
    font-size: 0.79rem;
    color: var(--smw-grey, #6c757d);
}

.advanced-body[b-pt69ijzby0] {
    display: none;
    padding-top: 0.85rem;
}

.advanced-body.open[b-pt69ijzby0] {
    display: block;
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* First-visit nudge when the user has no search profiles at all. */
.dashboard-empty[b-n9nunolgrn] {
    max-width: 36rem;
    padding: 1rem 1.25rem;
    background: var(--smw-white);
    border: 2px solid var(--smw-sand-dark);
}
/* /Components/Pages/Landing.razor.rz.scp.css */
/* Landing page styles are shared with /video-game-alerts and /pc-parts-alerts
   and live in wwwroot/app.css under the `.landing-*` namespace. */
/* /Components/Pages/Matches.razor.rz.scp.css */
/* ── Filter / sort toolbar ─────────────────────────────────────────────── */

.matches-toolbar[b-78rpg3dc7u] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2rem;
    margin-bottom: 1rem;
    padding: 0.75rem 1rem;
    background: var(--bs-tertiary-bg, #f8f9fa);
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.5rem;
}

.toolbar-group[b-78rpg3dc7u] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.toolbar-label[b-78rpg3dc7u] {
    font-size: 0.89rem;
    font-weight: 600;
    color: var(--bs-secondary-color, #6c757d);
    white-space: nowrap;
    flex-shrink: 0;
    margin-bottom: 0;
}

.sort-buttons[b-78rpg3dc7u] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.sort-buttons .btn:focus[b-78rpg3dc7u],
.sort-buttons .btn:active:focus[b-78rpg3dc7u] {
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.5);
}

.sort-separator[b-78rpg3dc7u] {
    width: 1px;
    height: 1.4rem;
    background: var(--bs-border-color, #dee2e6);
    margin: 0 0.35rem;
    flex-shrink: 0;
}

.sort-dir-btn[b-78rpg3dc7u] {
    width: 4.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.2rem;
}

.sort-arrow[b-78rpg3dc7u] {
    position: relative;
    top: -1px;
    line-height: 1;
}

@media (max-width: 640px) {
    .matches-toolbar[b-78rpg3dc7u] {
        gap: 0.75rem;
        padding: 0.6rem 0.75rem;
    }

    .toolbar-group[b-78rpg3dc7u] {
        flex-wrap: wrap;
    }

    .sort-buttons[b-78rpg3dc7u] {
        flex-wrap: wrap;
        row-gap: 0.4rem;
    }

    .sort-separator[b-78rpg3dc7u] {
        display: none;
    }
}

/* ── Matches list ──────────────────────────────────────────────────────── */

.matches-list[b-78rpg3dc7u] {
    display: flex;
    flex-direction: column;
    gap: 0;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 0.5rem;
    overflow: hidden;
    margin-bottom: 1rem;
}

.match-card[b-78rpg3dc7u] {
    display: flex;
    gap: 0.75rem;
    align-items: flex-start;
    padding: 0.75rem 1rem;
    background: var(--bs-body-bg, #fff);
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
    transition: background 0.1s ease;
}

.match-card:last-child[b-78rpg3dc7u] {
    border-bottom: none;
}

.match-card:nth-child(even)[b-78rpg3dc7u] {
    background: var(--bs-tertiary-bg, #f8f9fa);
}

.match-card:hover[b-78rpg3dc7u] {
    background: color-mix(in srgb, var(--bs-tertiary-bg, #f8f9fa) 60%, var(--bs-emphasis-color, #000) 4%);
}

.match-thumb-link[b-78rpg3dc7u] {
    flex-shrink: 0;
    display: block;
    border-radius: 0.375rem;
    overflow: hidden;
}

.match-thumb[b-78rpg3dc7u] {
    width: 56px;
    height: 56px;
    object-fit: cover;
    display: block;
    border-radius: 0.375rem;
}

.match-thumb-placeholder[b-78rpg3dc7u] {
    flex-shrink: 0;
    width: 56px;
    height: 56px;
    border-radius: 0.375rem;
    background: var(--bs-secondary-bg, #e9ecef);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.45rem;
}

.match-body[b-78rpg3dc7u] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.match-title[b-78rpg3dc7u] {
    display: block;
    color: var(--smw-water, #4090d8);
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
}

.match-title:hover[b-78rpg3dc7u] {
    color: var(--smw-grass-dark, #267326);
    text-decoration: none;
}

.match-meta[b-78rpg3dc7u] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.match-price[b-78rpg3dc7u] {
    font-family: var(--ui-font);
    font-size: 1.12rem;
    color: var(--smw-grass-dark, #267326);
}

.match-sub[b-78rpg3dc7u] {
    font-size: 0.88rem;
    color: var(--bs-secondary-color, #6c757d);
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.separator[b-78rpg3dc7u] {
    opacity: 0.5;
}

/* Money and data figures use the mono face */
.match-price[b-78rpg3dc7u] {
    font-family: var(--mono-font);
    font-variant-numeric: tabular-nums;
}
/* /Components/Pages/Prices/PriceHistoryPage.razor.rz.scp.css */
/* Price-history page. One white card around the whole page, matching the deal page
   (.game-deals-page is scoped to GameDealsPage, so the frame and accent map are
   repeated here; keep them in step). The breadcrumb comes from app.css. The SVG
   itself is emitted as MarkupString (no scope attribute), so anything inside it is
   styled inline by PriceHistoryChart and only the container is addressed here via
   ::deep. */

.price-history-page[b-e1wxzolu2q] {
    --deal-accent: var(--smw-mario-red, #d82800);

    max-width: 920px;
    margin: 2rem auto 3rem;
    padding: 2.5rem 2.5rem 3rem;
    background: var(--smw-white, #ffffff);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.22);
    color: var(--smw-sand-dark, #111111);
}

.price-history-page[data-console="nes"][b-e1wxzolu2q]       { --deal-accent: #d82800; }
.price-history-page[data-console="snes"][b-e1wxzolu2q]      { --deal-accent: #8b46c8; }
.price-history-page[data-console="n64"][b-e1wxzolu2q]       { --deal-accent: #1f7a1f; }
.price-history-page[data-console="gamecube"][b-e1wxzolu2q]  { --deal-accent: #4090d8; }
.price-history-page[data-console="gameboy"][b-e1wxzolu2q]   { --deal-accent: #7a9a3c; }
.price-history-page[data-console="gba"][b-e1wxzolu2q]       { --deal-accent: #8b46c8; }
.price-history-page[data-console="ds"][b-e1wxzolu2q]        { --deal-accent: #b32d2d; }
.price-history-page[data-console="ps1"][b-e1wxzolu2q]       { --deal-accent: #3c4850; }
.price-history-page[data-console="ps2"][b-e1wxzolu2q]       { --deal-accent: #1c2030; }
.price-history-page[data-console="genesis"][b-e1wxzolu2q]   { --deal-accent: #1c1c1c; }
.price-history-page[data-console="saturn"][b-e1wxzolu2q]    { --deal-accent: #4a4a4a; }
.price-history-page[data-console="dreamcast"][b-e1wxzolu2q] { --deal-accent: #d8771c; }

.price-history-hero[b-e1wxzolu2q] {
    margin-bottom: 2rem;
}

.price-history-hero h1[b-e1wxzolu2q] {
    margin-bottom: 0.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 4px solid var(--deal-accent);
    display: inline-block;
}

.price-history-hero-sub[b-e1wxzolu2q] {
    color: var(--bs-secondary-color, #6c757d);
    margin-bottom: 0.75rem;
}

.price-history-hero-sub a[b-e1wxzolu2q] {
    color: inherit;
    font-weight: 600;
}

/* Latest medians in one sentence: what a search snippet should quote. */
.price-history-latest[b-e1wxzolu2q] {
    margin: 0;
    padding: 0.75rem 1rem;
    background: rgba(0, 0, 0, 0.04);
    border-left: 4px solid var(--deal-accent);
}

.price-history-low-sample[b-e1wxzolu2q] {
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 0.1rem 0.4rem;
    border: 1px solid var(--smw-dark-grey, #3c4850);
    color: var(--smw-dark-grey, #3c4850);
}

/* The honesty note is the most important paragraph on the page: boxed, before the chart. */
.price-history-honesty[b-e1wxzolu2q] {
    margin: 0 0 1.5rem;
    padding: 1rem 1.25rem;
    background: var(--smw-sand-light, #f4eccc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
    line-height: 1.55;
}

/* Window + band selectors: one row of link chips above the chart. */
.price-history-controls[b-e1wxzolu2q] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 2rem;
    margin: 0 0 1rem;
}

.price-history-control-group[b-e1wxzolu2q] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
}

.price-history-control-label[b-e1wxzolu2q] {
    font-size: 0.75rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--smw-dark-grey, #3c4850);
    margin-right: 0.25rem;
}

.price-history-chip[b-e1wxzolu2q] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.3rem 0.7rem;
    border: 2px solid var(--smw-sand-dark, #111111);
    background: var(--smw-white, #fcfcfc);
    color: var(--smw-sand-dark, #111111);
    text-decoration: none;
    font-size: 0.9rem;
    line-height: 1.2;
}

.price-history-chip:hover[b-e1wxzolu2q] {
    background: var(--smw-sand-light, #f4eccc);
}

.price-history-chip.is-active[b-e1wxzolu2q] {
    background: var(--smw-sand-dark, #111111);
    color: var(--smw-white, #fcfcfc);
}

.price-history-swatch[b-e1wxzolu2q] {
    display: inline-block;
    width: 0.8rem;
    height: 0.8rem;
    border: 1px solid rgba(0, 0, 0, 0.25);
    flex: none;
}

/* Chart figure: full width of the card, aspect from the SVG viewBox. */
.price-history-figure[b-e1wxzolu2q] {
    margin: 0 0 1rem;
    padding: 0.75rem 0.5rem 0.5rem;
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
}

.price-history-figure[b-e1wxzolu2q]  svg {
    display: block;
    width: 100%;
    height: auto;
}

.price-history-figure figcaption[b-e1wxzolu2q] {
    margin-top: 0.5rem;
    padding: 0 0.5rem;
    font-size: 0.85rem;
    color: var(--smw-dark-grey, #3c4850);
    line-height: 1.5;
}

/* Legend: always present for >= 2 series; also carries the latest value + sample size. */
.price-history-legend[b-e1wxzolu2q] {
    list-style: none;
    padding: 0;
    margin: 0 0 2rem;
    display: grid;
    gap: 0.5rem;
}

.price-history-legend li[b-e1wxzolu2q] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.5rem;
    padding: 0.4rem 0.6rem;
    border-left: 4px solid transparent;
}

.price-history-legend li.is-selected[b-e1wxzolu2q] {
    background: var(--smw-sand-light, #f4eccc);
    border-left-color: var(--smw-sand-dark, #111111);
}

.price-history-legend-label[b-e1wxzolu2q] {
    font-weight: 600;
}

.price-history-legend-value[b-e1wxzolu2q] {
    font-family: var(--mono-font);
    font-size: 1.1rem;
}

.price-history-legend-meta[b-e1wxzolu2q] {
    font-size: 0.85rem;
    color: var(--smw-dark-grey, #3c4850);
}

.price-history-empty[b-e1wxzolu2q] {
    padding: 1.5rem;
    margin: 0 0 2rem;
    border: 2px dashed var(--smw-grey, #8a9aaa);
    color: var(--smw-dark-grey, #3c4850);
}

.price-history-section[b-e1wxzolu2q] {
    margin: 0 0 2rem;
}

.price-history-section h2[b-e1wxzolu2q] {
    font-size: 1.5rem;
    margin: 0 0 0.75rem;
}

.price-history-scroll[b-e1wxzolu2q] {
    overflow-x: auto;
}

.price-history-table th[scope="row"][b-e1wxzolu2q] {
    font-family: var(--mono-font);
    font-weight: 400;
    white-space: nowrap;
}

.price-history-open-data p[b-e1wxzolu2q] {
    line-height: 1.6;
}

.price-history-open-data code[b-e1wxzolu2q] {
    font-family: var(--mono-font);
    font-size: 0.9em;
}

.price-history-back[b-e1wxzolu2q] {
    margin: 0;
}

/* Hand-off to the deal page: live count, cheapest listings, tracker. Sits above the
   honesty note so a search visitor sees a next step before the caveats. */
.price-history-cta[b-e1wxzolu2q] {
    margin: 0 0 1.5rem;
    padding: 1rem 1.25rem;
    border: 3px solid var(--smw-sand-dark, #111111);
    border-left: 6px solid var(--deal-accent);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
}

.price-history-cta-head[b-e1wxzolu2q] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem 1.5rem;
}

.price-history-cta-summary[b-e1wxzolu2q] {
    margin: 0;
    flex: 1 1 18rem;
}

.price-history-cta-price[b-e1wxzolu2q],
.price-history-cta-item-price[b-e1wxzolu2q] {
    font-family: var(--mono-font);
}

.price-history-cta-actions[b-e1wxzolu2q] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.price-history-cta-list[b-e1wxzolu2q] {
    list-style: none;
    margin: 1rem 0 0;
    padding: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.12);
}

.price-history-cta-list a[b-e1wxzolu2q] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    color: inherit;
    text-decoration: none;
}

.price-history-cta-list a:hover .price-history-cta-title[b-e1wxzolu2q] {
    text-decoration: underline;
}

.price-history-cta-title[b-e1wxzolu2q] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.price-history-cta-meta[b-e1wxzolu2q] {
    flex: none;
    display: flex;
    gap: 0.75rem;
    color: var(--bs-secondary-color, #6c757d);
    font-size: 0.875rem;
}

.price-history-cta-item-price[b-e1wxzolu2q] {
    color: var(--smw-sand-dark, #111111);
    font-weight: 600;
    font-size: 1rem;
}

@media (max-width: 640px) {
    .price-history-page[b-e1wxzolu2q] {
        margin: 1rem 0.75rem 2rem;
        padding: 1.5rem 1.25rem 2rem;
        box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    }

    .price-history-controls[b-e1wxzolu2q] {
        gap: 0.5rem 1rem;
    }

    .price-history-figure[b-e1wxzolu2q] {
        padding: 0.5rem 0.25rem 0.25rem;
    }

    .price-history-cta-actions .btn[b-e1wxzolu2q] {
        flex: 1 1 auto;
    }
}
/* /Components/Pages/Profiles.razor.rz.scp.css */
/* In-alert "Upgrade to …" link — blue, underlined, with a hover lift. */
.upgrade-link[b-3ogi9hmym2] {
    color: var(--smw-water);
    text-decoration: underline;
    font-weight: 600;
    transition: color 100ms ease-out, text-shadow 100ms ease-out;
}

.upgrade-link:hover[b-3ogi9hmym2],
.upgrade-link:focus[b-3ogi9hmym2] {
    color: var(--smw-sky-bright, var(--smw-water));
    text-shadow: 1px 1px 0 rgba(64, 144, 216, 0.25);
}
/* /Components/Pages/Reports/UsedGpuMarketReport.razor.rz.scp.css */
/* /reports/used-gpu-market — layout shell reuses the global deals-hub classes
   (.deals-console-hub, .deals-header, .deals-breadcrumb); everything report-specific
   is here. Retro pixel-panel look: white panels, thick sand borders, hard shadows. */

.mr-page[b-xvs7ckny84] {
    margin-bottom: 3rem;
}

.mr-coverage[b-xvs7ckny84] {
    display: block;
    margin-top: 0.5rem;
    color: var(--smw-grey);
}

.mr-h2[b-xvs7ckny84] {
    font-family: var(--ui-font);
    font-size: 1.12rem;
    line-height: 1.6;
    color: var(--smw-dark-grey);
    text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.6);
    margin: 2.25rem 0 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 3px solid var(--smw-sand-dark);
}

.mr-h3[b-xvs7ckny84] {
    font-family: var(--ui-font);
    font-size: 0.89rem;
    line-height: 1.6;
    color: var(--smw-dark-grey);
    margin: 1.5rem 0 0.8rem;
}

.mr-note[b-xvs7ckny84] {
    color: var(--smw-dark-grey);
    line-height: 1.7;
    margin: 0 0 1.25rem;
}

/* ── Headline ──────────────────────────────────────────────────────────── */
.mr-headline[b-xvs7ckny84] {
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.25);
    padding: 0.25rem 1.5rem 1.4rem;
    margin: 0 0 1rem;
}

.mr-headline .mr-h2[b-xvs7ckny84] {
    margin-top: 1.25rem;
}

.mr-tiles[b-xvs7ckny84] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

/* CRT-ish stat tile: dark screen, bright pixel numerals. */
.mr-tile[b-xvs7ckny84] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 0.9rem 1rem 0.85rem;
    background: var(--smw-dark-grey);
    color: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.08);
}

.mr-tile-label[b-xvs7ckny84] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.8;
}

.mr-tile-value[b-xvs7ckny84] {
    font-family: var(--ui-font);
    font-size: 1.79rem;
    line-height: 1.2;
    color: var(--smw-coin-bright);
    font-variant-numeric: tabular-nums;
}

.mr-tile-na[b-xvs7ckny84] {
    color: var(--smw-grey);
}

.mr-tile-sub[b-xvs7ckny84] {
    font-size: 0.84rem;
    line-height: 1.45;
    opacity: 0.85;
}

/* Direction colours, tuned for the dark tile background. Rising asking prices are
   bad news for a buyer, hence red. */
.mr-tile-value.mr-up[b-xvs7ckny84]   { color: #ff7a5c; }
.mr-tile-value.mr-down[b-xvs7ckny84] { color: #7ee07e; }
.mr-tile-value.mr-flat[b-xvs7ckny84] { color: var(--smw-sky-light); }

/* ── CTA ───────────────────────────────────────────────────────────────── */
.mr-cta[b-xvs7ckny84] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.25rem;
    margin: 2rem 0;
    padding: 1.25rem 1.5rem;
    background: var(--smw-sand-light);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
}

.mr-cta-text[b-xvs7ckny84] {
    margin: 0;
    color: var(--smw-dark-grey);
    font-weight: 600;
    line-height: 1.6;
}

.mr-cta .btn[b-xvs7ckny84] {
    flex: 0 0 auto;
}

/* ── Methodology + archive ─────────────────────────────────────────────── */
.mr-method[b-xvs7ckny84],
.mr-archive[b-xvs7ckny84] {
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    padding: 0.25rem 1.75rem 0.75rem;
    margin: 0 0 2rem;
    color: var(--smw-dark-grey);
    line-height: 1.7;
}

.mr-method .mr-h2[b-xvs7ckny84],
.mr-archive .mr-h2[b-xvs7ckny84] {
    margin-top: 1.25rem;
}

.mr-archive ul[b-xvs7ckny84] {
    list-style: none;
    padding: 0;
    margin: 0 0 0.75rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.25rem;
}

.mr-archive a[b-xvs7ckny84],
.mr-method a[b-xvs7ckny84] {
    color: var(--smw-dark-grey);
    text-decoration: underline;
    text-decoration-color: var(--smw-sand-dark);
    text-underline-offset: 3px;
}

.mr-archive a:hover[b-xvs7ckny84],
.mr-method a:hover[b-xvs7ckny84] {
    color: var(--smw-grass-dark);
}

@media (max-width: 768px) {
    .mr-tiles[b-xvs7ckny84] {
        grid-template-columns: 1fr;
    }

    .mr-headline[b-xvs7ckny84],
    .mr-method[b-xvs7ckny84],
    .mr-archive[b-xvs7ckny84] {
        padding-left: 1.1rem;
        padding-right: 1.1rem;
    }

    .mr-cta[b-xvs7ckny84] {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* Money and data figures use the mono face */
.mr-tile-value[b-xvs7ckny84] {
    font-family: var(--mono-font);
    font-variant-numeric: tabular-nums;
}
/* /Components/Pages/Tools/EbayListingChecker.razor.rz.scp.css */
/* eBay listing red-flag checker. Same pixel-card treatment as the deal pages:
   one white card with a hard black border and offset shadow over the sky
   background, pixel font for headings and labels, a CRT-screen result panel. */

.lc-page[b-c1pj5ku932] {
    --lc-flag: var(--smw-mario-red, #d82800);
    --lc-note: var(--smw-coin, #e8a800);
    --lc-clear: var(--smw-grass-dark, #267326);
    --lc-ink: var(--smw-sand-dark, #111111);

    max-width: 880px;
    margin: 2rem auto 3rem;
    padding: 2.5rem 2.5rem 3rem;
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--lc-ink);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.22);
    color: var(--lc-ink);
}

.lc-breadcrumb[b-c1pj5ku932] {
    font-size: 0.98rem;
    margin-bottom: 1.5rem;
    color: var(--bs-secondary-color, #6c757d);
}

.lc-breadcrumb a[b-c1pj5ku932] {
    color: inherit;
    text-decoration: none;
}

.lc-breadcrumb a:hover[b-c1pj5ku932] {
    text-decoration: underline;
}

.lc-breadcrumb span[b-c1pj5ku932] {
    margin: 0 0.35rem;
}

.lc-hero[b-c1pj5ku932] {
    margin-bottom: 1.75rem;
}

.lc-title[b-c1pj5ku932] {
    display: inline-block;
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 4px solid var(--lc-flag);
    font-family: var(--ui-font);
    font-size: clamp(1.5rem, 4vw, 2.1rem);
}

.lc-sub[b-c1pj5ku932] {
    color: var(--smw-dark-grey, #3c4850);
    line-height: 1.6;
    margin: 0;
}

/* ── Form ─────────────────────────────────────────────────────────────── */

.lc-form[b-c1pj5ku932] {
    padding: 1.25rem;
    background: var(--smw-sky-light, #d6eeff);
    border: 3px solid var(--lc-ink);
    margin-bottom: 1.25rem;
}

.lc-label[b-c1pj5ku932] {
    display: block;
    font-family: var(--ui-font);
    font-weight: 700;
    margin-bottom: 0.5rem;
}

.lc-input-row[b-c1pj5ku932] {
    display: flex;
    gap: 0.75rem;
}

.lc-input[b-c1pj5ku932] {
    flex: 1 1 auto;
    min-width: 0;
    padding: 0.65rem 0.8rem;
    border: 3px solid var(--lc-ink);
    background: var(--smw-white, #fcfcfc);
    font-family: var(--ui-font);
    font-size: 1.07rem;
}

.lc-input:focus[b-c1pj5ku932] {
    outline: 3px solid var(--smw-water, #4090d8);
    outline-offset: 1px;
}

.lc-submit[b-c1pj5ku932] {
    flex: 0 0 auto;
    padding: 0.65rem 1.1rem;
    border: 3px solid var(--lc-ink);
    background: var(--smw-grass, #3cb83c);
    color: var(--smw-white, #fcfcfc);
    font-family: var(--ui-font);
    font-weight: 700;
    box-shadow: 3px 3px 0 var(--lc-ink);
    cursor: pointer;
}

.lc-submit:hover:not(:disabled)[b-c1pj5ku932] {
    background: var(--smw-grass-dark, #267326);
}

.lc-submit:active:not(:disabled)[b-c1pj5ku932] {
    transform: translate(2px, 2px);
    box-shadow: 1px 1px 0 var(--lc-ink);
}

.lc-submit:disabled[b-c1pj5ku932] {
    background: var(--smw-grey, #8a9aaa);
    cursor: not-allowed;
}

.lc-hint[b-c1pj5ku932] {
    margin: 0.5rem 0 0;
    font-size: 0.95rem;
    color: var(--smw-dark-grey, #3c4850);
}

.lc-turnstile[b-c1pj5ku932] {
    margin-top: 0.9rem;
    min-height: 65px;
}

.lc-alert[b-c1pj5ku932] {
    padding: 0.8rem 1rem;
    margin-bottom: 1.25rem;
    border: 3px solid var(--lc-ink);
    border-left-width: 10px;
    border-left-color: var(--lc-note);
    background: #fff8e0;
}

/* ── Result: CRT-screen panel ─────────────────────────────────────────── */

.lc-result[b-c1pj5ku932] {
    margin-bottom: 2rem;
}

.lc-listing[b-c1pj5ku932] {
    display: flex;
    gap: 1.25rem;
    padding: 1.1rem;
    border: 3px solid var(--lc-ink);
    background: var(--smw-sand-light, #f4eccc);
    margin-bottom: 1.25rem;
}

.lc-listing-img[b-c1pj5ku932] {
    flex: 0 0 140px;
    width: 140px;
    height: 140px;
    object-fit: contain;
    background: var(--smw-white, #fcfcfc);
    border: 2px solid var(--lc-ink);
}

.lc-listing-body[b-c1pj5ku932] {
    flex: 1 1 auto;
    min-width: 0;
}

.lc-listing-title[b-c1pj5ku932] {
    font-size: 1.23rem;
    line-height: 1.4;
    margin: 0 0 0.75rem;
    overflow-wrap: anywhere;
}

.lc-facts[b-c1pj5ku932] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 0.4rem 1rem;
    margin: 0 0 0.75rem;
}

.lc-facts dt[b-c1pj5ku932] {
    font-family: var(--ui-font);
    font-size: 0.84rem;
    color: var(--smw-dark-grey, #3c4850);
}

.lc-facts dd[b-c1pj5ku932] {
    margin: 0;
    font-weight: 600;
}

.lc-listing-link[b-c1pj5ku932] {
    font-family: var(--ui-font);
    color: var(--smw-water, #4090d8);
    font-weight: 700;
}

.lc-verdict[b-c1pj5ku932] {
    display: flex;
    gap: 0.9rem;
    align-items: flex-start;
    padding: 1rem 1.1rem;
    border: 3px solid var(--lc-ink);
    background: #10161a;
    color: #e8f4e8;
    box-shadow: inset 0 0 0 3px rgba(255, 255, 255, 0.06), 4px 4px 0 rgba(0, 0, 0, 0.22);
    /* Faint scanlines — the CRT cue, cheap and static. */
    background-image: repeating-linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0.035) 0,
        rgba(255, 255, 255, 0.035) 1px,
        transparent 1px,
        transparent 3px);
    margin-bottom: 1.5rem;
}

.lc-verdict p[b-c1pj5ku932] {
    margin: 0;
    line-height: 1.55;
}

.lc-verdict strong[b-c1pj5ku932] {
    font-family: var(--ui-font);
    display: block;
    margin-bottom: 0.25rem;
}

.lc-verdict-icon[b-c1pj5ku932] {
    flex: 0 0 auto;
    display: inline-flex;
    padding-top: 0.15rem;
}

.lc-verdict-flagged .lc-verdict-icon[b-c1pj5ku932],
.lc-verdict-flagged strong[b-c1pj5ku932] {
    color: #ff6b4a;
}

.lc-verdict-clear .lc-verdict-icon[b-c1pj5ku932],
.lc-verdict-clear strong[b-c1pj5ku932] {
    color: #7ee07e;
}

.lc-section-heading[b-c1pj5ku932] {
    font-family: var(--ui-font);
    font-size: 1.23rem;
    margin: 1.5rem 0 0.5rem;
    padding-left: 0.6rem;
    border-left: 6px solid var(--lc-ink);
}

.lc-heading-flag[b-c1pj5ku932] {
    border-left-color: var(--lc-flag);
}

.lc-heading-note[b-c1pj5ku932] {
    border-left-color: var(--lc-note);
}

.lc-section-sub[b-c1pj5ku932] {
    margin: 0 0 0.75rem;
    color: var(--smw-dark-grey, #3c4850);
    font-size: 1.01rem;
}

.lc-findings[b-c1pj5ku932] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 0.75rem;
}

.lc-finding[b-c1pj5ku932] {
    padding: 0.85rem 1rem;
    border: 3px solid var(--lc-ink);
    border-left-width: 10px;
    background: var(--smw-white, #fcfcfc);
}

.lc-finding-flag[b-c1pj5ku932] {
    border-left-color: var(--lc-flag);
}

.lc-finding-note[b-c1pj5ku932] {
    border-left-color: var(--lc-note);
}

.lc-finding p[b-c1pj5ku932] {
    margin: 0;
}

.lc-finding-title[b-c1pj5ku932] {
    font-weight: 700;
    margin-bottom: 0.25rem !important;
}

.lc-finding-why[b-c1pj5ku932] {
    color: var(--smw-dark-grey, #3c4850);
    line-height: 1.5;
    margin-bottom: 0.5rem !important;
}

.lc-finding-match[b-c1pj5ku932] {
    font-size: 0.95rem;
    overflow-wrap: anywhere;
}

.lc-match-label[b-c1pj5ku932] {
    font-family: var(--ui-font);
    font-size: 0.79rem;
    text-transform: uppercase;
    padding: 0.1rem 0.35rem;
    margin-right: 0.35rem;
    background: var(--lc-ink);
    color: var(--smw-white, #fcfcfc);
}

.lc-finding-match code[b-c1pj5ku932] {
    color: var(--lc-ink);
    background: var(--smw-sand-light, #f4eccc);
    padding: 0.05rem 0.3rem;
}

.lc-finding-quote[b-c1pj5ku932] {
    margin: 0.5rem 0 0;
    padding: 0.5rem 0.75rem;
    border-left: 4px solid var(--smw-grey, #8a9aaa);
    background: #f4f6f8;
    font-size: 0.98rem;
    font-style: italic;
    overflow-wrap: anywhere;
}

.lc-checks[b-c1pj5ku932] {
    margin-top: 1.5rem;
    padding: 0.75rem 1rem;
    border: 2px dashed var(--smw-grey, #8a9aaa);
}

.lc-checks summary[b-c1pj5ku932] {
    font-family: var(--ui-font);
    cursor: pointer;
}

.lc-checks-list[b-c1pj5ku932] {
    margin: 0.75rem 0 0;
    padding-left: 1.25rem;
    columns: 2 220px;
    font-size: 1.01rem;
}

.lc-checks-skipped span[b-c1pj5ku932] {
    color: var(--smw-dark-grey, #3c4850);
}

.lc-checks-sub[b-c1pj5ku932] {
    margin: 0.75rem 0 0;
    font-size: 0.95rem;
    color: var(--smw-dark-grey, #3c4850);
}

/* ── CTA ──────────────────────────────────────────────────────────────── */

.lc-cta[b-c1pj5ku932] {
    margin: 2rem 0;
    padding: 1.25rem 1.4rem;
    border: 3px solid var(--lc-ink);
    background: var(--smw-coin-bright, #ffd84e);
    box-shadow: 5px 5px 0 var(--lc-ink);
}

.lc-cta-title[b-c1pj5ku932] {
    font-family: var(--ui-font);
    font-weight: 700;
    font-size: 1.17rem;
    margin: 0 0 0.5rem;
}

.lc-cta-body[b-c1pj5ku932] {
    margin: 0 0 1rem;
    line-height: 1.55;
}

.lc-cta-button[b-c1pj5ku932] {
    display: inline-block;
    padding: 0.6rem 1.1rem;
    border: 3px solid var(--lc-ink);
    background: var(--smw-mario-red, #d82800);
    color: var(--smw-white, #fcfcfc);
    font-family: var(--ui-font);
    font-weight: 700;
    text-decoration: none;
    box-shadow: 3px 3px 0 var(--lc-ink);
}

.lc-cta-button:hover[b-c1pj5ku932] {
    color: var(--smw-white, #fcfcfc);
    filter: brightness(1.08);
}

/* ── About ────────────────────────────────────────────────────────────── */

.lc-about[b-c1pj5ku932] {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 3px dashed var(--smw-grey, #8a9aaa);
}

.lc-about-heading[b-c1pj5ku932] {
    font-family: var(--ui-font);
    1.4rem;
    margin-bottom: 0.75rem;
}

.lc-about-list[b-c1pj5ku932] {
    padding-left: 1.25rem;
    line-height: 1.6;
}

.lc-about-list li[b-c1pj5ku932] {
    margin-bottom: 0.5rem;
}

.lc-about-foot[b-c1pj5ku932] {
    color: var(--smw-dark-grey, #3c4850);
    font-size: 1.01rem;
    line-height: 1.55;
    margin: 0;
}

@media (max-width: 640px) {
    .lc-page[b-c1pj5ku932] {
        margin: 1rem 16px 2rem;
        padding: 1.5rem 1.1rem 2rem;
        box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    }

    .lc-input-row[b-c1pj5ku932] {
        flex-direction: column;
    }

    .lc-listing[b-c1pj5ku932] {
        flex-direction: column;
    }

    .lc-listing-img[b-c1pj5ku932] {
        width: 100%;
        flex-basis: auto;
        height: 180px;
    }
}
/* /Components/Pages/Tools/EbaySearchBuilder.razor.rz.scp.css */
/* eBay search URL builder. One pixel-card over the sky background, like the deal
   pages, with the form laid out as a two-column grid of chunky retro inputs. */

.esb-page[b-1oz78h8nq6] {
    --esb-accent: var(--smw-water, #4090d8);

    max-width: 920px;
    margin: 2rem auto 3rem;
    padding: 2.5rem 2.5rem 3rem;
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.22);
    color: var(--smw-sand-dark, #111111);
}

.esb-breadcrumb[b-1oz78h8nq6] {
    font-size: 0.98rem;
    margin-bottom: 1.5rem;
    color: var(--smw-dark-grey, #3c4850);
}

.esb-breadcrumb a[b-1oz78h8nq6] {
    color: inherit;
    text-decoration: none;
}

.esb-breadcrumb a:hover[b-1oz78h8nq6] {
    text-decoration: underline;
}

.esb-breadcrumb span[b-1oz78h8nq6] {
    margin: 0 0.35rem;
    color: var(--esb-accent);
}

.esb-hero[b-1oz78h8nq6] {
    margin-bottom: 2rem;
}

.esb-hero h1[b-1oz78h8nq6] {
    display: inline-block;
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 4px solid var(--esb-accent);
}

.esb-hero-sub[b-1oz78h8nq6] {
    color: var(--smw-dark-grey, #3c4850);
    line-height: 1.7;
    margin: 0;
}

/* ── Form ─────────────────────────────────────────────────────────────── */

.esb-form[b-1oz78h8nq6] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem 1.5rem;
    padding: 1.5rem;
    background: var(--smw-sky-light, #d6eeff);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
}

.esb-field[b-1oz78h8nq6] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    min-width: 0;
}

.esb-field-wide[b-1oz78h8nq6] {
    grid-column: 1 / -1;
}

.esb-field > label[b-1oz78h8nq6],
.esb-fieldset > legend[b-1oz78h8nq6] {
    font-family: var(--ui-font);
    font-size: 0.89rem;
}

.esb-fieldset[b-1oz78h8nq6] {
    margin: 0;
    padding: 0;
    border: 0;
}

.esb-fieldset > legend[b-1oz78h8nq6] {
    float: none;
    width: auto;
    margin-bottom: 0.4rem;
    padding: 0;
    line-height: inherit;
}

.esb-field input[type="text"][b-1oz78h8nq6],
.esb-field input[type="number"][b-1oz78h8nq6],
.esb-field textarea[b-1oz78h8nq6],
.esb-field select[b-1oz78h8nq6] {
    width: 100%;
    padding: 0.55rem 0.7rem;
    font-size: 1.12rem;
    color: var(--smw-sand-dark, #111111);
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    border-radius: 0;
    box-shadow: inset 2px 2px 0 rgba(0, 0, 0, 0.08);
}

.esb-field input:focus[b-1oz78h8nq6],
.esb-field textarea:focus[b-1oz78h8nq6],
.esb-field select:focus[b-1oz78h8nq6] {
    outline: 3px solid var(--smw-coin, #e8a800);
    outline-offset: 1px;
}

.esb-field textarea[b-1oz78h8nq6] {
    resize: vertical;
}

.esb-check[b-1oz78h8nq6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.07rem;
    cursor: pointer;
}

.esb-check input[b-1oz78h8nq6] {
    width: 1.1rem;
    height: 1.1rem;
    accent-color: var(--smw-grass-dark, #267326);
    flex: 0 0 auto;
}

.esb-hint[b-1oz78h8nq6] {
    font-size: 0.89rem;
    color: var(--smw-dark-grey, #3c4850);
}

.esb-actions[b-1oz78h8nq6] {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.esb-reset[b-1oz78h8nq6] {
    color: var(--smw-dark-grey, #3c4850);
    font-size: 1.01rem;
}

/* ── Result ───────────────────────────────────────────────────────────── */

.esb-result[b-1oz78h8nq6] {
    margin-top: 2rem;
    padding: 1.5rem;
    border: 3px solid var(--smw-sand-dark, #111111);
    border-left: 8px solid var(--esb-accent);
    background: var(--smw-white, #fcfcfc);
}

.esb-result h2[b-1oz78h8nq6],
.esb-section h2[b-1oz78h8nq6],
.esb-cta h2[b-1oz78h8nq6] {
    1.4rem;
    margin-bottom: 1rem;
}

.esb-result h3[b-1oz78h8nq6] {
    font-size: 1.12rem;
    margin: 1.75rem 0 0.75rem;
}

.esb-warnings[b-1oz78h8nq6] {
    margin: 0 0 1rem;
    padding: 0.75rem 1rem 0.75rem 2rem;
    background: var(--smw-sand-light, #f4eccc);
    border: 2px dashed var(--smw-coin, #e8a800);
    font-size: 1.01rem;
}

.esb-result-label[b-1oz78h8nq6] {
    display: block;
    font-family: var(--ui-font);
    font-size: 0.89rem;
    margin-bottom: 0.4rem;
}

.esb-url[b-1oz78h8nq6] {
    width: 100%;
    padding: 0.6rem 0.75rem;
    font-family: var(--ui-font);
    font-size: 0.95rem;
    word-break: break-all;
    color: var(--smw-coin-bright, #ffd84e);
    background: var(--smw-sand-dark, #111111);
    border: 3px solid var(--smw-sand-dark, #111111);
    border-radius: 0;
    resize: vertical;
}

.esb-result-actions[b-1oz78h8nq6] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 0.75rem;
}

.esb-open[b-1oz78h8nq6] {
    background: var(--smw-coin-bright, #ffd84e);
    color: var(--smw-sand-dark, #111111);
    border: 3px solid var(--smw-sand-dark, #111111);
}

.esb-open:hover[b-1oz78h8nq6] {
    background: var(--smw-coin, #e8a800);
    color: var(--smw-sand-dark, #111111);
}

.esb-affiliate-note[b-1oz78h8nq6] {
    margin: 0.5rem 0 0;
    font-size: 0.89rem;
    opacity: 0.8;
}

.esb-query-line[b-1oz78h8nq6] {
    font-size: 1.01rem;
    word-break: break-word;
}

.esb-explain[b-1oz78h8nq6] {
    width: 100%;
    border-collapse: collapse;
    font-size: 1.01rem;
    margin-bottom: 1rem;
}

.esb-explain th[b-1oz78h8nq6],
.esb-explain td[b-1oz78h8nq6] {
    padding: 0.55rem 0.75rem;
    border: 2px solid var(--smw-sand-dark, #111111);
    vertical-align: top;
    text-align: left;
}

.esb-explain thead th[b-1oz78h8nq6] {
    font-family: var(--ui-font);
    font-size: 0.84rem;
    background: var(--smw-sand-light, #f4eccc);
}

.esb-explain td:first-child[b-1oz78h8nq6] {
    width: 38%;
    word-break: break-word;
}

.esb-page code[b-1oz78h8nq6] {
    color: var(--smw-purple-dark, #5e2a93);
    background: rgba(139, 70, 200, 0.08);
    padding: 0.05rem 0.3rem;
    word-break: break-word;
}

/* ── CTA ──────────────────────────────────────────────────────────────── */

.esb-cta[b-1oz78h8nq6] {
    margin-top: 2rem;
    padding: 1.5rem;
    background: var(--smw-grass-dark, #267326);
    color: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.22);
}

.esb-cta h2[b-1oz78h8nq6] {
    color: var(--smw-white, #fcfcfc);
}

.esb-cta p[b-1oz78h8nq6] {
    line-height: 1.7;
}

/* ── Content sections ─────────────────────────────────────────────────── */

.esb-section[b-1oz78h8nq6] {
    margin-top: 2.5rem;
}

.esb-section p[b-1oz78h8nq6] {
    line-height: 1.7;
}

.esb-note[b-1oz78h8nq6] {
    margin-top: 1rem;
    font-size: 1.07rem;
    color: var(--smw-dark-grey, #3c4850);
}

.esb-presets[b-1oz78h8nq6] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 0.9rem;
}

.esb-preset[b-1oz78h8nq6] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 0.9rem 1rem;
    border: 3px solid var(--smw-sand-dark, #111111);
    background: var(--smw-sky-light, #d6eeff);
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.15);
}

.esb-preset-title[b-1oz78h8nq6] {
    font-family: var(--ui-font);
    font-size: 0.95rem;
    color: var(--smw-sand-dark, #111111);
}

.esb-preset-title:hover[b-1oz78h8nq6] {
    color: var(--esb-accent);
}

.esb-preset-query[b-1oz78h8nq6] {
    font-size: 0.89rem;
    align-self: flex-start;
}

.esb-preset-why[b-1oz78h8nq6] {
    font-size: 1.01rem;
    color: var(--smw-dark-grey, #3c4850);
}

@media (max-width: 640px) {
    .esb-page[b-1oz78h8nq6] {
        margin: 1rem 0.75rem 2rem;
        padding: 1.5rem 1.1rem 2rem;
        box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    }

    .esb-form[b-1oz78h8nq6] {
        grid-template-columns: minmax(0, 1fr);
        padding: 1rem;
    }

    .esb-result[b-1oz78h8nq6],
    .esb-cta[b-1oz78h8nq6] {
        padding: 1rem;
    }

    .esb-explain td:first-child[b-1oz78h8nq6] {
        width: auto;
    }
}
/* /Components/Pages/Tools/GpuUpgradeCostCalculator.razor.rz.scp.css */
/* GPU upgrade cost calculator. Same pixel-card look as the other tools; the .guc-card
   result is a fixed-width, self-contained block meant to be screenshotted. */

.guc-page[b-iy8dlsqiib] {
    --guc-accent: var(--smw-water, #4090d8);

    max-width: 920px;
    margin: 2rem auto 3rem;
    padding: 2.5rem 2.5rem 3rem;
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.22);
    color: var(--smw-sand-dark, #111111);
}

.guc-breadcrumb[b-iy8dlsqiib] {
    font-size: 0.98rem;
    margin-bottom: 1.5rem;
    color: var(--smw-dark-grey, #3c4850);
}

.guc-breadcrumb a[b-iy8dlsqiib] { color: inherit; text-decoration: none; }
.guc-breadcrumb a:hover[b-iy8dlsqiib] { text-decoration: underline; }
.guc-breadcrumb span[b-iy8dlsqiib] { margin: 0 0.35rem; color: var(--guc-accent); }

.guc-hero[b-iy8dlsqiib] { margin-bottom: 2rem; }

.guc-hero h1[b-iy8dlsqiib] {
    display: inline-block;
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 4px solid var(--guc-accent);
}

.guc-hero-sub[b-iy8dlsqiib] {
    color: var(--smw-dark-grey, #3c4850);
    line-height: 1.7;
    margin: 0;
}

/* ── Form ─────────────────────────────────────────────────────────────── */

.guc-form[b-iy8dlsqiib] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem 1.5rem;
    padding: 1.5rem;
    background: var(--smw-sky-light, #d6eeff);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
}

.guc-field[b-iy8dlsqiib] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    min-width: 0;
}

.guc-field-wide[b-iy8dlsqiib] { grid-column: 1 / -1; }

.guc-field > label[b-iy8dlsqiib] {
    font-family: var(--ui-font);
    font-size: 0.89rem;
}

.guc-field input[type="number"][b-iy8dlsqiib],
.guc-field select[b-iy8dlsqiib] {
    width: 100%;
    padding: 0.55rem 0.7rem;
    font-size: 1.05rem;
    color: var(--smw-sand-dark, #111111);
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    border-radius: 0;
    box-shadow: inset 2px 2px 0 rgba(0, 0, 0, 0.08);
}

.guc-field input[type="number"][b-iy8dlsqiib] { font-family: var(--mono-font, monospace); }

.guc-field input:focus[b-iy8dlsqiib],
.guc-field select:focus[b-iy8dlsqiib] {
    outline: 3px solid var(--smw-coin, #e8a800);
    outline-offset: 1px;
}

.guc-hint[b-iy8dlsqiib] {
    margin: 0;
    font-size: 0.89rem;
    line-height: 1.5;
    color: var(--smw-dark-grey, #3c4850);
}

.guc-actions[b-iy8dlsqiib] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.guc-reset[b-iy8dlsqiib] {
    color: var(--smw-dark-grey, #3c4850);
    font-size: 1.01rem;
}

/* ── Result card ──────────────────────────────────────────────────────── */

.guc-notice[b-iy8dlsqiib] {
    margin: 1.5rem 0 0;
    padding: 0.75rem 1rem;
    background: var(--smw-sand-light, #f4eccc);
    border: 3px solid var(--smw-sand-dark, #111111);
    line-height: 1.5;
}

.guc-card .guc-notice[b-iy8dlsqiib] { margin-top: 0; }

.guc-card[b-iy8dlsqiib] {
    width: 100%;
    max-width: 640px;
    margin: 2rem auto 0;
    padding: 1.25rem 1.5rem 1rem;
    background: var(--smw-sky-white, #f0f8ff);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.22);
}

.guc-card-head[b-iy8dlsqiib] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 3px solid var(--guc-accent);
}

.guc-card-title[b-iy8dlsqiib] {
    margin: 0;
    font-size: 1.25rem;
    line-height: 1.3;
}

.guc-arrow[b-iy8dlsqiib] { color: var(--guc-accent); }

.guc-wordmark[b-iy8dlsqiib] {
    flex: 0 0 auto;
    font-family: var(--mono-font, monospace);
    font-size: 0.75rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--smw-dark-grey, #3c4850);
}

.guc-grid[b-iy8dlsqiib] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem 1.5rem;
}

.guc-col h3[b-iy8dlsqiib] {
    margin: 0 0 0.5rem;
    font-size: 1rem;
}

.guc-rows[b-iy8dlsqiib] { margin: 0; }

.guc-rows > div[b-iy8dlsqiib] {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.3rem 0;
    border-bottom: 1px dashed var(--smw-grey, #8a9aaa);
}

.guc-rows dt[b-iy8dlsqiib] { font-size: 0.89rem; color: var(--smw-dark-grey, #3c4850); }
.guc-rows dd[b-iy8dlsqiib] { margin: 0; font-family: var(--mono-font, monospace); text-align: right; }

.guc-total dt[b-iy8dlsqiib],
.guc-total dd[b-iy8dlsqiib] { font-weight: 700; color: var(--smw-sand-dark, #111111); }

.guc-small[b-iy8dlsqiib] {
    margin: 0.4rem 0 0;
    font-size: 0.75rem;
    color: var(--smw-dark-grey, #3c4850);
}

.guc-net[b-iy8dlsqiib] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1.25rem;
}

.guc-net-item[b-iy8dlsqiib] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.75rem 1rem;
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
}

.guc-net-label[b-iy8dlsqiib] { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--smw-dark-grey, #3c4850); }
.guc-net-value[b-iy8dlsqiib] { font-family: var(--mono-font, monospace); font-size: 1.5rem; font-weight: 700; }

.guc-vram[b-iy8dlsqiib] {
    margin: 0.9rem 0 0;
    font-family: var(--mono-font, monospace);
    font-size: 0.89rem;
}

.guc-disclaimer[b-iy8dlsqiib] {
    margin: 1rem 0 0;
    padding-top: 0.6rem;
    border-top: 1px dashed var(--smw-grey, #8a9aaa);
    font-size: 0.75rem;
    line-height: 1.5;
    color: var(--smw-dark-grey, #3c4850);
}

.guc-share[b-iy8dlsqiib] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem 1rem;
    max-width: 640px;
    margin: 1.25rem auto 0;
}

.guc-share .guc-small[b-iy8dlsqiib] { margin: 0; }

.guc-cta[b-iy8dlsqiib] {
    margin-top: 2rem;
    padding: 1.25rem 1.5rem;
    background: var(--smw-sand-light, #f4eccc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
}

.guc-cta h2[b-iy8dlsqiib] { margin: 0 0 0.5rem; font-size: 1.25rem; }
.guc-cta p[b-iy8dlsqiib] { margin: 0 0 1rem; line-height: 1.6; }
.guc-cta p:last-child[b-iy8dlsqiib] { margin-bottom: 0; }

.guc-cta-links[b-iy8dlsqiib] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem 1.25rem;
}

@media (max-width: 640px) {
    .guc-page[b-iy8dlsqiib] {
        margin: 1rem 0.75rem 2rem;
        padding: 1.5rem 1.1rem 2rem;
        box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    }

    .guc-form[b-iy8dlsqiib] { grid-template-columns: minmax(0, 1fr); padding: 1rem; }

    .guc-card[b-iy8dlsqiib] { padding: 1rem; }
    .guc-grid[b-iy8dlsqiib],
    .guc-net[b-iy8dlsqiib] { grid-template-columns: minmax(0, 1fr); }
    .guc-card-head[b-iy8dlsqiib] { flex-direction: column; gap: 0.35rem; }
}
/* /Components/Pages/Tools/GpuValue.razor.rz.scp.css */
/* /tools/gpu-value. Table, toolbar card, notes and count reuse the global price-index
   classes in app.css; these are only what the ranking adds. */

.gpu-value-source[b-8hq9ieno1j] {
    margin: 0 0 1.5rem;
    padding: 0.75rem 1rem;
    background: var(--smw-sand-light);
    border: 2px solid var(--smw-sand-dark);
    font-size: 0.875rem;
    line-height: 1.6;
    color: var(--smw-dark-grey);
}

.gpu-value-source a[b-8hq9ieno1j] {
    color: var(--smw-grass-dark);
    font-weight: 600;
}

.gpu-value-source span[b-8hq9ieno1j] {
    display: block;
    margin-top: 0.25rem;
    color: var(--smw-grey);
}

.gpu-value-control[b-8hq9ieno1j] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    margin: 0;
}

.gpu-value-control-label[b-8hq9ieno1j] {
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--smw-grey);
}

.gpu-value-select[b-8hq9ieno1j] {
    font-family: var(--ui-font);
    font-size: 1rem;
    padding: 0.4rem 0.55rem;
    background: var(--smw-white);
    color: var(--smw-dark-grey);
    border: 2px solid var(--smw-sand-dark);
    border-radius: 0;
    min-width: 0;
}

.gpu-value-select:focus[b-8hq9ieno1j] {
    outline: 3px solid var(--smw-grass-dark);
    outline-offset: 1px;
}

.gpu-value-rank[b-8hq9ieno1j] {
    font-family: var(--mono-font);
    font-weight: 700;
    color: var(--smw-grass-dark);
    width: 1%;
}

.gpu-value-track[b-8hq9ieno1j] {
    display: inline-block;
    padding: 0.25rem 0.6rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--smw-dark-grey);
    background: var(--smw-coin-bright);
    border: 2px solid var(--smw-sand-dark);
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.25);
    text-decoration: none;
}

.gpu-value-track:hover[b-8hq9ieno1j] {
    background: var(--smw-coin);
}

.gpu-value-subhead[b-8hq9ieno1j] {
    font-family: var(--ui-font);
    font-size: 1.25rem;
    margin: 0 0 0.25rem;
    color: var(--smw-dark-grey);
}

.gpu-value-subnote[b-8hq9ieno1j] {
    margin: 0 0 1rem;
    font-size: 0.875rem;
    color: var(--smw-grey);
}

.gpu-value-why[b-8hq9ieno1j] {
    color: var(--smw-grey);
    font-size: 0.875rem;
}

@media (max-width: 768px) {
    .gpu-value-control[b-8hq9ieno1j] {
        flex: 1 1 9rem;
    }
}
/* /Components/Pages/Tools/ListingTitleCheck.razor.rz.scp.css */
/* eBay listing title checker. Same pixel-card over the sky background as the
   search builder, with a findings list borrowed from the listing checker. */

.ltc-page[b-x0e3sfdu78] {
    --ltc-accent: var(--smw-water, #4090d8);
    --ltc-flag: var(--smw-mario-red, #c83c3c);
    --ltc-note: var(--smw-coin, #e8a800);
    --ltc-ok: var(--smw-grass-dark, #267326);

    max-width: 920px;
    margin: 2rem auto 3rem;
    padding: 2.5rem 2.5rem 3rem;
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.22);
    color: var(--smw-sand-dark, #111111);
}

.ltc-breadcrumb[b-x0e3sfdu78] {
    font-size: 0.98rem;
    margin-bottom: 1.5rem;
    color: var(--smw-dark-grey, #3c4850);
}

.ltc-breadcrumb a[b-x0e3sfdu78] {
    color: inherit;
    text-decoration: none;
}

.ltc-breadcrumb a:hover[b-x0e3sfdu78] {
    text-decoration: underline;
}

.ltc-breadcrumb span[b-x0e3sfdu78] {
    margin: 0 0.35rem;
    color: var(--ltc-accent);
}

.ltc-hero[b-x0e3sfdu78] {
    margin-bottom: 2rem;
}

.ltc-hero h1[b-x0e3sfdu78] {
    display: inline-block;
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 4px solid var(--ltc-accent);
}

.ltc-hero-sub[b-x0e3sfdu78] {
    color: var(--smw-dark-grey, #3c4850);
    line-height: 1.7;
    margin: 0;
}

/* ── Form ─────────────────────────────────────────────────────────────── */

.ltc-form[b-x0e3sfdu78] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem 1.5rem;
    padding: 1.5rem;
    background: var(--smw-sky-light, #d6eeff);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
}

.ltc-field[b-x0e3sfdu78] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    min-width: 0;
}

.ltc-field-wide[b-x0e3sfdu78] {
    grid-column: 1 / -1;
}

.ltc-field > label[b-x0e3sfdu78] {
    font-family: var(--ui-font);
    font-size: 0.89rem;
}

.ltc-field textarea[b-x0e3sfdu78],
.ltc-field select[b-x0e3sfdu78] {
    width: 100%;
    padding: 0.55rem 0.7rem;
    font-size: 1.12rem;
    color: var(--smw-sand-dark, #111111);
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    border-radius: 0;
    box-shadow: inset 2px 2px 0 rgba(0, 0, 0, 0.08);
}

.ltc-field textarea:focus[b-x0e3sfdu78],
.ltc-field select:focus[b-x0e3sfdu78] {
    outline: 3px solid var(--smw-coin, #e8a800);
    outline-offset: 1px;
}

.ltc-field textarea[b-x0e3sfdu78] {
    resize: vertical;
}

.ltc-hint[b-x0e3sfdu78] {
    font-size: 0.89rem;
    color: var(--smw-dark-grey, #3c4850);
}

.ltc-actions[b-x0e3sfdu78] {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.ltc-reset[b-x0e3sfdu78] {
    color: var(--smw-dark-grey, #3c4850);
    font-size: 1.01rem;
}

/* ── Result ───────────────────────────────────────────────────────────── */

.ltc-result[b-x0e3sfdu78] {
    margin-top: 2rem;
    padding: 1.5rem;
    border: 3px solid var(--smw-sand-dark, #111111);
    border-left: 8px solid var(--ltc-accent);
    background: var(--smw-white, #fcfcfc);
}

.ltc-result h2[b-x0e3sfdu78],
.ltc-section h2[b-x0e3sfdu78],
.ltc-cta h2[b-x0e3sfdu78] {
    font-size: 1.5rem;
    margin-bottom: 1rem;
}

.ltc-result h3[b-x0e3sfdu78] {
    font-size: 1.12rem;
    margin: 1.75rem 0 0.75rem;
}

.ltc-title-quote[b-x0e3sfdu78] {
    margin: 0 0 0.5rem;
    padding: 0.75rem 1rem;
    font-size: 1.12rem;
    line-height: 1.5;
    background: var(--smw-sand-light, #f4eccc);
    border: 2px solid var(--smw-sand-dark, #111111);
    word-break: break-word;
}

.ltc-result-meta[b-x0e3sfdu78] {
    margin: 0 0 1rem;
    font-size: 0.95rem;
    color: var(--smw-dark-grey, #3c4850);
}

.ltc-verdict[b-x0e3sfdu78] {
    display: flex;
    gap: 0.9rem;
    align-items: flex-start;
    padding: 1rem 1.1rem;
    border: 3px solid var(--smw-sand-dark, #111111);
}

.ltc-verdict p[b-x0e3sfdu78] {
    margin: 0;
    line-height: 1.6;
}

.ltc-verdict-icon[b-x0e3sfdu78] {
    flex: 0 0 auto;
    margin-top: 0.1rem;
}

.ltc-verdict-flagged[b-x0e3sfdu78] {
    background: rgba(200, 60, 60, 0.1);
    border-left: 8px solid var(--ltc-flag);
}

.ltc-verdict-clear[b-x0e3sfdu78] {
    background: rgba(38, 115, 38, 0.1);
    border-left: 8px solid var(--ltc-ok);
}

.ltc-heading-flag[b-x0e3sfdu78] {
    color: var(--ltc-flag);
}

.ltc-heading-ref[b-x0e3sfdu78] {
    color: var(--smw-dark-grey, #3c4850);
}

.ltc-heading-note[b-x0e3sfdu78] {
    color: var(--smw-grass-dark, #267326);
}

.ltc-section-sub[b-x0e3sfdu78] {
    margin: -0.25rem 0 0.75rem;
    font-size: 0.95rem;
    color: var(--smw-dark-grey, #3c4850);
    line-height: 1.6;
}

.ltc-findings[b-x0e3sfdu78] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 0.9rem;
}

.ltc-finding[b-x0e3sfdu78] {
    padding: 0.9rem 1rem;
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.15);
}

.ltc-finding p[b-x0e3sfdu78] {
    margin: 0 0 0.4rem;
}

.ltc-finding p:last-child[b-x0e3sfdu78] {
    margin-bottom: 0;
}

.ltc-finding-flag[b-x0e3sfdu78] {
    border-left: 8px solid var(--ltc-flag);
    background: rgba(200, 60, 60, 0.06);
}

.ltc-finding-ref[b-x0e3sfdu78] {
    border-left: 8px solid var(--smw-dark-grey, #3c4850);
    background: rgba(60, 72, 80, 0.06);
}

.ltc-finding-note[b-x0e3sfdu78] {
    border-left: 8px solid var(--ltc-ok);
    background: rgba(38, 115, 38, 0.06);
}

.ltc-finding-title[b-x0e3sfdu78] {
    font-weight: 700;
}

.ltc-finding-why[b-x0e3sfdu78] {
    line-height: 1.6;
}

.ltc-finding-match[b-x0e3sfdu78] {
    font-size: 0.95rem;
}

.ltc-match-label[b-x0e3sfdu78] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--smw-dark-grey, #3c4850);
    margin-right: 0.3rem;
}

.ltc-bucket[b-x0e3sfdu78] {
    padding: 1rem 1.1rem;
    border: 3px solid var(--smw-sand-dark, #111111);
    background: var(--smw-sky-light, #d6eeff);
}

.ltc-bucket-chip[b-x0e3sfdu78] {
    display: inline-block;
    padding: 0.3rem 0.8rem;
    margin-bottom: 0.6rem;
    font-family: var(--mono-font);
    font-size: 1.12rem;
    font-weight: 700;
    color: var(--smw-white, #fcfcfc);
    background: var(--ltc-accent);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.2);
}

.ltc-bucket-why[b-x0e3sfdu78] {
    margin: 0 0 0.5rem;
    line-height: 1.6;
}

.ltc-bucket-vocab[b-x0e3sfdu78] {
    margin: 0;
    font-size: 0.95rem;
    color: var(--smw-dark-grey, #3c4850);
}

.ltc-checks[b-x0e3sfdu78] {
    margin-top: 1.5rem;
}

.ltc-checks summary[b-x0e3sfdu78] {
    cursor: pointer;
    font-family: var(--ui-font);
    font-size: 0.95rem;
    margin-bottom: 0.75rem;
}

.ltc-guard-desc[b-x0e3sfdu78] {
    font-size: 0.89rem;
    color: var(--smw-dark-grey, #3c4850);
}

.ltc-explain[b-x0e3sfdu78] {
    width: 100%;
    border-collapse: collapse;
    font-size: 1.01rem;
    margin-bottom: 1rem;
}

.ltc-explain th[b-x0e3sfdu78],
.ltc-explain td[b-x0e3sfdu78] {
    padding: 0.55rem 0.75rem;
    border: 2px solid var(--smw-sand-dark, #111111);
    vertical-align: top;
    text-align: left;
}

.ltc-explain thead th[b-x0e3sfdu78] {
    font-family: var(--ui-font);
    font-size: 0.84rem;
    background: var(--smw-sand-light, #f4eccc);
}

.ltc-page code[b-x0e3sfdu78] {
    color: var(--smw-purple-dark, #5e2a93);
    background: rgba(139, 70, 200, 0.08);
    padding: 0.05rem 0.3rem;
    word-break: break-word;
}

/* ── CTA ──────────────────────────────────────────────────────────────── */

.ltc-cta[b-x0e3sfdu78] {
    margin-top: 2rem;
    padding: 1.5rem;
    background: var(--smw-grass-dark, #267326);
    color: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.22);
}

.ltc-cta h2[b-x0e3sfdu78] {
    color: var(--smw-white, #fcfcfc);
}

.ltc-cta p[b-x0e3sfdu78] {
    line-height: 1.7;
}

/* ── Content sections ─────────────────────────────────────────────────── */

.ltc-section[b-x0e3sfdu78] {
    margin-top: 2.5rem;
}

.ltc-section p[b-x0e3sfdu78] {
    line-height: 1.7;
}

.ltc-note[b-x0e3sfdu78] {
    margin-top: 1rem;
    font-size: 1.07rem;
    color: var(--smw-dark-grey, #3c4850);
}

.ltc-presets[b-x0e3sfdu78] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 0.9rem;
}

.ltc-preset[b-x0e3sfdu78] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 0.9rem 1rem;
    border: 3px solid var(--smw-sand-dark, #111111);
    background: var(--smw-sky-light, #d6eeff);
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.15);
}

.ltc-preset-title[b-x0e3sfdu78] {
    font-family: var(--ui-font);
    font-size: 0.95rem;
    color: var(--smw-sand-dark, #111111);
}

.ltc-preset-title:hover[b-x0e3sfdu78] {
    color: var(--ltc-accent);
}

.ltc-preset-why[b-x0e3sfdu78] {
    font-size: 1.01rem;
    color: var(--smw-dark-grey, #3c4850);
}

@media (max-width: 640px) {
    .ltc-page[b-x0e3sfdu78] {
        margin: 1rem 0.75rem 2rem;
        padding: 1.5rem 1.1rem 2rem;
        box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    }

    .ltc-form[b-x0e3sfdu78] {
        grid-template-columns: minmax(0, 1fr);
        padding: 1rem;
    }

    .ltc-result[b-x0e3sfdu78],
    .ltc-cta[b-x0e3sfdu78] {
        padding: 1rem;
    }
}
/* /Components/Shared/AffiliateDisclosure.razor.rz.scp.css */
.affiliate-disclosure[b-wl9s325acp] {
    margin: 0 0 0.75rem;
    font-family: var(--ui-font);
    font-size: 0.8125rem;
    line-height: 1.4;
    color: var(--smw-dark-grey);
}
/* /Components/Shared/ConditionPicker.razor.rz.scp.css */
/* ── ConditionPicker ──────────────────────────────────────────────────────── */

.condition-picker[b-qvao6puxi2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem;
    min-height: 2.5rem;
    padding: 0.35rem 0.5rem;
    border: 2px solid var(--smw-sand-dark);
    background: var(--smw-white);
}

.condition-chip[b-qvao6puxi2] {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.6rem;
    background: transparent;
    border: 2px solid var(--smw-grey);
    color: var(--smw-dark-grey);
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    cursor: pointer;
    border-radius: 0;
    box-shadow: 2px 2px 0 rgba(0,0,0,0.15);
    transition: background-color .1s, border-color .1s, color .1s, box-shadow .1s;
}

.condition-chip:hover[b-qvao6puxi2] {
    border-color: var(--smw-water);
    color: var(--smw-water);
    background: rgba(64, 144, 216, 0.08);
}

.condition-chip.active[b-qvao6puxi2] {
    background-color: var(--smw-water);
    border-color: var(--smw-water);
    color: var(--smw-white);
    box-shadow: 2px 2px 0 rgba(0,0,0,0.3);
}

.condition-chip.active:hover[b-qvao6puxi2] {
    background-color: var(--smw-dark-grey);
    border-color: var(--smw-dark-grey);
    color: var(--smw-white);
}

.condition-any-hint[b-qvao6puxi2] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    color: var(--smw-grey);
    padding: 0.1rem 0.25rem;
    font-style: italic;
}
/* /Components/Shared/DealsFeed.razor.rz.scp.css */
.deals-feed-chips[b-xy1ggnyt2j] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    margin: 0 0 1.25rem;
    /* Stick under the landing-nav (height: 4rem) so the condition filter is
       always reachable while scrolling the listings. Padding gives the chip
       shadows breathing room; the negative margin lets the strip span the
       container's gutter and the matching background hides whatever scrolls
       past underneath. */
    position: sticky;
    top: 4rem;
    z-index: 5;
    padding: 0.75rem 0;
    background: var(--smw-white);
    border-bottom: 2px solid var(--smw-sand-dark);
}

@media (max-width: 640px) {
    .deals-feed-chips[b-xy1ggnyt2j] {
        top: 3.5rem;
        padding: 0.5rem 0;
    }
}

.deals-feed-chip[b-xy1ggnyt2j] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.55rem 1rem;
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.2);
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--smw-dark-grey);
    cursor: pointer;
    transition: transform 0.1s, box-shadow 0.1s, background-color 0.1s;
}

.deals-feed-chip:hover[b-xy1ggnyt2j] {
    transform: translate(-1px, -1px);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.25);
}

.deals-feed-chip.active[b-xy1ggnyt2j] {
    background: var(--smw-coin);
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.3) inset, 3px 3px 0 rgba(0, 0, 0, 0.25);
    color: var(--smw-dark-grey);
}

.deals-feed-chip:disabled[b-xy1ggnyt2j],
.deals-feed-chip[aria-disabled="true"][b-xy1ggnyt2j] {
    opacity: 0.5;
    cursor: not-allowed;
}

.deals-feed-chip-count[b-xy1ggnyt2j] {
    display: inline-block;
    min-width: 1.6em;
    padding: 0 0.4em;
    background: var(--smw-sand-light);
    border: 2px solid var(--smw-sand-dark);
    font-size: 0.75rem;
    line-height: 1.4;
    text-align: center;
}

.deals-feed-chip.active .deals-feed-chip-count[b-xy1ggnyt2j] {
    background: var(--smw-white);
}

.deals-feed-empty[b-xy1ggnyt2j] {
    font-family: var(--ui-font);
    font-size: 0.84rem;
    line-height: 1.85;
    color: var(--smw-grey);
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    padding: 1.5rem 1.25rem;
    margin: 0;
}

.deals-feed-empty strong[b-xy1ggnyt2j] {
    color: var(--smw-dark-grey);
}

/* "Scanning eBay…" empty-state with a CSS-drawn pixel radar mascot — three
   bouncing dots in a CRT-style enclosure. Shown when the feed has zero
   listings (vs the in-feed "no chip matches" empty, which keeps the plain
   paragraph treatment). */
.deals-feed-empty-scanning[b-xy1ggnyt2j] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 1.5rem;
    align-items: center;
    padding: 1.75rem 1.5rem;
}

.deals-feed-empty-mascot[b-xy1ggnyt2j] {
    display: flex;
    gap: 0.45rem;
    padding: 1rem 0.85rem;
    background: var(--smw-sand-dark);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: inset 2px 2px 0 rgba(255, 255, 255, 0.08);
}

.deals-feed-empty-dot[b-xy1ggnyt2j] {
    width: 0.7rem;
    height: 0.7rem;
    background: var(--smw-coin);
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.4);
    animation: deals-feed-empty-bounce-b-xy1ggnyt2j 1.2s infinite ease-in-out;
}

.deals-feed-empty-dot:nth-child(2)[b-xy1ggnyt2j] { animation-delay: 0.18s; background: var(--smw-coin-bright); }
.deals-feed-empty-dot:nth-child(3)[b-xy1ggnyt2j] { animation-delay: 0.36s; }

@keyframes deals-feed-empty-bounce-b-xy1ggnyt2j {
    0%, 80%, 100% { transform: translateY(0); opacity: 0.55; }
    40%           { transform: translateY(-0.5rem); opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .deals-feed-empty-dot[b-xy1ggnyt2j] {
        animation: none;
        opacity: 1;
    }
}

.deals-feed-empty-body[b-xy1ggnyt2j] {
    color: var(--smw-dark-grey);
}

.deals-feed-empty-headline[b-xy1ggnyt2j] {
    font-family: var(--ui-font);
    font-size: 1.12rem;
    margin: 0 0 0.5rem;
    color: var(--smw-sand-dark);
}

.deals-feed-empty-sub[b-xy1ggnyt2j] {
    margin: 0 0 1rem;
    font-size: 0.79rem;
    line-height: 1.7;
}

.deals-feed-empty-cta[b-xy1ggnyt2j] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

@media (max-width: 640px) {
    .deals-feed-empty-scanning[b-xy1ggnyt2j] {
        grid-template-columns: 1fr;
        gap: 1rem;
        justify-items: center;
        text-align: center;
    }
}

@media (max-width: 640px) {
    .deals-feed-chip[b-xy1ggnyt2j] {
        font-size: 0.75rem;
        padding: 0.45rem 0.75rem;
    }
}

/* "Show more": reveals the rest of CurrentDeals 12 at a time. */
.deals-feed-more[b-xy1ggnyt2j] {
    display: flex;
    justify-content: center;
    margin-top: 1.25rem;
}

.deals-feed-more-btn[b-xy1ggnyt2j] {
    font-family: var(--ui-font);
    font-size: 0.875rem;
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.2);
    border-radius: 0;
}

.deals-feed-more-left[b-xy1ggnyt2j] {
    color: var(--smw-dark-grey);
    font-size: 0.75rem;
    margin-left: 0.25rem;
}
/* /Components/Shared/DiscordEmbedMock.razor.rz.scp.css */
/* Illustration of the bot's /price reply. Discord's dark palette inside the site's
   pixel frame (3px black border + offset shadow), with a coin-gold "Example" tab so
   nobody mistakes the numbers for live data. */

.dem[b-tdhhqmxd3j] {
    position: relative;
    margin: 0;
    width: 100%;
    max-width: 520px;
}

.dem-tag[b-tdhhqmxd3j] {
    position: absolute;
    top: -0.9rem;
    left: 1rem;
    z-index: 1;
    padding: 0.15rem 0.6rem;
    font-family: var(--ui-font);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--smw-sand-dark, #111111);
    background: var(--smw-coin-bright, #ffd84e);
    border: 3px solid var(--smw-sand-dark, #111111);
}

.dem-window[b-tdhhqmxd3j] {
    padding: 1.25rem 1rem 1rem;
    background: #313338;
    color: #dbdee1;
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.25);
    font-family: var(--ui-font);
    font-size: 0.875rem;
    line-height: 1.4;
}

.dem-invoke[b-tdhhqmxd3j] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin: 0 0 0.35rem 3.25rem;
    font-size: 0.8rem;
    color: #b5bac1;
}

.dem-invoke-avatar[b-tdhhqmxd3j] {
    width: 1rem;
    height: 1rem;
    background: var(--smw-grass, #3cb83c);
    border-radius: 50%;
}

.dem-invoke-user[b-tdhhqmxd3j] {
    color: #f2f3f5;
    font-weight: 600;
}

.dem-invoke-cmd[b-tdhhqmxd3j] {
    font-family: var(--mono-font);
    font-size: 0.8rem;
    color: #c9cdfb;
    background: rgba(88, 101, 242, 0.3);
    padding: 0 0.3rem;
}

.dem-message[b-tdhhqmxd3j] {
    display: flex;
    gap: 0.75rem;
}

.dem-avatar[b-tdhhqmxd3j] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    font-weight: 700;
    color: var(--smw-sand-dark, #111111);
    background: var(--smw-coin-bright, #ffd84e);
    border: 2px solid var(--smw-sand-dark, #111111);
}

.dem-body[b-tdhhqmxd3j] {
    min-width: 0;
    flex: 1 1 auto;
}

.dem-author[b-tdhhqmxd3j] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.3rem;
}

.dem-name[b-tdhhqmxd3j] {
    font-weight: 600;
    color: #f2f3f5;
}

.dem-app[b-tdhhqmxd3j] {
    padding: 0 0.3rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: #ffffff;
    background: #5865f2;
    border-radius: 3px;
}

.dem-embed[b-tdhhqmxd3j] {
    padding: 0.6rem 0.9rem 0.75rem;
    background: #2b2d31;
    border-left: 4px solid var(--smw-coin, #e8a800);
    border-radius: 0 4px 4px 0;
}

.dem-title[b-tdhhqmxd3j] {
    margin-bottom: 0.4rem;
    font-weight: 700;
    color: #00a8fc;
}

.dem-desc[b-tdhhqmxd3j] {
    margin-bottom: 0.6rem;
}

.dem-fields[b-tdhhqmxd3j] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 0.6rem 1rem;
    margin-bottom: 0.6rem;
}

.dem-field-name[b-tdhhqmxd3j] {
    font-weight: 700;
    color: #f2f3f5;
}

.dem-field-value strong[b-tdhhqmxd3j] {
    color: #f2f3f5;
}

.dem-money[b-tdhhqmxd3j] {
    font-family: var(--mono-font);
}

.dem-footer[b-tdhhqmxd3j] {
    font-size: 0.75rem;
    color: #b5bac1;
}

.dem-buttons[b-tdhhqmxd3j] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.5rem;
}

.dem-button[b-tdhhqmxd3j] {
    padding: 0.3rem 0.8rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: #ffffff;
    background: #4e5058;
    border-radius: 3px;
}

.dem-caption[b-tdhhqmxd3j] {
    margin-top: 0.9rem;
    font-size: 0.875rem;
    line-height: 1.6;
    color: var(--smw-dark-grey, #3c4850);
}

@media (max-width: 480px) {
    .dem-window[b-tdhhqmxd3j] {
        padding: 1.1rem 0.6rem 0.75rem;
    }

    .dem-invoke[b-tdhhqmxd3j] {
        margin-left: 0;
    }

    .dem-avatar[b-tdhhqmxd3j] {
        width: 2rem;
        height: 2rem;
    }
}
/* /Components/Shared/DiscordPriceCallout.razor.rz.scp.css */
.discord-callout[b-92z0y2bgsl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem 1.5rem;
    flex-wrap: wrap;
    margin: 0 0 1.5rem;
    padding: 1rem 1.25rem;
    background: #eef0fe;
    border: 3px solid #5865f2;
    box-shadow: 4px 4px 0 #3c45a5;
}

.discord-callout-copy[b-92z0y2bgsl] {
    flex: 1 1 22rem;
    min-width: 0;
}

.discord-callout-headline[b-92z0y2bgsl] {
    margin: 0 0 0.25rem;
    font-weight: 700;
    font-size: 1.05rem;
    color: var(--smw-dark-grey);
}

.discord-callout-sub[b-92z0y2bgsl] {
    margin: 0;
    font-size: 0.95rem;
    line-height: 1.5;
    color: var(--smw-dark-grey);
}

.discord-callout-sub code[b-92z0y2bgsl] {
    font-family: var(--mono-font);
    font-size: 0.9rem;
    padding: 0.1rem 0.35rem;
    background: #fff;
    border: 1px solid #c5c9f7;
    color: #3c45a5;
    overflow-wrap: anywhere;
}

.discord-callout-actions[b-92z0y2bgsl] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.discord-callout-more[b-92z0y2bgsl] {
    color: #3c45a5;
    font-weight: 600;
}

.discord-callout-more:hover[b-92z0y2bgsl] {
    color: var(--smw-dark-grey);
}
/* /Components/Shared/FaqList.razor.rz.scp.css */
/* FAQ as native <details> accordion. Each item is its own pixel-card so the
   list reads like a stack of cartridge labels. The chevron is a CSS-drawn
   triangle (rotates 90deg when open) — no SVG asset, no JS. */

.faq-list[b-kftw3tdm96] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.faq-list-item[b-kftw3tdm96] {
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
    color: var(--smw-sand-dark, #111111);
}

/* Strip the browser default ▶ marker so we can render our own pixel chevron. */
.faq-list-question[b-kftw3tdm96] {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.85rem 1rem;
    font-family: var(--ui-font);
    font-size: 0.89rem;
    line-height: 1.4;
}

.faq-list-question[b-kftw3tdm96]::-webkit-details-marker {
    display: none;
}

/* CSS-drawn pixel chevron — a square rotated 45deg with two sides hidden.
   Sits to the left of the question text. Rotates when the item opens. */
.faq-list-question[b-kftw3tdm96]::before {
    content: "";
    flex: 0 0 auto;
    width: 0.55rem;
    height: 0.55rem;
    border-right: 3px solid var(--smw-sand-dark, #111111);
    border-bottom: 3px solid var(--smw-sand-dark, #111111);
    transform: rotate(-45deg);
    transition: transform 0.15s ease;
}

.faq-list-item[open] > .faq-list-question[b-kftw3tdm96]::before {
    transform: rotate(45deg);
}

.faq-list-question:hover[b-kftw3tdm96] {
    background: var(--smw-sand-light, #f4eccc);
}

.faq-list-answer[b-kftw3tdm96] {
    padding: 0 1rem 1rem 2.4rem;
    font-family: var(--ui-font);
    font-size: 0.81rem;
    line-height: 1.85;
    color: var(--smw-dark-grey, #3c4850);
}

@media (max-width: 640px) {
    .faq-list-question[b-kftw3tdm96] {
        font-size: 0.81rem;
        padding: 0.7rem 0.85rem;
    }

    .faq-list-answer[b-kftw3tdm96] {
        padding: 0 0.85rem 0.85rem 2.1rem;
        font-size: 0.75rem;
    }
}
/* /Components/Shared/FeedExclusions.razor.rz.scp.css */
.feed-exclusions[b-jc2xaov4ez] {
    margin-top: 1.75rem;
}

.feed-exclusions-heading[b-jc2xaov4ez] {
    font-size: 1.25rem;
    margin: 0 0 0.4rem;
}

.feed-exclusions-lead[b-jc2xaov4ez] {
    margin: 0 0 1rem;
    line-height: 1.6;
    color: var(--smw-dark-grey, #3c4850);
}

.feed-exclusions-group[b-jc2xaov4ez] {
    margin-bottom: 0.6rem;
    border-bottom: 2px solid rgba(0, 0, 0, 0.08);
}

.feed-exclusions-label[b-jc2xaov4ez] {
    padding: 0.35rem 0;
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    cursor: pointer;
}

.feed-exclusions-label:hover[b-jc2xaov4ez] {
    color: var(--deal-accent, var(--smw-sand-dark, #111111));
}

.feed-exclusions-count[b-jc2xaov4ez] {
    display: inline-block;
    margin-left: 0.35rem;
    padding: 0 0.4rem;
    background: var(--smw-sand-light, #f4eccc);
    border: 1px solid var(--smw-sand-dark, #111111);
    font-family: var(--mono-font);
    letter-spacing: 0;
}

.feed-exclusions-pills[b-jc2xaov4ez] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin: 0.3rem 0 0.8rem;
    padding: 0;
    list-style: none;
}

.feed-exclusions-pill[b-jc2xaov4ez] {
    padding: 0.2rem 0.55rem;
    background: var(--smw-sand-light, #f4eccc);
    border: 2px solid var(--smw-sand-dark, #111111);
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.15);
    font-family: var(--mono-font);
    font-size: 0.8rem;
    color: var(--smw-sand-dark, #111111);
    overflow-wrap: anywhere;
}
/* /Components/Shared/GamePriceTable.razor.rz.scp.css */
.game-price-table-low-sample td[b-rgmdgch1fp] {
    opacity: 0.7;
}

.game-price-table-low-sample-tag[b-rgmdgch1fp] {
    display: inline-block;
    margin-left: 0.4rem;
    padding: 0 0.4rem;
    border: 1px solid currentColor;
    font-size: 0.75rem;
    font-weight: 400;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    vertical-align: middle;
    white-space: nowrap;
}
/* /Components/Shared/ListingGuardToggles.razor.rz.scp.css */
.guard-toggles[b-ti9qemjq1a] {
    padding: 0.75rem 0.85rem;
    background-color: var(--smw-sand-light);
    border: 2px solid var(--smw-sand-dark);
}

.guard-toggle + .guard-toggle[b-ti9qemjq1a] {
    margin-top: 0.4rem;
}

.guard-description[b-ti9qemjq1a] {
    display: block;
    font-size: 0.8125rem;
    color: var(--smw-dark-grey);
}
/* /Components/Shared/LoadingState.razor.rz.scp.css */
.ls-fadein[b-wrkvknn3di] {
    animation: ls-fade-in-b-wrkvknn3di 0.18s ease-out both;
}

@keyframes ls-fade-in-b-wrkvknn3di {
    from { opacity: 0; }
    to   { opacity: 1; }
}
/* /Components/Shared/MarketReportItemCard.razor.rz.scp.css */
/* One item's block in a market report. Same pixel-card language as the deals hub
   (.deals-card): white panel, thick sand border, hard offset shadow. */
.mr-item[b-6km6209sk3] {
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    padding: 1.25rem 1.4rem 1.1rem;
    margin: 0 0 1.5rem;
    color: var(--smw-dark-grey);
    scroll-margin-top: 1rem;
}

.mr-item-head[b-6km6209sk3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin: 0 0 0.9rem;
}

.mr-item-title[b-6km6209sk3] {
    font-family: var(--ui-font);
    font-size: 1.07rem;
    line-height: 1.6;
    margin: 0;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.5);
}

.mr-item-title a[b-6km6209sk3] {
    color: var(--smw-dark-grey);
    text-decoration: underline;
    text-decoration-color: var(--smw-sand-dark);
    text-underline-offset: 3px;
}

.mr-item-title a:hover[b-6km6209sk3] {
    color: var(--smw-grass-dark);
}

/* Sparkline: the SVG lives in the TrendSparkline child component, so its
   elements need ::deep to be reachable from this scope. */
.mr-item-spark[b-6km6209sk3] {
    flex: 0 1 180px;
    min-width: 0;
    color: var(--smw-water);
}

.mr-item-spark[b-6km6209sk3]  .trend-sparkline {
    margin: 0;
}

.mr-item-spark[b-6km6209sk3]  .trend-sparkline svg {
    display: block;
    width: 100%;
    height: 40px;
}

.mr-item-empty[b-6km6209sk3] {
    font-size: 0.95rem;
    line-height: 1.6;
    color: var(--smw-grey);
    font-style: italic;
    margin: 0.25rem 0 0.5rem;
}

.mr-table-scroll[b-6km6209sk3] {
    overflow-x: auto;
    margin: 0 0 1rem;
}

.mr-table[b-6km6209sk3] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.99rem;
}

.mr-table th[b-6km6209sk3],
.mr-table td[b-6km6209sk3] {
    padding: 0.5rem 0.6rem;
    border-bottom: 1px solid var(--smw-sand);
    text-align: left;
    white-space: nowrap;
    vertical-align: top;
}

.mr-table thead th[b-6km6209sk3] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--smw-grey);
    border-bottom: 3px solid var(--smw-sand-dark);
}

.mr-table tbody tr:last-child th[b-6km6209sk3],
.mr-table tbody tr:last-child td[b-6km6209sk3] {
    border-bottom: none;
}

.mr-table .num[b-6km6209sk3] {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.mr-sub[b-6km6209sk3] {
    display: block;
    font-size: 0.79rem;
    font-weight: normal;
    color: var(--smw-grey);
}

.mr-up[b-6km6209sk3]   { color: var(--smw-mario-red); font-weight: 600; }
.mr-down[b-6km6209sk3] { color: var(--smw-grass-dark); font-weight: 600; }
.mr-flat[b-6km6209sk3] { color: var(--smw-grey); font-weight: 600; }

.mr-curation[b-6km6209sk3] {
    border-top: 2px dashed var(--smw-sand);
    padding-top: 0.8rem;
}

.mr-curation-lead[b-6km6209sk3] {
    font-size: 0.99rem;
    line-height: 1.6;
    margin: 0 0 0.6rem;
}

@media (max-width: 768px) {
    .mr-item[b-6km6209sk3] {
        padding: 1rem 1rem 0.9rem;
    }

    .mr-item-head[b-6km6209sk3] {
        flex-wrap: wrap;
    }

    .mr-item-spark[b-6km6209sk3] {
        flex-basis: 100%;
    }
}

/* Money and data figures use the mono face */
.mr-table .num[b-6km6209sk3] {
    font-family: var(--mono-font);
    font-variant-numeric: tabular-nums;
}
/* /Components/Shared/NotificationSetupPrompt.razor.rz.scp.css */
.setup-card[b-n1ediqj27y] {
    max-width: 44rem;
}

.match-count[b-n1ediqj27y] {
    font-family: var(--mono-font);
    font-weight: 600;
}

/* One block per channel, separated by a rule so the email and Discord
   choices read as parallel options. */
.channel-row[b-n1ediqj27y] {
    padding: 0.875rem 0;
    border-top: 1px solid var(--bs-border-color);
}

.channels[b-n1ediqj27y] {
    border-bottom: 1px solid var(--bs-border-color);
}

.webhook-steps[b-n1ediqj27y] {
    padding-left: 1.25rem;
    margin-bottom: 0.5rem;
}

.webhook-steps li + li[b-n1ediqj27y] {
    margin-top: 0.25rem;
}
/* /Components/Shared/PlatformBuyingChecks.razor.rz.scp.css */
.platform-checks[b-bom4uhrm8r] {
    margin: 2.5rem 0;
}

.platform-checks > h2[b-bom4uhrm8r] {
    margin-bottom: 1rem;
    padding-bottom: 0.3rem;
    border-bottom: 2px solid var(--deal-accent, var(--smw-sand-dark, #111111));
}

.platform-checks-intro[b-bom4uhrm8r] {
    color: var(--smw-dark-grey, #3c4850);
    margin: 0 0 1.25rem;
}

.platform-checks-tiers[b-bom4uhrm8r] {
    display: grid;
    gap: 1rem;
}

.platform-checks-tier[b-bom4uhrm8r] {
    padding: 1rem 1.1rem 0.5rem;
    background: var(--smw-sand-light, #f4eccc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
}

.platform-checks-tier h3[b-bom4uhrm8r] {
    font-size: 1.25rem;
    margin: 0 0 0.6rem;
}

.platform-checks-tier ul[b-bom4uhrm8r] {
    padding-left: 1.2rem;
    margin: 0 0 0.5rem;
}

.platform-checks-tier li[b-bom4uhrm8r] {
    margin-bottom: 0.5rem;
    line-height: 1.6;
}
/* /Components/Shared/PriceBadgeEmbed.razor.rz.scp.css */
/* "Embed this price badge" box. Pixel-card like FaqList; accent inherits the deal
   page's per-console --deal-accent when present. */

.badge-embed[b-ir4j975loe] {
    margin: 2.5rem 0;
    padding: 1.25rem 1.25rem 1rem;
    background: var(--smw-white, #fcfcfc);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
    color: var(--smw-sand-dark, #111111);
}

.badge-embed-heading[b-ir4j975loe] {
    margin: 0 0 0.6rem;
    padding-bottom: 0.3rem;
    border-bottom: 2px solid var(--deal-accent, #d82800);
    font-size: 1.23rem;
}

.badge-embed-intro[b-ir4j975loe] {
    margin: 0 0 1rem;
    line-height: 1.5;
}

.badge-embed-preview[b-ir4j975loe] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
    padding: 0.75rem;
    /* Checker of light + dark so the author sees it reads on both backgrounds. */
    background: linear-gradient(90deg, #f4f4f4 0 50%, #1e1e1e 50% 100%);
    border: 2px dashed var(--smw-grey, #8a9aaa);
    overflow-x: auto;
}

.badge-embed-preview img[b-ir4j975loe] {
    display: block;
    max-width: none;
    height: 20px;
}

.badge-embed-snippet[b-ir4j975loe] {
    margin-bottom: 0.85rem;
}

.badge-embed-snippet-head[b-ir4j975loe] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.3rem;
}

.badge-embed-snippet-head label[b-ir4j975loe] {
    font-family: var(--ui-font, monospace);
    font-size: 0.79rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.badge-embed-copy[b-ir4j975loe] {
    padding: 0.3rem 0.8rem;
    background: var(--smw-white, #fcfcfc);
    border: 2px solid var(--smw-sand-dark, #111111);
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.2);
    font-family: var(--ui-font, monospace);
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--smw-sand-dark, #111111);
    cursor: pointer;
}

.badge-embed-copy:hover[b-ir4j975loe],
.badge-embed-copy:focus-visible[b-ir4j975loe] {
    background: var(--smw-coin-bright, #ffd84e);
}

.badge-embed-copy:active[b-ir4j975loe] {
    transform: translate(2px, 2px);
    box-shadow: none;
}

.badge-embed-code[b-ir4j975loe] {
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 0.6rem;
    resize: vertical;
    background: #14181f;
    color: #c8f7c5;
    border: 2px solid var(--smw-sand-dark, #111111);
    font-family: var(--ui-font);
    font-size: 0.89rem;
    line-height: 1.4;
    word-break: break-all;
}

.badge-embed-hint[b-ir4j975loe] {
    margin: 0.25rem 0 0;
    font-size: 0.95rem;
    color: var(--smw-dark-grey, #3c4850);
}

.badge-embed-hint code[b-ir4j975loe] {
    font-size: 0.89rem;
}
/* /Components/Shared/PriceChecker.razor.rz.scp.css */
/* "Is this a good price?" checker — pixel-panel treatment matching the deal feed
   and price index (3px ink border, hard offset shadow, Silkscreen labels). */
.price-checker[b-synqq77mte] {
    margin: 1.5rem 0;
    padding: 1.25rem 1.5rem 1.5rem;
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.2);
    color: var(--smw-dark-grey);
}

.price-checker-title[b-synqq77mte] {
    font-family: var(--ui-font);
    font-size: 1.07rem;
    line-height: 1.6;
    margin: 0 0 1rem;
}

.price-checker-empty[b-synqq77mte] {
    margin: 0;
    font-size: 0.89rem;
    line-height: 1.7;
    color: var(--smw-grey);
}

.price-checker-form[b-synqq77mte] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin: 0 0 1rem;
}

.price-checker-field[b-synqq77mte] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    flex: 1 1 10rem;
    min-width: 0;
}

.price-checker-label[b-synqq77mte] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--smw-grey);
}

.price-checker-input[b-synqq77mte] {
    width: 100%;
    min-width: 0;
    padding: 0.5rem 0.65rem;
    background: var(--smw-white);
    border: 3px solid var(--smw-sand-dark);
    border-radius: 0;
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.15) inset;
    font-size: 1.07rem;
    color: var(--smw-dark-grey);
}

.price-checker-input:focus[b-synqq77mte] {
    outline: 3px solid var(--smw-coin);
    outline-offset: 1px;
}

.price-checker-money[b-synqq77mte] {
    display: flex;
    align-items: stretch;
}

.price-checker-dollar[b-synqq77mte] {
    display: flex;
    align-items: center;
    padding: 0 0.6rem;
    background: var(--smw-sand-light);
    border: 3px solid var(--smw-sand-dark);
    border-right: none;
    font-family: var(--ui-font);
    font-size: 0.89rem;
}

.price-checker-price[b-synqq77mte] {
    font-variant-numeric: tabular-nums;
}

.price-checker-result[b-synqq77mte] {
    padding: 1rem 1.1rem;
    margin: 0 0 1rem;
    background: var(--smw-sand-light);
    border: 3px solid var(--smw-sand-dark);
    border-left-width: 8px;
}

.price-checker-result.price-checker-low[b-synqq77mte]  { border-left-color: var(--smw-grass-dark); }
.price-checker-result.price-checker-mid[b-synqq77mte]  { border-left-color: var(--smw-coin); }
.price-checker-result.price-checker-high[b-synqq77mte] { border-left-color: var(--smw-mario-red); }

.price-checker-prompt[b-synqq77mte] {
    margin: 0;
    font-size: 0.95rem;
    line-height: 1.7;
}

.price-checker-headline[b-synqq77mte] {
    margin: 0 0 0.9rem;
    font-weight: 600;
    font-size: 1.12rem;
    line-height: 1.6;
}

/* Min -> max track with the median tick and a coin-coloured marker for the price. */
.price-checker-bar[b-synqq77mte] {
    position: relative;
    height: 0.9rem;
    margin: 0 0.5rem;
    background: linear-gradient(90deg, var(--smw-grass) 0%, var(--smw-coin-bright) 50%, var(--smw-brick) 100%);
    border: 3px solid var(--smw-sand-dark);
}

.price-checker-bar-mid[b-synqq77mte] {
    position: absolute;
    top: -0.35rem;
    bottom: -0.35rem;
    width: 3px;
    margin-left: -1.5px;
    background: var(--smw-sand-dark);
}

.price-checker-marker[b-synqq77mte] {
    position: absolute;
    top: 50%;
    width: 1rem;
    height: 1rem;
    margin: -0.5rem 0 0 -0.5rem;
    background: var(--smw-coin);
    border: 3px solid var(--smw-sand-dark);
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.3);
}

.price-checker-scale[b-synqq77mte] {
    display: flex;
    justify-content: space-between;
    gap: 0.5rem;
    margin: 0.45rem 0 0.75rem;
    font-family: var(--ui-font);
    font-size: 0.75rem;
    color: var(--smw-grey);
    font-variant-numeric: tabular-nums;
}

.price-checker-caveat[b-synqq77mte] {
    margin: 0;
    font-size: 0.81rem;
    line-height: 1.6;
    color: var(--smw-grey);
}

.price-checker-cta[b-synqq77mte] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    white-space: normal;
}

@media (max-width: 640px) {
    .price-checker[b-synqq77mte] {
        padding: 1rem 1rem 1.25rem;
    }

    .price-checker-field[b-synqq77mte] {
        flex-basis: 100%;
    }
}

/* Money and data figures use the mono face */
.price-checker-money[b-synqq77mte], .price-checker-price[b-synqq77mte], .price-checker-scale[b-synqq77mte] {
    font-family: var(--mono-font);
    font-variant-numeric: tabular-nums;
}
/* /Components/Shared/ReportReasonBars.razor.rz.scp.css */
.rr-bars[b-xm25vwurmm] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 0.45rem;
}

.rr-bar[b-xm25vwurmm] {
    display: grid;
    /* Fixed value column: each row is its own grid, so "auto" would give every
       row a different track length. */
    grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) 6.5rem;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.92rem;
    line-height: 1.4;
    color: var(--smw-dark-grey);
}

.rr-label[b-xm25vwurmm] {
    min-width: 0;
    overflow-wrap: anywhere;
}

/* Pixel-style track: hard border, flat fill, no rounding. */
.rr-track[b-xm25vwurmm] {
    display: block;
    height: 12px;
    background: var(--smw-sand-light);
    border: 2px solid var(--smw-sand-dark);
}

.rr-fill[b-xm25vwurmm] {
    display: block;
    height: 100%;
    background: var(--smw-mario-red);
}

.rr-value[b-xm25vwurmm] {
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    text-align: right;
    white-space: nowrap;
}

.rr-count[b-xm25vwurmm] {
    font-size: 0.79rem;
    font-weight: normal;
    color: var(--smw-grey);
}

@media (max-width: 768px) {
    .rr-bar[b-xm25vwurmm] {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .rr-track[b-xm25vwurmm] {
        grid-column: 1 / -1;
        grid-row: 2;
    }
}

/* Money and data figures use the mono face */
.rr-value[b-xm25vwurmm] {
    font-family: var(--mono-font);
    font-variant-numeric: tabular-nums;
}
/* /Components/Shared/SnipeAlertCard.razor.rz.scp.css */
.snipe-alert-card[b-nkfw51z5wh] {
    margin: 1.5rem 0 1rem;
    padding: 1.25rem 1.4rem;
    background: var(--smw-coin, #e8a800);
    border: 3px solid var(--smw-sand-dark, #111111);
    box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.25);
    color: var(--smw-sand-dark, #111111);
}

.snipe-alert-card-headline[b-nkfw51z5wh] {
    font-family: var(--ui-font);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.35;
    margin: 0 0 0.5rem;
}

.snipe-alert-card-body[b-nkfw51z5wh] {
    margin: 0 0 1rem;
    line-height: 1.6;
}

.snipe-alert-card-basis[b-nkfw51z5wh] {
    display: block;
    margin-top: 0.4rem;
    font-size: 0.8rem;
    opacity: 0.8;
}

.snipe-alert-card-cta[b-nkfw51z5wh] {
    font-family: var(--ui-font);
    font-size: 0.85rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}
/* /Components/Shared/StatCard.razor.rz.scp.css */
/* Compact body — main area is the number, not whitespace */
.stat-body[b-ayy7x3nqun] {
    padding: 0.7rem 0.9rem 0.6rem;
}

/* Small all-caps label above the number */
.stat-label[b-ayy7x3nqun] {
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.75;
    margin-bottom: 0.1rem;
}

/* The hero number */
.stat-value[b-ayy7x3nqun] {
    font-size: 1.79rem;
    line-height: 1.2;
    margin-bottom: 0.2rem;
}

/* Secondary context line below the number */
.stat-subtext[b-ayy7x3nqun] {
    font-size: 0.75rem;
    opacity: 0.65;
    margin-bottom: 0.35rem;
    line-height: 1.4;
}

/* Quick-action link — inherits card text colour */
.stat-action[b-ayy7x3nqun] {
    display: inline-block;
    font-size: 0.75rem;
    color: inherit !important;
    text-decoration: none !important;
    opacity: 0.8;
    transition: opacity 0.1s;
}

.stat-action:hover[b-ayy7x3nqun] {
    opacity: 1;
    text-shadow: 0 0 6px rgba(255, 255, 255, 0.55);
    color: inherit !important;
}

/* Money and data figures use the mono face */
.stat-value[b-ayy7x3nqun] {
    font-family: var(--mono-font);
    font-variant-numeric: tabular-nums;
}
/* /Components/Shared/TemplatePriceHint.razor.rz.scp.css */
.price-hint[b-66bpgg0bz9] {
    margin-top: 0.5rem;
    padding: 0.5rem 0.65rem;
    background: var(--smw-sand-light);
    border: 2px solid var(--smw-sand-dark);
}

.price-hint-label[b-66bpgg0bz9] {
    font-size: 0.8125rem;
    font-weight: 600;
    margin-bottom: 0.35rem;
}

.price-hint-chips[b-66bpgg0bz9] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.price-hint-chip[b-66bpgg0bz9] {
    padding: 0.15rem 0.55rem;
    font: inherit;
    font-size: 0.8125rem;
    line-height: 1.5;
    color: var(--smw-dark-grey);
    background: var(--smw-white);
    border: 2px solid var(--smw-sand-dark);
    box-shadow: none;
    cursor: pointer;
}

.price-hint-chip:hover[b-66bpgg0bz9] {
    background: color-mix(in srgb, var(--smw-grass) 14%, var(--smw-white));
}

.price-hint-value[b-66bpgg0bz9] {
    font-family: var(--mono-font);
    font-weight: 600;
}

.price-hint-note[b-66bpgg0bz9] {
    font-size: 0.75rem;
    color: var(--smw-grey);
    margin-top: 0.35rem;
}
/* /Components/Shared/TierPill.razor.rz.scp.css */
/* ── Tier block: external "Plan" label + separator + colored pill ──────
   Sits in the center of the top bar; the pill links to /billing.
   ──────────────────────────────────────────────────────────────────── */

.tier-block[b-vc92dqphmg] {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    white-space: nowrap;
}

.tier-block-label[b-vc92dqphmg] {
    font-family: var(--ui-font);
    font-size: 0.75rem;
    color: var(--smw-dark-grey);
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.tier-block-sep[b-vc92dqphmg] {
    color: var(--smw-grey);
    font-size: 0.89rem;
    line-height: 1;
    user-select: none;
}

/* ── The pill itself ──────────────────────────────────────────────── */

.tier-pill[b-vc92dqphmg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    padding: 0.35em 0.85em;
    border: 2px solid var(--smw-sand-dark);
    border-radius: 0;
    font-family: var(--ui-font);
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    text-decoration: none;
    text-align: center;
    color: var(--smw-white);
    box-shadow: 2px 2px 0 rgba(0, 0, 0, 0.3);
    transition: transform 80ms ease-out, box-shadow 80ms ease-out;
    line-height: 1;
}

.tier-pill:hover[b-vc92dqphmg],
.tier-pill:focus[b-vc92dqphmg] {
    color: var(--smw-white);
    transform: translate(-1px, -1px);
    box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.35);
}

.tier-pill:active[b-vc92dqphmg] {
    transform: translate(1px, 1px);
    box-shadow: 1px 1px 0 rgba(0, 0, 0, 0.3);
}

.tier-pill-label[b-vc92dqphmg] {
    font-weight: bold;
}

/* ── Tier color variants — match the .btn-* palette in app.css ─────── */

.tier-pill--free[b-vc92dqphmg] {
    background-color: var(--sfc-shell);
    border-color: var(--smw-grey);
}

.tier-pill--free:hover[b-vc92dqphmg],
.tier-pill--free:focus[b-vc92dqphmg] {
    background-color: var(--smw-dark-grey);
    border-color: var(--smw-grey);
}

.tier-pill--pro[b-vc92dqphmg] {
    background-color: var(--smw-grass);
    border-color: var(--smw-grass-dark);
}

.tier-pill--pro:hover[b-vc92dqphmg],
.tier-pill--pro:focus[b-vc92dqphmg] {
    background-color: var(--smw-grass-dark);
    border-color: var(--smw-grass-dark);
}

.tier-pill--ultra[b-vc92dqphmg] {
    background-color: var(--smw-purple);
    border-color: var(--smw-purple-dark);
}

.tier-pill--ultra:hover[b-vc92dqphmg],
.tier-pill--ultra:focus[b-vc92dqphmg] {
    background-color: var(--smw-purple-dark);
    border-color: var(--smw-purple-dark);
}

/* ── Pulsing Upgrade chip embedded in the Free tier pill ───────────── */

.tier-pill-inner-sep[b-vc92dqphmg] {
    width: 1px;
    height: 1em;
    background-color: rgba(255, 255, 255, 0.55);
    user-select: none;
}

.tier-pill-cta[b-vc92dqphmg] {
    background: var(--smw-coin, #fcc419);
    color: var(--smw-dark-grey);
    padding: 0.2em 0.5em;
    border-radius: 0;
    animation: tier-pill-pulse-b-vc92dqphmg 2s ease-in-out infinite;
}

@keyframes tier-pill-pulse-b-vc92dqphmg {
    0%, 100% { opacity: 1; }
    50%      { opacity: 0.55; }
}

/* ── Warning chip when a cancellation is scheduled ───────────────── */

.tier-pill-warn[b-vc92dqphmg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.1em;
    height: 1.1em;
    background: var(--smw-mario-red, #d62828);
    color: var(--smw-white);
    border: 1px solid rgba(0, 0, 0, 0.4);
    font-weight: bold;
    font-size: 0.75rem;
}
/* /Components/Shared/TrackerPicker.razor.rz.scp.css */
.tracker-picker[b-9euix2otid] {
    padding: 1rem;
    background: var(--smw-white);
    border: 2px solid var(--smw-sand-dark);
}

.tracker-picker-head[b-9euix2otid] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.75rem;
}

.tracker-picker-title[b-9euix2otid] {
    font-weight: 600;
    font-size: 1.05rem;
}

.tracker-picker-sub[b-9euix2otid] {
    font-size: 0.875rem;
    color: var(--smw-grey);
    margin-top: 0.15rem;
}

/* Plain text link, not .btn: same reasoning as .template-reset on the create page. */
.tracker-picker-link[b-9euix2otid] {
    flex-shrink: 0;
    padding: 0;
    background: none;
    border: none;
    box-shadow: none;
    font: inherit;
    font-size: 0.8125rem;
    color: var(--smw-dark-grey);
    text-decoration: underline;
    text-underline-offset: 2px;
    cursor: pointer;
}

.tracker-picker-link:hover[b-9euix2otid] {
    color: var(--smw-mario-red);
}

.tracker-picker-search[b-9euix2otid] {
    margin-bottom: 0.75rem;
}

.tracker-picker-chips[b-9euix2otid] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-bottom: 0.75rem;
}

.tracker-chip[b-9euix2otid] {
    padding: 0.2rem 0.6rem;
    font: inherit;
    font-size: 0.8125rem;
    line-height: 1.5;
    color: var(--smw-dark-grey);
    background: var(--smw-white);
    border: 2px solid var(--smw-sand-dark);
    box-shadow: none;
    cursor: pointer;
}

.tracker-chip:hover[b-9euix2otid] {
    background: var(--smw-sand-light);
}

.tracker-chip.active[b-9euix2otid] {
    color: var(--smw-white);
    background: var(--smw-grass-dark);
    border-color: var(--smw-grass-dark);
}

.tracker-picker-list[b-9euix2otid] {
    list-style: none;
    margin: 0;
    padding: 0;
    max-height: 22rem;
    overflow-y: auto;
    border: 2px solid var(--smw-sand-dark);
}

.tracker-picker-list li[b-9euix2otid] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-bottom: 1px solid var(--smw-sand);
}

.tracker-picker-list li:last-child[b-9euix2otid] {
    border-bottom: none;
}

.tracker-picker-list li:nth-child(even)[b-9euix2otid] {
    background: var(--bs-tertiary-bg, #f8f9fa);
}

.tracker-row[b-9euix2otid] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.55rem 0.75rem;
    font: inherit;
    text-align: left;
    color: var(--smw-dark-grey);
    background: none;
    border: none;
    box-shadow: none;
    cursor: pointer;
}

/* Highlight the whole row (pick button + "View page"), not just the button. */
.tracker-picker-list li:hover[b-9euix2otid],
.tracker-picker-list li:focus-within[b-9euix2otid] {
    background: color-mix(in srgb, var(--smw-grass) 14%, var(--smw-white));
}

.tracker-row-name[b-9euix2otid] {
    font-weight: 600;
    font-size: 0.9375rem;
}

.tracker-row-cat[b-9euix2otid] {
    flex-shrink: 0;
    font-size: 0.75rem;
    color: var(--smw-grey);
}

.tracker-row-view[b-9euix2otid] {
    flex-shrink: 0;
    padding: 0 0.75rem;
    font-size: 0.75rem;
    color: var(--smw-grey);
}

.tracker-picker-empty[b-9euix2otid],
.tracker-picker-more[b-9euix2otid] {
    font-size: 0.8125rem;
    color: var(--smw-grey);
    margin: 0.75rem 0 0;
}
