@import url('https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;600;700&family=DM+Mono:wght@400;500&display=swap');

:root {
    --nexus-navy:   #0A1628;
    --nexus-dark:   #111827;
    --nexus-card:   #1C2B45;
    --nexus-blue:   #1A6FFF;
    --nexus-cyan:   #00D4FF;
    --nexus-gold:   #F5A623;
    --nexus-green:  #00C896;
    --nexus-red:    #FF4D6D;
    --nexus-muted:  #8B9DC3;
    --nexus-border: rgba(255,255,255,0.08);
    --nexus-glass:  rgba(255,255,255,0.04);
    --nexus-text:   #E8EDF5;
    --nexus-font:   'Sora', sans-serif;
    --nexus-mono:   'DM Mono', monospace;
    --nexus-radius: 16px;
    --nexus-shadow: 0 20px 60px rgba(0,0,0,0.4);
}

.nexus-wrap, .nexus-wrap * { box-sizing: border-box; margin: 0; padding: 0; font-family: var(--nexus-font); }
/* Tell browser to render native controls (like <select> dropdowns) in dark mode */
.nexus-wrap { color-scheme: dark; }
.nexus-wrap { background: var(--nexus-navy); min-height: 100vh; color: var(--nexus-text); }

/* SVG Icons */
.nexus-icon { display: inline-block; vertical-align: middle; flex-shrink: 0; }

/* =============================================
   AUTH
   ============================================= */
.nexus-auth-container { display: grid; grid-template-columns: 1fr 1fr; min-height: 100vh; }

.nexus-auth-brand {
    background: linear-gradient(135deg,#0A1628 0%,#0D2145 50%,#0A1628 100%);
    padding: 60px 50px; display: flex; flex-direction: column; justify-content: center;
    position: relative; overflow: hidden;
}
.nexus-auth-brand::before { content:''; position:absolute; width:500px; height:500px; background:radial-gradient(circle,rgba(26,111,255,.15) 0%,transparent 70%); top:-100px; left:-100px; border-radius:50%; }
.nexus-auth-brand::after  { content:''; position:absolute; width:300px; height:300px; background:radial-gradient(circle,rgba(0,212,255,.1) 0%,transparent 70%); bottom:50px; right:-50px; border-radius:50%; }

.nexus-logo { display:flex; align-items:center; gap:12px; margin-bottom:48px; }
.nexus-logo-icon { width:46px; height:46px; background:linear-gradient(135deg,var(--nexus-blue),var(--nexus-cyan)); border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:22px; font-weight:700; color:#fff; box-shadow:0 8px 24px rgba(26,111,255,.4); }
.nexus-logo-text { font-size:22px; font-weight:700; letter-spacing:-.5px; color:#fff; }

.nexus-auth-title { font-size:40px; font-weight:700; line-height:1.15; color:#fff; letter-spacing:-1px; margin-bottom:14px; position:relative; z-index:1; }
.nexus-auth-subtitle { font-size:16px; color:var(--nexus-muted); margin-bottom:48px; position:relative; z-index:1; }

.nexus-auth-features { display:flex; flex-direction:column; gap:14px; position:relative; z-index:1; }
.nexus-feature-item { display:flex; align-items:center; gap:12px; font-size:14px; color:var(--nexus-muted); background:var(--nexus-glass); border:1px solid var(--nexus-border); padding:12px 16px; border-radius:10px; }
.nexus-feature-item .nf-icon { color:var(--nexus-blue); }

.nexus-auth-form-wrap { background:var(--nexus-dark); padding:60px 50px; display:flex; flex-direction:column; justify-content:center; overflow-y:auto; }
.nexus-auth-form-wrap h2 { font-size:28px; font-weight:700; color:#fff; margin-bottom:6px; letter-spacing:-.5px; }
.nexus-form-sub { font-size:14px; color:var(--nexus-muted); margin-bottom:32px; }

/* Alert */
.nexus-alert { padding:12px 16px; border-radius:10px; font-size:14px; margin-bottom:20px; font-weight:500; }
.nexus-alert.error   { background:rgba(255,77,109,.12); border:1px solid rgba(255,77,109,.3); color:var(--nexus-red); }
.nexus-alert.success { background:rgba(0,200,150,.12); border:1px solid rgba(0,200,150,.3); color:var(--nexus-green); }

/* Fields */
.nexus-field { margin-bottom:18px; }
.nexus-field label { display:block; font-size:13px; font-weight:500; color:var(--nexus-muted); margin-bottom:7px; letter-spacing:.3px; }
.nexus-field input[type="text"],
.nexus-field input[type="email"],
.nexus-field input[type="password"],
.nexus-field input[type="tel"],
.nexus-field input[type="number"],
.nexus-field select,
.nexus-field textarea {
    width:100%; background:var(--nexus-glass); border:1px solid var(--nexus-border); border-radius:10px;
    padding:13px 16px; font-size:14px; color:var(--nexus-text); outline:none;
    transition:border-color .2s,box-shadow .2s; font-family:var(--nexus-font);
}
.nexus-field input:focus,.nexus-field select:focus { border-color:var(--nexus-blue); box-shadow:0 0 0 3px rgba(26,111,255,.15); }
/* Fix for Destination Bank Dropdown Visibility */
.nexus-field select {
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    background-color: #111827 !important;
    color: #E8EDF5 !important;
    color-scheme: dark;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238B9DC3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    padding-right: 40px;
}
.nexus-field select option {
    background-color: #111827;
    color: #E8EDF5;
}

/* Make Amount Field Horizontally Longer & Larger */
.nexus-field input[name="amount"] {
    width: 100% !important;
    display: block;
    padding: 16px;
    font-size: 1.2rem;
}

/* Styling for the Currency Preview */
.nexus-amount-preview {
    margin-top: 10px;
    font-size: 15px;
    color: var(--nexus-cyan);
    font-family: var(--nexus-mono);
    font-weight: 600;
    letter-spacing: 0.5px;
}
.nexus-input-wrap { position:relative; }
.nexus-input-wrap input { padding-right:46px; }
.nexus-toggle-pw {
    position:absolute; right:12px; top:50%; transform:translateY(-50%);
    background:none; border:none; cursor:pointer; color:var(--nexus-muted); padding:4px;
    display:flex; align-items:center; justify-content:center;
}
.nexus-toggle-pw:hover { color:var(--nexus-text); }
.nexus-form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.nexus-checkbox label { display:flex; align-items:center; gap:8px; font-size:13px; color:var(--nexus-muted); cursor:pointer; }
.nexus-checkbox a { color:var(--nexus-blue); text-decoration:none; }
.nexus-remember-row { display:flex; align-items:center; justify-content:space-between; }
.nexus-remember-row label { display:flex; align-items:center; gap:8px; font-size:13px; cursor:pointer; }
.nexus-forgot { font-size:13px; color:var(--nexus-blue); text-decoration:none; }

/* Buttons */
.nexus-btn-primary {
    width:100%; padding:14px; background:linear-gradient(135deg,var(--nexus-blue),#0D5FDB);
    color:#fff; border:none; border-radius:10px; font-size:15px; font-weight:600; cursor:pointer;
    margin-top:8px; transition:opacity .2s,transform .2s,box-shadow .2s;
    box-shadow:0 8px 24px rgba(26,111,255,.35); font-family:var(--nexus-font);
    display:flex; align-items:center; justify-content:center;
}
.nexus-btn-primary:hover { opacity:.92; transform:translateY(-1px); box-shadow:0 12px 32px rgba(26,111,255,.45); }
.nexus-btn-primary:disabled { opacity:.5; cursor:not-allowed; transform:none; }

.nexus-btn-secondary { padding:10px 20px; background:var(--nexus-glass); color:var(--nexus-text); border:1px solid var(--nexus-border); border-radius:10px; font-size:14px; font-weight:500; cursor:pointer; transition:background .2s; font-family:var(--nexus-font); display:inline-flex; align-items:center; gap:8px; }
.nexus-btn-secondary:hover { background:rgba(255,255,255,.08); }

.nexus-btn-danger { padding:10px 18px; background:rgba(255,77,109,.1); color:var(--nexus-red); border:1px solid rgba(255,77,109,.25); border-radius:10px; font-size:14px; font-weight:500; cursor:pointer; transition:background .2s; font-family:var(--nexus-font); display:inline-flex; align-items:center; gap:8px; }
.nexus-btn-danger:hover { background:rgba(255,77,109,.18); }

.nexus-btn-logout { width:100%; padding:11px 16px; background:rgba(255,77,109,.08); color:var(--nexus-red); border:1px solid rgba(255,77,109,.2); border-radius:10px; font-size:14px; font-weight:500; cursor:pointer; transition:background .2s; font-family:var(--nexus-font); display:flex; align-items:center; gap:8px; }
.nexus-btn-logout:hover { background:rgba(255,77,109,.16); }

.nexus-switch-auth { text-align:center; margin-top:24px; font-size:14px; color:var(--nexus-muted); }
.nexus-switch-auth a { color:var(--nexus-blue); text-decoration:none; font-weight:500; }

/* =============================================
   DASHBOARD LAYOUT
   ============================================= */
.nexus-app { display:grid; grid-template-columns:260px 1fr; min-height:100vh; background:var(--nexus-navy); }

.nexus-sidebar { background:var(--nexus-dark); border-right:1px solid var(--nexus-border); display:flex; flex-direction:column; padding:28px 0; position:sticky; top:0; height:100vh; overflow-y:auto; }

.nexus-nav { flex:1; padding:0 12px; }
.nexus-nav-item { display:flex; align-items:center; gap:12px; padding:12px 14px; border-radius:10px; font-size:14px; font-weight:500; color:var(--nexus-muted); cursor:pointer; transition:all .2s; margin-bottom:4px; text-decoration:none; border:none; background:none; width:100%; text-align:left; }
.nexus-nav-item:hover { background:var(--nexus-glass); color:var(--nexus-text); }
.nexus-nav-item.active { background:rgba(26,111,255,.15); color:var(--nexus-blue); border:1px solid rgba(26,111,255,.2); }
.nexus-nav-item .nexus-icon { flex-shrink:0; }

.nexus-sidebar-footer { padding:16px 12px 0; border-top:1px solid var(--nexus-border); }

.nexus-avatar-sm { width:32px; height:32px; background:linear-gradient(135deg,var(--nexus-blue),var(--nexus-cyan)); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:700; color:#fff; flex-shrink:0; overflow:hidden; }

.nexus-main { padding:32px; overflow-y:auto; }

.nexus-page-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:28px; }
.nexus-page-header h1 { font-size:24px; font-weight:700; color:#fff; letter-spacing:-.5px; }
.nexus-page-header p { font-size:14px; color:var(--nexus-muted); margin-top:4px; }

.nexus-user-chip { display:flex; align-items:center; gap:10px; background:var(--nexus-glass); border:1px solid var(--nexus-border); border-radius:40px; padding:6px 14px 6px 6px; }
.nexus-avatar { width:34px; height:34px; background:linear-gradient(135deg,var(--nexus-blue),var(--nexus-cyan)); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:700; color:#fff; overflow:hidden; }
.nexus-user-chip > span { font-size:14px; font-weight:500; }

/* Grid */
.nexus-grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-bottom:24px; }
.nexus-grid-2 { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; margin-bottom:24px; }

/* Stat Cards */
.nexus-stat-card { background:var(--nexus-card); border:1px solid var(--nexus-border); border-radius:var(--nexus-radius); padding:22px 24px; transition:transform .2s,box-shadow .2s; }
.nexus-stat-card:hover { transform:translateY(-2px); box-shadow:var(--nexus-shadow); }
.nexus-stat-icon-wrap { width:40px; height:40px; border-radius:10px; display:flex; align-items:center; justify-content:center; margin-bottom:14px; }
.nexus-stat-icon-wrap.blue  { background:rgba(26,111,255,.15); color:var(--nexus-blue); }
.nexus-stat-icon-wrap.green { background:rgba(0,200,150,.15); color:var(--nexus-green); }
.nexus-stat-icon-wrap.gold  { background:rgba(245,166,35,.15); color:var(--nexus-gold); }
.nexus-stat-label { font-size:12px; font-weight:500; color:var(--nexus-muted); letter-spacing:.8px; text-transform:uppercase; margin-bottom:10px; }
.nexus-stat-value { font-size:28px; font-weight:700; color:#fff; font-family:var(--nexus-mono); letter-spacing:-1px; margin-bottom:6px; }
.nexus-stat-sub { font-size:12px; color:var(--nexus-muted); }

/* Quick Actions */
.nexus-actions-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:24px; }
.nexus-action-btn { background:var(--nexus-glass); border:1px solid var(--nexus-border); border-radius:12px; padding:18px 12px; text-align:center; cursor:pointer; transition:all .2s; text-decoration:none; color:var(--nexus-muted); display:flex; flex-direction:column; align-items:center; gap:10px; }
.nexus-action-btn:hover { background:rgba(26,111,255,.1); border-color:rgba(26,111,255,.25); color:var(--nexus-blue); transform:translateY(-2px); }
.nexus-action-btn span { font-size:12px; font-weight:500; }

/* Cards */
.nexus-card { background:var(--nexus-card); border:1px solid var(--nexus-border); border-radius:var(--nexus-radius); padding:24px; }
.nexus-form-card { background:var(--nexus-card); border:1px solid var(--nexus-border); border-radius:var(--nexus-radius); padding:28px; }
.nexus-form-card h3 { font-size:18px; font-weight:600; color:#fff; margin-bottom:6px; }
.nexus-form-card p { font-size:13px; color:var(--nexus-muted); margin-bottom:24px; }

/* Bank Card */
.nexus-bank-card { background:linear-gradient(135deg,#1A2F5A,#0D1F3C); border-radius:18px; padding:28px; position:relative; overflow:hidden; border:1px solid rgba(255,255,255,.1); box-shadow:0 20px 60px rgba(0,0,0,.5); }
.nexus-bank-card::before { content:''; position:absolute; width:250px; height:250px; background:radial-gradient(circle,rgba(26,111,255,.3),transparent 70%); top:-80px; right:-60px; border-radius:50%; }
.nexus-card-chip { width:42px; height:32px; background:linear-gradient(135deg,#D4A843,#F0C060); border-radius:6px; margin-bottom:28px; position:relative; z-index:1; }
.nexus-card-number { font-family:var(--nexus-mono); font-size:18px; letter-spacing:3px; color:rgba(255,255,255,.9); margin-bottom:20px; position:relative; z-index:1; }
.nexus-card-bottom { display:flex; justify-content:space-between; align-items:flex-end; position:relative; z-index:1; }
.nexus-card-label { font-size:10px; text-transform:uppercase; letter-spacing:1px; color:rgba(255,255,255,.5); margin-bottom:4px; }
.nexus-card-val { font-size:14px; font-weight:600; color:rgba(255,255,255,.9); font-family:var(--nexus-mono); }
.nexus-card-brand { font-size:22px; font-weight:800; color:rgba(255,255,255,.8); letter-spacing:-1px; }

/* Badges */
.nexus-frozen-badge { display:inline-flex; align-items:center; gap:6px; background:rgba(255,77,109,.12); border:1px solid rgba(255,77,109,.25); color:var(--nexus-red); padding:5px 12px; border-radius:20px; font-size:12px; font-weight:600; }
.nexus-active-badge { display:inline-flex; align-items:center; gap:6px; background:rgba(0,200,150,.1); border:1px solid rgba(0,200,150,.25); color:var(--nexus-green); padding:5px 12px; border-radius:20px; font-size:12px; font-weight:600; }

/* Section Title */
.nexus-section-title { font-size:15px; font-weight:600; color:#fff; margin-bottom:16px; display:flex; align-items:center; justify-content:space-between; }
.nexus-section-title a { font-size:13px; font-weight:400; color:var(--nexus-blue); text-decoration:none; }

/* =============================================
   TRANSACTION DOT INDICATORS
   ============================================= */
.nexus-txn-dot {
    width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0;
    display: inline-block;
}
.nexus-txn-dot.credit { background: var(--nexus-green); box-shadow: 0 0 6px rgba(0,200,150,.5); }
.nexus-txn-dot.debit  { background: var(--nexus-red);   box-shadow: 0 0 6px rgba(255,77,109,.5); }

.nexus-dot-sm { width:8px; height:8px; border-radius:50%; display:inline-block; flex-shrink:0; }
.nexus-dot-sm.credit { background:var(--nexus-green); }
.nexus-dot-sm.debit  { background:var(--nexus-red); }

/* Txn List */
.nexus-txn-list { display:flex; flex-direction:column; gap:2px; }
.nexus-txn-row { display:flex; align-items:center; gap:14px; padding:13px 4px; border-radius:10px; transition:background .15s; }
.nexus-txn-row:hover { background:var(--nexus-glass); }
.nexus-txn-info { flex:1; }
.nexus-txn-desc { font-size:14px; font-weight:500; color:var(--nexus-text); margin-bottom:2px; }
.nexus-txn-date { font-size:12px; color:var(--nexus-muted); }
.nexus-txn-amount { font-family:var(--nexus-mono); font-size:14px; font-weight:600; }
.nexus-txn-amount.credit { color:var(--nexus-green); }
.nexus-txn-amount.debit  { color:var(--nexus-red); }

/* Filter Tabs */
.nexus-filter-tab { display:inline-flex; align-items:center; gap:8px; padding:9px 18px; border-radius:10px; font-size:13px; font-weight:500; text-decoration:none; color:var(--nexus-muted); background:var(--nexus-glass); border:1px solid var(--nexus-border); transition:all .2s; }
.nexus-filter-tab:hover { color:var(--nexus-text); background:rgba(255,255,255,.06); }
.nexus-filter-tab.active { background:rgba(26,111,255,.15); color:var(--nexus-blue); border-color:rgba(26,111,255,.3); }

/* Table */
.nexus-table { width:100%; border-collapse:collapse; }
.nexus-table thead tr { border-bottom:1px solid var(--nexus-border); }
.nexus-table th { text-align:left; padding:14px 20px; font-size:11px; color:var(--nexus-muted); font-weight:600; text-transform:uppercase; letter-spacing:.8px; }
.nexus-table tbody tr { border-bottom:1px solid var(--nexus-border); transition:background .15s; }
.nexus-table tbody tr:last-child { border-bottom:none; }
.nexus-table tbody tr:hover { background:rgba(255,255,255,.025); }
.nexus-table td { padding:14px 20px; color:var(--nexus-text); }

/* Freeze Toggle */
.nexus-freeze-toggle { display:flex; align-items:center; justify-content:space-between; padding:16px; background:var(--nexus-glass); border:1px solid var(--nexus-border); border-radius:12px; margin-bottom:8px; }
.nexus-toggle-switch { position:relative; width:52px; height:28px; }
.nexus-toggle-switch input { opacity:0; width:0; height:0; }
.nexus-toggle-slider { position:absolute; inset:0; background:rgba(255,255,255,.15); border-radius:28px; cursor:pointer; transition:.3s; }
.nexus-toggle-slider:before { content:''; position:absolute; width:20px; height:20px; left:4px; top:4px; background:#fff; border-radius:50%; transition:.3s; }
input:checked + .nexus-toggle-slider { background:var(--nexus-red); }
input:checked + .nexus-toggle-slider:before { transform:translateX(24px); }

/* =============================================
   PROFILE PHOTO
   ============================================= */
.nexus-profile-avatar {
    width:80px; height:80px; background:linear-gradient(135deg,var(--nexus-blue),var(--nexus-cyan));
    border-radius:50%; display:flex; align-items:center; justify-content:center;
    font-size:30px; font-weight:700; color:#fff; box-shadow:0 8px 24px rgba(26,111,255,.35);
    overflow:hidden; position:relative;
}
.nexus-photo-upload-btn {
    position:absolute; bottom:0; right:0; width:26px; height:26px;
    background:var(--nexus-blue); border-radius:50%; display:flex; align-items:center;
    justify-content:center; cursor:pointer; color:#fff; border:2px solid var(--nexus-dark);
    transition:background .2s;
}
.nexus-photo-upload-btn:hover { background:#0D5FDB; }

/* =============================================
   RESPONSIVE
   ============================================= */
@media(max-width:900px){
    .nexus-auth-container { grid-template-columns:1fr; }
    .nexus-auth-brand { display:none; }
    .nexus-auth-form-wrap { padding:40px 28px; }
    .nexus-app { grid-template-columns:1fr; }
    .nexus-sidebar { display:none; }
    .nexus-grid-3,.nexus-grid-2 { grid-template-columns:1fr; }
    .nexus-actions-grid { grid-template-columns:repeat(2,1fr); }
    .nexus-main { padding:20px; }
}

/* =============================================
   ANIMATIONS
   ============================================= */
@keyframes nexusFadeIn { from{opacity:0;transform:translateY(14px)} to{opacity:1;transform:translateY(0)} }
.nexus-auth-form-wrap,.nexus-stat-card,.nexus-card,.nexus-form-card { animation:nexusFadeIn .4s ease both; }
.nexus-stat-card:nth-child(2){animation-delay:.08s}
.nexus-stat-card:nth-child(3){animation-delay:.16s}

/* =============================================
   TRANSFER PAGE — REDESIGN
   ============================================= */

/* Balance pill in header */
.nexus-balance-pill {
    background: var(--nexus-card);
    border: 1px solid var(--nexus-border);
    border-radius: 14px;
    padding: 10px 20px;
    text-align: right;
}
.nexus-balance-pill-label {
    font-size: 11px;
    color: var(--nexus-muted);
    text-transform: uppercase;
    letter-spacing: .7px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 5px;
    margin-bottom: 4px;
}
.nexus-balance-pill-value {
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    font-family: var(--nexus-mono);
    letter-spacing: -0.5px;
}

/* Outer centering wrapper */
.nexus-transfer-wrap {
    display: flex;
    justify-content: center;
}

/* Main transfer card */
.nexus-transfer-card {
    background: var(--nexus-card);
    border: 1px solid var(--nexus-border);
    border-radius: 20px;
    padding: 36px 40px;
    width: 100%;
    max-width: 680px;
}

/* Divider between sections */
.nexus-transfer-divider {
    height: 1px;
    background: var(--nexus-border);
    margin: 24px 0;
}

/* Step label */
.nexus-transfer-section { }
.nexus-transfer-step-label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 600;
    color: var(--nexus-muted);
    text-transform: uppercase;
    letter-spacing: .8px;
    margin-bottom: 14px;
}

/* Side-by-side fields within a section */
.nexus-transfer-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}
.nexus-transfer-row .nexus-field { margin-bottom: 0; }

/* ---- AMOUNT INPUT ---- */
.nexus-amount-input-wrap {
    display: flex;
    align-items: center;
    background: rgba(255,255,255,0.04);
    border: 1.5px solid var(--nexus-border);
    border-radius: 14px;
    overflow: hidden;
    transition: border-color .2s, box-shadow .2s;
}
.nexus-amount-input-wrap:focus-within {
    border-color: var(--nexus-blue);
    box-shadow: 0 0 0 3px rgba(26,111,255,.15);
}
.nexus-amount-currency {
    padding: 0 16px 0 20px;
    font-size: 26px;
    font-weight: 600;
    color: var(--nexus-muted);
    font-family: var(--nexus-mono);
    user-select: none;
    line-height: 1;
}
#nexus-amount-field {
    flex: 1;
    border: none !important;
    outline: none !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 22px 20px 22px 0 !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    font-family: var(--nexus-mono) !important;
    color: #fff !important;
    letter-spacing: -1px;
    width: 100% !important;
    /* Remove spinner arrows */
    -moz-appearance: textfield;
}
#nexus-amount-field::-webkit-outer-spin-button,
#nexus-amount-field::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
#nexus-amount-field::placeholder { color: rgba(255,255,255,0.2); }

/* Currency preview */
.nexus-amount-preview {
    margin-top: 10px;
    font-size: 14px;
    color: var(--nexus-cyan);
    font-family: var(--nexus-mono);
    font-weight: 600;
    letter-spacing: .3px;
    min-height: 20px;
}

/* Transfer submit button */
.nexus-transfer-submit-btn {
    width: 100%;
    margin-top: 28px;
    padding: 17px;
    background: linear-gradient(135deg, var(--nexus-blue), #0D5FDB);
    color: #fff;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-family: var(--nexus-font);
    transition: opacity .2s, transform .2s, box-shadow .2s;
    box-shadow: 0 8px 28px rgba(26,111,255,.35);
}
.nexus-transfer-submit-btn:hover { opacity: .92; transform: translateY(-1px); box-shadow: 0 12px 36px rgba(26,111,255,.45); }
.nexus-transfer-submit-btn:disabled { opacity: .45; cursor: not-allowed; transform: none; }

/* Info pills at bottom */
.nexus-transfer-info-row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 24px;
    padding-top: 20px;
    border-top: 1px solid var(--nexus-border);
}
.nexus-transfer-info-pill {
    display: flex;
    align-items: center;
    gap: 7px;
    background: var(--nexus-glass);
    border: 1px solid var(--nexus-border);
    border-radius: 20px;
    padding: 6px 13px;
    font-size: 12px;
    color: var(--nexus-muted);
    flex: 1;
    min-width: 160px;
    justify-content: center;
}

@media(max-width:600px){
    .nexus-transfer-card { padding: 24px 20px; }
    .nexus-transfer-row  { grid-template-columns: 1fr; }
    .nexus-amount-currency { font-size: 22px; padding: 0 12px 0 16px; }
    #nexus-amount-field  { font-size: 26px !important; padding: 18px 16px 18px 0 !important; }
}
