:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-light: #dbeafe;--color-primary-dark: #1e40af;--color-success: #16a34a;--color-success-hover: #15803d;--color-success-light: #dcfce7;--color-success-dark: #166534;--color-warning: #ea580c;--color-warning-hover: #c2410c;--color-warning-light: #fed7aa;--color-warning-dark: #9a3412;--color-error: #dc2626;--color-error-hover: #b91c1c;--color-error-light: #fecaca;--color-error-dark: #991b1b;--color-neutral: #6b7280;--color-neutral-hover: #4b5563;--color-neutral-light: #f3f4f6;--color-neutral-dark: #374151;--color-text-primary: #1e293b;--color-text-secondary: #64748b;--color-text-muted: #94a3b8;--color-text-inverse: #ffffff;--color-bg-primary: #ffffff;--color-bg-secondary: #f8fafc;--color-bg-tertiary: #f1f5f9;--color-bg-overlay: rgba(0, 0, 0, .5);--color-border-primary: #e2e8f0;--color-border-secondary: #cbd5e1;--color-border-focus: #3b82f6;--font-family-primary: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Courier New", monospace;--font-size-xs: 11px;--font-size-sm: 12px;--font-size-base: 14px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 20px;--font-size-3xl: 24px;--font-size-4xl: 32px;--font-size-5xl: 48px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.4;--line-height-relaxed: 1.6;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 20px;--space-2xl: 24px;--space-3xl: 32px;--space-4xl: 48px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 50%;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 1px 3px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-xl: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-2xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}[data-theme=dark]{--color-text-primary: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-muted: #94a3b8;--color-bg-primary: #0f172a;--color-bg-secondary: #1e293b;--color-bg-tertiary: #334155;--color-border-primary: #334155;--color-border-secondary: #475569}*{box-sizing:border-box}body{margin:0;font-family:var(--font-family-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-secondary)}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-2xl{gap:var(--space-2xl)}.align-center{display:flex;align-items:center;justify-content:center}.align-content-right{display:flex;align-items:center;justify-content:flex-end}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-bg-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop)}.card{background:var(--color-bg-primary);border-radius:var(--radius-xl);padding:var(--space-2xl);box-shadow:var(--shadow-md);border:1px solid var(--color-border-primary)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-2xl);border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal);text-decoration:none;white-space:nowrap;font-family:var(--font-family-primary)}.button:disabled{opacity:.6;cursor:not-allowed}.button-primary{background:var(--color-primary);color:var(--color-text-inverse);box-shadow:0 1px 2px #0000000d}.button-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.button-secondary{background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border-primary);box-shadow:0 1px 2px #0000000d}.button-secondary:hover:not(:disabled){background:var(--color-bg-secondary);border-color:var(--color-border-secondary);transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.button-success{background:var(--color-success);color:var(--color-text-inverse);box-shadow:0 1px 2px #0000000d}.button-success:hover:not(:disabled){background:var(--color-success-hover);transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.button-warning{background:var(--color-warning);color:var(--color-text-inverse);box-shadow:0 1px 2px #0000000d}.button-warning:hover:not(:disabled){background:var(--color-warning-hover);transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.button-error{background:var(--color-error);color:var(--color-text-inverse);box-shadow:0 1px 2px #0000000d}.button-error:hover:not(:disabled){background:var(--color-error-hover);transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.button-sm{padding:var(--space-sm) var(--space-lg);font-size:var(--font-size-sm)}.button-lg{padding:var(--space-lg) var(--space-3xl);font-size:var(--font-size-lg)}.create-button{background:var(--color-primary);color:var(--color-text-inverse);border:none;padding:var(--space-md) var(--space-2xl);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;gap:var(--space-sm);font-family:var(--font-family-primary);box-shadow:0 1px 2px #0000000d}.create-button:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.primary-button{background:var(--color-primary);color:var(--color-text-inverse);border:none;padding:var(--space-md) var(--space-2xl);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-normal);font-family:var(--font-family-primary);box-shadow:0 1px 2px #0000000d}.primary-button:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.secondary-button{background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border-primary);padding:var(--space-md) var(--space-2xl);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal);font-family:var(--font-family-primary);box-shadow:0 1px 2px #0000000d}.secondary-button:hover{background:var(--color-bg-secondary);border-color:var(--color-border-secondary);transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.input{width:100%;padding:var(--space-md) var(--space-lg);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-family:inherit;background:var(--color-bg-secondary);color:var(--color-text-primary);transition:all var(--transition-normal)}.input:focus{outline:none;border-color:var(--color-border-focus);background:var(--color-bg-primary);box-shadow:0 0 0 3px #3b82f61a}.input:disabled{background:var(--color-bg-tertiary);color:var(--color-text-muted);cursor:not-allowed}.badge{display:inline-flex;align-items:center;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.5px}.badge-primary{background:var(--color-primary-light);color:var(--color-primary)}.badge-success{background:var(--color-success-light);color:var(--color-success)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.badge-error{background:var(--color-error-light);color:var(--color-error)}.spinner{width:20px;height:20px;border:2px solid var(--color-border-primary);border-top:2px solid var(--color-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite}.status-pending{background:var(--color-warning-light);color:var(--color-warning-dark)}.status-active{background:var(--color-primary-light);color:var(--color-primary-dark)}.status-completed{background:var(--color-success-light);color:var(--color-success-dark)}.status-expired{background:var(--color-error-light);color:var(--color-error-dark)}.status-online{background:var(--color-success-light);color:var(--color-success)}.status-offline{background:var(--color-error-light);color:var(--color-error)}.filters-section{background:var(--color-bg-primary);border-radius:var(--radius-lg);padding:var(--space-md);margin-bottom:var(--space-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border-primary)}.filters-section.compact{padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-lg)}.filters-header{display:flex;justify-content:space-between;align-items:center}@media (max-width: 768px){.card{padding:var(--space-lg)}.button{padding:var(--space-md) var(--space-lg);font-size:var(--font-size-sm)}}.asset-card{display:flex;align-items:center;padding:var(--space-md);background:#fff;border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);cursor:pointer;transition:all .2s ease;position:relative}.asset-card:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary);transform:translateY(-1px)}.asset-card img{width:28px;height:28px;margin-right:10px;border-radius:var(--radius-md);flex-shrink:0}.total-balance-section{display:flex;align-items:center;gap:var(--space-sm)}.total-balance-label{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.toast-container{position:fixed;top:20px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:12px}.toast{background:#fff;border-radius:12px;padding:16px 20px;box-shadow:0 8px 32px #0000001f;border:1px solid var(--color-border-primary);min-width:300px;max-width:400px;transform:translate(100%);opacity:0;transition:all .3s ease}.toast.visible{transform:translate(0);opacity:1}.toast.success{border-left:4px solid var(--color-success)}.toast.error{border-left:4px solid var(--color-error)}.toast.info{border-left:4px solid var(--color-primary)}.toast-content{display:flex;align-items:center;gap:12px}.toast-icon{font-size:18px;font-weight:700;flex-shrink:0}.toast.success .toast-icon{color:var(--color-success)}.toast.error .toast-icon{color:var(--color-error)}.toast.info .toast-icon{color:var(--color-primary)}.toast-message{flex:1;color:var(--color-text-primary);font-size:14px;line-height:1.4}.toast-close{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:16px;padding:4px;border-radius:4px;transition:all .2s;flex-shrink:0}.toast-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}@media (max-width: 480px){.toast-container{top:10px;right:10px;left:10px}.toast{min-width:auto;max-width:none}}.auth-container{min-height:100vh;background:var(--color-bg-secondary);display:flex;align-items:center;justify-content:center;padding:var(--space-2xl);font-family:var(--font-family-primary)}.auth-card{background:var(--color-bg-primary);border-radius:var(--radius-2xl);padding:var(--space-3xl);box-shadow:var(--shadow-md);border:1px solid var(--color-border-primary);width:100%;max-width:400px}.auth-header{text-align:center;margin-bottom:32px}.auth-header h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--space-sm) 0}.auth-header p{color:var(--color-text-secondary);margin:0;font-size:var(--font-size-lg)}.auth-form{display:flex;flex-direction:column;gap:var(--space-xl)}.form-group{display:flex;flex-direction:column;gap:var(--space-sm)}.form-group label{font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-base)}.form-group input{padding:var(--space-md) var(--space-lg);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);font-size:var(--font-size-lg);transition:all var(--transition-normal);background:var(--color-bg-secondary)}.form-group input:focus{outline:none;border-color:var(--color-border-focus);background:var(--color-bg-primary);box-shadow:0 0 0 3px #3b82f61a}.auth-button{background:var(--color-primary);color:var(--color-text-inverse);border:none;padding:var(--space-md) var(--space-2xl);border-radius:var(--radius-lg);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-normal);margin-top:var(--space-sm)}.auth-button:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px)}.auth-button:disabled{background:var(--color-text-muted);cursor:not-allowed;transform:none}.auth-footer{text-align:center;margin-top:var(--space-2xl);padding-top:var(--space-2xl);border-top:1px solid var(--color-border-primary)}.auth-footer p{color:var(--color-text-secondary);margin:0;font-size:var(--font-size-base)}.auth-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium);transition:color var(--transition-normal)}.auth-link:hover{color:var(--color-primary-hover);text-decoration:underline}.passkey-login-section{margin-bottom:var(--space-2xl)}.passkey-login-button{width:100%;padding:var(--space-md) var(--space-2xl);background-color:var(--color-primary);color:var(--color-text-inverse);border:none;border-radius:var(--radius-lg);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-normal)}.passkey-login-button:hover:not(:disabled){background-color:var(--color-primary-hover)}.passkey-login-button:disabled{background-color:var(--color-text-muted);cursor:not-allowed}.passkey-auto-trigger{text-align:center;margin-bottom:var(--space-2xl);padding:var(--space-lg);background-color:var(--color-primary-light);border:1px solid var(--color-primary);border-radius:var(--radius-lg)}.passkey-auto-trigger p{margin:0;color:var(--color-primary-dark);font-weight:var(--font-weight-medium)}.passkey-cancelled{text-align:center;margin-bottom:var(--space-2xl);padding:var(--space-lg);background-color:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:var(--radius-lg)}.passkey-cancelled p{margin:0 0 var(--space-md) 0;color:var(--color-warning-dark);font-weight:var(--font-weight-medium)}.passkey-retry-button{padding:var(--space-sm) var(--space-lg);background-color:var(--color-warning);color:var(--color-text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-normal)}.passkey-retry-button:hover:not(:disabled){background-color:var(--color-warning-hover)}.passkey-retry-button:disabled{background-color:var(--color-text-muted);cursor:not-allowed}.divider{position:relative;text-align:center;margin:var(--space-xl) 0}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--color-border-primary)}.divider span{background:var(--color-bg-primary);padding:0 var(--space-lg);color:var(--color-text-secondary);font-size:var(--font-size-base)}@media (max-width: 480px){.auth-container{padding:var(--space-lg)}.auth-card{padding:var(--space-2xl)}.auth-header h1{font-size:var(--font-size-3xl)}}.management-container{margin:0 auto;height:100vh;display:flex;flex-direction:column;overflow:hidden}.data-table{background:var(--color-bg-primary);border-radius:var(--radius-2xl);box-shadow:var(--shadow-md);border:1px solid var(--color-border-primary);flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.data-table table{width:100%;border-collapse:collapse;display:flex;flex-direction:column;height:100%}.data-table thead{display:table;width:100%;table-layout:fixed;background:var(--color-bg-secondary);flex-shrink:0}.data-table tbody{display:block;overflow-y:auto;flex:1;min-height:0;width:100%}.data-table tr{display:table;width:100%;table-layout:fixed}.data-table th{background:var(--color-bg-secondary);padding:var(--space-lg);text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);font-size:var(--font-size-base);border-bottom:1px solid var(--color-border-primary)}.data-table td{padding:var(--space-lg);border-bottom:1px solid var(--color-bg-tertiary);color:var(--color-text-primary);font-size:var(--font-size-base)}.data-table tr:hover{background:var(--color-bg-secondary)}.data-table tr:last-child td{border-bottom:none}.badge{background:var(--color-primary-light);color:var(--color-primary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.action-badge{background:var(--color-warning-light);color:var(--color-warning-dark);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.resource-badge{background:var(--color-success-light);color:var(--color-success);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.status-badge{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-transform:capitalize}.status-badge.active{background:var(--color-success-light);color:var(--color-success)}.status-badge.inactive{background:var(--color-error-light);color:var(--color-error)}.status-badge.blocked{background:var(--color-warning-light);color:var(--color-warning-dark)}.merchant-logo{width:32px;height:32px;border-radius:var(--radius-md);object-fit:cover}.merchant-name{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.merchant-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.website-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium);transition:color var(--transition-normal)}.website-link:hover{color:var(--color-primary-hover);text-decoration:underline}.permissions-list{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.permission-badge{background:var(--color-bg-tertiary);color:var(--color-text-secondary);padding:2px var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.permissions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-md);max-height:200px;overflow-y:auto;padding:var(--space-md);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);background:var(--color-bg-secondary)}.permission-checkbox{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;padding:var(--space-sm);border-radius:var(--radius-md);transition:background var(--transition-normal)}.permission-checkbox:hover{background:var(--color-bg-tertiary)}.permission-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary)}.permission-label{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.checkbox-label{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-base)}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary)}.action-buttons{display:flex;gap:var(--space-sm)}.edit-button,.delete-button{background:none;border:none;padding:var(--space-md) var(--space-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.edit-button{color:var(--color-primary)}.edit-button:hover{background:var(--color-primary-light)}.delete-button{color:var(--color-error)}.delete-button:hover{background:var(--color-error-light)}.modal{background:var(--color-bg-primary);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-close{background:none;border:none;font-size:var(--font-size-xl);color:var(--color-text-secondary);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-sm);transition:all var(--transition-normal)}.modal-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.modal-form{padding:0 var(--space-2xl) var(--space-2xl) var(--space-2xl)}.modal-form .form-group{margin-bottom:var(--space-xl)}.modal-form label{display:block;margin-bottom:var(--space-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-base)}.modal-form input,.modal-form select,.modal-form textarea{width:100%;padding:var(--space-md) var(--space-lg);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);font-size:var(--font-size-lg);transition:all var(--transition-normal);background:var(--color-bg-secondary);box-sizing:border-box;font-family:inherit}.modal-form input:focus,.modal-form select:focus,.modal-form textarea:focus{outline:none;border-color:var(--color-border-focus);background:var(--color-bg-primary);box-shadow:0 0 0 3px #3b82f61a}.modal-form textarea{resize:vertical;min-height:80px}.modal-actions{display:flex;gap:var(--space-md);justify-content:flex-end;margin-top:var(--space-2xl);padding-top:var(--space-2xl);border-top:1px solid var(--color-border-primary)}@media (max-width: 768px){.data-table table{min-width:360px}.action-buttons{flex-direction:column;gap:var(--space-xs)}.modal{margin:var(--space-lg);max-width:none}.modal-actions{flex-direction:column}.permissions-grid{grid-template-columns:1fr}.merchant-description{max-width:150px}.expanded-grid{grid-template-columns:1fr}.detail-section.full-width{grid-column:1}}.admin-layout{display:flex;height:100vh;min-height:0}.admin-sidebar{height:100vh;flex-shrink:0}.admin-main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.merchant-link{background:none;border:none;color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium);cursor:pointer;padding:0;font-size:var(--font-size-base);transition:color var(--transition-normal)}.merchant-link:hover{color:var(--color-primary-hover);text-decoration:underline}.no-merchant{color:var(--color-text-muted);font-style:italic}.permission-error{background:var(--color-bg-primary);border-radius:var(--radius-2xl);box-shadow:var(--shadow-md);border:1px solid var(--color-border-primary);padding:var(--space-4xl);text-align:center;margin-top:var(--space-3xl)}.permission-error h2{color:var(--color-error);font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-lg) 0}.permission-error p{color:var(--color-text-secondary);font-size:var(--font-size-lg);margin:0}.session-row{cursor:pointer;transition:background-color var(--transition-normal);-webkit-user-select:none;user-select:none}.session-row:hover{background-color:var(--color-bg-secondary)}.session-row td{-webkit-user-select:none;user-select:none}.details-row{background-color:var(--color-bg-secondary)}.session-details{padding:var(--space-sm)}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-2xl)}.detail-section h4{margin:0 0 var(--space-md) 0;color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border-secondary)}.detail-label{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:var(--font-size-base)}.detail-value{color:var(--color-text-primary);font-size:var(--font-size-base);text-align:right;word-break:break-all}.detail-value.address{font-family:var(--font-family-mono);font-size:var(--font-size-sm);background:var(--color-bg-tertiary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);max-width:200px}.merchant-logo-small{width:24px;height:24px;border-radius:var(--radius-sm);margin-right:var(--space-sm);object-fit:cover}.merchant-info{display:flex;align-items:center}.status-badge.active{background-color:var(--color-primary-light);color:var(--color-primary-dark)}.status-badge.completed{background-color:var(--color-success-light);color:var(--color-success-dark)}.status-badge.expired{background-color:var(--color-error-light);color:var(--color-error-dark)}.balance-info{display:flex;align-items:center;gap:var(--space-sm)}.balance-amount{font-weight:var(--font-weight-semibold);color:var(--color-success)}.refresh-button{background:none;border:none;cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-sm);transition:background-color var(--transition-normal)}.refresh-button:hover{background-color:var(--color-bg-tertiary)}.refresh-button:disabled{opacity:.5;cursor:not-allowed}.asset-info,.network-info{display:flex;align-items:center;gap:var(--space-sm)}.asset-icon-small,.network-icon-small{width:20px;height:20px;border-radius:var(--radius-full);object-fit:cover}.address{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary);word-break:break-all}.detail-value.address{background-color:var(--color-bg-secondary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.summary-card{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-text-inverse);padding:var(--space-xl);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:var(--space-lg);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.summary-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.summary-icon{font-size:var(--font-size-4xl);opacity:.9}.summary-content{flex:1}.summary-label{font-size:var(--font-size-sm);opacity:.9;margin-bottom:var(--space-xs);font-weight:var(--font-weight-medium)}.summary-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:1}@media (max-width: 768px){.summary-card{padding:var(--space-lg)}.summary-icon{font-size:var(--font-size-3xl)}.summary-value{font-size:var(--font-size-2xl)}}.statistics-section{margin-bottom:var(--space-3xl)}.statistics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-lg);margin-bottom:var(--space-3xl)}.stat-card{background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--space-xl);text-align:center}.stat-card h3{margin:0 0 var(--space-sm) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.stat-number{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);margin:0;color:var(--color-text-primary)}.stat-number.pending{color:var(--color-warning)}.stat-number.confirmed{color:var(--color-success)}.stat-number.failed{color:var(--color-error)}.tx-hash:hover{color:var(--color-text-primary)}.type-badge{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.5px}.type-badge.deposit{background:var(--color-primary-light);color:var(--color-primary-dark)}.type-badge.withdrawal{background:var(--color-warning-light);color:var(--color-warning-dark)}.type-badge.swap{background:var(--color-success-light);color:var(--color-success)}.type-badge.fee{background:var(--color-primary-light);color:var(--color-primary-dark)}.type-badge.refund{background:var(--color-error-light);color:var(--color-error)}.direction-badge{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.5px}.direction-badge.incoming{background:var(--color-success-light);color:var(--color-success)}.direction-badge.outgoing{background:var(--color-warning-light);color:var(--color-warning-dark)}.asset-info{display:flex;flex-direction:column;gap:var(--space-xs)}.block-hash{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary);word-break:break-all}.error-message{color:var(--color-error);font-size:var(--font-size-sm)}.metadata-json{background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--radius-sm);padding:var(--space-md);font-size:var(--font-size-sm);font-family:var(--font-family-mono);color:var(--color-text-secondary);max-height:200px;overflow-y:auto;margin:0}.expanded-row{background-color:var(--color-bg-secondary)}.expanded-content{padding:var(--space-xl);background-color:var(--color-bg-primary);border:1px solid var(--color-border-secondary);border-radius:var(--radius-lg);margin:var(--space-md);max-height:400px;overflow-y:auto}.expanded-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-xl)}.detail-section{background-color:var(--color-bg-secondary);padding:var(--space-lg);border-radius:var(--radius-md);border:1px solid var(--color-border-secondary)}.detail-section.full-width{grid-column:1 / 5}.detail-section h4{margin:0 0 var(--space-lg) 0;color:var(--color-text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px}.detail-item{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border-secondary)}.detail-item:last-child{border-bottom:none;margin-bottom:0}.detail-item .label{font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);min-width:120px;margin-right:var(--space-lg)}.detail-item .address{font-family:var(--font-family-mono);font-size:var(--font-size-sm);word-break:break-all;color:var(--color-text-primary);background-color:var(--color-bg-tertiary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);max-width:200px}.detail-item .block-hash{font-family:var(--font-family-mono);font-size:var(--font-size-xs);word-break:break-all;color:var(--color-text-primary);background-color:var(--color-bg-tertiary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);max-width:300px}.detail-item .error-message{color:var(--color-error);font-style:italic;background-color:var(--color-error-light);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.detail-item .no-error{color:var(--color-success);font-style:italic;font-size:var(--font-size-sm)}.metadata-json{background-color:var(--color-bg-secondary);border:1px solid var(--color-border-secondary);border-radius:var(--radius-sm);padding:var(--space-md);font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-primary);white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto}.no-metadata{color:var(--color-text-secondary);font-style:italic;font-size:var(--font-size-sm)}.transactions-list{max-height:200px;overflow-y:auto}.transaction-item{background:var(--color-bg-secondary);border:1px solid var(--color-border-secondary);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-sm)}.transaction-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm)}.transaction-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-sm)}.tx-detail{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm)}.tx-detail .label{font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.tx-detail .value{color:var(--color-text-primary)}.clickable{color:var(--color-primary);text-decoration:none;cursor:pointer;transition:color var(--transition-normal)}.clickable:hover{color:var(--color-primary-hover);text-decoration:underline}.tx-hash.clickable{color:var(--color-primary);text-decoration:none}.tx-hash.clickable:hover{color:var(--color-primary-hover);text-decoration:underline}.tx-hash{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-primary);background-color:var(--color-bg-tertiary);padding:var(--space-sm);border-radius:var(--radius-sm)}.asset-info{display:flex;flex-direction:column;gap:2px}.asset-symbol{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.asset-chain{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.status-badge,.type-badge,.direction-badge{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-xl);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px}.status-badge.pending{background-color:var(--color-warning-light);color:var(--color-warning-dark)}.status-badge.confirmed{background-color:var(--color-success-light);color:var(--color-success-dark)}.status-badge.failed{background-color:var(--color-error-light);color:var(--color-error-dark)}.status-badge.expired{background-color:var(--color-bg-tertiary);color:var(--color-text-secondary)}.type-badge.deposit{background-color:var(--color-primary-light);color:var(--color-primary-dark)}.type-badge.withdrawal{background-color:var(--color-error-light);color:var(--color-error-dark)}.type-badge.swap{background-color:var(--color-success-light);color:var(--color-success-dark)}.type-badge.fee{background-color:var(--color-warning-light);color:var(--color-warning-dark)}.type-badge.refund{background-color:var(--color-bg-tertiary);color:var(--color-text-secondary)}.direction-badge.incoming{background-color:var(--color-success-light);color:var(--color-success-dark)}.direction-badge.outgoing{background-color:var(--color-error-light);color:var(--color-error-dark)}.wallet-actions{display:flex;gap:var(--space-sm);justify-content:center}.withdraw-button{background:var(--color-success);color:var(--color-text-inverse);border:none;padding:var(--space-md) var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:background-color var(--transition-normal);white-space:nowrap}.withdraw-button:hover{background:var(--color-success-hover)}.withdraw-button:disabled{opacity:.6;cursor:not-allowed}.asset-info{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:nowrap;min-width:0;flex-direction:row;justify-content:flex-end}.asset-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 1 auto;min-width:0}.asset-icon-small{width:20px;height:20px;border-radius:var(--radius-full);object-fit:cover;flex-shrink:0}.network-standard{background:var(--color-bg-tertiary);color:var(--color-text-secondary);padding:2px var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;flex-shrink:0;white-space:nowrap}.asset-info-table{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:nowrap;min-width:0;flex-direction:row;justify-content:flex-start}.actions-grid{display:flex;gap:var(--space-md);flex-wrap:wrap}.action-button{background:var(--color-primary);color:var(--color-text-inverse);border:none;padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;gap:var(--space-md);min-width:140px;justify-content:center}.action-button:hover{background:var(--color-primary-hover);transform:translateY(-1px)}.wallet-link{background:var(--color-primary);color:var(--color-text-inverse);border:none;padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;gap:var(--space-md)}.wallet-link:hover{background:var(--color-primary-hover);transform:translateY(-1px)}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-xl)}.detail-section{background:var(--color-bg-secondary);padding:var(--space-lg);border-radius:var(--radius-lg);border:1px solid var(--color-border-primary)}.detail-section h4{margin:0 0 var(--space-md) 0;color:var(--color-text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border-primary)}.detail-item:last-child{border-bottom:none}.detail-label{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.detail-value{color:var(--color-text-primary);font-size:var(--font-size-sm);text-align:right;word-break:break-all}.detail-value.address{font-family:var(--font-family-mono);font-size:var(--font-size-xs);background:var(--color-bg-tertiary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);max-width:200px}.wallet-details-expanded{background:var(--color-bg-secondary);border-radius:var(--radius-lg);padding:var(--space-lg);margin:var(--space-sm) 0}.wallet-details-content{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-2xl)}.wallet-info-section{display:flex;gap:var(--space-2xl);flex:1}.wallet-info-section .detail-section{background:var(--color-bg-primary);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--space-lg);flex:1}.wallet-info-section .detail-section h4{margin:0 0 var(--space-md) 0;color:var(--color-text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border-primary);padding-bottom:var(--space-sm)}.wallet-info-section .detail-item{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) 0;border-bottom:1px solid var(--color-bg-tertiary)}.wallet-info-section .detail-item:last-child{border-bottom:none}.wallet-info-section .detail-label{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.wallet-info-section .detail-value{color:var(--color-text-primary);font-size:var(--font-size-sm);text-align:right;word-break:break-all}.wallet-info-section .detail-value.address{font-family:var(--font-family-mono);font-size:var(--font-size-xs);background:var(--color-bg-tertiary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);max-width:200px}.network-standard-badge{background-color:var(--color-primary-light);color:var(--color-primary-dark);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:3px var(--space-md);border-radius:var(--radius-md);text-transform:uppercase;line-height:1;display:inline-block}.no-standard{color:var(--color-text-muted);font-style:italic;font-size:var(--font-size-sm)}.wallet-actions{display:flex;flex-direction:column;gap:var(--space-sm);flex-shrink:0;min-width:120px}.wallet-action-btn{background:var(--color-primary);color:var(--color-text-inverse);border:none;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal);display:flex;align-items:center;gap:var(--space-md);justify-content:center;width:100%}.wallet-action-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px)}.wallet-action-btn.deposit-btn{background:var(--color-success)}.wallet-action-btn.deposit-btn:hover{background:var(--color-success-hover)}.wallet-action-btn.withdraw-btn{background:var(--color-warning)}.wallet-action-btn.withdraw-btn:hover{background:var(--color-warning-hover)}@media (max-width: 768px){.wallet-details-content{flex-direction:column;align-items:stretch;gap:var(--space-lg)}.wallet-info-section{flex-direction:column;gap:var(--space-lg)}.wallet-actions{flex-direction:row;min-width:auto}.wallet-action-btn{flex:1}}.admin-layout{display:flex;min-height:100vh;background:var(--color-bg-secondary);font-family:var(--font-family-primary)}.admin-sidebar{width:165px;background:var(--color-bg-primary);border-right:1px solid var(--color-border-primary);display:flex;flex-direction:column;position:fixed;height:100vh;max-height:100vh;z-index:var(--z-dropdown);transform:translate(-100%);transition:transform var(--transition-slow)}.admin-sidebar.open{transform:translate(0)}.sidebar-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-bg-overlay);z-index:calc(var(--z-dropdown) - 1)}.sidebar-header{padding:var(--space-2xl);border-bottom:1px solid var(--color-border-primary);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.sidebar-header h2{margin:0;color:var(--color-text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold)}.sidebar-close{background:none;border:none;font-size:var(--font-size-xl);color:var(--color-text-secondary);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-sm);transition:all var(--transition-normal)}.sidebar-close:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.sidebar-nav{flex:1;padding:var(--space-lg) 0;overflow-y:auto;min-height:0}.nav-item{display:flex;align-items:center;padding:var(--space-md) var(--space-2xl);color:var(--color-text-secondary);text-decoration:none;transition:all var(--transition-normal);margin:var(--space-xs) 0}.nav-item:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.nav-item.active{background:var(--color-primary-light);color:var(--color-primary);border-right:3px solid var(--color-primary)}.nav-icon{font-size:var(--font-size-xl);margin-right:var(--space-md);width:20px;text-align:center}.nav-label{font-weight:var(--font-weight-medium);font-size:var(--font-size-base)}.sidebar-footer{padding:var(--space-2xl);border-top:1px solid var(--color-border-primary);flex-shrink:0}.user-info{display:flex;align-items:center;margin-bottom:var(--space-lg)}.user-avatar{width:40px;height:40px;background:var(--color-primary);color:var(--color-text-inverse);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);margin-right:var(--space-md)}.user-details{flex:1}.user-email{font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-base);margin-bottom:2px}.user-role{color:var(--color-text-secondary);font-size:var(--font-size-sm);text-transform:capitalize}.logout-button{width:100%;background:var(--color-error);color:var(--color-text-inverse);border:none;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-normal)}.logout-button:hover{background:var(--color-error-hover)}.admin-main{flex:1;margin-left:0;display:flex;flex-direction:column}.admin-header{background:var(--color-bg-primary);border-bottom:1px solid var(--color-border-primary);display:flex;align-items:center;gap:var(--space-lg)}.sidebar-toggle{background:none;border:none;font-size:var(--font-size-2xl);color:var(--color-text-secondary);cursor:pointer;padding:var(--space-lg);border-radius:var(--radius-md);transition:all var(--transition-normal)}.sidebar-toggle:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}.header-content h1{margin:0;color:var(--color-text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold)}.admin-content{flex:1;display:flex;flex-direction:column;min-height:0;min-width:0;padding:var(--space-lg)}@media (min-width: 768px){.admin-sidebar{position:static;transform:none}.sidebar-overlay,.sidebar-close,.sidebar-toggle{display:none}}@media (max-width: 767px){.admin-sidebar{width:55vw;max-width:320px;left:0;right:0;border-radius:0;padding:0;min-width:0;height:100vh}.sidebar-header,.sidebar-footer{padding:var(--space-lg);flex-shrink:0}.sidebar-nav{padding:var(--space-sm) 0;overflow-y:auto;min-height:0;flex:1}.nav-item{padding:var(--space-md) var(--space-lg);margin:0}.user-info{margin-bottom:var(--space-md)}.logout-button{padding:var(--space-md) var(--space-lg);font-size:var(--font-size-base)}}@media (max-width: 432px){.sidebar-footer{margin-bottom:env(safe-area-inset-bottom,var(--space-2xl))}}.passkey-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.passkey-modal{background:#fff;border-radius:12px;padding:24px;max-width:480px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.passkey-modal-header{text-align:center;margin-bottom:24px}.passkey-modal-header h2{margin:0 0 8px;color:var(--color-text-primary);font-size:24px;font-weight:600}.passkey-modal-header p{margin:0;color:var(--color-text-secondary);font-size:14px}.passkey-modal-content{margin-bottom:24px}.passkey-loading,.passkey-unsupported,.passkey-supported{text-align:center}.passkey-loading p{color:var(--color-text-secondary);font-size:14px}.passkey-unsupported p{color:var(--color-error);font-size:14px;margin-bottom:16px}.passkey-benefits{margin-bottom:24px;text-align:left}.passkey-benefits h3{margin:0 0 12px;color:var(--color-text-primary);font-size:16px;font-weight:600}.passkey-benefits ul{margin:0;padding-left:20px;list-style:none}.passkey-benefits li{margin-bottom:8px;color:var(--color-text-primary);font-size:14px}.passkey-error{background-color:var(--color-error-light);border:1px solid var(--color-error-light);border-radius:8px;padding:12px;margin-bottom:16px}.passkey-error p{margin:0;color:var(--color-error);font-size:14px}.passkey-actions{display:flex;flex-direction:column;gap:12px}.passkey-button{padding:12px 24px;border-radius:8px;border:none;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;width:100%}.passkey-button:disabled{opacity:.6;cursor:not-allowed}.passkey-button.primary{background-color:var(--color-primary);color:#fff}.passkey-button.primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.passkey-button.secondary{background-color:var(--color-bg-tertiary);color:var(--color-text-primary)}.passkey-button.secondary:hover:not(:disabled){background-color:var(--color-border-primary)}.passkey-modal .passkey-supported p{color:var(--color-success-hover);font-size:16px;font-weight:500;margin-bottom:16px}.passkey-modal .passkey-supported .passkey-button.primary{background-color:var(--color-success-hover)}.passkey-modal .passkey-supported .passkey-button.primary:hover{background-color:var(--color-success-dark)}@media (max-width: 640px){.passkey-modal{margin:20px;max-width:none}.passkey-modal-header,.passkey-modal-content{padding:24px}.passkey-modal-header h2{font-size:20px}}.payment-session-modal{background:var(--color-bg-primary);border-radius:var(--radius-2xl);padding:var(--space-2xl);width:500px;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-2xl);position:relative;font-family:var(--font-family-primary)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2xl);padding-bottom:var(--space-lg);border-bottom:1px solid var(--color-border-primary)}.modal-header h2{margin:0;color:var(--color-text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);font-family:var(--font-family-primary)}.close-button{background:none;border:none;font-size:var(--font-size-2xl);color:var(--color-text-secondary);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-sm);transition:color var(--transition-normal)}.loading{display:flex;align-items:center;justify-content:center;height:200px;color:var(--color-text-secondary);font-size:var(--font-size-lg)}.session-card{background:var(--color-bg-secondary);border-radius:var(--radius-xl);padding:var(--space-xl);margin-bottom:var(--space-xl);border:1px solid var(--color-border-primary)}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xs)}.merchant-info{display:flex;align-items:center;gap:12px}.merchant-logo{width:32px;height:32px;border-radius:var(--radius-lg);object-fit:cover}.merchant-name{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);font-size:var(--font-size-lg)}.amount-section{text-align:center}.amount-section h1{font-size:36px;font-weight:700;color:var(--color-text-primary);margin:0 0 8px}.amount-section p{color:var(--color-text-secondary);margin:0;font-size:var(--font-size-lg)}.step-card{background:var(--color-bg-secondary);border-radius:var(--radius-xl);padding:var(--space-xl);border:1px solid var(--color-border-primary)}.step-card h2{margin:0 0 20px;color:var(--color-text-primary);font-size:18px;font-weight:var(--font-weight-semibold);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.asset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;align-items:stretch}.asset-info{flex:1;position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.asset-info h3{margin:0;font-size:13px;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:1.2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.asset-info p{margin:0;font-size:11px;color:var(--color-text-secondary);line-height:1.2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.network-card{display:flex;align-items:center;padding:var(--space-lg);background:#fff;border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);cursor:pointer;transition:all .2s ease}.network-card img{width:28px;height:28px;margin-right:12px;border-radius:var(--radius-lg);flex-shrink:0}.network-info h3{margin:0;font-size:13px;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);line-height:1.2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.network-info p{margin:0;font-size:13px;color:var(--color-text-secondary);line-height:1.2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.network-standard{background-color:var(--color-primary-light);color:var(--color-primary-dark);font-size:9px;font-weight:var(--font-weight-semibold);padding:2px 5px;border-radius:var(--radius-md);text-transform:uppercase;line-height:1}.reset-btn{background:transparent;border:none;color:var(--color-text-secondary);margin-top:-16px;padding:8px 0;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.qr-section{display:flex;justify-content:center;margin-bottom:var(--space-xl)}.qr-code{width:160px;height:160px;border:1px solid var(--color-border-primary);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary)}.qr-code img{width:100%;height:100%;object-fit:contain;border-radius:var(--radius-xl)}.qr-placeholder{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.address-section{margin-bottom:var(--space-xl)}.address-section label{display:block;margin-bottom:8px;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.address-input{display:flex;gap:8px}.address-input input{flex:1;padding:10px;border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-family:SF Mono,Monaco,Cascadia Code,monospace;background:var(--color-bg-secondary);color:var(--color-text-primary)}.address-input input:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px #3b82f61a}.copy-btn{background:var(--color-primary);color:#fff;border:none;padding:10px 14px;border-radius:var(--radius-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;white-space:nowrap}.copy-btn:hover{background:var(--color-primary-hover)}.payment-info{background:var(--color-bg-secondary);border-radius:var(--radius-xl);padding:var(--space-xs);margin-bottom:16px}.info-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.info-row:last-child{margin-bottom:0}.info-row span:first-child{color:var(--color-text-secondary);font-size:13px}.info-row span:last-child{color:var(--color-text-primary);font-weight:var(--font-weight-medium);font-size:13px}.amount-display{display:flex;align-items:center;gap:6px;font-weight:var(--font-weight-medium);font-size:13px;color:var(--color-text-primary)}.info-asset-icon{width:16px;height:16px;border-radius:var(--radius-sm)}.overpayment{color:var(--color-success)!important;font-weight:var(--font-weight-semibold)}.overpayment-row{background:var(--color-success-light);border-radius:var(--radius-lg);padding:6px 10px;margin:4px 0;border-left:3px solid var(--color-success)}.countdown{font-family:SF Mono,Monaco,Cascadia Code,monospace;font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-bg-secondary);padding:4px 10px;border-radius:var(--radius-lg);border:1px solid var(--color-border-primary);transition:all .3s ease}.countdown.urgent{color:var(--color-error);background:var(--color-error-light);border-color:var(--color-error-light);animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.success-card{background:var(--color-success-light);border-radius:var(--radius-xl);padding:32px 20px;text-align:center;border:1px solid #bbf7d0}.success-icon{width:48px;height:48px;background:#10b981;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-2xl);margin:0 auto 16px}.success-card h2{margin:0 0 8px;color:var(--color-text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold)}.success-card p{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-base)}.expired-card{background:#fff1f2;border-radius:var(--radius-xl);padding:24px 20px;text-align:center;border:1px solid #fecaca}.expired-icon{font-size:36px;color:#f43f5e;margin-bottom:12px}.expired-card h2{margin:0 0 8px;color:var(--color-text-primary);font-size:18px;font-weight:var(--font-weight-semibold)}.expired-card p{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-base)}.meta-mask-section{margin-top:8px;padding-top:12px;border-top:1px solid #e2e8f0}.meta-mask-section h3{margin:0 0 8px;color:var(--color-text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);text-align:center}.meta-mask-section p{margin:0 0 16px;color:var(--color-text-secondary);font-size:13px;text-align:center}.metamask-not-installed{display:flex;align-items:center;gap:16px;padding:16px;background:linear-gradient(135deg,var(--color-bg-secondary) 0%,var(--color-border-primary) 100%);border:2px dashed var(--color-border-secondary);border-radius:12px;margin:8px 0}.metamask-not-installed .metamask-icon{font-size:32px;flex-shrink:0}.metamask-not-installed .metamask-content{flex:1}.metamask-not-installed h3{margin:0 0 8px;color:var(--color-text-primary);font-size:18px;font-weight:600}.metamask-not-installed p{margin:0 0 16px;color:var(--color-text-secondary);font-size:14px}.install-metamask-btn{display:block;padding:8px 16px;text-align:center;background:var(--color-warning);color:#fff;text-decoration:none;border-radius:8px;font-size:14px;font-weight:500;transition:background-color .2s}.install-metamask-btn:hover{background:var(--color-warning-hover)}.metamask-connect-btn{display:flex;align-items:center;gap:12px;width:100%;padding:16px 20px;background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-hover) 100%);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #f59e0b4d}.metamask-connect-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #f59e0b66}.metamask-connect-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.metamask-connect-btn .metamask-icon{font-size:24px;flex-shrink:0}.metamask-connected{background:#fff;border:2px solid var(--color-border-primary);border-radius:12px;padding:20px;margin:16px 0;box-shadow:0 4px 12px #0000000d}.metamask-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--color-border-primary)}.metamask-header .metamask-icon{font-size:24px;flex-shrink:0}.metamask-info{flex:1;display:flex;flex-direction:column;gap:4px}.account-info,.balance-info{display:flex;align-items:center;gap:8px;font-size:14px}.account-label,.balance-label{color:var(--color-text-secondary);font-weight:500}.account-address{color:var(--color-text-primary);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-weight:600}.balance-amount{color:var(--color-success-hover);font-weight:600}.disconnect-btn{background:var(--color-error);color:#fff;border:none;border-radius:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:12px;transition:background-color .2s}.disconnect-btn:hover{background:var(--color-error-hover)}.send-transaction-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:16px 20px;background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-hover) 100%);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #10b9814d;position:relative}.send-transaction-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #10b98166}.send-transaction-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.send-transaction-btn .transaction-fee{font-size:12px;opacity:.8;font-weight:400}.loading-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite;flex-shrink:0}.insufficient-balance{margin-top:12px;padding:12px;background:var(--color-error-light);border:1px solid var(--color-error-light);border-radius:8px;color:var(--color-error);font-size:14px;text-align:center}.transaction-hash{margin-top:16px;padding:16px;background:var(--color-primary-light);border:1px solid var(--color-primary-light);border-radius:8px}.hash-label{font-size:12px;color:var(--color-primary-dark);font-weight:600;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.hash-value{display:flex;align-items:center;gap:8px}.hash-link{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;color:var(--color-primary-dark);text-decoration:none;background:#fff;padding:6px 10px;border-radius:6px;border:1px solid var(--color-primary-light);flex:1;word-break:break-all}.hash-link:hover{background:var(--color-primary-light);text-decoration:underline}.copy-hash-btn{background:var(--color-primary-dark);color:#fff;border:none;border-radius:6px;padding:6px 8px;cursor:pointer;font-size:12px;transition:background-color .2s;flex-shrink:0}.copy-hash-btn:hover{background:var(--color-primary-dark)}@media (max-width: 480px){.metamask-header{flex-direction:column;align-items:flex-start;gap:8px}.metamask-info{width:100%}.disconnect-btn{align-self:flex-end}.account-info,.balance-info{justify-content:space-between}}.withdraw-modal{background:#fff;border-radius:12px;padding:24px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:var(--color-text-primary);font-weight:500;font-size:14px}.form-group input,.form-group select{width:100%;padding:12px 16px;border:2px solid var(--color-border-primary);border-radius:8px;font-size:14px;transition:border-color .2s;box-sizing:border-box}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--color-border-focus)}.wallet-info{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:8px;padding:16px;margin-bottom:20px}.wallet-details{display:flex;flex-direction:column;gap:12px}.asset-info{display:flex;align-items:center;gap:8px}.asset-icon{width:24px;height:24px;border-radius:50%}.asset-symbol{font-weight:600;color:var(--color-text-primary);font-size:16px}.balance-info{display:flex;align-items:center;gap:8px}.balance-label{color:var(--color-text-secondary);font-size:14px}.balance-amount{font-weight:600;color:var(--color-success-hover);font-size:16px}.address-info{display:flex;align-items:center;gap:8px}.address-label{color:var(--color-text-secondary);font-size:14px}.address-value{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;color:var(--color-text-primary);background:#f1f5f9;padding:4px 8px;border-radius:4px}.amount-input-group{display:flex;gap:8px}.amount-input-group input{flex:1}.max-button{padding:12px 16px;background:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap}.max-button:hover:not(:disabled){background:var(--color-primary-hover)}.max-button:disabled{background:var(--color-text-muted);cursor:not-allowed}.error-message{background:var(--color-error-light);border:1px solid var(--color-error-light);color:var(--color-error);padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid var(--color-border-primary)}.secondary-button{padding:12px 24px;background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-primary);border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.secondary-button:hover{background:var(--color-border-primary);border-color:var(--color-text-muted)}.primary-button{padding:12px 24px;background:var(--color-success);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.primary-button:hover:not(:disabled){background:var(--color-success-hover)}.primary-button:disabled{background:var(--color-text-muted);cursor:not-allowed}.success-content{text-align:center;padding:20px 0}.success-icon{width:60px;height:60px;background:var(--color-success);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:700;margin:0 auto 20px}.success-message{font-size:18px;color:var(--color-success-hover);margin-bottom:20px;font-weight:600}.tx-info{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:8px;padding:16px;margin-top:20px}.tx-info label{display:block;color:var(--color-text-secondary);font-size:14px;margin-bottom:8px;font-weight:500}.gas-fee-info{background:var(--color-bg-secondary);border:1px solid var(--color-border-primary);border-radius:8px;padding:16px;margin-bottom:20px}.gas-fee-label{color:var(--color-text-secondary);font-size:14px;margin-bottom:8px;font-weight:500}.gas-fee-details{display:flex;flex-direction:column;gap:4px}.gas-fee-crypto{font-weight:600;color:var(--color-text-primary);font-size:16px}.gas-fee-usd{color:var(--color-text-secondary);font-size:14px}.gas-fee-loading{color:var(--color-text-secondary);font-size:14px;font-style:italic;margin-bottom:20px}.create-merchant-wallet-modal{background:#fff;border-radius:16px;padding:24px;width:500px;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.close-button{background:none;border:none;font-size:24px;color:var(--color-text-secondary);cursor:pointer;padding:4px;border-radius:4px;transition:color .2s}.close-button:hover{color:var(--color-text-primary)}.loading{display:flex;align-items:center;justify-content:center;height:200px;color:var(--color-text-secondary);font-size:16px}.asset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;align-items:stretch}.asset-info{flex:1;position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.asset-info h3{margin:0;font-size:14px;font-weight:600;color:var(--color-text-primary);line-height:1.2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.asset-info p{margin:0;font-size:12px;color:var(--color-text-secondary);line-height:1.2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.network-grid{display:flex;flex-direction:column;gap:12px}.network-card{display:flex;align-items:center;padding:20px;background:#fff;border:1px solid var(--color-border-primary);border-radius:12px;cursor:pointer;transition:all .2s ease}.network-card:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary)}.network-card img{width:32px;height:32px;margin-right:16px;border-radius:8px;flex-shrink:0}.network-info{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px}.network-info h3{margin:0;font-size:14px;font-weight:600;color:var(--color-text-primary);line-height:1.2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.network-info p{margin:0;font-size:14px;color:var(--color-text-secondary);line-height:1.2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.network-info-main{display:flex;align-items:center;gap:8px}.network-standard{background-color:var(--color-primary-light);color:var(--color-primary-dark);font-size:10px;font-weight:600;padding:3px 6px;border-radius:6px;text-transform:uppercase;line-height:1}.deposit-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.reset-btn{background:transparent;border:none;color:var(--color-text-secondary);margin-top:-16px;padding:8px 0;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.reset-btn:hover{color:var(--color-text-primary)}.reset-btn:hover svg{transform:translate(-2px)}.error-message{background:var(--color-error-light);border:1px solid var(--color-error-light);color:var(--color-error);padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.submitting-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;border-radius:16px;z-index:10}.submitting-content{display:flex;flex-direction:column;align-items:center;gap:16px}.spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top:3px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.submitting-content p{margin:0;color:var(--color-text-secondary);font-size:14px;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}
