
    :root {
        --primary: #3b82f6;
        --primary-dark: #2563eb;
        --primary-light: #93c5fd;
        --primary-gradient: linear-gradient(135deg, #3b82f6, #8b5cf6);
        --secondary: #8b5cf6;
        --success: #22c55e;
        --warning: #f59e0b;
        --danger: #ef4444;
        --gray-50: #f8fafc;
        --gray-100: #f1f5f9;
        --gray-200: #e2e8f0;
        --gray-300: #cbd5e1;
        --gray-400: #94a3b8;
        --gray-500: #64748b;
        --gray-600: #475569;
        --gray-700: #334155;
        --gray-800: #1e293b;
        --gray-900: #0f172a;
        --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
        --shadow: 0 1px 3px rgba(0,0,0,0.1), 0 1px 2px rgba(0,0,0,0.06);
        --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06);
        --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -2px rgba(0,0,0,0.05);
        --shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.1), 0 10px 10px -5px rgba(0,0,0,0.04);
        --radius: 16px;
        --radius-sm: 12px;
        --radius-full: 9999px;
    }

    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    body {
        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
        background: var(--gray-50);
        color: var(--gray-900);
    }

    /* ===== RESULTS INFO BAR ===== */
    .results-info {
        background: white;
        border-bottom: 1px solid var(--gray-200);
        padding: 16px 0;
        margin-bottom: 0;
    }
    .results-info .info-content {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 12px;
    }
    .results-info .results-count {
        display: flex;
        align-items: center;
        gap: 8px;
        font-size: 14px;
        color: var(--gray-600);
    }
    .results-info .results-count .number {
        font-weight: 700;
        color: var(--gray-900);
        font-size: 16px;
    }
    .results-info .results-count i {
        color: var(--primary);
        font-size: 16px;
    }
    .results-info .search-query {
        font-size: 14px;
        color: var(--gray-500);
    }
    .results-info .search-query strong {
        color: var(--gray-800);
        font-weight: 600;
    }
    .results-info .search-query .query-text {
        background: var(--gray-100);
        padding: 2px 12px;
        border-radius: var(--radius-full);
        font-weight: 600;
        color: var(--gray-800);
    }

    /* ===== APP GRID ===== */
    .section-wrapper {
        padding: 24px 0 40px;
    }
    .app-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }

    .app-grid-card {
        background: white;
        border-radius: var(--radius);
        border: 1px solid var(--gray-200);
        overflow: hidden;
        cursor: pointer;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        text-align: center;
        padding: 16px 12px 14px;
        position: relative;
    }
    .app-grid-card:hover {
        border-color: var(--primary-light);
        box-shadow: var(--shadow-lg);
        transform: translateY(-4px);
    }
    .app-grid-card .app-icon {
        width: 72px;
        height: 72px;
        border-radius: var(--radius-sm);
        background: var(--gray-50);
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 10px;
        padding: 10px;
        transition: all 0.3s;
        position: relative;
        border: 1px solid var(--gray-100);
    }
    .app-grid-card:hover .app-icon {
        background: var(--gray-100);
        border-color: var(--gray-200);
    }
    .app-grid-card .app-icon img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        transition: transform 0.3s;
    }
    .app-grid-card:hover .app-icon img {
        transform: scale(1.05);
    }
    .app-grid-card .app-icon .badge {
        position: absolute;
        top: -6px;
        right: -6px;
        font-size: 7px;
        font-weight: 700;
        padding: 2px 8px;
        border-radius: var(--radius-full);
        color: white;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    }
    .app-grid-card .app-icon .badge.new {
        background: var(--success);
    }
    .app-grid-card .app-icon .badge.top {
        background: var(--warning);
    }
    .app-grid-card .app-icon .badge.featured {
        background: var(--secondary);
    }
    .app-grid-card .app-icon .badge.popular {
        background: var(--danger);
    }
    .app-grid-card .app-name {
        font-size: 14px;
        font-weight: 600;
        color: var(--gray-900);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        transition: color 0.2s;
    }
    .app-grid-card:hover .app-name {
        color: var(--primary);
    }
    .app-grid-card .app-developer {
        font-size: 12px;
        color: var(--gray-500);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        margin-bottom: 4px;
    }
    .app-grid-card .app-rating {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
        font-size: 12px;
        font-weight: 600;
        color: var(--gray-700);
        margin-bottom: 8px;
    }
    .app-grid-card .app-rating .stars {
        color: var(--warning);
        letter-spacing: 0.5px;
    }
    .app-grid-card .app-rating .count {
        font-weight: 400;
        color: var(--gray-400);
        font-size: 11px;
    }
    .app-grid-card .app-bottom {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-top: 8px;
        border-top: 1px solid var(--gray-100);
    }
    .app-grid-card .app-category {
        font-size: 10px;
        color: var(--gray-400);
        background: var(--gray-100);
        padding: 2px 10px;
        border-radius: var(--radius-full);
        font-weight: 500;
        text-transform: uppercase;
        letter-spacing: 0.3px;
    }
    .app-grid-card .btn-download {
        background: var(--primary);
        color: white;
        font-size: 11px;
        font-weight: 600;
        padding: 4px 16px;
        border-radius: var(--radius-full);
        border: none;
        cursor: pointer;
        transition: all 0.3s;
        text-decoration: none;
        display: inline-block;
        box-shadow: 0 2px 8px rgba(59, 130, 246, 0.25);
    }
    .app-grid-card .btn-download:hover {
        background: var(--primary-dark);
        transform: scale(1.05);
        box-shadow: 0 4px 16px rgba(59, 130, 246, 0.35);
    }

    /* ===== LOAD MORE ===== */
    .load-more-wrapper {
        text-align: center;
        padding: 32px 0 12px;
    }
    .load-more-wrapper.hidden {
        display: none;
    }
    .load-more-btn {
        background: white;
        color: var(--gray-700);
        font-weight: 600;
        padding: 12px 44px;
        border-radius: var(--radius-full);
        border: 1px solid var(--gray-200);
        cursor: pointer;
        transition: all 0.3s;
        font-size: 14px;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        box-shadow: var(--shadow-sm);
        position: relative;
        min-width: 180px;
        justify-content: center;
    }
    .load-more-btn:hover:not(:disabled) {
        border-color: var(--primary);
        color: var(--primary);
        background: #eff6ff;
        transform: translateY(-2px);
        box-shadow: var(--shadow-md);
    }
    .load-more-btn:disabled {
        opacity: 0.6;
        cursor: not-allowed;
        transform: none !important;
    }
    .load-more-btn .spinner {
        display: inline-block;
        width: 18px;
        height: 18px;
        border: 2px solid var(--gray-200);
        border-top-color: var(--primary);
        border-radius: 50%;
        animation: spin 0.6s linear infinite;
    }
    @keyframes spin {
        to { transform: rotate(360deg); }
    }
    .load-more-btn .btn-icon {
        transition: all 0.3s;
    }
    .load-more-btn .btn-text {
        transition: all 0.3s;
    }
    .load-more-btn.error {
        border-color: var(--danger);
        color: var(--danger);
        background: #fef2f2;
    }
    .load-more-btn.error:hover:not(:disabled) {
        background: #fee2e2;
    }
    .load-more-btn .keyboard-hint {
        font-size: 9px;
        color: var(--gray-400);
        font-weight: 400;
        background: var(--gray-100);
        padding: 1px 8px;
        border-radius: var(--radius-full);
        margin-left: 4px;
    }

    .load-more-end {
        text-align: center;
        padding: 24px 0 12px;
        color: var(--gray-400);
        font-size: 13px;
    }
    .load-more-end.hidden {
        display: none;
    }
    .load-more-end i {
        margin-right: 6px;
        color: var(--success);
    }

    /* ===== NO RESULTS ===== */
    .no-results {
        text-align: center;
        padding: 60px 20px;
        grid-column: 1 / -1;
    }
    .no-results .empty-icon {
        width: 100px;
        height: 100px;
        background: var(--gray-100);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 20px;
        font-size: 40px;
        color: var(--gray-300);
    }
    .no-results h3 {
        font-size: 20px;
        font-weight: 700;
        color: var(--gray-800);
        margin-bottom: 6px;
    }
    .no-results p {
        color: var(--gray-500);
        max-width: 400px;
        margin: 0 auto 20px;
        font-size: 14px;
        line-height: 1.6;
    }
    .no-results .suggestions {
        display: flex;
        gap: 8px;
        justify-content: center;
        flex-wrap: wrap;
    }
    .no-results .suggestions .suggestion-chip {
        padding: 6px 18px;
        background: white;
        border: 1px solid var(--gray-200);
        border-radius: var(--radius-full);
        font-size: 12px;
        font-weight: 500;
        color: var(--gray-600);
        cursor: pointer;
        transition: all 0.2s;
    }
    .no-results .suggestions .suggestion-chip:hover {
        border-color: var(--primary);
        color: var(--primary);
        background: #eff6ff;
        transform: translateY(-2px);
        box-shadow: var(--shadow-sm);
    }
    .no-results .suggestions .suggestion-chip i {
        margin-right: 4px;
        font-size: 11px;
    }

    /* ===== ANIMATIONS ===== */
    .fade-in {
        animation: fadeIn 0.4s ease-out;
    }
    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(12px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    /* ===== RESPONSIVE ===== */
    @media (min-width: 640px) {
        .app-grid {
            grid-template-columns: repeat(2, 1fr);
        }
    }
    @media (min-width: 768px) {
        .app-grid {
            grid-template-columns: repeat(3, 1fr);
        }
        .results-info .results-count {
            font-size: 15px;
        }
        .results-info .search-query {
            font-size: 15px;
        }
    }
    @media (min-width: 1024px) {
        .app-grid {
            grid-template-columns: repeat(4, 1fr);
        }
        .section-wrapper {
            padding: 28px 0 48px;
        }
    }
    @media (min-width: 1280px) {
        .app-grid {
            grid-template-columns: repeat(5, 1fr);
        }
    }
    @media (min-width: 1536px) {
        .app-grid {
            grid-template-columns: repeat(6, 1fr);
        }
    }

    @media (max-width: 768px) {
        .app-grid-card .app-icon {
            width: 60px;
            height: 60px;
            padding: 8px;
        }
        .load-more-btn {
            padding: 10px 28px;
            font-size: 13px;
            min-width: 140px;
        }
        .results-info {
            padding: 12px 0;
        }
        .results-info .info-content {
            flex-direction: column;
            align-items: flex-start;
            gap: 6px;
        }
        .load-more-btn .keyboard-hint {
            display: none;
        }
    }

    @media (max-width: 480px) {
        .app-grid {
            gap: 12px;
        }
        .app-grid-card {
            padding: 12px 8px 12px;
            border-radius: 12px;
        }
        .app-grid-card .app-icon {
            width: 52px;
            height: 52px;
            padding: 6px;
        }
        .app-grid-card .app-name {
            font-size: 13px;
        }
        .app-grid-card .app-developer {
            font-size: 11px;
        }
        .app-grid-card .app-rating {
            font-size: 11px;
            margin-bottom: 6px;
        }
        .app-grid-card .btn-download {
            font-size: 10px;
            padding: 3px 12px;
        }
        .app-grid-card .app-icon .badge {
            font-size: 6px;
            padding: 1px 6px;
            top: -4px;
            right: -4px;
        }
        .section-wrapper {
            padding: 16px 0 24px;
        }
        .load-more-btn {
            padding: 8px 16px;
            font-size: 12px;
            min-width: 100px;
            width: 100%;
            justify-content: center;
        }
        .results-info {
            padding: 10px 0;
        }
        .results-info .results-count {
            font-size: 13px;
        }
        .results-info .search-query {
            font-size: 13px;
        }
        .no-results .empty-icon {
            width: 80px;
            height: 80px;
            font-size: 32px;
        }
        .no-results h3 {
            font-size: 18px;
        }
        .no-results .suggestions .suggestion-chip {
            font-size: 11px;
            padding: 4px 14px;
        }
    }

    .step-circle {
        transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
        position: relative;
    }

    .step-label {
        transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .step-desc {
        transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .step-badge {
        transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    }

    #timerCircle {
        transition: all 1s cubic-bezier(0.4, 0, 0.2, 1);
    }

    #progressBar {
        transition: all 1s cubic-bezier(0.4, 0, 0.2, 1);
    }

    /* Scan Animation Lines */
    .scan-lines {
        pointer-events: none;
    }

    .scan-line {
        position: absolute;
        background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
        height: 2px;
        width: 100%;
        animation: scanLine 1.5s ease-in-out infinite;
    }

    .scan-line:nth-child(1) { top: 15%; animation-delay: 0s; }
    .scan-line:nth-child(2) { top: 35%; animation-delay: 0.4s; }
    .scan-line:nth-child(3) { top: 55%; animation-delay: 0.8s; }
    .scan-line:nth-child(4) { top: 75%; animation-delay: 1.2s; }

    @keyframes scanLine {
        0% {
            transform: translateX(-100%);
            opacity: 0;
        }
        50% {
            opacity: 1;
        }
        100% {
            transform: translateX(100%);
            opacity: 0;
        }
    }

    /* Pulse Animation */
    @keyframes pulse-ring {
        0% { transform: scale(1); }
        50% { transform: scale(1.08); }
        100% { transform: scale(1); }
    }

    .step-circle.animate-pulse {
        animation: pulse-ring 1.5s ease-in-out infinite;
    }

    /* Slide Up Animation */
    @keyframes slideUp {
        from {
            opacity: 0;
            transform: translateY(20px) scale(0.95);
        }
        to {
            opacity: 1;
            transform: translateY(0) scale(1);
        }
    }

    #downloadBtn {
        animation: slideUp 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    }

    /* Completed status glow */
    .bg-emerald-50 {
        background-color: #ecfdf5;
    }

    .border-emerald-100 {
        border-color: #d1fae5;
    }

    .text-emerald-600 {
        color: #059669;
    }

        * {
            font-family: 'Inter', system-ui, sans-serif;
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        body {
            background-color: #f8fafc;
            color: #1e293b;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            width: 100%;
            max-width: 100%;
        }
        /* Quill Editor Styles */
        .ql-container {
            font-family: inherit;
            font-size: inherit;
            background: transparent !important;
            border: none !important;
        }
        .ql-editor {
            padding: 0 !important;
            line-height: 1.7;
            color: inherit !important;
            background: transparent !important;
            word-wrap: break-word;
            overflow-wrap: break-word;
        }
        .ql-editor h1,
        .ql-editor h2,
        .ql-editor h3,
        .ql-editor h4,
        .ql-editor h5,
        .ql-editor h6 {
            font-weight: 700;
            margin-top: 1.5em;
            margin-bottom: 0.75em;
            line-height: 1.3;
            color: #0f172a;
        }
        .ql-editor h1 {
            font-size: 1.8rem;
        }
        .ql-editor h2 {
            font-size: 1.4rem;
        }
        .ql-editor h3 {
            font-size: 1.2rem;
        }
        .ql-editor h4 {
            font-size: 1.1rem;
        }
        .ql-editor p {
            margin-bottom: 1.25em;
            text-align: justify;
            color: #475569;
            word-wrap: break-word;
        }
        .ql-editor strong,
        .ql-editor b {
            font-weight: 600;
            color: #0f172a;
        }
        .ql-editor ul,
        .ql-editor ol {
            padding-left: 1.5em;
            margin-bottom: 1.25em;
        }
        .ql-editor li {
            margin-bottom: 0.5em;
            color: #475569;
        }
        .ql-editor blockquote {
            border-left: 4px solid #6366f1;
            margin: 1.5em 0;
            padding-left: 1.5em;
            font-style: italic;
            color: #64748b;
            background-color: #f1f5f9;
            padding: 1em 1.5em;
            border-radius: 0 12px 12px 0;
        }
        .ql-editor a {
            color: #4f46e5;
            text-decoration: underline;
            font-weight: 500;
            word-break: break-all;
        }
        .ql-editor img {
            max-width: 100%;
            height: auto;
            margin: 1.5em 0;
            border-radius: 16px;
            box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
        }
        #app-description {
            font-family: inherit;
            font-size: inherit;
            line-height: 1.7;
            color: #334155;
        }
        #app-description h1 {
            font-size: 1.8rem;
        }
        #app-description h2 {
            font-size: 1.4rem;
        }
        #app-description h3 {
            font-size: 1.2rem;
        }
        #app-description p {
            margin-bottom: 1.25em;
            text-align: justify;
        }
        #app-description strong,
        #app-description b {
            font-weight: 600;
            color: #0f172a;
        }
        #app-description ul,
        #app-description ol {
            padding-left: 1.5em;
            margin-bottom: 1.25em;
        }
        #app-description li {
            margin-bottom: 0.5em;
        }
        #app-description blockquote {
            border-left: 4px solid #6366f1;
            margin: 1.5em 0;
            padding-left: 1.5em;
            font-style: italic;
            color: #64748b;
            background-color: #f1f5f9;
            padding: 1em 1.5em;
            border-radius: 0 12px 12px 0;
        }
        #app-description a {
            color: #4f46e5;
            text-decoration: underline;
            font-weight: 500;
            word-break: break-all;
        }
        #app-description img {
            max-width: 100%;
            height: auto;
            margin: 1.5em 0;
            border-radius: 16px;
        }
        .scrollbar-hide::-webkit-scrollbar {
            display: none;
        }
        .scrollbar-hide {
            -ms-overflow-style: none;
            scrollbar-width: none;
        }
        #description-container {
            position: relative;
        }
        #app-description {
            max-height: none;
            overflow: hidden;
            transition: max-height 0.5s ease;
        }
        #description-container.collapsed #app-description {
            max-height: 280px;
        }
        #fade-overlay {
            display: none;
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            height: 80px;
            background: linear-gradient(transparent, white);
            pointer-events: none;
        }
        #description-container.collapsed #fade-overlay {
            display: block;
        }
        
        /* ========== 300PX SAFE RESPONSIVE FIXES ========== */
        html,
        body {
            width: 100%;
            max-width: 100%;
            overflow-x: clip;
        }
        img,
        video,
        iframe,
        table {
            max-width: 100%;
        }
        .ad-container,
        .ad-container ins,
        .ad-container iframe {
            max-width: 100% !important;
            overflow: hidden !important;
        }
        main,
        section,
        article,
        aside,
        .sidebar-sticky,
        .bg-white,
        .bg-slate-50 {
            min-width: 0;
        }
        .app-safe-text {
            overflow-wrap: anywhere;
            word-break: break-word;
        }

        /* ========== FULLY RESPONSIVE APP PREVIEW SLIDER ========== */
        .app-preview-shell {
            width: 100%;
            max-width: 100%;
            background: #ffffff;
            box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
            overflow: hidden;
            position: relative;
            box-sizing: border-box;
        }
        .app-preview-slider {
            position: relative;
            width: 100%;
            max-width: 100%;
            overflow: hidden;
        }
        .app-preview-track {
            display: flex;
            gap: 0.75rem;
            width: 100%;
            max-width: 100%;
            overflow-x: auto;
            overflow-y: hidden;
            scroll-snap-type: x mandatory;
            scroll-behavior: smooth;
            -webkit-overflow-scrolling: touch;
            padding: 0.25rem 0.15rem 0.5rem;
            scrollbar-width: none;
            box-sizing: border-box;
        }
        .app-preview-track::-webkit-scrollbar {
            display: none;
        }
        .app-preview-slide {
            flex: 0 0 auto;
            width: clamp(128px, calc(100vw - 88px), 220px);
            max-width: 100%;
            min-width: 0;
            scroll-snap-align: center;
            scroll-snap-stop: always;
            box-sizing: border-box;
        }
        .app-preview-card {
            width: 100%;
            background: #f8fafc;
            box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
            height: 100%;
            transition: transform 0.2s ease;
            box-sizing: border-box;
        }
        .app-preview-card:hover {
            transform: scale(1.02);
        }
        .app-preview-card img {
            width: 100%;
            object-fit: contain;
            border-radius: 0.75rem;
            background: #ffffff;
            display: block;
        }
        .app-preview-btn {
            cursor: pointer;
            transition: all 0.2s ease;
            background: rgba(255, 255, 255, 0.95);
            border: 1px solid #e2e8f0;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            z-index: 20;
            width: 2.1rem;
            height: 2.1rem;
            border-radius: 999px;
            box-shadow: 0 8px 16px rgba(15, 23, 42, 0.12);
            display: flex;
            align-items: center;
            justify-content: center;
            backdrop-filter: blur(4px);
        }
        .app-preview-btn:hover {
            background: #ffffff;
            transform: translateY(-50%) scale(1.08);
        }
        .app-preview-btn:active {
            transform: translateY(-50%) scale(0.92);
        }
        .app-preview-prev {
            left: 0.25rem;
        }
        .app-preview-next {
            right: 0.25rem;
        }
        .app-preview-dots {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 0.35rem;
            min-height: 0.5rem;
            margin-top: 0.15rem;
            flex-wrap: wrap;
        }
        .app-preview-dot {
            width: 0.4rem;
            height: 0.4rem;
            border-radius: 999px;
            border: none;
            padding: 0;
            background: #cbd5e1;
            transition: all 0.25s ease;
            cursor: pointer;
        }
        .app-preview-dot.active {
            width: 1.4rem;
            background: #4f46e5;
        }

        @media (max-width: 360px) {
            .app-preview-shell {
                padding: 0.45rem;
                border-radius: 1rem;
            }
            .app-preview-track {
                gap: 0.5rem;
                padding-left: 0.05rem;
                padding-right: 0.05rem;
            }
            .app-preview-slide {
                width: calc(100vw - 52px);
            }
            .app-preview-card {
                padding: 0.3rem;
            }
            .app-preview-card img {
                height: 185px;
            }
            .app-preview-btn {
                width: 1.65rem;
                height: 1.65rem;
                font-size: 0.68rem;
            }
            .app-preview-prev {
                left: 0.08rem;
            }
            .app-preview-next {
                right: 0.08rem;
            }
        }
        @media (min-width: 361px) and (max-width: 640px) {
            .app-preview-shell {
                padding: 0.5rem;
                border-radius: 1rem;
            }
            .app-preview-slide {
                width: min(68vw, 175px);
            }
            .app-preview-card img {
                height: 220px;
            }
            .app-preview-btn {
                width: 1.8rem;
                height: 1.8rem;
                font-size: 0.7rem;
            }
        }
        @media (min-width: 641px) and (max-width: 1023px) {
            .app-preview-slide {
                width: 220px;
            }
            .app-preview-card img {
                height: 280px;
            }
        }
        @media (min-width: 1024px) {
            .app-preview-slide {
                width: 240px;
            }
        }

        /* Small phone layout fixes */
        @media (max-width: 360px) {
            .clean-download-btn {
                padding-left: 0.75rem !important;
                padding-right: 0.75rem !important;
                font-size: 0.875rem !important;
            }
            dl > div {
                align-items: flex-start !important;
                gap: 0.5rem !important;
            }
            dl dd {
                min-width: 0;
                overflow-wrap: anywhere;
            }
            .section-title {
                overflow-wrap: anywhere;
            }
        }

        button,
        a {
            cursor: pointer;
            -webkit-tap-highlight-color: transparent;
        }
        .card-hover {
            transition: all 0.3s ease;
        }
        .card-hover:hover {
            transform: translateY(-4px);
            box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 10px 10px -5px rgba(0, 0, 0, 0.02);
        }
        @media (min-width: 1024px) {
            .sidebar-sticky {
                position: sticky;
                top: 2rem;
            }
        }
        .clean-download-btn {
            background: #4f46e5;
            border: 2px solid #4f46e5;
            color: white;
            transition: all 0.3s ease;
            border-radius: 16px;
            box-shadow: 0 12px 18px -10px rgba(79, 70, 229, 0.3);
        }
        .clean-download-btn:hover {
            background: #4338ca;
            border-color: #4338ca;
            color: white;
            box-shadow: 0 16px 24px -10px rgba(79, 70, 229, 0.5);
            transform: translateY(-2px);
        }
        .subscription-modal.active {
            display: flex;
        }
        .badge-official {
            background-color: #ecfdf5;
            color: #059669;
            border: 1px solid #a7f3d0;
        }
        .section-title {
            position: relative;
            padding-bottom: 0.75rem;
        }
        .section-title::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 40px;
            height: 3px;
            background: #4f46e5;
            border-radius: 2px;
        }
    
    /* ===== MODERN DESIGN SYSTEM ===== */
    :root {
        --primary: #3b82f6;
        --primary-dark: #2563eb;
        --primary-light: #93c5fd;
        --primary-gradient: linear-gradient(135deg, #3b82f6, #8b5cf6);
        --secondary: #8b5cf6;
        --success: #22c55e;
        --warning: #f59e0b;
        --danger: #ef4444;
        --gray-50: #f8fafc;
        --gray-100: #f1f5f9;
        --gray-200: #e2e8f0;
        --gray-300: #cbd5e1;
        --gray-400: #94a3b8;
        --gray-500: #64748b;
        --gray-600: #475569;
        --gray-700: #334155;
        --gray-800: #1e293b;
        --gray-900: #0f172a;
        --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
        --shadow: 0 1px 3px rgba(0,0,0,0.1), 0 1px 2px rgba(0,0,0,0.06);
        --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06);
        --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -2px rgba(0,0,0,0.05);
        --shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.1), 0 10px 10px -5px rgba(0,0,0,0.04);
        --radius: 16px;
        --radius-sm: 12px;
        --radius-full: 9999px;
    }

    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    body {
        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
        background: var(--gray-50);
        color: var(--gray-900);
    }

    /* ===== HEADER SECTION ===== */
    .developer-header {
        background: var(--primary-gradient);
        padding: 40px 0 32px;
        position: relative;
        overflow: hidden;
    }

    .developer-header::before {
        content: '';
        position: absolute;
        top: -50%;
        right: -20%;
        width: 400px;
        height: 400px;
        background: rgba(255,255,255,0.05);
        border-radius: 50%;
        pointer-events: none;
    }

    .developer-header::after {
        content: '';
        position: absolute;
        bottom: -40%;
        left: -15%;
        width: 350px;
        height: 350px;
        background: rgba(255,255,255,0.04);
        border-radius: 50%;
        pointer-events: none;
    }

    .developer-header .container {
        position: relative;
        z-index: 1;
    }

    .developer-header .header-content {
        display: flex;
        align-items: center;
        gap: 20px;
        flex-wrap: wrap;
    }

    .developer-header .developer-avatar {
        width: 80px;
        height: 80px;
        border-radius: var(--radius);
        background: rgba(255,255,255,0.2);
        backdrop-filter: blur(12px);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 36px;
        color: white;
        box-shadow: 0 8px 32px rgba(0,0,0,0.12);
        flex-shrink: 0;
        border: 2px solid rgba(255,255,255,0.2);
    }

    .developer-header .header-text {
        flex: 1;
        min-width: 150px;
    }

    .developer-header h1 {
        color: white;
        font-size: 28px;
        font-weight: 700;
        margin-bottom: 4px;
        letter-spacing: -0.3px;
    }

    .developer-header .subtitle {
        color: rgba(255,255,255,0.85);
        font-size: 15px;
    }

    .developer-header .stat-badge {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        background: rgba(255,255,255,0.15);
        padding: 6px 18px;
        border-radius: var(--radius-full);
        color: rgba(255,255,255,0.9);
        font-size: 14px;
        backdrop-filter: blur(8px);
        border: 1px solid rgba(255,255,255,0.1);
        margin-top: 10px;
    }

    .developer-header .stat-badge i {
        font-size: 14px;
        opacity: 0.8;
    }

    .developer-header .stat-badge .number {
        font-weight: 700;
        color: white;
    }

    /* ===== APP GRID ===== */
    .section-wrapper {
        padding: 28px 0 40px;
    }

    .app-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
        padding: 0 16px;
    }

    .app-grid-card {
        background: white;
        border-radius: var(--radius);
        border: 1px solid var(--gray-200);
        overflow: hidden;
        cursor: pointer;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        text-align: center;
        padding: 16px 12px 14px;
        position: relative;
    }

    .app-grid-card:hover {
        border-color: var(--primary-light);
        box-shadow: var(--shadow-lg);
        transform: translateY(-4px);
    }

    .app-grid-card .app-icon {
        width: 72px;
        height: 72px;
        border-radius: var(--radius-sm);
        background: var(--gray-50);
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 10px;
        padding: 10px;
        transition: all 0.3s;
        position: relative;
        border: 1px solid var(--gray-100);
    }

    .app-grid-card:hover .app-icon {
        background: var(--gray-100);
        border-color: var(--gray-200);
    }

    .app-grid-card .app-icon img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        transition: transform 0.3s;
    }

    .app-grid-card:hover .app-icon img {
        transform: scale(1.05);
    }

    .app-grid-card .app-icon .badge {
        position: absolute;
        top: -6px;
        right: -6px;
        font-size: 7px;
        font-weight: 700;
        padding: 2px 8px;
        border-radius: var(--radius-full);
        color: white;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        box-shadow: 0 2px 8px rgba(0,0,0,0.15);
    }

    .app-grid-card .app-icon .badge.new {
        background: var(--success);
    }

    .app-grid-card .app-icon .badge.top {
        background: var(--warning);
    }

    .app-grid-card .app-icon .badge.featured {
        background: var(--secondary);
    }

    .app-grid-card .app-icon .badge.popular {
        background: var(--danger);
    }

    .app-grid-card .app-name {
        font-size: 14px;
        font-weight: 600;
        color: var(--gray-900);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        transition: color 0.2s;
    }

    .app-grid-card:hover .app-name {
        color: var(--primary);
    }

    .app-grid-card .app-developer {
        font-size: 12px;
        color: var(--gray-500);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        margin-bottom: 4px;
    }

    .app-grid-card .app-rating {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
        font-size: 12px;
        font-weight: 600;
        color: var(--gray-700);
        margin-bottom: 8px;
    }

    .app-grid-card .app-rating .stars {
        color: var(--warning);
        letter-spacing: 0.5px;
    }

    .app-grid-card .app-rating .count {
        font-weight: 400;
        color: var(--gray-400);
        font-size: 11px;
    }

    .app-grid-card .app-bottom {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-top: 8px;
        border-top: 1px solid var(--gray-100);
    }

    .app-grid-card .app-category {
        font-size: 10px;
        color: var(--gray-400);
        background: var(--gray-100);
        padding: 2px 10px;
        border-radius: var(--radius-full);
        font-weight: 500;
        text-transform: uppercase;
        letter-spacing: 0.3px;
    }

    .app-grid-card .btn-download {
        background: var(--primary);
        color: white;
        font-size: 11px;
        font-weight: 600;
        padding: 4px 16px;
        border-radius: var(--radius-full);
        border: none;
        cursor: pointer;
        transition: all 0.3s;
        text-decoration: none;
        display: inline-block;
        box-shadow: 0 2px 8px rgba(59, 130, 246, 0.25);
    }

    .app-grid-card .btn-download:hover {
        background: var(--primary-dark);
        transform: scale(1.05);
        box-shadow: 0 4px 16px rgba(59, 130, 246, 0.35);
    }

    /* ===== LOAD MORE ===== */
    .load-more-wrapper {
        text-align: center;
        padding: 32px 0 12px;
    }

    .load-more-wrapper.hidden {
        display: none;
    }

    .load-more-btn {
        background: white;
        color: var(--gray-700);
        font-weight: 600;
        padding: 12px 44px;
        border-radius: var(--radius-full);
        border: 1px solid var(--gray-200);
        cursor: pointer;
        transition: all 0.3s;
        font-size: 14px;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        box-shadow: var(--shadow-sm);
        position: relative;
        min-width: 180px;
        justify-content: center;
    }

    .load-more-btn:hover:not(:disabled) {
        border-color: var(--primary);
        color: var(--primary);
        background: #eff6ff;
        transform: translateY(-2px);
        box-shadow: var(--shadow-md);
    }

    .load-more-btn:disabled {
        opacity: 0.6;
        cursor: not-allowed;
        transform: none !important;
    }

    .load-more-btn .spinner {
        display: inline-block;
        width: 18px;
        height: 18px;
        border: 2px solid var(--gray-200);
        border-top-color: var(--primary);
        border-radius: 50%;
        animation: spin 0.6s linear infinite;
    }

    @keyframes spin {
        to { transform: rotate(360deg); }
    }

    .load-more-btn .btn-icon {
        transition: all 0.3s;
    }

    .load-more-btn .btn-text {
        transition: all 0.3s;
    }

    .load-more-btn.error {
        border-color: var(--danger);
        color: var(--danger);
        background: #fef2f2;
    }

    .load-more-btn.error:hover:not(:disabled) {
        background: #fee2e2;
    }

    .load-more-btn .keyboard-hint {
        font-size: 9px;
        color: var(--gray-400);
        font-weight: 400;
        background: var(--gray-100);
        padding: 1px 8px;
        border-radius: var(--radius-full);
        margin-left: 4px;
    }

    .load-more-end {
        text-align: center;
        padding: 24px 0 12px;
        color: var(--gray-400);
        font-size: 13px;
    }

    .load-more-end.hidden {
        display: none;
    }

    .load-more-end i {
        margin-right: 6px;
        color: var(--success);
    }

    /* ===== NO RESULTS ===== */
    .no-results {
        text-align: center;
        padding: 60px 20px;
        grid-column: 1 / -1;
    }

    .no-results .empty-icon {
        width: 100px;
        height: 100px;
        background: var(--gray-100);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 20px;
        font-size: 40px;
        color: var(--gray-300);
    }

    .no-results h3 {
        font-size: 20px;
        font-weight: 700;
        color: var(--gray-800);
        margin-bottom: 6px;
    }

    .no-results p {
        color: var(--gray-500);
        max-width: 400px;
        margin: 0 auto 20px;
        font-size: 14px;
        line-height: 1.6;
    }

    /* ===== ANIMATIONS ===== */
    .fade-in {
        animation: fadeIn 0.4s ease-out;
    }

    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(12px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    /* ===== RESPONSIVE ===== */
    @media (min-width: 640px) {
        .app-grid {
            grid-template-columns: repeat(2, 1fr);
            padding: 0 24px;
        }
    }

    @media (min-width: 768px) {
        .app-grid {
            grid-template-columns: repeat(3, 1fr);
            padding: 0 32px;
        }

        .developer-header h1 {
            font-size: 32px;
        }

        .developer-header .developer-avatar {
            width: 96px;
            height: 96px;
            font-size: 42px;
        }
    }

    @media (min-width: 1024px) {
        .app-grid {
            grid-template-columns: repeat(4, 1fr);
            padding: 0 40px;
        }

        .section-wrapper {
            padding: 32px 0 48px;
        }

        .developer-header {
            padding: 48px 0 36px;
        }
    }

    @media (min-width: 1280px) {
        .app-grid {
            grid-template-columns: repeat(5, 1fr);
            padding: 0 48px;
        }
    }

    @media (min-width: 1536px) {
        .app-grid {
            grid-template-columns: repeat(6, 1fr);
            padding: 0 64px;
        }
    }

    @media (max-width: 768px) {
        .app-grid-card .app-icon {
            width: 60px;
            height: 60px;
            padding: 8px;
        }

        .load-more-btn {
            padding: 10px 28px;
            font-size: 13px;
            min-width: 140px;
        }

        .developer-header .header-content {
            gap: 14px;
        }

        .developer-header .developer-avatar {
            width: 60px;
            height: 60px;
            font-size: 28px;
        }

        .developer-header h1 {
            font-size: 22px;
        }

        .load-more-btn .keyboard-hint {
            display: none;
        }
    }

    @media (max-width: 480px) {
        .app-grid {
            gap: 12px;
            padding: 0 12px;
        }

        .app-grid-card {
            padding: 12px 8px 12px;
            border-radius: 12px;
        }

        .app-grid-card .app-icon {
            width: 52px;
            height: 52px;
            padding: 6px;
        }

        .app-grid-card .app-name {
            font-size: 13px;
        }

        .app-grid-card .app-developer {
            font-size: 11px;
        }

        .app-grid-card .app-rating {
            font-size: 11px;
            margin-bottom: 6px;
        }

        .app-grid-card .btn-download {
            font-size: 10px;
            padding: 3px 12px;
        }

        .app-grid-card .app-icon .badge {
            font-size: 6px;
            padding: 1px 6px;
            top: -4px;
            right: -4px;
        }

        .section-wrapper {
            padding: 16px 0 24px;
        }

        .load-more-btn {
            padding: 8px 16px;
            font-size: 12px;
            min-width: 100px;
            width: 100%;
            justify-content: center;
        }

        .developer-header {
            padding: 24px 0 20px;
        }

        .developer-header .developer-avatar {
            width: 48px;
            height: 48px;
            font-size: 22px;
        }

        .developer-header h1 {
            font-size: 18px;
        }

        .developer-header .subtitle {
            font-size: 13px;
        }

        .developer-header .stat-badge {
            font-size: 12px;
            padding: 4px 14px;
        }

        .no-results .empty-icon {
            width: 80px;
            height: 80px;
            font-size: 32px;
        }

        .no-results h3 {
            font-size: 18px;
        }
    }

    /* ===== MODERN DESIGN SYSTEM ===== */
    :root {
        --primary: #3b82f6;
        --primary-dark: #2563eb;
        --primary-light: #93c5fd;
        --primary-gradient: linear-gradient(135deg, #3b82f6, #8b5cf6);
        --secondary: #8b5cf6;
        --success: #22c55e;
        --warning: #f59e0b;
        --danger: #ef4444;
        --gray-50: #f8fafc;
        --gray-100: #f1f5f9;
        --gray-200: #e2e8f0;
        --gray-300: #cbd5e1;
        --gray-400: #94a3b8;
        --gray-500: #64748b;
        --gray-600: #475569;
        --gray-700: #334155;
        --gray-800: #1e293b;
        --gray-900: #0f172a;
        --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
        --shadow: 0 1px 3px rgba(0,0,0,0.1), 0 1px 2px rgba(0,0,0,0.06);
        --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06);
        --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -2px rgba(0,0,0,0.05);
        --shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.1), 0 10px 10px -5px rgba(0,0,0,0.04);
        --radius: 16px;
        --radius-sm: 12px;
        --radius-full: 9999px;
    }

    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    body {
        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
        background: var(--gray-50);
        color: var(--gray-900);
    }

    /* ===== APP GRID ===== */
    .section-wrapper {
        padding: 32px 0;
    }
    .app-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
        padding: 0 16px;
    }

    .app-grid-card {
        background: white;
        border-radius: var(--radius);
        border: 1px solid var(--gray-200);
        overflow: hidden;
        cursor: pointer;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        text-align: center;
        padding: 16px 12px 14px;
    }
    .app-grid-card:hover {
        border-color: var(--primary-light);
        box-shadow: var(--shadow-lg);
        transform: translateY(-4px);
    }
    .app-grid-card .app-icon {
        width: 72px;
        height: 72px;
        border-radius: var(--radius-sm);
        background: var(--gray-50);
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 10px;
        padding: 10px;
        transition: all 0.3s;
        position: relative;
    }
    .app-grid-card:hover .app-icon {
        background: var(--gray-100);
    }
    .app-grid-card .app-icon img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        transition: transform 0.3s;
    }
    .app-grid-card:hover .app-icon img {
        transform: scale(1.05);
    }
    .app-grid-card .app-icon .badge {
        position: absolute;
        top: -4px;
        right: -4px;
        font-size: 8px;
        font-weight: 700;
        padding: 2px 8px;
        border-radius: var(--radius-full);
        color: white;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }
    .app-grid-card .app-icon .badge.new {
        background: var(--success);
    }
    .app-grid-card .app-icon .badge.top {
        background: var(--warning);
    }
    .app-grid-card .app-icon .badge.featured {
        background: var(--secondary);
    }
    .app-grid-card .app-name {
        font-size: 14px;
        font-weight: 600;
        color: var(--gray-900);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        transition: color 0.2s;
    }
    .app-grid-card:hover .app-name {
        color: var(--primary);
    }
    .app-grid-card .app-developer {
        font-size: 12px;
        color: var(--gray-500);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        margin-bottom: 4px;
    }
    .app-grid-card .app-rating {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
        font-size: 12px;
        font-weight: 600;
        color: var(--gray-700);
        margin-bottom: 8px;
    }
    .app-grid-card .app-rating .stars {
        color: var(--warning);
    }
    .app-grid-card .app-rating .count {
        font-weight: 400;
        color: var(--gray-400);
        font-size: 11px;
    }
    .app-grid-card .app-bottom {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-top: 8px;
        border-top: 1px solid var(--gray-100);
    }
    .app-grid-card .app-category {
        font-size: 10px;
        color: var(--gray-400);
        background: var(--gray-100);
        padding: 2px 10px;
        border-radius: var(--radius-full);
    }
    .app-grid-card .btn-download {
        background: var(--primary);
        color: white;
        font-size: 12px;
        font-weight: 600;
        padding: 4px 16px;
        border-radius: var(--radius-full);
        border: none;
        cursor: pointer;
        transition: all 0.3s;
        text-decoration: none;
        display: inline-block;
    }
    .app-grid-card .btn-download:hover {
        background: var(--primary-dark);
        transform: scale(1.05);
    }

    /* ===== LOAD MORE ===== */
    .load-more-wrapper {
        text-align: center;
        padding: 40px 0 20px;
    }
    .load-more-btn {
        background: white;
        color: var(--gray-700);
        font-weight: 600;
        padding: 14px 48px;
        border-radius: var(--radius-full);
        border: 1px solid var(--gray-200);
        cursor: pointer;
        transition: all 0.3s;
        font-size: 15px;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        box-shadow: var(--shadow-sm);
        position: relative;
        min-width: 200px;
        justify-content: center;
    }
    .load-more-btn:hover:not(:disabled) {
        border-color: var(--primary);
        color: var(--primary);
        background: #eff6ff;
        transform: translateY(-2px);
        box-shadow: var(--shadow-md);
    }
    .load-more-btn:disabled {
        opacity: 0.6;
        cursor: not-allowed;
        transform: none !important;
    }
    .load-more-btn .spinner {
        display: inline-block;
        width: 18px;
        height: 18px;
        border: 2px solid var(--gray-200);
        border-top-color: var(--primary);
        border-radius: 50%;
        animation: spin 0.6s linear infinite;
    }
    @keyframes spin {
        to { transform: rotate(360deg); }
    }
    .load-more-btn .btn-icon {
        transition: all 0.3s;
    }
    .load-more-btn .btn-text {
        transition: all 0.3s;
    }
    .load-more-btn.error {
        border-color: var(--danger);
        color: var(--danger);
        background: #fef2f2;
    }
    .load-more-btn.error:hover:not(:disabled) {
        background: #fee2e2;
    }

    .load-more-end {
        text-align: center;
        padding: 30px 0 20px;
        color: var(--gray-400);
        font-size: 14px;
    }
    .load-more-end i {
        margin-right: 8px;
    }

    /* ===== NO RESULTS ===== */
    .no-results {
        text-align: center;
        padding: 60px 20px;
        grid-column: 1 / -1;
    }
    .no-results i {
        font-size: 48px;
        color: var(--gray-300);
        margin-bottom: 16px;
    }
    .no-results h3 {
        font-size: 20px;
        color: var(--gray-700);
        margin-bottom: 8px;
    }
    .no-results p {
        color: var(--gray-500);
    }

    /* ===== ANIMATIONS ===== */
    .fade-in {
        animation: fadeIn 0.4s ease-out;
    }
    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(10px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    /* ===== RESPONSIVE ===== */
    @media (min-width: 640px) {
        .app-grid {
            grid-template-columns: repeat(2, 1fr);
        }
    }
    @media (min-width: 768px) {
        .app-grid {
            grid-template-columns: repeat(3, 1fr);
        }
    }
    @media (min-width: 1024px) {
        .app-grid {
            grid-template-columns: repeat(4, 1fr);
        }
        .section-wrapper {
            padding: 40px 0;
        }
    }
    @media (min-width: 1280px) {
        .app-grid {
            grid-template-columns: repeat(5, 1fr);
        }
    }
    @media (min-width: 1536px) {
        .app-grid {
            grid-template-columns: repeat(6, 1fr);
        }
    }

    @media (max-width: 768px) {
        .app-grid-card .app-icon {
            width: 64px;
            height: 64px;
            padding: 8px;
        }
        .load-more-btn {
            padding: 12px 32px;
            font-size: 14px;
            min-width: 160px;
        }
    }

    @media (max-width: 480px) {
        .app-grid {
            gap: 12px;
            padding: 0 12px;
        }
        .app-grid-card {
            padding: 12px 8px 10px;
            border-radius: 12px;
        }
        .app-grid-card .app-icon {
            width: 56px;
            height: 56px;
            padding: 6px;
        }
        .app-grid-card .app-name {
            font-size: 13px;
        }
        .app-grid-card .app-developer {
            font-size: 11px;
        }
        .app-grid-card .app-rating {
            font-size: 11px;
        }
        .app-grid-card .btn-download {
            font-size: 11px;
            padding: 3px 12px;
        }
        .app-grid-card .app-icon .badge {
            font-size: 7px;
            padding: 1px 6px;
        }
        .section-wrapper {
            padding: 20px 0;
        }
        .load-more-btn {
            padding: 10px 20px;
            font-size: 13px;
            min-width: 140px;
            width: 100%;
            justify-content: center;
        }
    }

    /* ===== MODERN DESIGN SYSTEM ===== */
    :root {
        --primary: #8b5cf6;
        --primary-dark: #7c3aed;
        --primary-light: #c4b5fd;
        --primary-gradient: linear-gradient(135deg, #8b5cf6, #ec4899);
        --secondary: #ec4899;
        --success: #22c55e;
        --warning: #f59e0b;
        --danger: #ef4444;
        --gray-50: #f8fafc;
        --gray-100: #f1f5f9;
        --gray-200: #e2e8f0;
        --gray-300: #cbd5e1;
        --gray-400: #94a3b8;
        --gray-500: #64748b;
        --gray-600: #475569;
        --gray-700: #334155;
        --gray-800: #1e293b;
        --gray-900: #0f172a;
        --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
        --shadow: 0 1px 3px rgba(0,0,0,0.1), 0 1px 2px rgba(0,0,0,0.06);
        --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06);
        --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -2px rgba(0,0,0,0.05);
        --shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.1), 0 10px 10px -5px rgba(0,0,0,0.04);
        --radius: 16px;
        --radius-sm: 12px;
        --radius-full: 9999px;
    }

    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    body {
        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
        background: var(--gray-50);
        color: var(--gray-900);
    }

    /* ===== GAME HERO SECTION ===== */
    .game-hero {
        background: linear-gradient(135deg, #8b5cf6 0%, #ec4899 50%, #f59e0b 100%);
        position: relative;
        overflow: hidden;
        padding: 60px 0;
        margin-top: 0;
    }
    .game-hero::before {
        content: '';
        position: absolute;
        top: -50%;
        right: -20%;
        width: 60%;
        height: 200%;
        background: radial-gradient(ellipse, rgba(255,255,255,0.1) 0%, transparent 70%);
        transform: rotate(-15deg);
    }
    .game-hero::after {
        content: '';
        position: absolute;
        bottom: -30%;
        left: -10%;
        width: 40%;
        height: 150%;
        background: radial-gradient(ellipse, rgba(255,255,255,0.05) 0%, transparent 70%);
        transform: rotate(20deg);
    }
    .game-hero-content {
        position: relative;
        z-index: 2;
    }
    .game-hero .hero-badge {
        background: rgba(255,255,255,0.2);
        backdrop-filter: blur(10px);
        border: 1px solid rgba(255,255,255,0.3);
        display: inline-block;
        padding: 6px 20px;
        border-radius: var(--radius-full);
        font-size: 14px;
        font-weight: 500;
        margin-bottom: 16px;
    }
    .game-hero .hero-title {
        font-size: 42px;
        font-weight: 800;
        line-height: 1.2;
        margin-bottom: 12px;
    }
    .game-hero .hero-title span {
        background: linear-gradient(135deg, #fbbf24, #f59e0b);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
    }
    .game-hero .hero-subtitle {
        font-size: 18px;
        opacity: 0.9;
        max-width: 600px;
        margin-bottom: 24px;
    }
    .game-hero .hero-stats {
        display: flex;
        gap: 40px;
    }
    .game-hero .hero-stat-number {
        font-size: 24px;
        font-weight: 700;
    }
    .game-hero .hero-stat-label {
        font-size: 13px;
        opacity: 0.8;
    }
    .game-hero .hero-icon {
        font-size: 80px;
        opacity: 0.3;
        position: absolute;
        right: 40px;
        bottom: 20px;
    }

    /* ===== APP GRID ===== */
    .section-wrapper {
        padding: 32px 0;
    }
    .app-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
        padding: 0 16px;
    }

    .app-grid-card {
        background: white;
        border-radius: var(--radius);
        border: 1px solid var(--gray-200);
        overflow: hidden;
        cursor: pointer;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        text-align: center;
        padding: 16px 12px 14px;
    }
    .app-grid-card:hover {
        border-color: var(--primary-light);
        box-shadow: var(--shadow-lg);
        transform: translateY(-4px);
    }
    .app-grid-card .app-icon {
        width: 72px;
        height: 72px;
        border-radius: var(--radius-sm);
        background: var(--gray-50);
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 10px;
        padding: 10px;
        transition: all 0.3s;
        position: relative;
    }
    .app-grid-card:hover .app-icon {
        background: var(--gray-100);
    }
    .app-grid-card .app-icon img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        transition: transform 0.3s;
    }
    .app-grid-card:hover .app-icon img {
        transform: scale(1.05);
    }
    .app-grid-card .app-icon .badge {
        position: absolute;
        top: -4px;
        right: -4px;
        font-size: 8px;
        font-weight: 700;
        padding: 2px 8px;
        border-radius: var(--radius-full);
        color: white;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }
    .app-grid-card .app-icon .badge.new {
        background: var(--success);
    }
    .app-grid-card .app-icon .badge.top {
        background: var(--warning);
    }
    .app-grid-card .app-icon .badge.featured {
        background: var(--secondary);
    }
    .app-grid-card .app-icon .badge.popular {
        background: var(--primary);
    }
    .app-grid-card .app-name {
        font-size: 14px;
        font-weight: 600;
        color: var(--gray-900);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        transition: color 0.2s;
    }
    .app-grid-card:hover .app-name {
        color: var(--primary);
    }
    .app-grid-card .app-developer {
        font-size: 12px;
        color: var(--gray-500);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        margin-bottom: 4px;
    }
    .app-grid-card .app-rating {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
        font-size: 12px;
        font-weight: 600;
        color: var(--gray-700);
        margin-bottom: 8px;
    }
    .app-grid-card .app-rating .stars {
        color: var(--warning);
    }
    .app-grid-card .app-rating .count {
        font-weight: 400;
        color: var(--gray-400);
        font-size: 11px;
    }
    .app-grid-card .app-bottom {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-top: 8px;
        border-top: 1px solid var(--gray-100);
    }
    .app-grid-card .app-category {
        font-size: 10px;
        color: var(--gray-400);
        background: var(--gray-100);
        padding: 2px 10px;
        border-radius: var(--radius-full);
    }
    .app-grid-card .app-category.game {
        background: #ede9fe;
        color: #7c3aed;
    }
    .app-grid-card .btn-download {
        background: var(--primary);
        color: white;
        font-size: 12px;
        font-weight: 600;
        padding: 4px 16px;
        border-radius: var(--radius-full);
        border: none;
        cursor: pointer;
        transition: all 0.3s;
        text-decoration: none;
        display: inline-block;
    }
    .app-grid-card .btn-download:hover {
        background: var(--primary-dark);
        transform: scale(1.05);
    }

    /* ===== LOAD MORE ===== */
    .load-more-wrapper {
        text-align: center;
        padding: 40px 0 20px;
    }
    .load-more-btn {
        background: white;
        color: var(--gray-700);
        font-weight: 600;
        padding: 14px 48px;
        border-radius: var(--radius-full);
        border: 1px solid var(--gray-200);
        cursor: pointer;
        transition: all 0.3s;
        font-size: 15px;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        box-shadow: var(--shadow-sm);
        position: relative;
        min-width: 200px;
        justify-content: center;
    }
    .load-more-btn:hover:not(:disabled) {
        border-color: var(--primary);
        color: var(--primary);
        background: #f5f3ff;
        transform: translateY(-2px);
        box-shadow: var(--shadow-md);
    }
    .load-more-btn:disabled {
        opacity: 0.6;
        cursor: not-allowed;
        transform: none !important;
    }
    .load-more-btn .spinner {
        display: inline-block;
        width: 18px;
        height: 18px;
        border: 2px solid var(--gray-200);
        border-top-color: var(--primary);
        border-radius: 50%;
        animation: spin 0.6s linear infinite;
    }
    @keyframes spin {
        to { transform: rotate(360deg); }
    }
    .load-more-btn .btn-icon {
        transition: all 0.3s;
    }
    .load-more-btn .btn-text {
        transition: all 0.3s;
    }
    .load-more-btn.error {
        border-color: var(--danger);
        color: var(--danger);
        background: #fef2f2;
    }
    .load-more-btn.error:hover:not(:disabled) {
        background: #fee2e2;
    }

    .load-more-end {
        text-align: center;
        padding: 30px 0 20px;
        color: var(--gray-400);
        font-size: 14px;
    }
    .load-more-end i {
        margin-right: 8px;
    }

    /* ===== NO RESULTS ===== */
    .no-results {
        text-align: center;
        padding: 60px 20px;
        grid-column: 1 / -1;
    }
    .no-results i {
        font-size: 48px;
        color: var(--gray-300);
        margin-bottom: 16px;
    }
    .no-results h3 {
        font-size: 20px;
        color: var(--gray-700);
        margin-bottom: 8px;
    }
    .no-results p {
        color: var(--gray-500);
    }

    /* ===== ANIMATIONS ===== */
    .fade-in {
        animation: fadeIn 0.4s ease-out;
    }
    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(10px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    /* ===== RESPONSIVE ===== */
    @media (min-width: 640px) {
        .app-grid {
            grid-template-columns: repeat(2, 1fr);
        }
    }
    @media (min-width: 768px) {
        .app-grid {
            grid-template-columns: repeat(3, 1fr);
        }
        .game-hero .hero-title {
            font-size: 48px;
        }
    }
    @media (min-width: 1024px) {
        .app-grid {
            grid-template-columns: repeat(4, 1fr);
        }
        .section-wrapper {
            padding: 40px 0;
        }
        .game-hero {
            padding: 80px 0;
        }
        .game-hero .hero-title {
            font-size: 56px;
        }
    }
    @media (min-width: 1280px) {
        .app-grid {
            grid-template-columns: repeat(5, 1fr);
        }
    }
    @media (min-width: 1536px) {
        .app-grid {
            grid-template-columns: repeat(6, 1fr);
        }
    }

    @media (max-width: 768px) {
        .game-hero {
            padding: 40px 0;
        }
        .game-hero .hero-title {
            font-size: 28px;
        }
        .game-hero .hero-subtitle {
            font-size: 16px;
        }
        .game-hero .hero-stats {
            gap: 20px;
            flex-wrap: wrap;
        }
        .game-hero .hero-stat-number {
            font-size: 20px;
        }
        .game-hero .hero-icon {
            font-size: 60px;
            right: 20px;
            bottom: 10px;
        }
        .app-grid-card .app-icon {
            width: 64px;
            height: 64px;
            padding: 8px;
        }
        .load-more-btn {
            padding: 12px 32px;
            font-size: 14px;
            min-width: 160px;
        }
    }

    @media (max-width: 480px) {
        .app-grid {
            gap: 12px;
            padding: 0 12px;
        }
        .app-grid-card {
            padding: 12px 8px 10px;
            border-radius: 12px;
        }
        .app-grid-card .app-icon {
            width: 56px;
            height: 56px;
            padding: 6px;
        }
        .app-grid-card .app-name {
            font-size: 13px;
        }
        .app-grid-card .app-developer {
            font-size: 11px;
        }
        .app-grid-card .app-rating {
            font-size: 11px;
        }
        .app-grid-card .btn-download {
            font-size: 11px;
            padding: 3px 12px;
        }
        .app-grid-card .app-icon .badge {
            font-size: 7px;
            padding: 1px 6px;
        }
        .section-wrapper {
            padding: 20px 0;
        }
        .load-more-btn {
            padding: 10px 20px;
            font-size: 13px;
            min-width: 140px;
            width: 100%;
            justify-content: center;
        }
        .game-hero .hero-title {
            font-size: 24px;
        }
        .game-hero .hero-icon {
            font-size: 40px;
            right: 10px;
            bottom: 10px;
            opacity: 0.2;
        }
    }

    /* ===== MODERN DESIGN SYSTEM ===== */
    :root {
        --primary: #3b82f6;
        --primary-dark: #2563eb;
        --primary-light: #93c5fd;
        --primary-gradient: linear-gradient(135deg, #3b82f6, #8b5cf6);
        --secondary: #8b5cf6;
        --success: #22c55e;
        --warning: #f59e0b;
        --danger: #ef4444;
        --gray-50: #f8fafc;
        --gray-100: #f1f5f9;
        --gray-200: #e2e8f0;
        --gray-300: #cbd5e1;
        --gray-400: #94a3b8;
        --gray-500: #64748b;
        --gray-600: #475569;
        --gray-700: #334155;
        --gray-800: #1e293b;
        --gray-900: #0f172a;
        --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
        --shadow: 0 1px 3px rgba(0,0,0,0.1), 0 1px 2px rgba(0,0,0,0.06);
        --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06);
        --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -2px rgba(0,0,0,0.05);
        --shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.1), 0 10px 10px -5px rgba(0,0,0,0.04);
        --radius: 16px;
        --radius-sm: 12px;
        --radius-full: 9999px;
    }

    body {
        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
        background: var(--gray-50);
        color: var(--gray-900);
    }

    /* ===== HERO SECTION ===== */
    .hero-gradient {
        background: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 50%, #ec4899 100%);
        position: relative;
        overflow: hidden;
    }
    .hero-gradient::before {
        content: '';
        position: absolute;
        top: -50%;
        right: -20%;
        width: 60%;
        height: 200%;
        background: radial-gradient(ellipse, rgba(255,255,255,0.1) 0%, transparent 70%);
        transform: rotate(-15deg);
    }
    .hero-gradient::after {
        content: '';
        position: absolute;
        bottom: -30%;
        left: -10%;
        width: 40%;
        height: 150%;
        background: radial-gradient(ellipse, rgba(255,255,255,0.05) 0%, transparent 70%);
        transform: rotate(20deg);
    }
    .hero-content {
        position: relative;
        z-index: 2;
    }
    .hero-badge {
        background: rgba(255,255,255,0.2);
        backdrop-filter: blur(10px);
        border: 1px solid rgba(255,255,255,0.3);
    }

    /* ===== SECTION HEADERS ===== */
    .section-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 20px;
    }
    .section-title {
        font-size: 22px;
        font-weight: 700;
        color: var(--gray-900);
        display: flex;
        align-items: center;
        gap: 10px;
    }
    .section-title .icon {
        width: 32px;
        height: 32px;
        border-radius: var(--radius-sm);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 14px;
    }
    .section-title .icon.blue { background: #dbeafe; color: #3b82f6; }
    .section-title .icon.purple { background: #ede9fe; color: #8b5cf6; }
    .section-title .icon.orange { background: #fef3c7; color: #f59e0b; }
    .section-title .icon.green { background: #d1fae5; color: #22c55e; }
    .section-title .icon.pink { background: #fce7f3; color: #ec4899; }
    .section-title .icon.red { background: #fecaca; color: #ef4444; }
    .section-title .icon.heart { background: #fce7f3; color: #ec4899; }

    .view-all {
        font-size: 14px;
        font-weight: 600;
        color: var(--primary);
        text-decoration: none;
        display: flex;
        align-items: center;
        gap: 6px;
        transition: all 0.2s;
    }
    .view-all:hover {
        color: var(--primary-dark);
        gap: 10px;
    }

    /* ===== PROFESSIONAL APP CARD - Horizontal Layout ===== */
    .app-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 16px;
    }

    .app-grid-card {
        background: white;
        border-radius: var(--radius);
        border: 1px solid var(--gray-200);
        overflow: hidden;
        cursor: pointer;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        position: relative;
        display: flex;
        align-items: center;
        padding: 14px 16px;
        gap: 16px;
    }
    .app-grid-card:hover {
        border-color: var(--primary-light);
        box-shadow: var(--shadow-lg);
        transform: translateY(-3px);
    }

    /* Icon - Left Side */
    .app-grid-card .app-icon-wrapper {
        flex-shrink: 0;
        width: 72px;
        height: 72px;
        border-radius: var(--radius-sm);
        background: var(--gray-50);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 10px;
        transition: all 0.3s;
        position: relative;
    }
    .app-grid-card:hover .app-icon-wrapper {
        background: var(--gray-100);
    }
    .app-grid-card .app-icon-wrapper img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        transition: transform 0.3s;
    }
    .app-grid-card:hover .app-icon-wrapper img {
        transform: scale(1.05);
    }

    /* Badge on Icon */
    .app-grid-card .app-icon-wrapper .badge-icon {
        position: absolute;
        top: -6px;
        right: -6px;
        width: 22px;
        height: 22px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 9px;
        font-weight: 700;
        color: white;
        border: 2px solid white;
        box-shadow: var(--shadow-sm);
    }
    .app-grid-card .app-icon-wrapper .badge-icon.top {
        background: var(--warning);
    }
    .app-grid-card .app-icon-wrapper .badge-icon.new {
        background: var(--success);
    }
    .app-grid-card .app-icon-wrapper .badge-icon.popular {
        background: var(--secondary);
    }
    .app-grid-card .app-icon-wrapper .badge-icon.featured {
        background: var(--danger);
    }
    .app-grid-card .app-icon-wrapper .badge-icon.favorite {
        background: #ec4899;
    }

    /* Rank Number */
    .app-grid-card .app-rank {
        position: absolute;
        top: 8px;
        left: 8px;
        font-size: 11px;
        font-weight: 700;
        color: var(--gray-400);
        background: rgba(255,255,255,0.95);
        padding: 2px 8px;
        border-radius: var(--radius-full);
        border: 1px solid var(--gray-200);
        z-index: 2;
    }
    .app-grid-card .app-rank.top {
        color: var(--warning);
        border-color: var(--warning);
        background: #fef3c7;
    }

    /* Details - Right Side */
    .app-grid-card .app-details {
        flex: 1;
        min-width: 0;
        display: flex;
        flex-direction: column;
        gap: 2px;
    }
    .app-grid-card .app-name {
        font-size: 15px;
        font-weight: 600;
        color: var(--gray-900);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        transition: color 0.2s;
        line-height: 1.3;
    }
    .app-grid-card:hover .app-name {
        color: var(--primary);
    }
    .app-grid-card .app-developer {
        font-size: 13px;
        color: var(--gray-500);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .app-grid-card .app-rating {
        display: flex;
        align-items: center;
        gap: 6px;
        font-size: 13px;
        font-weight: 600;
        color: var(--gray-700);
    }
    .app-grid-card .app-rating .stars {
        color: var(--warning);
    }
    .app-grid-card .app-rating .count {
        font-weight: 400;
        color: var(--gray-400);
        font-size: 12px;
    }
    .app-grid-card .app-meta {
        display: flex;
        align-items: center;
        gap: 6px;
        flex-wrap: wrap;
    }
    .app-grid-card .app-badge {
        font-size: 9px;
        font-weight: 600;
        padding: 2px 10px;
        border-radius: var(--radius-full);
        text-transform: uppercase;
        letter-spacing: 0.3px;
    }
    .app-grid-card .app-badge.free {
        background: #d1fae5;
        color: #065f46;
    }
    .app-grid-card .app-badge.paid {
        background: #fef3c7;
        color: #92400e;
    }
    .app-grid-card .app-badge.top {
        background: #fef3c7;
        color: #92400e;
    }
    .app-grid-card .app-badge.new {
        background: #dbeafe;
        color: #1e40af;
    }
    .app-grid-card .app-badge.popular {
        background: #fce7f3;
        color: #9d174d;
    }
    .app-grid-card .app-downloads {
        font-size: 11px;
        color: var(--gray-400);
        display: flex;
        align-items: center;
        gap: 4px;
    }

    /* Action Button */
    .app-grid-card .app-action {
        flex-shrink: 0;
        margin-left: 4px;
    }
    .app-grid-card .btn-get {
        background: var(--primary);
        color: white;
        font-size: 13px;
        font-weight: 600;
        padding: 6px 20px;
        border-radius: var(--radius-full);
        border: none;
        cursor: pointer;
        transition: all 0.3s;
        text-decoration: none;
        display: inline-block;
        white-space: nowrap;
    }
    .app-grid-card .btn-get:hover {
        background: var(--primary-dark);
        transform: scale(1.03);
        box-shadow: var(--shadow-md);
    }
    .app-grid-card .btn-installed {
        background: var(--gray-200);
        color: var(--gray-600);
        font-size: 13px;
        font-weight: 600;
        padding: 6px 16px;
        border-radius: var(--radius-full);
        border: none;
        cursor: default;
        display: inline-block;
        white-space: nowrap;
    }
    .app-grid-card .btn-installed i {
        margin-right: 4px;
    }

    /* ===== FAVORITE APPS SECTION - Redesigned ===== */
    .favorite-section {
        background: linear-gradient(135deg, #fce7f3, #fdf2f8);
        border-top: 2px solid #fbcfe8;
        border-bottom: 2px solid #fbcfe8;
        padding: 40px 0;
        position: relative;
        overflow: hidden;
    }
    .favorite-section::before {
        content: '';
        position: absolute;
        top: -50%;
        right: -10%;
        width: 40%;
        height: 200%;
        background: radial-gradient(ellipse, rgba(236, 72, 153, 0.05) 0%, transparent 70%);
        transform: rotate(15deg);
    }
    .favorite-section .section-title {
        color: #831843;
    }
    .favorite-section .section-title .icon {
        background: #fce7f3;
        color: #ec4899;
    }
    .favorite-section .view-all {
        color: #ec4899;
    }
    .favorite-section .view-all:hover {
        color: #be185d;
    }

    .favorite-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
        position: relative;
        z-index: 2;
    }

    .favorite-card {
        background: white;
        border-radius: var(--radius);
        overflow: hidden;
        cursor: pointer;
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        position: relative;
        display: flex;
        flex-direction: column;
        border: 2px solid #fbcfe8;
        box-shadow: 0 4px 15px rgba(236, 72, 153, 0.08);
    }
    .favorite-card:hover {
        transform: translateY(-6px);
        border-color: #ec4899;
        box-shadow: 0 12px 30px rgba(236, 72, 153, 0.15);
    }

    .favorite-card .card-top {
        display: flex;
        align-items: center;
        padding: 16px 18px 12px;
        gap: 14px;
        border-bottom: 1px solid var(--gray-100);
    }
    .favorite-card .app-icon-wrapper {
        flex-shrink: 0;
        width: 64px;
        height: 64px;
        border-radius: var(--radius-sm);
        background: var(--gray-50);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 10px;
        transition: all 0.3s;
        position: relative;
    }
    .favorite-card:hover .app-icon-wrapper {
        background: var(--gray-100);
    }
    .favorite-card .app-icon-wrapper img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        transition: transform 0.3s;
    }
    .favorite-card:hover .app-icon-wrapper img {
        transform: scale(1.05);
    }
    .favorite-card .app-icon-wrapper .heart-icon {
        position: absolute;
        bottom: -4px;
        right: -4px;
        width: 22px;
        height: 22px;
        border-radius: 50%;
        background: #ec4899;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 10px;
        color: white;
        border: 2px solid white;
        box-shadow: var(--shadow-sm);
    }
    .favorite-card .app-info {
        flex: 1;
        min-width: 0;
    }
    .favorite-card .app-name {
        font-size: 15px;
        font-weight: 600;
        color: var(--gray-900);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        transition: color 0.2s;
    }
    .favorite-card:hover .app-name {
        color: #ec4899;
    }
    .favorite-card .app-developer {
        font-size: 13px;
        color: var(--gray-500);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .favorite-card .card-bottom {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 10px 18px 14px;
        background: var(--gray-50);
        gap: 10px;
    }
    .favorite-card .app-stats {
        display: flex;
        align-items: center;
        gap: 12px;
    }
    .favorite-card .app-rating {
        display: flex;
        align-items: center;
        gap: 4px;
        font-size: 13px;
        font-weight: 600;
        color: var(--gray-700);
    }
    .favorite-card .app-rating .stars {
        color: var(--warning);
    }
    .favorite-card .app-rating .count {
        font-weight: 400;
        color: var(--gray-400);
        font-size: 12px;
    }
    .favorite-card .app-downloads {
        font-size: 12px;
        color: var(--gray-400);
        display: flex;
        align-items: center;
        gap: 4px;
    }
    .favorite-card .btn-favorite {
        background: #ec4899;
        color: white;
        font-size: 13px;
        font-weight: 600;
        padding: 6px 20px;
        border-radius: var(--radius-full);
        border: none;
        cursor: pointer;
        transition: all 0.3s;
        text-decoration: none;
        display: inline-block;
        white-space: nowrap;
        box-shadow: 0 2px 8px rgba(236, 72, 153, 0.3);
    }
    .favorite-card .btn-favorite:hover {
        background: #be185d;
        transform: scale(1.03);
        box-shadow: 0 4px 15px rgba(236, 72, 153, 0.4);
    }
    .favorite-card .btn-favorite i {
        margin-right: 4px;
    }

    .favorite-card .favorite-badge {
        position: absolute;
        top: 10px;
        right: 10px;
        background: #ec4899;
        color: white;
        font-size: 9px;
        font-weight: 700;
        padding: 3px 12px;
        border-radius: var(--radius-full);
        text-transform: uppercase;
        letter-spacing: 0.5px;
        box-shadow: 0 2px 8px rgba(236, 72, 153, 0.3);
        display: flex;
        align-items: center;
        gap: 4px;
    }
    .favorite-card .favorite-badge i {
        font-size: 10px;
    }

    /* ===== SWIPER CARDS ===== */
    .swiper-app-card {
        background: white;
        border-radius: var(--radius);
        border: 1px solid var(--gray-200);
        overflow: hidden;
        cursor: pointer;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        display: flex;
        align-items: center;
        padding: 12px 14px;
        gap: 14px;
    }
    .swiper-app-card:hover {
        border-color: var(--primary-light);
        box-shadow: var(--shadow-lg);
        transform: translateY(-2px);
    }
    .swiper-app-card .app-icon-wrapper {
        flex-shrink: 0;
        width: 64px;
        height: 64px;
        border-radius: var(--radius-sm);
        background: var(--gray-50);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 10px;
    }
    .swiper-app-card .app-icon-wrapper img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .swiper-app-card .app-details {
        flex: 1;
        min-width: 0;
    }
    .swiper-app-card .app-name {
        font-size: 14px;
        font-weight: 600;
        color: var(--gray-900);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .swiper-app-card .app-developer {
        font-size: 12px;
        color: var(--gray-500);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .swiper-app-card .app-rating {
        display: flex;
        align-items: center;
        gap: 4px;
        font-size: 12px;
        font-weight: 600;
        color: var(--gray-700);
    }
    .swiper-app-card .app-rating .stars {
        color: var(--warning);
    }
    .swiper-app-card .app-rating .count {
        font-weight: 400;
        color: var(--gray-400);
        font-size: 11px;
    }
    .swiper-app-card .app-badge {
        font-size: 9px;
        font-weight: 600;
        padding: 2px 10px;
        border-radius: var(--radius-full);
        text-transform: uppercase;
        letter-spacing: 0.3px;
        display: inline-block;
    }
    .swiper-app-card .app-badge.free {
        background: #d1fae5;
        color: #065f46;
    }

    /* ===== SWIPER NAVIGATION ===== */
    .swiper-container {
        padding: 0 28px;
        position: relative;
    }
    .swiper-button-next,
    .swiper-button-prev {
        background: white !important;
        color: var(--gray-700) !important;
        border-radius: 50%;
        width: 36px;
        height: 36px;
        box-shadow: var(--shadow-md);
        border: 1px solid var(--gray-200);
        transition: all 0.3s;
        opacity: 0;
        pointer-events: none;
    }
    .swiper-container:hover .swiper-button-next,
    .swiper-container:hover .swiper-button-prev {
        opacity: 1;
        pointer-events: auto;
    }
    .swiper-button-next:hover,
    .swiper-button-prev:hover {
        background: var(--primary) !important;
        color: white !important;
        border-color: var(--primary);
        transform: scale(1.05);
    }
    .swiper-button-next:after,
    .swiper-button-prev:after {
        font-size: 14px !important;
        font-weight: 700;
    }
    .swiper-button-next {
        right: -4px;
    }
    .swiper-button-prev {
        left: -4px;
    }
    .swiper-container::-webkit-scrollbar {
        display: none;
    }

    /* ===== FEATURED BANNER CARDS ===== */
    .featured-card {
        background: white;
        border-radius: var(--radius);
        overflow: hidden;
        border: 1px solid var(--gray-200);
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        cursor: pointer;
    }
    .featured-card:hover {
        transform: translateY(-4px);
        box-shadow: var(--shadow-xl);
        border-color: var(--primary-light);
    }
    .featured-card .card-image {
        height: 120px;
        background: linear-gradient(135deg, var(--gray-100), var(--gray-50));
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 20px;
        position: relative;
    }
    .featured-card .card-image img {
        height: 100%;
        width: auto;
        object-fit: contain;
        transition: transform 0.3s;
    }
    .featured-card:hover .card-image img {
        transform: scale(1.05);
    }
    .featured-card .card-badge {
        position: absolute;
        top: 12px;
        left: 12px;
        background: rgba(0,0,0,0.6);
        backdrop-filter: blur(8px);
        color: white;
        font-size: 10px;
        font-weight: 600;
        padding: 3px 12px;
        border-radius: var(--radius-full);
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }
    .featured-card .card-body {
        padding: 14px 16px 16px;
    }
    .featured-card .card-body .app-name {
        font-size: 15px;
        font-weight: 600;
        color: var(--gray-900);
    }
    .featured-card .card-body .app-developer {
        font-size: 13px;
        color: var(--gray-500);
    }
    .featured-card .card-body .app-meta {
        display: flex;
        align-items: center;
        gap: 12px;
        margin-top: 4px;
    }

    /* ===== CATEGORY PILLS ===== */
    .category-pills {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding: 4px 0 12px;
        scrollbar-width: none;
    }
    .category-pills::-webkit-scrollbar {
        display: none;
    }
    .category-pill {
        background: white;
        border: 1px solid var(--gray-200);
        padding: 8px 20px;
        border-radius: var(--radius-full);
        font-size: 13px;
        font-weight: 500;
        color: var(--gray-600);
        white-space: nowrap;
        cursor: pointer;
        transition: all 0.2s;
    }
    .category-pill:hover {
        border-color: var(--primary);
        color: var(--primary);
        background: #eff6ff;
    }
    .category-pill.active {
        background: var(--primary);
        color: white;
        border-color: var(--primary);
    }

    /* ===== LOAD MORE ===== */
    .load-more-btn {
        background: white;
        color: var(--gray-700);
        font-weight: 600;
        padding: 12px 40px;
        border-radius: var(--radius-full);
        border: 1px solid var(--gray-200);
        cursor: pointer;
        transition: all 0.3s;
        font-size: 14px;
        display: inline-flex;
        align-items: center;
        gap: 8px;
    }
    .load-more-btn:hover {
        border-color: var(--primary);
        color: var(--primary);
        background: #eff6ff;
        transform: translateY(-2px);
        box-shadow: var(--shadow-md);
    }
    .load-more-btn:disabled {
        opacity: 0.5;
        cursor: not-allowed;
        transform: none !important;
    }

    /* ===== MODAL ===== */
    .modal {
        display: none;
    }
    .modal.active {
        display: flex !important;
    }
    .modal.active .modal-content {
        animation: modalIn 0.3s ease-out;
    }
    @keyframes modalIn {
        from { opacity: 0; transform: scale(0.95) translateY(-20px); }
        to { opacity: 1; transform: scale(1) translateY(0); }
    }

    /* ===== RESPONSIVE ===== */
    @media (max-width: 1200px) {
        .app-grid,
        .favorite-grid {
            grid-template-columns: repeat(2, 1fr);
        }
    }

    @media (max-width: 768px) {
        .app-grid,
        .favorite-grid {
            grid-template-columns: 1fr;
        }
        .app-grid-card {
            padding: 12px 14px;
            gap: 14px;
        }
        .app-grid-card .app-icon-wrapper {
            width: 64px;
            height: 64px;
            padding: 8px;
        }
        .app-grid-card .app-name {
            font-size: 14px;
        }
        .app-grid-card .app-developer {
            font-size: 12px;
        }
        .app-grid-card .app-rating {
            font-size: 12px;
        }
        .app-grid-card .btn-get {
            font-size: 12px;
            padding: 5px 16px;
        }
        .app-grid-card .app-rank {
            font-size: 10px;
            padding: 1px 6px;
            top: 6px;
            left: 6px;
        }

        .favorite-card .card-top {
            padding: 12px 14px 10px;
            gap: 12px;
        }
        .favorite-card .app-icon-wrapper {
            width: 56px;
            height: 56px;
            padding: 8px;
        }
        .favorite-card .app-name {
            font-size: 14px;
        }
        .favorite-card .app-developer {
            font-size: 12px;
        }
        .favorite-card .card-bottom {
            flex-direction: column;
            align-items: stretch;
            gap: 8px;
            padding: 10px 14px 12px;
        }
        .favorite-card .app-stats {
            justify-content: space-between;
        }
        .favorite-card .btn-favorite {
            text-align: center;
        }
        .favorite-card .favorite-badge {
            top: 8px;
            right: 8px;
            font-size: 8px;
            padding: 2px 10px;
        }

        .section-title {
            font-size: 18px;
        }
        .section-title .icon {
            width: 28px;
            height: 28px;
            font-size: 12px;
        }
        .swiper-container {
            padding: 0 16px;
        }
        .swiper-button-next,
        .swiper-button-prev {
            display: none !important;
        }
        .featured-card .card-image {
            height: 100px;
        }
        .hero-gradient {
            padding: 32px 0 !important;
        }
        .app-grid-card .app-icon-wrapper .badge-icon {
            width: 18px;
            height: 18px;
            font-size: 7px;
            top: -4px;
            right: -4px;
        }
        .favorite-section {
            padding: 30px 0;
        }
    }

    @media (max-width: 480px) {
        .app-grid {
            gap: 10px;
        }
        .app-grid-card {
            padding: 10px 12px;
            gap: 10px;
            border-radius: 12px;
        }
        .app-grid-card .app-icon-wrapper {
            width: 56px;
            height: 56px;
            padding: 6px;
        }
        .app-grid-card .app-name {
            font-size: 13px;
        }
        .app-grid-card .app-developer {
            font-size: 11px;
        }
        .app-grid-card .app-rating {
            font-size: 11px;
        }
        .app-grid-card .app-rating .count {
            font-size: 10px;
        }
        .app-grid-card .app-badge {
            font-size: 8px;
            padding: 1px 8px;
        }
        .app-grid-card .app-downloads {
            font-size: 10px;
        }
        .app-grid-card .btn-get {
            font-size: 11px;
            padding: 4px 14px;
        }
        .app-grid-card .app-rank {
            font-size: 9px;
            padding: 1px 5px;
        }
        .app-grid-card .app-action {
            margin-left: 0;
        }

        .favorite-card .app-icon-wrapper {
            width: 48px;
            height: 48px;
            padding: 6px;
        }
        .favorite-card .app-name {
            font-size: 13px;
        }
        .favorite-card .app-developer {
            font-size: 11px;
        }
        .favorite-card .app-rating {
            font-size: 12px;
        }
        .favorite-card .app-downloads {
            font-size: 11px;
        }
        .favorite-card .btn-favorite {
            font-size: 12px;
            padding: 5px 16px;
        }
        .favorite-card .favorite-badge {
            font-size: 7px;
            padding: 2px 8px;
        }
        .favorite-card .favorite-badge i {
            font-size: 8px;
        }
    }

    footer {
        width: 100%;
        margin: 0;
    }
    
    footer .w-full {
        width: 100%;
        max-width: 100%;
    }
    
    /* Compact spacing */
    .space-y-2 > * + * {
        margin-top: 0.5rem;
    }
    
    @media (max-width: 640px) {
        footer .w-full {
            padding-left: 1rem;
            padding-right: 1rem;
        }
    }

    /* Smooth transitions */
    #mobileMenuPanel,
    #mobileSearchPanel {
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    
    #mobileMenuPanel:not(.hidden),
    #mobileSearchPanel:not(.hidden) {
        animation: slideDown 0.25s ease forwards;
    }
    
    @keyframes slideDown {
        from {
            opacity: 0;
            transform: translateY(-8px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
    
    /* Language dropdown animations */
    [x-data] {
        position: relative;
    }
    
    /* Mobile optimizations */
    @media (max-width: 640px) {
        nav .max-w-7xl {
            padding-left: 0.75rem;
            padding-right: 0.75rem;
        }
    }


    /* ===== MODERN DESIGN SYSTEM ===== */
    :root {
        --primary: #3b82f6;
        --primary-dark: #2563eb;
        --primary-light: #93c5fd;
        --primary-gradient: linear-gradient(135deg, #3b82f6, #8b5cf6);
        --secondary: #8b5cf6;
        --success: #22c55e;
        --warning: #f59e0b;
        --danger: #ef4444;
        --gray-50: #f8fafc;
        --gray-100: #f1f5f9;
        --gray-200: #e2e8f0;
        --gray-300: #cbd5e1;
        --gray-400: #94a3b8;
        --gray-500: #64748b;
        --gray-600: #475569;
        --gray-700: #334155;
        --gray-800: #1e293b;
        --gray-900: #0f172a;
        --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
        --shadow: 0 1px 3px rgba(0,0,0,0.1), 0 1px 2px rgba(0,0,0,0.06);
        --shadow-md: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -1px rgba(0,0,0,0.06);
        --shadow-lg: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -2px rgba(0,0,0,0.05);
        --shadow-xl: 0 20px 25px -5px rgba(0,0,0,0.1), 0 10px 10px -5px rgba(0,0,0,0.04);
        --radius: 16px;
        --radius-sm: 12px;
        --radius-full: 9999px;
    }

    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    body {
        font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
        background: var(--gray-50);
        color: var(--gray-900);
    }

    /* ===== APP GRID ===== */
    .section-wrapper {
        padding: 32px 0;
    }
    .app-grid {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
        padding: 0 16px;
    }
    .app-grid.list-view {
        grid-template-columns: 1fr;
    }
    .app-grid.list-view .app-grid-card {
        display: flex;
        align-items: center;
        padding: 12px 16px;
        text-align: left;
        gap: 16px;
    }
    .app-grid.list-view .app-grid-card .app-icon {
        margin: 0;
        width: 56px;
        height: 56px;
        flex-shrink: 0;
    }
    .app-grid.list-view .app-grid-card .app-info {
        flex: 1;
        min-width: 0;
    }
    .app-grid.list-view .app-grid-card .app-name {
        white-space: normal;
        font-size: 15px;
    }
    .app-grid.list-view .app-grid-card .app-developer {
        font-size: 13px;
    }
    .app-grid.list-view .app-grid-card .app-bottom {
        border-top: none;
        padding-top: 0;
        gap: 12px;
        flex-shrink: 0;
    }
    .app-grid.list-view .app-grid-card .app-rating {
        margin-bottom: 0;
    }

    .app-grid-card {
        background: white;
        border-radius: var(--radius);
        border: 1px solid var(--gray-200);
        overflow: hidden;
        cursor: pointer;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        text-align: center;
        padding: 16px 12px 14px;
    }
    .app-grid-card:hover {
        border-color: var(--primary-light);
        box-shadow: var(--shadow-lg);
        transform: translateY(-4px);
    }
    .app-grid-card .app-icon {
        width: 72px;
        height: 72px;
        border-radius: var(--radius-sm);
        background: var(--gray-50);
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 10px;
        padding: 10px;
        transition: all 0.3s;
        position: relative;
    }
    .app-grid-card:hover .app-icon {
        background: var(--gray-100);
    }
    .app-grid-card .app-icon img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        transition: transform 0.3s;
    }
    .app-grid-card:hover .app-icon img {
        transform: scale(1.05);
    }
    .app-grid-card .app-icon .badge {
        position: absolute;
        top: -4px;
        right: -4px;
        font-size: 8px;
        font-weight: 700;
        padding: 2px 8px;
        border-radius: var(--radius-full);
        color: white;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }
    .app-grid-card .app-icon .badge.new {
        background: var(--success);
    }
    .app-grid-card .app-icon .badge.top {
        background: var(--warning);
    }
    .app-grid-card .app-icon .badge.featured {
        background: var(--secondary);
    }
    .app-grid-card .app-name {
        font-size: 14px;
        font-weight: 600;
        color: var(--gray-900);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        transition: color 0.2s;
    }
    .app-grid-card:hover .app-name {
        color: var(--primary);
    }
    .app-grid-card .app-developer {
        font-size: 12px;
        color: var(--gray-500);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        margin-bottom: 4px;
    }
    .app-grid-card .app-rating {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4px;
        font-size: 12px;
        font-weight: 600;
        color: var(--gray-700);
        margin-bottom: 8px;
    }
    .app-grid-card .app-rating .stars {
        color: var(--warning);
    }
    .app-grid-card .app-rating .count {
        font-weight: 400;
        color: var(--gray-400);
        font-size: 11px;
    }
    .app-grid-card .app-bottom {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-top: 8px;
        border-top: 1px solid var(--gray-100);
    }
    .app-grid-card .app-category {
        font-size: 10px;
        color: var(--gray-400);
        background: var(--gray-100);
        padding: 2px 10px;
        border-radius: var(--radius-full);
    }
    .app-grid-card .btn-download {
        background: var(--primary);
        color: white;
        font-size: 12px;
        font-weight: 600;
        padding: 4px 16px;
        border-radius: var(--radius-full);
        border: none;
        cursor: pointer;
        transition: all 0.3s;
        text-decoration: none;
        display: inline-block;
    }
    .app-grid-card .btn-download:hover {
        background: var(--primary-dark);
        transform: scale(1.05);
    }

    /* ===== LOAD MORE ===== */
    .load-more-wrapper {
        text-align: center;
        padding: 40px 0 20px;
    }
    .load-more-btn {
        background: white;
        color: var(--gray-700);
        font-weight: 600;
        padding: 14px 48px;
        border-radius: var(--radius-full);
        border: 1px solid var(--gray-200);
        cursor: pointer;
        transition: all 0.3s;
        font-size: 15px;
        display: inline-flex;
        align-items: center;
        gap: 10px;
        box-shadow: var(--shadow-sm);
        position: relative;
        min-width: 200px;
        justify-content: center;
    }
    .load-more-btn:hover:not(:disabled) {
        border-color: var(--primary);
        color: var(--primary);
        background: #eff6ff;
        transform: translateY(-2px);
        box-shadow: var(--shadow-md);
    }
    .load-more-btn:disabled {
        opacity: 0.6;
        cursor: not-allowed;
        transform: none !important;
    }
    .load-more-btn .spinner {
        display: inline-block;
        width: 18px;
        height: 18px;
        border: 2px solid var(--gray-200);
        border-top-color: var(--primary);
        border-radius: 50%;
        animation: spin 0.6s linear infinite;
    }
    @keyframes spin {
        to { transform: rotate(360deg); }
    }
    .load-more-btn .btn-icon {
        transition: all 0.3s;
    }
    .load-more-btn .btn-text {
        transition: all 0.3s;
    }
    .load-more-btn.error {
        border-color: var(--danger);
        color: var(--danger);
        background: #fef2f2;
    }
    .load-more-btn.error:hover:not(:disabled) {
        background: #fee2e2;
    }

    .load-more-end {
        text-align: center;
        padding: 30px 0 20px;
        color: var(--gray-400);
        font-size: 14px;
    }
    .load-more-end i {
        margin-right: 8px;
    }

    /* ===== NO RESULTS ===== */
    .no-results {
        text-align: center;
        padding: 80px 20px;
        grid-column: 1 / -1;
    }
    .no-results .empty-icon {
        width: 120px;
        height: 120px;
        background: var(--gray-100);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 20px;
        font-size: 48px;
        color: var(--gray-400);
    }
    .no-results h3 {
        font-size: 22px;
        color: var(--gray-700);
        margin-bottom: 8px;
    }
    .no-results p {
        color: var(--gray-500);
        max-width: 400px;
        margin: 0 auto 20px;
    }
    .no-results .suggestions {
        display: flex;
        gap: 8px;
        justify-content: center;
        flex-wrap: wrap;
    }
    .no-results .suggestions .suggestion-chip {
        padding: 8px 20px;
        background: white;
        border: 1px solid var(--gray-200);
        border-radius: var(--radius-full);
        font-size: 13px;
        color: var(--gray-600);
        cursor: pointer;
        transition: all 0.2s;
    }
    .no-results .suggestions .suggestion-chip:hover {
        border-color: var(--primary);
        color: var(--primary);
        background: #eff6ff;
    }

    /* ===== ANIMATIONS ===== */
    .fade-in {
        animation: fadeIn 0.4s ease-out;
    }
    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(10px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    /* ===== RESPONSIVE ===== */
    @media (min-width: 640px) {
        .app-grid {
            grid-template-columns: repeat(2, 1fr);
        }
    }
    @media (min-width: 768px) {
        .app-grid {
            grid-template-columns: repeat(3, 1fr);
        }
    }
    @media (min-width: 1024px) {
        .app-grid {
            grid-template-columns: repeat(4, 1fr);
        }
        .section-wrapper {
            padding: 40px 0;
        }
    }
    @media (min-width: 1280px) {
        .app-grid {
            grid-template-columns: repeat(5, 1fr);
        }
    }
    @media (min-width: 1536px) {
        .app-grid {
            grid-template-columns: repeat(6, 1fr);
        }
    }

    @media (max-width: 768px) {
        .app-grid-card .app-icon {
            width: 64px;
            height: 64px;
            padding: 8px;
        }
        .load-more-btn {
            padding: 12px 32px;
            font-size: 14px;
            min-width: 160px;
        }
        .app-grid.list-view .app-grid-card {
            flex-wrap: wrap;
        }
        .app-grid.list-view .app-grid-card .app-bottom {
            width: 100%;
            justify-content: flex-end;
        }
    }

    @media (max-width: 480px) {
        .app-grid {
            gap: 12px;
            padding: 0 12px;
        }
        .app-grid-card {
            padding: 12px 8px 10px;
            border-radius: 12px;
        }
        .app-grid-card .app-icon {
            width: 56px;
            height: 56px;
            padding: 6px;
        }
        .app-grid-card .app-name {
            font-size: 13px;
        }
        .app-grid-card .app-developer {
            font-size: 11px;
        }
        .app-grid-card .app-rating {
            font-size: 11px;
        }
        .app-grid-card .btn-download {
            font-size: 11px;
            padding: 3px 12px;
        }
        .app-grid-card .app-icon .badge {
            font-size: 7px;
            padding: 1px 6px;
        }
        .section-wrapper {
            padding: 20px 0;
        }
        .load-more-btn {
            padding: 10px 20px;
            font-size: 13px;
            min-width: 140px;
            width: 100%;
            justify-content: center;
        }
        .app-grid.list-view .app-grid-card {
            padding: 10px 12px;
            gap: 10px;
        }
        .app-grid.list-view .app-grid-card .app-icon {
            width: 48px;
            height: 48px;
        }
    }

        .drawer {
            transition: transform 0.3s ease;
            transform: translateX(100%);
        }
        .drawer.open {
            transform: translateX(0);
        }
