@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');
*{margin:0;padding:0;box-sizing:border-box}
:root{--primary:#6366f1;--primary-dark:#4f46e5;--primary-light:#818cf8;--primary-glow:#a78bfa;--success:#10b981;--success-dark:#059669;--warning:#f59e0b;--danger:#ef4444;--info:#3b82f6;--bg:#f0f2f5;--bg-dark:#0f172a;--card:#fff;--card-dark:#1e293b;--text:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--border:#e2e8f0;--shadow-sm:0 1px 3px rgba(0,0,0,.06);--shadow:0 4px 24px rgba(0,0,0,.08);--shadow-lg:0 12px 40px rgba(0,0,0,.12);--shadow-primary:0 8px 32px rgba(99,102,241,.25);--gradient:linear-gradient(135deg,#6366f1 0%,#8b5cf6 50%,#a855f7 100%);--gradient-dark:linear-gradient(135deg,#4f46e5,#7c3aed);--gradient-success:linear-gradient(135deg,#10b981,#34d399);--gradient-danger:linear-gradient(135deg,#ef4444,#f87171);--gradient-hero:linear-gradient(135deg,#667eea 0%,#764ba2 100%);--radius:16px;--radius-sm:10px;--radius-xs:6px;--transition:all .3s cubic-bezier(.4,0,.2,1)}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased}
body.dark-mode{--bg:#0f172a;--card:#1e293b;--text:#e2e8f0;--text-secondary:#94a3b8;--text-muted:#64748b;--border:#334155}
a{text-decoration:none;color:inherit}
.container{max-width:960px;margin:0 auto;padding:0 16px}

/* Animations */
@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@keyframes slideUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes bounceIn{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}100%{transform:scale(1);opacity:1}}
.animate-slide-down{animation:slideDown .4s ease}
.animate-slide-up{animation:slideUp .4s ease}
.animate-fade{animation:fadeIn .3s ease}
.animate-bounce{animation:bounceIn .5s ease}
.animate-pulse{animation:pulse 2s infinite}
.loading-spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite;display:inline-block}

/* Glassmorphism Header */
.header{background:rgba(255,255,255,.85);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.2);padding:12px 0;position:sticky;top:0;z-index:1000;transition:var(--transition)}
body.dark-mode .header{background:rgba(30,41,59,.9)}
.header .container{display:flex;justify-content:space-between;align-items:center}
.header-left{display:flex;align-items:center;gap:12px}
.header-logo{width:36px;height:36px;border-radius:10px;background:var(--gradient);display:flex;align-items:center;justify-content:center;font-size:16px;color:#fff;font-weight:800}
.header h1{font-size:15px;font-weight:800;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.header .user-info{font-size:11px;color:var(--text-muted)}
.header-right{display:flex;align-items:center;gap:10px}
.wallet-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:24px;background:linear-gradient(135deg,rgba(99,102,241,.1),rgba(139,92,246,.1));color:var(--primary);font-weight:700;font-size:13px;border:1px solid rgba(99,102,241,.2);transition:var(--transition)}
.wallet-badge:hover{transform:scale(1.03);box-shadow:var(--shadow-primary)}
.notification-bell{position:relative;width:38px;height:38px;border-radius:12px;border:1px solid var(--border);background:var(--card);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition)}
.notification-bell:hover{border-color:var(--primary);background:rgba(99,102,241,.05)}
.notification-bell .badge-count{position:absolute;top:-4px;right:-4px;width:18px;height:18px;border-radius:50%;background:var(--danger);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--card)}
.btn-logout{padding:8px 18px;border-radius:24px;background:rgba(239,68,68,.1);color:var(--danger);border:1px solid rgba(239,68,68,.2);font-size:12px;font-weight:600;cursor:pointer;transition:var(--transition)}
.btn-logout:hover{background:var(--danger);color:#fff}
.dark-toggle{width:38px;height:38px;border-radius:12px;border:1px solid var(--border);background:var(--card);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;transition:var(--transition)}
.dark-toggle:hover{border-color:var(--primary)}

/* Cards */
.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden;margin-bottom:20px;border:1px solid var(--border);transition:var(--transition);animation:slideUp .4s ease}
.card:hover{box-shadow:var(--shadow)}
.card-header{padding:20px 24px 0;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:space-between}
.card-header .card-action{font-size:12px;font-weight:500;color:var(--primary);cursor:pointer}
.card-body{padding:20px 24px}
.card-footer{padding:16px 24px;border-top:1px solid var(--border);background:rgba(0,0,0,.02)}

/* Glass Card */
.glass-card{background:rgba(255,255,255,.7);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}

/* Buttons */
.btn{padding:10px 22px;border-radius:var(--radius-sm);border:none;font-weight:600;font-size:13px;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:8px;position:relative;overflow:hidden}
.btn::after{content:'';position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.2);transition:width .4s,height .4s;transform:translate(-50%,-50%)}
.btn:active::after{width:300px;height:300px}
.btn-primary{background:var(--gradient);color:#fff;box-shadow:var(--shadow-primary)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(99,102,241,.35)}
.btn-success{background:var(--gradient-success);color:#fff}
.btn-success:hover{transform:translateY(-1px)}
.btn-danger{background:var(--gradient-danger);color:#fff}
.btn-danger:hover{transform:translateY(-1px)}
.btn-secondary{background:var(--bg);color:var(--text);border:1px solid var(--border)}
.btn-secondary:hover{border-color:var(--primary);color:var(--primary)}
.btn-info{background:var(--info);color:#fff}
.btn-outline{background:transparent;color:var(--primary);border:2px solid var(--primary)}
.btn-outline:hover{background:var(--primary);color:#fff}
.btn-ghost{background:transparent;color:var(--text-secondary);padding:8px 12px}
.btn-ghost:hover{background:var(--bg);color:var(--primary)}
.btn-sm{padding:6px 14px;font-size:11px;border-radius:var(--radius-xs)}
.btn-lg{padding:14px 24px;font-size:15px;border-radius:var(--radius)}
.btn-full{width:100%;justify-content:center}
.btn-icon{width:36px;height:36px;padding:0;justify-content:center;border-radius:var(--radius-sm)}
.btn-group{display:flex;gap:6px}

/* Forms */
.form-group{margin-bottom:18px}
.form-group label{display:block;font-size:13px;font-weight:600;margin-bottom:8px;color:var(--text)}
.form-group .required{color:var(--danger)}
.form-control{width:100%;padding:12px 16px;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;transition:var(--transition);outline:none;background:var(--card);color:var(--text)}
.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(99,102,241,.1)}
.form-control::placeholder{color:var(--text-muted)}
textarea.form-control{min-height:80px;resize:vertical}
select.form-control{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2364748b' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
.form-inline{display:flex;gap:10px;align-items:flex-end}
.form-inline .form-group{margin-bottom:0;flex:1}
.input-group{display:flex;align-items:center;border:2px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;transition:var(--transition)}
.input-group:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px rgba(99,102,241,.1)}
.input-group input{border:none;outline:none;padding:12px 16px;flex:1;font-size:14px;font-family:inherit;background:transparent}
.input-group .input-icon{padding:0 14px;color:var(--text-muted);font-size:16px}
.search-box{position:relative}
.search-box input{padding-left:42px}
.search-box .search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:16px}

/* Badges */
.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:20px;font-size:11px;font-weight:600;white-space:nowrap}
.badge-success{background:rgba(16,185,129,.1);color:var(--success)}
.badge-warning{background:rgba(245,158,11,.1);color:var(--warning)}
.badge-danger{background:rgba(239,68,68,.1);color:var(--danger)}
.badge-info{background:rgba(59,130,246,.1);color:var(--info)}
.badge-primary{background:rgba(99,102,241,.1);color:var(--primary)}
.badge-processing{background:rgba(168,85,247,.1);color:#a855f7}
.badge-lg{padding:6px 16px;font-size:13px}

/* Stats Grid */
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:24px}
.stat-card{background:var(--card);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm);border:1px solid var(--border);cursor:pointer;transition:var(--transition);position:relative;overflow:hidden}
.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;border-radius:3px 3px 0 0}
.stat-card.stat-primary::before{background:var(--gradient)}
.stat-card.stat-success::before{background:var(--gradient-success)}
.stat-card.stat-warning::before{background:linear-gradient(135deg,#f59e0b,#fbbf24)}
.stat-card.stat-danger::before{background:var(--gradient-danger)}
.stat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.stat-card .stat-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:12px}
.stat-card .stat-num{font-size:26px;font-weight:900;letter-spacing:-1px}
.stat-card .stat-label{font-size:11px;color:var(--text-muted);margin-top:2px;font-weight:500}
.stat-card .stat-change{font-size:11px;font-weight:600;margin-top:6px;display:flex;align-items:center;gap:3px}

/* Tabs */
.tabs{display:flex;gap:4px;padding:4px;background:var(--card);border:1px solid var(--border);border-radius:28px;margin-bottom:24px;overflow-x:auto;box-shadow:var(--shadow-sm)}
.tab{flex:1;padding:11px 10px;text-align:center;border-radius:24px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;border:none;background:transparent;color:var(--text-muted);transition:var(--transition)}
.tab:hover{color:var(--text);background:var(--bg)}
.tab.active{background:var(--gradient);color:#fff;box-shadow:var(--shadow-primary)}

/* Table */
.table-responsive{overflow-x:auto;border-radius:var(--radius-sm)}
table.data-table{width:100%;border-collapse:collapse;font-size:13px}
table.data-table thead{background:var(--bg)}
table.data-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border)}
table.data-table td{padding:12px 16px;border-bottom:1px solid var(--border);vertical-align:middle}
table.data-table tbody tr{transition:var(--transition)}
table.data-table tbody tr:hover{background:rgba(99,102,241,.03)}

/* Service Cards */
.service-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.service-card{background:var(--card);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm);border:2px solid transparent;cursor:pointer;transition:var(--transition);position:relative;overflow:hidden}
.service-card::before{content:'';position:absolute;top:0;right:0;width:80px;height:80px;background:var(--gradient);opacity:.05;border-radius:0 0 0 80px}
.service-card:hover{border-color:var(--primary);transform:translateY(-3px);box-shadow:var(--shadow)}
.svc-icon{width:56px;height:56px;border-radius:14px;background:var(--gradient);display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px;font-weight:800;box-shadow:var(--shadow-primary)}
.svc-img{width:56px;height:56px;border-radius:14px;object-fit:cover;box-shadow:var(--shadow-sm)}

/* Banner */
.banner{background:var(--gradient);border-radius:var(--radius);padding:36px;text-align:center;color:#fff;margin-bottom:24px;box-shadow:var(--shadow-primary);position:relative;overflow:hidden}
.banner::before{content:'';position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%)}
.banner h2{font-size:24px;font-weight:900;letter-spacing:-1px;position:relative;z-index:1}

/* Wallet Hero */
.wallet-hero{background:var(--gradient);border-radius:var(--radius);padding:32px;color:#fff;margin-bottom:24px;box-shadow:var(--shadow-primary);position:relative;overflow:hidden}
.wallet-hero::after{content:'';position:absolute;top:-30%;right:-10%;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.08)}
.wallet-hero .balance{font-size:40px;font-weight:900;letter-spacing:-2px}
.wallet-stats{display:flex;gap:24px;margin-top:20px}
.wallet-stats .ws-item{display:flex;align-items:center;gap:10px}
.wallet-stats .ws-icon{width:32px;height:32px;border-radius:8px;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;font-size:14px}

/* Request Items */
.request-item{padding:18px;border-radius:var(--radius-sm);background:var(--bg);margin-bottom:12px;border:1px solid transparent;transition:var(--transition)}
.request-item:hover{border-color:var(--border);box-shadow:var(--shadow-sm)}
.req-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}

/* Quick Amounts */
.quick-amounts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}
.quick-amt{padding:14px;border-radius:var(--radius-sm);border:2px solid var(--border);background:var(--card);text-align:center;font-weight:700;font-size:15px;cursor:pointer;transition:var(--transition)}
.quick-amt:hover,.quick-amt.selected{border-color:var(--primary);background:rgba(99,102,241,.08);color:var(--primary);transform:scale(1.03)}

/* Upload Area */
.upload-area{border:2px dashed var(--border);border-radius:var(--radius);padding:28px;text-align:center;cursor:pointer;transition:var(--transition);position:relative}
.upload-area:hover{border-color:var(--primary);background:rgba(99,102,241,.03)}
.upload-area.has-file{border-color:var(--success);background:rgba(16,185,129,.03)}
.upload-area img{max-width:140px;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}
.upload-area .upload-icon{width:48px;height:48px;margin:0 auto 12px;border-radius:14px;background:rgba(99,102,241,.1);display:flex;align-items:center;justify-content:center;font-size:24px}

/* Field Items */
.field-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg);border-radius:var(--radius-sm);margin-bottom:8px;border:1px solid var(--border);transition:var(--transition)}
.field-item:hover{border-color:var(--primary)}

/* Toggle */
.toggle{width:48px;height:26px;border-radius:13px;background:var(--border);position:relative;cursor:pointer;border:none;transition:var(--transition)}
.toggle.on{background:var(--success)}
.toggle::after{content:'';position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;top:3px;left:3px;transition:var(--transition);box-shadow:0 2px 4px rgba(0,0,0,.15)}
.toggle.on::after{left:25px}

/* Notifications Panel */
.notif-panel{position:absolute;top:100%;right:0;width:340px;background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow-lg);border:1px solid var(--border);z-index:1000;max-height:400px;overflow-y:auto;display:none}
.notif-panel.show{display:block;animation:slideDown .3s ease}
.notif-item{padding:14px 18px;border-bottom:1px solid var(--border);transition:var(--transition);cursor:pointer}
.notif-item:hover{background:var(--bg)}
.notif-item.unread{background:rgba(99,102,241,.03);border-left:3px solid var(--primary)}

/* Bottom Nav */
.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:rgba(255,255,255,.9);backdrop-filter:blur(20px);border-top:1px solid var(--border);box-shadow:0 -4px 20px rgba(0,0,0,.06);z-index:100}
body.dark-mode .bottom-nav{background:rgba(30,41,59,.9)}
.bottom-nav .container{display:flex;justify-content:space-around;padding:8px 0}
.nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 14px;border-radius:14px;font-size:10px;font-weight:600;color:var(--text-muted);cursor:pointer;border:none;background:none;transition:var(--transition);text-decoration:none}
.nav-item:hover{color:var(--primary)}
.nav-item.active{color:var(--primary)}
.nav-item.active svg{transform:scale(1.15)}
.nav-item svg{width:22px;height:22px;transition:var(--transition)}
.nav-item .nav-badge{position:absolute;top:-2px;right:-2px;width:16px;height:16px;border-radius:50%;background:var(--danger);color:#fff;font-size:9px;display:flex;align-items:center;justify-content:center}

/* Auth Pages */
.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--gradient-hero);position:relative;overflow:hidden}
.auth-page::before{content:'';position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(255,255,255,.05);top:-100px;right:-100px}
.auth-page::after{content:'';position:absolute;width:300px;height:300px;border-radius:50%;background:rgba(255,255,255,.03);bottom:-50px;left:-50px}
.auth-card{width:100%;max-width:440px;background:rgba(255,255,255,.95);backdrop-filter:blur(20px);border-radius:24px;box-shadow:0 25px 60px rgba(0,0,0,.15);padding:44px;position:relative;z-index:1}
.auth-card h1{text-align:center;font-size:24px;font-weight:900;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:6px}
.auth-card .subtitle{text-align:center;font-size:13px;color:var(--text-muted);margin-bottom:32px}
.auth-logo{width:64px;height:64px;margin:0 auto 20px;border-radius:18px;background:var(--gradient);display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;box-shadow:var(--shadow-primary)}
.demo-box{margin-top:24px;padding:16px;border-radius:var(--radius-sm);background:var(--bg);font-size:12px;color:var(--text-muted)}

/* Alerts */
.alert{padding:14px 20px;border-radius:var(--radius-sm);margin-bottom:16px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:10px;animation:slideDown .4s ease}
.alert-success{background:rgba(16,185,129,.1);color:var(--success);border:1px solid rgba(16,185,129,.2)}
.alert-danger{background:rgba(239,68,68,.1);color:var(--danger);border:1px solid rgba(239,68,68,.2)}
.alert-warning{background:rgba(245,158,11,.1);color:var(--warning);border:1px solid rgba(245,158,11,.2)}
.alert-info{background:rgba(59,130,246,.1);color:var(--info);border:1px solid rgba(59,130,246,.2)}

/* Pagination */
.pagination{display:flex;justify-content:center;gap:6px;margin-top:20px}
.page-link{width:36px;height:36px;border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--card);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;cursor:pointer;transition:var(--transition);text-decoration:none;color:var(--text)}
.page-link:hover,.page-link.active{background:var(--primary);color:#fff;border-color:var(--primary)}

/* Filter Bar */
.filter-bar{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap;align-items:center}
.filter-bar .form-control{max-width:200px;padding:9px 14px;font-size:13px}

/* Tooltip */
[data-tooltip]{position:relative}
[data-tooltip]:hover::after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translateX(-50%);padding:6px 12px;background:var(--text);color:#fff;font-size:11px;border-radius:6px;white-space:nowrap;z-index:100;animation:fadeIn .2s}

/* Print */
@media print{.header,.bottom-nav,.tabs,.btn,.filter-bar,.no-print{display:none!important}.card{box-shadow:none;border:1px solid #ddd}.container{max-width:100%}}

/* Chart Container */
.chart-container{padding:20px;background:var(--card);border-radius:var(--radius);border:1px solid var(--border);margin-bottom:20px}
.mini-chart{display:flex;align-items:flex-end;gap:3px;height:40px}
.mini-chart .bar{flex:1;background:var(--primary);border-radius:2px 2px 0 0;transition:var(--transition);min-width:4px;opacity:.6}
.mini-chart .bar:last-child{opacity:1}

/* Progress Bar */
.progress{height:8px;border-radius:4px;background:var(--border);overflow:hidden}
.progress-bar{height:100%;border-radius:4px;transition:width .6s ease}
.progress-bar.pg-primary{background:var(--gradient)}
.progress-bar.pg-success{background:var(--gradient-success)}

/* Avatar */
.avatar{width:40px;height:40px;border-radius:12px;object-fit:cover;background:var(--gradient);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px}
.avatar-sm{width:32px;height:32px;border-radius:8px;font-size:12px}
.avatar-lg{width:56px;height:56px;border-radius:16px;font-size:22px}

/* Empty State */
.empty-state{text-align:center;padding:48px 20px;color:var(--text-muted)}
.empty-state .empty-icon{font-size:48px;margin-bottom:12px}
.empty-state p{font-size:14px}

/* Skeleton Loading */
.skeleton{background:linear-gradient(90deg,var(--border) 25%,rgba(255,255,255,.5) 50%,var(--border) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-xs)}

/* Responsive */
@media(max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:1fr}.filter-bar{flex-direction:column}.filter-bar .form-control{max-width:100%}.header-right{gap:6px}}
@media(max-width:480px){.auth-card{padding:28px 20px}.wallet-hero .balance{font-size:32px}.wallet-stats{flex-direction:column;gap:12px}.form-inline{flex-direction:column}}

/* Helpers */
.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap}
.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}
.text-center{text-align:center}.text-right{text-align:right}.text-sm{font-size:13px}.text-xs{font-size:11px}.text-muted{color:var(--text-muted)}.text-primary{color:var(--primary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}
.font-bold{font-weight:700}.font-black{font-weight:900}
.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}
.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}
.pb-24{padding-bottom:100px}
.w-full{width:100%}
.hidden{display:none}
.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.relative{position:relative}

/* Custom adjustments for smaller service cards */
.dashboard-service-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 15px;
}
.dashboard-service-card {
    padding: 15px;
}
.dsc-img {
    width: 100%;
    height: 120px;
    object-fit: contain;
}
.dsc-title {
    font-size: 13px;
    height: 32px;
    overflow: hidden;
}

/* Admin Request Detail Enhancements */
.request-detail-box {
    background: #f8fafc;
    border-radius: 12px;
    padding: 20px;
    border: 1px solid #e2e8f0;
}
.data-copy-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #edf2f7;
    margin-bottom: 8px;
}
.copy-btn {
    cursor: pointer;
    color: var(--primary);
    font-size: 14px;
    font-weight: 700;
}
.copy-btn:active {
    transform: scale(0.9);
}

/* Copy Toast */
.copy-toast {
    position: fixed;
    bottom: 80px;
    left: 50%;
    transform: translateX(-50%);
    background: #333;
    color: #fff;
    padding: 8px 20px;
    border-radius: 20px;
    font-size: 12px;
    z-index: 10001;
    animation: slideUp 0.3s ease;
}
