/* ── AUTH PAGES ── */
.auth-wrap{min-height:100vh;background:linear-gradient(180deg,#EEF2FF 0%,#F4F7FC 35%);display:flex;align-items:center;justify-content:center;padding:24px 16px;}
.auth-card{width:100%;max-width:420px;background:#fff;border-radius:28px;padding:36px 28px 32px;box-shadow:0 20px 60px rgba(15,23,42,.12);}
.auth-logo-wrap{text-align:center;margin-bottom:16px;}
.auth-logo-circle{width:68px;height:68px;border-radius:50%;margin:0 auto;background:#F1F5F9;display:flex;align-items:center;justify-content:center;font-size:28px;border:2px solid #E2E8F0;}
.auth-title{font-size:20px;font-weight:800;color:#1E293B;text-align:center;margin-bottom:18px;}
.auth-tabs{display:flex;background:#F1F5F9;border-radius:16px;padding:4px;margin-bottom:24px;gap:4px;}
.auth-tab{flex:1;text-align:center;padding:11px;border-radius:13px;font-size:14px;font-weight:700;color:#64748B;cursor:pointer;transition:all .2s;text-decoration:none;}
.auth-tab.active{background:#fff;color:#2563EB;box-shadow:0 2px 8px rgba(15,23,42,.09);}
.auth-label{font-size:11px;font-weight:800;color:#94A3B8;letter-spacing:.7px;text-transform:uppercase;display:block;margin-bottom:8px;}
.auth-input-wrap{position:relative;margin-bottom:18px;}
.auth-input{width:100%;background:#F8FAFC;border:1.5px solid #E5E9F2;border-radius:14px;padding:14px 16px;font-size:14px;color:#1E293B;outline:none;transition:border-color .2s;box-sizing:border-box;}
.auth-input:focus{border-color:#3B82F6;background:#fff;}
.auth-input.has-icon{padding-right:44px;}
.auth-input-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#94A3B8;cursor:pointer;font-size:16px;}
.auth-forgot{text-align:right;font-size:13px;color:#2563EB;font-weight:600;margin:-10px 0 18px;display:block;text-decoration:none;}
.auth-btn{width:100%;background:linear-gradient(135deg,#3B82F6,#1D4ED8);color:#fff;border:none;border-radius:16px;padding:15px;font-size:15px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 8px 20px rgba(37,99,235,.3);transition:opacity .2s;}
.auth-btn:hover{opacity:.92;}
.auth-divider{display:flex;align-items:center;gap:12px;margin:22px 0;}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:#E5E9F2;}
.auth-divider span{font-size:11px;font-weight:700;color:#94A3B8;letter-spacing:.5px;white-space:nowrap;}
.auth-google-btn{width:100%;background:#fff;border:1.5px solid #E5E9F2;border-radius:14px;padding:13px;font-size:14px;font-weight:700;color:#1E293B;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:border-color .2s;}
.auth-google-btn:hover{border-color:#3B82F6;}
.auth-footer{text-align:center;font-size:12px;color:#94A3B8;margin-top:24px;}
.auth-footer strong{color:#2563EB;}
.auth-error{background:#FEF2F2;border:1px solid #FCA5A5;border-radius:12px;padding:12px 14px;font-size:13px;color:#DC2626;margin-bottom:16px;display:flex;align-items:center;gap:8px;}
.auth-success{background:#F0FDF4;border:1px solid #86EFAC;border-radius:12px;padding:12px 14px;font-size:13px;color:#16A34A;margin-bottom:16px;display:flex;align-items:center;gap:8px;}

/* Password strength */
.pw-strength-wrap{margin-top:-12px;margin-bottom:18px;}
.pw-strength-bar-bg{height:4px;background:#E5E9F2;border-radius:4px;overflow:hidden;margin-bottom:6px;}
.pw-strength-bar{height:100%;border-radius:4px;transition:width .4s ease,background .4s ease;width:0;}
.pw-strength-label{font-size:11px;font-weight:700;transition:color .4s;}
.pw-tips{font-size:11px;color:#94A3B8;margin-top:4px;line-height:1.5;}

/* OTP boxes */
.otp-wrap{display:flex;gap:8px;justify-content:center;margin-bottom:22px;}
.otp-box{width:48px;height:56px;border:2px solid #E5E9F2;border-radius:14px;text-align:center;font-size:22px;font-weight:800;color:#1E293B;outline:none;background:#F8FAFC;transition:border-color .2s;}
.otp-box:focus{border-color:#3B82F6;background:#fff;}

/* ── DASHBOARD ── */
.dash-header{padding:20px 16px 8px;background:linear-gradient(135deg,#3B82F6,#1D4ED8);color:#fff;}
.dash-welcome{font-size:13px;opacity:.8;margin-bottom:2px;}
.dash-name{font-size:22px;font-weight:800;}
.dash-balance{font-size:30px;font-weight:900;margin:4px 0 2px;}
.dash-balance-label{font-size:12px;opacity:.75;}

/* ── ORDER CARD ── */
.order-card{background:#fff;border-radius:16px;padding:16px;box-shadow:0 1px 3px rgba(15,23,42,.06);margin-bottom:12px;}
.order-number{font-size:11px;font-family:monospace;color:#3B82F6;font-weight:700;margin-bottom:8px;}
.order-badge{font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;text-transform:uppercase;letter-spacing:.4px;}
.order-badge.completed{background:#F0FDF4;color:#16A34A;}
.order-badge.pending{background:#EFF6FF;color:#2563EB;}
.order-badge.processing{background:#FFFBEB;color:#D97706;}
.order-badge.failed{background:#FEF2F2;color:#DC2626;}
.order-row{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid #F1F5F9;font-size:13px;}
.order-row:last-child{border:none;}
.order-key{color:#64748B;}
.order-val{color:#1E293B;font-weight:600;}
