:root{--ink:#0a121c;--text:#12151a;--muted:#667085;--paper:#fff;--panel:#f7f8fa;--panel-2:#f3f5f7;--border:#e5e7eb;--brand:#4f46e5;--brand-deep:#4338ca;--teal:#008f72;--teal-bg:#e9fbf6;--gold:#b76a00;--gold-bg:#fff7df;--coral:#d92d20;--coral-bg:#fff1f0;--shadow-card:0 1px 2px #12151a0a;--display:"Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif;--body:Inter, ui-sans-serif, system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Consolas, monospace;background:var(--paper);color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{border:0}button:disabled{cursor:not-allowed;opacity:.62}button:not(:disabled){cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{color:var(--text);font-family:var(--display);letter-spacing:0}code,.amount,.table-code,.plain-code,.reference-text{font-family:var(--mono);font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}#root{min-height:100vh}.muted{color:var(--muted)}.icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;flex:none;width:1rem;height:1rem}.auth-screen{background:#f7f8fa;justify-content:center;align-items:center;min-height:100vh;padding:3rem 1rem;display:flex}.auth-card{background:var(--paper);border-radius:16px;width:100%;max-width:448px;padding:1.5rem}.auth-brand{color:var(--text);font-family:var(--display);align-items:center;gap:.65rem;margin-bottom:1.35rem;font-size:1rem;font-weight:700;line-height:1;display:inline-flex}.auth-brand-mark{background:var(--brand);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;font-size:1rem;font-weight:700;display:inline-flex}.auth-card h1{margin-bottom:.4rem;font-size:1.5rem;font-weight:500;line-height:1.2}.auth-card .muted{font-size:.875rem;line-height:1.5}.login-form{flex-direction:column;gap:1rem;margin-top:1.75rem;display:flex}label{color:var(--text);flex-direction:column;gap:.45rem;font-size:.9rem;font-weight:400;display:flex}input,select{background:var(--paper);border:1px solid var(--border);color:var(--text);border-radius:10px;width:100%;min-height:44px;padding:.68rem .85rem}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 1.05rem),calc(100% - .72rem);background-repeat:no-repeat;background-size:.34rem .34rem;padding-right:2rem}input:focus,select:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px #4f46e529}.password-field{position:relative}.password-field input{padding-right:2.85rem}.password-toggle{color:var(--muted);background:0 0;justify-content:center;align-items:center;width:44px;height:100%;min-height:44px;transition:color .15s;display:flex;position:absolute;top:0;right:0}.password-toggle:not(:disabled):hover{color:var(--text)}.admin-shell{background:var(--paper);min-height:100vh;display:flex}.sidebar{background:var(--paper);border-right:1px solid var(--border);flex-direction:column;gap:1.4rem;width:16rem;padding:1rem;display:flex}.brand{border-bottom:1px solid var(--border);align-items:center;min-height:3.5rem;padding-bottom:1rem;display:flex}.sidebar nav{flex-direction:column;gap:.35rem;display:flex}.sidebar nav button,.mobile-tabs button{color:var(--muted);text-align:left;background:0 0;border-radius:10px;align-items:center;gap:.65rem;min-height:44px;padding:.65rem .8rem;font-weight:500;transition:background .15s,color .15s;display:inline-flex}.brand-name{color:var(--text);font-family:var(--display);font-weight:500}.sidebar nav button:hover,.mobile-tabs button:hover{color:var(--brand-deep);background:#4f46e514}.sidebar nav button.active,.mobile-tabs button.active{background:var(--brand);color:#fff}.main-column{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:var(--paper);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:4rem;padding:.75rem 1.25rem;display:flex}.mobile-tabs{display:none}.user-pill{align-items:center;gap:.75rem;min-width:0;margin-left:auto;display:flex}.user-pill>span{color:var(--brand-deep);background:#4f46e524;border-radius:999px;flex:none;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;font-weight:500;display:inline-flex}.user-pill div{text-align:right;min-width:0}.user-pill strong,.user-pill .user-name,.user-pill small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.user-pill strong,.user-pill .user-name{font-size:.9rem;font-weight:400}.user-pill small{color:var(--muted);font-size:.76rem}.content{background:var(--panel);flex:1;padding:1.4rem}.stack{flex-direction:column;gap:1rem;max-width:1240px;margin:0 auto;display:flex}.section-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.section-header h1{font-size:clamp(1.5rem,4vw,2rem);line-height:1.15}.section-header .muted{margin-top:.9rem;font-size:.95rem}.primary-button,.secondary-button,.danger-button,.icon-button,.icon-only-button{border-radius:10px;justify-content:center;align-items:center;gap:.45rem;min-height:42px;padding:.62rem .85rem;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.compact{white-space:nowrap;min-height:36px;padding:.48rem .62rem;font-size:.82rem}.primary-button{background:var(--brand);color:#fff}.primary-button:not(:disabled):hover{background:var(--brand-deep)}.login-submit{font-weight:700}.button-spinner{border:2px solid #4f46e542;border-top-color:var(--brand);border-radius:999px;width:1rem;height:1rem;animation:.8s linear infinite spin;display:inline-block}.primary-button .button-spinner{border-color:#fff #ffffff6b #ffffff6b}.danger-button .button-spinner,.action-icon-reject .button-spinner{border-color:#d92d2042;border-top-color:var(--coral)}.secondary-button,.icon-button,.icon-only-button{border:1px solid var(--border);color:var(--text);background:#fff}.secondary-button:not(:disabled):hover,.icon-button:not(:disabled):hover,.icon-only-button:not(:disabled):hover{color:var(--brand-deep);background:#4f46e514;border-color:#4f46e559}.danger-button{background:var(--coral-bg);color:var(--coral)}.danger-button:not(:disabled):hover{background:#ffe3e0}.icon-only-button{width:40px;min-height:40px;padding:0}.full-width{width:100%}.filters{background:var(--panel-2);border:1px solid var(--border);border-radius:12px;align-self:flex-start;gap:.35rem;padding:.3rem;display:flex}.filters button{color:var(--muted);background:0 0;border-radius:9px;min-height:38px;padding:.52rem .78rem;font-size:.88rem;font-weight:500}.filters button.active{color:var(--brand-deep);background:#fff;box-shadow:inset 0 0 0 1px #4f46e51a}.filters button:not(.active):hover{color:var(--brand-deep);background:#4f46e514}.user-filters{border:1px solid var(--border);box-shadow:var(--shadow-card);background:#fff;border-radius:16px;grid-template-columns:minmax(16rem,1.6fr) minmax(10rem,1fr) minmax(10rem,1fr) minmax(10rem,1fr) auto;align-items:end;gap:.85rem;padding:1rem;display:grid}.user-filters label{color:var(--muted);gap:.4rem;font-size:.78rem}.user-filters .secondary-button{white-space:nowrap;min-height:44px}.payment-search-filters{grid-template-columns:minmax(16rem,1.6fr) auto}.table-shell{border:1px solid var(--border);box-shadow:var(--shadow-card);background:#fff;border-radius:16px;padding:1rem;overflow:hidden}.data-table{border-collapse:collapse;background:#fff;border-radius:12px;width:100%;overflow:hidden}.data-table thead{background:var(--panel)}.data-table th{color:var(--muted);text-align:left;text-transform:uppercase;white-space:nowrap;padding:.8rem .9rem;font-size:.72rem;font-weight:500}.data-table td{border-top:1px solid var(--border);color:var(--text);vertical-align:middle;max-width:18rem;padding:.85rem .9rem;font-size:.88rem;line-height:1.35}.data-table td strong,.data-table td .primary-cell,.data-table td span,.data-table td small{text-overflow:ellipsis;min-width:0;display:block;overflow:hidden}.data-table td .primary-cell,.data-table td strong{font-weight:400}.data-table td small,.data-table td span+span,.data-table td strong+span{color:var(--muted);margin-top:.15rem;font-size:.78rem}.actions-column{text-align:right}.data-table td.row-actions{min-width:17rem}.data-table td.payment-actions{min-width:8.5rem}.data-table td.user-actions{min-width:6rem}.row-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:.4rem;width:100%;max-width:none;display:inline-flex}.table-code{background:var(--panel);border:1px solid var(--border);color:var(--text);text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;border-radius:8px;max-width:100%;padding:.32rem .45rem;font-size:.78rem;display:inline-block;overflow:hidden}.action-icon-button{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:9px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.action-icon-button:not(:disabled):hover{color:var(--brand-deep);background:#4f46e514;border-color:#4f46e559}.action-icon-verify{color:var(--brand-deep);background:#4f46e51a;border-color:#4f46e538}.action-icon-verify:not(:disabled):hover{background:var(--brand);border-color:var(--brand);color:#fff}.action-icon-keys{color:var(--brand-deep);background:#4f46e51a;border-color:#4f46e538}.action-icon-keys:not(:disabled):hover{background:var(--brand);border-color:var(--brand);color:#fff}.action-icon-reject{background:var(--coral-bg);color:var(--coral);border-color:#d92d202e}.action-icon-reject:not(:disabled):hover{background:var(--coral);border-color:var(--coral);color:#fff}.plain-code,.reference-text{color:var(--text);text-overflow:ellipsis;vertical-align:middle;white-space:nowrap;max-width:100%;font-size:.82rem;display:inline-block;overflow:hidden}.amount{white-space:nowrap;font-weight:500}.badge{text-transform:uppercase;white-space:nowrap;border-radius:999px;flex:none;padding:.42rem .55rem;font-size:.68rem;font-weight:500;line-height:1;display:inline-flex}.badge-pending{background:var(--gold-bg);color:var(--gold)}.badge-verified,.badge-CLIENT,.badge-ADMIN,.badge-active{background:var(--teal-bg);color:var(--teal)}.badge-rejected,.badge-inactive,.badge-revoked{background:var(--coral-bg);color:var(--coral)}.form-error{background:var(--coral-bg);color:var(--coral);border:1px solid #d92d2038;border-radius:10px;padding:.75rem .9rem}.warning{background:var(--gold-bg);color:#7a4b00;border:1px solid #fedf89;border-radius:12px;padding:.8rem}.empty-state{border:1px solid var(--border);color:var(--muted);text-align:center;background:#fff;border-radius:14px;padding:1.5rem}.table-shell .empty-state{margin-top:.9rem}.skeleton-line{background:linear-gradient(90deg,#eef0f3,#f7f8fa,#eef0f3);border-radius:999px;width:min(9rem,100%);height:.85rem;animation:1.2s ease-in-out infinite pulse;display:block}.pagination{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:.85rem;margin-top:.9rem;padding-top:.9rem;display:flex}.pagination-summary{color:var(--muted);font-size:.88rem}.pagination-summary strong{color:var(--text);font-weight:600}.pagination-controls,.pagination-pages{align-items:center;gap:.35rem;display:flex}.pagination-arrow,.pagination-page{color:var(--muted);background:0 0;border-radius:10px;justify-content:center;align-items:center;min-width:36px;height:36px;padding:0 .6rem;font-size:.88rem;font-weight:500;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.pagination-arrow:not(:disabled):hover,.pagination-page:not([aria-current=page]):hover{color:var(--brand-deep);background:#4f46e514}.pagination-page[aria-current=page]{background:var(--brand);color:#fff}.pagination-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:1rem;height:1rem}.pagination-compact{color:var(--muted);text-align:center;min-width:4.75rem;padding:0 .4rem;font-size:.88rem;display:none}.modal-backdrop{z-index:20;background:#0a121c8c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{border:1px solid var(--border);background:#fff;border-radius:16px;flex-direction:column;gap:1.35rem;width:100%;max-width:620px;max-height:calc(100vh - 2rem);padding:1.55rem;display:flex;overflow:auto}.modal-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.modal-header h2{font-size:1.2rem;line-height:1.2}.detail-list{grid-template-columns:1fr;gap:1.15rem 1.25rem;margin:0;padding:.25rem 0 .45rem;display:grid}.detail-row{grid-template-columns:minmax(8rem,32%) minmax(0,1fr);align-items:start;gap:.45rem 1.25rem;min-width:0;padding:0;display:grid}.detail-row dt{color:var(--muted);text-transform:uppercase;margin:0;font-size:.72rem;font-weight:500;line-height:1.35}.detail-row dd{color:var(--text);overflow-wrap:anywhere;margin:0;font-weight:400}.dialog-actions{grid-template-columns:1fr 1fr;gap:.7rem;display:grid}.modal-actions{grid-template-columns:1fr 1fr;gap:.7rem;margin-top:.45rem;display:grid}.detail-list+.full-width{margin-top:.55rem}.copy-row{background:var(--panel);border:1px solid var(--border);border-radius:12px;grid-template-columns:4.5rem minmax(0,1fr) auto;align-items:center;gap:.55rem;padding:.65rem;display:grid}.copy-row span{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:500}.copy-row code{color:var(--text);overflow-wrap:anywhere}@keyframes pulse{0%,to{opacity:.65}50%{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1020px){.content{padding:1rem}.data-table td{max-width:14rem}}@media (width<=820px){.admin-shell{display:block}.sidebar{display:none}.topbar{z-index:10;flex-direction:column-reverse;align-items:stretch;gap:.75rem;padding:.8rem;position:sticky;top:0}.mobile-tabs{grid-template-columns:1fr 1fr;gap:.45rem;display:grid}.mobile-tabs button{text-align:center;justify-content:center}.user-pill{width:100%}.user-pill div{text-align:left;flex:1}.section-header{flex-direction:column}.section-header .secondary-button,.filters{align-self:stretch;width:100%}.filters{grid-template-columns:1fr 1fr;display:grid}.filters button{min-height:42px}.user-filters{grid-template-columns:1fr}.user-filters .secondary-button{width:100%}.table-shell{border:1px solid var(--border);box-shadow:var(--shadow-card);background:#fff;border-radius:16px;padding:.75rem;overflow:hidden}.responsive-table,.responsive-table tbody,.responsive-table tr,.responsive-table td{width:100%;display:block}.responsive-table thead{display:none}.responsive-table tr{border:1px solid var(--border);box-shadow:none;background:#fff;border-radius:12px;margin-bottom:.85rem;overflow:hidden}.responsive-table td{border-top:1px solid var(--border);grid-template-columns:minmax(6rem,34%) minmax(0,1fr);align-items:flex-start;gap:.75rem;max-width:none;padding:.75rem .85rem;display:grid}.responsive-table td:first-child{border-top:0}.responsive-table td:before{color:var(--muted);content:attr(data-label);text-transform:uppercase;font-size:.72rem;font-weight:500}.responsive-table td.row-actions{grid-template-columns:1fr;justify-content:stretch;min-width:0;display:grid}.responsive-table td.payment-actions,.responsive-table td.user-actions{justify-content:flex-end;align-items:center;display:flex}.responsive-table td.row-actions:before{margin-bottom:0}.responsive-table td.payment-actions:before,.responsive-table td.user-actions:before{margin-right:auto}.action-icon-button{width:44px;height:44px}.responsive-table td.row-actions .secondary-button,.responsive-table td.row-actions .primary-button,.responsive-table td.row-actions .danger-button{justify-self:stretch}.row-actions .primary-button,.row-actions .secondary-button,.row-actions .danger-button{width:100%;min-height:44px}.table-code,.plain-code,.reference-text{white-space:normal}.pagination{flex-direction:column;align-items:stretch}.pagination-summary{text-align:center}.pagination-controls{justify-content:space-between}.pagination-pages{display:none}.pagination-compact{display:inline-block}.detail-list,.modal-actions,.dialog-actions,.copy-row{grid-template-columns:1fr}.detail-row{grid-template-columns:1fr;gap:.25rem}}@media (width<=420px){.auth-screen{padding:2rem 1rem}.auth-card{padding:1.5rem}.auth-card h1{font-size:1.45rem}.user-pill small{display:none}}
