/* Extreme Apps - desktop profissional
   Este arquivo só altera telas de PC/notebook. O mobile permanece com o CSS original. */

@media screen and (max-width: 900px) {
    .desktop-nav-wrap { display: none !important; }
}

@media screen and (min-width: 901px) {
    :root {
        --pc-page: min(1520px, calc(100vw - 36px));
        --pc-radius: 22px;
        --pc-blue: #007aff;
        --pc-bg: #f5f7fb;
        --pc-card: rgba(255,255,255,.88);
        --pc-border: rgba(60,60,67,.11);
        --pc-text: #1d1d1f;
        --pc-muted: #6e6e73;
    }

    html,
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
        background: linear-gradient(180deg, #fbfbfd 0%, #f5f7fb 310px, #f5f7fb 100%) !important;
    }

    body {
        margin: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 28px !important;
        color: var(--pc-text) !important;
        font-size: 14px !important;
    }

    .fixed-top {
        position: sticky !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 800 !important;
        background: rgba(248,248,252,.90) !important;
        border-bottom: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 10px 26px rgba(0,0,0,.035) !important;
        backdrop-filter: blur(22px) saturate(175%) !important;
        -webkit-backdrop-filter: blur(22px) saturate(175%) !important;
    }

    .ios-header,
    .search-box,
    .desktop-nav-wrap,
    #skeletonLoader,
    #appList.content,
    .content {
        width: var(--pc-page) !important;
        max-width: var(--pc-page) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    .ios-header {
        min-height: 0 !important;
        padding: 18px 0 9px !important;
        display: flex !important;
        align-items: center !important;
        gap: 18px !important;
    }

    .ios-header-copy {
        min-width: 0 !important;
        padding: 0 !important;
        flex: 1 1 auto !important;
    }

    .page-title {
        margin: 0 !important;
        max-width: 760px !important;
        font-size: clamp(27px, 2.15vw, 36px) !important;
        line-height: 1.02 !important;
        letter-spacing: -.055em !important;
        font-weight: 900 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .ios-subtitle {
        display: block !important;
        margin-top: 5px !important;
        max-width: 880px !important;
        font-size: 14px !important;
        line-height: 1.35 !important;
        color: var(--pc-muted) !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .store-header-actions {
        flex: 0 0 auto !important;
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
    }

    .store-user-chip {
        width: 42px !important;
        min-width: 42px !important;
        max-width: 42px !important;
        height: 42px !important;
        min-height: 42px !important;
        padding: 0 !important;
        border-radius: 999px !important;
        justify-content: center !important;
        overflow: hidden !important;
    }

    .store-user-chip span,
    #storeUserChipLabel { display: none !important; }

    .store-user-chip svg {
        width: 21px !important;
        height: 21px !important;
    }

    .store-user-chip-photo {
        width: 42px !important;
        height: 42px !important;
        flex-basis: 42px !important;
        object-fit: cover !important;
    }

    .store-avatar {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        flex: 0 0 42px !important;
        border-radius: 14px !important;
    }

    .store-avatar img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    .store-avatar.is-static {
        pointer-events: none !important;
        cursor: default !important;
    }

    .search-box {
        position: relative !important;
        padding: 0 0 14px !important;
        margin-top: 0 !important;
    }

    .search-input,
    .search-box .search-input {
        width: 100% !important;
        height: 42px !important;
        min-height: 42px !important;
        line-height: 42px !important;
        border-radius: 15px !important;
        padding: 0 16px 0 42px !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        background: rgba(255,255,255,.88) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 7px 18px rgba(0,0,0,.035), inset 0 1px 0 rgba(255,255,255,.75) !important;
    }

    .search-icon {
        left: 15px !important;
        top: 50% !important;
        transform: translateY(calc(-50% - 7px)) !important;
        width: 16px !important;
        height: 16px !important;
        color: rgba(60,60,67,.45) !important;
    }

    .search-suggestions {
        left: 0 !important;
        right: 0 !important;
        top: 50px !important;
        max-height: min(420px, calc(100vh - 170px)) !important;
        border-radius: 16px !important;
        box-shadow: 0 22px 60px rgba(0,0,0,.13) !important;
        border: 1px solid rgba(60,60,67,.12) !important;
    }

    /* Navegação desktop nova. A barra mobile original fica escondida no PC. */
    .tab-bar-wrap {
        display: none !important;
    }

    .desktop-nav-wrap {
        display: block !important;
        margin-top: 14px !important;
        margin-bottom: 16px !important;
        position: relative !important;
        z-index: 40 !important;
    }

    .desktop-nav {
        height: 48px !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        padding: 6px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        background: rgba(255,255,255,.72) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        border-radius: 18px !important;
        box-shadow: 0 10px 30px rgba(0,0,0,.045) !important;
        scrollbar-width: none !important;
    }

    .desktop-nav::-webkit-scrollbar { display: none !important; }

    .desktop-nav .tab,
    .desktop-nav-tab {
        appearance: none !important;
        border: 0 !important;
        flex: 0 0 auto !important;
        min-width: 112px !important;
        max-width: 190px !important;
        height: 36px !important;
        min-height: 36px !important;
        padding: 0 14px !important;
        border-radius: 13px !important;
        display: inline-flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        background: transparent !important;
        color: rgba(60,60,67,.74) !important;
        font-size: 12.5px !important;
        line-height: 1 !important;
        font-weight: 850 !important;
        white-space: nowrap !important;
        cursor: pointer !important;
        box-shadow: none !important;
    }

    .desktop-nav .tab.active,
    .desktop-nav-tab.active {
        background: var(--pc-blue) !important;
        color: #fff !important;
        box-shadow: 0 10px 20px rgba(0,122,255,.22) !important;
    }

    .desktop-nav .tab svg,
    .desktop-nav-tab svg,
    .desktop-nav .ios-tab-symbol {
        width: 17px !important;
        height: 17px !important;
        margin: 0 !important;
        flex: 0 0 17px !important;
    }

    .desktop-nav .tab span,
    .desktop-nav-tab span {
        display: block !important;
        max-width: 130px !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
        font-size: 12.5px !important;
        line-height: 1 !important;
        font-weight: 850 !important;
    }

    #skeletonLoader { padding: 0 !important; }

    #appList.content,
    .content {
        padding: 0 0 36px !important;
        margin-top: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 22px !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
    }

    .today-shell {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 24px !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
        overflow: visible !important;
    }

    .device-filter-wrap,
    .today-shell .device-filter-wrap,
    .result-head + .device-filter-wrap {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 10px !important;
        overflow-x: auto !important;
        scrollbar-width: none !important;
        mask-image: none !important;
        -webkit-mask-image: none !important;
    }

    .device-filter-wrap::-webkit-scrollbar { display: none !important; }

    .device-chip,
    .today-shell .device-chip,
    .result-head + .device-filter-wrap .device-chip {
        flex: 0 0 auto !important;
        min-width: 112px !important;
        max-width: 170px !important;
        height: 34px !important;
        min-height: 34px !important;
        padding: 0 18px !important;
        border-radius: 999px !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        background: rgba(255,255,255,.78) !important;
        color: rgba(60,60,67,.72) !important;
        box-shadow: 0 6px 16px rgba(0,0,0,.035) !important;
        font-size: 12.5px !important;
        font-weight: 850 !important;
        line-height: 1 !important;
        letter-spacing: -.01em !important;
    }

    .device-chip.active {
        border-color: transparent !important;
        background: var(--pc-blue) !important;
        color: #fff !important;
        box-shadow: 0 10px 22px rgba(0,122,255,.22) !important;
    }

    .smart-home-strip {
        display: none !important;
    }

    .editorial-block,
    .list-block,
    .favorite-section {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .editorial-head,
    .section-header,
    .list-head,
    .result-head {
        margin: 0 0 12px !important;
        padding: 0 !important;
    }

    .list-head {
        display: flex !important;
        align-items: flex-end !important;
        justify-content: space-between !important;
        gap: 16px !important;
    }

    .collection-label,
    .today-kicker,
    .result-kicker,
    .editorial-kicker {
        margin: 0 0 4px !important;
        font-size: 11px !important;
        line-height: 1.1 !important;
        letter-spacing: .085em !important;
        font-weight: 900 !important;
        color: rgba(60,60,67,.48) !important;
    }

    .collection-name,
    .editorial-title,
    .list-title,
    .result-title,
    .section-title {
        margin: 0 !important;
        font-size: clamp(23px, 1.8vw, 30px) !important;
        line-height: 1.03 !important;
        letter-spacing: -.05em !important;
        font-weight: 900 !important;
        color: var(--pc-text) !important;
    }

    .editorial-subtitle,
    .result-subtitle,
    .list-subtitle,
    .collection-desc {
        margin-top: 5px !important;
        max-width: 820px !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
        color: var(--pc-muted) !important;
    }

    .list-count {
        flex: 0 0 auto !important;
        height: 28px !important;
        display: inline-flex !important;
        align-items: center !important;
        padding: 0 10px !important;
        border-radius: 999px !important;
        background: rgba(118,118,128,.10) !important;
        color: rgba(60,60,67,.62) !important;
        font-size: 11px !important;
        font-weight: 850 !important;
    }

    .collection-scroll,
    .today-shell .collection-scroll {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
        gap: 16px !important;
        overflow: visible !important;
        padding: 0 !important;
        margin: 0 !important;
        scroll-snap-type: none !important;
    }

    .collection-card,
    .collection-card.small {
        flex: none !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        border-radius: 20px !important;
        overflow: hidden !important;
        background: rgba(255,255,255,.88) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 12px 32px rgba(0,0,0,.055) !important;
    }

    .collection-card:hover {
        transform: translateY(-2px) !important;
        box-shadow: 0 18px 44px rgba(0,0,0,.08) !important;
    }

    .collection-visual,
    .collection-card.small .collection-visual {
        height: clamp(118px, 11.5vw, 168px) !important;
        min-height: 118px !important;
        border-radius: 0 !important;
    }

    .collection-content {
        padding: 12px 13px 13px !important;
    }

    .collection-content .collection-label {
        color: var(--pc-blue) !important;
        font-size: 10px !important;
    }

    .collection-card .collection-name {
        font-size: 18px !important;
        line-height: 1.1 !important;
        letter-spacing: -.035em !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 1 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }

    .collection-card .collection-desc {
        font-size: 12.5px !important;
        line-height: 1.35 !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        min-height: 33px !important;
    }

    .collection-bottom {
        margin-top: 11px !important;
        gap: 10px !important;
    }

    .collection-mini img {
        width: 36px !important;
        height: 36px !important;
        border-radius: 10px !important;
    }

    .collection-mini-title {
        max-width: 130px !important;
        font-size: 12px !important;
        font-weight: 850 !important;
    }

    .collection-mini-sub {
        font-size: 10.5px !important;
    }

    .collection-get,
    .today-get,
    .rec-get-btn,
    .get-btn,
    a.get-btn {
        min-width: 58px !important;
        max-width: 84px !important;
        height: 28px !important;
        min-height: 28px !important;
        padding: 0 10px !important;
        border-radius: 999px !important;
        font-size: 10.5px !important;
        font-weight: 900 !important;
        text-decoration: none !important;
    }

    .list-stack {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)) !important;
        overflow: hidden !important;
        border-radius: 20px !important;
        background: rgba(255,255,255,.76) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 12px 30px rgba(0,0,0,.045) !important;
    }

    .list-stack .app-item.ios-row {
        display: grid !important;
        grid-template-columns: 20px 52px minmax(0,1fr) 68px !important;
        align-items: center !important;
        min-height: 76px !important;
        gap: 10px !important;
        padding: 10px 12px !important;
        margin: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        border-bottom: 1px solid rgba(60,60,67,.08) !important;
        box-shadow: none !important;
    }

    .list-stack .app-item.ios-row:nth-child(odd) {
        border-right: 1px solid rgba(60,60,67,.08) !important;
    }

    .app-rank {
        width: 18px !important;
        font-size: 10.5px !important;
        font-weight: 850 !important;
        color: rgba(60,60,67,.45) !important;
        text-align: center !important;
    }

    .icon-box.ios-icon-wrap,
    .icon-box.ios-icon-wrap img {
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
        max-width: 52px !important;
        border-radius: 14px !important;
        margin: 0 !important;
    }

    .ios-info-box,
    .info-box {
        min-width: 0 !important;
        padding: 0 !important;
    }

    .ios-title-row {
        gap: 6px !important;
        min-width: 0 !important;
    }

    .app-title {
        margin: 0 !important;
        font-size: 14px !important;
        line-height: 1.12 !important;
        letter-spacing: -.02em !important;
        font-weight: 850 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .app-sub,
    .ios-meta-line {
        margin-top: 2px !important;
        font-size: 11.3px !important;
        line-height: 1.2 !important;
        color: rgba(60,60,67,.62) !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .ios-chip-row {
        margin-top: 4px !important;
        gap: 4px !important;
        max-height: 19px !important;
        overflow: hidden !important;
    }

    .ios-chip,
    .mini-badge,
    .detail-badge,
    #appList .ios-app-badge {
        min-height: 16px !important;
        padding: 3px 6px !important;
        border-radius: 999px !important;
        font-size: 8.8px !important;
        line-height: 1 !important;
        font-weight: 900 !important;
    }

    .ios-action-box {
        width: 68px !important;
        min-width: 68px !important;
        max-width: 68px !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .ios-get-note {
        max-width: 68px !important;
        font-size: 8.8px !important;
        line-height: 1.1 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .favorite-empty-note,
    .utility-card {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Páginas de parceiro em desktop */
    body.is-partner-store .store-header-actions,
    body.is-partner-list .store-header-actions {
        gap: 0 !important;
    }

    body.is-partner-store .store-user-chip,
    body.is-partner-list .store-user-chip,
    body.is-partner-store .partner-share-header-btn,
    body.is-partner-list .partner-share-header-btn {
        display: none !important;
    }

    body.is-partner-store .content#appList,
    body.is-partner-list .content#appList {
        padding-top: 0 !important;
    }

    body.is-partner-list .partners-page-shell {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 0 34px !important;
    }

    body.is-partner-list .partners-grid {
        display: grid !important;
        grid-template-columns: repeat(auto-fit, minmax(360px, 1fr)) !important;
        gap: 16px !important;
    }

    body.is-partner-list .partner-tile {
        min-height: 104px !important;
        padding: 16px !important;
        border-radius: 22px !important;
    }

    body.is-partner-list .partner-tile-logo {
        width: 68px !important;
        height: 68px !important;
        border-radius: 18px !important;
    }

    body.is-partner-list .partner-tile-copy h2 {
        font-size: 19px !important;
    }

    body.is-partner-list .partner-open-pill {
        height: 34px !important;
        min-width: 74px !important;
        padding: 0 14px !important;
        font-size: 12px !important;
    }

    /* Modal de detalhes mais adequado para notebook */
    .sheet {
        width: min(820px, calc(100vw - 56px)) !important;
        max-width: 820px !important;
        max-height: calc(100vh - 42px) !important;
        border-radius: 28px !important;
        overflow: hidden !important;
    }

    .sheet-content {
        width: 100% !important;
        max-width: 820px !important;
        max-height: calc(100vh - 66px) !important;
        padding-bottom: 24px !important;
    }

    .detail-top {
        gap: 18px !important;
        padding: 22px !important;
    }

    .detail-icon,
    .detail-icon-wrap {
        width: 104px !important;
        height: 104px !important;
        min-width: 104px !important;
        border-radius: 24px !important;
    }

    .detail-meta h2,
    .detail-title {
        font-size: 28px !important;
        line-height: 1.05 !important;
    }

    .preview-scroll,
    .rec-scroll-box {
        gap: 14px !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

@media screen and (min-width: 901px) and (max-width: 1180px) {
    :root { --pc-page: calc(100vw - 28px); }

    .ios-header { padding-top: 14px !important; }

    .page-title { font-size: 28px !important; }

    .ios-subtitle { font-size: 13px !important; }

    .desktop-nav { height: 44px !important; }

    .desktop-nav .tab,
    .desktop-nav-tab {
        min-width: 98px !important;
        height: 33px !important;
        padding: 0 12px !important;
    }

    .desktop-nav .tab span,
    .desktop-nav-tab span { font-size: 12px !important; }

    .collection-scroll,
    .today-shell .collection-scroll {
        grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)) !important;
        gap: 14px !important;
    }

    .collection-visual,
    .collection-card.small .collection-visual {
        height: 122px !important;
    }

    .list-stack {
        grid-template-columns: repeat(auto-fit, minmax(330px, 1fr)) !important;
    }

    .list-stack .app-item.ios-row:nth-child(odd) {
        border-right: 0 !important;
    }
}

@media screen and (min-width: 1500px) {
    .collection-scroll,
    .today-shell .collection-scroll {
        grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important;
    }

    .list-stack {
        grid-template-columns: repeat(auto-fit, minmax(390px, 1fr)) !important;
    }
}

/* Desktop lateral: menu limpo para PC/notebook. Não altera mobile. */
.desktop-menu-toggle,
.desktop-menu-backdrop,
.desktop-menu-close,
.desktop-menu-head,
.desktop-menu-section,
.desktop-device-menu {
    display: none;
}

@media screen and (min-width: 901px) {
    :root {
        --pc-page: calc(100vw - 56px);
        --pc-drawer-w: 348px;
    }

    body.desktop-menu-open {
        overflow: hidden !important;
    }

    .store-header-actions {
        gap: 9px !important;
    }

    .desktop-menu-toggle {
        appearance: none !important;
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        border-radius: 14px !important;
        background: rgba(255,255,255,.86) !important;
        color: #1d1d1f !important;
        display: inline-flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 4px !important;
        padding: 0 !important;
        cursor: pointer !important;
        box-shadow: 0 8px 22px rgba(0,0,0,.045), inset 0 1px 0 rgba(255,255,255,.75) !important;
        transition: transform .16s ease, box-shadow .16s ease, background .16s ease !important;
    }

    .desktop-menu-toggle:hover {
        transform: translateY(-1px) !important;
        background: #fff !important;
        box-shadow: 0 12px 28px rgba(0,0,0,.07), inset 0 1px 0 rgba(255,255,255,.85) !important;
    }

    .desktop-menu-toggle span {
        display: block !important;
        width: 18px !important;
        height: 2px !important;
        border-radius: 999px !important;
        background: currentColor !important;
        opacity: .82 !important;
    }

    .desktop-menu-backdrop {
        position: fixed !important;
        inset: 0 !important;
        z-index: 2990 !important;
        display: block !important;
        opacity: 0 !important;
        pointer-events: none !important;
        background: rgba(16, 18, 22, .22) !important;
        backdrop-filter: blur(2px) !important;
        -webkit-backdrop-filter: blur(2px) !important;
        transition: opacity .18s ease !important;
    }

    body.desktop-menu-open .desktop-menu-backdrop {
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    /* A antiga barra horizontal vira uma gaveta lateral. */
    .desktop-nav-wrap {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        left: auto !important;
        width: min(var(--pc-drawer-w), calc(100vw - 32px)) !important;
        max-width: min(var(--pc-drawer-w), calc(100vw - 32px)) !important;
        height: 100vh !important;
        margin: 0 !important;
        padding: 18px !important;
        z-index: 3000 !important;
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 18px !important;
        overflow: auto !important;
        transform: translateX(112%) !important;
        transition: transform .22s cubic-bezier(.2,.8,.2,1) !important;
        background: rgba(250,251,255,.96) !important;
        border-left: 1px solid rgba(60,60,67,.12) !important;
        border-radius: 24px 0 0 24px !important;
        box-shadow: -28px 0 80px rgba(0,0,0,.18) !important;
        backdrop-filter: blur(24px) saturate(170%) !important;
        -webkit-backdrop-filter: blur(24px) saturate(170%) !important;
        scrollbar-width: thin !important;
    }

    body.desktop-menu-open .desktop-nav-wrap {
        transform: translateX(0) !important;
    }

    .desktop-menu-head {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
        padding: 2px 2px 0 !important;
    }

    .desktop-menu-head strong {
        display: block !important;
        font-size: 24px !important;
        line-height: 1 !important;
        font-weight: 950 !important;
        letter-spacing: -.05em !important;
        color: #111114 !important;
    }

    .desktop-menu-head small {
        display: block !important;
        margin-top: 5px !important;
        max-width: 220px !important;
        color: rgba(60,60,67,.58) !important;
        font-size: 12px !important;
        font-weight: 750 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .desktop-menu-close {
        appearance: none !important;
        border: 0 !important;
        width: 38px !important;
        height: 38px !important;
        border-radius: 999px !important;
        background: rgba(118,118,128,.12) !important;
        color: rgba(60,60,67,.78) !important;
        display: inline-grid !important;
        place-items: center !important;
        font-size: 25px !important;
        line-height: 1 !important;
        font-weight: 700 !important;
        cursor: pointer !important;
    }

    .desktop-menu-section {
        display: block !important;
    }

    .desktop-menu-section-title {
        margin: 0 0 9px !important;
        padding: 0 4px !important;
        color: rgba(60,60,67,.48) !important;
        text-transform: uppercase !important;
        letter-spacing: .095em !important;
        font-size: 10.5px !important;
        line-height: 1 !important;
        font-weight: 950 !important;
    }

    .desktop-nav {
        height: auto !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        align-items: stretch !important;
        gap: 8px !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: visible !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

    .desktop-nav .tab,
    .desktop-nav-tab {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 46px !important;
        min-height: 46px !important;
        padding: 0 14px !important;
        justify-content: flex-start !important;
        border-radius: 15px !important;
        background: rgba(255,255,255,.74) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        color: rgba(60,60,67,.72) !important;
        box-shadow: 0 8px 20px rgba(0,0,0,.035), inset 0 1px 0 rgba(255,255,255,.7) !important;
    }

    .desktop-nav .tab:hover,
    .desktop-nav-tab:hover {
        color: #1d1d1f !important;
        background: #fff !important;
    }

    .desktop-nav .tab.active,
    .desktop-nav-tab.active {
        background: var(--pc-blue) !important;
        border-color: transparent !important;
        color: #fff !important;
        box-shadow: 0 14px 28px rgba(0,122,255,.25) !important;
    }

    .desktop-nav .tab span,
    .desktop-nav-tab span {
        max-width: 240px !important;
        font-size: 13px !important;
        font-weight: 900 !important;
    }

    .desktop-device-menu {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .desktop-device-menu .device-chip {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 40px !important;
        min-height: 40px !important;
        padding: 0 10px !important;
        border-radius: 14px !important;
        font-size: 12.5px !important;
        font-weight: 900 !important;
        background: rgba(255,255,255,.74) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 7px 18px rgba(0,0,0,.03), inset 0 1px 0 rgba(255,255,255,.7) !important;
    }

    .desktop-device-menu .device-chip.active {
        background: var(--pc-blue) !important;
        color: #fff !important;
        border-color: transparent !important;
        box-shadow: 0 12px 24px rgba(0,122,255,.22) !important;
    }

    /* Remove a poluição de botões no corpo do desktop. O filtro fica no menu lateral. */
    #appList .device-filter-wrap,
    .today-shell .device-filter-wrap,
    .result-head + .device-filter-wrap {
        display: none !important;
    }

    #appList.content,
    .content {
        padding-top: 20px !important;
    }
}

@media screen and (min-width: 901px) and (max-width: 1180px) {
    :root { --pc-page: calc(100vw - 32px); --pc-drawer-w: 330px; }
}

/* Desktop Apple-like refinado: limpo, amplo e sem afetar mobile */
@media screen and (min-width: 901px) {
    :root {
        --pc-page: min(1540px, calc(100vw - 56px));
        --pc-radius-lg: 28px;
        --pc-radius-md: 20px;
        --pc-surface: rgba(255,255,255,.82);
        --pc-surface-solid: #ffffff;
        --pc-line: rgba(60,60,67,.10);
        --pc-shadow-soft: 0 18px 54px rgba(15, 23, 42, .055);
        --pc-shadow-hover: 0 24px 70px rgba(15, 23, 42, .09);
    }

    html, body {
        min-height: 100% !important;
        background:
            radial-gradient(circle at 78% -10%, rgba(0,122,255,.075), transparent 34%),
            linear-gradient(180deg, #fbfbfd 0%, #f6f7fb 42%, #f5f7fb 100%) !important;
    }

    body {
        font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI", system-ui, sans-serif !important;
        color: #1d1d1f !important;
        letter-spacing: -.01em !important;
        padding-bottom: 34px !important;
    }

    .fixed-top {
        position: sticky !important;
        top: 0 !important;
        z-index: 850 !important;
        background: rgba(251,251,253,.82) !important;
        border-bottom: 1px solid rgba(60,60,67,.085) !important;
        box-shadow: 0 16px 40px rgba(15,23,42,.035) !important;
        backdrop-filter: blur(28px) saturate(180%) !important;
        -webkit-backdrop-filter: blur(28px) saturate(180%) !important;
    }

    .ios-header,
    .search-box,
    #skeletonLoader,
    #appList.content,
    .content {
        width: var(--pc-page) !important;
        max-width: var(--pc-page) !important;
    }

    .ios-header {
        min-height: 0 !important;
        padding: 20px 0 10px !important;
        gap: 18px !important;
    }

    .page-title {
        font-size: clamp(28px, 2.35vw, 42px) !important;
        line-height: .98 !important;
        letter-spacing: -.065em !important;
        font-weight: 950 !important;
    }

    .ios-subtitle {
        margin-top: 8px !important;
        max-width: 780px !important;
        font-size: clamp(13px, 1vw, 16px) !important;
        line-height: 1.32 !important;
        font-weight: 560 !important;
        color: rgba(60,60,67,.68) !important;
    }

    .store-header-actions {
        gap: 10px !important;
    }

    .store-user-chip,
    .desktop-menu-toggle,
    .store-avatar {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        border-radius: 16px !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        background: rgba(255,255,255,.76) !important;
        box-shadow: 0 10px 28px rgba(0,0,0,.045), inset 0 1px 0 rgba(255,255,255,.78) !important;
    }

    .store-user-chip {
        border-radius: 999px !important;
    }

    .store-user-chip-photo,
    .store-avatar img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    .search-box {
        padding: 0 0 18px !important;
    }

    .search-input,
    .search-box .search-input {
        height: 46px !important;
        min-height: 46px !important;
        border-radius: 17px !important;
        padding-left: 46px !important;
        padding-right: 18px !important;
        background: rgba(255,255,255,.84) !important;
        border: 1px solid rgba(60,60,67,.105) !important;
        box-shadow: 0 12px 34px rgba(15,23,42,.045), inset 0 1px 0 rgba(255,255,255,.78) !important;
        font-size: 14px !important;
        font-weight: 650 !important;
        color: #1d1d1f !important;
    }

    .search-input::placeholder {
        color: rgba(60,60,67,.42) !important;
        font-weight: 650 !important;
    }

    .search-icon {
        left: 17px !important;
        transform: translateY(calc(-50% - 9px)) !important;
    }

    #appList.content,
    .content {
        padding-top: clamp(30px, 3.2vw, 52px) !important;
        padding-bottom: 52px !important;
        gap: clamp(30px, 3.6vw, 56px) !important;
    }

    .today-shell {
        gap: clamp(34px, 3.4vw, 58px) !important;
    }

    .editorial-block,
    .list-block,
    .favorite-section {
        padding: 0 !important;
    }

    .editorial-head,
    .section-header,
    .list-head,
    .result-head {
        margin-bottom: 18px !important;
    }

    .collection-label,
    .today-kicker,
    .result-kicker,
    .editorial-kicker {
        font-size: 11px !important;
        letter-spacing: .12em !important;
        color: rgba(60,60,67,.46) !important;
        font-weight: 950 !important;
    }

    .collection-name,
    .editorial-title,
    .list-title,
    .result-title,
    .section-title {
        font-size: clamp(26px, 2vw, 34px) !important;
        line-height: 1.02 !important;
        letter-spacing: -.06em !important;
        font-weight: 950 !important;
    }

    .editorial-subtitle,
    .result-subtitle,
    .list-subtitle,
    .collection-desc {
        color: rgba(60,60,67,.62) !important;
        font-weight: 520 !important;
    }

    .list-count {
        display: none !important;
    }

    .collection-scroll,
    .today-shell .collection-scroll {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: clamp(18px, 1.6vw, 26px) !important;
    }

    .collection-card,
    .collection-card.small {
        border-radius: var(--pc-radius-lg) !important;
        background: rgba(255,255,255,.82) !important;
        border: 1px solid rgba(60,60,67,.095) !important;
        box-shadow: var(--pc-shadow-soft) !important;
        transition: transform .2s cubic-bezier(.2,.8,.2,1), box-shadow .2s cubic-bezier(.2,.8,.2,1) !important;
        isolation: isolate !important;
    }

    .collection-card:hover,
    .collection-card.small:hover {
        transform: translateY(-4px) !important;
        box-shadow: var(--pc-shadow-hover) !important;
    }

    .collection-visual,
    .collection-card.small .collection-visual {
        height: clamp(138px, 12vw, 192px) !important;
        min-height: 138px !important;
        border-radius: 0 !important;
    }

    .collection-content {
        padding: 16px 18px 17px !important;
    }

    .collection-content .collection-label {
        margin-bottom: 6px !important;
        font-size: 10.5px !important;
        color: #007aff !important;
    }

    .collection-card .collection-name {
        font-size: clamp(18px, 1.35vw, 23px) !important;
        line-height: 1.06 !important;
        letter-spacing: -.045em !important;
        -webkit-line-clamp: 1 !important;
    }

    .collection-card .collection-desc {
        margin-top: 7px !important;
        min-height: 36px !important;
        font-size: 13px !important;
        line-height: 1.36 !important;
        -webkit-line-clamp: 2 !important;
    }

    .collection-bottom {
        margin-top: 16px !important;
        padding-top: 0 !important;
    }

    .collection-mini img {
        width: 42px !important;
        height: 42px !important;
        border-radius: 12px !important;
    }

    .collection-mini-title {
        font-size: 13px !important;
        max-width: 150px !important;
    }

    .collection-mini-sub {
        font-size: 11px !important;
        color: rgba(60,60,67,.58) !important;
    }

    .collection-get,
    .today-get,
    .rec-get-btn,
    .get-btn,
    a.get-btn {
        min-width: 74px !important;
        height: 32px !important;
        min-height: 32px !important;
        border-radius: 999px !important;
        font-size: 12px !important;
        letter-spacing: -.01em !important;
        background: rgba(0,122,255,.10) !important;
        color: #007aff !important;
        box-shadow: none !important;
    }

    .collection-get:hover,
    .today-get:hover,
    .rec-get-btn:hover,
    .get-btn:hover,
    a.get-btn:hover {
        background: #007aff !important;
        color: #fff !important;
    }

    .list-stack {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(360px, 1fr)) !important;
        border-radius: var(--pc-radius-lg) !important;
        background: rgba(255,255,255,.70) !important;
        border: 1px solid rgba(60,60,67,.09) !important;
        box-shadow: var(--pc-shadow-soft) !important;
        overflow: hidden !important;
    }

    .list-stack .app-item.ios-row {
        min-height: 82px !important;
        grid-template-columns: 24px 54px minmax(0,1fr) 78px !important;
        gap: 12px !important;
        padding: 12px 16px !important;
        background: transparent !important;
        transition: background .14s ease !important;
    }

    .list-stack .app-item.ios-row:hover {
        background: rgba(255,255,255,.78) !important;
    }

    .app-rank {
        font-size: 11px !important;
    }

    .icon-box.ios-icon-wrap,
    .icon-box.ios-icon-wrap img {
        width: 54px !important;
        height: 54px !important;
        min-width: 54px !important;
        border-radius: 15px !important;
    }

    .app-title {
        font-size: 15px !important;
        font-weight: 900 !important;
    }

    .app-sub,
    .ios-meta-line {
        font-size: 11.8px !important;
    }

    .ios-chip-row {
        gap: 4px !important;
        max-height: 18px !important;
    }

    .ios-chip-row .ios-chip:nth-child(n+3),
    .ios-title-row .mini-badge:nth-of-type(n+3),
    .ios-title-row .ios-app-badge:nth-of-type(n+3) {
        display: none !important;
    }

    .ios-chip,
    .mini-badge,
    .detail-badge,
    #appList .ios-app-badge {
        font-size: 8.7px !important;
        letter-spacing: .02em !important;
        opacity: .86 !important;
    }

    .ios-action-box {
        width: 78px !important;
        min-width: 78px !important;
    }

    .ios-get-note {
        font-size: 9.2px !important;
        color: rgba(60,60,67,.48) !important;
    }

    .btn-favorite {
        width: 38px !important;
        height: 38px !important;
        font-size: 18px !important;
        background: rgba(255,255,255,.75) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
    }

    /* Drawer: vira uma central lateral com cara de painel de sistema. */
    .desktop-menu-backdrop {
        background: rgba(10, 12, 18, .22) !important;
        backdrop-filter: blur(7px) saturate(140%) !important;
        -webkit-backdrop-filter: blur(7px) saturate(140%) !important;
    }

    .desktop-nav-wrap {
        width: min(384px, calc(100vw - 38px)) !important;
        max-width: min(384px, calc(100vw - 38px)) !important;
        padding: 22px !important;
        gap: 18px !important;
        background: rgba(246,247,251,.92) !important;
        border-left: 1px solid rgba(60,60,67,.11) !important;
        border-radius: 32px 0 0 32px !important;
        box-shadow: -32px 0 90px rgba(0,0,0,.18) !important;
    }

    .desktop-menu-head strong {
        font-size: 26px !important;
        letter-spacing: -.06em !important;
    }

    .desktop-menu-close {
        background: rgba(118,118,128,.14) !important;
    }

    .desktop-account-card {
        display: grid !important;
        grid-template-columns: 52px minmax(0,1fr) 22px !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 14px !important;
        border-radius: 22px !important;
        background: rgba(255,255,255,.76) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 14px 40px rgba(15,23,42,.055), inset 0 1px 0 rgba(255,255,255,.78) !important;
        cursor: pointer !important;
    }

    .desktop-account-avatar {
        width: 52px !important;
        height: 52px !important;
        border-radius: 17px !important;
        background: linear-gradient(180deg, #fff, #eef3ff) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        display: grid !important;
        place-items: center !important;
        overflow: hidden !important;
    }

    .desktop-account-avatar img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    .desktop-account-avatar svg {
        width: 24px !important;
        height: 24px !important;
        fill: none !important;
        stroke: #1d1d1f !important;
        stroke-width: 2.2 !important;
        stroke-linecap: round !important;
    }

    .desktop-account-copy {
        min-width: 0 !important;
    }

    .desktop-account-copy strong {
        display: block !important;
        font-size: 15px !important;
        line-height: 1.15 !important;
        letter-spacing: -.03em !important;
        font-weight: 950 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .desktop-account-copy span {
        display: block !important;
        margin-top: 4px !important;
        font-size: 11.5px !important;
        line-height: 1.24 !important;
        color: rgba(60,60,67,.58) !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .desktop-account-arrow {
        color: rgba(60,60,67,.45) !important;
        font-size: 26px !important;
        line-height: 1 !important;
    }

    .desktop-quick-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 9px !important;
    }

    .desktop-quick-link {
        appearance: none !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        background: rgba(255,255,255,.72) !important;
        border-radius: 18px !important;
        min-height: 72px !important;
        padding: 12px !important;
        display: grid !important;
        grid-template-columns: 34px minmax(0, 1fr) auto !important;
        align-items: center !important;
        gap: 9px !important;
        color: #1d1d1f !important;
        text-decoration: none !important;
        text-align: left !important;
        font: inherit !important;
        cursor: pointer !important;
        box-shadow: 0 10px 26px rgba(15,23,42,.035), inset 0 1px 0 rgba(255,255,255,.72) !important;
    }

    .desktop-quick-link.wide {
        grid-column: span 2 !important;
        min-height: 56px !important;
    }

    .desktop-quick-icon {
        width: 34px !important;
        height: 34px !important;
        border-radius: 12px !important;
        display: grid !important;
        place-items: center !important;
        background: rgba(0,122,255,.10) !important;
        color: #007aff !important;
        font-size: 18px !important;
        line-height: 1 !important;
        font-weight: 950 !important;
    }

    .desktop-quick-link span:not(.desktop-quick-icon) {
        min-width: 0 !important;
        font-size: 12.5px !important;
        line-height: 1.12 !important;
        letter-spacing: -.02em !important;
        font-weight: 900 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .desktop-quick-link small {
        min-width: 22px !important;
        height: 22px !important;
        padding: 0 7px !important;
        border-radius: 999px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: rgba(118,118,128,.12) !important;
        color: rgba(60,60,67,.66) !important;
        font-size: 10.5px !important;
        line-height: 1 !important;
        font-weight: 900 !important;
    }

    .desktop-menu-section-title {
        padding-left: 2px !important;
        margin-bottom: 10px !important;
    }

    .desktop-nav,
    .desktop-device-menu {
        gap: 9px !important;
    }

    .desktop-nav .tab,
    .desktop-nav-tab,
    .desktop-device-menu .device-chip {
        height: 45px !important;
        min-height: 45px !important;
        border-radius: 16px !important;
        background: rgba(255,255,255,.70) !important;
        border-color: rgba(60,60,67,.095) !important;
        box-shadow: 0 9px 22px rgba(15,23,42,.032), inset 0 1px 0 rgba(255,255,255,.72) !important;
    }

    .desktop-nav .tab.active,
    .desktop-nav-tab.active,
    .desktop-device-menu .device-chip.active {
        background: #007aff !important;
        color: #fff !important;
        box-shadow: 0 16px 32px rgba(0,122,255,.24) !important;
    }

    /* Partner pages remain clean: logo is identity only. */
    body.is-partner-store .desktop-user-menu-section,
    body.is-partner-list .desktop-user-menu-section,
    body.is-partner-store .desktop-account-card,
    body.is-partner-list .desktop-account-card {
        display: none !important;
    }
}

@media screen and (min-width: 901px) and (max-width: 1220px) {
    :root { --pc-page: calc(100vw - 36px); }

    .ios-header { padding-top: 16px !important; }
    .page-title { font-size: 31px !important; }
    .ios-subtitle { font-size: 13.5px !important; max-width: 720px !important; }
    .search-box { padding-bottom: 14px !important; }

    #appList.content,
    .content {
        padding-top: 30px !important;
    }

    .today-shell {
        gap: 34px !important;
    }

    .collection-scroll,
    .today-shell .collection-scroll {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }

    .collection-visual,
    .collection-card.small .collection-visual {
        height: 136px !important;
    }

    .collection-content {
        padding: 14px 15px 15px !important;
    }

    .collection-card .collection-name {
        font-size: 19px !important;
    }

    .list-stack {
        grid-template-columns: 1fr 1fr !important;
    }

    .list-stack .app-item.ios-row {
        min-height: 76px !important;
        grid-template-columns: 20px 50px minmax(0,1fr) 72px !important;
        padding: 10px 12px !important;
    }

    .icon-box.ios-icon-wrap,
    .icon-box.ios-icon-wrap img {
        width: 50px !important;
        height: 50px !important;
        min-width: 50px !important;
    }

    .app-title { font-size: 14px !important; }
}

@media screen and (min-width: 901px) and (max-height: 760px) {
    .ios-header { padding-top: 12px !important; padding-bottom: 7px !important; }
    .page-title { font-size: 28px !important; }
    .ios-subtitle { margin-top: 4px !important; font-size: 12.8px !important; }
    .search-input, .search-box .search-input { height: 40px !important; min-height: 40px !important; }
    .search-box { padding-bottom: 12px !important; }
    #appList.content, .content { padding-top: 24px !important; }
    .collection-scroll, .today-shell .collection-scroll { gap: 16px !important; }
    .collection-visual, .collection-card.small .collection-visual { height: 122px !important; }
    .collection-content { padding: 12px 14px 14px !important; }
    .collection-card .collection-desc { min-height: 32px !important; }
}

/* Desktop: logo da loja ao lado do nome, sem duplicar a logo no canto direito. */
.desktop-brand-line,
.desktop-brand-logo {
    display: none;
}

@media screen and (min-width: 901px) {
    .desktop-brand-line {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .desktop-brand-logo {
        appearance: none !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        width: 48px !important;
        height: 48px !important;
        min-width: 48px !important;
        flex: 0 0 48px !important;
        border-radius: 16px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: hidden !important;
        padding: 0 !important;
        background: rgba(255,255,255,.82) !important;
        box-shadow: 0 10px 28px rgba(15,23,42,.055), inset 0 1px 0 rgba(255,255,255,.78) !important;
        color: #111114 !important;
        font-size: 18px !important;
        font-weight: 950 !important;
        text-decoration: none !important;
    }

    .desktop-brand-logo.is-clickable {
        cursor: pointer !important;
    }

    .desktop-brand-logo.is-clickable:hover {
        transform: translateY(-1px) !important;
        box-shadow: 0 14px 34px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.88) !important;
    }

    .desktop-brand-logo img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
    }

    .desktop-brand-logo span {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
    }

    .desktop-brand-line .page-title {
        min-width: 0 !important;
        max-width: none !important;
    }

    .store-header-actions .store-avatar {
        display: none !important;
    }
}

@media screen and (max-width: 900px) {
    .desktop-brand-line {
        display: block !important;
    }

    .desktop-brand-logo {
        display: none !important;
    }
}

/* Partner route + desktop final polish.
   Only desktop is affected. Mobile keeps the original layout. */
@media screen and (min-width: 901px) {
    body.is-partner-store,
    body.is-partner-list {
        background: linear-gradient(180deg, #fbfbfd 0%, #f5f7fb 330px, #f5f7fb 100%) !important;
    }

    body.is-partner-store .fixed-top,
    body.is-partner-list .fixed-top {
        min-height: 0 !important;
    }

    body.is-partner-store .ios-header,
    body.is-partner-list .ios-header {
        padding-top: 16px !important;
        padding-bottom: 8px !important;
        align-items: center !important;
    }

    body.is-partner-store .desktop-brand-logo,
    body.is-partner-list .desktop-brand-logo {
        width: 52px !important;
        height: 52px !important;
        min-width: 52px !important;
        flex-basis: 52px !important;
        border-radius: 17px !important;
    }

    body.is-partner-store .page-title,
    body.is-partner-list .page-title {
        font-size: clamp(28px, 2.1vw, 38px) !important;
        letter-spacing: -.06em !important;
    }

    body.is-partner-store .ios-subtitle,
    body.is-partner-list .ios-subtitle {
        max-width: 980px !important;
        font-size: 14px !important;
        color: rgba(60,60,67,.66) !important;
    }

    body.is-partner-store .search-box,
    body.is-partner-list .search-box {
        padding-bottom: 18px !important;
    }

    body.is-partner-store #appList.content,
    body.is-partner-list #appList.content {
        padding-top: 28px !important;
        gap: 28px !important;
    }

    body.is-partner-store .today-shell {
        gap: 28px !important;
    }

    body.is-partner-store .editorial-head,
    body.is-partner-store .list-head,
    body.is-partner-list .partners-headline {
        padding-left: 2px !important;
        padding-right: 2px !important;
    }

    body.is-partner-store .editorial-kicker,
    body.is-partner-store .collection-label,
    body.is-partner-list .result-kicker {
        color: rgba(60,60,67,.44) !important;
    }

    body.is-partner-store .collection-scroll,
    body.is-partner-store .today-shell .collection-scroll {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 18px !important;
        overflow: visible !important;
        padding: 0 !important;
    }

    body.is-partner-store .collection-card,
    body.is-partner-store .collection-card.small {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        flex: 0 1 auto !important;
    }

    body.is-partner-store .list-stack {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        border-radius: 24px !important;
        background: rgba(255,255,255,.78) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 18px 48px rgba(15,23,42,.055) !important;
        overflow: hidden !important;
    }

    body.is-partner-store .app-item.ios-row {
        min-height: 96px !important;
        border-right: 1px solid rgba(60,60,67,.08) !important;
    }

    body.is-partner-store .app-item.ios-row:nth-child(2n) {
        border-right: 0 !important;
    }

    body.is-partner-store .favorite-section,
    body.is-partner-store .recent-block,
    body.is-partner-store .smart-home-strip {
        display: none !important;
    }

    body.is-partner-list .partners-page-shell {
        padding-top: 0 !important;
        padding-bottom: 44px !important;
    }

    body.is-partner-list .partners-headline {
        display: flex !important;
        margin-bottom: 18px !important;
    }

    body.is-partner-list .partners-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }

    body.is-partner-list .partner-tile {
        min-height: 132px !important;
        grid-template-columns: 78px minmax(0,1fr) !important;
        align-items: center !important;
        gap: 16px !important;
        padding: 20px !important;
        border-radius: 28px !important;
        background: rgba(255,255,255,.82) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 18px 48px rgba(15,23,42,.055), inset 0 1px 0 rgba(255,255,255,.74) !important;
    }

    body.is-partner-list .partner-tile-logo {
        width: 78px !important;
        height: 78px !important;
        min-width: 78px !important;
        border-radius: 23px !important;
    }

    body.is-partner-list .partner-open-pill {
        grid-column: 2 !important;
        justify-self: start !important;
        margin-top: 10px !important;
        min-width: 92px !important;
        height: 34px !important;
    }

    body.is-partner-store .desktop-nav-wrap,
    body.is-partner-list .desktop-nav-wrap {
        z-index: 1200 !important;
    }

    body.is-partner-store .desktop-partner-menu-card,
    body.is-partner-list .desktop-partner-menu-card,
    body.is-partner-store .desktop-partner-shortcuts,
    body.is-partner-list .desktop-partner-shortcuts {
        display: block !important;
    }
}

@media screen and (min-width: 901px) and (max-width: 1250px) {
    body.is-partner-store .collection-scroll,
    body.is-partner-store .today-shell .collection-scroll {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
    body.is-partner-store .list-stack {
        grid-template-columns: 1fr !important;
    }
    body.is-partner-store .app-item.ios-row,
    body.is-partner-store .app-item.ios-row:nth-child(2n) {
        border-right: 0 !important;
    }
    body.is-partner-list .partners-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media screen and (min-width: 901px) and (max-width: 1040px) {
    body.is-partner-store .collection-scroll,
    body.is-partner-store .today-shell .collection-scroll {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    body.is-partner-list .partners-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Patch 2026-07-01: menu desktop sem blur na frente e com prioridade correta. Só afeta PC. */
@media screen and (min-width: 901px) {
    body.desktop-menu-open {
        overflow: hidden !important;
    }

    .desktop-menu-backdrop,
    body.desktop-menu-open .desktop-menu-backdrop {
        z-index: 9800 !important;
        background: rgba(15, 17, 24, .08) !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        filter: none !important;
    }

    body.desktop-menu-open .desktop-menu-backdrop {
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    .desktop-nav-wrap {
        z-index: 9900 !important;
        isolation: isolate !important;
        visibility: visible !important;
        opacity: 1 !important;
        filter: none !important;
        backdrop-filter: blur(18px) saturate(160%) !important;
        -webkit-backdrop-filter: blur(18px) saturate(160%) !important;
    }

    body.desktop-menu-open .desktop-nav-wrap {
        transform: translateX(0) !important;
        pointer-events: auto !important;
    }

    /* Em páginas de parceiros e /lojas, evita que a antiga navegação mobile vaze no desktop. */
    .mobile-nav,
    .bottom-nav,
    .ios-tabbar,
    .tabbar {
        display: none !important;
    }

    /* Respiração extra em páginas de parceiros no desktop sem alterar mobile. */
    body.partner-page .content,
    body.partner-page #appList.content,
    body.partner-page .partner-store-page,
    body.partner-page .stores-page,
    body.partner-page .ios-section,
    body.partner-page .collection-section {
        max-width: min(1540px, calc(100vw - 56px)) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media screen and (min-width: 901px) {
    body.is-partner-store .content,
    body.is-partner-store #appList.content,
    body.is-partner-store .partner-store-page,
    body.is-partner-store .ios-section,
    body.is-partner-store .collection-section,
    body.is-partner-list .content,
    body.is-partner-list #appList.content,
    body.is-partner-list .stores-page,
    body.is-partner-list .ios-section,
    body.is-partner-list .collection-section {
        max-width: min(1540px, calc(100vw - 56px)) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* Patch 2026-07-01: detalhes do app em modo desktop profissional. Mobile permanece intacto. */
@media screen and (min-width: 901px) {
    body.sheet-open {
        overflow: hidden !important;
        padding-right: 0 !important;
    }

    .sheet-overlay#overlay {
        position: fixed !important;
        inset: 0 !important;
        z-index: 8500 !important;
        background: radial-gradient(circle at 20% 10%, rgba(0,122,255,.10), transparent 30%), rgba(244,246,250,.74) !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        filter: none !important;
    }

    .sheet#sheet,
    body.sheet-open .sheet#sheet {
        position: fixed !important;
        left: 50% !important;
        top: 50% !important;
        right: auto !important;
        bottom: auto !important;
        width: min(1180px, calc(100vw - 64px)) !important;
        height: min(760px, calc(100vh - 54px)) !important;
        max-width: none !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 34px !important;
        background: rgba(255,255,255,.94) !important;
        border: 1px solid rgba(60,60,67,.12) !important;
        box-shadow: 0 42px 120px rgba(15,23,42,.24), inset 0 1px 0 rgba(255,255,255,.72) !important;
        overflow: hidden !important;
        z-index: 8600 !important;
        opacity: 0 !important;
        transform: translate(-50%, -47%) scale(.982) !important;
        transition: transform .24s cubic-bezier(.2,.8,.2,1), opacity .2s ease !important;
        backdrop-filter: blur(24px) saturate(160%) !important;
        -webkit-backdrop-filter: blur(24px) saturate(160%) !important;
    }

    .sheet#sheet.show,
    body.sheet-open .sheet#sheet.show {
        opacity: 1 !important;
        transform: translate(-50%, -50%) scale(1) !important;
    }

    .sheet#sheet .sheet-handle-bar,
    .sheet#sheet .sheet-handle {
        display: none !important;
    }

    .sheet#sheet .sheet-content,
    .sheet#sheet #sheetInner {
        width: 100% !important;
        max-width: none !important;
        height: 100% !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior: contain !important;
        background:
            linear-gradient(180deg, rgba(251,251,253,.98) 0%, rgba(255,255,255,.96) 250px, rgba(246,247,250,.98) 100%) !important;
        scrollbar-width: thin !important;
        scrollbar-color: rgba(60,60,67,.28) transparent !important;
    }

    .sheet#sheet #sheetInner::-webkit-scrollbar {
        width: 9px !important;
    }

    .sheet#sheet #sheetInner::-webkit-scrollbar-track {
        background: transparent !important;
    }

    .sheet#sheet #sheetInner::-webkit-scrollbar-thumb {
        border-radius: 999px !important;
        background: rgba(60,60,67,.26) !important;
        border: 2px solid rgba(255,255,255,.78) !important;
    }

    .sheet#sheet .sheet-close-btn {
        position: sticky !important;
        top: 18px !important;
        float: right !important;
        right: 0 !important;
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        margin: 18px 22px -56px auto !important;
        border-radius: 999px !important;
        background: rgba(242,242,247,.88) !important;
        color: #007aff !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 10px 28px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.88) !important;
        z-index: 5 !important;
        backdrop-filter: blur(16px) saturate(160%) !important;
        -webkit-backdrop-filter: blur(16px) saturate(160%) !important;
    }

    .sheet#sheet .sheet-close-btn svg {
        width: 18px !important;
        height: 18px !important;
    }

    .sheet#sheet .detail-top {
        display: grid !important;
        grid-template-columns: 138px minmax(0,1fr) !important;
        gap: 28px !important;
        align-items: center !important;
        padding: 44px 58px 30px !important;
        margin: 0 !important;
        min-height: 190px !important;
        background:
            radial-gradient(circle at 88% 8%, rgba(0,122,255,.10), transparent 32%),
            linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,249,252,.76)) !important;
        border-bottom: 1px solid rgba(60,60,67,.10) !important;
    }

    .sheet#sheet .detail-icon {
        width: 128px !important;
        height: 128px !important;
        min-width: 128px !important;
        flex-basis: 128px !important;
        border-radius: 28px !important;
        object-fit: cover !important;
        box-shadow: 0 22px 55px rgba(15,23,42,.14), inset 0 1px 0 rgba(255,255,255,.65) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        background: #fff !important;
    }

    .sheet#sheet .detail-meta {
        min-width: 0 !important;
        padding-right: 54px !important;
        display: grid !important;
        gap: 8px !important;
    }

    .sheet#sheet .detail-badge-row {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
        margin: 0 0 2px !important;
        max-height: 58px !important;
        overflow: hidden !important;
    }

    .sheet#sheet .detail-badge,
    .sheet#sheet .ios-chip {
        min-height: 22px !important;
        height: 22px !important;
        border-radius: 999px !important;
        padding: 0 9px !important;
        font-size: 10.5px !important;
        line-height: 22px !important;
        font-weight: 850 !important;
        letter-spacing: .01em !important;
    }

    .sheet#sheet .detail-meta h2 {
        max-width: 720px !important;
        margin: 0 !important;
        font-size: clamp(34px, 3vw, 54px) !important;
        line-height: .96 !important;
        letter-spacing: -.065em !important;
        font-weight: 950 !important;
        color: #111114 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .sheet#sheet .detail-meta p {
        margin: 0 !important;
        color: rgba(60,60,67,.70) !important;
        font-size: 16px !important;
        line-height: 1.28 !important;
        font-weight: 650 !important;
    }

    .sheet#sheet .detail-note {
        margin: 0 !important;
        color: rgba(60,60,67,.60) !important;
        font-size: 13px !important;
        line-height: 1.3 !important;
        font-weight: 650 !important;
    }

    .sheet#sheet .detail-actions {
        display: flex !important;
        align-items: center !important;
        flex-wrap: wrap !important;
        gap: 10px !important;
        margin: 12px 0 0 !important;
    }

    .sheet#sheet .btn-install {
        width: auto !important;
        min-width: 142px !important;
        height: 42px !important;
        min-height: 42px !important;
        padding: 0 28px !important;
        border-radius: 999px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #007aff !important;
        color: #fff !important;
        font-size: 16px !important;
        font-weight: 900 !important;
        letter-spacing: -.02em !important;
        box-shadow: 0 12px 28px rgba(0,122,255,.24) !important;
    }

    .sheet#sheet .btn-share,
    .sheet#sheet .btn-favorite {
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        border-radius: 999px !important;
        background: rgba(118,118,128,.12) !important;
        color: #007aff !important;
        border: 1px solid rgba(60,60,67,.08) !important;
        box-shadow: none !important;
    }

    .sheet#sheet .btn-favorite.active {
        color: #ff2d55 !important;
        background: rgba(255,45,85,.11) !important;
    }

    .sheet#sheet .meta-grid {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 0 !important;
        margin: 22px 58px 26px !important;
        padding: 0 !important;
        border-radius: 24px !important;
        overflow: hidden !important;
        background: rgba(255,255,255,.84) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 18px 48px rgba(15,23,42,.055) !important;
    }

    .sheet#sheet .meta-item {
        min-height: 90px !important;
        padding: 17px 18px !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        border: 0 !important;
        border-right: 1px solid rgba(60,60,67,.10) !important;
    }

    .sheet#sheet .meta-item:last-child {
        border-right: 0 !important;
    }

    .sheet#sheet .meta-label {
        margin: 0 !important;
        font-size: 10px !important;
        line-height: 1.15 !important;
        font-weight: 850 !important;
        letter-spacing: .08em !important;
        color: rgba(60,60,67,.50) !important;
        text-transform: uppercase !important;
    }

    .sheet#sheet .meta-val {
        margin: 6px 0 5px !important;
        font-size: 25px !important;
        line-height: 1 !important;
        letter-spacing: -.045em !important;
        font-weight: 920 !important;
        color: #1d1d1f !important;
    }

    .sheet#sheet .preview-section,
    .sheet#sheet .rec-container,
    .sheet#sheet .utility-card,
    .sheet#sheet .rating-summary,
    .sheet#sheet .ratings-summary-card,
    .sheet#sheet .reviews-apple-scroll,
    .sheet#sheet .preview-empty,
    .sheet#sheet .desc-text,
    .sheet#sheet #commentsContainer,
    .sheet#sheet .section-sep,
    .sheet#sheet > .sheet-content > div,
    .sheet#sheet #sheetInner > div[style*="background:rgba(255,255,255,.86)"],
    .sheet#sheet #sheetInner > div[style*="background:rgba(255,255,255,.88)"] {
        margin-left: 58px !important;
        margin-right: 58px !important;
    }

    .sheet#sheet #sheetInner > div[style*="background:rgba(255,255,255,.86)"],
    .sheet#sheet #sheetInner > div[style*="background:rgba(255,255,255,.88)"] {
        border-radius: 22px !important;
        padding: 20px 22px !important;
        box-shadow: 0 14px 38px rgba(15,23,42,.05) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
    }

    .sheet#sheet .preview-section {
        margin-top: 4px !important;
        margin-bottom: 28px !important;
    }

    .sheet#sheet .preview-head,
    .sheet#sheet .avaliações-header {
        display: flex !important;
        align-items: flex-end !important;
        justify-content: space-between !important;
        gap: 14px !important;
        padding: 0 !important;
        margin: 0 0 14px !important;
    }

    .sheet#sheet .preview-title,
    .sheet#sheet .rec-head,
    .sheet#sheet .utility-title,
    .sheet#sheet .rating-title,
    .sheet#sheet .avaliações-header h3 {
        margin: 0 !important;
        color: #1d1d1f !important;
        font-size: 24px !important;
        line-height: 1.05 !important;
        letter-spacing: -.05em !important;
        font-weight: 920 !important;
    }

    .sheet#sheet .preview-count {
        color: rgba(60,60,67,.50) !important;
        font-size: 12px !important;
        font-weight: 800 !important;
    }

    .sheet#sheet .preview-scroll {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: minmax(260px, 34%) !important;
        gap: 14px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding: 2px 2px 12px !important;
        margin: 0 !important;
        scroll-snap-type: x proximity !important;
    }

    .sheet#sheet .preview-card {
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        height: 430px !important;
        border-radius: 24px !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 18px 46px rgba(15,23,42,.085) !important;
        background: #fff !important;
        scroll-snap-align: start !important;
    }

    .sheet#sheet .preview-card.landscape,
    .sheet#sheet .preview-card.is-landscape {
        height: 260px !important;
        grid-column: auto !important;
        border-radius: 24px !important;
    }

    .sheet#sheet .preview-card img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        border-radius: inherit !important;
    }

    .sheet#sheet .desc-text {
        max-width: none !important;
        margin-top: 4px !important;
        margin-bottom: 24px !important;
        padding: 24px 26px !important;
        border-radius: 24px !important;
        background: rgba(255,255,255,.84) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 18px 48px rgba(15,23,42,.055) !important;
        color: rgba(29,29,31,.86) !important;
        font-size: 16px !important;
        line-height: 1.58 !important;
        font-weight: 500 !important;
    }

    .sheet#sheet .utility-card {
        padding: 22px 24px !important;
        margin-top: 0 !important;
        margin-bottom: 26px !important;
        border-radius: 24px !important;
        background: rgba(255,255,255,.84) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 18px 48px rgba(15,23,42,.055) !important;
    }

    .sheet#sheet .utility-sub {
        margin: 7px 0 16px !important;
        color: rgba(60,60,67,.64) !important;
        font-size: 14px !important;
        font-weight: 600 !important;
    }

    .sheet#sheet .utility-actions {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 10px !important;
    }

    .sheet#sheet .utility-btn {
        height: 36px !important;
        border-radius: 999px !important;
        padding: 0 16px !important;
        border: 0 !important;
        background: rgba(118,118,128,.10) !important;
        color: #007aff !important;
        font-size: 13px !important;
        font-weight: 850 !important;
    }

    .sheet#sheet .utility-btn.red {
        background: rgba(255,59,48,.10) !important;
        color: #ff3b30 !important;
    }

    .sheet#sheet .section-sep {
        height: 1px !important;
        margin-top: 4px !important;
        margin-bottom: 26px !important;
        background: rgba(60,60,67,.12) !important;
        border: 0 !important;
    }

    .sheet#sheet .rec-container {
        margin-top: 0 !important;
        margin-bottom: 28px !important;
    }

    .sheet#sheet .rec-head {
        margin-bottom: 14px !important;
    }

    .sheet#sheet .rec-scroll-box {
        display: grid !important;
        grid-auto-flow: column !important;
        grid-auto-columns: 190px !important;
        gap: 14px !important;
        overflow-x: auto !important;
        padding: 2px 2px 12px !important;
        margin: 0 !important;
    }

    .sheet#sheet .rec-card {
        width: 190px !important;
        min-width: 190px !important;
        height: auto !important;
        min-height: 258px !important;
        display: grid !important;
        grid-template-rows: 128px minmax(58px, auto) 38px !important;
        gap: 10px !important;
        padding: 14px !important;
        border-radius: 24px !important;
        background: rgba(255,255,255,.86) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 14px 36px rgba(15,23,42,.06) !important;
    }

    .sheet#sheet .rec-img {
        width: 128px !important;
        height: 128px !important;
        border-radius: 26px !important;
        justify-self: center !important;
        object-fit: cover !important;
    }

    .sheet#sheet .rec-t {
        font-size: 15px !important;
        line-height: 1.12 !important;
        max-height: 34px !important;
        overflow: hidden !important;
        font-weight: 850 !important;
        letter-spacing: -.025em !important;
    }

    .sheet#sheet .rec-cat-tiny {
        margin-top: 4px !important;
        font-size: 12px !important;
        color: rgba(60,60,67,.58) !important;
    }

    .sheet#sheet .rec-get-btn {
        height: 34px !important;
        border-radius: 999px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: rgba(0,122,255,.10) !important;
        color: #007aff !important;
        font-weight: 900 !important;
        text-decoration: none !important;
    }

    .sheet#sheet .rating-summary,
    .sheet#sheet .ratings-summary-card,
    .sheet#sheet #commentsContainer {
        margin-top: 0 !important;
        margin-bottom: 24px !important;
    }

    .sheet#sheet .rev-card,
    .sheet#sheet .apple-review {
        margin-left: 0 !important;
        margin-right: 0 !important;
        border-radius: 22px !important;
        background: rgba(255,255,255,.86) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 12px 30px rgba(15,23,42,.045) !important;
    }

    .sheet#sheet #sheetInner > div:last-child[style*="height:60px"] {
        height: 34px !important;
    }

    .sheet#sheet .preview-empty {
        padding: 22px 24px !important;
        border-radius: 24px !important;
        background: rgba(255,255,255,.84) !important;
        border: 1px solid rgba(60,60,67,.10) !important;
        box-shadow: 0 18px 48px rgba(15,23,42,.055) !important;
        color: rgba(60,60,67,.62) !important;
        font-size: 14px !important;
        font-weight: 700 !important;
    }
}

@media screen and (min-width: 901px) and (max-width: 1180px) {
    .sheet#sheet,
    body.sheet-open .sheet#sheet {
        width: calc(100vw - 36px) !important;
        height: calc(100vh - 36px) !important;
        border-radius: 28px !important;
    }

    .sheet#sheet .detail-top {
        grid-template-columns: 104px minmax(0,1fr) !important;
        gap: 22px !important;
        padding: 36px 38px 24px !important;
    }

    .sheet#sheet .detail-icon {
        width: 104px !important;
        height: 104px !important;
        min-width: 104px !important;
        flex-basis: 104px !important;
        border-radius: 24px !important;
    }

    .sheet#sheet .detail-meta h2 {
        font-size: clamp(30px, 4vw, 42px) !important;
    }

    .sheet#sheet .meta-grid,
    .sheet#sheet .preview-section,
    .sheet#sheet .rec-container,
    .sheet#sheet .utility-card,
    .sheet#sheet .rating-summary,
    .sheet#sheet .ratings-summary-card,
    .sheet#sheet .reviews-apple-scroll,
    .sheet#sheet .preview-empty,
    .sheet#sheet .desc-text,
    .sheet#sheet #commentsContainer,
    .sheet#sheet .section-sep,
    .sheet#sheet #sheetInner > div[style*="background:rgba(255,255,255,.86)"],
    .sheet#sheet #sheetInner > div[style*="background:rgba(255,255,255,.88)"] {
        margin-left: 38px !important;
        margin-right: 38px !important;
    }

    .sheet#sheet .preview-scroll {
        grid-auto-columns: minmax(250px, 42%) !important;
    }
}

@media screen and (min-width: 901px) and (max-height: 720px) {
    .sheet#sheet,
    body.sheet-open .sheet#sheet {
        height: calc(100vh - 28px) !important;
    }

    .sheet#sheet .detail-top {
        min-height: 0 !important;
        padding-top: 30px !important;
        padding-bottom: 22px !important;
    }

    .sheet#sheet .detail-icon {
        width: 96px !important;
        height: 96px !important;
        min-width: 96px !important;
        flex-basis: 96px !important;
        border-radius: 22px !important;
    }

    .sheet#sheet .meta-grid {
        margin-top: 18px !important;
        margin-bottom: 20px !important;
    }

    .sheet#sheet .preview-card {
        height: 350px !important;
    }

    .sheet#sheet .preview-card.landscape,
    .sheet#sheet .preview-card.is-landscape {
        height: 220px !important;
    }
}


/* Final fix 2026-07-01: clique destravado + drawer desktop estável. Só desktop. */
@media screen and (min-width: 901px) {
    body:not(.desktop-menu-open) .desktop-menu-backdrop {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        background: transparent !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        filter: none !important;
    }

    body.desktop-menu-open .desktop-menu-backdrop {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        background: rgba(15, 17, 24, .10) !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        filter: none !important;
        z-index: 9800 !important;
    }

    body:not(.desktop-menu-open) .desktop-nav-wrap {
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateX(112%) !important;
    }

    body.desktop-menu-open .desktop-nav-wrap {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateX(0) !important;
        z-index: 9900 !important;
    }

    /* Se um detalhe foi fechado, nada invisível pode bloquear a página. */
    body:not(.sheet-open) .sheet-overlay#overlay {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        filter: none !important;
    }

    body.sheet-open .sheet-overlay#overlay {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        background: rgba(246, 247, 250, .72) !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        filter: none !important;
    }

    body:not(.sheet-open) .sheet#sheet {
        pointer-events: none !important;
        visibility: hidden !important;
    }

    body.sheet-open .sheet#sheet {
        pointer-events: auto !important;
        visibility: visible !important;
    }
}
