/* ═══════════════════════════════════════════════════════════════
   Axumwe Pay v2 — Account & Admin Styles
═══════════════════════════════════════════════════════════════ */

/* Base */
.axpay-dashboard { max-width:900px; margin:0 auto; padding:20px 0; font-family:inherit; }
.axpay-page-title { font-size:22px; font-weight:600; color:#1C1C1C; margin-bottom:16px; border-bottom:2px solid #1A5E38; padding-bottom:10px; }

/* Alerts (setup prompts) */
.axpay-alert { padding:12px 16px; border-radius:8px; margin-bottom:12px; font-size:13px; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.axpay-alert-warn { background:#FFF8E1; border:1px solid #F9C84A; color:#7A5B00; }
.axpay-alert-info { background:#E6F1FB; border:1px solid #85B7EB; color:#1A4FA8; }

/* Wallet hero */
.axpay-wallet-hero { background:linear-gradient(135deg,#0F6E56 0%,#1A5E38 100%); border-radius:14px; padding:24px; margin-bottom:20px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; }
.axpay-wallet-label { font-size:11px; color:rgba(255,255,255,0.65); text-transform:uppercase; letter-spacing:.06em; margin-bottom:4px; }
.axpay-wallet-amount { font-size:38px; font-weight:700; color:#fff; line-height:1.1; }
.axpay-wallet-name { font-size:13px; color:rgba(255,255,255,0.65); margin-top:6px; display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.axpay-kyc-badge { background:rgba(255,255,255,0.2); color:#fff; padding:2px 8px; border-radius:20px; font-size:10px; font-weight:600; }
.axpay-wallet-sub { display:flex; gap:28px; }
.axpay-sub-item { text-align:center; }
.axpay-sub-label { font-size:10px; color:rgba(255,255,255,0.55); margin-bottom:4px; }
.axpay-sub-val { font-size:18px; font-weight:600; color:#fff; }
.axpay-sub-val.care { color:#9FE1CB; }
.axpay-tier { font-size:10px; font-weight:500; padding:2px 7px; border-radius:20px; background:rgba(255,255,255,0.2); color:#fff; vertical-align:middle; }

/* Quick actions grid */
.axpay-actions { display:grid; grid-template-columns:repeat(5,1fr); gap:8px; margin-bottom:24px; }
@media(max-width:640px){ .axpay-actions{ grid-template-columns:repeat(2,1fr); } }
.axpay-action-btn { background:#fff; border:1px solid #D8D8D8; border-radius:9px; padding:12px 6px; text-align:center; cursor:pointer; font-size:12px; font-weight:500; color:#1C1C1C; transition:all .15s; display:flex; flex-direction:column; align-items:center; gap:4px; line-height:1.4; }
.axpay-action-btn:hover { background:#E1F5EE; border-color:#5DCAA5; color:#0F6E56; }

/* Panels */
.axpay-panel { background:#fff; border:1px solid #E0E0E0; border-radius:10px; padding:24px; margin-bottom:16px; }
.axpay-panel h3 { font-size:17px; font-weight:600; margin-bottom:8px; color:#1C1C1C; }
.axpay-panel h4 { font-size:14px; font-weight:600; margin:18px 0 8px; color:#1C1C1C; }
.axpay-panel-note { font-size:13px; color:#666; margin-bottom:16px; line-height:1.55; }
.axpay-panel label { display:block; font-size:12px; font-weight:500; color:#555; margin:10px 0 4px; }
.axpay-panel input[type=text],
.axpay-panel input[type=email],
.axpay-panel input[type=number],
.axpay-panel input[type=password],
.axpay-panel input[type=file],
.axpay-panel select { width:100%; padding:9px 12px; border:1px solid #D5D5D5; border-radius:6px; font-size:14px; color:#1C1C1C; background:#fff; box-sizing:border-box; }
.axpay-panel input:focus,.axpay-panel select:focus { outline:none; border-color:#1A5E38; box-shadow:0 0 0 2px rgba(26,94,56,.1); }

/* Buttons */
.axpay-btn-primary { display:inline-block; margin-top:12px; padding:10px 24px; background:#1A5E38; color:#fff; border:none; border-radius:6px; font-size:14px; font-weight:600; cursor:pointer; transition:opacity .2s; }
.axpay-btn-primary:hover { opacity:.85; }
.axpay-btn-secondary { display:inline-block; margin-top:8px; padding:8px 20px; background:transparent; color:#1A5E38; border:1.5px solid #1A5E38; border-radius:6px; font-size:13px; font-weight:600; cursor:pointer; transition:all .15s; }
.axpay-btn-secondary:hover { background:#E1F5EE; }
.axpay-danger { color:#C0392B !important; border-color:#C0392B !important; }

/* Messages */
.axpay-msg { display:none; padding:10px 14px; border-radius:6px; border:1.5px solid; margin-top:10px; font-size:13px; font-weight:500; }

/* Family wallet */
.axpay-family-list { margin-bottom:16px; }
.axpay-family-member { display:flex; align-items:center; gap:12px; padding:12px; border:1px solid #EDEDED; border-radius:8px; margin-bottom:8px; flex-wrap:wrap; }
.axpay-family-avatar { width:40px; height:40px; border-radius:50%; background:#E1F5EE; color:#0F6E56; font-size:13px; font-weight:700; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.axpay-family-info { flex:1; min-width:120px; }
.axpay-family-name { font-size:14px; font-weight:600; color:#1C1C1C; }
.axpay-family-label { font-size:11px; background:#E1F5EE; color:#0F6E56; padding:1px 8px; border-radius:20px; margin-left:6px; font-weight:400; }
.axpay-family-email { font-size:12px; color:#888; }
.axpay-family-actions { display:flex; align-items:center; gap:6px; flex-wrap:wrap; }

/* Care */
.axpay-care-summary { background:#F8F8F8; border-radius:10px; padding:20px; margin-bottom:20px; }
.axpay-care-total { text-align:center; margin-bottom:16px; }
.axpay-care-total-label { font-size:11px; color:#888; text-transform:uppercase; letter-spacing:.04em; }
.axpay-care-total-num { font-size:34px; font-weight:700; color:#0F6E56; }
.axpay-care-breakdown { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
@media(max-width:520px){ .axpay-care-breakdown{ grid-template-columns:repeat(2,1fr); } }
.axpay-care-item { border-radius:8px; padding:12px; text-align:center; }
.care-health { background:#FAECE7; }
.care-edu    { background:#E6F1FB; }
.care-emg    { background:#FAEEDA; }
.care-house  { background:#E8F8E8; }
.care-biz    { background:#EEF0FE; }
.care-gen    { background:#F0EDFE; }
.axpay-care-item-label { font-size:10px; color:#666; margin-bottom:4px; text-transform:uppercase; letter-spacing:.03em; }
.axpay-care-item-val { font-size:15px; font-weight:700; color:#1C1C1C; }

/* Credit / Trust score */
.axpay-score-display { display:flex; align-items:center; gap:16px; margin:16px 0; }
.axpay-score-number { font-size:54px; font-weight:700; line-height:1; }
.axpay-score-tier { display:inline-block; color:#fff; padding:4px 14px; border-radius:20px; font-size:13px; font-weight:600; }
.axpay-score-bar { height:8px; background:#F0F0F0; border-radius:4px; overflow:hidden; margin-bottom:20px; }
.axpay-score-fill { height:100%; border-radius:4px; transition:width .5s ease; }
.axpay-score-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:16px; }
.axpay-score-stat { text-align:center; background:#F8F8F8; border-radius:8px; padding:12px; }
.axpay-score-stat strong { display:block; font-size:18px; font-weight:700; color:#1C1C1C; }
.axpay-score-stat span { font-size:11px; color:#888; }
.axpay-next-tier { background:#E1F5EE; border:1px solid #9FE1CB; border-radius:8px; padding:12px 16px; font-size:13px; color:#085041; }

/* Credit profile shortcode */
.axpay-credit-profile { max-width:500px; margin:20px auto; }

/* QR display */
#axpay-qr-display img { border-radius:8px; display:block; }
#axpay-qr-display canvas { border-radius:8px; display:block; }

/* ═══════════════════════════════════════════════════════════════
   ADMIN STYLES
═══════════════════════════════════════════════════════════════ */
.axpay-admin .axpay-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:16px 0; }
@media(max-width:800px){ .axpay-admin .axpay-cards{ grid-template-columns:repeat(2,1fr); } }
.axpay-admin .axpay-card { background:#fff; border:1px solid #ddd; border-radius:8px; padding:16px 20px; text-align:center; }
.axpay-admin .axpay-card-num { font-size:26px; font-weight:700; color:#1A5E38; }
.axpay-admin .axpay-card.axpay-warn .axpay-card-num { color:#C17A00; }
.axpay-admin .axpay-card-label { font-size:12px; color:#666; margin-top:4px; }

/* Status badges */
.axpay-status { display:inline-block; padding:2px 9px; border-radius:20px; font-size:11px; font-weight:600; }
.axpay-status-held       { background:#FAEEDA; color:#854F0B; }
.axpay-status-released   { background:#D5F5E3; color:#1E8449; }
.axpay-status-cancelled  { background:#F2F2F2; color:#666; }
.axpay-status-pending    { background:#D6EAF8; color:#1A6FA8; }
.axpay-status-processing { background:#FEF9E7; color:#9A7D0A; }
.axpay-status-completed  { background:#D5F5E3; color:#1E8449; }
.axpay-status-failed     { background:#FADBD8; color:#C0392B; }
.axpay-status-approved   { background:#D5F5E3; color:#1E8449; }
.axpay-status-rejected   { background:#FADBD8; color:#C0392B; }
.axpay-status-settled    { background:#D5F5E3; color:#1E8449; }
.axpay-status-expired    { background:#F2F2F2; color:#888; }
