/* LearnPlay homepage polish layer
   This file is intentionally loaded after the legacy inline styles so it can
   standardize the homepage without deleting large existing blocks in one pass. */

:root {
    --lp-bg: #050816;
    --lp-surface: rgba(12, 18, 32, 0.92);
    --lp-surface-strong: #101827;
    --lp-line: rgba(148, 163, 184, 0.18);
    --lp-line-strong: rgba(125, 211, 252, 0.34);
    --lp-text: #f8fafc;
    --lp-muted: #a8b3c7;
    --lp-blue: #38bdf8;
    --lp-green: #34d399;
    --lp-violet: #8b5cf6;
    --lp-yellow: #facc15;
    --lp-radius: 8px;
    --lp-radius-lg: 14px;
    --lp-shadow: 0 18px 50px rgba(0, 0, 0, 0.34);
}

/* Returning-user hero fix: use the full desktop width instead of leaving an empty left column. */
@media (min-width: 769px) {
    body.lp-polished.lp-layout-existing .hero-content-minimal,
    body.lp-polished.lp-hero-returning .hero-content-minimal {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "copy"
            "play" !important;
        max-width: 1120px !important;
        row-gap: 18px !important;
    }

    body.lp-polished.lp-layout-existing .hero-main-cta,
    body.lp-polished.lp-hero-returning .hero-main-cta {
        grid-area: copy !important;
        max-width: 900px !important;
        margin: 0 auto !important;
        text-align: center !important;
    }

    body.lp-polished.lp-layout-existing .hero-title,
    body.lp-polished.lp-hero-returning .hero-title,
    body.lp-polished.lp-layout-existing .hero-description,
    body.lp-polished.lp-hero-returning .hero-description {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    body.lp-polished.lp-layout-existing .hero-play-panel,
    body.lp-polished.lp-hero-returning .hero-play-panel {
        grid-area: play !important;
        width: 100% !important;
        max-width: 960px !important;
        margin: 0 auto !important;
    }
}

/* Final premium override: this intentionally sits at EOF. */
body.lp-polished .lp-premium-card {
    border-color: rgba(96, 165, 250, 0.46) !important;
    box-shadow: 0 18px 42px rgba(2, 6, 23, 0.34) !important;
}

@media (max-width: 768px) {
    body.lp-polished.lp-mobile-game-first .hero-play-panel.lp-premium-hero-panel {
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto !important;
        gap: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border-radius: 16px !important;
        border: 1px solid rgba(96, 165, 250, 0.38) !important;
        background: linear-gradient(180deg, rgba(15, 23, 42, 0.9), rgba(2, 6, 23, 0.98)) !important;
        box-shadow: 0 20px 48px rgba(2, 6, 23, 0.44) !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card img {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
        border-radius: 0 !important;
        object-fit: cover !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card .hero-play-card-body {
        display: grid !important;
        gap: 5px !important;
        padding: 10px 12px 12px !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card > i {
        position: absolute !important;
        right: 12px !important;
        top: calc((100vw - 24px) * 0.5625) !important;
        width: 42px !important;
        height: 42px !important;
        transform: translateY(-100%) !important;
        background: rgba(37, 99, 235, 0.96) !important;
        color: white !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card .hero-card-cta {
        width: 100% !important;
        min-height: 38px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
}

/* EOF returning-user hero fix: this must remain after all legacy hero experiments. */
@media (min-width: 769px) {
    body.lp-polished.lp-layout-existing .hero-content-minimal,
    body.lp-polished.lp-hero-returning .hero-content-minimal {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "copy"
            "play" !important;
        max-width: 1120px !important;
        row-gap: 18px !important;
    }

    body.lp-polished.lp-layout-existing .hero-main-cta,
    body.lp-polished.lp-hero-returning .hero-main-cta {
        grid-area: copy !important;
        max-width: 900px !important;
        margin: 0 auto !important;
        text-align: center !important;
    }

    body.lp-polished.lp-layout-existing .hero-title,
    body.lp-polished.lp-hero-returning .hero-title,
    body.lp-polished.lp-layout-existing .hero-description,
    body.lp-polished.lp-hero-returning .hero-description {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    body.lp-polished.lp-layout-existing .hero-play-panel,
    body.lp-polished.lp-hero-returning .hero-play-panel {
        grid-area: play !important;
        width: 100% !important;
        max-width: 960px !important;
        margin: 0 auto !important;
    }
}

/* Returning-user hero fix: keep the signed-in hero centered instead of stranded in the right column. */
@media (min-width: 769px) {
    body.lp-polished.lp-layout-existing .hero-content-minimal,
    body.lp-polished.lp-hero-returning .hero-content-minimal {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "copy"
            "play" !important;
        max-width: 1120px !important;
        row-gap: 18px !important;
    }

    body.lp-polished.lp-layout-existing .hero-main-cta,
    body.lp-polished.lp-hero-returning .hero-main-cta {
        grid-area: copy !important;
        max-width: 900px !important;
        margin: 0 auto !important;
        text-align: center !important;
    }

    body.lp-polished.lp-layout-existing .hero-title,
    body.lp-polished.lp-hero-returning .hero-title,
    body.lp-polished.lp-layout-existing .hero-description,
    body.lp-polished.lp-hero-returning .hero-description {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    body.lp-polished.lp-layout-existing .hero-play-panel,
    body.lp-polished.lp-hero-returning .hero-play-panel {
        grid-area: play !important;
        width: 100% !important;
        max-width: 960px !important;
        margin: 0 auto !important;
    }
}

/* Premium hero + card-quality pass. Kept last so it wins old experiments. */
body.lp-polished .lp-premium-card {
    border-color: rgba(96, 165, 250, 0.42) !important;
    background:
        linear-gradient(180deg, rgba(30, 41, 59, 0.94), rgba(2, 6, 23, 0.96)) !important;
    box-shadow: 0 18px 42px rgba(2, 6, 23, 0.34) !important;
}

body.lp-polished .lp-top-pick {
    position: absolute !important;
    left: 8px !important;
    top: 8px !important;
    z-index: 9 !important;
    min-height: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    background: rgba(15, 23, 42, 0.86) !important;
    border: 1px solid rgba(251, 191, 36, 0.4) !important;
    color: #fde68a !important;
    font-size: 0.62rem !important;
    font-weight: 1000 !important;
    text-transform: uppercase !important;
    pointer-events: none !important;
}

body.lp-polished .lp-hero-proof-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin-top: 8px !important;
}

body.lp-polished .lp-hero-proof-row b {
    min-height: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    background: rgba(96, 165, 250, 0.12) !important;
    border: 1px solid rgba(96, 165, 250, 0.24) !important;
    color: #bfdbfe !important;
    font-size: 0.62rem !important;
    font-weight: 1000 !important;
}

@media (min-width: 769px) {
    body.lp-polished .lp-premium-hero-card {
        min-height: 320px !important;
    }

    body.lp-polished .lp-premium-hero-card img {
        height: 188px !important;
    }

    body.lp-polished .lp-premium-card {
        transform: translateY(-2px) !important;
    }
}

@media (max-width: 768px) {
    body.lp-polished.lp-mobile-game-first .hero-play-panel {
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    body.lp-polished .lp-premium-hero-card,
    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto !important;
        gap: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border-radius: 16px !important;
        background:
            linear-gradient(180deg, rgba(15, 23, 42, 0.88), rgba(2, 6, 23, 0.98)) !important;
        border: 1px solid rgba(96, 165, 250, 0.34) !important;
        box-shadow: 0 20px 48px rgba(2, 6, 23, 0.42) !important;
    }

    body.lp-polished .lp-premium-hero-card img,
    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card img {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
        border-radius: 0 !important;
        object-fit: cover !important;
    }

    body.lp-polished .lp-premium-hero-card .hero-play-card-body {
        display: grid !important;
        gap: 5px !important;
        padding: 10px 12px 12px !important;
    }

    body.lp-polished .lp-premium-hero-card .hero-play-card-body strong {
        font-size: 1.08rem !important;
        line-height: 1.12 !important;
    }

    body.lp-polished.lp-mobile-game-first .lp-premium-hero-card .hero-play-card-body em {
        display: -webkit-box !important;
        overflow: hidden !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        font-size: 0.76rem !important;
        line-height: 1.35 !important;
    }

    body.lp-polished .lp-premium-hero-card > i {
        position: absolute !important;
        right: 12px !important;
        top: calc(56.25vw - 2px) !important;
        width: 42px !important;
        height: 42px !important;
        transform: translateY(-100%) !important;
        background: rgba(37, 99, 235, 0.96) !important;
        color: white !important;
    }

    body.lp-polished .lp-premium-hero-card .hero-card-cta {
        width: 100% !important;
        min-height: 38px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-top: 4px !important;
        border-radius: 10px !important;
        font-size: 0.76rem !important;
    }

    body.lp-polished .lp-hero-proof-row {
        margin-top: 2px !important;
    }

    body.lp-polished .lp-hero-proof-row b {
        min-height: 21px !important;
        padding: 0 7px !important;
        font-size: 0.56rem !important;
    }

    body.lp-polished .lp-premium-card {
        min-width: 188px !important;
    }
}

body {
    background:
        linear-gradient(180deg, #050816 0%, #08111f 42%, #050816 100%) !important;
}

body.lp-polished .hero-orb,
body.lp-polished .scan-line,
body.lp-polished .particles-container {
    display: none !important;
}

/* Clean Navbar */
body.lp-polished .cyber-nav {
    height: 72px !important;
    min-height: 72px !important;
    padding: 0 24px !important;
    background: rgba(5, 8, 22, 0.86) !important;
    border-bottom: 1px solid var(--lp-line) !important;
    box-shadow: 0 10px 34px rgba(0, 0, 0, 0.26) !important;
}

body.lp-polished .nav-container {
    max-width: 1240px !important;
    gap: 24px !important;
    justify-content: flex-start !important;
}

body.lp-polished .logo {
    gap: 10px !important;
    margin-right: 10px !important;
}

body.lp-polished .logo-icon {
    width: 38px !important;
    height: 38px !important;
    border-radius: var(--lp-radius) !important;
    font-size: 1.5rem !important;
    animation: none !important;
    background: linear-gradient(135deg, var(--lp-blue), var(--lp-green)) !important;
    box-shadow: none !important;
}

body.lp-polished .logo-text {
    font-size: 1.45rem !important;
    letter-spacing: 0 !important;
}

body.lp-polished .nav-main-links {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 !important;
}

body.lp-polished .nav-main-links .nav-link {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 40px !important;
    padding: 0 14px !important;
    border-radius: var(--lp-radius) !important;
    color: var(--lp-muted) !important;
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .nav-main-links .nav-link::after {
    display: none !important;
}

body.lp-polished .nav-main-links .nav-link:hover,
body.lp-polished .nav-main-links .nav-link[aria-current="page"] {
    background: rgba(56, 189, 248, 0.1) !important;
    color: var(--lp-text) !important;
}

body.lp-polished .nav-buttons {
    margin-left: auto !important;
    gap: 12px !important;
}

body.lp-polished .nav-main-buttons {
    gap: 10px !important;
}

body.lp-polished .cyber-btn,
body.lp-polished .install-btn-simple,
body.lp-polished .user-menu-button {
    min-height: 40px !important;
    border-radius: var(--lp-radius) !important;
    letter-spacing: 0 !important;
    box-shadow: none !important;
    transition: transform 160ms ease, background 160ms ease, border-color 160ms ease !important;
}

body.lp-polished .nav-main-buttons .create-btn {
    padding: 0 16px !important;
    background: #2563eb !important;
    border: 1px solid rgba(147, 197, 253, 0.28) !important;
}

body.lp-polished .install-btn-simple {
    padding: 0 14px !important;
    background: rgba(15, 23, 42, 0.86) !important;
    border: 1px solid var(--lp-line) !important;
    color: var(--lp-muted) !important;
}

body.lp-polished .user-menu-button {
    padding: 0 10px !important;
    background: rgba(15, 23, 42, 0.9) !important;
    border: 1px solid var(--lp-line) !important;
}

body.lp-polished .user-avatar {
    width: 30px !important;
    height: 30px !important;
}

/* Playable First Viewport */
body.lp-polished .hero-section {
    display: block !important;
    width: 100% !important;
    min-height: auto !important;
    padding: 112px 24px 42px !important;
    margin: 0 !important;
    background:
        radial-gradient(900px 460px at 82% 18%, rgba(37, 99, 235, 0.22), transparent 62%),
        radial-gradient(720px 380px at 16% 8%, rgba(52, 211, 153, 0.11), transparent 58%),
        linear-gradient(180deg, #050816 0%, #08111f 100%) !important;
    overflow: hidden !important;
}

body.lp-polished .hero-content-minimal {
    max-width: 1280px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: minmax(380px, 0.82fr) minmax(520px, 1.18fr) !important;
    grid-template-areas:
        "copy play"
        "copy start"
        "copy supporting" !important;
    column-gap: clamp(36px, 6vw, 88px) !important;
    row-gap: 18px !important;
    align-items: start !important;
}

body.lp-polished .hero-main-cta {
    grid-area: copy !important;
    min-width: 0 !important;
    max-width: 560px !important;
    padding-top: 18px !important;
    text-align: left !important;
}

body.lp-polished .hero-trust-badge {
    width: fit-content !important;
    margin-bottom: 16px !important;
    padding: 7px 10px !important;
    border-radius: var(--lp-radius) !important;
    background: rgba(15, 23, 42, 0.82) !important;
    border: 1px solid var(--lp-line) !important;
    color: var(--lp-muted) !important;
    font-size: 0.78rem !important;
    letter-spacing: 0 !important;
}

body.lp-polished .hero-title {
    margin: 0 0 18px !important;
    color: var(--lp-text) !important;
    background: none !important;
    -webkit-text-fill-color: currentColor !important;
    text-shadow: none !important;
    font-size: clamp(3.1rem, 5.7vw, 5.6rem) !important;
    line-height: 0.96 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .hero-description {
    display: block !important;
    max-width: 560px !important;
    margin: 0 0 24px !important;
    color: var(--lp-muted) !important;
    font-size: 1.03rem !important;
    line-height: 1.6 !important;
    text-align: left !important;
}

body.lp-polished .hero-description strong {
    color: var(--lp-text) !important;
}

body.lp-polished .hero-buttons {
    justify-content: flex-start !important;
    gap: 10px !important;
    margin: 0 0 20px !important;
}

body.lp-polished .hero-btn {
    min-height: 44px !important;
    padding: 0 16px !important;
    border-radius: var(--lp-radius) !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

body.lp-polished .hero-btn-primary {
    background: #2563eb !important;
    color: white !important;
}

body.lp-polished .hero-btn-secondary {
    background: rgba(15, 23, 42, 0.9) !important;
    border: 1px solid var(--lp-line-strong) !important;
    color: var(--lp-blue) !important;
}

body.lp-polished .hero-play-panel {
    grid-area: play !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 18px !important;
    border-radius: var(--lp-radius-lg) !important;
    background:
        linear-gradient(180deg, rgba(15, 23, 42, 0.94), rgba(8, 13, 25, 0.96)) !important;
    border: 1px solid var(--lp-line) !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34) !important;
    position: relative !important;
    overflow: hidden !important;
}

body.lp-polished .hero-play-panel::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(135deg, rgba(56, 189, 248, 0.12), transparent 44%) !important;
    pointer-events: none !important;
}

body.lp-polished .hero-play-panel-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-bottom: 14px !important;
    position: relative !important;
    z-index: 1 !important;
}

body.lp-polished .hero-play-kicker {
    color: var(--lp-text) !important;
    font-size: 0.9rem !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .hero-play-all {
    color: var(--lp-blue) !important;
    text-decoration: none !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
}

body.lp-polished .hero-play-grid {
    display: grid !important;
    gap: 10px !important;
    position: relative !important;
    z-index: 1 !important;
}

body.lp-polished .hero-play-card {
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) 34px !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 82px !important;
    padding: 10px !important;
    border-radius: 10px !important;
    background: rgba(2, 6, 23, 0.62) !important;
    border: 1px solid rgba(148, 163, 184, 0.16) !important;
    color: var(--lp-text) !important;
    text-decoration: none !important;
}

body.lp-polished .hero-play-card:hover {
    border-color: var(--lp-line-strong) !important;
    background: rgba(15, 23, 42, 0.88) !important;
}

body.lp-polished .hero-play-card img {
    width: 58px !important;
    height: 58px !important;
    border-radius: 6px !important;
    object-fit: cover !important;
}

body.lp-polished .hero-play-card-body {
    min-width: 0 !important;
    display: grid !important;
    gap: 2px !important;
}

body.lp-polished .hero-play-card-body strong,
body.lp-polished .hero-play-card-body span {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body.lp-polished .hero-play-card-body strong {
    color: var(--lp-text) !important;
    font-size: 0.92rem !important;
}

body.lp-polished .hero-play-card-body span {
    color: var(--lp-muted) !important;
    font-size: 0.78rem !important;
}

body.lp-polished .hero-play-card > i {
    width: 34px !important;
    height: 34px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 999px !important;
    background: rgba(52, 211, 153, 0.14) !important;
    color: var(--lp-green) !important;
}

body.lp-polished .stats-panel,
body.lp-polished .brand-signature,
body.lp-polished .start-here-section,
body.lp-polished .creator-week-premium,
body.lp-polished .creator-spotlight-card,
body.lp-polished .progress-strip,
body.lp-polished #continuePlayingContainer,
body.lp-polished .featured-card-wrapper {
    grid-area: supporting !important;
}

body.lp-polished .stats-panel {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 10px 14px !important;
    border-radius: var(--lp-radius) !important;
    background: rgba(15, 23, 42, 0.82) !important;
    border: 1px solid var(--lp-line) !important;
    box-shadow: none !important;
}

body.lp-polished .start-here-section {
    grid-area: start !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
}

body.lp-polished .lp-start-here-duplicate,
body.lp-polished .lp-start-here-duplicate[hidden] {
    display: none !important;
}

body.lp-polished .start-here-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
}

body.lp-polished .start-here-header h3 {
    margin: 0 !important;
    color: var(--lp-text) !important;
    font-size: 1.05rem !important;
    letter-spacing: 0 !important;
}

body.lp-polished .start-here-subtitle {
    margin: 0 !important;
    padding: 4px 10px !important;
    background: rgba(249, 115, 22, 0.13) !important;
    border-radius: 999px !important;
    color: #fb923c !important;
    font-size: 0.72rem !important;
    white-space: nowrap !important;
}

body.lp-polished .start-here-track-wrapper {
    width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 4px !important;
}

body.lp-polished .start-here-track {
    width: max-content !important;
    max-width: none !important;
    display: flex !important;
    gap: 14px !important;
    padding: 0 !important;
}

body.lp-polished .start-here-card {
    width: 180px !important;
    min-width: 180px !important;
    border-radius: 10px !important;
}

body.lp-polished .start-here-image {
    aspect-ratio: 16 / 10 !important;
}

body.lp-polished .featured-card-wrapper,
body.lp-polished .creator-week-premium,
body.lp-polished .creator-spotlight-card {
    display: none !important;
}

body.lp-polished .stat-number {
    font-size: 1.1rem !important;
}

body.lp-polished .stat-label {
    font-size: 0.7rem !important;
    letter-spacing: 0 !important;
}

body.lp-polished .brand-signature,
body.lp-polished .category-explanation {
    display: none !important;
}

body.lp-polished #homeContent {
    padding-top: 24px !important;
}

/* Standardized Cards */
body.lp-polished .curated-game-card,
body.lp-polished .life-skills-card,
body.lp-polished .cs-game-card,
body.lp-polished .advanced-game-card,
body.lp-polished .carousel-card,
body.lp-polished .continue-card,
body.lp-polished .start-here-card,
body.lp-polished .mobile-game-item,
body.lp-polished .cyber-card.game-card {
    border-radius: var(--lp-radius) !important;
    background: var(--lp-surface-strong) !important;
    border: 1px solid var(--lp-line) !important;
    box-shadow: none !important;
    transition: transform 160ms ease, border-color 160ms ease, background 160ms ease !important;
    overflow: hidden !important;
}

body.lp-polished .curated-game-card:hover,
body.lp-polished .life-skills-card:hover,
body.lp-polished .cs-game-card:hover,
body.lp-polished .advanced-game-card:hover,
body.lp-polished .carousel-card:hover,
body.lp-polished .continue-card:hover,
body.lp-polished .start-here-card:hover,
body.lp-polished .mobile-game-item:hover,
body.lp-polished .cyber-card.game-card:hover {
    transform: translateY(-3px) !important;
    border-color: var(--lp-line-strong) !important;
    background: #111f33 !important;
}

body.lp-polished .curated-game-image,
body.lp-polished .game-image,
body.lp-polished .carousel-game-thumb,
body.lp-polished .start-here-image,
body.lp-polished .game-card-header {
    border-radius: 0 !important;
    aspect-ratio: 16 / 9 !important;
    min-height: 0 !important;
    height: auto !important;
    background: #07111f !important;
}

body.lp-polished .curated-game-image img,
body.lp-polished .game-image img,
body.lp-polished .carousel-game-thumb img,
body.lp-polished .start-here-image img,
body.lp-polished .game-thumb-img {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
    object-fit: cover !important;
    box-shadow: none !important;
    transform: none !important;
}

body.lp-polished .curated-game-title,
body.lp-polished .game-title,
body.lp-polished .game-title-compact,
body.lp-polished .compact-game-title,
body.lp-polished .carousel-game-title,
body.lp-polished .continue-name,
body.lp-polished .mobile-game-name,
body.lp-polished .game-card-title {
    color: var(--lp-text) !important;
    font-size: 0.95rem !important;
    line-height: 1.32 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .curated-row-header,
body.lp-polished .recommended-header {
    margin-bottom: 12px !important;
    padding-bottom: 0 !important;
    border-bottom: 0 !important;
}

body.lp-polished .curated-row-title h3,
body.lp-polished .section-title,
body.lp-polished .carousel-title {
    color: var(--lp-text) !important;
    letter-spacing: 0 !important;
}

body.lp-polished .curated-row-subtitle,
body.lp-polished .recommended-subtitle,
body.lp-polished .carousel-subtitle {
    color: var(--lp-muted) !important;
}

body.lp-polished .curated-games-track,
body.lp-polished .carousel-track,
body.lp-polished .advanced-games-track,
body.lp-polished .start-here-track {
    gap: 14px !important;
}

/* Mobile Bottom Nav */
body.lp-polished .mobile-bottom-nav {
    display: none !important;
}

@media (max-width: 768px) {
    body.lp-polished {
        padding-bottom: 86px !important;
    }

    body.lp-polished #mobileGamesRow,
    body.lp-polished .mobile-games-above,
    body.lp-polished .trending-row,
    body.lp-polished .lp-mobile-hidden-section {
        display: none !important;
    }

    body.lp-polished .cyber-nav {
        height: 64px !important;
        min-height: 64px !important;
        padding: 0 14px !important;
    }

    body.lp-polished .nav-container {
        gap: 10px !important;
    }

    body.lp-polished .logo {
        position: static !important;
        transform: none !important;
        margin-right: auto !important;
    }

    body.lp-polished .logo-icon {
        width: 34px !important;
        height: 34px !important;
        font-size: 1.25rem !important;
    }

    body.lp-polished .logo-text {
        font-size: 1.25rem !important;
    }

    body.lp-polished .nav-main-links,
    body.lp-polished .install-btn-simple,
    body.lp-polished .user-menu-container,
    body.lp-polished .mobile-menu-button {
        display: none !important;
    }

    body.lp-polished .nav-buttons,
    body.lp-polished .nav-main-buttons {
        display: flex !important;
        margin-left: 0 !important;
    }

    body.lp-polished .nav-main-buttons .create-btn {
        min-width: 40px !important;
        width: 40px !important;
        height: 40px !important;
        padding: 0 !important;
        justify-content: center !important;
    }

    body.lp-polished .nav-main-buttons .create-btn span {
        display: none !important;
    }

    body.lp-polished .hero-section {
        width: 100% !important;
        padding: 78px 14px 18px !important;
        background:
            radial-gradient(520px 280px at 70% 0%, rgba(37, 99, 235, 0.24), transparent 62%),
            linear-gradient(180deg, #050816 0%, #08111f 100%) !important;
    }

    body.lp-polished .hero-content-minimal {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "copy"
            "play"
            "start"
            "supporting" !important;
        gap: 12px !important;
    }

    body.lp-polished .hero-main-cta,
    body.lp-polished .stats-panel,
    body.lp-polished .start-here-section,
    body.lp-polished .creator-week-premium,
    body.lp-polished .creator-spotlight-card,
    body.lp-polished .progress-strip,
    body.lp-polished #continuePlayingContainer,
    body.lp-polished .featured-card-wrapper {
        grid-column: 1 / -1 !important;
    }

    body.lp-polished .hero-main-cta {
        grid-area: copy !important;
        max-width: none !important;
        padding-top: 0 !important;
    }

    body.lp-polished .hero-play-panel {
        grid-area: play !important;
    }

    body.lp-polished .start-here-section {
        grid-area: start !important;
    }

    body.lp-polished .stats-panel {
        grid-area: supporting !important;
    }

    body.lp-polished .hero-title {
        white-space: normal !important;
        text-align: left !important;
        font-size: clamp(2.35rem, 11vw, 3.45rem) !important;
        line-height: 0.98 !important;
        margin-bottom: 10px !important;
    }

    body.lp-polished .hero-description {
        display: block !important;
        max-width: none !important;
        font-size: 0.92rem !important;
        margin-bottom: 14px !important;
    }

    body.lp-polished .hero-buttons {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        margin-bottom: 0 !important;
    }

    body.lp-polished .hero-btn {
        width: 100% !important;
        min-width: 0 !important;
        padding: 0 10px !important;
        font-size: 0.78rem !important;
        white-space: normal !important;
        text-align: center !important;
    }

    body.lp-polished .hero-play-panel {
        padding: 10px !important;
        margin-top: 0 !important;
        border-radius: 12px !important;
    }

    body.lp-polished .hero-play-panel-header {
        margin-bottom: 8px !important;
    }

    body.lp-polished .hero-play-kicker {
        font-size: 0.82rem !important;
    }

    body.lp-polished .hero-play-card {
        grid-template-columns: 52px minmax(0, 1fr) 32px !important;
        min-height: 64px !important;
        padding: 7px !important;
    }

    body.lp-polished .hero-play-card img {
        width: 52px !important;
        height: 52px !important;
    }

    body.lp-polished .stats-panel {
        width: 100% !important;
        margin: 0 !important;
        padding: 8px 10px !important;
        display: none !important;
    }

    body.lp-polished .start-here-header {
        margin-top: 4px !important;
        margin-bottom: 8px !important;
    }

    body.lp-polished .start-here-header h3 {
        font-size: 0.92rem !important;
    }

    body.lp-polished .start-here-subtitle {
        font-size: 0.64rem !important;
        padding: 3px 8px !important;
    }

    body.lp-polished .start-here-card {
        width: 148px !important;
        min-width: 148px !important;
    }

    body.lp-polished .start-here-track-wrapper {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding-bottom: 12px !important;
        scrollbar-width: thin !important;
        scrollbar-color: rgba(56, 189, 248, 0.75) rgba(15, 23, 42, 0.9) !important;
        -webkit-overflow-scrolling: touch !important;
    }

    body.lp-polished .start-here-track-wrapper::-webkit-scrollbar {
        height: 7px !important;
        display: block !important;
    }

    body.lp-polished .start-here-track-wrapper::-webkit-scrollbar-track {
        background: rgba(15, 23, 42, 0.9) !important;
        border-radius: 999px !important;
    }

    body.lp-polished .start-here-track-wrapper::-webkit-scrollbar-thumb {
        background: linear-gradient(90deg, var(--lp-blue), var(--lp-green)) !important;
        border-radius: 999px !important;
    }

    body.lp-polished .start-here-track {
        width: max-content !important;
        min-width: max-content !important;
        flex-wrap: nowrap !important;
    }

    body.lp-polished #homeContent {
        padding-top: 18px !important;
    }

    body.lp-polished .mobile-bottom-nav {
        display: block !important;
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        height: 76px !important;
        padding: 8px 12px calc(8px + env(safe-area-inset-bottom)) !important;
        background: rgba(5, 8, 22, 0.84) !important;
        border-top: 1px solid var(--lp-line) !important;
        backdrop-filter: blur(18px) !important;
        z-index: 1200 !important;
    }

    body.lp-polished .bnav-pill {
        max-width: 520px !important;
        height: 60px !important;
        margin: 0 auto !important;
        padding: 0 8px !important;
        display: grid !important;
        grid-template-columns: repeat(5, 1fr) !important;
        align-items: center !important;
        gap: 4px !important;
        background: rgba(15, 23, 42, 0.94) !important;
        border: 1px solid var(--lp-line) !important;
        border-radius: var(--lp-radius) !important;
        box-shadow: var(--lp-shadow) !important;
    }

    body.lp-polished .mobile-bottom-nav-item,
    body.lp-polished .bnav-fab-btn {
        position: relative !important;
        display: grid !important;
        place-items: center !important;
        gap: 2px !important;
        min-width: 0 !important;
        height: 48px !important;
        padding: 0 !important;
        color: var(--lp-muted) !important;
        text-decoration: none !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: var(--lp-radius) !important;
        transform: none !important;
    }

    body.lp-polished .bnav-fab-ring,
    body.lp-polished .bnav-icon-glow,
    body.lp-polished .bnav-active-dot {
        display: none !important;
    }

    body.lp-polished .bnav-icon-box,
    body.lp-polished .bnav-fab-core {
        width: 24px !important;
        height: 24px !important;
        display: grid !important;
        place-items: center !important;
        background: transparent !important;
        box-shadow: none !important;
        border-radius: 0 !important;
    }

    body.lp-polished .mobile-bottom-nav-icon,
    body.lp-polished .bnav-fab-core i {
        font-size: 1rem !important;
        color: currentColor !important;
    }

    body.lp-polished .mobile-bottom-nav-text,
    body.lp-polished .bnav-fab-label {
        display: block !important;
        font-size: 0.62rem !important;
        line-height: 1 !important;
        font-weight: 800 !important;
        letter-spacing: 0 !important;
        color: currentColor !important;
    }

    body.lp-polished .mobile-bottom-nav-item.active,
    body.lp-polished .mobile-bottom-nav-item[aria-current="page"],
    body.lp-polished .bnav-fab-btn.active,
    body.lp-polished .bnav-fab-btn[aria-current="page"] {
        color: var(--lp-text) !important;
        background: rgba(56, 189, 248, 0.1) !important;
    }
}

/* Tighten the end-of-page handoff from the Asimov quote into the footer. */
body.lp-polished .life-skills-row .advanced-quote {
    margin-bottom: 8px !important;
    padding-bottom: 0 !important;
}

body.lp-polished .life-skills-row {
    margin-bottom: 8px !important;
    padding-bottom: 0 !important;
}

body.lp-polished #homeContent {
    padding-bottom: 6px !important;
}

body.lp-polished .feedback-nudge-tooltip {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
}

body.lp-polished .lp-footer {
    margin-top: 0 !important;
    padding-top: 24px !important;
}

@media (max-width: 768px) {
    body.lp-polished .life-skills-row .advanced-quote {
        margin-bottom: 6px !important;
    }

    body.lp-polished .lp-footer {
        padding-top: 18px !important;
    }
}

@media (min-width: 769px) {
    body.lp-polished .mobile-only,
    body.lp-polished .mobile-only-creator {
        display: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.lp-polished *,
    body.lp-polished *::before,
    body.lp-polished *::after {
        animation: none !important;
        transition-duration: 0.01ms !important;
    }
}

/* Editorial type normalization */
body.lp-polished .lp-editorial-row .lp-editorial-badge {
    min-height: 24px !important;
    margin-bottom: 8px !important;
    padding: 0 9px !important;
    font-size: 0.68rem !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .lp-editorial-row .curated-row-title h3,
body.lp-polished .lp-editorial-row .recommended-header .curated-row-title h3,
body.lp-polished .lp-editorial-row .section-title,
body.lp-polished .lp-editorial-row .carousel-title {
    font-size: 1.55rem !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .lp-editorial-row .curated-row-title h3 i {
    width: 32px !important;
    height: 32px !important;
    font-size: 0.9rem !important;
}

body.lp-polished .lp-editorial-row .curated-row-subtitle,
body.lp-polished .lp-editorial-row .recommended-subtitle,
body.lp-polished .lp-editorial-row .carousel-subtitle {
    font-size: 0.88rem !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .lp-editorial-row .curated-row-viewall {
    font-size: 0.76rem !important;
    letter-spacing: 0 !important;
}

body.lp-polished .lp-editorial-row .curated-game-title,
body.lp-polished .lp-editorial-row .game-title,
body.lp-polished .lp-editorial-row .game-title-compact,
body.lp-polished .lp-editorial-row .compact-game-title,
body.lp-polished .lp-editorial-row .carousel-game-title,
body.lp-polished .lp-editorial-row .carousel-card-title,
body.lp-polished .lp-editorial-row .mobile-game-name,
body.lp-polished .lp-editorial-row .game-card-title {
    font-size: 0.92rem !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
}

@media (max-width: 768px) {
    body.lp-polished .lp-editorial-row .lp-editorial-badge {
        min-height: 21px !important;
        font-size: 0.58rem !important;
    }

    body.lp-polished .lp-editorial-row .curated-row-title h3,
    body.lp-polished .lp-editorial-row .recommended-header .curated-row-title h3,
    body.lp-polished .lp-editorial-row .section-title,
    body.lp-polished .lp-editorial-row .carousel-title {
        font-size: 1.08rem !important;
        line-height: 1.18 !important;
    }

    body.lp-polished .lp-editorial-row .curated-row-subtitle,
    body.lp-polished .lp-editorial-row .recommended-subtitle,
    body.lp-polished .lp-editorial-row .carousel-subtitle {
        font-size: 0.72rem !important;
        line-height: 1.35 !important;
    }

    body.lp-polished .lp-editorial-row .curated-game-title,
    body.lp-polished .lp-editorial-row .game-title,
    body.lp-polished .lp-editorial-row .game-title-compact,
    body.lp-polished .lp-editorial-row .compact-game-title,
    body.lp-polished .lp-editorial-row .carousel-game-title,
    body.lp-polished .lp-editorial-row .carousel-card-title,
    body.lp-polished .lp-editorial-row .mobile-game-name,
    body.lp-polished .lp-editorial-row .game-card-title {
        font-size: 0.82rem !important;
        line-height: 1.28 !important;
    }
}

/* Final premium override: this intentionally sits at EOF. */
body.lp-polished .lp-premium-card {
    border-color: rgba(96, 165, 250, 0.46) !important;
    box-shadow: 0 18px 42px rgba(2, 6, 23, 0.34) !important;
}

@media (max-width: 768px) {
    body.lp-polished.lp-mobile-game-first .hero-play-panel.lp-premium-hero-panel {
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto !important;
        gap: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border-radius: 16px !important;
        border: 1px solid rgba(96, 165, 250, 0.38) !important;
        background: linear-gradient(180deg, rgba(15, 23, 42, 0.9), rgba(2, 6, 23, 0.98)) !important;
        box-shadow: 0 20px 48px rgba(2, 6, 23, 0.44) !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card img {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
        border-radius: 0 !important;
        object-fit: cover !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card .hero-play-card-body {
        display: grid !important;
        gap: 5px !important;
        padding: 10px 12px 12px !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card .hero-card-cta {
        width: 100% !important;
        min-height: 38px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
}

/* Final homepage v1 mobile lock. */
@media (max-width: 768px) {
    body.lp-polished .hero-section {
        padding: 68px 12px 8px !important;
        background:
            linear-gradient(180deg, rgba(2, 6, 23, 0.96), rgba(7, 17, 31, 0.98)),
            radial-gradient(520px 280px at 86% 18%, rgba(37, 99, 235, 0.18), transparent 62%) !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-main-cta {
        gap: 8px !important;
    }

    body.lp-polished .hero-title {
        max-width: 100% !important;
        font-size: clamp(1.76rem, 8.2vw, 2.5rem) !important;
        line-height: 1.02 !important;
    }

    body.lp-polished .lp-mobile-hero-proof {
        order: 2 !important;
        display: flex !important;
        gap: 6px !important;
        overflow-x: auto !important;
        padding-bottom: 1px !important;
    }

    body.lp-polished .lp-mobile-hero-proof span {
        flex: 0 0 auto !important;
        min-height: 24px !important;
        display: inline-flex !important;
        align-items: center !important;
        padding: 0 8px !important;
        border-radius: 999px !important;
        background: rgba(15, 23, 42, 0.78) !important;
        border: 1px solid rgba(148, 163, 184, 0.2) !important;
        color: #cbd5e1 !important;
        font-size: 0.66rem !important;
        font-weight: 900 !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-play-panel {
        order: 3 !important;
        margin: 0 !important;
        padding: 8px !important;
        border-radius: 12px !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-play-panel-header,
    body.lp-polished.lp-mobile-game-first .hero-play-copy,
    body.lp-polished.lp-mobile-game-first .hero-description,
    body.lp-polished.lp-mobile-game-first .lp-hero-search,
    body.lp-polished.lp-mobile-game-first .lp-hero-chips {
        display: none !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-buttons {
        order: 4 !important;
        grid-template-columns: 1fr 1fr !important;
        margin: 0 !important;
    }

    body.lp-polished .hero-btn {
        min-height: 40px !important;
        border-radius: 10px !important;
        font-size: 0.76rem !important;
    }

    body.lp-polished .hero-play-card:first-child {
        min-height: 116px !important;
        grid-template-columns: 92px minmax(0, 1fr) 34px !important;
        padding: 8px !important;
        border-radius: 12px !important;
    }

    body.lp-polished .hero-play-card:first-child img {
        width: 92px !important;
        height: 96px !important;
        border-radius: 9px !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-play-card:first-child .hero-play-card-body em {
        -webkit-line-clamp: 1 !important;
        font-size: 0.68rem !important;
    }

    body.lp-polished .hero-play-card:first-child .hero-play-card-body strong {
        font-size: 0.92rem !important;
        line-height: 1.14 !important;
    }

    body.lp-polished .hero-card-cta {
        margin-top: 3px !important;
        padding: 4px 8px !important;
    }

    body.lp-polished .lp-today-challenge {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        margin: 8px auto 10px !important;
        padding: 12px !important;
        border-radius: 14px !important;
    }

    body.lp-polished .lp-today-challenge h2 {
        font-size: 1rem !important;
    }

    body.lp-polished .lp-today-challenge p {
        font-size: 0.72rem !important;
    }

    body.lp-polished .lp-today-challenge a {
        width: 100% !important;
        justify-content: center !important;
    }

    body.lp-polished .lp-card-meta {
        gap: 4px !important;
    }

    body.lp-polished .lp-card-meta span {
        min-height: 20px !important;
        padding: 0 6px !important;
        font-size: 0.56rem !important;
    }

    body.lp-polished .lp-quick-launch {
        width: min(100% - 20px, 1280px) !important;
        grid-template-columns: repeat(4, minmax(76px, 1fr)) !important;
        gap: 7px !important;
        margin: 8px auto 10px !important;
        overflow-x: auto !important;
        padding-bottom: 2px !important;
    }

    body.lp-polished .lp-quick-launch a {
        min-height: 44px !important;
        min-width: 76px !important;
        flex-direction: column !important;
        gap: 3px !important;
        padding: 6px !important;
        border-radius: 10px !important;
        font-size: 0.62rem !important;
    }

    body.lp-polished .lp-quick-launch i {
        font-size: 0.82rem !important;
    }

    body.lp-polished .lp-card-play-pill {
        right: 6px !important;
        bottom: 6px !important;
        min-height: 24px !important;
        padding: 0 7px !important;
        font-size: 0.58rem !important;
    }
}

/* Gaming platform layer. */
body.lp-polished .lp-player-hud,
body.lp-polished .lp-onboarding-chooser,
body.lp-polished .lp-continue-band,
body.lp-polished .lp-mission-band,
body.lp-polished .lp-today-challenge,
body.lp-polished .lp-achievement-band {
    width: min(100% - 32px, 1632px) !important;
    margin: 16px auto !important;
    border-radius: 14px !important;
    border: 1px solid rgba(148, 163, 184, 0.16) !important;
    background: rgba(15, 23, 42, 0.62) !important;
    box-shadow: 0 18px 48px rgba(2, 6, 23, 0.18) !important;
}

body.lp-polished.lp-new-user .lp-player-hud,
body.lp-polished.lp-new-user .lp-continue-band,
body.lp-polished.lp-new-user .lp-mission-band,
body.lp-polished.lp-new-user .lp-achievement-band {
    display: none !important;
}

body.lp-polished.lp-existing-user .lp-onboarding-chooser,
body.lp-polished.lp-existing-user .start-here-section,
body.lp-polished.lp-existing-user .mobile-start-here-section,
body.lp-polished.lp-existing-user .lp-returning-hidden {
    display: none !important;
}

body.lp-polished.lp-new-user .lp-onboarding-chooser,
body.lp-polished.lp-new-user .lp-today-challenge,
body.lp-polished.lp-existing-user .lp-player-hud,
body.lp-polished.lp-existing-user .lp-continue-band,
body.lp-polished.lp-existing-user .lp-mission-band,
body.lp-polished.lp-existing-user .lp-achievement-band {
    display: grid !important;
}

body.lp-polished .lp-player-hud {
    display: grid !important;
    grid-template-columns: minmax(260px, 0.85fr) minmax(180px, 1fr) auto !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 12px 14px !important;
}

body.lp-polished .lp-player-id {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-width: 0 !important;
}

body.lp-polished .lp-level-badge,
body.lp-polished .lp-player-avatar {
    width: 52px !important;
    height: 52px !important;
    display: grid !important;
    place-items: center !important;
    flex: 0 0 52px !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #2563eb, #10b981) !important;
    color: white !important;
    font-size: 0.84rem !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22), 0 12px 26px rgba(2, 6, 23, 0.28) !important;
    overflow: hidden !important;
}

body.lp-polished .lp-player-copy {
    display: grid !important;
    gap: 2px !important;
    min-width: 0 !important;
}

body.lp-polished .lp-player-copy > span,
body.lp-polished .lp-onboarding-chooser > div > span,
body.lp-polished .lp-today-challenge span {
    display: block !important;
    color: #9ee7ff !important;
    font-size: 0.66rem !important;
    font-weight: 1000 !important;
    text-transform: uppercase !important;
}

/* Final HUD lock: keep the level badge centered and out of generic label styles. */
body.lp-polished .lp-player-id > .lp-level-badge {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    min-height: 52px !important;
    display: grid !important;
    place-items: center !important;
    flex: 0 0 52px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 16px !important;
    background: linear-gradient(135deg, #2563eb, #10b981) !important;
    color: #ffffff !important;
    font-family: Inter, sans-serif !important;
    font-size: 0.84rem !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    overflow: hidden !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22), 0 12px 26px rgba(2, 6, 23, 0.28) !important;
}

body.lp-polished .lp-player-copy > strong,
body.lp-polished .lp-onboarding-chooser > div > strong {
    color: white !important;
    font-size: 1rem !important;
    line-height: 1.2 !important;
}

body.lp-polished .lp-player-copy > em {
    color: #cbd5e1 !important;
    font-size: 0.72rem !important;
    font-style: normal !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

body.lp-polished .lp-xp-track {
    height: 10px !important;
    overflow: hidden !important;
    border-radius: 999px !important;
    background: rgba(2, 6, 23, 0.72) !important;
}

body.lp-polished .lp-xp-track span {
    display: block !important;
    height: 100% !important;
    border-radius: inherit !important;
    background: linear-gradient(90deg, #34d399, #60a5fa) !important;
}

body.lp-polished .lp-continue-action {
    min-width: 210px !important;
    min-height: 44px !important;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 8px 12px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(96, 165, 250, 0.28) !important;
    background: rgba(2, 6, 23, 0.46) !important;
    color: white !important;
    text-decoration: none !important;
}

body.lp-polished .lp-continue-action span {
    color: #9ee7ff !important;
    font-size: 0.66rem !important;
    font-weight: 1000 !important;
    text-transform: uppercase !important;
}

body.lp-polished .lp-continue-action strong {
    min-width: 0 !important;
    overflow: hidden !important;
    color: white !important;
    font-size: 0.82rem !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body.lp-polished .lp-continue-action i {
    color: #60a5fa !important;
    font-size: 0.9rem !important;
}

body.lp-polished .lp-onboarding-chooser {
    display: grid !important;
    grid-template-columns: minmax(220px, 0.55fr) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 16px !important;
    padding: 16px !important;
}

body.lp-polished .lp-path-options {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

body.lp-polished .lp-path-options button {
    min-height: 70px !important;
    padding: 12px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(148, 163, 184, 0.18) !important;
    background: rgba(2, 6, 23, 0.42) !important;
    color: white !important;
    text-align: left !important;
    cursor: pointer !important;
}

body.lp-polished .lp-path-options button.active,
body.lp-polished .lp-path-options button:hover {
    border-color: rgba(52, 211, 153, 0.42) !important;
    background: rgba(52, 211, 153, 0.12) !important;
}

body.lp-polished .lp-path-options strong,
body.lp-polished .lp-path-options span {
    display: block !important;
}

body.lp-polished .lp-path-options span {
    margin-top: 4px !important;
    color: #94a3b8 !important;
    font-size: 0.72rem !important;
}

body.lp-polished .lp-continue-band,
body.lp-polished .lp-mission-band,
body.lp-polished .lp-achievement-band {
    padding: 18px !important;
}

body.lp-polished .lp-continue-grid,
body.lp-polished .lp-achievement-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin-top: 14px !important;
}

body.lp-polished .lp-continue-tile,
body.lp-polished .lp-achievement,
body.lp-polished .lp-mission-item {
    border-radius: 12px !important;
    border: 1px solid rgba(148, 163, 184, 0.15) !important;
    background: rgba(2, 6, 23, 0.42) !important;
}

body.lp-polished .lp-continue-tile {
    min-height: 114px !important;
    display: grid !important;
    align-content: center !important;
    gap: 7px !important;
    padding: 14px !important;
    color: white !important;
    text-decoration: none !important;
}

body.lp-polished .lp-continue-tile span,
body.lp-polished .lp-continue-tile em {
    color: #93c5fd !important;
    font-size: 0.7rem !important;
    font-style: normal !important;
    font-weight: 900 !important;
}

body.lp-polished .lp-continue-tile strong {
    color: white !important;
    font-size: 1rem !important;
    line-height: 1.2 !important;
}

body.lp-polished .lp-mission-list {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-top: 14px !important;
}

body.lp-polished .lp-mission-item {
    min-height: 112px !important;
    display: grid !important;
    align-content: start !important;
    gap: 8px !important;
    padding: 12px !important;
}

body.lp-polished .lp-mission-item i {
    width: 30px !important;
    height: 30px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 10px !important;
    color: #60a5fa !important;
    background: rgba(96, 165, 250, 0.12) !important;
}

body.lp-polished .lp-mission-item.done i {
    color: #34d399 !important;
    background: rgba(52, 211, 153, 0.12) !important;
}

body.lp-polished .lp-mission-item strong,
body.lp-polished .lp-achievement strong {
    color: white !important;
    font-size: 0.84rem !important;
    line-height: 1.25 !important;
}

body.lp-polished .lp-mission-item span,
body.lp-polished .lp-achievement span {
    color: #94a3b8 !important;
    font-size: 0.7rem !important;
    font-weight: 900 !important;
}

body.lp-polished .lp-today-challenge {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: 20px !important;
    background:
        linear-gradient(135deg, rgba(245, 158, 11, 0.14), rgba(37, 99, 235, 0.12)),
        rgba(15, 23, 42, 0.74) !important;
}

body.lp-polished .lp-today-challenge h2 {
    margin: 0 !important;
    color: white !important;
    font-size: 1.3rem !important;
}

body.lp-polished .lp-today-challenge p {
    margin: 6px 0 0 !important;
    color: #cbd5e1 !important;
    font-size: 0.84rem !important;
}

body.lp-polished .lp-today-challenge a {
    min-height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 14px !important;
    border-radius: 10px !important;
    background: #f59e0b !important;
    color: #111827 !important;
    text-decoration: none !important;
    font-size: 0.78rem !important;
    font-weight: 1000 !important;
}

body.lp-polished .lp-achievement {
    min-height: 112px !important;
    display: grid !important;
    align-content: center !important;
    gap: 8px !important;
    padding: 14px !important;
}

body.lp-polished .lp-achievement i {
    color: #64748b !important;
    font-size: 1.2rem !important;
}

body.lp-polished .lp-achievement.earned i {
    color: #fbbf24 !important;
}

body.lp-polished .lp-quality-signal {
    position: absolute !important;
    top: 10px !important;
    right: 10px !important;
    z-index: 4 !important;
    max-width: calc(100% - 56px) !important;
    padding: 5px 8px !important;
    border-radius: 999px !important;
    background: rgba(2, 6, 23, 0.82) !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    color: white !important;
    font-size: 0.58rem !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .lp-hero-preview-meta {
    display: flex !important;
    gap: 8px !important;
    margin-top: 8px !important;
}

body.lp-polished .lp-hero-preview-meta span {
    padding: 5px 8px !important;
    border-radius: 999px !important;
    background: rgba(96, 165, 250, 0.12) !important;
    border: 1px solid rgba(96, 165, 250, 0.22) !important;
    color: #bfdbfe !important;
    font-size: 0.64rem !important;
    font-weight: 900 !important;
}

body.lp-polished .lp-hero-progress {
    height: 8px !important;
    margin-top: 10px !important;
    overflow: hidden !important;
    border-radius: 999px !important;
    background: rgba(2, 6, 23, 0.7) !important;
}

body.lp-polished .lp-hero-progress span {
    display: block !important;
    width: 68% !important;
    height: 100% !important;
    border-radius: inherit !important;
    background: linear-gradient(90deg, #34d399, #60a5fa) !important;
}

body.lp-polished.lp-hero-new .hero-title,
body.lp-polished.lp-hero-returning .hero-title {
    max-width: 720px !important;
}

body.lp-polished.lp-hero-new .hero-btn-primary,
body.lp-polished.lp-hero-returning .hero-btn-primary {
    background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
    border-color: rgba(147, 197, 253, 0.34) !important;
}

body.lp-polished.lp-hero-returning .hero-btn-primary {
    background: linear-gradient(135deg, #10b981, #2563eb) !important;
}

body.lp-polished.lp-hero-returning .hero-play-panel {
    border-color: rgba(52, 211, 153, 0.22) !important;
    background:
        linear-gradient(135deg, rgba(16, 185, 129, 0.11), rgba(37, 99, 235, 0.1)),
        rgba(2, 6, 23, 0.64) !important;
}

body.lp-polished .hero-play-panel-header strong {
    color: white !important;
    font-size: 0.95rem !important;
    line-height: 1.2 !important;
}

body.lp-polished .lp-xp-toast {
    position: fixed !important;
    right: 22px !important;
    bottom: 22px !important;
    z-index: 99999 !important;
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 16px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(52, 211, 153, 0.34) !important;
    background: rgba(2, 6, 23, 0.92) !important;
    color: #bbf7d0 !important;
    font-size: 0.82rem !important;
    font-weight: 1000 !important;
    box-shadow: 0 18px 48px rgba(2, 6, 23, 0.36) !important;
    opacity: 0 !important;
    transform: translateY(12px) scale(0.98) !important;
    pointer-events: none !important;
    transition: opacity 180ms ease, transform 180ms ease !important;
}

body.lp-polished .lp-xp-toast.show {
    opacity: 1 !important;
    transform: translateY(0) scale(1) !important;
}

body.lp-modal-open {
    overflow: hidden !important;
}

body.lp-polished .lp-save-game {
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    z-index: 5 !important;
    width: 34px !important;
    height: 34px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    background: rgba(2, 6, 23, 0.78) !important;
    color: white !important;
    cursor: pointer !important;
    box-shadow: 0 10px 22px rgba(2, 6, 23, 0.22) !important;
}

body.lp-polished .lp-save-game:hover,
body.lp-polished .lp-save-game.saved {
    background: rgba(245, 158, 11, 0.94) !important;
    color: #111827 !important;
}

body.lp-polished .lp-card-saved {
    border-color: rgba(245, 158, 11, 0.34) !important;
}

body.lp-polished .lp-card-played {
    border-color: rgba(52, 211, 153, 0.32) !important;
}

body.lp-polished .lp-card-state {
    position: absolute !important;
    right: 10px !important;
    bottom: 10px !important;
    z-index: 5 !important;
    padding: 5px 8px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    background: rgba(2, 6, 23, 0.82) !important;
    color: #dbeafe !important;
    font-size: 0.58rem !important;
    line-height: 1 !important;
    font-weight: 1000 !important;
}

body.lp-polished .lp-card-played .lp-card-state {
    color: #bbf7d0 !important;
    border-color: rgba(52, 211, 153, 0.26) !important;
}

body.lp-polished .lp-card-saved .lp-card-state {
    color: #fef3c7 !important;
    border-color: rgba(245, 158, 11, 0.28) !important;
}

body.lp-polished .lp-saved-shelf,
body.lp-polished .lp-because-played-shelf,
body.lp-polished .lp-save-prompt {
    width: min(100% - 32px, 1632px) !important;
    margin: 16px auto !important;
    padding: 18px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(148, 163, 184, 0.16) !important;
    background: rgba(15, 23, 42, 0.62) !important;
    box-shadow: 0 18px 48px rgba(2, 6, 23, 0.18) !important;
}

body.lp-polished .lp-mini-game-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin-top: 14px !important;
}

body.lp-polished .lp-mini-game-tile {
    min-height: 142px !important;
    display: grid !important;
    grid-template-columns: 78px minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    column-gap: 12px !important;
    align-content: center !important;
    padding: 12px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(148, 163, 184, 0.15) !important;
    background: rgba(2, 6, 23, 0.42) !important;
    color: white !important;
    text-decoration: none !important;
}

body.lp-polished .lp-mini-game-tile img {
    grid-row: 1 / span 3 !important;
    width: 78px !important;
    height: 78px !important;
    object-fit: cover !important;
    border-radius: 10px !important;
}

body.lp-polished .lp-mini-game-tile span {
    color: #93c5fd !important;
    font-size: 0.66rem !important;
    font-weight: 1000 !important;
    text-transform: uppercase !important;
}

body.lp-polished .lp-mini-game-tile strong {
    min-width: 0 !important;
    overflow: hidden !important;
    color: white !important;
    font-size: 0.88rem !important;
    line-height: 1.22 !important;
    font-weight: 1000 !important;
}

body.lp-polished .lp-mini-game-tile em {
    color: #94a3b8 !important;
    font-size: 0.72rem !important;
    font-style: normal !important;
    font-weight: 800 !important;
}

body.lp-polished .lp-save-prompt {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

body.lp-polished .lp-save-prompt i {
    width: 42px !important;
    height: 42px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 12px !important;
    background: rgba(245, 158, 11, 0.12) !important;
    color: #fbbf24 !important;
}

body.lp-polished .lp-save-prompt strong,
body.lp-polished .lp-save-prompt span {
    display: block !important;
}

body.lp-polished .lp-save-prompt strong {
    color: white !important;
    font-size: 0.95rem !important;
}

body.lp-polished .lp-save-prompt span {
    margin-top: 3px !important;
    color: #94a3b8 !important;
    font-size: 0.78rem !important;
}

body.lp-polished .lp-preplay-modal[hidden] {
    display: none !important;
}

body.lp-polished .lp-preplay-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 99990 !important;
    display: grid !important;
    place-items: center !important;
    padding: 24px !important;
}

body.lp-polished .lp-preplay-backdrop {
    position: absolute !important;
    inset: 0 !important;
    background: rgba(2, 6, 23, 0.76) !important;
    backdrop-filter: blur(10px) !important;
}

body.lp-polished .lp-preplay-panel {
    position: relative !important;
    z-index: 1 !important;
    width: min(920px, 100%) !important;
    display: grid !important;
    grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.1fr) !important;
    overflow: hidden !important;
    border-radius: 18px !important;
    border: 1px solid rgba(148, 163, 184, 0.22) !important;
    background:
        linear-gradient(135deg, rgba(37, 99, 235, 0.12), rgba(16, 185, 129, 0.08)),
        #07101f !important;
    box-shadow: 0 32px 90px rgba(0, 0, 0, 0.48) !important;
}

body.lp-polished .lp-preplay-close {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    z-index: 2 !important;
    width: 38px !important;
    height: 38px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    background: rgba(2, 6, 23, 0.72) !important;
    color: white !important;
    cursor: pointer !important;
}

body.lp-polished .lp-preplay-cover {
    width: 100% !important;
    height: 100% !important;
    min-height: 430px !important;
    object-fit: cover !important;
    background: rgba(15, 23, 42, 0.9) !important;
}

body.lp-polished .lp-preplay-content {
    display: grid !important;
    align-content: center !important;
    gap: 16px !important;
    padding: 34px !important;
}

body.lp-polished .lp-preplay-kicker {
    width: fit-content !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(96, 165, 250, 0.28) !important;
    background: rgba(96, 165, 250, 0.12) !important;
    color: #bfdbfe !important;
    font-size: 0.68rem !important;
    font-weight: 1000 !important;
    text-transform: uppercase !important;
}

body.lp-polished .lp-preplay-content h2 {
    margin: 0 !important;
    color: white !important;
    font-size: clamp(1.65rem, 3vw, 2.5rem) !important;
    line-height: 1.05 !important;
}

body.lp-polished .lp-preplay-summary {
    margin: 0 !important;
    color: #cbd5e1 !important;
    font-size: 0.95rem !important;
    line-height: 1.55 !important;
}

body.lp-polished .lp-preplay-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

body.lp-polished .lp-preplay-meta span {
    min-height: 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(148, 163, 184, 0.16) !important;
    background: rgba(2, 6, 23, 0.48) !important;
    color: #dbeafe !important;
    font-size: 0.72rem !important;
    font-weight: 900 !important;
}

body.lp-polished .lp-preplay-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
}

body.lp-polished .lp-preplay-actions a,
body.lp-polished .lp-preplay-actions button,
body.lp-polished .lp-preplay-create {
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 0 14px !important;
    border-radius: 10px !important;
    border: 1px solid rgba(148, 163, 184, 0.18) !important;
    background: rgba(15, 23, 42, 0.72) !important;
    color: #dbeafe !important;
    text-decoration: none !important;
    font-size: 0.8rem !important;
    font-weight: 1000 !important;
    cursor: pointer !important;
}

body.lp-polished .lp-preplay-play {
    background: #2563eb !important;
    color: white !important;
    border-color: rgba(147, 197, 253, 0.34) !important;
}

body.lp-polished .lp-preplay-save {
    color: #fef3c7 !important;
}

body.lp-polished .lp-preplay-create {
    width: fit-content !important;
    color: #bbf7d0 !important;
    border-color: rgba(52, 211, 153, 0.22) !important;
    background: rgba(52, 211, 153, 0.1) !important;
}

@media (max-width: 768px) {
    body.lp-polished .lp-xp-toast {
        right: 12px !important;
        bottom: 78px !important;
        max-width: calc(100vw - 24px) !important;
        min-height: 40px !important;
        font-size: 0.74rem !important;
    }

    body.lp-polished .lp-save-game {
        width: 30px !important;
        height: 30px !important;
    }

    body.lp-polished .lp-saved-shelf,
    body.lp-polished .lp-because-played-shelf,
    body.lp-polished .lp-save-prompt {
        width: min(100% - 20px, 1632px) !important;
        margin: 10px auto !important;
        padding: 12px !important;
        border-radius: 12px !important;
    }

    body.lp-polished .lp-mini-game-grid {
        grid-template-columns: 1fr !important;
        gap: 9px !important;
    }

    body.lp-polished .lp-mini-game-tile {
        min-height: 104px !important;
        grid-template-columns: 64px minmax(0, 1fr) !important;
    }

    body.lp-polished .lp-mini-game-tile img {
        width: 64px !important;
        height: 64px !important;
    }

    body.lp-polished .lp-preplay-modal {
        padding: 12px !important;
        place-items: end center !important;
    }

    body.lp-polished .lp-preplay-panel {
        width: 100% !important;
        max-height: calc(100vh - 24px) !important;
        grid-template-columns: 1fr !important;
        overflow: auto !important;
        border-radius: 16px !important;
    }

    body.lp-polished .lp-preplay-cover {
        min-height: 0 !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
    }

    body.lp-polished .lp-preplay-content {
        gap: 12px !important;
        padding: 18px !important;
    }

    body.lp-polished .lp-preplay-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    body.lp-polished .lp-preplay-actions a,
    body.lp-polished .lp-preplay-actions button,
    body.lp-polished .lp-preplay-create {
        width: 100% !important;
    }
}

@media (max-width: 980px) {
    body.lp-polished .lp-player-hud,
    body.lp-polished .lp-onboarding-chooser,
    body.lp-polished .lp-today-challenge {
        grid-template-columns: 1fr !important;
        display: grid !important;
    }

    body.lp-polished .lp-mission-list {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 768px) {
    body.lp-polished .lp-player-hud,
    body.lp-polished .lp-onboarding-chooser,
    body.lp-polished .lp-continue-band,
    body.lp-polished .lp-mission-band,
    body.lp-polished .lp-today-challenge,
    body.lp-polished .lp-achievement-band {
        width: min(100% - 20px, 1632px) !important;
        margin: 10px auto !important;
        padding: 12px !important;
        border-radius: 12px !important;
    }

    body.lp-polished .lp-player-stats,
    body.lp-polished .lp-continue-grid,
    body.lp-polished .lp-achievement-grid {
        grid-template-columns: 1fr !important;
        display: grid !important;
    }

    body.lp-polished .lp-onboarding-chooser {
        grid-template-columns: minmax(120px, 0.45fr) minmax(0, 1fr) !important;
        align-items: stretch !important;
        gap: 10px !important;
    }

    body.lp-polished .lp-path-options {
        display: flex !important;
        gap: 8px !important;
        overflow-x: auto !important;
        padding-bottom: 2px !important;
        scroll-snap-type: x proximity !important;
    }

    body.lp-polished .lp-path-options button {
        flex: 0 0 118px !important;
        min-height: 76px !important;
        padding: 10px !important;
        scroll-snap-align: start !important;
    }

    body.lp-polished .lp-mission-list {
        grid-template-columns: 1fr !important;
    }

    body.lp-polished .lp-mission-item,
    body.lp-polished .lp-achievement,
    body.lp-polished .lp-continue-tile {
        min-height: 86px !important;
    }

    body.lp-polished .lp-achievement-band {
        display: none !important;
    }

    body.lp-polished .lp-player-hud {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 8px !important;
        padding: 8px 10px !important;
        border-radius: 999px !important;
    }

    body.lp-polished .lp-player-id {
        width: 100% !important;
        min-width: 0 !important;
        gap: 8px !important;
    }

    body.lp-polished .lp-player-id > .lp-level-badge {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
        flex-basis: 42px !important;
        border-radius: 999px !important;
        font-size: 0.68rem !important;
    }

    body.lp-polished .lp-player-copy > span {
        display: none !important;
    }

    body.lp-polished .lp-player-copy > strong {
        overflow: hidden !important;
        font-size: 0.82rem !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.lp-polished .lp-player-copy > em {
        overflow: hidden !important;
        font-size: 0.66rem !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    body.lp-polished .lp-xp-track {
        display: none !important;
    }

    body.lp-polished .lp-continue-action {
        min-width: 0 !important;
        width: 36px !important;
        height: 36px !important;
        min-height: 36px !important;
        display: grid !important;
        place-items: center !important;
        padding: 0 !important;
        border-radius: 999px !important;
    }

    body.lp-polished .lp-continue-action span,
    body.lp-polished .lp-continue-action strong {
        display: none !important;
    }

    body.lp-polished .lp-continue-action i {
        font-size: 0.82rem !important;
    }
}

/* Final card-system lock: keep this after editorial typography. */
body.lp-polished .lp-card-normalized {
    min-width: 214px !important;
    width: 214px !important;
    min-height: 286px !important;
    border-radius: 12px !important;
}

body.lp-polished .lp-card-normalized .curated-game-image,
body.lp-polished .lp-card-normalized .game-image,
body.lp-polished .lp-card-normalized .start-here-image,
body.lp-polished .lp-card-normalized .mobile-start-here-image,
body.lp-polished .lp-card-normalized .carousel-card-image,
body.lp-polished .lp-card-normalized .continue-image,
body.lp-polished .lp-card-normalized .game-card-image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 10 !important;
}

body.lp-polished .lp-card-normalized .curated-game-title,
body.lp-polished .lp-card-normalized .game-title,
body.lp-polished .lp-card-normalized .game-title-compact,
body.lp-polished .lp-card-normalized .compact-game-title,
body.lp-polished .lp-card-normalized .carousel-game-title,
body.lp-polished .lp-card-normalized .carousel-card-title,
body.lp-polished .lp-card-normalized .start-here-title,
body.lp-polished .lp-card-normalized .mobile-start-here-title,
body.lp-polished .lp-card-normalized .continue-name,
body.lp-polished .lp-card-normalized .game-card-title {
    min-height: 2.42em !important;
    font-size: 0.92rem !important;
    line-height: 1.21 !important;
}

body.lp-polished .lp-card-meta span,
body.lp-polished .lp-card-normalized .curated-game-difficulty,
body.lp-polished .lp-card-normalized .start-here-difficulty,
body.lp-polished .lp-card-normalized .start-here-time,
body.lp-polished .lp-card-normalized .mobile-start-here-rating,
body.lp-polished .lp-card-normalized .mobile-start-here-difficulty,
body.lp-polished .lp-card-normalized .difficulty-indicator,
body.lp-polished .lp-card-normalized .stat,
body.lp-polished .lp-card-normalized .carousel-card-rating {
    min-height: 24px !important;
    font-size: 0.64rem !important;
}

@media (max-width: 768px) {
    body.lp-polished .lp-card-normalized {
        min-width: 152px !important;
        width: 152px !important;
        min-height: 224px !important;
    }

    body.lp-polished .start-here-track .lp-card-normalized,
    body.lp-polished .mobile-start-here-track .lp-card-normalized {
        min-width: 0 !important;
        width: auto !important;
    }

    body.lp-polished .lp-card-normalized .curated-game-title,
    body.lp-polished .lp-card-normalized .game-title,
    body.lp-polished .lp-card-normalized .game-title-compact,
    body.lp-polished .lp-card-normalized .compact-game-title,
    body.lp-polished .lp-card-normalized .carousel-game-title,
    body.lp-polished .lp-card-normalized .carousel-card-title,
    body.lp-polished .lp-card-normalized .start-here-title,
    body.lp-polished .lp-card-normalized .mobile-start-here-title,
    body.lp-polished .lp-card-normalized .continue-name,
    body.lp-polished .lp-card-normalized .game-card-title {
        min-height: 2.36em !important;
        font-size: 0.78rem !important;
        line-height: 1.18 !important;
    }

    body.lp-polished .lp-card-meta span,
    body.lp-polished .lp-card-normalized .curated-game-difficulty,
    body.lp-polished .lp-card-normalized .start-here-difficulty,
    body.lp-polished .lp-card-normalized .start-here-time,
    body.lp-polished .lp-card-normalized .mobile-start-here-rating,
    body.lp-polished .lp-card-normalized .mobile-start-here-difficulty,
    body.lp-polished .lp-card-normalized .difficulty-indicator,
    body.lp-polished .lp-card-normalized .stat,
    body.lp-polished .lp-card-normalized .carousel-card-rating {
        min-height: 21px !important;
        font-size: 0.56rem !important;
    }
}

/* Final card-system lock: keep this at the very end of the file. */
body.lp-polished .lp-card-normalized {
    min-width: 214px !important;
    width: 214px !important;
    min-height: 286px !important;
    border-radius: 12px !important;
}

body.lp-polished .lp-card-normalized .curated-game-image,
body.lp-polished .lp-card-normalized .game-image,
body.lp-polished .lp-card-normalized .start-here-image,
body.lp-polished .lp-card-normalized .mobile-start-here-image,
body.lp-polished .lp-card-normalized .carousel-card-image,
body.lp-polished .lp-card-normalized .continue-image,
body.lp-polished .lp-card-normalized .game-card-image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 10 !important;
}

body.lp-polished .lp-card-normalized .curated-game-title,
body.lp-polished .lp-card-normalized .game-title,
body.lp-polished .lp-card-normalized .game-title-compact,
body.lp-polished .lp-card-normalized .compact-game-title,
body.lp-polished .lp-card-normalized .carousel-game-title,
body.lp-polished .lp-card-normalized .carousel-card-title,
body.lp-polished .lp-card-normalized .start-here-title,
body.lp-polished .lp-card-normalized .mobile-start-here-title,
body.lp-polished .lp-card-normalized .continue-name,
body.lp-polished .lp-card-normalized .game-card-title {
    min-height: 2.42em !important;
    font-size: 0.92rem !important;
    line-height: 1.21 !important;
}

body.lp-polished .lp-card-meta span,
body.lp-polished .lp-card-normalized .curated-game-difficulty,
body.lp-polished .lp-card-normalized .start-here-difficulty,
body.lp-polished .lp-card-normalized .start-here-time,
body.lp-polished .lp-card-normalized .mobile-start-here-rating,
body.lp-polished .lp-card-normalized .mobile-start-here-difficulty,
body.lp-polished .lp-card-normalized .difficulty-indicator,
body.lp-polished .lp-card-normalized .stat,
body.lp-polished .lp-card-normalized .carousel-card-rating {
    min-height: 24px !important;
    font-size: 0.64rem !important;
}

@media (max-width: 768px) {
    body.lp-polished .lp-card-normalized {
        min-width: 152px !important;
        width: 152px !important;
        min-height: 224px !important;
    }

    body.lp-polished .start-here-track .lp-card-normalized,
    body.lp-polished .mobile-start-here-track .lp-card-normalized {
        min-width: 0 !important;
        width: auto !important;
    }

    body.lp-polished .lp-card-normalized .curated-game-title,
    body.lp-polished .lp-card-normalized .game-title,
    body.lp-polished .lp-card-normalized .game-title-compact,
    body.lp-polished .lp-card-normalized .compact-game-title,
    body.lp-polished .lp-card-normalized .carousel-game-title,
    body.lp-polished .lp-card-normalized .carousel-card-title,
    body.lp-polished .lp-card-normalized .start-here-title,
    body.lp-polished .lp-card-normalized .mobile-start-here-title,
    body.lp-polished .lp-card-normalized .continue-name,
    body.lp-polished .lp-card-normalized .game-card-title {
        min-height: 2.36em !important;
        font-size: 0.78rem !important;
        line-height: 1.18 !important;
    }

    body.lp-polished .lp-card-meta span,
    body.lp-polished .lp-card-normalized .curated-game-difficulty,
    body.lp-polished .lp-card-normalized .start-here-difficulty,
    body.lp-polished .lp-card-normalized .start-here-time,
    body.lp-polished .lp-card-normalized .mobile-start-here-rating,
    body.lp-polished .lp-card-normalized .mobile-start-here-difficulty,
    body.lp-polished .lp-card-normalized .difficulty-indicator,
    body.lp-polished .lp-card-normalized .stat,
    body.lp-polished .lp-card-normalized .carousel-card-rating {
        min-height: 21px !important;
        font-size: 0.56rem !important;
    }
}

/* Final onboarding/spotlight overrides: these intentionally sit last. */
body.lp-polished .lp-start-hidden {
    display: none !important;
}

body.lp-polished .start-here-track,
body.lp-polished .mobile-start-here-track {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    overflow: visible !important;
}

body.lp-polished .start-here-card,
body.lp-polished .mobile-start-here-card {
    position: relative !important;
    min-width: 0 !important;
    width: auto !important;
}

body.lp-polished .lp-start-step {
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    z-index: 3 !important;
    width: 30px !important;
    height: 30px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    border: 1px solid rgba(255, 255, 255, 0.26) !important;
    background: rgba(15, 23, 42, 0.84) !important;
    color: white !important;
    font-size: 0.78rem !important;
    font-weight: 1000 !important;
}

body.lp-polished .lp-outcome-chip {
    width: fit-content !important;
    max-width: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    margin-top: 9px !important;
    padding: 5px 8px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(96, 165, 250, 0.22) !important;
    background: rgba(37, 99, 235, 0.12) !important;
    color: #bfdbfe !important;
    font-size: 0.66rem !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
}

body.lp-polished .lp-creator-spotlight {
    display: grid !important;
    grid-template-columns: minmax(0, 1.4fr) minmax(220px, 0.8fr) auto !important;
    align-items: center !important;
    gap: 18px !important;
}

body.lp-polished .lp-creator-profile {
    display: grid !important;
    grid-template-columns: 74px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 16px !important;
}

body.lp-polished .lp-creator-profile img {
    width: 74px !important;
    height: 74px !important;
    object-fit: cover !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
}

body.lp-polished .lp-creator-featured-game {
    min-height: 116px !important;
    padding: 14px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(148, 163, 184, 0.16) !important;
    background: rgba(2, 6, 23, 0.4) !important;
}

body.lp-polished .lp-skeleton-card {
    min-width: 190px !important;
    min-height: 210px !important;
    padding: 12px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(148, 163, 184, 0.12) !important;
    background: rgba(15, 23, 42, 0.46) !important;
}

@media (max-width: 980px) {
    body.lp-polished .start-here-track,
    body.lp-polished .mobile-start-here-track {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.lp-polished .lp-creator-spotlight {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 768px) {
    body.lp-polished .lp-editorial-physics,
    body.lp-polished .lp-why-band {
        display: none !important;
    }

    body.lp-polished .start-here-track,
    body.lp-polished .mobile-start-here-track {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    body.lp-polished .lp-creator-profile {
        grid-template-columns: 54px minmax(0, 1fr) !important;
    }

    body.lp-polished .lp-creator-profile img {
        width: 54px !important;
        height: 54px !important;
        border-radius: 12px !important;
    }
}

/* Unified homepage game card system. */
body.lp-polished .lp-card-normalized {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    min-width: 214px !important;
    width: 214px !important;
    min-height: 286px !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    border: 1px solid rgba(148, 163, 184, 0.16) !important;
    background:
        linear-gradient(180deg, rgba(15, 23, 42, 0.9), rgba(2, 6, 23, 0.78)) !important;
    box-shadow: 0 16px 36px rgba(2, 6, 23, 0.2) !important;
    transform: translateY(0) !important;
    transition:
        transform 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease,
        background 180ms ease !important;
}

body.lp-polished .lp-card-normalized:hover,
body.lp-polished .lp-card-normalized:focus-visible {
    transform: translateY(-5px) !important;
    border-color: rgba(96, 165, 250, 0.38) !important;
    box-shadow: 0 22px 48px rgba(2, 6, 23, 0.34) !important;
    outline: none !important;
}

body.lp-polished .lp-card-normalized:active {
    transform: translateY(-2px) !important;
}

body.lp-polished .lp-card-normalized .curated-game-image,
body.lp-polished .lp-card-normalized .game-image,
body.lp-polished .lp-card-normalized .start-here-image,
body.lp-polished .lp-card-normalized .mobile-start-here-image,
body.lp-polished .lp-card-normalized .carousel-card-image,
body.lp-polished .lp-card-normalized .continue-image,
body.lp-polished .lp-card-normalized .game-card-image {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 10 !important;
    flex: 0 0 auto !important;
    overflow: hidden !important;
    border-radius: 12px 12px 0 0 !important;
    background: rgba(15, 23, 42, 0.9) !important;
}

body.lp-polished .lp-card-normalized .curated-game-image img,
body.lp-polished .lp-card-normalized .game-image img,
body.lp-polished .lp-card-normalized .start-here-image img,
body.lp-polished .lp-card-normalized .mobile-start-here-image img,
body.lp-polished .lp-card-normalized .carousel-card-image img,
body.lp-polished .lp-card-normalized .continue-image img,
body.lp-polished .lp-card-normalized .game-card-image img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    border-radius: 0 !important;
    transform: scale(1) !important;
    transition: transform 260ms ease, filter 260ms ease !important;
}

body.lp-polished .lp-card-normalized:hover .curated-game-image img,
body.lp-polished .lp-card-normalized:hover .game-image img,
body.lp-polished .lp-card-normalized:hover .start-here-image img,
body.lp-polished .lp-card-normalized:hover .mobile-start-here-image img,
body.lp-polished .lp-card-normalized:hover .carousel-card-image img,
body.lp-polished .lp-card-normalized:hover .continue-image img,
body.lp-polished .lp-card-normalized:hover .game-card-image img {
    transform: scale(1.045) !important;
    filter: saturate(1.08) contrast(1.03) !important;
}

body.lp-polished .lp-card-normalized .curated-game-info,
body.lp-polished .lp-card-normalized .start-here-content,
body.lp-polished .lp-card-normalized .mobile-start-here-content,
body.lp-polished .lp-card-normalized .carousel-card-content,
body.lp-polished .lp-card-normalized .game-info,
body.lp-polished .lp-card-normalized .card-content,
body.lp-polished .lp-card-normalized .continue-info {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
    min-height: 0 !important;
    padding: 12px !important;
}

body.lp-polished .lp-card-normalized .curated-game-title,
body.lp-polished .lp-card-normalized .game-title,
body.lp-polished .lp-card-normalized .game-title-compact,
body.lp-polished .lp-card-normalized .compact-game-title,
body.lp-polished .lp-card-normalized .carousel-game-title,
body.lp-polished .lp-card-normalized .carousel-card-title,
body.lp-polished .lp-card-normalized .start-here-title,
body.lp-polished .lp-card-normalized .mobile-start-here-title,
body.lp-polished .lp-card-normalized .continue-name,
body.lp-polished .lp-card-normalized .game-card-title {
    display: -webkit-box !important;
    min-height: 2.42em !important;
    margin: 0 !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    color: #f8fafc !important;
    font-size: 0.92rem !important;
    line-height: 1.21 !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .lp-card-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin-top: auto !important;
}

body.lp-polished .lp-card-meta span,
body.lp-polished .lp-card-normalized .curated-game-difficulty,
body.lp-polished .lp-card-normalized .start-here-difficulty,
body.lp-polished .lp-card-normalized .start-here-time,
body.lp-polished .lp-card-normalized .mobile-start-here-rating,
body.lp-polished .lp-card-normalized .mobile-start-here-difficulty,
body.lp-polished .lp-card-normalized .difficulty-indicator,
body.lp-polished .lp-card-normalized .stat,
body.lp-polished .lp-card-normalized .carousel-card-rating {
    min-height: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 0 8px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(148, 163, 184, 0.18) !important;
    background: rgba(15, 23, 42, 0.64) !important;
    color: #cbd5e1 !important;
    font-size: 0.64rem !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .lp-card-meta i,
body.lp-polished .lp-card-normalized .curated-game-difficulty i,
body.lp-polished .lp-card-normalized .start-here-difficulty i,
body.lp-polished .lp-card-normalized .start-here-time i,
body.lp-polished .lp-card-normalized .difficulty-indicator i,
body.lp-polished .lp-card-normalized .stat i {
    color: #60a5fa !important;
    font-size: 0.62rem !important;
}

body.lp-polished .lp-card-normalized .lp-outcome-chip {
    margin-top: 0 !important;
    background: rgba(52, 211, 153, 0.12) !important;
    border-color: rgba(52, 211, 153, 0.24) !important;
    color: #bbf7d0 !important;
}

body.lp-polished .lp-card-normalized .curated-game-meta,
body.lp-polished .lp-card-normalized .start-here-meta,
body.lp-polished .lp-card-normalized .mobile-start-here-meta,
body.lp-polished .lp-card-normalized .game-meta,
body.lp-polished .lp-card-normalized .game-stats,
body.lp-polished .lp-card-normalized .curated-game-stats {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin: 0 !important;
}

body.lp-polished .lp-card-normalized .curated-game-play-btn,
body.lp-polished .lp-card-normalized .start-here-play-btn,
body.lp-polished .lp-card-normalized .mobile-start-here-play-btn,
body.lp-polished .lp-card-normalized .carousel-card-play,
body.lp-polished .lp-card-normalized .game-play-btn {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    background: rgba(16, 185, 129, 0.9) !important;
    color: white !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    box-shadow: 0 14px 28px rgba(16, 185, 129, 0.22) !important;
}

body.lp-polished .lp-editorial-row .curated-games-track,
body.lp-polished .lp-editorial-row .carousel-track,
body.lp-polished .start-here-track,
body.lp-polished .mobile-start-here-track {
    align-items: stretch !important;
}

@media (max-width: 768px) {
    body.lp-polished .lp-card-normalized {
        min-width: 152px !important;
        width: 152px !important;
        min-height: 224px !important;
        border-radius: 10px !important;
    }

    body.lp-polished .start-here-track .lp-card-normalized,
    body.lp-polished .mobile-start-here-track .lp-card-normalized {
        width: auto !important;
        min-width: 0 !important;
    }

    body.lp-polished .lp-card-normalized .curated-game-info,
    body.lp-polished .lp-card-normalized .start-here-content,
    body.lp-polished .lp-card-normalized .mobile-start-here-content,
    body.lp-polished .lp-card-normalized .carousel-card-content,
    body.lp-polished .lp-card-normalized .game-info,
    body.lp-polished .lp-card-normalized .card-content,
    body.lp-polished .lp-card-normalized .continue-info {
        gap: 6px !important;
        padding: 9px !important;
    }

    body.lp-polished .lp-card-normalized .curated-game-title,
    body.lp-polished .lp-card-normalized .game-title,
    body.lp-polished .lp-card-normalized .game-title-compact,
    body.lp-polished .lp-card-normalized .compact-game-title,
    body.lp-polished .lp-card-normalized .carousel-game-title,
    body.lp-polished .lp-card-normalized .carousel-card-title,
    body.lp-polished .lp-card-normalized .start-here-title,
    body.lp-polished .lp-card-normalized .mobile-start-here-title,
    body.lp-polished .lp-card-normalized .continue-name,
    body.lp-polished .lp-card-normalized .game-card-title {
        min-height: 2.36em !important;
        font-size: 0.78rem !important;
        line-height: 1.18 !important;
    }

    body.lp-polished .lp-card-meta span,
    body.lp-polished .lp-card-normalized .curated-game-difficulty,
    body.lp-polished .lp-card-normalized .start-here-difficulty,
    body.lp-polished .lp-card-normalized .start-here-time,
    body.lp-polished .lp-card-normalized .mobile-start-here-rating,
    body.lp-polished .lp-card-normalized .mobile-start-here-difficulty,
    body.lp-polished .lp-card-normalized .difficulty-indicator,
    body.lp-polished .lp-card-normalized .stat,
    body.lp-polished .lp-card-normalized .carousel-card-rating {
        min-height: 21px !important;
        padding: 0 6px !important;
        font-size: 0.56rem !important;
    }

    body.lp-polished .lp-card-normalized .lp-outcome-chip {
        max-width: 100% !important;
        font-size: 0.56rem !important;
    }
}

/* Guided onboarding, outcomes, and mobile focus pass. */
body.lp-polished .lp-start-hidden {
    display: none !important;
}

body.lp-polished .start-here-section {
    max-width: 1632px !important;
}

body.lp-polished .start-here-header,
body.lp-polished .mobile-start-here-header {
    align-items: end !important;
}

body.lp-polished .start-here-header h3,
body.lp-polished .mobile-start-here-header h3 {
    font-size: 1.55rem !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .start-here-subtitle,
body.lp-polished .mobile-start-here-subtitle {
    padding: 7px 12px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(52, 211, 153, 0.28) !important;
    background: rgba(52, 211, 153, 0.11) !important;
    color: #bbf7d0 !important;
    font-size: 0.72rem !important;
    font-weight: 900 !important;
}

body.lp-polished .start-here-track,
body.lp-polished .mobile-start-here-track {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    overflow: visible !important;
}

body.lp-polished .start-here-card,
body.lp-polished .mobile-start-here-card {
    position: relative !important;
    min-width: 0 !important;
    width: auto !important;
}

body.lp-polished .lp-start-step {
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    z-index: 3 !important;
    width: 30px !important;
    height: 30px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 50% !important;
    border: 1px solid rgba(255, 255, 255, 0.26) !important;
    background: rgba(15, 23, 42, 0.84) !important;
    color: white !important;
    font-size: 0.78rem !important;
    font-weight: 1000 !important;
    box-shadow: 0 10px 22px rgba(2, 6, 23, 0.25) !important;
}

body.lp-polished .lp-outcome-chip {
    width: fit-content !important;
    max-width: 100% !important;
    display: inline-flex !important;
    align-items: center !important;
    margin-top: 9px !important;
    padding: 5px 8px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(96, 165, 250, 0.22) !important;
    background: rgba(37, 99, 235, 0.12) !important;
    color: #bfdbfe !important;
    font-size: 0.66rem !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
}

body.lp-polished .hero-play-card .lp-outcome-chip {
    margin-top: 6px !important;
}

body.lp-polished .lp-creator-spotlight {
    display: grid !important;
    grid-template-columns: minmax(0, 1.4fr) minmax(220px, 0.8fr) auto !important;
    align-items: center !important;
    gap: 18px !important;
    padding: 20px !important;
}

body.lp-polished .lp-creator-profile {
    display: grid !important;
    grid-template-columns: 74px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 16px !important;
}

body.lp-polished .lp-creator-profile img {
    width: 74px !important;
    height: 74px !important;
    object-fit: cover !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    box-shadow: 0 18px 38px rgba(2, 6, 23, 0.28) !important;
}

body.lp-polished .lp-creator-featured-game {
    min-height: 116px !important;
    padding: 14px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(148, 163, 184, 0.16) !important;
    background: rgba(2, 6, 23, 0.4) !important;
}

body.lp-polished .lp-creator-featured-game span {
    margin-bottom: 8px !important;
    color: #bbf7d0 !important;
}

body.lp-polished .lp-creator-featured-game strong {
    display: block !important;
    color: white !important;
    font-size: 1rem !important;
    line-height: 1.2 !important;
}

body.lp-polished .lp-creator-featured-game p {
    margin: 7px 0 0 !important;
    color: var(--lp-muted) !important;
    font-size: 0.78rem !important;
    line-height: 1.4 !important;
}

body.lp-polished .lp-skeleton-card {
    min-width: 190px !important;
    min-height: 210px !important;
    padding: 12px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(148, 163, 184, 0.12) !important;
    background: rgba(15, 23, 42, 0.46) !important;
}

body.lp-polished .lp-skeleton-thumb,
body.lp-polished .lp-skeleton-line {
    display: block !important;
    border-radius: 10px !important;
    background: linear-gradient(90deg, rgba(148, 163, 184, 0.08), rgba(148, 163, 184, 0.18), rgba(148, 163, 184, 0.08)) !important;
    background-size: 220% 100% !important;
    animation: lpSkeletonSweep 1.3s ease-in-out infinite !important;
}

body.lp-polished .lp-skeleton-thumb {
    height: 128px !important;
    margin-bottom: 13px !important;
}

body.lp-polished .lp-skeleton-line {
    height: 12px !important;
    margin-top: 9px !important;
}

body.lp-polished .lp-skeleton-line.short {
    width: 62% !important;
}

body.lp-polished .lp-empty-shelf {
    width: 100% !important;
    min-height: 146px !important;
    display: grid !important;
    place-items: center !important;
    gap: 8px !important;
    padding: 20px !important;
    border-radius: 12px !important;
    border: 1px dashed rgba(148, 163, 184, 0.22) !important;
    background: rgba(15, 23, 42, 0.42) !important;
    color: var(--lp-muted) !important;
    text-align: center !important;
}

body.lp-polished .lp-empty-shelf strong {
    color: white !important;
    font-size: 1rem !important;
}

body.lp-polished .lp-empty-shelf a {
    min-height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 13px !important;
    border-radius: 8px !important;
    background: #2563eb !important;
    color: white !important;
    text-decoration: none !important;
    font-size: 0.76rem !important;
    font-weight: 900 !important;
}

@keyframes lpSkeletonSweep {
    0% {
        background-position: 120% 0;
    }

    100% {
        background-position: -120% 0;
    }
}

@media (max-width: 980px) {
    body.lp-polished .start-here-track,
    body.lp-polished .mobile-start-here-track {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.lp-polished .lp-creator-spotlight {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 768px) {
    body.lp-polished .start-here-header,
    body.lp-polished .mobile-start-here-header {
        align-items: start !important;
        gap: 8px !important;
    }

    body.lp-polished .start-here-header h3,
    body.lp-polished .mobile-start-here-header h3 {
        font-size: 1.08rem !important;
    }

    body.lp-polished .start-here-subtitle,
    body.lp-polished .mobile-start-here-subtitle {
        font-size: 0.62rem !important;
        padding: 6px 9px !important;
    }

    body.lp-polished .start-here-track,
    body.lp-polished .mobile-start-here-track {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    body.lp-polished .start-here-card,
    body.lp-polished .mobile-start-here-card {
        min-height: 0 !important;
    }

    body.lp-polished .lp-start-step {
        width: 25px !important;
        height: 25px !important;
        font-size: 0.68rem !important;
    }

    body.lp-polished .lp-outcome-chip {
        margin-top: 7px !important;
        padding: 5px 7px !important;
        font-size: 0.58rem !important;
    }

    body.lp-polished .lp-editorial-physics,
    body.lp-polished .lp-why-band {
        display: none !important;
    }

    body.lp-polished .lp-creator-profile {
        grid-template-columns: 54px minmax(0, 1fr) !important;
        gap: 12px !important;
    }

    body.lp-polished .lp-creator-profile img {
        width: 54px !important;
        height: 54px !important;
        border-radius: 12px !important;
    }

    body.lp-polished .lp-creator-featured-game {
        min-height: 0 !important;
        padding: 11px !important;
    }

    body.lp-polished .lp-skeleton-card {
        min-width: 140px !important;
        min-height: 164px !important;
    }

    body.lp-polished .lp-skeleton-thumb {
        height: 92px !important;
    }
}

/* World-class experiment layer v3 */
body.lp-polished {
    color: var(--lp-text) !important;
    text-rendering: optimizeLegibility;
}

body.lp-polished .hero-section {
    min-height: auto !important;
    padding-top: 104px !important;
    padding-bottom: 12px !important;
    background:
        linear-gradient(90deg, rgba(5, 8, 22, 0.96) 0%, rgba(5, 8, 22, 0.82) 45%, rgba(5, 8, 22, 0.42) 100%),
        radial-gradient(920px 520px at 82% 18%, rgba(56, 189, 248, 0.22), transparent 62%),
        radial-gradient(680px 420px at 18% 84%, rgba(52, 211, 153, 0.13), transparent 58%),
        linear-gradient(180deg, #050816 0%, #07111f 100%) !important;
}

body.lp-polished .hero-content-minimal {
    grid-template-columns: minmax(410px, 0.9fr) minmax(540px, 1.1fr) !important;
    grid-template-areas:
        "copy play"
        "proof play"
        "start start" !important;
    align-items: start !important;
    row-gap: 8px !important;
}

body.lp-polished .hero-main-cta {
    max-width: 640px !important;
    padding-top: 0 !important;
}

body.lp-polished .hero-trust-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #c8d3e8 !important;
    background: rgba(15, 23, 42, 0.74) !important;
}

body.lp-polished .trust-dot {
    width: 8px !important;
    height: 8px !important;
    display: inline-block !important;
    border-radius: 999px !important;
    background: var(--lp-green) !important;
    box-shadow: 0 0 0 6px rgba(52, 211, 153, 0.12) !important;
}

body.lp-polished .hero-title {
    max-width: 720px !important;
    font-size: clamp(3.15rem, 5.6vw, 5.65rem) !important;
    line-height: 0.94 !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .hero-description {
    max-width: 590px !important;
    margin-bottom: 18px !important;
    color: #c2ccdc !important;
    font-size: 1.08rem !important;
}

body.lp-polished .lp-hero-search {
    width: min(100%, 590px) !important;
    min-height: 58px !important;
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 0 0 12px !important;
    padding: 8px 8px 8px 18px !important;
    border-radius: 12px !important;
    background: rgba(248, 250, 252, 0.96) !important;
    border: 1px solid rgba(255, 255, 255, 0.28) !important;
    box-shadow: 0 22px 52px rgba(0, 0, 0, 0.28) !important;
}

body.lp-polished .lp-hero-search i {
    color: #2563eb !important;
}

body.lp-polished .lp-hero-search input {
    min-width: 0 !important;
    width: 100% !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: #0f172a !important;
    font: 700 0.98rem/1.2 Inter, sans-serif !important;
}

body.lp-polished .lp-hero-search input::placeholder {
    color: #64748b !important;
    font-weight: 600 !important;
}

body.lp-polished .lp-hero-search button {
    min-height: 42px !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #2563eb !important;
    color: white !important;
    font-weight: 900 !important;
    cursor: pointer !important;
}

body.lp-polished .lp-hero-chips {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 0 18px !important;
}

body.lp-polished .lp-hero-chips a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 30px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: rgba(15, 23, 42, 0.78) !important;
    border: 1px solid var(--lp-line) !important;
    color: #d6e1f2 !important;
    text-decoration: none !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
}

body.lp-polished .lp-hero-chips a:hover {
    border-color: var(--lp-line-strong) !important;
    color: white !important;
}

body.lp-polished .lp-hero-chips a.active {
    background: rgba(56, 189, 248, 0.18) !important;
    border-color: rgba(125, 211, 252, 0.52) !important;
    color: white !important;
}

body.lp-polished .lp-search-suggestions {
    width: min(100%, 590px) !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: -4px 0 12px !important;
    padding: 10px !important;
    border-radius: 12px !important;
    background: rgba(15, 23, 42, 0.88) !important;
    border: 1px solid var(--lp-line) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.22) !important;
}

body.lp-polished .lp-search-suggestions[hidden] {
    display: none !important;
}

body.lp-polished .lp-search-suggestions button {
    min-height: 30px !important;
    padding: 0 10px !important;
    border: 1px solid rgba(125, 211, 252, 0.24) !important;
    border-radius: 999px !important;
    background: rgba(56, 189, 248, 0.08) !important;
    color: #dbeafe !important;
    font-size: 0.74rem !important;
    font-weight: 900 !important;
    cursor: pointer !important;
}

body.lp-polished .lp-search-suggestions button:hover {
    color: white !important;
    border-color: rgba(125, 211, 252, 0.48) !important;
}

body.lp-polished .hero-buttons {
    margin-bottom: 12px !important;
}

body.lp-polished .hero-btn {
    min-height: 46px !important;
    padding: 0 18px !important;
}

body.lp-polished .hero-btn:hover,
body.lp-polished .lp-hero-search button:hover {
    transform: translateY(-2px) !important;
}

body.lp-polished .hero-play-panel {
    align-self: stretch !important;
    min-height: 0 !important;
    padding: 20px !important;
    border-radius: 18px !important;
    background:
        linear-gradient(180deg, rgba(15, 23, 42, 0.92), rgba(2, 6, 23, 0.98)),
        radial-gradient(620px 300px at 95% 0%, rgba(52, 211, 153, 0.12), transparent 58%) !important;
    box-shadow: 0 28px 90px rgba(0, 0, 0, 0.42) !important;
}

body.lp-polished .hero-play-panel .hero-play-grid {
    grid-template-columns: 1fr !important;
}

body.lp-polished .hero-play-panel-header {
    margin-bottom: 6px !important;
}

body.lp-polished .hero-play-kicker {
    font-size: 1rem !important;
}

body.lp-polished .hero-play-copy {
    position: relative !important;
    z-index: 1 !important;
    margin: 0 0 14px !important;
    color: var(--lp-muted) !important;
    font-size: 0.86rem !important;
    line-height: 1.45 !important;
}

body.lp-polished .hero-play-grid {
    gap: 12px !important;
}

body.lp-polished .hero-play-card {
    grid-template-columns: 92px minmax(0, 1fr) 42px !important;
    min-height: 112px !important;
    padding: 12px !important;
    border-radius: 12px !important;
}

body.lp-polished .hero-play-card:first-child {
    min-height: 280px !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: 168px auto 46px !important;
    align-items: stretch !important;
    background:
        linear-gradient(135deg, rgba(37, 99, 235, 0.22), rgba(2, 6, 23, 0.76)) !important;
    border-color: rgba(125, 211, 252, 0.35) !important;
    position: relative !important;
}

body.lp-polished .hero-secondary-game {
    display: none !important;
}

body.lp-polished .hero-play-card:first-child > i {
    position: absolute !important;
    right: 16px !important;
    bottom: 16px !important;
    width: 46px !important;
    height: 46px !important;
}

body.lp-polished .hero-play-card img {
    width: 92px !important;
    height: 88px !important;
    border-radius: 8px !important;
}

body.lp-polished .hero-play-card:first-child img {
    width: 100% !important;
    height: 168px !important;
    object-position: center !important;
}

body.lp-polished .hero-play-card-body strong {
    font-size: 1.02rem !important;
}

body.lp-polished .hero-play-card:first-child .hero-play-card-body strong {
    font-size: 1.36rem !important;
    line-height: 1.08 !important;
}

body.lp-polished .hero-featured-label {
    width: fit-content !important;
    display: inline-flex !important;
    margin-bottom: 4px !important;
    padding: 3px 8px !important;
    border-radius: 999px !important;
    background: rgba(52, 211, 153, 0.12) !important;
    border: 1px solid rgba(52, 211, 153, 0.26) !important;
    color: #86efac !important;
    font-size: 0.66rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
}

body.lp-polished .hero-play-card-body em {
    display: none !important;
    color: #cbd5e1 !important;
    font-size: 0.84rem !important;
    font-style: normal !important;
    line-height: 1.45 !important;
}

body.lp-polished .hero-play-card:first-child .hero-play-card-body em {
    display: block !important;
}

body.lp-polished .hero-card-cta {
    width: fit-content !important;
    display: none !important;
    margin-top: 8px !important;
    padding: 7px 11px !important;
    border-radius: 8px !important;
    background: #2563eb !important;
    color: white !important;
    font-size: 0.74rem !important;
    font-weight: 900 !important;
}

body.lp-polished .hero-play-card:first-child .hero-card-cta {
    display: inline-flex !important;
}

body.lp-polished .hero-play-card-body span {
    white-space: normal !important;
    line-height: 1.35 !important;
}

body.lp-polished .stats-panel {
    display: none !important;
}

body.lp-polished .start-here-section {
    margin-top: 0 !important;
    padding-top: 8px !important;
    border-top: 1px solid var(--lp-line) !important;
}

body.lp-polished #homeContent {
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
}

body.lp-polished .curated-row,
body.lp-polished .subject-row {
    margin-bottom: 28px !important;
}

/* Editorial collections */
body.lp-polished .lp-editorial-row {
    position: relative !important;
    width: 100% !important;
    padding: 22px 0 26px !important;
    margin: 0 0 18px !important;
    border-top: 1px solid var(--lp-line) !important;
    border-radius: 0 !important;
    background:
        linear-gradient(90deg, rgba(15, 23, 42, 0.38), transparent 74%) !important;
}

body.lp-polished .lp-editorial-row::before {
    content: "" !important;
    position: absolute !important;
    left: -24px !important;
    top: 22px !important;
    bottom: 26px !important;
    width: 3px !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, var(--lp-blue), var(--lp-green)) !important;
    opacity: 0.85 !important;
}

body.lp-polished .lp-editorial-header,
body.lp-polished .lp-editorial-row .curated-row-header,
body.lp-polished .lp-editorial-row .recommended-header {
    min-height: 74px !important;
    display: flex !important;
    align-items: end !important;
    justify-content: space-between !important;
    gap: 18px !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    border: 0 !important;
}

body.lp-polished .lp-editorial-row .curated-row-title {
    max-width: 760px !important;
}

body.lp-polished .lp-editorial-badge {
    width: fit-content !important;
    display: inline-flex !important;
    align-items: center !important;
    min-height: 24px !important;
    margin: 0 0 8px !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    background: rgba(56, 189, 248, 0.1) !important;
    border: 1px solid rgba(125, 211, 252, 0.28) !important;
    color: #9ee7ff !important;
    font-size: 0.68rem !important;
    font-weight: 900 !important;
    letter-spacing: 0.02em !important;
    text-transform: uppercase !important;
}

body.lp-polished .lp-editorial-row .curated-row-title h3,
body.lp-polished .lp-editorial-row .recommended-header .curated-row-title h3 {
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: var(--lp-text) !important;
    font-size: clamp(1.35rem, 2.5vw, 2.05rem) !important;
    line-height: 1.08 !important;
    font-weight: 900 !important;
}

body.lp-polished .lp-editorial-row .curated-row-title h3 i {
    width: 34px !important;
    height: 34px !important;
    display: grid !important;
    place-items: center !important;
    flex: 0 0 auto !important;
    border-radius: 8px !important;
    background: rgba(56, 189, 248, 0.12) !important;
    color: var(--lp-blue) !important;
    font-size: 0.95rem !important;
}

body.lp-polished .lp-editorial-row .curated-row-subtitle,
body.lp-polished .lp-editorial-row .recommended-subtitle {
    max-width: 620px !important;
    margin: 8px 0 0 !important;
    color: #aebbd0 !important;
    font-size: 0.92rem !important;
    line-height: 1.5 !important;
}

body.lp-polished .lp-editorial-row .curated-row-viewall {
    min-height: 38px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 0 13px !important;
    border-radius: 8px !important;
    background: rgba(15, 23, 42, 0.76) !important;
    border: 1px solid var(--lp-line) !important;
    color: #dbeafe !important;
    text-decoration: none !important;
    font-weight: 900 !important;
    font-size: 0.78rem !important;
}

body.lp-polished .lp-editorial-row .curated-row-viewall:hover {
    border-color: var(--lp-line-strong) !important;
    color: white !important;
}

body.lp-polished .lp-editorial-row .curated-games-container,
body.lp-polished .lp-editorial-row .carousel-container {
    position: relative !important;
    margin: 0 !important;
}

body.lp-polished .lp-editorial-row .curated-games-track,
body.lp-polished .lp-editorial-row .carousel-track,
body.lp-polished .lp-editorial-row .advanced-games-track,
body.lp-polished .lp-editorial-row .life-skills-games-track {
    gap: 16px !important;
    padding: 2px 2px 10px !important;
    scroll-padding-inline: 2px !important;
}

body.lp-polished .lp-editorial-row .curated-game-card,
body.lp-polished .lp-editorial-row .carousel-card,
body.lp-polished .lp-editorial-row .life-skills-card,
body.lp-polished .lp-editorial-row .cs-game-card,
body.lp-polished .lp-editorial-row .advanced-game-card {
    min-width: 190px !important;
}

body.lp-polished .lp-editorial-row .curated-game-card:first-child,
body.lp-polished .lp-editorial-row .carousel-card:first-child {
    border-color: rgba(125, 211, 252, 0.34) !important;
}

body.lp-polished .lp-editorial-physics .lp-editorial-badge,
body.lp-polished .lp-editorial-physics .curated-row-title h3 i {
    color: #93c5fd !important;
    border-color: rgba(147, 197, 253, 0.3) !important;
    background: rgba(37, 99, 235, 0.13) !important;
}

body.lp-polished .lp-editorial-coding .lp-editorial-badge,
body.lp-polished .lp-editorial-coding .curated-row-title h3 i {
    color: #86efac !important;
    border-color: rgba(134, 239, 172, 0.3) !important;
    background: rgba(22, 163, 74, 0.12) !important;
}

body.lp-polished .lp-editorial-math .lp-editorial-badge,
body.lp-polished .lp-editorial-math .curated-row-title h3 i {
    color: #fde68a !important;
    border-color: rgba(253, 230, 138, 0.3) !important;
    background: rgba(245, 158, 11, 0.12) !important;
}

body.lp-polished .lp-editorial-new-week .lp-editorial-badge,
body.lp-polished .lp-editorial-new-week .curated-row-title h3 i {
    color: #f0abfc !important;
    border-color: rgba(240, 171, 252, 0.3) !important;
    background: rgba(217, 70, 239, 0.11) !important;
}

body.lp-polished .lp-editorial-recommended-shell .carousel-container {
    padding: 0 !important;
}

body.lp-polished .subject-rows-container {
    display: contents !important;
}

body.lp-polished .lp-pruned-row {
    display: none !important;
}

body.lp-polished .lp-why-band,
body.lp-polished .lp-creator-band,
body.lp-polished .lp-explore-all-bridge {
    width: 100% !important;
}

body.lp-polished .lp-why-band,
body.lp-polished .lp-creator-band {
    margin: 18px 0 20px !important;
    padding: 20px !important;
    border-radius: 12px !important;
    border: 1px solid var(--lp-line) !important;
    background: rgba(15, 23, 42, 0.58) !important;
}

body.lp-polished .lp-band-heading span,
body.lp-polished .lp-creator-band span {
    display: inline-flex !important;
    margin-bottom: 8px !important;
    color: #9ee7ff !important;
    font-size: 0.68rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
}

body.lp-polished .lp-band-heading h2,
body.lp-polished .lp-creator-band h2 {
    margin: 0 !important;
    color: white !important;
    font-size: 1.35rem !important;
    line-height: 1.15 !important;
}

body.lp-polished .lp-why-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin-top: 16px !important;
}

body.lp-polished .lp-why-grid div {
    min-height: 122px !important;
    padding: 14px !important;
    border-radius: 10px !important;
    background: rgba(2, 6, 23, 0.52) !important;
    border: 1px solid rgba(148, 163, 184, 0.14) !important;
}

body.lp-polished .lp-why-grid i {
    width: 30px !important;
    height: 30px !important;
    display: grid !important;
    place-items: center !important;
    margin-bottom: 10px !important;
    border-radius: 8px !important;
    background: rgba(52, 211, 153, 0.12) !important;
    color: var(--lp-green) !important;
}

body.lp-polished .lp-why-grid strong {
    display: block !important;
    color: white !important;
    font-size: 0.95rem !important;
}

body.lp-polished .lp-why-grid p,
body.lp-polished .lp-creator-band p {
    margin: 6px 0 0 !important;
    color: var(--lp-muted) !important;
    font-size: 0.84rem !important;
    line-height: 1.45 !important;
}

body.lp-polished .lp-creator-band {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    background:
        linear-gradient(135deg, rgba(52, 211, 153, 0.12), rgba(37, 99, 235, 0.12)),
        rgba(15, 23, 42, 0.68) !important;
}

body.lp-polished .lp-creator-actions,
body.lp-polished .lp-final-actions {
    display: inline-flex !important;
    gap: 10px !important;
    flex: 0 0 auto !important;
}

body.lp-polished .lp-creator-actions a,
body.lp-polished .lp-final-actions a {
    min-height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 0 13px !important;
    border-radius: 8px !important;
    border: 1px solid var(--lp-line) !important;
    color: #dbeafe !important;
    text-decoration: none !important;
    font-size: 0.78rem !important;
    font-weight: 900 !important;
}

body.lp-polished .lp-creator-actions a:first-child,
body.lp-polished .lp-final-actions a:first-child {
    background: #2563eb !important;
    border-color: rgba(147, 197, 253, 0.28) !important;
    color: white !important;
}

body.lp-polished .lp-explore-all-bridge {
    margin: 18px 0 34px !important;
    padding: 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    border-radius: 12px !important;
    background:
        linear-gradient(135deg, rgba(37, 99, 235, 0.15), rgba(15, 23, 42, 0.86)) !important;
    border: 1px solid var(--lp-line) !important;
}

body.lp-polished .lp-explore-all-bridge span {
    display: inline-flex !important;
    margin-bottom: 6px !important;
    color: #9ee7ff !important;
    font-size: 0.68rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
}

body.lp-polished .lp-explore-all-bridge strong {
    display: block !important;
    color: white !important;
    font-size: 1.1rem !important;
    line-height: 1.2 !important;
}

body.lp-polished .lp-explore-all-bridge p {
    margin: 6px 0 0 !important;
    color: var(--lp-muted) !important;
    font-size: 0.86rem !important;
    line-height: 1.45 !important;
}

body.lp-polished .lp-quick-launch {
    width: min(100% - 32px, 1280px) !important;
    margin: 12px auto 16px !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

body.lp-polished .lp-quick-launch a {
    min-height: 58px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 9px !important;
    padding: 0 12px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(148, 163, 184, 0.16) !important;
    background: rgba(15, 23, 42, 0.7) !important;
    color: #e2e8f0 !important;
    text-decoration: none !important;
    font-size: 0.82rem !important;
    font-weight: 1000 !important;
}

body.lp-polished .lp-quick-launch a:first-child {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.9), rgba(16, 185, 129, 0.74)) !important;
    border-color: rgba(147, 197, 253, 0.32) !important;
    color: white !important;
}

body.lp-polished .lp-quick-launch i {
    color: #93c5fd !important;
    font-size: 0.92rem !important;
}

body.lp-polished .lp-quick-launch a:first-child i {
    color: white !important;
}

body.lp-polished .lp-ruthless-hidden,
body.lp-polished .lp-ruthless-hidden[hidden] {
    display: none !important;
}

body.lp-polished .lp-editorial-recommended-shell,
body.lp-polished .lp-editorial-recommended-shell #recommendedCarousel,
body.lp-polished .lp-editorial-recommended-shell .recommended-header {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.lp-polished .lp-editorial-recommended-shell .recommended-header {
    display: flex !important;
}

body.lp-polished .lp-creator-pick-card {
    min-width: 214px !important;
    width: 214px !important;
    color: inherit !important;
    text-decoration: none !important;
}

body.lp-polished .lp-creator-mini {
    display: block !important;
    overflow: hidden !important;
    color: #93c5fd !important;
    font-size: 0.68rem !important;
    font-weight: 900 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* Homepage v1 polish: focused launcher, clean shelf order, richer game cards. */
body.lp-polished .lp-mobile-hero-proof {
    display: none !important;
}

body.lp-polished .lp-card-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
}

body.lp-polished .lp-card-meta span {
    min-height: 24px !important;
    padding: 0 7px !important;
    border-radius: 999px !important;
    background: rgba(2, 6, 23, 0.58) !important;
    border: 1px solid rgba(148, 163, 184, 0.18) !important;
    color: #cbd5e1 !important;
    font-size: 0.66rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

body.lp-polished .lp-card-meta i {
    margin-right: 4px !important;
    color: #60a5fa !important;
    font-size: 0.62rem !important;
}

body.lp-polished .lp-card-normalized {
    position: relative !important;
}

body.lp-polished .lp-card-play-pill {
    position: absolute !important;
    right: 8px !important;
    bottom: 8px !important;
    z-index: 8 !important;
    min-height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    background: rgba(37, 99, 235, 0.94) !important;
    border: 1px solid rgba(191, 219, 254, 0.22) !important;
    color: white !important;
    font-size: 0.66rem !important;
    font-weight: 1000 !important;
    line-height: 1 !important;
    pointer-events: none !important;
    box-shadow: 0 10px 22px rgba(2, 6, 23, 0.32) !important;
}

body.lp-polished .lp-card-play-pill i {
    font-size: 0.58rem !important;
}

body.lp-polished .lp-today-challenge {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 18px !important;
    padding: 18px 20px !important;
    background:
        linear-gradient(135deg, rgba(37, 99, 235, 0.18), rgba(16, 185, 129, 0.12)),
        rgba(15, 23, 42, 0.82) !important;
    border-color: rgba(96, 165, 250, 0.3) !important;
}

body.lp-polished .lp-today-challenge h2 {
    font-size: clamp(1.15rem, 2.3vw, 1.7rem) !important;
}

body.lp-polished .lp-today-challenge a {
    min-height: 44px !important;
    white-space: nowrap !important;
}

body.lp-polished .lp-continue-band {
    order: -3 !important;
}

body.lp-polished .lp-today-challenge {
    order: -2 !important;
}

body.lp-polished .lp-onboarding-chooser,
body.lp-polished .start-here-section,
body.lp-polished .mobile-start-here-section {
    order: -1 !important;
}


@media (max-width: 980px) {
    body.lp-polished .hero-content-minimal {
        grid-template-columns: 1fr !important;
        grid-template-areas:
            "copy"
            "play"
            "proof"
            "start" !important;
    }

    body.lp-polished .hero-main-cta {
        max-width: none !important;
    }

    body.lp-polished .hero-play-panel {
        min-height: 0 !important;
    }
}

@media (max-width: 768px) {
    body.lp-polished .hero-section {
        min-height: auto !important;
        padding: 72px 14px 10px !important;
        overflow: visible !important;
    }

    body.lp-polished .hero-content-minimal {
        gap: 8px !important;
        row-gap: 8px !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-main-cta {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
    }

    body.lp-polished .hero-title {
        margin-bottom: 0 !important;
        font-size: clamp(2.05rem, 9.8vw, 3rem) !important;
        line-height: 0.95 !important;
    }

    body.lp-polished .hero-description {
        display: block !important;
        margin: 0 !important;
        font-size: 0.94rem !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-play-panel {
        order: 2 !important;
        margin: 2px 0 4px !important;
        padding: 10px !important;
        border-radius: 14px !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-description {
        order: 3 !important;
    }

    body.lp-polished.lp-mobile-game-first .lp-hero-search {
        order: 4 !important;
        margin: 0 !important;
    }

    body.lp-polished.lp-mobile-game-first .lp-hero-chips {
        order: 5 !important;
        margin: 0 !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-buttons {
        order: 6 !important;
        margin: 0 !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-play-panel-header,
    body.lp-polished.lp-mobile-game-first .hero-play-copy {
        display: flex !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-play-panel-header {
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
        margin-bottom: 6px !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-play-copy {
        margin: 0 0 8px !important;
        font-size: 0.74rem !important;
        line-height: 1.35 !important;
    }

    body.lp-polished .lp-hero-search {
        min-height: 52px !important;
        grid-template-columns: 18px minmax(0, 1fr) 76px !important;
        gap: 8px !important;
        padding: 6px 6px 6px 12px !important;
        border-radius: 10px !important;
    }

    body.lp-polished .lp-hero-search input {
        font-size: 0.84rem !important;
    }

    body.lp-polished .lp-hero-search button {
        min-height: 38px !important;
        padding: 0 10px !important;
        font-size: 0.8rem !important;
    }

    body.lp-polished .lp-hero-chips {
        overflow-x: auto !important;
        flex-wrap: nowrap !important;
        padding-bottom: 2px !important;
    }

    body.lp-polished .lp-search-suggestions {
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        padding: 8px !important;
    }

    body.lp-polished .lp-search-suggestions button {
        flex: 0 0 auto !important;
    }

    body.lp-polished .hero-buttons {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    body.lp-polished .hero-btn {
        min-height: 42px !important;
        padding: 0 10px !important;
        white-space: nowrap !important;
        font-size: 0.82rem !important;
    }

    body.lp-polished .hero-play-card,
    body.lp-polished .hero-play-card:first-child {
        grid-template-columns: 64px minmax(0, 1fr) 34px !important;
        min-height: 76px !important;
        padding: 8px !important;
    }

    body.lp-polished .hero-play-card img,
    body.lp-polished .hero-play-card:first-child img {
        width: 64px !important;
        height: 60px !important;
    }

    body.lp-polished .hero-play-card:first-child .hero-play-card-body strong,
    body.lp-polished .hero-play-card-body strong {
        font-size: 0.94rem !important;
    }

    body.lp-polished .hero-play-card:first-child {
        min-height: 132px !important;
        grid-template-columns: 104px minmax(0, 1fr) 34px !important;
        grid-template-rows: auto !important;
    }

    body.lp-polished .hero-play-card:first-child img {
        width: 104px !important;
        height: 100px !important;
    }

    body.lp-polished .hero-play-card:first-child > i {
        position: static !important;
        width: 34px !important;
        height: 34px !important;
    }

    body.lp-polished .hero-featured-label,
    body.lp-polished .hero-card-cta {
        display: inline-flex !important;
    }

    body.lp-polished .hero-featured-label {
        margin-bottom: 2px !important;
        padding: 2px 7px !important;
        font-size: 0.55rem !important;
    }

    body.lp-polished .hero-card-cta {
        margin-top: 4px !important;
        padding: 5px 8px !important;
        font-size: 0.64rem !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-play-card:first-child .hero-play-card-body em {
        display: -webkit-box !important;
        overflow: hidden !important;
        -webkit-box-orient: vertical !important;
        -webkit-line-clamp: 2 !important;
        font-size: 0.74rem !important;
        line-height: 1.3 !important;
    }

    body.lp-polished.lp-mobile-game-first .hero-play-card .lp-outcome-chip {
        position: static !important;
        width: fit-content !important;
        max-width: 100% !important;
        margin-top: 4px !important;
        padding: 3px 7px !important;
        font-size: 0.58rem !important;
    }

    body.lp-polished.lp-mobile-game-first .lp-hero-preview-meta {
        flex-wrap: nowrap !important;
        gap: 5px !important;
        margin-top: 5px !important;
    }

    body.lp-polished.lp-mobile-game-first .lp-hero-preview-meta span {
        padding: 3px 6px !important;
        font-size: 0.56rem !important;
        white-space: nowrap !important;
    }

    body.lp-polished.lp-mobile-game-first .lp-hero-progress {
        height: 5px !important;
        margin-top: 6px !important;
    }

    body.lp-polished .hero-play-card:nth-child(n + 2) {
        display: none !important;
    }

    body.lp-polished #homeContent {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    body.lp-polished .lp-editorial-row {
        padding: 18px 0 20px !important;
        margin-bottom: 8px !important;
        background: transparent !important;
    }

    body.lp-polished .lp-editorial-row::before {
        display: none !important;
    }

    body.lp-polished .lp-editorial-header,
    body.lp-polished .lp-editorial-row .curated-row-header,
    body.lp-polished .lp-editorial-row .recommended-header {
        min-height: 0 !important;
        display: grid !important;
        grid-template-columns: 1fr auto !important;
        align-items: end !important;
        gap: 10px !important;
        margin-bottom: 10px !important;
    }

    body.lp-polished .lp-editorial-badge {
        min-height: 21px !important;
        margin-bottom: 6px !important;
        padding: 0 7px !important;
        font-size: 0.58rem !important;
    }

    body.lp-polished .lp-editorial-row .curated-row-title h3,
    body.lp-polished .lp-editorial-row .recommended-header .curated-row-title h3 {
        font-size: 1.08rem !important;
        gap: 8px !important;
    }

    body.lp-polished .lp-editorial-row .curated-row-title h3 i {
        width: 28px !important;
        height: 28px !important;
        font-size: 0.78rem !important;
    }

    body.lp-polished .lp-editorial-row .curated-row-subtitle,
    body.lp-polished .lp-editorial-row .recommended-subtitle {
        max-width: none !important;
        font-size: 0.72rem !important;
        line-height: 1.35 !important;
    }

    body.lp-polished .lp-editorial-row .curated-row-viewall {
        min-height: 32px !important;
        padding: 0 9px !important;
        font-size: 0.66rem !important;
    }

    body.lp-polished .lp-editorial-row .curated-game-card,
    body.lp-polished .lp-editorial-row .carousel-card,
    body.lp-polished .lp-editorial-row .life-skills-card,
    body.lp-polished .lp-editorial-row .cs-game-card,
    body.lp-polished .lp-editorial-row .advanced-game-card {
        min-width: 150px !important;
    }

    body.lp-polished .lp-explore-all-bridge {
        display: grid !important;
        gap: 12px !important;
        padding: 14px !important;
    }

    body.lp-polished .lp-why-band,
    body.lp-polished .lp-creator-band {
        margin: 12px 0 14px !important;
        padding: 14px !important;
    }

    body.lp-polished .lp-why-grid {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    body.lp-polished .lp-why-grid div {
        min-height: 0 !important;
        padding: 11px !important;
    }

    body.lp-polished .lp-creator-band {
        display: grid !important;
    }

    body.lp-polished .lp-creator-actions,
    body.lp-polished .lp-final-actions {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    body.lp-polished .lp-explore-all-bridge strong {
        font-size: 0.98rem !important;
    }

    body.lp-polished .lp-explore-all-bridge p {
        font-size: 0.74rem !important;
    }

    body.lp-polished .lp-final-actions a,
    body.lp-polished .lp-creator-actions a {
        width: 100% !important;
        justify-content: center !important;
    }
}

/* Final editorial typography lock: keep every collection on one even scale. */
body.lp-polished .lp-editorial-row .lp-editorial-badge {
    min-height: 24px !important;
    margin-bottom: 8px !important;
    padding: 0 9px !important;
    font-size: 0.68rem !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .lp-editorial-row .curated-row-title h3,
body.lp-polished .lp-editorial-row .recommended-header .curated-row-title h3,
body.lp-polished .lp-editorial-row .section-title,
body.lp-polished .lp-editorial-row .carousel-title {
    font-size: 1.55rem !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .lp-editorial-row .curated-row-title h3 i {
    width: 32px !important;
    height: 32px !important;
    font-size: 0.9rem !important;
}

body.lp-polished .lp-editorial-row .curated-row-subtitle,
body.lp-polished .lp-editorial-row .recommended-subtitle,
body.lp-polished .lp-editorial-row .carousel-subtitle {
    font-size: 0.88rem !important;
    line-height: 1.45 !important;
    letter-spacing: 0 !important;
}

body.lp-polished .lp-editorial-row .curated-row-viewall {
    font-size: 0.76rem !important;
    letter-spacing: 0 !important;
}

body.lp-polished .lp-editorial-row .curated-game-title,
body.lp-polished .lp-editorial-row .game-title,
body.lp-polished .lp-editorial-row .game-title-compact,
body.lp-polished .lp-editorial-row .compact-game-title,
body.lp-polished .lp-editorial-row .carousel-game-title,
body.lp-polished .lp-editorial-row .carousel-card-title,
body.lp-polished .lp-editorial-row .mobile-game-name,
body.lp-polished .lp-editorial-row .game-card-title {
    font-size: 0.92rem !important;
    line-height: 1.3 !important;
    letter-spacing: 0 !important;
}

@media (max-width: 768px) {
    body.lp-polished .lp-editorial-row .lp-editorial-badge {
        min-height: 21px !important;
        font-size: 0.58rem !important;
    }

    body.lp-polished .lp-editorial-row .curated-row-title h3,
    body.lp-polished .lp-editorial-row .recommended-header .curated-row-title h3,
    body.lp-polished .lp-editorial-row .section-title,
    body.lp-polished .lp-editorial-row .carousel-title {
        font-size: 1.08rem !important;
        line-height: 1.18 !important;
    }

    body.lp-polished .lp-editorial-row .curated-row-title h3 i {
        width: 28px !important;
        height: 28px !important;
        font-size: 0.78rem !important;
    }

    body.lp-polished .lp-editorial-row .curated-row-subtitle,
    body.lp-polished .lp-editorial-row .recommended-subtitle,
    body.lp-polished .lp-editorial-row .carousel-subtitle {
        font-size: 0.72rem !important;
        line-height: 1.35 !important;
    }

    body.lp-polished .lp-editorial-row .curated-row-viewall {
        font-size: 0.66rem !important;
    }

    body.lp-polished .lp-editorial-row .curated-game-title,
    body.lp-polished .lp-editorial-row .game-title,
    body.lp-polished .lp-editorial-row .game-title-compact,
    body.lp-polished .lp-editorial-row .compact-game-title,
    body.lp-polished .lp-editorial-row .carousel-game-title,
    body.lp-polished .lp-editorial-row .carousel-card-title,
    body.lp-polished .lp-editorial-row .mobile-game-name,
    body.lp-polished .lp-editorial-row .game-card-title {
        font-size: 0.82rem !important;
        line-height: 1.28 !important;
    }
}

/* Final premium override: this intentionally sits after the editorial lock. */
body.lp-polished .lp-premium-card {
    border-color: rgba(96, 165, 250, 0.46) !important;
    box-shadow: 0 18px 42px rgba(2, 6, 23, 0.34) !important;
}

@media (max-width: 768px) {
    body.lp-polished.lp-mobile-game-first .hero-play-panel.lp-premium-hero-panel {
        padding: 0 !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card {
        display: grid !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto !important;
        gap: 0 !important;
        min-height: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border-radius: 16px !important;
        border: 1px solid rgba(96, 165, 250, 0.38) !important;
        background: linear-gradient(180deg, rgba(15, 23, 42, 0.9), rgba(2, 6, 23, 0.98)) !important;
        box-shadow: 0 20px 48px rgba(2, 6, 23, 0.44) !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card img {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
        border-radius: 0 !important;
        object-fit: cover !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card .hero-play-card-body {
        display: grid !important;
        gap: 5px !important;
        padding: 10px 12px 12px !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card > i {
        position: absolute !important;
        right: 12px !important;
        top: calc((100vw - 24px) * 0.5625) !important;
        width: 42px !important;
        height: 42px !important;
        transform: translateY(-100%) !important;
        background: rgba(37, 99, 235, 0.96) !important;
        color: white !important;
    }

    body.lp-polished .hero-play-card:first-child.lp-premium-hero-card .hero-card-cta {
        width: 100% !important;
        min-height: 38px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
}
