/* ============================================================
   GAMEOLID - ANDROID NATIVE MOBILE UI
   Applies only on mobile screens (max-width: 768px)
   ============================================================ */

@media (max-width: 768px) {

    /* ── GLOBAL RESET & FOUNDATION ── */
    html, body {
        overflow-x: hidden !important;
        background: #f2f3f5 !important;
        animation: none !important;
    }

    body::before, body::after {
        display: none !important;
    }

    /* Remove AdminLTE sidebar & navbar overhead on mobile */
    .app-wrapper > .app-header,
    .app-sidebar,
    .sidebar-overlay {
        display: none !important;
    }

    .app-main {
        margin-left: 0 !important;
        padding-top: 0 !important;
    }

    .app-content {
        padding: 0 !important;
    }

    .container-fluid {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    .row {
        --bs-gutter-x: 8px !important;
        --bs-gutter-y: 8px !important;
    }

    /* ── ANDROID NATIVE TOP APP BAR ── */
    .app-mobile-header {
        display: flex !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 1050 !important;
        background: #ffffff !important;
        border-bottom: 1px solid #e8eaed !important;
        height: 56px !important;
        padding: 0 4px 0 4px !important;
        align-items: center !important;
        box-shadow: 0 1px 3px rgba(0,0,0,0.08) !important;
        backdrop-filter: none !important;
    }

    .app-mobile-header .btn-back {
        width: 48px !important;
        height: 48px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: #1c1b1f !important;
        font-size: 1.3rem !important;
        text-decoration: none !important;
        border-radius: 50% !important;
        flex-shrink: 0 !important;
        transition: background 0.15s !important;
    }

    .app-mobile-header .btn-back:active {
        background: rgba(0,0,0,0.08) !important;
    }

    .app-mobile-header h5 {
        font-size: 1.1rem !important;
        font-weight: 600 !important;
        color: #1c1b1f !important;
        margin: 0 !important;
        flex: 1 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .app-header-actions {
        display: flex !important;
        align-items: center !important;
        gap: 4px !important;
        margin-left: auto !important;
        flex-shrink: 0 !important;
    }

    .btn-header-icon {
        width: 48px !important;
        height: 48px !important;
        border: none !important;
        background: transparent !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 1.25rem !important;
        cursor: pointer !important;
        transition: background 0.15s !important;
    }

    .btn-header-icon:active {
        background: rgba(0,0,0,0.08) !important;
    }

    /* Hide breadcrumb on mobile – replaced by top app bar */
    .breadcrumb-section,
    .breadcrumb-premium-wrapper {
        display: none !important;
    }

    /* ── ANDROID-STYLE GAME LIST (Row layout, not cards) ── */
    /* Game cards in 2-column grid — clean & tight */
    .row.row-cols-2 {
        --bs-gutter-x: 8px !important;
        --bs-gutter-y: 8px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        width: 100% !important;
    }

    .game-card {
        border-radius: 10px !important;
        border: 1px solid #e8eaed !important;
        background: #ffffff !important;
        box-shadow: none !important;
        transition: none !important;
        transform: none !important;
    }

    .game-card:active {
        transform: scale(0.97) !important;
        background: #f5f5f5 !important;
    }

    .game-card.selected {
        border-color: #1a73e8 !important;
        background: rgba(26,115,232,0.05) !important;
        box-shadow: inset 0 0 0 2px #1a73e8 !important;
    }

    .game-card .card-body {
        padding: 8px 8px 10px !important;
    }

    .game-title {
        font-size: 0.72rem !important;
        font-weight: 600 !important;
        color: #1c1b1f !important;
        line-height: 1.3 !important;
        height: 2.6em !important;
        overflow: hidden !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        margin-bottom: 6px !important;
    }

    .game-meta-row {
        display: flex !important;
        align-items: center !important;
        gap: 4px !important;
        margin-bottom: 6px !important;
        flex-wrap: nowrap !important;
        overflow: hidden !important;
    }

    .platform-badge-mini {
        background: #e8f0fe !important;
        color: #1a73e8 !important;
        padding: 2px 6px !important;
        border-radius: 4px !important;
        font-size: 0.6rem !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
        flex-shrink: 0 !important;
        border: none !important;
    }

    .genre-badge-mini {
        background: #f1f3f4 !important;
        color: #5f6368 !important;
        padding: 2px 5px !important;
        border-radius: 4px !important;
        font-size: 0.58rem !important;
        font-weight: 500 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        flex: 1 !important;
        border: none !important;
    }

    .size-badge-mini {
        font-size: 0.62rem !important;
        color: #5f6368 !important;
        display: flex !important;
        align-items: center !important;
        gap: 3px !important;
        margin-bottom: 6px !important;
    }

    .add-btn-modern {
        width: 100% !important;
        padding: 6px 8px !important;
        font-size: 0.72rem !important;
        font-weight: 700 !important;
        border-radius: 6px !important;
        border: none !important;
        background: #1a73e8 !important;
        color: white !important;
        transition: none !important;
        box-shadow: none !important;
    }

    .add-btn-modern:active {
        background: #1557b0 !important;
    }

    /* ── SEARCH BAR – Android Material Style ── */
    .premium-mobile-card.fancy-card {
        background: #ffffff !important;
        border: none !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        padding: 10px 12px 12px !important;
        margin-bottom: 0 !important;
        border-bottom: 1px solid #e8eaed !important;
    }

    .compact-search-title {
        font-size: 0.78rem !important;
        font-weight: 600 !important;
        color: #5f6368 !important;
        margin-bottom: 8px !important;
        gap: 6px !important;
    }

    #searchGame, .form-select.premium-input-soft {
        height: 42px !important;
        font-size: 0.85rem !important;
        background: #f1f3f4 !important;
        border: none !important;
        border-radius: 8px !important;
        padding: 0 12px 0 42px !important;
        box-shadow: none !important;
        color: #1c1b1f !important;
    }

    #searchGame:focus, .form-select.premium-input-soft:focus {
        background: #e8f0fe !important;
        border-color: #1a73e8 !important;
        box-shadow: 0 0 0 2px rgba(26,115,232,0.2) !important;
    }

    .btn-premium-gradient {
        height: 42px !important;
        font-size: 0.82rem !important;
        border-radius: 8px !important;
        background: #1a73e8 !important;
        border: none !important;
        font-weight: 700 !important;
        box-shadow: none !important;
    }

    /* ── SECTION TITLE ── */
    .section-title-wrapper {
        padding: 10px 0 6px !important;
        margin-bottom: 2px !important;
    }

    .section-title-wrapper h6 {
        font-size: 0.82rem !important;
        font-weight: 700 !important;
        color: #1c1b1f !important;
    }

    /* ── FLOATING CART BUTTON – Material FAB ── */
    .floating-cart-wrapper {
        position: fixed !important;
        bottom: 20px !important;
        right: 16px !important;
        z-index: 1040 !important;
    }

    .btn-float-cart {
        width: 56px !important;
        height: 56px !important;
        border-radius: 16px !important;
        background: #1a73e8 !important;
        border: none !important;
        box-shadow: 0 4px 12px rgba(26,115,232,0.35) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        color: white !important;
        font-size: 1.25rem !important;
        transition: transform 0.15s !important;
    }

    .btn-float-cart:active {
        transform: scale(0.93) !important;
    }

    .floating-cart-count {
        position: absolute !important;
        top: -6px !important;
        right: -6px !important;
        background: #ea4335 !important;
        color: white !important;
        border-radius: 10px !important;
        min-width: 20px !important;
        height: 20px !important;
        font-size: 0.7rem !important;
        font-weight: 700 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 2px solid white !important;
        padding: 0 4px !important;
    }

    /* ── BATCH SELECTION BAR ── */
    .batch-selection-menu {
        bottom: 16px !important;
        border-radius: 14px !important;
        height: 52px !important;
        padding: 0 12px !important;
        gap: 10px !important;
        box-shadow: 0 4px 16px rgba(0,0,0,0.15) !important;
        background: #ffffff !important;
        border: 1px solid #e8eaed !important;
    }

    .btn-batch-add {
        border-radius: 8px !important;
        font-size: 0.8rem !important;
        padding: 6px 14px !important;
        background: #1a73e8 !important;
        font-weight: 700 !important;
    }

    .btn-batch-clear {
        border-radius: 8px !important;
        background: #f1f3f4 !important;
        color: #5f6368 !important;
        border: none !important;
        width: 36px !important;
        height: 36px !important;
    }

    /* ── MODAL – Android Bottom Sheet Style ── */
    .modal-dialog {
        margin: 0 !important;
        max-width: 100% !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        transform: none !important;
    }

    .modal.fade .modal-dialog {
        transform: translateY(100%) !important;
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }

    .modal.show .modal-dialog {
        transform: translateY(0) !important;
    }

    .modal-content {
        border-radius: 20px 20px 0 0 !important;
        border: none !important;
        background: #ffffff !important;
        box-shadow: 0 -4px 20px rgba(0,0,0,0.12) !important;
        max-height: 92vh !important;
        overflow-y: auto !important;
        backdrop-filter: none !important;
    }

    /* Bottom sheet drag handle */
    .modal-content::before {
        content: '' !important;
        display: block !important;
        width: 40px !important;
        height: 4px !important;
        background: #dadce0 !important;
        border-radius: 2px !important;
        margin: 10px auto 0 !important;
    }

    .modal-header {
        padding: 12px 16px 10px !important;
        border-bottom: 1px solid #f1f3f4 !important;
        background: transparent !important;
    }

    .modal-title {
        font-size: 1rem !important;
        font-weight: 700 !important;
        color: #1c1b1f !important;
    }

    .modal-body {
        padding: 0 !important;
        overflow-y: auto !important;
    }

    .modal-body .p-4 {
        padding: 12px 16px !important;
    }

    /* ── MODAL FOOTER / ACTION BAR ── */
    .action-footer {
        position: sticky !important;
        bottom: 0 !important;
        background: #ffffff !important;
        border-top: 1px solid #f1f3f4 !important;
        padding: 10px 16px !important;
        padding-bottom: calc(10px + env(safe-area-inset-bottom)) !important;
        z-index: 10 !important;
        box-shadow: 0 -2px 8px rgba(0,0,0,0.04) !important;
    }

    .btn-premium-submit {
        height: 48px !important;
        border-radius: 24px !important;
        font-size: 0.9rem !important;
        font-weight: 700 !important;
        letter-spacing: 0.02em !important;
        background: #1a73e8 !important;
        border: none !important;
        box-shadow: 0 2px 8px rgba(26,115,232,0.3) !important;
        padding: 0 24px !important;
    }

    .btn-premium-submit:active {
        transform: scale(0.98) !important;
    }

    /* ── CART ITEMS – Material List Style ── */
    .item-row td {
        padding: 8px 12px !important;
        border-bottom: 1px solid #f1f3f4 !important;
        font-size: 0.82rem !important;
    }

    .nama-game {
        font-size: 0.82rem !important;
        font-weight: 600 !important;
        color: #1c1b1f !important;
    }

    .remove-from-cart-btn {
        width: 32px !important;
        height: 32px !important;
        border-radius: 8px !important;
        background: #fce8e6 !important;
        color: #ea4335 !important;
        border: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 0.9rem !important;
    }

    /* ── PREMIUM FIELD CARD in Modal ── */
    .premium-field-card {
        background: #f8f9fa !important;
        border: 1px solid #e8eaed !important;
        border-radius: 10px !important;
        padding: 12px !important;
        margin-bottom: 10px !important;
        box-shadow: none !important;
    }

    .premium-field-card .row.g-3 {
        --bs-gutter-y: 10px !important;
    }

    .premium-input-soft {
        background: #ffffff !important;
        border: 1px solid #dadce0 !important;
        border-radius: 8px !important;
        padding: 10px 12px !important;
        font-size: 0.85rem !important;
        height: 44px !important;
        transition: border-color 0.15s !important;
    }

    .premium-input-soft:focus {
        border-color: #1a73e8 !important;
        box-shadow: 0 0 0 2px rgba(26,115,232,0.15) !important;
        background: #ffffff !important;
    }

    /* ── CUSTOM SELECT DROPDOWN ── */
    .custom-select-btn {
        height: 44px !important;
        border-radius: 8px !important;
        background: #ffffff !important;
        border: 1px solid #dadce0 !important;
        font-size: 0.85rem !important;
    }

    .custom-select-menu {
        border-radius: 8px !important;
        box-shadow: 0 4px 16px rgba(0,0,0,0.12) !important;
        border: 1px solid #e8eaed !important;
    }

    .custom-select-item {
        padding: 12px 14px !important;
        font-size: 0.85rem !important;
        border-bottom: 1px solid #f1f3f4 !important;
    }

    .custom-select-item:last-child { border-bottom: none !important; }

    /* ── PAGINATION ── */
    .pagination {
        gap: 4px !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
    }

    .page-item .page-link {
        width: 36px !important;
        height: 36px !important;
        border-radius: 8px !important;
        font-size: 0.82rem !important;
        border: 1px solid #e8eaed !important;
        background: #ffffff !important;
        color: #1c1b1f !important;
        box-shadow: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .page-item.active .page-link {
        background: #1a73e8 !important;
        color: white !important;
        border-color: #1a73e8 !important;
    }

    /* ── GAME STATUS BUBBLE ── */
    #gameStatusBubble {
        width: 270px !important;
        border-radius: 12px !important;
        box-shadow: 0 8px 24px rgba(0,0,0,0.18) !important;
        border: none !important;
    }

    .bubble-header {
        padding: 12px 14px !important;
        font-size: 0.85rem !important;
        font-weight: 700 !important;
    }

    .bubble-body {
        padding: 12px 14px !important;
        font-size: 0.8rem !important;
    }

    .bubble-footer {
        padding: 8px 14px !important;
        font-size: 0.7rem !important;
    }

    /* ── PROMO BANNER ── */
    .promo-banner-mobile {
        border-radius: 10px !important;
        padding: 12px !important;
        margin: 0 0 8px !important;
        background: linear-gradient(135deg, rgba(234,67,53,0.08), rgba(251,188,4,0.08)) !important;
        border: 1px solid rgba(234,67,53,0.12) !important;
    }

    /* ── MOBILE TRANSACTION CARDS (History/List views) ── */
    .mobile-trx-card {
        display: block !important;
        background: #ffffff !important;
        border-radius: 10px !important;
        border: 1px solid #e8eaed !important;
        padding: 12px 14px !important;
        margin-bottom: 8px !important;
        text-decoration: none !important;
        color: inherit !important;
        box-shadow: none !important;
        transition: background 0.15s !important;
    }

    .mobile-trx-card:active {
        background: #f5f5f5 !important;
        text-decoration: none !important;
    }

    /* ── FLOATING PROFILE/SHORTCUT BUTTON ── */
    .floating-shortcut-container,
    #shortcutContainer.floating-shortcut-container {
        bottom: 20px !important;
        right: 16px !important;
        z-index: 2000 !important;
    }
    
    #chat-widget-container,
    .wa-chat-widget {
        bottom: 20px !important;
        left: 16px !important;
        z-index: 2000 !important;
    }

    /* Elevated floating positions ONLY when floating bottom navigation is present on the page */
    body:has(.mobile-bottom-nav, .android-bottom-nav) .floating-shortcut-container,
    body:has(.mobile-bottom-nav, .android-bottom-nav) #shortcutContainer.floating-shortcut-container {
        bottom: 80px !important;
    }
    
    body:has(.mobile-bottom-nav, .android-bottom-nav) #chat-widget-container,
    body:has(.mobile-bottom-nav, .android-bottom-nav) .wa-chat-widget {
        bottom: 80px !important;
    }

    .btn-float {
        width: 52px !important;
        height: 52px !important;
        border-radius: 16px !important;
        border: none !important;
        background: #ffffff !important;
        box-shadow: 0 2px 10px rgba(0,0,0,0.15) !important;
        backdrop-filter: none !important;
    }

    /* ── DASHBOARD STATS – 2 col grid ── */
    .stat-widget-harmony {
        background: #ffffff !important;
        border-radius: 12px !important;
        border: 1px solid #e8eaed !important;
        padding: 14px !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
    }

    .stat-widget-harmony:hover {
        transform: none !important;
    }

    .stat-value {
        font-size: 1.4rem !important;
        font-weight: 800 !important;
    }

    .stat-label {
        font-size: 0.7rem !important;
    }

    .icon-box-premium {
        width: 40px !important;
        height: 40px !important;
        border-radius: 10px !important;
        font-size: 1.1rem !important;
        margin-bottom: 10px !important;
        box-shadow: none !important;
    }

    /* ── DASHBOARD HERO ── */
    .dashboard-hero {
        background: #ffffff !important;
        border-radius: 12px !important;
        border: 1px solid #e8eaed !important;
        padding: 18px 16px !important;
        margin-bottom: 12px !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
    }

    .dashboard-hero h1 {
        font-size: 1.5rem !important;
        font-weight: 800 !important;
    }

    .dashboard-hero p {
        font-size: 0.85rem !important;
    }

    /* ── MENU CARDS – 2 col grid ── */
    .menu-card-harmony, .menu-card {
        background: #ffffff !important;
        border-radius: 12px !important;
        border: 1px solid #e8eaed !important;
        padding: 16px 12px !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
    }

    .menu-card-harmony:hover, .menu-card:hover {
        transform: none !important;
        box-shadow: none !important;
    }

    .menu-card-harmony:active, .menu-card:active {
        background: #f5f5f5 !important;
    }

    .menu-icon-vibrant {
        font-size: 2.2rem !important;
        margin-bottom: 10px !important;
        filter: none !important;
    }

    .menu-icon {
        font-size: 2rem !important;
        margin-bottom: 8px !important;
    }

    .menu-title-harmony {
        font-size: 0.85rem !important;
        font-weight: 700 !important;
        margin-bottom: 4px !important;
    }

    .menu-desc-harmony, .menu-description {
        font-size: 0.72rem !important;
        line-height: 1.35 !important;
    }

    .menu-title {
        font-size: 0.9rem !important;
        margin-bottom: 4px !important;
    }

    /* ── SELECTION INDICATOR ── */
    .selection-indicator {
        width: 22px !important;
        height: 22px !important;
        border-radius: 6px !important;
        border: 2px solid #dadce0 !important;
        background: rgba(255,255,255,0.9) !important;
        top: 8px !important;
        left: 8px !important;
    }

    .game-card.selected .selection-indicator {
        background: #1a73e8 !important;
        border-color: #1a73e8 !important;
    }

    /* ── ADMIN QUICK GUIDE (mobile mini version) ── */
    .d-none.d-md-block.container-fluid {
        display: none !important;
    }

    /* ── GENERAL PERFORMANCE ── */
    * {
        transition-duration: 0.1s !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    .game-card:hover {
        transform: none !important;
    }

    .fancy-card, .glass-card {
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    /* ── SAFE AREA for iPhone/Android notch ── */
    body {
        padding-bottom: env(safe-area-inset-bottom) !important;
    }

    .action-footer, .batch-selection-menu {
        padding-bottom: calc(10px + env(safe-area-inset-bottom)) !important;
    }
}

/* ============================================================
   SUMMARY CONTAINER – Desktop (min-width: 769px)
   ============================================================ */
@media (min-width: 769px) {
    .summary-container-adaptive {
        display: flex;
        flex-direction: row;
        gap: 16px;
        margin-bottom: 24px;
    }

    .summary-col {
        flex: 1;
    }

    .summary-col:last-child {
        grid-column: unset;
    }

    .summary-card-inner {
        display: flex;
        align-items: center;
        gap: 14px;
        padding: 1.25rem;
    }
}


@media (max-width: 768px) {
    table.table tbody tr td {
        vertical-align: middle !important;
    }

    /* Fix overlapping dropdowns in modal */
    .custom-select-dropdown.open {
        z-index: 1100 !important;
    }

    /* Responsive table in cart */
    .table-responsive {
        border-radius: 10px !important;
        border: none !important;
    }

    /* Quick info pill badges */
    .badge.bg-primary, .badge.bg-info, .badge.bg-success, .badge.bg-secondary {
        font-size: 0.65rem !important;
        padding: 4px 8px !important;
        border-radius: 6px !important;
    }

    /* Remove all card hover lifts */
    .fancy-card:hover, .stat-widget-harmony:hover, .summary-card-inner:hover {
        transform: none !important;
        box-shadow: none !important;
    }
}

/* ============================================================
   HISTORY TRANSAKSI – Android List Style
   ============================================================ */
@media (max-width: 768px) {

    /* Convert 3-col card grid → full-width list with 8px spacing */
    .transaction-list-adaptive {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    .transaction-list-adaptive > .col {
        padding: 0 !important;
        width: 100% !important;
    }

    /* Each transaction card → Material list item */
    .transaction-list-adaptive .card.fancy-card {
        border-radius: 12px !important;
        border: 1px solid #e8eaed !important;
        box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
        background: #ffffff !important;
        margin-bottom: 0 !important;
        overflow: hidden;
    }

    /* Card header – no background */
    .card-header-premium {
        background: #f8f9fa !important;
        padding: 10px 14px !important;
        font-size: 0.78rem !important;
        border-bottom: 1px solid #f1f3f4 !important;
        border-radius: 0 !important;
    }

    /* Card body – tighter */
    .card-body.p-4 {
        padding: 10px 14px !important;
    }

    /* Info rows – more compact */
    .info-row-premium {
        padding: 5px 0 !important;
    }

    .info-icon-soft {
        width: 26px !important;
        height: 26px !important;
        border-radius: 6px !important;
        font-size: 0.7rem !important;
        margin-right: 8px !important;
        flex-shrink: 0 !important;
    }

    .info-label {
        font-size: 0.7rem !important;
        width: 75px !important;
    }

    .info-value {
        font-size: 0.78rem !important;
    }

    /* Button footer for action buttons */
    .btn-footer-group {
        display: flex !important;
        gap: 8px !important;
        padding: 10px 14px !important;
        border-top: 1px solid #f1f3f4 !important;
    }

    .btn-footer-group .btn {
        font-size: 0.8rem !important;
        padding: 8px 12px !important;
        border-radius: 8px !important;
        font-weight: 700 !important;
    }

    /* Summary stat cards – Responsive Grid (2-col mobile, 3-col desktop via container) */
    .summary-container-adaptive {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
        margin-bottom: 16px !important;
        padding: 0 !important;
        width: 100% !important;
    }

    .summary-col {
        width: 100% !important;
        padding: 0 !important;
    }

    /* Make the 3rd card full width */
    .summary-col:last-child {
        grid-column: span 2 !important;
    }

    .summary-card-inner {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 12px !important;
        border-radius: 12px !important;
        background: #ffffff !important;
        border: 1px solid #e8eaed !important;
        box-shadow: none !important;
        height: 100% !important;
    }

    .summary-card-inner.fancy-card {
        padding: 12px !important;
        border-radius: 10px !important;
        background: #ffffff !important;
        border: 1px solid #e8eaed !important;
        box-shadow: none !important;
    }

    .summary-icon-box {
        width: 32px !important;
        height: 32px !important;
        border-radius: 8px !important;
        font-size: 0.9rem !important;
        margin-bottom: 8px !important;
    }

    /* Search/filter section – compact */
    .card.fancy-card.mb-4 {
        border-radius: 10px !important;
        border: 1px solid #e8eaed !important;
        box-shadow: none !important;
        background: #ffffff !important;
        margin-bottom: 8px !important;
    }

    .card-header-premium.px-4 {
        padding: 10px 14px !important;
    }

    .card-body.p-4 {
        padding: 12px !important;
    }
}

/* ============================================================
   DETAIL LAPORAN – Android Style
   ============================================================ */
@media (max-width: 768px) {

    /* Guide section – compact collapsible */
    .guide-glass {
        border-radius: 10px !important;
        border-left-width: 4px !important;
        padding: 12px 14px !important;
        margin-bottom: 10px !important;
        background: #f8f9fa !important;
        backdrop-filter: none !important;
        box-shadow: none !important;
    }

    .guide-glass h5 {
        font-size: 0.9rem !important;
        margin-bottom: 10px !important;
    }

    .guide-num {
        width: 24px !important;
        height: 24px !important;
        border-radius: 6px !important;
        font-size: 0.75rem !important;
        margin-right: 8px !important;
        flex-shrink: 0 !important;
    }

    .guide-glass .row.g-4 {
        --bs-gutter-y: 8px !important;
    }

    /* Transaction info card – clean */
    .fancy-card.p-4, .fancy-card.p-3 {
        border-radius: 10px !important;
        border: 1px solid #e8eaed !important;
        box-shadow: none !important;
        background: #ffffff !important;
        padding: 14px !important;
        backdrop-filter: none !important;
    }

    /* Game list in detail laporan */
    #game_detail_container tr {
        background: #ffffff !important;
        border-radius: 10px !important;
        margin-bottom: 4px !important;
        border: 1px solid #f1f3f4 !important;
        box-shadow: none !important;
    }

    /* Transaction title badge */
    .transaction-title-badge {
        font-size: 0.75rem !important;
        padding: 6px 10px !important;
        border-radius: 8px !important;
    }

    /* Status badge */
    .status-badge-pill {
        font-size: 0.62rem !important;
        padding: 4px 10px !important;
        border-radius: 6px !important;
    }

    /* Action buttons at bottom */
    .floating-action-bar {
        bottom: 16px !important;
        border-radius: 14px !important;
        padding: 8px 16px !important;
        backdrop-filter: none !important;
        background: #ffffff !important;
        border: 1px solid #e8eaed !important;
        box-shadow: 0 4px 16px rgba(0,0,0,0.12) !important;
    }

    .fab-btn {
        height: 40px !important;
        border-radius: 10px !important;
        font-size: 0.8rem !important;
    }

    .fab-btn-primary {
        padding: 0 16px !important;
        font-size: 0.82rem !important;
    }

    /* Breadcrumb hidden, guide button in app bar instead */
    .d-flex.flex-wrap.justify-content-between.align-items-center.mb-4 {
        display: none !important;
    }

    /* Container top spacing after mobile header */
    .container-fluid.px-3.px-md-4.mt-4 {
        padding-top: 8px !important;
        margin-top: 0 !important;
    }

    /* ── INTEGRATED CUSTOM RESPONSIVE REDESIGN OVERRIDES ── */
    body {
        padding-bottom: 80px !important; /* Spacing for bottom floating navigation */
    }
    .fancy-card { 
        border-radius: 12px !important; 
        border: 1px solid rgba(0, 0, 0, 0.05) !important;
        margin: 8px 2px !important; 
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.03) !important;
    }
    .fancy-card .card-body {
        padding: 12px 12px !important;
    }
    .card-header-premium { 
        padding: 10px 12px !important; 
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 8px !important;
    }
    .card-header-premium .btn-scan-premium { 
        width: 100% !important;
        justify-content: center !important;
        padding: 8px 12px !important; 
        font-size: 0.82rem !important; 
        border-radius: 8px !important; 
    }
    .premium-title { 
        font-size: 1.05rem !important; 
    }
    .premium-input-soft, .form-select.premium-input-soft, .input-group .premium-input-soft {
        border-radius: 8px !important;
        font-size: 0.9rem !important;
    }
    .btn-premium-action {
        border-radius: 8px !important;
        font-size: 0.95rem !important;
        padding: 0.8rem !important;
    }
    .breadcrumb-premium-wrapper { 
        width: 100%; 
        margin-bottom: 10px !important;
    }
    .breadcrumb-premium { 
        display: flex; 
        justify-content: center; 
        width: 100%; 
        background: rgba(255, 255, 255, 0.5) !important;
        backdrop-filter: blur(10px);
        border-radius: 12px !important;
        padding: 8px 16px !important;
        border: 1px solid rgba(255, 255, 255, 0.4);
    }
    .d-flex.flex-wrap { 
        gap: 10px !important; 
        margin-bottom: 15px !important; 
    }

    /* Spacious Padding between Form Fields on Mobile */
    .form-group-custom, 
    .col-md-6.form-group-custom,
    form .row > div {
        margin-bottom: 12px !important;
    }
    .input-group {
        margin-bottom: 4px !important;
    }
    
    /* Native Bottom Navigation Menu (matching history_transaksi.php) */
    .mobile-bottom-nav {
        display: flex !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        height: 65px !important;
        background: #ffffff !important;
        box-shadow: 0 -2px 15px rgba(0,0,0,0.08) !important;
        border-top: 1px solid #f1f5f9 !important;
        z-index: 1040 !important;
        justify-content: space-around !important;
        align-items: center !important;
        padding: 0 !important;
        border-radius: 0 !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }
    .mobile-bottom-nav-item {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-decoration: none !important;
        color: #94a3b8 !important;
        font-size: 0.7rem !important;
        font-weight: 600 !important;
        transition: all 0.3s ease !important;
        flex: 1 !important;
        padding: 6px 0 !important;
        height: 100% !important;
    }
    .mobile-bottom-nav a,
    .mobile-bottom-nav a:hover,
    .mobile-bottom-nav a:focus,
    .mobile-bottom-nav a:active {
        text-decoration: none !important;
        color: #94a3b8 !important;
    }
    .mobile-bottom-nav-item i {
        font-size: 1.3rem !important;
        margin-bottom: 2px !important;
        color: #94a3b8 !important;
        display: block !important;
    }
    .mobile-bottom-nav-item.active {
        color: #3b82f6 !important;
    }
    .mobile-bottom-nav-item.active i {
        color: #3b82f6 !important;
        transform: none !important;
    }
    .mobile-bottom-nav-item:hover i {
        transform: none !important;
    }

    /* Floating widgets auto-raised system handled by body:has(.mobile-bottom-nav) above */
}

/* Default Desktop/Tablet state: bottom navigation is hidden */
.mobile-bottom-nav {
    display: none;
}
