/* ============================================================
    DESIGN PREMIUM UAPAY STYLE - FINAL NEON STABILIZED
   ============================================================ */
:root {
    --uapay-blue: #007AFF;
    --uapay-neon-green: #A3E635;
    --uapay-neon-blue: #22D3EE;
    --uapay-bg-light: #F8FAFC;
    --uapay-text-dark: #1E293B;
    --uapay-warning-bg: #FEF9C3;
    --uapay-instruction-bg: #EFF6FF;
}

.paylock-container * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

.paylock-container {
    max-width: 400px;
    margin: 20px auto;
    background: #FFFFFF !important;
    border-radius: 40px;
    overflow: hidden;
    box-shadow: 0 25px 50px rgba(0,0,0,0.1);
    border: 1px solid #E2E8F0;
    position: relative;
}

/* HEADER STYLE UAPAY */
.paylock-header {
    padding: 25px 20px;
    text-align: center;
    background: #FFFFFF;
}

.uapay-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 5px;
}

.logo-icon {
    background: linear-gradient(135deg, #34D399, #3B82F6);
    color: white;
    width: 35px;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    font-weight: 900;
    font-size: 20px;
}

.logo-text {
    font-size: 26px;
    font-weight: 800;
    color: var(--uapay-text-dark) !important;
    letter-spacing: -1px;
}

.logo-text span {
    color: var(--uapay-neon-green);
}

.header-date {
    font-size: 10px;
    color: #94A3B8;
    text-transform: uppercase;
    font-weight: 600;
}

/* NAVIGATION ONGLET */
.paylock-tabs {
    display: flex;
    background: #F1F5F9;
    margin: 0 20px 20px;
    padding: 5px;
    border-radius: 14px;
    gap: 5px;
}

.paylock-tab {
    flex: 1;
    padding: 12px;
    text-align: center;
    font-weight: 700;
    cursor: pointer;
    border-radius: 10px;
    color: #64748B;
    font-size: 14px;
    transition: all 0.3s ease;
}

.paylock-tab.active {
    background: #FFFFFF;
    color: var(--uapay-blue);
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

/* ALERTES & INSTRUCTIONS */
.paylock-alert {
    margin: 8px 20px;
    padding: 12px;
    border-radius: 12px;
    font-size: 11px;
    line-height: 1.4;
    display: flex;
    align-items: center;
    gap: 10px;
    background: var(--uapay-warning-bg);
    border: 1px solid #FDE047;
    color: #854D0E;
}

.instruction-box {
    background-color: var(--uapay-instruction-bg) !important;
    border-left: 4px solid var(--uapay-blue);
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 8px;
}

/* SECTION HISTORIQUE STRUCTURÉE */
#paylock-combined-history {
    display: flex;
    flex-direction: column;
    gap: 10px; /* Espace entre les lignes */
    padding: 5px 0;
}

.history-item-simple {
    transition: all 0.2s ease-in-out;
}

.history-item-simple:hover {
    background-color: #F8FAFC !important;
    border-color: #BAE6FD !important;
    transform: translateX(3px);
}

.paylock-btn-more {
    display: block;
    width: 100%;
    background: transparent;
    border: none;
    color: #64748B;
    font-size: 12px;
    font-weight: 700;
    padding: 15px;
    cursor: pointer;
    text-align: center;
}

/* FORMULAIRES ET INPUTS */
.paylock-body { padding: 15px 20px; }

.transaction-card {
    background: #FFFFFF;
    border-radius: 20px;
    padding: 20px;
    border: 2px solid #BAE6FD;
    box-shadow: 0 10px 25px rgba(34, 211, 238, 0.05);
    margin-bottom: 20px;
}

.paylock-input {
    width: 100%;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    padding: 14px 16px;
    font-size: 15px;
    border-radius: 12px;
    color: var(--uapay-text-dark);
    font-weight: 600;
    margin-bottom: 10px;
}

/* FORCE LE STYLE UNE SEULE LIGNE */
#paylock-combined-history {
    display: flex;
    flex-direction: column;
    gap: 2; /* Supprime l'espace entre les blocs */
    background: #FFF;
    border-radius: 15px;
    overflow: hidden;
    border: 1px solid #EDF2F7;
}

.paylock-item-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 15px;
    border-bottom: 1px solid #F1F5F9;
    cursor: pointer;
    transition: background 0.2s;
}

.paylock-item-row:last-child { border-bottom: none; }
.paylock-item-row:hover { background: #F8FAFC; }

.row-left, .row-right { display: flex; align-items: center; gap: 10px; }

.row-icon { font-size: 14px; width: 20px; }

.row-info { display: flex; flex-direction: column; }

.row-title { 
    font-size: 12px; 
    font-weight: 800; 
    color: #1E293B; 
    line-height: 1;
}

.row-date { font-size: 9px; color: #94A3B8; font-weight: 600; }

.row-right { text-align: right; gap: 12px; }

.row-amount { font-size: 13px; font-weight: 900; color: #1E293B; }

.row-status { 
    font-size: 9px; 
    font-weight: 800; 
    text-transform: uppercase; 
    min-width: 50px;
}

.row-arrow { color: #CBD5E0; font-size: 10px; }

.om-box { 
    background-image: url('https://upload.wikimedia.org/wikipedia/commons/a/a3/Orange_Money_logo.png') !important; 
    background-size: 60px !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.method-box:hover { transform: translateY(-3px); border-color: var(--uapay-neon-blue) !important; }

/* BOUTONS ET MODALES */
.neon-btn {
    width: 100%;
    padding: 16px;
    border: none;
    border-radius: 14px;
    background: #00bcd4 !important;
    color: white !important;
    font-weight: 800;
    font-size: 14px;
    cursor: pointer;
    box-shadow: 0 10px 20px rgba(0, 188, 212, 0.4);
    margin-top: 10px;
}

.paylock-modal {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: #FFFFFF !important;
    display: flex;
    flex-direction: column;
    padding: 25px;
    z-index: 2000;
}

.btn-action-small {
    padding: 12px;
    border-radius: 10px;
    font-size: 10px;
    font-weight: 800;
    border: none;
    cursor: pointer;
    text-transform: uppercase;
}

.btn-dispute { background: #FEE2E2 !important; color: #DC2626 !important; }
.btn-refund { background: #F1F5F9 !important; color: #475569 !important; }

.paylock-footer {
    margin-top: 30px;
    padding: 20px;
    border-top: 1px solid #E2E8F0;
    text-align: center;
}

.footer-brand {
    font-size: 11px;
    color: #94A3B8;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* LOADER */
.paylock-spinner {
    width: 40px;
    height: 40px;
    border: 4px solid #F1F5F9;
    border-top: 4px solid #00bcd4;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
.btn-view-more {
    background: transparent !important;
    border: none !important;
    color: #3B82F6 !important; /* Bleu UA PAY */
    font-size: 12px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    padding: 8px 16px !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: opacity 0.2s;
}

.btn-view-more:hover {
    opacity: 0.7;
    text-decoration: underline;
}
/* MÉTHODES DE PAIEMENT CÔTE À CÔTE */
.method-grid {
    display: flex !important;
    flex-direction: row !important;
    gap: 12px !important;
    margin: 15px 0 !important;
    width: 100% !important;
}

.method-box {
    flex: 1 !important; /* Force les deux boites à avoir la même largeur */
    height: 80px !important;
    border-radius: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    border: 2px solid #E2E8F0 !important;
    background-color: #FFFFFF !important;
    transition: all 0.2s ease;
}

.method-box:hover {
    border-color: var(--uapay-neon-blue) !important;
    transform: translateY(-2px);
}

.wave-box { 
    background-image: url('https://upload.wikimedia.org/wikipedia/commons/d/d1/Wave_Logo.png') !important; 
    background-size: 50px !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.om-box { 
    background-image: url('https://upload.wikimedia.org/wikipedia/commons/a/a3/Orange_Money_logo.png') !important; 
    background-size: 50px !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}
/* BLOC CODE ACHETEUR - STRUCTURE FORCÉE */
.buyer-code-block {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background: #F0FDFA !important; /* Vert très clair */
    border: 2px dashed #14B8A6 !important;
    border-radius: 24px !important;
    padding: 30px 20px !important;
    margin: 20px 0 !important;
    width: 100% !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05) !important;
}

.buyer-code-header {
    font-size: 11px !important;
    font-weight: 800 !important;
    color: #0D9488 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    margin-bottom: 15px !important;
}

.buyer-code-number {
    font-size: 38px !important;
    font-weight: 900 !important;
    color: #1E293B !important;
    letter-spacing: 8px !important;
    font-family: 'Monaco', 'Consolas', monospace !important;
    line-height: 1 !important;
}

.buyer-code-footer {
    margin-top: 15px !important;
    font-size: 11px !important;
    color: #64748B !important;
    font-weight: 600 !important;
}
/* --- STYLE DU BOUTON PARTAGE WHATSAPP --- */
.paylock-btn-whatsapp {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    background-color: #25D366 !important; /* Vert WhatsApp officiel */
    color: #ffffff !important;
    border: none !important;
    padding: 14px 20px !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    cursor: pointer !important;
    margin-top: 15px !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.2) !important;
    text-decoration: none !important;
}

.paylock-btn-whatsapp:hover {
    background-color: #128C7E !important; /* Vert plus foncé au survol */
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(37, 211, 102, 0.3) !important;
}

.paylock-btn-whatsapp:active {
    transform: translateY(0);
}

/* Optionnel : Ajout d'une petite icône avant le texte via CSS si tu ne veux pas toucher au JS */
.paylock-btn-whatsapp::before {
    content: '📱'; 
    font-size: 18px;
}