/* Vozua Pay — premium production polish, September 2026 */
:root{
  --vz-surface:#ffffff;
  --vz-surface-soft:#f8fafc;
  --vz-surface-blue:#f3f7ff;
  --vz-ink-strong:#101828;
  --vz-border-soft:#e8edf4;
  --vz-shadow-soft:0 12px 34px rgba(16,24,40,.055);
  --vz-shadow-lift:0 18px 46px rgba(16,24,40,.09);
}
body.vp-fincore-shell,.merchant-workspace{background:linear-gradient(180deg,#f8faff 0,#f5f8fc 100%)}
.page-wrap{padding-top:26px}
.panel,.card,.metric-card,.summary-card,.merchant-card,.client-card,.settings-card,.application-card,.gateway-card,.operation-card,.transaction-card{
  border-color:var(--vz-border-soft);box-shadow:var(--vz-shadow-soft);border-radius:18px
}
.panel-head,.card-head{padding:18px 20px;background:linear-gradient(180deg,#fff 0,#fcfdff 100%);border-bottom-color:#eef1f5}
.panel-head h2,.panel-head h3,.card-head h2,.card-head h3{color:var(--vz-ink-strong);font-weight:600;letter-spacing:-.012em}
.panel-body,.card-body{padding:20px}
.topbar{height:72px;border-bottom-color:#e9edf3;box-shadow:0 1px 0 rgba(16,24,40,.015)}
.topbar-title{font-size:18px;font-weight:600;color:#172033}
.sidebar{box-shadow:18px 0 48px rgba(13,86,207,.13)}
.side-nav a{min-height:44px;border-radius:12px}
.side-nav a.active{background:rgba(255,255,255,.19);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09),0 8px 22px rgba(0,0,0,.06)}
.btn{min-height:40px;border-radius:12px;font-weight:600;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(16,24,40,.07)}
.btn.primary,.btn-primary{box-shadow:0 9px 20px rgba(20,100,232,.17)}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=url],input[type=search],select,textarea,.field{
  min-height:44px;border-radius:12px;border-color:#dde3eb;background:#fff
}
input:focus,select:focus,textarea:focus,.field:focus{border-color:#7aaef1;box-shadow:0 0 0 4px rgba(20,100,232,.085)}
.data-table th,.data-table td{padding:13px 15px}
.data-table th{background:#fafbfd;color:#6f7c8f;font-size:10.5px;letter-spacing:.02em}
.data-table tbody tr{transition:background .14s ease}
.data-table tbody tr:hover{background:#fbfdff}
.badge,.status-chip,.pill{padding:5px 9px;font-weight:600}
.alert{border-radius:14px;box-shadow:0 8px 24px rgba(16,24,40,.035)}
.page-heading{margin-bottom:20px}
.page-heading h1,.page-heading h2{font-size:20px;font-weight:600;color:#121b2c}
.page-heading p{font-size:12.5px;line-height:1.55}
.form-grid{gap:16px}
.form-label,label{font-size:11.5px;color:#465267}
.provider-editor,.provider-card,.gateway-card{overflow:hidden}
.provider-form-section{border-color:#edf0f5!important;border-radius:16px!important;background:linear-gradient(180deg,#fff,#fcfdff)!important}
.provider-section-title b{font-weight:650!important;color:#182338!important}
.vp-main-balance,.vp-balance-card{border-radius:20px!important;box-shadow:var(--vz-shadow-soft)!important}
.vp-main-balance:hover,.metric-card:hover,.summary-card:hover{box-shadow:var(--vz-shadow-lift)!important}
.modal-card{border-radius:20px!important;box-shadow:0 28px 80px rgba(16,24,40,.18)!important}
.toast{border-radius:14px!important;box-shadow:0 18px 48px rgba(16,24,40,.16)!important}
@media(max-width:900px){.page-wrap{padding:18px 16px 34px}.topbar{height:64px;padding:0 16px}.panel-head,.card-head{padding:15px 16px}.panel-body,.card-body{padding:16px}.form-grid{grid-template-columns:1fr}.form-grid .span-2,.form-group.full{grid-column:1/-1}}
@media(max-width:620px){.page-heading{align-items:flex-start;flex-direction:column}.heading-actions{width:100%;flex-wrap:wrap}.heading-actions .btn{flex:1}.data-table th,.data-table td{padding:11px 12px}.panel,.card{border-radius:16px}.topbar-title{font-size:16px}}
