        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Roboto', 'Google Sans', Arial, sans-serif;
            background: #fff;
            color: #202124;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            overflow-x: hidden;
            padding-bottom: 56px;
        }

        /* ===== HEADER ===== */
        .gp-header {
            position: sticky;
            top: 0;
            z-index: 100;
            background: #fff;
            display: flex;
            align-items: center;
            padding: 8px 16px;
            height: 56px;
            border-bottom: 1px solid #e0e0e0;
        }

        .gp-header__logo {
            display: flex;
            align-items: center;
            gap: 8px;
            text-decoration: none;
            flex-shrink: 0;
        }

        .gp-header__logo img.gp-logo {
            width: 40px;
            height: 40px;
        }

        .gp-header__logo svg {
            width: 40px;
            height: 40px;
        }

        .gp-header__logo-text {
            font-family: 'Google Sans', sans-serif;
            font-size: 22px;
            color: #5f6368;
            font-weight: 400;
        }

        .gp-header__logo-text span {
            color: #5f6368;
        }

        .gp-header__actions {
            margin-left: auto;
            display: flex;
            align-items: center;
            gap: 4px;
        }

        .gp-header__btn {
            width: 40px;
            height: 40px;
            border-radius: 50%;
            border: none;
            background: transparent;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #5f6368;
            transition: background 0.2s;
        }

        .gp-header__btn:hover {
            background: rgba(0,0,0,0.06);
        }

        .gp-header__avatar {
            width: 32px;
            height: 32px;
            border-radius: 50%;
            background: #1a73e8;
            color: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
            font-weight: 500;
            cursor: pointer;
        }



        /* ===== APP INFO ===== */
        .app-info {
            padding: 24px 24px 0;
            display: flex;
            gap: 24px;
        }

        .app-info__icon {
            width: 72px;
            height: 72px;
            border-radius: 20%;
            overflow: hidden;
            flex-shrink: 0;
            box-shadow: 0 1px 2px rgba(0,0,0,0.1), 0 1px 3px rgba(0,0,0,0.08);
        }

        .app-info__icon img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .app-info__details {
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .app-info__name {
            font-family: 'Google Sans', sans-serif;
            font-size: 24px;
            font-weight: 500;
            color: #202124;
            line-height: 1.2;
        }

        .app-info__developer {
            color: #01875f;
            font-size: 14px;
            font-weight: 500;
            text-decoration: none;
            margin-top: 4px;
        }

        .app-info__developer:hover {
            text-decoration: underline;
        }

        .app-info__contains {
            color: #5f6368;
            font-size: 12px;
            margin-top: 4px;
        }

        /* ===== STATS BAR ===== */
        .stats-bar {
            display: flex;
            align-items: center;
            padding: 16px 24px;
            gap: 0;
            overflow-x: auto;
            scrollbar-width: none;
        }

        .stats-bar::-webkit-scrollbar {
            display: none;
        }

        .stat-item {
            flex: 1;
            min-width: 80px;
            text-align: center;
            padding: 8px 12px;
            position: relative;
        }

        .stat-item:not(:last-child)::after {
            content: '';
            position: absolute;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            width: 1px;
            height: 24px;
            background: #dadce0;
        }

        .stat-item__value {
            font-family: 'Google Sans', sans-serif;
            font-size: 14px;
            font-weight: 500;
            color: #202124;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 4px;
        }

        .stat-item__value .material-icons {
            font-size: 14px;
        }

        .stat-item__label {
            font-size: 12px;
            color: #5f6368;
            margin-top: 2px;
        }

        /* ===== INSTALL BUTTON ===== */
        .install-section {
            padding: 8px 24px 16px;
        }

        .install-btn {
            width: 100%;
            height: 48px;
            background: #01875f;
            color: #fff;
            border: none;
            border-radius: 8px;
            font-family: 'Google Sans', sans-serif;
            font-size: 14px;
            font-weight: 500;
            cursor: pointer;
            letter-spacing: 0.25px;
            transition: background 0.2s, box-shadow 0.2s;
        }

        .install-btn:hover {
            background: #017a55;
            box-shadow: 0 1px 3px rgba(0,0,0,0.2);
        }

        .install-btn:active {
            background: #016d4c;
        }

        /* ===== SHARE & WISHLIST ===== */
        .actions-row {
            display: flex;
            align-items: center;
            gap: 24px;
            padding: 0 24px 16px;
        }

        .action-item {
            display: flex;
            align-items: center;
            gap: 8px;
            color: #01875f;
            font-size: 14px;
            font-weight: 500;
            cursor: pointer;
            background: none;
            border: none;
            font-family: 'Google Sans', sans-serif;
            transition: opacity 0.2s;
        }

        .action-item:hover {
            opacity: 0.8;
        }

        .action-item .material-icons {
            font-size: 20px;
        }

        /* ===== DEVICE NOTE ===== */
        .device-note {
            padding: 0 24px 16px;
            display: flex;
            align-items: center;
            gap: 12px;
            color: #5f6368;
            font-size: 12px;
        }

        .device-note .material-icons {
            font-size: 18px;
            color: #9aa0a6;
        }

        /* ===== SCREENSHOTS CAROUSEL ===== */
        .screenshots {
            padding: 8px 0 24px;
        }

        .screenshots__container {
            display: flex;
            gap: 8px;
            padding: 0 24px;
            overflow-x: auto;
            scroll-snap-type: x mandatory;
            scrollbar-width: none;
            -webkit-overflow-scrolling: touch;
        }

        .screenshots__container::-webkit-scrollbar {
            display: none;
        }

        .screenshots__item {
            flex-shrink: 0;
            width: 130px;
            height: 232px;
            border-radius: 8px;
            overflow: hidden;
            scroll-snap-align: start;
            box-shadow: 0 1px 2px rgba(0,0,0,0.1);
            cursor: pointer;
        }

        .screenshots__item img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .screenshots__item:focus-visible {
            outline: 2px solid #1a73e8;
            outline-offset: 2px;
        }

        /* ===== SECTIONS ===== */
        .section {
            padding: 0 24px;
            margin-bottom: 24px;
        }

        .section__header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 16px;
        }

        .section__title {
            font-family: 'Google Sans', sans-serif;
            font-size: 18px;
            font-weight: 500;
            color: #202124;
        }

        .section__arrow {
            width: 36px;
            height: 36px;
            border-radius: 50%;
            border: none;
            background: transparent;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #202124;
            transition: background 0.2s;
        }

        .section__arrow:hover {
            background: rgba(0,0,0,0.06);
        }

        /* ===== DESCRIPTION ===== */
        .description__text {
            font-size: 14px;
            line-height: 20px;
            color: #5f6368;
            white-space: pre-line;
        }

        .description__more {
            display: none;
        }

        .description__text.collapsed {
            display: -webkit-box;
            -webkit-line-clamp: 5;
            line-clamp: 5;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }

        .last-update {
            margin-top: 24px;
        }

        .last-update__label {
            font-size: 14px;
            font-weight: 500;
            color: #202124;
        }

        .last-update__date {
            font-size: 14px;
            color: #5f6368;
            margin-top: 2px;
        }

        /* ===== TAGS ===== */
        .tags {
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
            margin-top: 16px;
        }

        .tag {
            padding: 6px 16px;
            border-radius: 20px;
            border: 1px solid #dadce0;
            font-size: 13px;
            color: #202124;
            text-decoration: none;
            transition: background 0.2s;
        }

        .tag:hover {
            background: #f1f3f4;
        }

        /* ===== DATA SAFETY ===== */
        .data-safety {
            background: #f8f9fa;
            border-radius: 12px;
            padding: 16px;
            margin-top: 8px;
        }

        .data-safety__subtitle {
            font-size: 13px;
            color: #5f6368;
            line-height: 18px;
            margin-bottom: 16px;
        }

        .data-safety__item {
            display: flex;
            align-items: flex-start;
            gap: 16px;
            padding: 12px 0;
        }

        .data-safety__item:not(:last-child) {
            border-bottom: 1px solid #e8eaed;
        }

        .data-safety__item .material-icons {
            font-size: 20px;
            color: #5f6368;
            margin-top: 2px;
        }

        .data-safety__item-title {
            font-size: 14px;
            color: #202124;
            line-height: 20px;
        }

        .data-safety__item-desc {
            font-size: 12px;
            color: #5f6368;
            margin-top: 2px;
        }

        .data-safety__link {
            display: block;
            color: #01875f;
            font-size: 14px;
            font-weight: 500;
            text-decoration: none;
            margin-top: 16px;
            font-family: 'Google Sans', sans-serif;
        }

        .data-safety__link:hover {
            text-decoration: underline;
        }

        /* ===== REVIEWS ===== */
        .reviews__summary {
            display: flex;
            align-items: flex-start;
            gap: 24px;
            margin-bottom: 24px;
        }

        .reviews__score {
            text-align: center;
        }

        .reviews__score-number {
            font-family: 'Google Sans', sans-serif;
            font-size: 56px;
            font-weight: 400;
            line-height: 1;
            color: #202124;
        }

        .reviews__stars {
            display: flex;
            gap: 1px;
            justify-content: center;
            margin: 4px 0;
        }

        .reviews__stars .material-icons {
            font-size: 12px;
            color: #01875f;
        }

        .reviews__count {
            font-size: 12px;
            color: #5f6368;
        }

        .reviews__bars {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 4px;
            padding-top: 8px;
        }

        .reviews__bar-row {
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .reviews__bar-label {
            font-size: 12px;
            color: #5f6368;
            width: 8px;
            text-align: right;
        }

        .reviews__bar-track {
            flex: 1;
            height: 8px;
            background: #e8eaed;
            border-radius: 4px;
            overflow: hidden;
        }

        .reviews__bar-fill {
            height: 100%;
            background: #01875f;
            border-radius: 4px;
        }

        /* ===== DEVICE TABS ===== */
        .device-tabs {
            display: flex;
            gap: 8px;
            margin-bottom: 24px;
            flex-wrap: wrap;
        }

        .device-tab {
            display: flex;
            align-items: center;
            gap: 6px;
            padding: 6px 16px;
            border-radius: 8px;
            border: 1px solid #dadce0;
            font-size: 14px;
            color: #5f6368;
            cursor: pointer;
            background: #fff;
            font-family: 'Google Sans', sans-serif;
            transition: all 0.2s;
        }

        .device-tab.active {
            background: #e8f5e9;
            color: #01875f;
            border-color: #01875f;
        }

        .device-tab .material-icons {
            font-size: 16px;
        }

        /* ===== REVIEW CARD ===== */
        .review-card {
            margin-bottom: 24px;
            padding-bottom: 24px;
            border-bottom: 1px solid #e8eaed;
        }

        .review-card:last-child {
            border-bottom: none;
        }

        .review-card__header {
            display: flex;
            align-items: center;
            gap: 12px;
            margin-bottom: 8px;
        }

        .review-card__avatar {
            width: 32px;
            height: 32px;
            border-radius: 50%;
            overflow: hidden;
            flex-shrink: 0;
        }

        .review-card__avatar-placeholder {
            width: 100%;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
            font-weight: 500;
            color: #fff;
        }

        .review-card__name {
            font-size: 14px;
            color: #202124;
            flex: 1;
        }

        .review-card__menu {
            color: #5f6368;
            cursor: pointer;
            background: none;
            border: none;
        }

        .review-card__rating {
            display: flex;
            align-items: center;
            gap: 8px;
            margin-bottom: 8px;
        }

        .review-card__rating-stars {
            display: flex;
            gap: 0;
        }

        .review-card__rating-stars .material-icons {
            font-size: 12px;
            color: #01875f;
        }

        .review-card__rating-stars .material-icons.empty {
            color: #dadce0;
        }

        .review-card__date {
            font-size: 12px;
            color: #5f6368;
        }

        .review-card__text {
            font-size: 14px;
            line-height: 20px;
            color: #202124;
            margin-bottom: 12px;
        }

        .review-card__helpful {
            font-size: 12px;
            color: #5f6368;
            margin-bottom: 8px;
        }

        .review-card__actions {
            display: flex;
            align-items: center;
            gap: 4px;
            font-size: 12px;
            color: #5f6368;
        }

        .review-card__action-btn {
            padding: 6px 16px;
            border: 1px solid #dadce0;
            border-radius: 20px;
            background: #fff;
            font-size: 12px;
            color: #5f6368;
            cursor: pointer;
            transition: background 0.2s;
        }

        .review-card__action-btn:hover {
            background: #f1f3f4;
        }

        .review-card__reply {
            background: #f8f9fa;
            border-radius: 8px;
            padding: 12px;
            margin-top: 12px;
        }

        .review-card__reply-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 8px;
        }

        .review-card__reply-dev {
            font-size: 14px;
            font-weight: 500;
            color: #202124;
        }

        .review-card__reply-date {
            font-size: 12px;
            color: #5f6368;
        }

        .review-card__reply-text {
            font-size: 14px;
            line-height: 20px;
            color: #5f6368;
        }

        .all-reviews-link {
            color: #01875f;
            font-size: 14px;
            font-weight: 500;
            text-decoration: none;
            font-family: 'Google Sans', sans-serif;
            cursor: pointer;
        }

        .all-reviews-link:hover {
            text-decoration: underline;
        }

        /* ===== WHATS NEW ===== */
        .whats-new__text {
            font-size: 14px;
            color: #5f6368;
            line-height: 20px;
        }

        /* ===== SIMILAR APPS ===== */
        .similar-apps__grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 16px;
        }

        .similar-app {
            display: flex;
            gap: 12px;
            align-items: center;
            text-decoration: none;
            color: inherit;
        }

        .similar-app__icon {
            width: 48px;
            height: 48px;
            border-radius: 12px;
            overflow: hidden;
            flex-shrink: 0;
            box-shadow: 0 1px 2px rgba(0,0,0,0.1);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 20px;
            color: #fff;
        }

        .similar-app__info {
            overflow: hidden;
        }

        .similar-app__name {
            font-size: 13px;
            color: #202124;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            max-width: 120px;
        }

        .similar-app__dev {
            font-size: 12px;
            color: #5f6368;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .similar-app__rating {
            display: flex;
            align-items: center;
            gap: 4px;
            font-size: 12px;
            color: #5f6368;
        }

        .similar-app__rating .material-icons {
            font-size: 12px;
        }

        /* ===== DIVIDER ===== */
        .divider {
            height: 1px;
            background: #e8eaed;
            margin: 0 24px 24px;
        }

        /* ===== SUPPORT ===== */
        .support-toggle {
            display: flex;
            align-items: center;
            justify-content: space-between;
            cursor: pointer;
            width: 100%;
            background: none;
            border: none;
            padding: 0;
            text-align: left;
        }

        .support-toggle .material-icons {
            color: #5f6368;
            transition: transform 0.3s;
        }

        .support-toggle.open .material-icons {
            transform: rotate(180deg);
        }

        .support-content {
            overflow: hidden;
            max-height: 0;
            transition: max-height 0.3s ease;
        }

        .support-content.open {
            max-height: 200px;
        }

        .support-item {
            display: flex;
            align-items: center;
            gap: 12px;
            padding: 12px 0;
            color: #5f6368;
            font-size: 14px;
            text-decoration: none;
        }

        .support-item .material-icons {
            font-size: 20px;
        }

        /* ===== FOOTER ===== */
        .footer {
            padding: 24px;
            background: #f8f9fa;
            border-top: 1px solid #e8eaed;
            margin-top: 24px;
        }

        .footer__links {
            display: flex;
            flex-wrap: wrap;
            gap: 16px;
        }

        .footer__link {
            font-size: 12px;
            color: #5f6368;
            text-decoration: none;
        }

        .footer__link:hover {
            text-decoration: underline;
        }

        /* ===== LIGHTBOX ===== */
        body.lightbox-open {
            overflow: hidden;
        }

        .lightbox {
            position: fixed;
            inset: 0;
            z-index: 300;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 24px;
        }

        .lightbox__overlay {
            position: absolute;
            inset: 0;
            background: rgba(32, 33, 36, 0.88);
        }

        .lightbox__dialog {
            position: relative;
            z-index: 1;
            width: 100%;
            max-width: 420px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .lightbox__image {
            width: 100%;
            max-height: calc(100vh - 48px);
            object-fit: contain;
            border-radius: 12px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.35);
            background: #000;
        }

        .lightbox__close {
            position: absolute;
            top: 12px;
            right: 12px;
            z-index: 2;
            width: 40px;
            height: 40px;
            border: none;
            border-radius: 50%;
            background: rgba(255,255,255,0.92);
            color: #202124;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 2px 6px rgba(0,0,0,0.2);
        }

        .lightbox__close .material-icons {
            font-size: 20px;
        }

        .lightbox__close:hover {
            background: #fff;
        }

        /* ===== BOTTOM NAV ===== */
        .bottom-nav {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            height: 56px;
            background: #fff;
            border-top: 1px solid #e8eaed;
            display: flex;
            align-items: center;
            z-index: 100;
        }

        .bottom-nav__item {
            flex: 1;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 2px;
            text-decoration: none;
            color: #5f6368;
            font-size: 10px;
            padding: 6px 0;
            transition: color 0.2s;
        }

        .bottom-nav__item.active {
            color: #01875f;
        }

        .bottom-nav__item .material-icons {
            font-size: 24px;
        }

        .bottom-nav__item.active .bottom-nav__indicator {
            background: #c8e6c9;
            border-radius: 16px;
            padding: 2px 16px;
        }

        .bottom-nav__label {
            font-size: 12px;
            font-weight: 500;
        }

        /* ===== RESPONSIVE ===== */
        @media (min-width: 600px) {
            body {
                max-width: 480px;
                margin: 0 auto;
                box-shadow: 0 0 20px rgba(0,0,0,0.1);
                min-height: 100vh;
                position: relative;
            }

            .bottom-nav {
                max-width: 480px;
                left: 50%;
                transform: translateX(-50%);
            }
        }

        /* ===== ANIMATIONS ===== */
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(10px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        .animate-in {
            animation: fadeInUp 0.4s ease forwards;
        }

        /* ===== INSTALL PROGRESS ===== */
        .install-btn.downloading {
            position: relative;
            overflow: hidden;
        }

        .install-btn.downloading::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            height: 3px;
            background: rgba(255,255,255,0.5);
            animation: progress 2s ease-in-out;
        }

        @keyframes progress {
            0% { width: 0; }
            100% { width: 100%; }
        }

        /* HIDDEN class for language switch */
        .hidden {
            display: none !important;
        }
