:root{--zmv-primary:#2563eb;--zmv-primary-dark:#1d4ed8;--zmv-bg:#f4f7fb;--zmv-sidebar:#0f172a;--zmv-muted:#64748b;--zmv-border:#e2e8f0;--zmv-success:#16a34a;--zmv-warning:#d97706;--zmv-danger:#dc2626}
*{box-sizing:border-box}body{margin:0;background:var(--zmv-bg);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#0f172a}.app-shell{display:flex;min-height:100vh}.sidebar{width:260px;background:var(--zmv-sidebar);color:#fff;position:fixed;inset:0 auto 0 0;z-index:1040;display:flex;flex-direction:column}.brand{height:74px;display:flex;align-items:center;padding:0 22px;border-bottom:1px solid rgba(255,255,255,.08);font-size:22px;font-weight:800;letter-spacing:-.5px}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#3b82f6,#22c55e);margin-right:10px;font-weight:900}.nav-section{padding:18px 14px 8px;font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.sidebar .nav-link{margin:3px 10px;padding:10px 12px;border-radius:10px;color:#cbd5e1;display:flex;align-items:center;gap:10px;font-size:14px}.sidebar .nav-link:hover,.sidebar .nav-link.active{background:rgba(59,130,246,.16);color:#fff}.sidebar .nav-link i{font-size:18px}.sidebar-footer{margin-top:auto;padding:16px}.demo-chip{background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.3);padding:10px 12px;border-radius:12px;color:#bbf7d0;font-size:12px}.main{margin-left:260px;min-width:0;flex:1}.topbar{height:74px;background:#fff;border-bottom:1px solid var(--zmv-border);display:flex;align-items:center;justify-content:space-between;padding:0 26px;position:sticky;top:0;z-index:1020}.top-title{font-weight:700}.content{padding:24px}.page-title{font-size:26px;font-weight:800;letter-spacing:-.5px;margin:0}.page-subtitle{color:var(--zmv-muted);font-size:14px;margin-top:4px}.card{border:1px solid var(--zmv-border);border-radius:16px;box-shadow:0 8px 30px rgba(15,23,42,.04)}.card-header{background:#fff;border-bottom:1px solid var(--zmv-border);padding:16px 18px;border-radius:16px 16px 0 0!important;font-weight:700}.metric-card{padding:18px;background:#fff}.metric-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--zmv-muted);font-weight:700}.metric-value{font-size:25px;font-weight:800;margin-top:8px}.metric-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:20px;background:#eff6ff;color:#2563eb}.wallet-card{position:relative;overflow:hidden}.wallet-card:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;background:rgba(37,99,235,.08);right:-35px;top:-45px}.module-card{transition:.2s ease;height:100%}.module-card:hover{transform:translateY(-3px);box-shadow:0 14px 35px rgba(15,23,42,.08)}.module-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#eff6ff;color:#2563eb;font-size:22px}.badge-soft-success{background:#dcfce7;color:#15803d}.badge-soft-warning{background:#fef3c7;color:#b45309}.badge-soft-danger{background:#fee2e2;color:#b91c1c}.badge-soft-primary{background:#dbeafe;color:#1d4ed8}.table>thead th{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#64748b;background:#f8fafc;border-bottom-width:1px;white-space:nowrap}.table td{vertical-align:middle;font-size:13px}.form-label{font-size:13px;font-weight:650}.form-control,.form-select{border-radius:10px;border-color:#cbd5e1;padding:.65rem .78rem}.form-control:focus,.form-select:focus{border-color:#60a5fa;box-shadow:0 0 0 .22rem rgba(59,130,246,.12)}.btn{border-radius:10px;font-weight:650}.btn-primary{background:var(--zmv-primary);border-color:var(--zmv-primary)}.btn-primary:hover{background:var(--zmv-primary-dark);border-color:var(--zmv-primary-dark)}.request-console{background:#0b1220;color:#dbeafe;border-radius:14px;padding:0;overflow:hidden;border:1px solid #1e293b}.console-head{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;background:#111827;border-bottom:1px solid #1f2937;font-size:12px}.console-body{margin:0;padding:14px;max-height:360px;overflow:auto;font-size:12px;line-height:1.6;color:#bfdbfe}.status-panel{border-radius:14px;padding:14px 16px;border:1px solid}.status-success{background:#f0fdf4;border-color:#bbf7d0}.status-pending{background:#fffbeb;border-color:#fde68a}.status-failed{background:#fef2f2;border-color:#fecaca}.service-tabs .nav-link{border-radius:10px;color:#475569;font-weight:650}.service-tabs .nav-link.active{background:#eff6ff;color:#1d4ed8}.login-wrap{min-height:100vh;background:radial-gradient(circle at 20% 10%,rgba(37,99,235,.18),transparent 35%),radial-gradient(circle at 80% 90%,rgba(34,197,94,.12),transparent 30%),#f8fafc;display:grid;place-items:center;padding:24px}.login-card{width:min(1020px,100%);display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border:1px solid var(--zmv-border);border-radius:24px;overflow:hidden;box-shadow:0 30px 80px rgba(15,23,42,.12)}.login-hero{padding:48px;background:linear-gradient(145deg,#0f172a,#172554);color:white;position:relative;overflow:hidden}.login-hero:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:rgba(59,130,246,.22);right:-100px;bottom:-120px}.login-form{padding:48px}.code-pill{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#eff6ff;color:#1d4ed8;padding:3px 7px;border-radius:6px;font-size:11px}.mobile-toggle{display:none}.amount-hint{font-size:11px;color:#64748b}.empty-state{padding:42px;text-align:center;color:#64748b}.json-tabs button{font-size:12px}.user-pill{display:flex;align-items:center;gap:10px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;font-weight:800}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}}@media(max-width:820px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.main{margin-left:0}.mobile-toggle{display:inline-flex}.topbar{padding:0 15px}.content{padding:16px}.login-card{grid-template-columns:1fr}.login-hero{display:none}.login-form{padding:30px}.kpi-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.kpi-grid{grid-template-columns:1fr}.page-title{font-size:22px}.content{padding:12px}}
.avatar-lg{width:48px;height:48px;border-radius:14px;font-size:20px}.flow-list{display:grid;gap:12px}.flow-list div{display:flex;align-items:center;gap:10px;font-size:13px}.flow-list span{width:28px;height:28px;border-radius:50%;background:#dbeafe;color:#1d4ed8;display:grid;place-items:center;font-weight:800}.remitter-strip{border-left:4px solid #22c55e}.stepper{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--zmv-border);border-radius:16px;padding:14px;gap:8px}.step{display:flex;align-items:center;gap:10px;padding:9px;border-radius:11px;color:#718096}.step>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e9eef5;font-weight:800;font-size:12px}.step strong{display:block;font-size:12px;color:#475569}.step small{display:block;font-size:10px}.step.active{background:#eff6ff}.step.active>span{background:#2563eb;color:#fff}.step.done>span{background:#dcfce7;color:#15803d}.rd-device-panel{border:1px dashed #93b4e8;background:#f7fbff;border-radius:14px;padding:16px}.rd-device-panel.success{border-color:#86d69b;background:#f2fcf5}.fingerprint-pulse{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#dbeafe;color:#2563eb;font-size:26px}.rd-device-panel.success .fingerprint-pulse{background:#dcfce7;color:#15803d}.service-choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.service-choice{border:1px solid #dbe3ee;border-radius:13px;padding:15px;cursor:pointer;display:grid;grid-template-columns:36px 1fr;column-gap:8px;align-items:center;transition:.15s;background:#fff}.service-choice input{display:none}.service-choice i{grid-row:1/3;font-size:23px;color:#2563eb}.service-choice strong{font-size:13px}.service-choice small{font-size:10px;color:#718096}.service-choice.active{border-color:#60a5fa;background:#eff6ff;box-shadow:0 0 0 2px rgba(59,130,246,.08)}@media(max-width:820px){.stepper{grid-template-columns:1fr 1fr}.service-choice-grid{grid-template-columns:1fr}}@media(max-width:560px){.stepper{grid-template-columns:1fr}.service-choice-grid{grid-template-columns:1fr}}
.detail-box{border:1px solid var(--zmv-border);border-radius:11px;padding:11px 13px;background:#f8fafc;height:100%}.detail-box span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#64748b;margin-bottom:4px}.detail-box strong{font-size:13px;word-break:break-word}.checkout-shell{display:grid;place-items:center;min-height:calc(100vh - 145px)}.checkout-card{width:min(650px,100%);background:#fff;border:1px solid var(--zmv-border);border-radius:20px;box-shadow:0 24px 70px rgba(15,23,42,.12);overflow:hidden}.checkout-head{padding:18px 22px;border-bottom:1px solid var(--zmv-border);display:flex;justify-content:space-between;align-items:center}.checkout-head .brand{height:auto;padding:0;border:0;color:#0f172a;font-size:15px}.checkout-head .brand small{display:block;color:#64748b;font-weight:500;font-size:10px;margin-top:2px}.checkout-head .brand-mark{width:34px;height:34px;font-size:17px;margin-right:0}.checkout-body{padding:24px}.merchant-order{display:flex;justify-content:space-between;gap:16px;background:#f8fafc;border:1px solid var(--zmv-border);border-radius:14px;padding:15px;margin-bottom:20px}.merchant-order small{display:block;color:#64748b;font-size:10px;text-transform:uppercase;letter-spacing:.07em}.merchant-order strong{display:block;font-size:13px;margin:3px 0}.merchant-order span{font-size:11px;color:#64748b}.merchant-order .text-end div{font-size:27px;font-weight:800}.payment-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.pay-method{border:1px solid #cbd5e1;border-radius:12px;padding:13px 8px;display:grid;place-items:center;gap:4px;cursor:pointer;background:#fff}.pay-method input{display:none}.pay-method i{font-size:21px;color:#475569}.pay-method span{font-size:11px;font-weight:700}.pay-method.active{border-color:#60a5fa;background:#eff6ff;box-shadow:0 0 0 2px rgba(59,130,246,.08)}.pay-method.active i{color:#2563eb}.result-icon{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;margin:auto;font-size:38px}.result-icon.success{background:#dcfce7;color:#15803d}.result-icon.pending{background:#fef3c7;color:#b45309}.result-icon.failed{background:#fee2e2;color:#b91c1c}.beneficiary-confirm{display:flex;align-items:center;gap:11px;background:#f8fafc;border:1px solid var(--zmv-border);padding:12px;border-radius:12px}.cashout-wrap{display:flex;gap:24px;align-items:center;justify-content:center}.cashout-info small{display:block;color:#64748b;text-transform:uppercase;font-size:10px}.cashout-info strong{display:block;font-size:18px}.cashout-info span{font-size:12px;color:#64748b}.cashout-amount{font-size:30px;font-weight:800;margin:8px 0}.demo-qr{width:210px;height:210px;background:#fff;border:10px solid #fff;box-shadow:0 0 0 1px #dbe3ee;display:grid;grid-template-columns:repeat(29,1fr);grid-template-rows:repeat(29,1fr);flex:0 0 auto}.demo-qr span{background:#fff}.demo-qr span.on{background:#111827}@media(max-width:650px){.payment-methods{grid-template-columns:1fr}.cashout-wrap{flex-direction:column;text-align:center}.demo-qr{width:190px;height:190px}.merchant-order{flex-direction:column}.merchant-order .text-end{text-align:left!important}}
@media(max-width:650px){.api-grid{grid-template-columns:1fr}}
.sidebar-scroll{overflow-y:auto;overflow-x:hidden;padding-bottom:14px}.nav-count{margin-left:auto;background:#ef4444;color:#fff;border-radius:999px;font-size:10px;min-width:19px;height:19px;display:grid;place-items:center}.notification-dot{position:absolute;top:-6px;right:-6px;background:#ef4444;color:#fff;border:2px solid #fff;border-radius:50%;font-size:9px;min-width:19px;height:19px;display:grid;place-items:center}.ops-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.ops-card{padding:18px;height:100%;position:relative;overflow:hidden}.ops-card .ops-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#eff6ff;color:#2563eb;font-size:20px;margin-bottom:14px}.ops-card h6{margin:0 0 5px;font-weight:800}.ops-card p{font-size:12px;color:#64748b;margin:0}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px}.status-dot.active{background:#22c55e}.status-dot.maintenance{background:#f59e0b}.status-dot.disabled{background:#ef4444}.timeline-row{border-left:2px solid #e2e8f0;padding-left:14px;margin-left:6px;padding-bottom:16px;position:relative}.timeline-row:before{content:"";width:10px;height:10px;border-radius:50%;background:#2563eb;position:absolute;left:-6px;top:4px}.masked-account{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em}.certificate-sheet{width:min(900px,100%);margin:auto;background:#fff;border:12px solid #0f172a;outline:3px solid #c9a227;padding:45px;min-height:600px;position:relative}.certificate-sheet:before{content:"Z";position:absolute;inset:0;display:grid;place-items:center;font-size:330px;font-weight:900;color:rgba(37,99,235,.035);pointer-events:none}.api-secret{word-break:break-all;font-family:ui-monospace,monospace;background:#0f172a;color:#bfdbfe;border-radius:10px;padding:12px}.mini-code{font-family:ui-monospace,monospace;background:#f1f5f9;border-radius:7px;padding:3px 6px}.qr-box{width:150px;height:150px;background:repeating-conic-gradient(#0f172a 0 25%,#fff 0 50%) 0/18px 18px;border:10px solid white;box-shadow:0 0 0 1px #cbd5e1}.dark-mode{--zmv-bg:#07111f;--zmv-border:#263246;background:#07111f;color:#e5eefb}.dark-mode .main,.dark-mode .content{background:#07111f}.dark-mode .topbar,.dark-mode .card,.dark-mode .card-header,.dark-mode .dropdown-menu,.dark-mode .form-control,.dark-mode .form-select,.dark-mode .table>tbody>tr>td{background:#0f1b2d!important;color:#e5eefb!important;border-color:#263246!important}.dark-mode .table>thead th{background:#132238!important;color:#93a4bd!important}.dark-mode .text-secondary,.dark-mode .page-subtitle,.dark-mode .ops-card p{color:#93a4bd!important}.dark-mode .btn-light{background:#142238;color:#e5eefb;border-color:#334155}.dark-mode .detail-box{background:#111f33;border-color:#263246;color:#e5eefb}.dark-mode .mini-code{background:#1e293b;color:#bfdbfe}@media(max-width:1200px){.ops-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:620px){.ops-grid{grid-template-columns:1fr}}@media print{.no-print,.sidebar,.topbar,.alert{display:none!important}.main{margin:0!important}.content{padding:0!important;background:#fff!important}.certificate-sheet{border:8px solid #111;outline:2px solid #c9a227;box-shadow:none!important}}
