/* PayPrime Design Tokens — swap brand by editing :root only */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/poppins-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/poppins-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/poppins-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/poppins-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/poppins-600-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/poppins-600-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/poppins-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/poppins-700-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/assets/fonts/poppins-800-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/assets/fonts/poppins-800-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{
  --brand-50:#EEEEFF;--brand-100:#DCDCFF;--brand-200:#B3B3FF;--brand-300:#8080FF;--brand-500:#3333FF;--brand-600:#0000FF;--brand-700:#0000CC;--brand-800:#00009E;--brand-900:#01030E;
  --accent-50:#FFEBEB;--accent-100:#FFCCCC;--accent-500:#FF0000;--accent-600:#D60000;--orange-50:#FFF4E5;--orange-500:#F97316;--orange-700:#C2410C;
  --success-50:#E8F7EF;--success-600:#0E9F5B;--warning-50:#FFF6E5;--warning-600:#C77700;--danger-50:#FEECEC;--danger-600:#D92D20;--info-50:#EAF4FF;--info-600:#1D72D8;
  --n-0:#FFFFFF;--n-25:#FAFBFD;--n-50:#F4F6FA;--n-100:#EAEDF3;--n-200:#D9DEE8;--n-300:#BCC3D1;--n-500:#6B7489;--n-700:#353D4F;--n-900:#01030E;
  --bg:var(--n-50);--surface:var(--n-0);--border:var(--n-200);--text:var(--n-900);--text-muted:var(--n-500);
  --font-sans:'Poppins',system-ui,-apple-system,'Segoe UI',sans-serif;--font-display:'Poppins',var(--font-sans);--font-mono:'JetBrains Mono',ui-monospace,monospace;
  --fs-xs:12px;--fs-sm:13px;--fs-md:14px;--fs-lg:16px;--fs-xl:20px;--fs-2xl:24px;--fs-3xl:32px;
  --sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;
  --r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--r-full:999px;
  --sh-sm:0 1px 2px rgba(15,21,37,.06);--sh-md:0 4px 14px rgba(15,21,37,.08);--sh-lg:0 18px 40px rgba(15,21,37,.16);
  --grad-brand:linear-gradient(135deg,#0000FF 0%,#01030E 100%);
  --sidebar-w:248px;
}
*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);font-size:var(--fs-md);color:var(--text);background:var(--bg);line-height:1.5}
h1,h2,h3{margin:0 0 var(--sp-2);letter-spacing:-.01em}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}
a{color:var(--brand-600);text-decoration:none}.muted{color:var(--text-muted)}.mono{font-family:var(--font-mono);font-size:var(--fs-sm)}
.btn{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 16px;border-radius:var(--r-md);border:1px solid transparent;font:600 var(--fs-md) var(--font-sans);cursor:pointer;white-space:nowrap}
.btn-primary{background:var(--brand-600);color:#fff}.btn-primary:hover{background:var(--brand-700)}
.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.btn-secondary:hover{background:var(--n-50)}
.btn-ghost{background:transparent;color:var(--brand-600)}.btn-danger{background:var(--danger-600);color:#fff}.btn-accent{background:var(--accent-500);color:#fff}
.btn-sm{height:32px;padding:0 12px;font-size:var(--fs-sm)}.btn-lg{height:48px;padding:0 22px;font-size:var(--fs-lg)}.btn-block{width:100%;justify-content:center}
.field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--sp-4)}.field label{font-weight:600;font-size:var(--fs-sm);color:var(--n-700)}
.input,select.input,textarea.input{height:42px;padding:0 12px;border:1px solid var(--border);border-radius:var(--r-md);font:inherit;background:#fff;width:100%}
.input:focus{outline:none;border-color:var(--brand-500);box-shadow:0 0 0 4px var(--brand-100)}.input.error{border-color:var(--danger-600)}.hint{font-size:var(--fs-xs);color:var(--text-muted)}
textarea.input{height:auto;padding:10px 12px}
.check{display:flex;gap:8px;align-items:flex-start;font-size:var(--fs-sm)}.check input{accent-color:var(--brand-600);width:16px;height:16px;margin-top:2px}
.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:600}
.b-success{background:var(--success-50);color:var(--success-600)}.b-danger{background:var(--danger-50);color:var(--danger-600)}.b-warning{background:var(--warning-50);color:var(--warning-600)}.b-info{background:var(--info-50);color:var(--info-600)}.b-neutral{background:var(--n-100);color:var(--n-700)}.b-brand{background:var(--brand-50);color:var(--brand-600)}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-sm);padding:var(--sp-5)}
.card-h{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--sp-4);gap:8px;flex-wrap:wrap}.card-h h3{margin:0}
.alert{display:flex;gap:12px;align-items:center;padding:12px 16px;border-radius:var(--r-md);border:1px solid;font-size:var(--fs-sm)}
.a-warning{background:var(--warning-50);border-color:#F5D08A;color:#7A4A00}.a-danger{background:var(--danger-50);border-color:#F7B4AE;color:#8A1C14}.a-info{background:var(--info-50);border-color:#B5D5FA;color:#0D4A92}.a-success{background:var(--success-50);border-color:#A6E0C2;color:#085E36}
.table-wrap{overflow-x:auto}table.t{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}
.t th{text-align:left;font-weight:600;color:var(--text-muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;padding:10px 12px;border-bottom:1px solid var(--border);background:var(--n-25)}
.t td{padding:12px;border-bottom:1px solid var(--n-100);vertical-align:middle}.t tr:hover td{background:var(--n-25)}
.modal-bg{position:fixed;inset:0;background:rgba(15,21,37,.5);display:none;align-items:center;justify-content:center;z-index:50;padding:16px}.modal-bg.open{display:flex}
.modal{background:#fff;border-radius:var(--r-xl);box-shadow:var(--sh-lg);width:100%;max-width:460px;padding:var(--sp-6)}
.switch{position:relative;width:38px;height:22px;display:inline-block}.switch input{display:none}.switch span{position:absolute;inset:0;background:var(--n-300);border-radius:99px;transition:.2s}.switch span:before{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}.switch input:checked+span{background:var(--success-600)}.switch input:checked+span:before{transform:translateX(16px)}
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:var(--sp-4);overflow-x:auto}.tabs a{padding:10px 14px;color:var(--text-muted);font-weight:600;border-bottom:2px solid transparent;white-space:nowrap}.tabs a.on{color:var(--brand-600);border-color:var(--brand-600)}

.ico{width:20px;height:20px;flex:none;vertical-align:middle}.ico-sm{width:16px;height:16px}.ico-lg{width:28px;height:28px}
.b-orange{background:var(--orange-50);color:var(--orange-700)}
.skel{background:linear-gradient(90deg,var(--n-100) 25%,var(--n-50) 50%,var(--n-100) 75%);background-size:200% 100%;animation:sk 1.4s infinite;border-radius:6px;height:14px}@keyframes sk{to{background-position:-200% 0}}
.toast{display:flex;gap:10px;align-items:flex-start;background:#fff;border:1px solid var(--border);border-left:4px solid;border-radius:var(--r-md);box-shadow:var(--sh-md);padding:12px 14px;font-size:13px;max-width:380px}
.toast.t-danger{border-left-color:var(--danger-600)}.toast.t-warning{border-left-color:var(--warning-600)}.toast.t-orange{border-left-color:var(--orange-500)}.toast.t-info{border-left-color:var(--brand-600)}
.empty{text-align:center;padding:40px 16px;color:var(--text-muted)}.empty .ico{width:44px;height:44px;color:var(--n-300)}
