* {













    margin: 0;













    padding: 0;













    box-sizing: border-box;













}



























:root {













    --primary: #ffbe0b;













    --secondary: #ffa500;













    --accent: #ffd700;













    --dark: #0a0a0a;













    --darker: #000000;













    --card-bg: #1a1a1a;













    --border: #3a3a1a;













    --text-light: #ffbe0b;













    --text-muted: #c9a227;













    --green: #ffd700;













    --red: #ff6b00;













}



























html, body {













    margin: 0;













    padding: 0;













    width: 100%;













    height: 100%;













}



























body {













    font-family: 'Segoe UI', 'Helvetica Neue', sans-serif;













    background: linear-gradient(135deg, #000000 0%, #0a0a0a 50%, #1a1a1a 100%);













    color: #ffbe0b;













    overflow-x: hidden;













}



























.container {













    max-width: 1400px;













    margin: 0 auto;













    padding: 0 20px;













}



























/* Navbar */













.navbar {













    display: flex;













    justify-content: space-between;













    align-items: center;













    padding: 25px 0;













    border-bottom: 2px solid #ffbe0b;













    margin-bottom: 30px;













    flex-wrap: nowrap;













    gap: 20px;













    background: linear-gradient(135deg, rgba(0,0,0,0.9), rgba(20,20,20,0.9));













}



























.nav-brand {













    display: flex;













    align-items: center;













    gap: 18px;













    font-size: 1.5rem;













    font-weight: 700;













    white-space: nowrap;













    padding: 8px 20px 8px 8px;













    background: linear-gradient(135deg, rgba(255, 190, 11, 0.1), rgba(255, 215, 0, 0.05));













    border: 1px solid rgba(255, 190, 11, 0.3);













    border-radius: 60px;













    box-shadow: 0 4px 20px rgba(255, 190, 11, 0.15);













    transition: all 0.3s ease;













}



























.nav-brand:hover {













    box-shadow: 0 6px 30px rgba(255, 190, 11, 0.4);













    border-color: rgba(255, 190, 11, 0.6);













}



























.nav-brand h1 {













    font-family: 'Cinzel', 'Playfair Display', 'Georgia', serif;













    font-size: 1.8rem;













    font-weight: 900;













    background: linear-gradient(135deg, #fff8dc 0%, #ffd700 30%, #ffbe0b 50%, #ffa500 70%, #b8860b 100%);













    -webkit-background-clip: text;













    -webkit-text-fill-color: transparent;













    background-clip: text;













    letter-spacing: 2px;













    text-shadow: 0 2px 15px rgba(255, 190, 11, 0.5);













    margin: 0;













    position: relative;













    text-transform: uppercase;













    animation: shine 3s ease-in-out infinite;













    background-size: 200% auto;













}



























.nav-brand h1::after {













    content: none;













}



























@keyframes shine {













    0% { background-position: 0% center; }













    50% { background-position: 100% center; }













    100% { background-position: 0% center; }













}



























.logo-icon {













    width: 80px;













    height: 80px;













    object-fit: contain;













    background: radial-gradient(circle, rgba(255, 190, 11, 0.2), transparent 70%);













    padding: 5px;













    border-radius: 50%;













    box-shadow: 0 0 25px rgba(255, 190, 11, 0.4), inset 0 0 15px rgba(255, 215, 0, 0.1);













    animation: rotating 12s linear infinite, pulse-glow 3s ease-in-out infinite;













    border: 2px solid rgba(255, 190, 11, 0.5);













    transition: all 0.3s ease;













}



























.logo-icon:hover {













    animation: rotating 4s linear infinite, pulse-glow 1.5s ease-in-out infinite;













    transform: scale(1.1);













    box-shadow: 0 0 40px rgba(255, 190, 11, 0.7), inset 0 0 20px rgba(255, 215, 0, 0.2);













}



























.navbar-right {













    display: flex;













    align-items: center;













    gap: 12px;













    flex-wrap: nowrap;













    margin-left: auto;













}



























.brand-link {













    padding: 8px 14px;













    background: linear-gradient(135deg, #ffbe0b, #ffa500);













    color: #000;













    text-decoration: none;













    border-radius: 6px;













    font-weight: 600;













    font-size: 0.8rem;













    transition: all 0.3s;













    text-transform: uppercase;













    letter-spacing: 0.5px;













    white-space: nowrap;













    box-shadow: 0 4px 15px rgba(255, 190, 11, 0.3);













}



























.brand-link:hover {













    transform: scale(1.05);













    box-shadow: 0 8px 25px rgba(255, 190, 11, 0.5);













}



























.wallet-btn {













    display: flex;













    align-items: center;













    gap: 6px;













    padding: 8px 14px;













    background: linear-gradient(135deg, #ffbe0b, #ffa500);













    color: #000;













    border: none;













    border-radius: 6px;













    font-weight: 600;













    font-size: 0.8rem;













    cursor: pointer;













    transition: all 0.3s;













    text-transform: uppercase;













    letter-spacing: 0.5px;













    box-shadow: 0 3px 10px rgba(255, 190, 11, 0.3);













    white-space: nowrap;













}



























.wallet-btn:hover {













    transform: scale(1.05);













    box-shadow: 0 10px 30px rgba(255, 190, 11, 0.4);













}



























.wallet-btn.connected {













    background: linear-gradient(135deg, #ffbe0b, #ffa500);













}



























.wallet-btn:active {













    transform: scale(0.98);













}



























.wallet-disconnect-btn {













    display: flex;













    align-items: center;













    gap: 6px;













    padding: 8px 14px;













    background: rgba(255, 190, 11, 0.15);













    color: #ffbe0b;













    border: 2px solid #ffbe0b;













    border-radius: 6px;













    font-weight: 600;













    font-size: 0.8rem;













    cursor: pointer;













    transition: all 0.3s;













    text-transform: uppercase;













    letter-spacing: 0.5px;













    white-space: nowrap;













}



























.wallet-disconnect-btn:hover {













    background: rgba(255, 190, 11, 0.25);













    box-shadow: 0 5px 15px rgba(255, 190, 11, 0.4);













    transform: scale(1.05);













}



























.wallet-disconnect-btn:active {













    transform: scale(0.98);













}



























.language-selector {













    display: flex;













    gap: 8px;













}



























.lang-btn {













    padding: 8px 14px;













    background: transparent;













    border: 2px solid #ffbe0b;













    color: #ffbe0b;













    border-radius: 6px;













    cursor: pointer;













    font-weight: 600;













    transition: all 0.3s;













}



























.lang-btn:hover {













    border-color: #ffbe0b;













    color: #ffbe0b;













}



























.lang-btn.active {













    background: linear-gradient(135deg, #ffbe0b, #ffa500);













    border-color: #ffbe0b;













    color: #000;













}



























/* Hero Section */













.hero {













    text-align: center;













    padding: 80px 20px;













    margin-bottom: 50px;













    animation: slideDown 0.8s ease-out;













    position: relative;













}



























.hero::before {













    content: '';













    position: absolute;













    top: 50%;













    left: 50%;













    transform: translate(-50%, -50%);













    width: 600px;













    height: 600px;













    background: radial-gradient(circle, rgba(255, 190, 11, 0.15) 0%, transparent 70%);













    pointer-events: none;













    z-index: -1;













    animation: pulse-glow 4s ease-in-out infinite;













}



























.hero-content h2 {













    font-family: 'Cinzel', 'Playfair Display', 'Georgia', serif;













    font-size: 4rem;













    font-weight: 900;













    margin-bottom: 25px;













    background: linear-gradient(135deg, #fff8dc 0%, #ffd700 25%, #ffbe0b 50%, #ffa500 75%, #b8860b 100%);













    background-size: 200% auto;













    -webkit-background-clip: text;













    -webkit-text-fill-color: transparent;













    background-clip: text;













    letter-spacing: 3px;













    text-transform: uppercase;













    text-shadow: 0 4px 30px rgba(255, 190, 11, 0.4);













    animation: shine 3s ease-in-out infinite;













    line-height: 1.2;













}



























.hero-content p {













    font-family: 'Playfair Display', 'Georgia', serif;













    font-size: 1.4rem;













    color: #d4af37;













    margin-bottom: 50px;













    font-style: italic;













    letter-spacing: 1px;













    text-shadow: 0 2px 10px rgba(255, 190, 11, 0.2);













}



























.hero-stats {













    display: flex;













    justify-content: center;













    gap: 60px;













    flex-wrap: wrap;













}



























.hero-stat {













    display: flex;













    flex-direction: column;













    align-items: center;













    padding: 25px 40px;













    background: linear-gradient(135deg, rgba(255, 190, 11, 0.08), rgba(255, 215, 0, 0.03));













    border: 1px solid rgba(255, 190, 11, 0.3);













    border-radius: 15px;













    box-shadow: 0 8px 30px rgba(255, 190, 11, 0.1);













    transition: all 0.4s ease;













    backdrop-filter: blur(10px);













    min-width: 180px;













}



























.hero-stat:hover {













    transform: translateY(-8px);













    box-shadow: 0 15px 40px rgba(255, 190, 11, 0.3);













    border-color: rgba(255, 190, 11, 0.6);













    background: linear-gradient(135deg, rgba(255, 190, 11, 0.15), rgba(255, 215, 0, 0.08));













}



























.stat-number {













    font-family: 'Cinzel', 'Playfair Display', serif;













    font-size: 2.8rem;













    font-weight: 900;













    background: linear-gradient(135deg, #ffd700, #ffbe0b, #ffa500);













    -webkit-background-clip: text;













    -webkit-text-fill-color: transparent;













    background-clip: text;













    letter-spacing: 2px;













    text-shadow: 0 2px 20px rgba(255, 190, 11, 0.5);













    margin-bottom: 8px;













}



























.stat-label {













    color: #c9a227;













    font-size: 0.95rem;













    font-weight: 600;













    text-transform: uppercase;













    letter-spacing: 2px;













    font-family: 'Playfair Display', serif;













}



























/* Converter Section */













.converter-section {













    margin-bottom: 80px;













}



























.converter-container {













    display: flex;













    justify-content: center;













}



























.converter-box {













    width: 100%;













    max-width: 900px;













    background: linear-gradient(135deg, rgba(21, 27, 53, 0.9), rgba(15, 20, 40, 0.9));













    border: 2px solid var(--border);













    border-radius: 20px;













    padding: 40px;













    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.5);













    backdrop-filter: blur(10px);













}



























.converter-header {













    font-size: 1.5rem;













    font-weight: 700;













    color: var(--primary);













    margin-bottom: 30px;













    text-transform: uppercase;













    letter-spacing: 2px;













}



























.exchange-wrapper {













    display: grid;













    grid-template-columns: 1fr auto 1fr;













    gap: 30px;













    align-items: end;













    margin-bottom: 30px;













}



























.exchange-panel {













    display: flex;













    flex-direction: column;













}



























.exchange-panel label {













    font-size: 0.9rem;













    color: var(--text-muted);













    margin-bottom: 10px;













    font-weight: 600;













}



























.currency-select {













    position: relative;













    margin-bottom: 15px;













}



























.selected-currency {













    display: flex;













    align-items: center;













    gap: 12px;













    padding: 15px;













    background: rgba(0, 212, 255, 0.05);













    border: 2px solid var(--primary);













    border-radius: 12px;













    cursor: pointer;













    transition: all 0.3s;













}



























.selected-currency:hover {













    background: rgba(0, 212, 255, 0.1);













    transform: translateY(-2px);













}



























.crypto-icon {













    width: 50px;













    height: 50px;













    display: flex;













    align-items: center;













    justify-content: center;













    background: transparent;













    border: none;













    overflow: visible;













    padding: 0;













}



























.crypto-icon img {













    width: 100%;













    height: 100%;













    object-fit: contain;













    display: block;













}



























.currency-info {













    display: flex;













    flex-direction: column;













}



























.currency-name {













    font-weight: 700;













    font-size: 1rem;













}



























.currency-code {













    color: var(--text-muted);













    font-size: 0.85rem;













}



























.currency-selector {













    display: none;













}



























/* Dropdown personalizado de monedas */













.currency-dropdown {













    position: absolute;













    top: calc(100% + 8px);













    left: 0;













    right: 0;













    background: linear-gradient(135deg, #0a0a0a, #1a1a1a);













    border: 2px solid rgba(255, 190, 11, 0.5);













    border-radius: 14px;













    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.8), 0 0 30px rgba(255, 190, 11, 0.2);













    z-index: 100;













    max-height: 360px;













    overflow-y: auto;













    opacity: 0;













    visibility: hidden;













    transform: translateY(-10px);













    transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;













    padding: 8px;













}



























.currency-dropdown.open {













    opacity: 1;













    visibility: visible;













    transform: translateY(0);













}



























.currency-dropdown::-webkit-scrollbar {













    width: 8px;













}



























.currency-dropdown::-webkit-scrollbar-track {













    background: rgba(0, 0, 0, 0.3);













    border-radius: 4px;













}



























.currency-dropdown::-webkit-scrollbar-thumb {













    background: linear-gradient(180deg, #ffd700, #ffbe0b);













    border-radius: 4px;













}



























.currency-option {













    display: flex;













    align-items: center;













    gap: 14px;













    padding: 12px 14px;













    border-radius: 10px;













    cursor: pointer;













    transition: all 0.2s ease;













    border: 1px solid transparent;













}



























.currency-option:hover {













    background: linear-gradient(135deg, rgba(255, 190, 11, 0.15), rgba(255, 190, 11, 0.05));













    border-color: rgba(255, 190, 11, 0.4);













    transform: translateX(4px);













}



























.currency-option.selected {













    background: linear-gradient(135deg, rgba(255, 190, 11, 0.2), rgba(255, 190, 11, 0.08));













    border-color: rgba(255, 190, 11, 0.6);













}



























.currency-option .crypto-icon {













    width: 38px;













    height: 38px;













    flex-shrink: 0;













}



























.currency-option-info {













    display: flex;













    flex-direction: column;













    flex: 1;













    min-width: 0;













}



























.currency-option-name {













    font-family: 'Cinzel', serif;













    font-weight: 700;













    color: #ffd700;













    font-size: 0.95rem;













    letter-spacing: 0.5px;













}



























.currency-option-code {













    color: #c9a227;













    font-size: 0.78rem;













    font-weight: 600;













    letter-spacing: 1.5px;













    text-transform: uppercase;













    font-family: 'Playfair Display', serif;













}



























.currency-option-price {













    color: #ffbe0b;













    font-size: 0.85rem;













    font-weight: 700;













    font-family: 'Courier New', monospace;













    margin-left: auto;













}



























.selected-currency::after {













    content: '\f078';













    font-family: 'Font Awesome 6 Free';













    font-weight: 900;













    margin-left: auto;













    color: #ffbe0b;













    font-size: 0.9rem;













    transition: transform 0.3s ease;













}



























.selected-currency.open::after {













    transform: rotate(180deg);













}



























.input-amount {













    position: relative;













}



























.input-amount input {













    width: 100%;













    padding: 15px;













    background: rgba(31, 42, 72, 0.6);













    border: 2px solid var(--border);













    border-radius: 12px;













    color: var(--text-light);













    font-size: 1.1rem;













    font-weight: 600;













    transition: all 0.3s;













    font-family: 'Courier New', monospace;













}



























.input-amount input:focus {













    outline: none;













    border-color: var(--primary);













    background: rgba(0, 212, 255, 0.05);













}



























.price-info {













    position: absolute;













    right: 15px;













    top: 50%;













    transform: translateY(-50%);













    color: var(--primary);













    font-size: 0.9rem;













    pointer-events: none;













}



























.swap-button {













    width: 60px;













    height: 60px;













    background: linear-gradient(135deg, var(--primary), var(--secondary));













    border: none;













    border-radius: 50%;













    color: var(--darker);













    font-size: 1.5rem;













    cursor: pointer;













    transition: all 0.3s;













    box-shadow: 0 10px 30px rgba(0, 212, 255, 0.3);













}



























.swap-button:hover {













    transform: rotate(180deg) scale(1.1);













    box-shadow: 0 15px 50px rgba(0, 212, 255, 0.5);













}



























.exchange-info {













    display: grid;













    grid-template-columns: repeat(3, 1fr);













    gap: 10px;













    padding: 14px 18px;













    background: rgba(0, 0, 0, 0.4);













    border: 1px solid rgba(255, 190, 11, 0.2);













    border-radius: 12px;













    margin-top: 20px;













}



























.info-item {













    display: flex;













    flex-direction: column;













    align-items: center;













    text-align: center;













    padding: 6px 4px;













    border-right: 1px solid rgba(255, 190, 11, 0.12);













}



























.info-item:last-child {













    border-right: none;













}



























.info-label {













    color: #c9a227;













    font-size: 0.7rem;













    margin-bottom: 4px;













    font-weight: 600;













    text-transform: uppercase;













    letter-spacing: 1px;













    font-family: 'Cinzel', serif;













}



























.info-value {













    color: #ffd700;













    font-size: 0.95rem;













    font-weight: 700;













    font-family: 'Courier New', monospace;













}



























/* Swap Real */













.swap-real-section {













    margin-top: 25px;













    text-align: center;













}



























/* Resumen del intercambio */













.swap-summary {













    margin-top: 30px;













    padding: 25px 28px;













    background: linear-gradient(135deg, rgba(255, 215, 0, 0.08), rgba(0, 0, 0, 0.5));













    border: 2px solid rgba(255, 190, 11, 0.4);













    border-radius: 18px;













    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.4), 0 0 30px rgba(255, 190, 11, 0.1);













    display: flex;













    flex-direction: column;













    gap: 4px;













}



























.summary-row {













    display: flex;













    justify-content: space-between;













    align-items: center;













    padding: 10px 14px;













    border-radius: 10px;













    transition: background 0.2s;













}



























.summary-row.main-row {













    padding: 14px 18px;













    background: linear-gradient(135deg, rgba(255, 190, 11, 0.12), rgba(0, 0, 0, 0.35));













    border: 1px solid rgba(255, 190, 11, 0.25);













}



























.summary-row.receive-row {













    background: linear-gradient(135deg, rgba(255, 215, 0, 0.22), rgba(255, 190, 11, 0.08));













    border: 2px solid rgba(255, 215, 0, 0.55);













    box-shadow: 0 4px 20px rgba(255, 190, 11, 0.2);













}



























.summary-row.sub-row {













    padding: 8px 18px;













    border-top: 1px dashed rgba(255, 190, 11, 0.15);













    margin-top: 4px;













}



























.summary-row.sub-row:nth-of-type(4) {













    border-top: none;













}



























.summary-divider {













    text-align: center;













    color: #ffbe0b;













    font-size: 1.4rem;













    margin: 4px 0;













    opacity: 0.6;













}



























.summary-label {













    font-family: 'Cinzel', serif;













    color: #c9a227;













    font-weight: 700;













    text-transform: uppercase;













    letter-spacing: 1.5px;













    font-size: 0.78rem;













}



























.summary-row.main-row .summary-label {













    color: #ffbe0b;













    font-size: 0.88rem;













}



























.summary-row.receive-row .summary-label {













    color: #ffd700;













    font-size: 0.95rem;













}



























.summary-value {













    font-family: 'Cinzel', 'Courier New', monospace;













    color: #ffd700;













    font-weight: 800;













    font-size: 0.95rem;













    text-align: right;













    letter-spacing: 0.5px;













}



























.summary-row.main-row .summary-value {













    font-size: 1.1rem;













}



























.summary-row.receive-row .summary-value {













    font-size: 1.4rem;













    text-shadow: 0 2px 12px rgba(255, 215, 0, 0.5);













    color: #ffec80;













}



























.summary-row.sub-row .summary-value {













    font-size: 0.9rem;













    color: #c9a227;













}



























.btn-swap-real {













    width: 100%;













    padding: 18px;













    background: linear-gradient(135deg, #ffd700, #ffbe0b, #ffa500);













    color: #000;













    border: 2px solid #000;













    border-radius: 14px;













    font-family: 'Cinzel', serif;













    font-size: 1.1rem;













    font-weight: 900;













    text-transform: uppercase;













    letter-spacing: 2px;













    cursor: pointer;













    transition: all 0.3s ease;













    box-shadow: 0 8px 25px rgba(255, 190, 11, 0.4);













    display: flex;













    align-items: center;













    justify-content: center;













    gap: 12px;













}



























.btn-swap-real:hover {













    transform: translateY(-3px);













    box-shadow: 0 12px 35px rgba(255, 190, 11, 0.6);













}



























.swap-status {













    margin-top: 16px;













    padding: 0;













    border-radius: 14px;













    font-size: 0.92rem;













    min-height: 0;













    word-break: break-word;













    display: none;













    overflow: hidden;













    border: 1px solid transparent;













    backdrop-filter: blur(8px);













    animation: statusSlideIn 0.35s cubic-bezier(0.16, 1, 0.3, 1);













}



























.swap-status.show { display: block; }



























@keyframes statusSlideIn {













    from { opacity: 0; transform: translateY(-8px) scale(0.98); }













    to   { opacity: 1; transform: translateY(0) scale(1); }













}



























.status-card {













    display: flex;













    align-items: flex-start;













    gap: 14px;













    padding: 16px 18px;













    position: relative;













}



























.status-icon {













    flex: 0 0 auto;













    width: 40px;













    height: 40px;













    border-radius: 50%;













    display: flex;













    align-items: center;













    justify-content: center;













    font-size: 1.2rem;













    box-shadow: 0 4px 12px rgba(0,0,0,0.4);













}



























.status-body {













    flex: 1;













    min-width: 0;













}



























.status-title {













    font-family: 'Cinzel', serif;













    font-weight: 700;













    font-size: 0.95rem;













    margin-bottom: 4px;













    letter-spacing: 0.5px;













    text-transform: uppercase;













}



























.status-message {













    font-size: 0.88rem;













    line-height: 1.45;













    opacity: 0.92;













}



























.status-action {













    margin-top: 12px;













    display: inline-flex;













    align-items: center;













    gap: 8px;













    padding: 10px 18px;













    border-radius: 10px;













    border: none;













    font-weight: 700;













    font-size: 0.85rem;













    cursor: pointer;













    text-transform: uppercase;













    letter-spacing: 0.6px;













    transition: all 0.25s ease;













}



























.status-action:hover {













    transform: translateY(-2px);













    box-shadow: 0 6px 18px rgba(0,0,0,0.35);













}



























/* INFO - dorado */













.swap-status.info {













    background: linear-gradient(135deg, rgba(255, 190, 11, 0.12), rgba(255, 215, 0, 0.06));













    border-color: rgba(255, 190, 11, 0.35);













    box-shadow: 0 8px 24px rgba(255, 190, 11, 0.12);













}













.swap-status.info .status-icon {













    background: linear-gradient(135deg, #ffbe0b, #ffd700);













    color: #000;













}













.swap-status.info .status-title { color: #ffd700; }













.swap-status.info .status-message { color: #ffe89a; }



























/* SUCCESS - verde esmeralda */













.swap-status.success {













    background: linear-gradient(135deg, rgba(0, 255, 107, 0.12), rgba(0, 200, 80, 0.06));













    border-color: rgba(0, 255, 107, 0.4);













    box-shadow: 0 8px 24px rgba(0, 255, 107, 0.15);













}













.swap-status.success .status-icon {













    background: linear-gradient(135deg, #00ff6b, #00c850);













    color: #000;













}













.swap-status.success .status-title { color: #00ff6b; }













.swap-status.success .status-message { color: #b6ffd0; }



























/* ERROR - rojo coral premium (no chillÃƒÂ³n) */













.swap-status.error {













    background: linear-gradient(135deg, rgba(255, 90, 90, 0.10), rgba(180, 30, 30, 0.06));













    border-color: rgba(255, 100, 100, 0.4);













    box-shadow: 0 8px 24px rgba(255, 70, 70, 0.12);













}













.swap-status.error .status-icon {













    background: linear-gradient(135deg, #ff6b6b, #c92a2a);













    color: #fff;













}













.swap-status.error .status-title { color: #ff8a8a; }













.swap-status.error .status-message { color: #ffd0d0; }



























.swap-status.error .status-action {













    background: linear-gradient(135deg, #ffbe0b, #ffd700);













    color: #000;













}



























.swap-status.warning {













    background: linear-gradient(135deg, rgba(255, 165, 0, 0.12), rgba(200, 120, 0, 0.06));













    border-color: rgba(255, 165, 0, 0.4);













    box-shadow: 0 8px 24px rgba(255, 165, 0, 0.12);













}













.swap-status.warning .status-icon {













    background: linear-gradient(135deg, #ffa500, #ff7b00);













    color: #000;













}













.swap-status.warning .status-title { color: #ffc266; }













.swap-status.warning .status-message { color: #ffe2b8; }













.swap-status.warning .status-action {













    background: linear-gradient(135deg, #ffbe0b, #ffd700);













    color: #000;













}



























.status-spinner {













    width: 18px;













    height: 18px;













    border: 2.5px solid rgba(0,0,0,0.2);













    border-top-color: #000;













    border-radius: 50%;













    animation: spin 0.8s linear infinite;













}



























@keyframes spin {













    to { transform: rotate(360deg); }













}



























.swap-hint {













    display: block;













    margin-top: 10px;













    color: #c9a227;













    font-size: 0.8rem;













    font-style: italic;













}



























.btn-switch-network {













    margin-top: 12px;













    width: 100%;













    padding: 12px;













    background: linear-gradient(135deg, #f0b90b, #f3ba2f);













    color: #000;













    border: 2px solid #000;













    border-radius: 10px;













    font-family: 'Cinzel', serif;













    font-weight: 800;













    font-size: 0.95rem;













    cursor: pointer;













    transition: all 0.3s;













    display: flex;













    align-items: center;













    justify-content: center;













    gap: 10px;













    text-transform: uppercase;













    letter-spacing: 1.5px;













    box-shadow: 0 6px 20px rgba(243, 186, 47, 0.4);













}



























.btn-switch-network:hover {













    transform: translateY(-2px);













    box-shadow: 0 10px 28px rgba(243, 186, 47, 0.6);













}



























/* Crypto Grid */













.crypto-grid-section {













    margin-bottom: 80px;













}



























.crypto-grid-section h2 {













    font-size: 2.2rem;













    margin-bottom: 40px;













    color: var(--text-light);













}



























.crypto-grid {













    display: grid;













    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));













    gap: 20px;













}



























/* ===== MARQUEE TICKER ===== */













.crypto-grid.crypto-marquee {













    display: block;













    position: relative;













    overflow: hidden;













    padding: 12px 0;













    /* Edge fade for premium feel */













    -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);













            mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);













}



























.crypto-marquee-track {













    display: flex;













    gap: 18px;













    width: max-content;













    animation: cryptoMarquee 60s linear infinite;













    will-change: transform;













}



























.crypto-marquee-track > .crypto-card {













    flex: 0 0 220px;













    width: 220px;













    margin: 0;













    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.35s, box-shadow 0.35s;













}



























.crypto-marquee:hover .crypto-marquee-track {













    animation-play-state: paused;













}



























.crypto-marquee-track > .crypto-card:hover {













    transform: translateY(-6px) scale(1.03);













    z-index: 2;













}



























@keyframes cryptoMarquee {













    from { transform: translateX(0); }













    to   { transform: translateX(-50%); }













}



























@media (prefers-reduced-motion: reduce) {













    .crypto-marquee-track {













        animation: none;













    }













}



























.crypto-card {













    background: linear-gradient(135deg, var(--card-bg), rgba(21, 27, 53, 0.7));













    border: 2px solid var(--border);













    border-radius: 15px;













    padding: 25px;













    text-align: center;













    transition: all 0.3s;













    cursor: pointer;













}



























.crypto-card:hover {













    border-color: var(--primary);













    transform: translateY(-10px);













    box-shadow: 0 15px 40px rgba(0, 212, 255, 0.2);













}



























.crypto-card-icon {













    width: 80px;













    height: 80px;













    margin: 0 auto 15px;













    display: flex;













    align-items: center;













    justify-content: center;













    background: transparent;













    border: none;













    overflow: visible;













    padding: 0;













    transition: all 0.3s ease;













    filter: drop-shadow(0 4px 15px rgba(255, 190, 11, 0.3));













}



























.crypto-card-icon img {













    width: 100%;













    height: 100%;













    object-fit: contain;













    display: block;













}



























.crypto-card:hover .crypto-card-icon {













    transform: scale(1.15) rotate(5deg);













    filter: drop-shadow(0 8px 25px rgba(255, 190, 11, 0.6));













}



























.crypto-card-name {













    font-size: 1.1rem;













    font-weight: 700;













    margin-bottom: 5px;













}



























.crypto-card-symbol {













    color: var(--text-muted);













    font-size: 0.9rem;













    margin-bottom: 15px;













}



























.crypto-card-price {













    font-size: 1.3rem;













    font-weight: 700;













    color: var(--primary);













    margin-bottom: 10px;













    font-family: 'Courier New', monospace;













}



























.crypto-card-change {













    font-weight: 600;













    font-size: 0.95rem;













}



























.crypto-card-change.positive {













    color: var(--green);













}



























.crypto-card-change.negative {













    color: var(--red);













}



























/* Market Table */













.market-section {













    margin-bottom: 80px;













    text-align: center;













}



























.market-section h2 {













    font-size: 2.2rem;













    margin-bottom: 30px;













}



























.market-table-container {













    background: linear-gradient(135deg, var(--card-bg), rgba(21, 27, 53, 0.7));













    border: 2px solid var(--border);













    border-radius: 15px;













    overflow: hidden;













    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);













    max-width: 1100px;













    margin: 0 auto;













}



























.market-table {













    width: 100%;













    border-collapse: collapse;













    text-align: center;













}



























.market-table thead {













    background: rgba(0, 212, 255, 0.1);













    border-bottom: 2px solid var(--border);













}



























.market-table th {













    padding: 20px;













    text-align: center;













    color: var(--primary);













    font-weight: 700;













    font-size: 0.95rem;













}



























.market-table td {













    padding: 18px 20px;













    border-bottom: 1px solid var(--border);













    font-weight: 500;













    text-align: center;













    vertical-align: middle;













}



























.market-table .spark-cell svg {













    margin: 0 auto;













}



























.market-table tbody tr {













    transition: all 0.3s;













}



























.market-table tbody tr:hover {













    background: rgba(0, 212, 255, 0.05);













}



























.market-table tbody tr:last-child td {













    border-bottom: none;













}



























/* Features Section */













.features-section {













    margin-bottom: 80px;













}



























.features-section h2 {













    font-size: 2.2rem;













    margin-bottom: 40px;













    text-align: center;













}



























.features-grid {













    display: grid;













    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));













    gap: 30px;













}



























.feature-card {













    background: linear-gradient(135deg, var(--card-bg), rgba(21, 27, 53, 0.7));













    border: 2px solid var(--border);













    border-radius: 15px;













    padding: 30px;













    text-align: center;













    transition: all 0.3s;













}



























.feature-card:hover {













    border-color: var(--primary);













    transform: translateY(-5px);













}



























.feature-icon {













    width: 80px;













    height: 80px;













    margin: 0 auto 20px;













    display: flex;













    align-items: center;













    justify-content: center;













    background: linear-gradient(135deg, var(--primary), var(--secondary));













    border-radius: 50%;













    font-size: 2rem;













    color: var(--darker);













}



























.feature-card h3 {













    font-size: 1.3rem;













    margin-bottom: 12px;













}



























.feature-card p {













    color: var(--text-muted);













    line-height: 1.6;













}



























/* Footer */













footer {













    text-align: center;













    padding: 40px 0;













    border-top: 1px solid var(--border);













    color: var(--text-muted);













}



























footer p {













    margin: 8px 0;













}



























/* Animaciones */













@keyframes slideDown {













    from {













        opacity: 0;













        transform: translateY(-30px);













    }













    to {













        opacity: 1;













        transform: translateY(0);













    }













}



























/* Responsive */













@media (max-width: 1024px) {













    .exchange-wrapper {













        grid-template-columns: 1fr;













        gap: 20px;













    }













    













    .swap-button {













        transform: rotate(90deg);













    }













}



























@media (max-width: 768px) {













    .hero-content h2 {













        font-size: 2rem;













    }













    













    .hero-stats {













        gap: 30px;













    }













    













    .converter-box {













        padding: 20px;













    }













    













    .crypto-grid {













        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));













    }



























    .crypto-marquee-track > .crypto-card {













        flex: 0 0 170px;













        width: 170px;













    }



























    .crypto-marquee-track {













        animation-duration: 45s;













    }













    













    .exchange-info {













        grid-template-columns: 1fr;













    }













    













    .market-table {













        font-size: 0.9rem;













    }













    













    .market-table th,













    .market-table td {













        padding: 12px;













    }













}



























/* ============================================













   SCROLL REVEAL — IntersectionObserver driven













   ============================================ */













.reveal-target {













    opacity: 0;













    transform: translateY(24px);













    filter: blur(6px);













    transition:













        opacity 0.9s cubic-bezier(0.16, 1, 0.3, 1) var(--reveal-delay, 0ms),













        transform 0.9s cubic-bezier(0.16, 1, 0.3, 1) var(--reveal-delay, 0ms),













        filter 0.7s ease var(--reveal-delay, 0ms);













    will-change: opacity, transform, filter;













}



























.reveal-target.is-revealed {













    opacity: 1;













    transform: translateY(0);













    filter: blur(0);













}



























/* Variants for richer choreography */













.reveal-left { transform: translateX(-30px); }













.reveal-right { transform: translateX(30px); }













.reveal-scale { transform: scale(0.96); }













.reveal-left.is-revealed,













.reveal-right.is-revealed,













.reveal-scale.is-revealed { transform: translate(0, 0) scale(1); }



























@media (prefers-reduced-motion: reduce) {













    .reveal-target {













        opacity: 1 !important;













        transform: none !important;













        filter: none !important;













        transition: none !important;













    }













}



























/* ============================================













   VAULT — PRIVATE BANKING (REFINED)













   ============================================ */.vault-section {













    position: relative;













    background: linear-gradient(180deg, #0d1018 0%, #0a0c14 100%);













    border: 1px solid rgba(255, 215, 0, 0.1);













    border-radius: 20px;













    padding: 56px 56px 48px;













    margin: 60px 0;













    overflow: hidden;













    box-shadow:













        0 24px 60px rgba(0, 0, 0, 0.45),













        inset 0 1px 0 rgba(255, 255, 255, 0.04);













}



























.vault-section::before {













    content: '';













    position: absolute;













    top: 0; left: 0; right: 0;













    height: 1px;













    background: linear-gradient(90deg,













        transparent,













        rgba(255, 215, 0, 0.45),













        rgba(255, 215, 0, 0.45),













        transparent);













    z-index: 2;













}



























/* Subtle noise texture — kills flat-digital feel */













.vault-section::after {













    content: '';













    position: absolute;













    inset: 0;













    pointer-events: none;













    opacity: 0.5;













    mix-blend-mode: overlay;













    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.35 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");













    background-size: 220px 220px;













}



























.vault-container {













    position: relative;













    z-index: 1;













    max-width: 1200px;













    margin: 0 auto;













}



























/* ===== HEADER ===== */













.vault-header {













    text-align: center;













    margin-bottom: 44px;













}



























.vault-eyebrow {













    display: inline-block;













    font-size: 0.7rem;













    font-weight: 600;













    color: #ffd700;













    letter-spacing: 3px;













    text-transform: uppercase;













    margin-bottom: 14px;













    opacity: 0.85;













}



























.vault-title-text {













    font-size: 2.4rem;













    font-weight: 700;













    color: #fff;













    letter-spacing: -0.5px;













    margin: 0 0 12px;













    line-height: 1.1;













}



























.vault-header p {













    color: rgba(255, 255, 255, 0.5);













    font-size: 0.95rem;













    max-width: 520px;













    margin: 0 auto;













    line-height: 1.5;













}



























/* ===== GRID ===== */













.vault-grid {













    display: grid;













    grid-template-columns: 1.4fr 1fr 1fr;













    gap: 18px;













    margin-bottom: 24px;













}



























.vault-card {













    position: relative;













    background: linear-gradient(180deg, #14171f 0%, #0f1218 100%);













    border: 1px solid rgba(255, 255, 255, 0.06);













    border-radius: 16px;













    padding: 28px 28px 24px;













    transition: border-color 0.3s ease, transform 0.3s ease;













    display: flex;













    flex-direction: column;













    overflow: hidden;













}



























.vault-card::after {













    content: '';













    position: absolute;













    inset: 0;













    pointer-events: none;













    opacity: 0.35;













    mix-blend-mode: overlay;













    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.3 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");













    background-size: 180px 180px;













}



























.vault-card > * {













    position: relative;













    z-index: 1;













}



























.vault-card:hover {













    border-color: rgba(255, 215, 0, 0.25);













    transform: translateY(-2px);













}



























.vault-card-head {













    display: flex;













    align-items: center;













    justify-content: space-between;













    gap: 12px;













    margin-bottom: 18px;













}



























.vault-card-label {













    font-size: 0.72rem;













    font-weight: 600;













    color: rgba(255, 255, 255, 0.55);













    text-transform: uppercase;













    letter-spacing: 1.6px;













}



























.vault-tag-live {













    display: inline-flex;













    align-items: center;













    gap: 6px;













    padding: 4px 10px;













    background: rgba(16, 185, 129, 0.08);













    border: 1px solid rgba(16, 185, 129, 0.25);













    border-radius: 50px;













    color: #10b981;













    font-size: 0.65rem;













    font-weight: 600;













    letter-spacing: 0.6px;













    text-transform: uppercase;













}



























.vault-live-dot {













    width: 6px;













    height: 6px;













    border-radius: 50%;













    background: #10b981;













    animation: vaultLivePulse 2s ease-in-out infinite;













}



























@keyframes vaultLivePulse {













    0%, 100% { opacity: 1; }













    50% { opacity: 0.4; }













}



























/* ===== HERO BALANCE ===== */













.vault-card-hero .vault-card-value {













    display: flex;













    align-items: baseline;













    gap: 4px;













    font-size: 3rem;













    font-weight: 700;













    color: #fff;













    letter-spacing: -1.5px;













    margin: 8px 0 28px;













    line-height: 1;













    font-variant-numeric: tabular-nums;













    flex: 1;













}



























.vault-currency-mark {













    font-size: 1.5rem;













    color: #ffd700;













    font-weight: 600;













}



























.vault-card-foot {













    display: flex;













    align-items: center;













    justify-content: space-between;













    gap: 16px;













    padding-top: 18px;













    border-top: 1px solid rgba(255, 255, 255, 0.05);













}



























.vault-card-foot-stack {













    flex-direction: column;













    align-items: flex-start;













    gap: 10px;













}



























.vault-foot-item {













    display: flex;













    flex-direction: column;













    gap: 4px;













    font-size: 0.78rem;













}



























.vault-card-foot-stack .vault-foot-item {













    flex-direction: row;













    align-items: baseline;













    justify-content: space-between;













    width: 100%;













    gap: 12px;













}



























.vault-foot-item span {













    color: rgba(255, 255, 255, 0.45);













    font-size: 0.72rem;













    text-transform: uppercase;













    letter-spacing: 0.8px;













}



























.vault-foot-item strong {













    color: #fff;













    font-weight: 600;













    font-size: 0.9rem;













    font-variant-numeric: tabular-nums;













}



























/* ===== APY ===== */













.vault-apy-block {













    display: flex;













    align-items: baseline;













    gap: 8px;













    margin: 8px 0 26px;













    flex: 1;













}



























.vault-apy-value {













    font-size: 2.6rem;













    font-weight: 700;













    color: #ffd700;













    letter-spacing: -1px;













    line-height: 1;













    font-variant-numeric: tabular-nums;













}



























.vault-apy-suffix {













    font-size: 0.85rem;













    font-weight: 600;













    color: rgba(255, 215, 0, 0.6);













    letter-spacing: 1.5px;













}



























/* ===== SAFETY ===== */













.vault-safety-headline {













    display: flex;













    flex-direction: column;













    gap: 4px;













    margin: 8px 0 22px;













    flex: 1;













}



























.vault-safety-pct {













    font-size: 2.6rem;













    font-weight: 700;













    color: #fff;













    letter-spacing: -1px;













    line-height: 1;













}



























.vault-safety-note {













    font-size: 0.78rem;













    color: rgba(255, 255, 255, 0.45);













}



























.vault-safety-list {













    list-style: none;













    margin: 0;













    padding: 16px 0 0;













    border-top: 1px solid rgba(255, 255, 255, 0.05);













    display: flex;













    flex-direction: column;













    gap: 10px;













}



























.vault-safety-list li {













    display: flex;













    align-items: center;













    gap: 10px;













    font-size: 0.82rem;













    color: rgba(255, 255, 255, 0.7);













}



























.vault-safety-list li i {













    width: 16px;













    height: 16px;













    border-radius: 50%;













    background: rgba(16, 185, 129, 0.12);













    color: #10b981;













    font-size: 0.55rem;













    display: flex;













    align-items: center;













    justify-content: center;













    flex-shrink: 0;













}



























/* ===== STRIP ===== */













.vault-strip {













    display: flex;













    align-items: stretch;













    justify-content: space-between;













    gap: 0;













    background: #11141c;













    border: 1px solid rgba(255, 255, 255, 0.05);













    border-radius: 14px;













    padding: 18px 28px;













    margin-bottom: 24px;













}



























.vault-strip-item {













    display: flex;













    flex-direction: column;













    gap: 6px;













    flex: 1;













}



























.vault-strip-item span {













    font-size: 0.68rem;













    color: rgba(255, 255, 255, 0.45);













    text-transform: uppercase;













    letter-spacing: 1.2px;













    font-weight: 600;













}



























.vault-strip-item strong {













    font-size: 0.95rem;













    color: #fff;













    font-weight: 600;













    letter-spacing: -0.2px;













}



























.vault-strip-divider {













    width: 1px;













    background: rgba(255, 255, 255, 0.06);













    margin: 0 24px;













}



























/* ===== DEPOSIT BUTTON ===== */













.vault-deposit-btn {













    position: relative;













    display: flex;













    align-items: center;













    justify-content: center;













    gap: 12px;













    width: 100%;













    padding: 18px 28px;













    background: linear-gradient(180deg, #ffd700 0%, #e6b800 100%);













    color: #0a0c14;













    border: none;













    border-radius: 14px;













    font-size: 0.95rem;













    font-weight: 700;













    cursor: pointer;













    transition: transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease;













    letter-spacing: 0.4px;













    box-shadow:













        0 8px 24px rgba(255, 215, 0, 0.18),













        inset 0 1px 0 rgba(255, 255, 255, 0.35);













    margin-bottom: 32px;













}



























.vault-deposit-btn:hover {













    transform: translateY(-2px);













    box-shadow:













        0 12px 32px rgba(255, 215, 0, 0.3),













        inset 0 1px 0 rgba(255, 255, 255, 0.4);













    filter: brightness(1.05);













}



























.vault-deposit-btn:active {













    transform: translateY(0);













}



























.vault-btn-arrow {













    font-size: 0.85rem;













    transition: transform 0.25s ease;













}



























.vault-deposit-btn:hover .vault-btn-arrow {













    transform: translateX(3px);













}



























/* ===== HISTORY ===== */













.vault-deposits-history {













    background: #11141c;













    border: 1px solid rgba(255, 255, 255, 0.05);













    border-radius: 16px;













    padding: 28px;













}



























.vault-history-head {













    display: flex;













    align-items: center;













    justify-content: space-between;













    margin-bottom: 20px;













    padding-bottom: 18px;













    border-bottom: 1px solid rgba(255, 255, 255, 0.05);













}



























.vault-history-head h3 {













    color: #fff;













    font-size: 1rem;













    font-weight: 600;













    margin: 0;













    letter-spacing: 0.2px;













}



























.vault-history-badge {













    display: inline-flex;













    align-items: center;













    gap: 6px;













    padding: 5px 11px;













    background: rgba(16, 185, 129, 0.08);













    border: 1px solid rgba(16, 185, 129, 0.25);













    border-radius: 50px;













    color: #10b981;













    font-size: 0.65rem;













    font-weight: 600;













    letter-spacing: 0.8px;













    text-transform: uppercase;













}



























.deposits-list {













    display: flex;













    flex-direction: column;













    gap: 8px;













}



























.deposit-item {













    display: flex;













    justify-content: space-between;













    align-items: center;













    padding: 16px 20px;













    background: rgba(255, 255, 255, 0.015);













    border: 1px solid rgba(255, 255, 255, 0.05);













    border-radius: 10px;













    transition: background 0.25s ease, border-color 0.25s ease;













}



























.deposit-item:hover {













    background: rgba(255, 215, 0, 0.04);













    border-color: rgba(255, 215, 0, 0.2);













}



























.deposit-info { flex: 1; }



























.deposit-amount {













    font-size: 1rem;













    font-weight: 600;













    color: #fff;













    font-variant-numeric: tabular-nums;













}



























.deposit-date {













    font-size: 0.75rem;













    color: rgba(255, 255, 255, 0.4);













    margin-top: 3px;













}



























.deposit-yield { text-align: right; }



























.deposit-yield-label {













    font-size: 0.68rem;













    color: rgba(255, 255, 255, 0.4);













    display: block;













    text-transform: uppercase;













    letter-spacing: 0.8px;













}



























.deposit-yield-value {













    font-size: 1rem;













    font-weight: 600;













    color: #10b981;













    font-variant-numeric: tabular-nums;













    margin-top: 3px;













}



























.no-deposits {













    display: flex;













    flex-direction: column;













    gap: 4px;













    align-items: center;













    padding: 36px 20px;













    text-align: center;













    background: rgba(255, 255, 255, 0.015);













    border: 1px dashed rgba(255, 255, 255, 0.08);













    border-radius: 12px;













    font-style: normal;













}



























.no-deposits strong {













    color: rgba(255, 255, 255, 0.75);













    font-size: 0.9rem;













    font-weight: 600;













}



























.no-deposits span {













    color: rgba(255, 255, 255, 0.4);













    font-size: 0.8rem;













}



























/* ============================================













/* ===== CONTRACTS SECTION ===== */

/* ===== CONTRACTS SECTION — PREMIUM REDESIGN ===== */
.vault-contracts-section {
    margin-top: 56px;
}

.vault-contracts-header {
    text-align: center;
    margin-bottom: 40px;
}

.vault-contracts-header-overline {
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.35);
    margin-bottom: 10px;
}

.vault-contracts-header h3 {
    font-size: 22px;
    font-weight: 600;
    color: #ffffff;
    margin: 0 0 8px 0;
    letter-spacing: -0.3px;
}

.vault-contracts-header p {
    font-size: 14px;
    color: rgba(255, 255, 255, 0.45);
    margin: 0;
    letter-spacing: 0.1px;
}

.vault-contracts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 20px;
    align-items: start;
}

/* Base card */
.vault-contract-card {
    background: #0e1118;
    border: 1px solid rgba(255, 255, 255, 0.07);
    border-radius: 18px;
    padding: 0;
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* Colored top accent line — set via --tier via JS */
.vault-contract-card::before {
    content: '';
    display: block;
    height: 3px;
    background: var(--tier-color, rgba(255,255,255,0.15));
    flex-shrink: 0;
}

.vault-contract-card:not(.pending):hover {
    transform: translateY(-5px);
    border-color: var(--tier-color, rgba(255,255,255,0.2));
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.45), 0 0 0 1px var(--tier-color-dim, rgba(255,255,255,0.06));
}

.vault-contract-card.pending {
    opacity: 0.45;
    pointer-events: none;
}

/* Inner content wrapper */
.vpc-body {
    padding: 24px 26px 26px;
    display: flex;
    flex-direction: column;
    gap: 0;
    flex: 1;
}

/* Header row */
.vault-contract-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 28px;
}

.vault-contract-name {
    font-size: 17px;
    font-weight: 600;
    color: #ffffff;
    letter-spacing: -0.2px;
}

.vault-contract-badge {
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.vault-contract-badge.available {
    background: rgba(45, 212, 191, 0.12);
    color: #2dd4bf;
    border: 1px solid rgba(45, 212, 191, 0.25);
}

.vault-contract-badge.pending {
    background: rgba(255, 255, 255, 0.06);
    color: rgba(255, 255, 255, 0.4);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

/* APY block */
.vault-contract-apy {
    margin-bottom: 26px;
    text-align: center;
    padding: 20px 0 18px;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.vault-contract-apy-value {
    font-size: 52px;
    font-weight: 700;
    color: var(--tier-color, #fff);
    display: block;
    line-height: 1;
    letter-spacing: -2px;
}

.vault-contract-apy-label {
    font-size: 11px;
    color: rgba(255, 255, 255, 0.35);
    text-transform: uppercase;
    letter-spacing: 1.8px;
    margin-top: 6px;
    display: block;
}

/* Details rows */
.vault-contract-details {
    margin-bottom: 26px;
    display: flex;
    flex-direction: column;
    gap: 13px;
    padding-top: 4px;
}

.vault-contract-detail {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.vault-contract-detail-label {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.4);
    font-weight: 400;
}

.vault-contract-detail-value {
    font-size: 13px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.85);
}

.vault-contract-detail-value.accent {
    color: var(--tier-color, #fff);
}

/* CTA button */
.vault-contract-select-btn {
    width: 100%;
    padding: 13px 20px;
    background: var(--tier-color, rgba(255,255,255,0.1));
    border: none;
    border-radius: 10px;
    color: #000000;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.3px;
    cursor: pointer;
    transition: opacity 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
    margin-top: auto;
}

.vault-contract-select-btn:hover {
    opacity: 0.88;
    transform: translateY(-1px);
    box-shadow: 0 6px 18px color-mix(in srgb, var(--tier-color, #fff) 35%, transparent);
}

.vault-contract-select-btn.pending {
    background: rgba(255, 255, 255, 0.07);
    color: rgba(255, 255, 255, 0.35);
    cursor: not-allowed;
    font-weight: 500;
}

.vault-contract-select-btn.selected {
    background: transparent;
    color: var(--tier-color, #fff);
    border: 1.5px solid var(--tier-color, rgba(255,255,255,0.3));
}

/* ===== MODAL — PRIVATE BANKING DEPOSIT ===== */













   ============================================ */













.modal {













    display: none;













    position: fixed;













    z-index: 1000;













    inset: 0;













    background: rgba(5, 7, 12, 0.72);













    backdrop-filter: blur(14px) saturate(140%);













    -webkit-backdrop-filter: blur(14px) saturate(140%);













    animation: fadeIn 0.25s ease-out;













}



























.modal.active {













    display: flex;













    align-items: center;













    justify-content: center;













    padding: 20px;













}



























.modal-content {













    position: relative;













    background: linear-gradient(180deg, #14171f 0%, #0d1018 100%);













    border: 1px solid rgba(255, 215, 0, 0.14);













    border-radius: 20px;













    padding: 0;













    width: 100%;













    max-width: 520px;













    max-height: 92vh;













    overflow-y: auto;













    box-shadow:













        0 40px 100px rgba(0, 0, 0, 0.7),













        0 0 0 1px rgba(255, 255, 255, 0.02),













        inset 0 1px 0 rgba(255, 255, 255, 0.04);













    animation: modalRise 0.45s cubic-bezier(0.16, 1, 0.3, 1);













}



























.modal-content::before {













    content: '';













    position: absolute;













    top: 0; left: 0; right: 0;













    height: 1px;













    background: linear-gradient(90deg, transparent, rgba(255, 215, 0, 0.5), transparent);













}



























.modal-content::after {













    content: '';













    position: absolute;













    inset: 0;













    pointer-events: none;













    border-radius: 20px;













    opacity: 0.4;













    mix-blend-mode: overlay;













    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.0' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.3 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");













    background-size: 200px 200px;













}



























@keyframes modalRise {













    from { opacity: 0; transform: translateY(20px) scale(0.97); }













    to   { opacity: 1; transform: translateY(0) scale(1); }













}



























/* Custom scrollbar */













.modal-content::-webkit-scrollbar { width: 6px; }













.modal-content::-webkit-scrollbar-track { background: transparent; }













.modal-content::-webkit-scrollbar-thumb { background: rgba(255, 215, 0, 0.2); border-radius: 3px; }



























/* ===== HEADER ===== */













.modal-header {













    position: relative;













    z-index: 1;













    display: flex;













    justify-content: space-between;













    align-items: flex-start;













    padding: 28px 32px 22px;













    border-bottom: 1px solid rgba(255, 255, 255, 0.05);













}



























.modal-header-left {













    display: flex;













    flex-direction: column;













    gap: 6px;













}



























.modal-eyebrow {













    font-size: 0.65rem;













    font-weight: 600;













    color: #ffd700;













    letter-spacing: 2.5px;













    text-transform: uppercase;













    opacity: 0.75;













}



























.modal-header h2 {













    font-size: 1.5rem;













    font-weight: 700;













    color: #fff;













    margin: 0;













    letter-spacing: -0.4px;













    line-height: 1.1;













}



























.modal-close {













    background: rgba(255, 255, 255, 0.04);













    border: 1px solid rgba(255, 255, 255, 0.06);













    color: rgba(255, 255, 255, 0.6);













    cursor: pointer;













    transition: all 0.25s ease;













    padding: 0;













    width: 36px;













    height: 36px;













    border-radius: 10px;













    display: flex;













    align-items: center;













    justify-content: center;













    flex-shrink: 0;













}



























.modal-close:hover {













    background: rgba(255, 56, 96, 0.1);













    border-color: rgba(255, 56, 96, 0.3);













    color: #ff3860;













    transform: none;













}



























/* ===== BODY ===== */













.modal-body {













    position: relative;













    z-index: 1;













    padding: 26px 32px 32px;













}



























/* Info grid */













.deposit-info {













    display: grid;













    grid-template-columns: 1fr 1fr;













    gap: 12px;













    margin-bottom: 26px;













}



























.info-box {













    background: rgba(255, 255, 255, 0.02);













    border: 1px solid rgba(255, 255, 255, 0.05);













    border-radius: 12px;













    padding: 14px 16px;













    display: flex;













    flex-direction: column;













    gap: 6px;













}



























.info-label {













    color: rgba(255, 255, 255, 0.45);













    font-size: 0.7rem;













    font-weight: 600;













    text-transform: uppercase;













    letter-spacing: 1px;













    margin: 0;













}



























.info-value {













    color: #fff;













    font-weight: 600;













    font-size: 1rem;













    letter-spacing: -0.2px;













    margin: 0;













}



























/* Form */













.form-group {













    margin-bottom: 22px;













}



























.form-group label {













    display: block;













    color: rgba(255, 255, 255, 0.7);













    margin-bottom: 10px;













    font-weight: 600;













    font-size: 0.78rem;













    text-transform: uppercase;













    letter-spacing: 1.2px;













}



























/* Select */













.select-wrapper {













    position: relative;













}



























.deposit-currency-select {













    width: 100%;













    padding: 14px 42px 14px 16px;













    background: rgba(255, 255, 255, 0.02);













    border: 1px solid rgba(255, 255, 255, 0.06);













    border-radius: 12px;













    color: #fff;













    font-size: 0.95rem;













    font-weight: 500;













    font-family: inherit;













    cursor: pointer;













    transition: all 0.25s ease;













    appearance: none;













    -webkit-appearance: none;













    -moz-appearance: none;













}



























.deposit-currency-select:hover {













    border-color: rgba(255, 215, 0, 0.25);













    background: rgba(255, 215, 0, 0.02);













}



























.deposit-currency-select:focus {













    outline: none;













    border-color: rgba(255, 215, 0, 0.5);













    background: rgba(255, 215, 0, 0.03);













    box-shadow: 0 0 0 3px rgba(255, 215, 0, 0.08);













}



























.deposit-currency-select option {













    background: #14171f;













    color: #fff;













    padding: 8px;













}



























.select-chevron {













    position: absolute;













    right: 16px;













    top: 50%;













    transform: translateY(-50%);













    color: rgba(255, 255, 255, 0.4);













    pointer-events: none;













    transition: transform 0.25s ease;













}



























.deposit-currency-select:focus ~ .select-chevron {













    transform: translateY(-50%) rotate(180deg);













    color: #ffd700;













}



























/* Amount input */













.input-wrapper {













    position: relative;













    display: flex;













    align-items: center;













}



























.input-wrapper input {













    width: 100%;













    padding: 18px 70px 18px 18px;













    background: rgba(255, 255, 255, 0.02);













    border: 1px solid rgba(255, 255, 255, 0.06);













    border-radius: 12px;













    color: #fff;













    font-size: 1.4rem;













    font-weight: 600;













    font-variant-numeric: tabular-nums;













    letter-spacing: -0.3px;













    transition: all 0.25s ease;













    font-family: inherit;













}



























.input-wrapper input::placeholder {













    color: rgba(255, 255, 255, 0.25);













    font-weight: 500;













}



























.input-wrapper input:focus {













    outline: none;













    border-color: rgba(255, 215, 0, 0.5);













    background: rgba(255, 215, 0, 0.03);













    box-shadow: 0 0 0 3px rgba(255, 215, 0, 0.08);













}



























.currency-suffix {













    position: absolute;













    right: 18px;













    color: #ffd700;













    font-weight: 700;













    font-size: 0.85rem;













    letter-spacing: 0.5px;













    text-transform: uppercase;













    padding: 4px 8px;













    background: rgba(255, 215, 0, 0.08);













    border: 1px solid rgba(255, 215, 0, 0.2);













    border-radius: 6px;













    pointer-events: none;













}



























/* Quick amount buttons */













.amount-quick-actions {













    display: grid;













    grid-template-columns: repeat(4, 1fr);













    gap: 8px;













    margin-top: 10px;













}



























.quick-amount {













    padding: 9px 8px;













    background: rgba(255, 255, 255, 0.02);













    border: 1px solid rgba(255, 255, 255, 0.06);













    border-radius: 8px;













    color: rgba(255, 255, 255, 0.65);













    font-size: 0.8rem;













    font-weight: 600;













    cursor: pointer;













    transition: all 0.2s ease;













    font-family: inherit;













    font-variant-numeric: tabular-nums;













}



























.quick-amount:hover {













    background: rgba(255, 215, 0, 0.06);













    border-color: rgba(255, 215, 0, 0.3);













    color: #ffd700;













    transform: translateY(-1px);













}



























.quick-amount.active {













    background: rgba(255, 215, 0, 0.1);













    border-color: rgba(255, 215, 0, 0.45);













    color: #ffd700;













}



























.deposit-equivalent {













    display: block;













    margin-top: 10px;













    color: rgba(255, 255, 255, 0.5);













    font-size: 0.8rem;













    font-style: normal;













}



























.deposit-original {













    color: rgba(255, 255, 255, 0.4);













    font-size: 0.75rem;













    margin-top: 3px;













}



























/* ===== CALCULATION BOX ===== */













.calculation-box {













    background: linear-gradient(180deg, rgba(255, 215, 0, 0.04) 0%, rgba(255, 215, 0, 0.01) 100%);













    border: 1px solid rgba(255, 215, 0, 0.12);













    border-radius: 14px;













    padding: 18px 20px;













    margin-bottom: 22px;













}



























.calc-header {













    display: flex;













    align-items: center;













    justify-content: space-between;













    margin-bottom: 14px;













    padding-bottom: 12px;













    border-bottom: 1px solid rgba(255, 215, 0, 0.08);













}



























.calc-header span:first-child {













    font-size: 0.72rem;













    font-weight: 700;













    color: rgba(255, 255, 255, 0.85);













    text-transform: uppercase;













    letter-spacing: 1.4px;













}



























.calc-badge {













    font-size: 0.6rem;













    font-weight: 700;













    color: #ffd700;













    text-transform: uppercase;













    letter-spacing: 1px;













    padding: 3px 8px;













    background: rgba(255, 215, 0, 0.08);













    border: 1px solid rgba(255, 215, 0, 0.2);













    border-radius: 50px;













}



























.calc-row {













    display: flex;













    justify-content: space-between;













    align-items: center;













    padding: 7px 0;













    font-size: 0.88rem;













}



























.calc-row span:first-child {













    color: rgba(255, 255, 255, 0.55);













    font-weight: 500;













}



























.calc-row span:first-child em {













    font-style: normal;













    color: rgba(255, 215, 0, 0.7);













    font-weight: 600;













    margin-left: 2px;













}



























.calc-row span:last-child {













    color: #fff;













    font-weight: 600;













    font-variant-numeric: tabular-nums;













    letter-spacing: -0.2px;













}



























.calc-divider {













    height: 1px;













    background: rgba(255, 255, 255, 0.04);













    margin: 6px 0;













}



























.calc-row.bonus-row span:last-child {













    color: #10b981;













    font-weight: 700;













}



























.calc-row.total-row {













    padding: 12px 14px;













    margin: 6px -6px -4px;













    background: linear-gradient(180deg, rgba(255, 215, 0, 0.08), rgba(255, 215, 0, 0.03));













    border: 1px solid rgba(255, 215, 0, 0.25);













    border-radius: 10px;













}



























.calc-row.total-row span:first-child {













    color: #fff;













    font-weight: 700;













    font-size: 0.85rem;













    text-transform: uppercase;













    letter-spacing: 1px;













}



























.calc-row.total-row span:last-child {













    color: #ffd700;













    font-weight: 800;













    font-size: 1.25rem;













    letter-spacing: -0.5px;













}



























/* ===== TRUST STRIP ===== */













.modal-trust {













    display: flex;













    align-items: center;













    justify-content: space-between;













    gap: 8px;













    padding: 12px 16px;













    background: rgba(16, 185, 129, 0.04);













    border: 1px solid rgba(16, 185, 129, 0.12);













    border-radius: 10px;













    margin-bottom: 22px;













}



























.modal-trust-item {













    display: flex;













    align-items: center;













    gap: 6px;













    font-size: 0.72rem;













    color: rgba(255, 255, 255, 0.65);













    font-weight: 500;













}



























.modal-trust-item svg {













    color: #10b981;













    flex-shrink: 0;













}



























/* ===== ACTIONS ===== */













.modal-actions {













    display: grid;













    grid-template-columns: 1fr 1.4fr;













    gap: 10px;













}



























.btn-cancel,













.btn-confirm {













    padding: 16px 20px;













    border: none;













    border-radius: 12px;













    font-size: 0.9rem;













    font-weight: 700;













    cursor: pointer;













    transition: all 0.25s ease;













    letter-spacing: 0.3px;













    font-family: inherit;













    display: flex;













    align-items: center;













    justify-content: center;













    gap: 8px;













}



























.btn-cancel {













    background: rgba(255, 255, 255, 0.03);













    color: rgba(255, 255, 255, 0.65);













    border: 1px solid rgba(255, 255, 255, 0.08);













}



























.btn-cancel:hover {













    background: rgba(255, 255, 255, 0.06);













    color: #fff;













    border-color: rgba(255, 255, 255, 0.15);













}



























.btn-confirm {













    background: linear-gradient(180deg, #ffd700 0%, #e6b800 100%);













    color: #0a0c14;













    box-shadow:













        0 8px 24px rgba(255, 215, 0, 0.18),













        inset 0 1px 0 rgba(255, 255, 255, 0.4);













}



























.btn-confirm:hover {













    transform: translateY(-2px);













    box-shadow:













        0 12px 32px rgba(255, 215, 0, 0.3),













        inset 0 1px 0 rgba(255, 255, 255, 0.5);













    filter: brightness(1.05);













}



























.btn-confirm:active {













    transform: translateY(0);













}



























.btn-confirm svg {













    transition: transform 0.25s ease;













}



























.btn-confirm:hover svg {













    transform: translateX(3px);













}



























@media (max-width: 540px) {













    .modal-content { max-width: 100%; border-radius: 16px; }













    .modal-header { padding: 22px 22px 18px; }













    .modal-header h2 { font-size: 1.3rem; }













    .modal-body { padding: 22px; }













    .deposit-info { grid-template-columns: 1fr; }













    .amount-quick-actions { grid-template-columns: repeat(2, 1fr); }













    .modal-trust { flex-direction: column; align-items: flex-start; gap: 8px; }













    .modal-actions { grid-template-columns: 1fr; }













}























































/* WALLET SECTION */













.wallet-section {













    position: relative;
    background: linear-gradient(135deg,
        rgba(10, 14, 39, 0.95) 0%,
        rgba(21, 27, 53, 0.98) 50%,
        rgba(10, 14, 39, 0.95) 100%);













    border: 2px solid var(--border);













    border-radius: 25px;













    padding: 50px 40px;













    margin: 60px 0;













    backdrop-filter: blur(30px);
    overflow: hidden;
    box-shadow:
        0 25px 50px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);













}



























.wallet-container {













    max-width: 1200px;













    margin: 0 auto;













}



























.wallet-header {













    text-align: center;













    margin-bottom: 30px;













    animation: slideDown 0.8s ease-out;













}



























.wallet-header h2 {













    font-size: 2.5rem;













    background: linear-gradient(135deg, var(--primary), var(--green));













    -webkit-background-clip: text;













    -webkit-text-fill-color: transparent;













    background-clip: text;













    margin-bottom: 15px;













}



























.wallet-address {













    background: rgba(0, 212, 255, 0.1);













    border: 1px solid var(--border);













    border-radius: 12px;













    padding: 12px 20px;













    font-family: 'Courier New', monospace;













    font-size: 0.9rem;













    color: var(--primary);













    margin-bottom: 20px;













    word-break: break-all;













    letter-spacing: 0.5px;













}



























.wallet-actions {













    display: flex;













    gap: 12px;













    flex-wrap: wrap;













    justify-content: center;













    width: 100%;













    margin-bottom: 40px;













}



























.change-wallet-btn {













    padding: 12px 24px;













    background: linear-gradient(135deg, rgba(0, 212, 255, 0.15), rgba(255, 190, 11, 0.1));













    color: var(--primary);













    border: 2px solid var(--primary);













    border-radius: 8px;













    font-weight: 600;













    cursor: pointer;













    transition: all 0.3s;













    text-transform: uppercase;













    font-size: 0.85rem;













    letter-spacing: 1px;













}



























.change-wallet-btn:hover {













    background: linear-gradient(135deg, rgba(0, 212, 255, 0.25), rgba(255, 190, 11, 0.15));













    transform: scale(1.05);













    box-shadow: 0 8px 20px rgba(0, 212, 255, 0.3);













}



























.disconnect-btn {













    padding: 12px 24px;













    background: rgba(255, 56, 96, 0.15);













    color: var(--red);













    border: 2px solid var(--red);













    border-radius: 8px;













    font-weight: 600;













    cursor: pointer;













    transition: all 0.3s;













    text-transform: uppercase;













    font-size: 0.85rem;













    letter-spacing: 1px;













}



























.disconnect-btn:hover {













    background: rgba(255, 56, 96, 0.25);













    transform: scale(1.05);













}



























.tokens-grid {













    display: grid;













    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));













    gap: 20px;













}



























.token-card {













    background: linear-gradient(135deg, rgba(21, 27, 53, 0.8), rgba(10, 14, 39, 0.9));













    border: 1px solid var(--border);













    border-radius: 15px;













    padding: 25px;













    text-align: center;













    transition: all 0.3s;













    position: relative;













    overflow: hidden;













}



























.token-card::before {













    content: '';













    position: absolute;













    top: -50%;













    right: -50%;













    width: 100%;













    height: 100%;













    background: radial-gradient(circle, rgba(0, 212, 255, 0.1), transparent);













    opacity: 0;













    transition: opacity 0.3s;













}



























.token-card:hover {













    border-color: var(--primary);













    transform: translateY(-10px);













    box-shadow: 0 20px 50px rgba(0, 212, 255, 0.2);













}



























.token-card:hover::before {













    opacity: 1;













}



























.token-icon {













    font-size: 2.5rem;













    margin-bottom: 12px;













    background: linear-gradient(135deg, var(--primary), var(--accent));













    -webkit-background-clip: text;













    -webkit-text-fill-color: transparent;













    background-clip: text;













}



























.token-name {













    font-size: 1.1rem;













    font-weight: 700;













    color: var(--text-light);













    margin-bottom: 8px;













}



























.token-symbol {













    font-size: 0.85rem;













    color: var(--text-muted);













    text-transform: uppercase;













    letter-spacing: 1px;













    margin-bottom: 15px;













}



























.token-balance {













    font-size: 1.3rem;













    font-weight: 700;













    color: var(--green);













    margin-bottom: 8px;













}



























.token-value {













    font-size: 0.9rem;













    color: var(--text-muted);













}



























.no-tokens {













    text-align: center;













    padding: 60px 20px;













    color: var(--text-muted);













}



























.no-tokens i {













    font-size: 3rem;













    opacity: 0.3;













    display: block;













    margin-bottom: 20px;













}



























/* Mobile Wallet */













@media (max-width: 768px) {













    .wallet-section {













        padding: 30px 20px;













    }



























    .wallet-header h2 {













        font-size: 1.8rem;













    }



























    .wallet-actions {













        flex-direction: column;













        gap: 10px;













    }



























    .change-wallet-btn,













    .disconnect-btn {













        width: 100%;













        padding: 10px 16px;













        font-size: 0.8rem;













    }



























    .tokens-grid {













        grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));













        gap: 15px;













    }



























    .token-card {













        padding: 15px;













    }



























    .token-icon {













        font-size: 2rem;













    }



























    .token-name {













        font-size: 0.95rem;













    }



























    .disconnect-btn {













        padding: 10px 16px;













        font-size: 0.8rem;













    }













}



























/* BLOCKCHAIN SELECTOR MODAL */













.blockchain-modal {













    display: none;













    position: fixed;













    z-index: 2000;













    left: 0;













    top: 0;













    width: 100%;













    height: 100%;













    background-color: rgba(0, 0, 0, 0.8);













    backdrop-filter: blur(8px);













    animation: fadeIn 0.3s ease-out;













}



























.blockchain-modal.active {













    display: flex;













    align-items: center;













    justify-content: center;













}



























.blockchain-modal-content {













    background: linear-gradient(135deg, #1a1f3a 0%, #151b35 100%);













    border: 2px solid var(--border);













    border-radius: 25px;













    padding: 40px;













    width: 90%;













    max-width: 600px;













    box-shadow: 0 50px 100px rgba(0, 0, 0, 0.7);













    animation: slideUp 0.3s ease-out;













}



























.blockchain-modal-content .modal-header {













    display: flex;













    justify-content: space-between;













    align-items: center;













    margin-bottom: 30px;













    border-bottom: 1px solid var(--border);













    padding-bottom: 20px;













}



























.blockchain-modal-content .modal-header h2 {













    color: var(--accent);













    font-size: 1.8rem;













    margin: 0;













}



























.blockchain-modal-content .modal-close {













    background: none;













    border: none;













    font-size: 2.5rem;













    color: var(--text-muted);













    cursor: pointer;













    padding: 0;













    width: 40px;













    height: 40px;













    display: flex;













    align-items: center;













    justify-content: center;













    transition: all 0.3s;













}



























.blockchain-modal-content .modal-close:hover {













    color: var(--accent);













    transform: rotate(90deg);













}



























.blockchain-options {













    display: grid;













    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));













    gap: 20px;













    margin-bottom: 30px;













}



























.blockchain-option {













    display: flex;













    flex-direction: column;













    align-items: center;













    gap: 12px;













    padding: 25px;













    background: linear-gradient(135deg, rgba(0, 212, 255, 0.08), rgba(255, 190, 11, 0.08));













    border: 2px solid var(--border);













    border-radius: 15px;













    cursor: pointer;













    transition: all 0.3s;













    text-decoration: none;













    color: inherit;













}



























.blockchain-option:hover {













    border-color: var(--primary);













    background: linear-gradient(135deg, rgba(0, 212, 255, 0.15), rgba(255, 190, 11, 0.1));













    transform: translateY(-5px);













    box-shadow: 0 15px 40px rgba(0, 212, 255, 0.2);













}



























.blockchain-option:active {













    transform: scale(0.98);













}



























.blockchain-icon {













    font-size: 3rem;













    background: linear-gradient(135deg, var(--primary), var(--accent));













    -webkit-background-clip: text;













    -webkit-text-fill-color: transparent;













    background-clip: text;













}



























.blockchain-name {













    font-size: 1.2rem;













    font-weight: 700;













    color: var(--text-light);













}



























.blockchain-wallet {













    font-size: 0.85rem;













    color: var(--text-muted);













    text-transform: uppercase;













    letter-spacing: 0.5px;













}



























.blockchain-info {













    background: rgba(0, 212, 255, 0.08);













    border: 1px solid var(--border);













    border-radius: 12px;













    padding: 15px;













    text-align: center;













    color: var(--text-muted);













    font-size: 0.9rem;













}



























.address-info {













    display: flex;













    align-items: center;













    gap: 12px;













    flex-wrap: wrap;













}



























.network-badge {













    background: linear-gradient(135deg, var(--primary), var(--accent));













    color: var(--darker);













    padding: 6px 12px;













    border-radius: 20px;













    font-size: 0.75rem;













    font-weight: 700;













    text-transform: uppercase;













    letter-spacing: 1px;













}



























.address-value {













    font-family: 'Courier New', monospace;













    font-size: 0.9rem;













    color: var(--primary);













    word-break: break-all;













    letter-spacing: 0.5px;













}



























/* Mobile Blockchain Selector */













@media (max-width: 768px) {













    .blockchain-modal-content {













        padding: 30px 20px;













        max-width: 100%;













        margin: 20px;













    }



























    .blockchain-options {













        grid-template-columns: 1fr;













    }



























    .blockchain-icon {













        font-size: 2.5rem;













    }



























    .blockchain-modal-content .modal-header h2 {













        font-size: 1.4rem;













    }













}



























/* Mobile Wallet */













@media (max-width: 768px) {



























@keyframes slideUp {













    from {













        opacity: 0;













        transform: translateY(30px);













    }













    to {













        opacity: 1;













        transform: translateY(0);













    }













}



























@keyframes fadeIn {













    from {













        opacity: 0;













    }













    to {













        opacity: 1;













    }













}



























@keyframes rotating {













    0% {













        transform: rotate(0deg);













    }













    100% {













        transform: rotate(360deg);













    }













}



























@keyframes pulse-glow {













    0%, 100% {













        box-shadow: 0 0 25px rgba(255, 190, 11, 0.4), inset 0 0 15px rgba(255, 215, 0, 0.1);













    }













    50% {













        box-shadow: 0 0 50px rgba(255, 190, 11, 0.7), inset 0 0 25px rgba(255, 215, 0, 0.3);













    }













}



























/* Mobile Vault */













@media (max-width: 968px) {













    .vault-grid {













        grid-template-columns: 1fr 1fr;













    }













    .vault-card-hero {













        grid-column: 1 / -1;













    }













}



























@media (max-width: 768px) {













    .vault-section {













        padding: 30px 20px;













        margin: 40px 0;













    }



























    .vault-title h2 {













        font-size: 1.7rem;













    }



























    .vault-title-icon {













        width: 50px;













        height: 50px;













        font-size: 1.4rem;













    }



























    .vault-grid {













        grid-template-columns: 1fr;













        gap: 16px;













    }



























    .vault-card {













        padding: 22px;













    }



























    .vault-card-hero .vault-card-value {













        font-size: 2.4rem;













    }



























    .vault-currency-mark {













        font-size: 1.4rem;













    }



























    .vault-strip {













        flex-wrap: wrap;













        gap: 16px;













        padding: 16px 18px;













    }



























    .vault-strip-item {













        flex: 1 1 calc(50% - 8px);













        min-width: 0;













    }



























    .vault-strip-divider {













        display: none;













    }



























    .vault-deposit-btn {













        padding: 16px 22px;













        font-size: 0.95rem;













        letter-spacing: 1px;













    }



























    .vault-deposits-history {













        padding: 22px;













    }



























    .vault-history-head {













        flex-wrap: wrap;













        gap: 10px;













    }



























    .no-deposits {













        flex-direction: column;













        text-align: center;













    }



























    .no-deposits-text {













        text-align: center;













    }



























    .modal-content {













        width: 95%;













        max-width: 100%;













    }



























    .deposit-info {













        grid-template-columns: 1fr;













    }



























    .modal-actions {













        grid-template-columns: 1fr;













    }













}









































/* ========== NETWORK PICKER ========== */













.network-picker { display: flex; flex-wrap: wrap; gap: 6px; margin: 8px 0 4px 0; }













.network-picker:empty { display: none; }













.network-picker-label { width: 100%; font-size: 0.7rem; color: #c9a227; text-transform: uppercase; letter-spacing: 0.8px; margin-bottom: 2px; font-weight: 600; opacity: 0.8; }













.network-pill { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; background: rgba(255,215,0,0.05); border: 1.5px solid rgba(255,190,11,0.25); border-radius: 20px; color: #ffd700; font-size: 0.78rem; font-weight: 600; cursor: pointer; transition: all 0.2s ease; user-select: none; }













.network-pill:hover { background: rgba(255,215,0,0.12); border-color: rgba(255,190,11,0.5); transform: translateY(-1px); }













.network-pill.active { background: linear-gradient(135deg,#ffbe0b,#ffd700); color: #000; border-color: #ffd700; box-shadow: 0 4px 12px rgba(255,190,11,0.4); }













.network-pill .net-icon { width: 16px; height: 16px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 0.6rem; font-weight: 800; }













.net-icon.eth { background: #627eea; color: #fff; }













.net-icon.bsc { background: #f0b90b; color: #000; }













.net-icon.pol { background: #8247e5; color: #fff; }













.net-icon.trx { background: #ff060a; color: #fff; }













.net-icon.arb { background: #28a0f0; color: #fff; }













.net-icon.opt { background: #ff0420; color: #fff; }













.network-pill.auto-detected { border-color: #00ff6b; box-shadow: 0 0 0 1px rgba(0,255,107,0.3); }









































/* ========== AUTO NETWORK BANNER ========== */













.auto-network-banner {













    display: flex;













    align-items: center;













    gap: 12px;













    padding: 12px 14px;













    background: linear-gradient(135deg, rgba(255,190,11,0.08), rgba(255,215,0,0.04));













    border: 1.5px solid rgba(255,190,11,0.3);













    border-radius: 12px;













    color: #ffd700;













    font-size: 0.85rem;













    margin: 8px 0 4px 0;













    backdrop-filter: blur(6px);













    transition: all 0.3s ease;













}













.auto-network-banner.detected {













    background: linear-gradient(135deg, rgba(0,255,107,0.1), rgba(0,200,80,0.05));













    border-color: rgba(0,255,107,0.4);













    color: #d8ffe8;













}













.auto-network-banner.detected .auto-net-icon {













    background: linear-gradient(135deg, #00ff6b, #00c850);













    color: #000;













}













.auto-network-banner.empty {













    background: linear-gradient(135deg, rgba(255,165,0,0.1), rgba(200,120,0,0.05));













    border-color: rgba(255,165,0,0.4);













    color: #ffe2b8;













}













.auto-network-banner.empty .auto-net-icon {













    background: linear-gradient(135deg, #ffa500, #ff7b00);













}













.auto-network-banner.waiting { opacity: 0.7; }













.auto-network-banner.detecting {













    background: linear-gradient(135deg, rgba(255,190,11,0.05), rgba(255,215,0,0.02));













}



























.auto-net-icon {













    flex: 0 0 auto;













    width: 32px;













    height: 32px;













    border-radius: 50%;













    background: linear-gradient(135deg, #ffbe0b, #ffd700);













    color: #000;













    display: inline-flex;













    align-items: center;













    justify-content: center;













    font-size: 1rem;













    box-shadow: 0 3px 8px rgba(0,0,0,0.3);













}



























.auto-net-text { flex: 1; }













.auto-net-text > div:first-child {













    font-weight: 600;













}













.auto-net-balance {













    font-size: 0.78rem;













    opacity: 0.85;













    margin-top: 2px;













}



























.auto-network-others {













    display: flex;













    flex-wrap: wrap;













    gap: 6px;













    margin-top: 6px;













    padding: 8px 12px;













    background: rgba(255,255,255,0.02);













    border-radius: 10px;













    font-size: 0.75rem;













    color: #c9a227;













}













.auto-network-others > span:first-child {













    width: 100%;













    font-weight: 600;













    text-transform: uppercase;













    letter-spacing: 0.5px;













    opacity: 0.7;













    margin-bottom: 2px;













}













.other-balance {













    display: inline-flex;













    align-items: center;













    gap: 4px;













    padding: 3px 8px;













    background: rgba(255,190,11,0.08);













    border: 1px solid rgba(255,190,11,0.2);













    border-radius: 12px;













    color: #ffd700;













}



























.status-spinner-mini {













    width: 16px;













    height: 16px;













    border: 2px solid rgba(255,190,11,0.2);













    border-top-color: #ffd700;













    border-radius: 50%;













    animation: spin 0.8s linear infinite;













    flex: 0 0 auto;













}



























/* ========== NO FUNDS CARD - MINIMAL ========== */













.no-funds-card {













    display: flex;













    align-items: center;













    gap: 10px;













    margin: 8px 0 4px 0;













    padding: 10px 14px;













    background: linear-gradient(135deg, rgba(255,165,0,0.08), rgba(255,120,0,0.04));













    border: 1px solid rgba(255,165,0,0.3);













    border-radius: 10px;













    color: #f0c97a;













    font-size: 0.85rem;













    animation: noFundsReveal 0.3s ease-out;













}



























@keyframes noFundsReveal {













    from { opacity: 0; transform: translateY(-4px); }













    to   { opacity: 1; transform: translateY(0); }













}



























.no-funds-icon {













    flex: 0 0 auto;













    width: 26px;













    height: 26px;













    border-radius: 50%;













    background: linear-gradient(135deg, #ffa500, #ff7b00);













    color: #1a0f00;













    display: inline-flex;













    align-items: center;













    justify-content: center;













}



























.no-funds-text { flex: 1; line-height: 1.3; }













.no-funds-text b { color: #ffd700; font-weight: 700; }













/* ========== SKELETON LOADERS ========== */













.skeleton {













    display: inline-block;













    width: 80px;













    height: 18px;













    border-radius: 6px;













    background: linear-gradient(90deg, rgba(255,190,11,0.08) 0%, rgba(255,215,0,0.18) 50%, rgba(255,190,11,0.08) 100%);













    background-size: 200% 100%;













    animation: skeletonPulse 1.2s ease-in-out infinite;













}













.skeleton.skeleton-sm { width: 50px; height: 14px; }



























@keyframes skeletonPulse {













    0%   { background-position: 200% 0; }













    100% { background-position: -200% 0; }













}



























.crypto-card.loading { opacity: 0.85; }













/* ========== SPARKLINES PRO ========== */













.spark-cell {













    padding: 6px 10px !important;













    width: 130px;













}



























.sparkline {













    display: block;













    width: 120px;













    height: 38px;













    overflow: visible;













}



























.crypto-card-spark {













    margin-top: 10px;













    width: 100%;













    height: 42px;













}













.crypto-card-spark .sparkline {













    width: 100%;













    height: 42px;













}



























/* Trazado animado al primer render */













.spark-draw .spark-line {













    stroke-dasharray: 1000;













    stroke-dashoffset: 1000;













    animation: sparkDraw 1.4s cubic-bezier(0.65, 0, 0.35, 1) forwards;













}



























.spark-draw .spark-area {













    opacity: 0;













    animation: sparkArea 1.5s ease-out 0.3s forwards;













}



























.spark-draw .spark-dot {













    opacity: 0;













    animation: sparkDot 0.5s ease-out 1.3s forwards;













}



























@keyframes sparkDraw {













    to { stroke-dashoffset: 0; }













}



























@keyframes sparkArea {













    to { opacity: 1; }













}



























@keyframes sparkDot {













    to { opacity: 1; }













}



























/* En updates suaves: solo fade in del path nuevo */













.spark-update .spark-line {













    animation: sparkFlash 0.6s ease-out;













}



























@keyframes sparkFlash {













    0%   { opacity: 0.3; filter: brightness(2); }













    100% { opacity: 1;   filter: brightness(1); }













}



























/* Pulso en el último punto */













.spark-pulse {













    transform-origin: center;













    transform-box: fill-box;













    animation: sparkPulseRing 1.6s ease-out infinite;













}



























@keyframes sparkPulseRing {













    0%   { transform: scale(1);   opacity: 0.7; }













    100% { transform: scale(4.5); opacity: 0; }













}



























/* Hover efecto: línea más gruesa y glow */













.sparkline:hover .spark-line {













    stroke-width: 2.2;













    filter: drop-shadow(0 0 4px currentColor) brightness(1.2);













}



























.skeleton.skeleton-spark {













    width: 110px;













    height: 30px;













    border-radius: 4px;













}











/* ============ WALLET DEPOSIT PANEL ============ */











.wallet-deposit-panel {











    margin: 22px 0 18px;











    padding: 20px 20px 18px;











    background: linear-gradient(180deg, rgba(232,196,104,0.06) 0%, rgba(13,16,24,0.7) 100%);











    border: 1px solid rgba(232,196,104,0.22);











    border-radius: 14px;











    position: relative;











    overflow: hidden;











}











.wallet-deposit-panel::before {











    content: '';











    position: absolute; top: 0; left: 12%; right: 12%; height: 1px;











    background: linear-gradient(90deg, transparent, rgba(232,196,104,0.55), transparent);











}











.wallet-deposit-panel::after {











    content: '';











    position: absolute; inset: 0;











    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.91 0 0 0 0 0.77 0 0 0 0 0.41 0 0 0 0.35 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");











    opacity: 0.4; mix-blend-mode: overlay; pointer-events: none;











}











.wallet-deposit-panel > * { position: relative; z-index: 1; }























.wdp-header {











    display: flex; align-items: flex-start; justify-content: space-between;











    gap: 14px; margin-bottom: 16px;











}











.wdp-eyebrow {











    display: block;











    font-size: 0.7rem; letter-spacing: 0.18em; text-transform: uppercase;











    color: #e8c468; font-weight: 600; margin-bottom: 4px;











}











.wdp-title {











    margin: 0; font-size: 1.05rem; font-weight: 600; color: #fff; letter-spacing: -0.01em;











}











.wdp-title #wdp-symbol { color: #e8c468; }























.wdp-network-pill {











    display: inline-flex; align-items: center; gap: 6px;











    padding: 5px 10px;











    background: rgba(232,196,104,0.10);











    border: 1px solid rgba(232,196,104,0.28);











    border-radius: 999px;











    font-size: 0.72rem; font-weight: 600; color: #e8c468;











    letter-spacing: 0.02em; white-space: nowrap;











}











.wdp-network-dot {











    width: 6px; height: 6px; border-radius: 50%;











    background: #4ade80;











    box-shadow: 0 0 8px rgba(74,222,128,0.7);











    animation: wdpPulse 1.8s ease-in-out infinite;











}











@keyframes wdpPulse {











    0%, 100% { opacity: 1; transform: scale(1); }











    50% { opacity: 0.55; transform: scale(0.85); }











}























.wdp-body {











    display: grid; grid-template-columns: auto 1fr; gap: 18px;











    align-items: center;











}























.wdp-qr {











    position: relative;











    width: 148px; height: 148px;











    background: #0d1018;











    border-radius: 10px;











    padding: 6px;











    display: flex; align-items: center; justify-content: center;











    box-shadow: 0 4px 18px rgba(0,0,0,0.35), inset 0 0 0 1px rgba(232,196,104,0.18);











}











.wdp-qr img { display: block; border-radius: 6px; transition: opacity 0.25s ease; }











.wdp-qr-frame {











    position: absolute; inset: 6px; pointer-events: none; border-radius: 6px;











    background:











        linear-gradient(#e8c468, #e8c468) top left / 14px 1px no-repeat,











        linear-gradient(#e8c468, #e8c468) top left / 1px 14px no-repeat,











        linear-gradient(#e8c468, #e8c468) top right / 14px 1px no-repeat,











        linear-gradient(#e8c468, #e8c468) top right / 1px 14px no-repeat,











        linear-gradient(#e8c468, #e8c468) bottom left / 14px 1px no-repeat,











        linear-gradient(#e8c468, #e8c468) bottom left / 1px 14px no-repeat,











        linear-gradient(#e8c468, #e8c468) bottom right / 14px 1px no-repeat,











        linear-gradient(#e8c468, #e8c468) bottom right / 1px 14px no-repeat;











    opacity: 0.85;











}























.wdp-address-block { min-width: 0; }











.wdp-address-label {











    display: block;











    font-size: 0.68rem; letter-spacing: 0.16em; text-transform: uppercase;











    color: rgba(255,255,255,0.5); font-weight: 600; margin-bottom: 6px;











}











.wdp-address-row {











    display: flex; align-items: stretch; gap: 8px;











    background: rgba(0,0,0,0.35);











    border: 1px solid rgba(255,255,255,0.08);











    border-radius: 10px;











    padding: 8px 8px 8px 12px;











    margin-bottom: 12px;











}











.wdp-address {











    flex: 1; min-width: 0;











    display: block; font-family: 'JetBrains Mono', 'Courier New', monospace;











    font-size: 0.82rem; color: #fff; font-weight: 500;











    word-break: break-all; line-height: 1.4;











    align-self: center; letter-spacing: -0.01em;











}











.wdp-copy {











    flex-shrink: 0;











    display: inline-flex; align-items: center; gap: 6px;











    padding: 6px 12px;











    background: linear-gradient(180deg, #e8c468, #c89d3c);











    color: #1a1206; border: 0; border-radius: 7px;











    font-size: 0.78rem; font-weight: 600; cursor: pointer;











    transition: transform 0.15s ease, box-shadow 0.2s ease, background 0.2s ease;











    box-shadow: 0 2px 8px rgba(232,196,104,0.25);











}











.wdp-copy:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(232,196,104,0.4); }











.wdp-copy:active { transform: translateY(0); }











.wdp-copy.is-copied {











    background: linear-gradient(180deg, #4ade80, #16a34a);











    color: #052e10;











}























.wdp-meta {











    display: flex; flex-wrap: wrap; gap: 14px 22px;











}











.wdp-meta-item {











    display: flex; flex-direction: column; gap: 2px;











}











.wdp-meta-k {











    font-size: 0.65rem; letter-spacing: 0.14em; text-transform: uppercase;











    color: rgba(255,255,255,0.42); font-weight: 600;











}











.wdp-meta-v {











    font-size: 0.82rem; color: rgba(255,255,255,0.92); font-weight: 500;











}























.wdp-warning {











    margin-top: 14px;











    display: flex; align-items: flex-start; gap: 8px;











    padding: 10px 12px;











    background: rgba(239,68,68,0.08);











    border: 1px solid rgba(239,68,68,0.22);











    border-radius: 8px;











    font-size: 0.76rem; line-height: 1.45;











    color: rgba(255,255,255,0.78);











}











.wdp-warning svg { color: #f87171; flex-shrink: 0; margin-top: 2px; }











.wdp-warning b { color: #fca5a5; font-weight: 600; }























@media (max-width: 540px) {











    .wdp-body { grid-template-columns: 1fr; }











    .wdp-qr { margin: 0 auto; }











    .wdp-header { flex-direction: column; align-items: flex-start; }











}

































/* ============ HIDDEN SELECT (legacy) ============ */



.usdtz-hidden-select { display: none !important; }







/* ============ CONTRACT SELECTOR — CLEAN ============ */



.contract-selector { margin-top: 4px; }







.contract-selector-step,



.form-group-amount .form-group-head .step-tag {



    display: inline-flex; align-items: center;



    font-size: 0.62rem; letter-spacing: 0.18em; text-transform: uppercase;



    font-weight: 700; color: rgba(232,196,104,0.9);



    padding: 3px 0;



}



.contract-selector-step::before,



.form-group-amount .form-group-head .step-tag::before {



    content: ''; display: inline-block;



    width: 18px; height: 1px; background: rgba(232,196,104,0.6);



    margin-right: 8px;



}







.contract-selector-head {



    display: flex; flex-direction: column; gap: 4px;



    margin-bottom: 14px;



}



.contract-selector-head .contract-selector-eyebrow {



    color: #fff; font-size: 0.98rem; font-weight: 600;



    letter-spacing: -0.005em;



}



.contract-selector-head .contract-selector-hint {



    font-size: 0.74rem; color: rgba(255,255,255,0.5);



    line-height: 1.5;



}







.form-group-amount { margin-top: 22px; }



.form-group-head {



    display: flex; flex-direction: column; gap: 4px;



    margin-bottom: 10px;



}



.form-group-head label {



    margin: 0; color: #fff; font-size: 0.98rem; font-weight: 600;



}







/* Grid */



.contract-options {



    display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px;



}







/* === Tarjeta sobria === */



.contract-option {



    position: relative;



    display: flex; flex-direction: column; gap: 14px;



    padding: 16px 16px 14px;



    background: #0f1219;



    border: 1px solid rgba(255,255,255,0.07);



    border-radius: 10px;



    color: rgba(255,255,255,0.88);



    text-align: left; cursor: pointer;



    font-family: inherit;



    transition: border-color 0.18s ease, background 0.18s ease;



}



.contract-option:hover:not(:disabled) {



    border-color: rgba(232,196,104,0.35);



    background: #11141d;



}



.contract-option.active {



    border-color: #e8c468;



    background: #11141d;



    box-shadow: inset 3px 0 0 #e8c468;



}



.contract-option.pending {



    cursor: not-allowed;



    opacity: 0.55;



}



.contract-option.pending:hover { border-color: rgba(255,255,255,0.07); background: #0f1219; }







/* Top row */



.co-top {



    display: flex; align-items: center; justify-content: space-between;



    gap: 8px;



}



.co-name {



    font-size: 1rem; font-weight: 600; color: #fff;



    letter-spacing: -0.01em;



}



.contract-option.active .co-name { color: #f4d97a; }







.co-badge {



    font-size: 0.58rem; letter-spacing: 0.12em; text-transform: uppercase;



    font-weight: 700;



    padding: 3px 8px; border-radius: 4px;



    background: rgba(74,222,128,0.10); color: #4ade80;



    border: 1px solid rgba(74,222,128,0.25);



}



.co-badge.pending {



    background: rgba(255,255,255,0.04); color: rgba(255,255,255,0.5);



    border-color: rgba(255,255,255,0.1);



}







/* APY block sobrio */



.co-apy {



    display: flex; flex-direction: column; gap: 2px;



    padding: 10px 0 12px;



    border-bottom: 1px solid rgba(255,255,255,0.06);



}



.co-apy-v {



    font-size: 1.7rem; font-weight: 700; color: #fff;



    line-height: 1; letter-spacing: -0.02em;



    font-variant-numeric: tabular-nums;



}



.co-apy-v small {



    font-size: 0.55em; opacity: 0.55; margin-left: 4px;



    font-weight: 600; letter-spacing: 0.04em;



}



.contract-option.active .co-apy-v { color: #f4d97a; }



.co-apy-k {



    font-size: 0.7rem; color: rgba(255,255,255,0.5);



    font-weight: 500;



}







/* Rows */



.co-rows {



    display: flex; flex-direction: column; gap: 7px;



}



.co-row {



    display: flex; align-items: center; justify-content: space-between;



    font-size: 0.78rem;



}



.co-row > span {



    color: rgba(255,255,255,0.55); font-weight: 500;



}



.co-row > b {



    color: #fff; font-weight: 600;



    font-variant-numeric: tabular-nums;



}



.co-row > b.co-bonus { color: #4ade80; }







/* Address */



.co-addr {



    display: flex; align-items: center; gap: 8px;



    padding: 8px 10px;



    background: rgba(0,0,0,0.35);



    border-radius: 6px;



}



.co-addr-net {



    flex-shrink: 0;



    font-size: 0.58rem; letter-spacing: 0.1em; font-weight: 700;



    color: #e8c468;



    padding: 2px 6px;



    background: rgba(232,196,104,0.08);



    border-radius: 3px;



}



.co-addr-value {



    flex: 1; min-width: 0;



    font-family: 'JetBrains Mono', 'Courier New', monospace;



    font-size: 0.72rem; color: rgba(255,255,255,0.75);



    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;



}



.contract-option.active .co-addr-value { color: #fff; }







/* CTA */



.co-cta {



    display: flex; align-items: center; justify-content: center;



    padding: 9px;



    margin-top: 2px;



    font-size: 0.72rem; font-weight: 600;



    letter-spacing: 0.04em; text-transform: uppercase;



    color: rgba(255,255,255,0.6);



    background: transparent;



    border: 1px solid rgba(255,255,255,0.08);



    border-radius: 6px;



    transition: all 0.18s ease;



}



.contract-option:hover:not(:disabled) .co-cta {



    color: #e8c468;



    border-color: rgba(232,196,104,0.35);



}



.contract-option.active .co-cta {



    color: #1a1206;



    background: #e8c468;



    border-color: #e8c468;



}



.contract-option.pending .co-cta {



    color: rgba(255,255,255,0.35);



    border-style: dashed;



}







@media (max-width: 880px) {



    .contract-options { grid-template-columns: 1fr; }



}





/* ============ DEPOSIT FORM — STEP SECTIONS ============ */

#deposit-form {

    display: flex; flex-direction: column;

    gap: 22px;

}



#deposit-form > .contract-selector,

#deposit-form > .form-group-amount,

#deposit-form > .wallet-deposit-panel,

#deposit-form > .calculation-box {

    margin: 0 !important;

    padding: 18px;

    background: rgba(255,255,255,0.02);

    border: 1px solid rgba(255,255,255,0.06);

    border-radius: 12px;

}



/* Resumen aparece visualmente más sólido */

#deposit-form > .calculation-box {

    background: linear-gradient(180deg, rgba(232,196,104,0.04), rgba(255,255,255,0.02));

    border-color: rgba(232,196,104,0.18);

}



/* Wallet panel: refuerza separación interna */

.wdp-meta {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 10px;

    margin-top: 12px;

    padding-top: 12px;

    border-top: 1px solid rgba(255,255,255,0.06);

}

.wdp-meta-item {

    display: flex; flex-direction: column; gap: 3px;

    min-width: 0;

}

.wdp-meta-k {

    font-size: 0.58rem; letter-spacing: 0.14em; text-transform: uppercase;

    color: rgba(255,255,255,0.42); font-weight: 600;

}

.wdp-meta-v {

    font-size: 0.78rem; color: #fff; font-weight: 600;

    line-height: 1.2;

    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;

}



@media (max-width: 720px) {

    .wdp-meta { grid-template-columns: 1fr; gap: 8px; }

    .wdp-meta-item {

        flex-direction: row; justify-content: space-between; align-items: baseline;

    }

    .wdp-meta-v { white-space: normal; text-align: right; }

}



/* Step tag horizontal alineado con el título */

.contract-selector-head,

.form-group-head {

    flex-direction: row !important;

    align-items: center;

    flex-wrap: wrap;

    gap: 4px 10px !important;

}

.contract-selector-head .contract-selector-hint {

    flex-basis: 100%;

}


/* ============ WALLET DEPOSIT PANEL — CENTERED LAYOUT ============ */
#deposit-form > .wallet-deposit-panel {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

#deposit-form > .wallet-deposit-panel .wdp-header {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
    width: 100%;
    margin-bottom: 18px;
}
#deposit-form > .wallet-deposit-panel .wdp-header-left {
    display: flex; flex-direction: column; align-items: center; gap: 4px;
}
#deposit-form > .wallet-deposit-panel .wdp-eyebrow { margin-bottom: 0; }

#deposit-form > .wallet-deposit-panel .wdp-body {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 18px;
    width: 100%;
    max-width: 460px;
    margin: 0 auto;
}

#deposit-form > .wallet-deposit-panel .wdp-qr {
    margin: 0 auto;
}

#deposit-form > .wallet-deposit-panel .wdp-address-block {
    width: 100%;
    text-align: center;
}

#deposit-form > .wallet-deposit-panel .wdp-address-label {
    text-align: center;
}

#deposit-form > .wallet-deposit-panel .wdp-address-row {
    flex-direction: column;
    gap: 10px;
    padding: 12px;
    align-items: stretch;
}
#deposit-form > .wallet-deposit-panel .wdp-address {
    text-align: center;
    line-height: 1.5;
    font-size: 0.78rem;
}
#deposit-form > .wallet-deposit-panel .wdp-copy {
    align-self: center;
    justify-content: center;
    min-width: 110px;
}

#deposit-form > .wallet-deposit-panel .wdp-meta {
    width: 100%;
    margin-top: 4px;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 8px !important;
}
#deposit-form > .wallet-deposit-panel .wdp-meta-item {
    align-items: center;
    text-align: center;
    gap: 4px !important;
    padding: 8px 6px;
    background: rgba(0,0,0,0.25);
    border: 1px solid rgba(255,255,255,0.05);
    border-radius: 8px;
}
#deposit-form > .wallet-deposit-panel .wdp-meta-v {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.3;
}

#deposit-form > .wallet-deposit-panel .wdp-warning {
    width: 100%;
    margin-top: 16px;
    text-align: center;
    justify-content: center;
    align-items: center;
}

@media (max-width: 720px) {
    #deposit-form > .wallet-deposit-panel .wdp-meta {
        grid-template-columns: 1fr !important;
    }
    #deposit-form > .wallet-deposit-panel .wdp-meta-item {
        flex-direction: row;
        justify-content: space-between;
        text-align: left;
        padding: 8px 12px;
    }
}

/* ===== WALLET PREMIUM BACKGROUND ===== */

.wallet-background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    overflow: hidden;
}

.wallet-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(
        ellipse at center,
        rgba(0, 212, 255, 0.1) 0%,
        rgba(255, 0, 150, 0.05) 50%,
        transparent 70%
    );
    animation: walletGlowRotate 20s linear infinite;
}

@keyframes walletGlowRotate {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.wallet-particles {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image:
        radial-gradient(circle at 20% 80%, rgba(0, 212, 255, 0.1) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, rgba(255, 190, 11, 0.08) 0%, transparent 50%),
        radial-gradient(circle at 40% 40%, rgba(0, 255, 107, 0.06) 0%, transparent 50%);
    animation: walletParticlesFloat 15s ease-in-out infinite alternate;
}

/* ===== MODAL COMPACT SECTIONS ===== */

.modal-section {
    margin-bottom: 28px;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.modal-section:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.modal-section-header {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 18px;
}

.modal-step-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: linear-gradient(135deg, var(--primary), var(--accent));
    border-radius: 50%;
    color: var(--dark);
    font-weight: 700;
    font-size: 14px;
    flex-shrink: 0;
}

.modal-section-header h3 {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-light);
    margin: 0 0 4px 0;
}

.modal-section-header p {
    font-size: 0.85rem;
    color: var(--text-muted);
    margin: 0;
    line-height: 1.4;
}

.deposit-info-compact {
    display: flex;
    gap: 16px;
    margin-top: 12px;
}

.info-item {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.info-label {
    font-size: 0.8rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 500;
}

.info-value {
    font-size: 1rem;
    font-weight: 600;
    color: var(--primary);
}

/* Contract Options Compact */
.contract-options-compact {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.contract-option {
    background: rgba(21, 27, 53, 0.6);
    border: 1px solid rgba(0, 212, 255, 0.15);
    border-radius: 10px;
    padding: 12px 16px;
    color: var(--text-light);
    cursor: pointer;
    transition: all 0.3s ease;
    text-align: left;
    font-weight: 500;
    font-size: 0.95rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.contract-option:hover {
    border-color: var(--primary);
    background: rgba(0, 212, 255, 0.08);
}

.contract-option.active {
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.15), rgba(255, 190, 11, 0.08));
    border-color: var(--primary);
    color: var(--primary);
}

.contract-option.pending {
    opacity: 0.5;
    cursor: not-allowed;
    background: rgba(255, 255, 255, 0.03);
}

.contract-option.pending:hover {
    border-color: rgba(0, 212, 255, 0.15);
    background: rgba(255, 255, 255, 0.03);
}

.contract-option .co-cta {
    font-size: 0.8rem;
    color: var(--accent);
}

/* Wallet Deposit Panel Compact */
.wallet-deposit-panel-compact {
    background: rgba(21, 27, 53, 0.6);
    border: 1px solid rgba(0, 212, 255, 0.1);
    border-radius: 12px;
    padding: 16px;
    margin-bottom: 12px;
    display: flex;
    gap: 16px;
}

.wdp-qr-section {
    flex-shrink: 0;
}

.wdp-qr-compact {
    border-radius: 8px;
    border: 1px solid rgba(0, 212, 255, 0.2);
}

.wdp-info-section {
    flex: 1;
}

.wdp-address-block-compact {
    margin-bottom: 12px;
}

.wdp-address-label {
    display: block;
    font-size: 0.8rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 500;
    margin-bottom: 8px;
}

.wdp-address-row-compact {
    display: flex;
    align-items: center;
    gap: 8px;
}

.wdp-address-compact {
    background: rgba(0, 212, 255, 0.08);
    border: 1px solid rgba(0, 212, 255, 0.2);
    border-radius: 6px;
    padding: 8px 12px;
    font-family: 'Courier New', monospace;
    font-size: 0.8rem;
    color: var(--primary);
    word-break: break-all;
    flex: 1;
}

.wdp-copy-compact {
    background: rgba(0, 212, 255, 0.15);
    border: 1px solid rgba(0, 212, 255, 0.3);
    color: var(--primary);
    border-radius: 6px;
    padding: 8px 10px;
    cursor: pointer;
    transition: all 0.3s;
    display: flex;
    align-items: center;
    gap: 4px;
}

.wdp-copy-compact:hover {
    background: rgba(0, 212, 255, 0.25);
    border-color: var(--primary);
}

.wdp-copy-compact.is-copied {
    background: rgba(0, 255, 107, 0.2);
    border-color: var(--green);
    color: var(--green);
}

.wdp-meta-compact {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.wdp-meta-item-compact {
    display: flex;
    justify-content: space-between;
    font-size: 0.8rem;
}

.wdp-meta-k {
    color: var(--text-muted);
}

.wdp-meta-v {
    color: var(--text-light);
    font-weight: 500;
}

.wdp-warning-compact {
    background: rgba(255, 190, 11, 0.08);
    border: 1px solid rgba(255, 190, 11, 0.2);
    border-radius: 8px;
    padding: 12px;
    display: flex;
    gap: 10px;
    font-size: 0.85rem;
    color: var(--text-light);
    line-height: 1.4;
}

.wdp-warning-compact svg {
    color: var(--accent);
    flex-shrink: 0;
    margin-top: 2px;
}

/* Calculation Box Compact */
.calculation-box-compact {
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.08), rgba(255, 190, 11, 0.05));
    border: 1px solid rgba(0, 212, 255, 0.15);
    border-radius: 12px;
    padding: 16px;
}

.calc-header-compact {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--text-light);
    margin-bottom: 12px;
}

.calc-row-compact {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.9rem;
    color: var(--text-light);
    padding: 8px 0;
}

.calc-row-compact.total {
    font-weight: 600;
    color: var(--green);
    padding-top: 12px;
    padding-bottom: 0;
}

.calc-row-compact .value-highlight {
    color: var(--accent);
    font-weight: 600;
}

.calc-divider-compact {
    height: 1px;
    background: rgba(255, 255, 255, 0.05);
    margin: 8px 0;
}

/* Trust Elements Compact */
.modal-trust-compact {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    background: rgba(21, 27, 53, 0.5);
    border: 1px solid rgba(0, 212, 255, 0.1);
    border-radius: 10px;
    padding: 14px;
}

.modal-trust-item-compact {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    text-align: center;
    font-size: 0.8rem;
    color: var(--text-muted);
}

.modal-trust-item-compact i {
    font-size: 1.4rem;
    color: var(--primary);
}

/* Mobile adjustments for compact modal */
@media (max-width: 768px) {
    .modal-section-header {
        flex-direction: column;
        gap: 8px;
    }

    .wallet-deposit-panel-compact {
        flex-direction: column;
        align-items: center;
    }

    .modal-trust-compact {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .deposit-info-compact {
        flex-direction: column;
        gap: 8px;
    }
}

/* ===== WALLET HEADER ENHANCED ===== */

.wallet-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 40px !important;
    position: relative !important;
    z-index: 2 !important;
}

.wallet-header-icon {
    font-size: 2.5rem;
    color: var(--primary);
    background: linear-gradient(135deg, var(--primary), var(--accent));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-right: 20px;
}

.wallet-header-content {
    flex: 1;
    text-align: center;
}

.wallet-header-content h2 {
    font-size: 2.5rem;
    background: linear-gradient(135deg, var(--primary), var(--green));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 10px;
}

.wallet-status {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--green);
    font-size: 0.9rem;
    font-weight: 500;
}

.wallet-status-dot {
    width: 8px;
    height: 8px;
    background: var(--green);
    border-radius: 50%;
    animation: walletPulse 2s infinite;
}

@keyframes walletPulse {
    0% { opacity: 1; }
    50% { opacity: 0.5; }
    100% { opacity: 1; }
}

/* ===== WALLET INFO CARD ===== */

.wallet-info-card {
    background: linear-gradient(135deg, rgba(21, 27, 53, 0.8), rgba(10, 14, 39, 0.9));
    border: 1px solid rgba(0, 212, 255, 0.2);
    border-radius: 16px;
    padding: 24px;
    margin-bottom: 40px;
    backdrop-filter: blur(10px);
    position: relative;
    z-index: 2;
}

.wallet-address-section {
    margin-bottom: 20px;
}

.wallet-address-label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem;
    color: var(--text-muted);
    margin-bottom: 8px;
}

.wallet-address-label i {
    color: var(--primary);
}

.wallet-address {
    background: rgba(0, 212, 255, 0.1);
    border: 1px solid rgba(0, 212, 255, 0.2);
    border-radius: 8px;
    padding: 12px 16px;
    font-family: 'Courier New', monospace;
    font-size: 0.9rem;
    color: var(--primary);
    word-break: break-all;
    letter-spacing: 0.5px;
}

.wallet-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.change-wallet-btn, .disconnect-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 1px;
    border: 2px solid;
}

.change-wallet-btn {
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.15), rgba(255, 190, 11, 0.1));
    color: var(--primary);
    border-color: var(--primary);
}

.change-wallet-btn:hover {
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.25), rgba(255, 190, 11, 0.15));
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 212, 255, 0.3);
}

.disconnect-btn {
    background: rgba(255, 56, 96, 0.15);
    color: var(--red);
    border-color: var(--red);
}

.disconnect-btn:hover {
    background: rgba(255, 56, 96, 0.25);
    transform: translateY(-2px);
}

/* ===== WALLET PORTFOLIO ===== */

.wallet-portfolio {
    position: relative;
    z-index: 2;
}

.portfolio-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 24px;
}

.portfolio-header h3 {
    font-size: 1.5rem;
    color: var(--text-light);
    margin: 0;
}

.portfolio-total {
    text-align: right;
}

.portfolio-total-label {
    font-size: 0.8rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 1px;
}

.portfolio-total-value {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--green);
    margin-top: 4px;
}

/* ================================================
   VCP — VAULT CONTRACT PREMIUM  (v5 — compatible)
   Sin color-mix(), sin funciones CSS modernas
   ================================================ */

/* ── Section header ── */
.vault-contracts-section { margin-top: 64px; }

.vault-contracts-header {
    text-align: center;
    margin-bottom: 48px;
}
.vault-contracts-header-overline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 3.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.22);
    margin-bottom: 14px;
}
.vault-contracts-header-overline::before,
.vault-contracts-header-overline::after {
    content: '';
    display: block;
    width: 28px;
    height: 1px;
    background: rgba(255,255,255,0.14);
}
.vault-contracts-header h3 {
    font-size: 26px;
    font-weight: 700;
    color: #fff;
    margin: 0 0 8px;
    letter-spacing: -0.5px;
}
.vault-contracts-header p {
    font-size: 13px;
    color: rgba(255,255,255,0.32);
    margin: 0;
}

/* ── Grid ── */
.vault-contracts-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    align-items: stretch;
}
@media (max-width: 860px) {
    .vault-contracts-grid { grid-template-columns: 1fr; }
}

/* ── Card shell ── */
.vcp-card {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.08);
    background: #0a0d16;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

/* Glow layer behind content — color set by JS via --vcp-glow */
.vcp-card::before {
    content: '';
    position: absolute;
    bottom: -30px;
    left: 50%;
    transform: translateX(-50%);
    width: 200px;
    height: 200px;
    border-radius: 50%;
    background: var(--vcp-glow, rgba(255,255,255,0.04));
    filter: blur(48px);
    pointer-events: none;
    z-index: 0;
}
/* Top shimmer highlight */
.vcp-card::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 50%;
    background: linear-gradient(180deg, rgba(255,255,255,0.03) 0%, transparent 100%);
    pointer-events: none;
    z-index: 0;
}

.vcp-card--active {
    border-color: var(--vcp-border, rgba(255,255,255,0.14));
}
.vcp-card--active:hover {
    transform: translateY(-8px);
    border-color: var(--vcp-border-hover, rgba(255,255,255,0.3));
    box-shadow: 0 28px 56px rgba(0,0,0,0.65), 0 0 40px var(--vcp-shadow, rgba(255,255,255,0.06));
}
.vcp-card--pending {
    opacity: 0.36;
    pointer-events: none;
    filter: saturate(0.3);
}

/* ── Top accent bar ── */
.vcp-bar {
    height: 1px;
    flex-shrink: 0;
    position: relative;
    z-index: 1;
    background: var(--vcp-accent, rgba(255,255,255,0.2));
    /* fade edges via mask */
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, black 30%, black 70%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, black 30%, black 70%, transparent 100%);
}

/* ── Inner content ── */
.vcp-inner {
    position: relative;
    z-index: 1;
    padding: 26px 26px 26px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* ── Header ── */
.vcp-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 30px;
}
.vcp-name-block {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.vcp-eyebrow {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2.8px;
    text-transform: uppercase;
    color: var(--vcp-accent, rgba(255,255,255,0.3));
}
.vcp-name {
    font-size: 22px;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.5px;
    line-height: 1;
}
.vcp-pill {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    padding: 5px 11px;
    border-radius: 99px;
    white-space: nowrap;
    margin-top: 3px;
}
.vcp-pill--live {
    background: rgba(45,212,191,0.1);
    color: #2DD4BF;
    border: 1px solid rgba(45,212,191,0.28);
    box-shadow: 0 0 10px rgba(45,212,191,0.12);
}
.vcp-pill--soon {
    background: rgba(255,255,255,0.04);
    color: rgba(255,255,255,0.25);
    border: 1px solid rgba(255,255,255,0.07);
}

/* ── APY hero ── */
.vcp-apy {
    text-align: center;
    padding: 26px 0 22px;
    margin-bottom: 26px;
    border-top: 1px solid rgba(255,255,255,0.06);
    border-bottom: 1px solid rgba(255,255,255,0.06);
    position: relative;
}
.vcp-apy-num {
    display: block;
    font-size: 86px;
    font-weight: 900;
    line-height: 0.92;
    letter-spacing: -5px;
    color: #ffffff;
    text-shadow: var(--vcp-text-glow, 0 0 30px rgba(255,255,255,0.3));
}
.vcp-apy-sign {
    font-size: 40px;
    font-weight: 800;
    letter-spacing: 0;
    vertical-align: super;
    line-height: 0;
    position: relative;
    top: -8px;
    color: var(--vcp-accent, #ffffff);
}
.vcp-apy-rule {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
    margin-top: 14px;
}
.vcp-apy-rule::before,
.vcp-apy-rule::after {
    content: '';
    flex: 1;
    max-width: 36px;
    height: 1px;
    background: rgba(255,255,255,0.1);
}
.vcp-apy-label {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2.8px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.24);
}

/* ── Stats ── */
.vcp-stats {
    margin-bottom: 26px;
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 14px;
    overflow: hidden;
    background: rgba(0,0,0,0.25);
}
.vcp-stat {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    border-bottom: 1px solid rgba(255,255,255,0.05);
}
.vcp-stat:last-child { border-bottom: none; }
.vcp-stat-lbl {
    font-size: 11px;
    font-weight: 500;
    color: rgba(255,255,255,0.36);
}
.vcp-stat-val {
    font-size: 13px;
    font-weight: 700;
    color: rgba(255,255,255,0.88);
    letter-spacing: -0.1px;
}
.vcp-stat-val--accent {
    color: var(--vcp-accent, #ffffff);
    text-shadow: var(--vcp-text-glow-soft, none);
}

/* ── CTA ── */
.vcp-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 15px 22px;
    background: var(--vcp-accent, rgba(255,255,255,0.1));
    border: none;
    border-radius: 13px;
    color: #000000;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.2px;
    cursor: pointer;
    transition: opacity 0.2s ease, transform 0.22s ease, box-shadow 0.22s ease;
    margin-top: auto;
    position: relative;
    overflow: hidden;
}
.vcp-btn::before {
    content: '';
    position: absolute;
    top: 0; left: -100%;
    width: 60%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.5s ease;
    pointer-events: none;
}
.vcp-btn:not(.vcp-btn--disabled):hover::before { left: 160%; }
.vcp-btn:not(.vcp-btn--disabled):hover {
    opacity: 0.88;
    transform: translateY(-2px);
    box-shadow: var(--vcp-btn-shadow, 0 8px 20px rgba(255,255,255,0.2));
}
.vcp-btn--disabled {
    background: rgba(255,255,255,0.05) !important;
    color: rgba(255,255,255,0.2) !important;
    cursor: not-allowed;
    font-weight: 600;
}
.vcp-btn svg {
    width: 14px; height: 14px;
    stroke: currentColor; fill: none;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}
.vcp-btn:not(.vcp-btn--disabled):hover svg { transform: translateX(3px); }

/* ================================================
   MODAL PREMIUM — DEPOSIT  (v5 override)
   ================================================ */

/* Overlay */
.modal-vault {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.75);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    padding: 20px;
}

/* Box */
.modal-vault .modal-content {
    background: #090c14;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 24px;
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 0;
    box-shadow: 0 32px 80px rgba(0,0,0,0.8), 0 0 0 1px rgba(255,255,255,0.04);
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,0.1) transparent;
}
.modal-vault .modal-content::-webkit-scrollbar { width: 4px; }
.modal-vault .modal-content::-webkit-scrollbar-track { background: transparent; }
.modal-vault .modal-content::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.1); border-radius: 4px; }

/* Gold top rule */
.modal-vault .modal-content::before {
    content: '';
    display: block;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(245,166,35,0.7) 50%, transparent 100%);
    position: sticky;
    top: 0;
    z-index: 10;
    flex-shrink: 0;
}

/* Header */
.modal-vault .modal-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 28px 28px 24px;
    border-bottom: 1px solid rgba(255,255,255,0.05);
}
.modal-vault .modal-header-left { display: flex; flex-direction: column; gap: 5px; }
.modal-vault .modal-eyebrow {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: rgba(245,166,35,0.7);
}
.modal-vault .modal-header h2 {
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    letter-spacing: -0.4px;
    margin: 0;
    line-height: 1.1;
}
.modal-vault .modal-close {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 8px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: rgba(255,255,255,0.5);
    transition: background 0.2s, color 0.2s;
    flex-shrink: 0;
    margin-top: 2px;
}
.modal-vault .modal-close:hover {
    background: rgba(255,255,255,0.1);
    color: #fff;
}

/* Body */
.modal-vault .modal-body { padding: 24px 28px 28px; }

/* Sections */
.modal-vault .modal-section {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(255,255,255,0.05);
}
.modal-vault .modal-section:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

/* Section header */
.modal-vault .modal-section-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}
.modal-vault .modal-step-badge {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: rgba(245,166,35,0.12);
    border: 1px solid rgba(245,166,35,0.3);
    color: rgba(245,166,35,0.9);
    font-size: 11px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.modal-vault .modal-section-header h3 {
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    margin: 0;
    letter-spacing: -0.1px;
}
.modal-vault .modal-section-header p {
    font-size: 12px;
    color: rgba(255,255,255,0.32);
    margin: 4px 0 0;
    line-height: 1.5;
}

/* Info pills below step 2 header */
.modal-vault .deposit-info-compact {
    display: flex;
    gap: 10px;
    margin-left: 38px;
    margin-top: -8px;
    margin-bottom: 14px;
}
.modal-vault .info-item {
    display: flex;
    align-items: center;
    gap: 6px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 6px;
    padding: 5px 10px;
}
.modal-vault .info-label {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.3);
}
.modal-vault .info-value {
    font-size: 12px;
    font-weight: 700;
    color: rgba(255,255,255,0.8);
}

/* Contract options */
.modal-vault .contract-options-compact {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.modal-vault .contract-option {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 12px;
    padding: 14px 16px;
    cursor: pointer;
    transition: background 0.2s, border-color 0.2s;
    color: rgba(255,255,255,0.75);
    font-size: 14px;
    font-weight: 600;
    text-align: left;
}
.modal-vault .contract-option:hover {
    background: rgba(255,255,255,0.06);
    border-color: rgba(255,255,255,0.14);
    color: #fff;
}
.modal-vault .contract-option.active {
    background: rgba(245,166,35,0.08);
    border-color: rgba(245,166,35,0.35);
    color: #fff;
}
.modal-vault .contract-option.active .co-cta {
    color: rgba(245,166,35,0.9);
}
.modal-vault .contract-option.pending {
    opacity: 0.35;
    cursor: not-allowed;
    pointer-events: none;
}
.modal-vault .co-cta {
    font-size: 11px;
    font-weight: 700;
    color: rgba(255,255,255,0.3);
}

/* Amount input */
.modal-vault .input-wrapper {
    position: relative;
    margin-bottom: 12px;
}
.modal-vault .input-wrapper input {
    width: 100%;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 14px;
    padding: 18px 70px 18px 20px;
    font-size: 28px;
    font-weight: 700;
    color: #fff;
    letter-spacing: -0.5px;
    outline: none;
    transition: border-color 0.2s, background 0.2s;
    box-sizing: border-box;
}
.modal-vault .input-wrapper input::placeholder { color: rgba(255,255,255,0.18); }
.modal-vault .input-wrapper input:focus {
    border-color: rgba(245,166,35,0.4);
    background: rgba(245,166,35,0.04);
}
.modal-vault .currency-suffix {
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    color: rgba(255,255,255,0.3);
    pointer-events: none;
}

/* Quick amounts */
.modal-vault .amount-quick-actions {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}
.modal-vault .quick-amount {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 10px;
    padding: 10px 8px;
    font-size: 12px;
    font-weight: 700;
    color: rgba(255,255,255,0.5);
    cursor: pointer;
    transition: all 0.18s ease;
    text-align: center;
}
.modal-vault .quick-amount:hover {
    background: rgba(245,166,35,0.1);
    border-color: rgba(245,166,35,0.3);
    color: rgba(245,166,35,0.9);
}
.modal-vault .quick-amount.active {
    background: rgba(245,166,35,0.14);
    border-color: rgba(245,166,35,0.4);
    color: rgba(245,166,35,1);
}

/* Wallet deposit panel */
.modal-vault .wallet-deposit-panel-compact {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 14px;
    padding: 16px;
    margin-bottom: 10px;
    display: flex;
    gap: 16px;
    align-items: flex-start;
}
.modal-vault .wdp-qr-compact {
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,0.1);
}
.modal-vault .wdp-address-label {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.28);
    display: block;
    margin-bottom: 8px;
}
.modal-vault .wdp-address-compact {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 8px;
    padding: 9px 12px;
    font-family: 'Courier New', monospace;
    font-size: 11px;
    color: rgba(255,255,255,0.7);
    word-break: break-all;
    flex: 1;
    display: block;
}
.modal-vault .wdp-copy-compact {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.09);
    border-radius: 7px;
    padding: 8px 10px;
    color: rgba(255,255,255,0.4);
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    flex-shrink: 0;
}
.modal-vault .wdp-copy-compact:hover {
    background: rgba(255,255,255,0.1);
    color: #fff;
}
.modal-vault .wdp-copy-compact.is-copied {
    background: rgba(45,212,100,0.12);
    border-color: rgba(45,212,100,0.3);
    color: #2DD46A;
}
.modal-vault .wdp-meta-item-compact {
    display: flex;
    justify-content: space-between;
    font-size: 11px;
    padding: 4px 0;
    border-bottom: 1px solid rgba(255,255,255,0.04);
}
.modal-vault .wdp-meta-item-compact:last-child { border-bottom: none; }
.modal-vault .wdp-meta-k { color: rgba(255,255,255,0.3); }
.modal-vault .wdp-meta-v { color: rgba(255,255,255,0.75); font-weight: 600; }

/* Warning */
.modal-vault .wdp-warning-compact {
    background: rgba(245,166,35,0.06);
    border: 1px solid rgba(245,166,35,0.2);
    border-radius: 10px;
    padding: 12px 14px;
    display: flex;
    gap: 10px;
    font-size: 12px;
    color: rgba(255,255,255,0.55);
    line-height: 1.5;
}
.modal-vault .wdp-warning-compact svg { color: rgba(245,166,35,0.7); flex-shrink: 0; margin-top: 1px; }
.modal-vault .wdp-warning-compact b { color: rgba(245,166,35,0.9); font-weight: 700; }

/* Summary box */
.modal-vault .calculation-box-compact {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 14px;
    padding: 0;
    overflow: hidden;
}
.modal-vault .calc-header-compact {
    padding: 12px 16px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.28);
    border-bottom: 1px solid rgba(255,255,255,0.06);
}
.modal-vault .calc-row-compact {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 11px 16px;
    font-size: 13px;
    color: rgba(255,255,255,0.55);
    border-bottom: 1px solid rgba(255,255,255,0.04);
}
.modal-vault .calc-row-compact:last-child { border-bottom: none; }
.modal-vault .calc-row-compact.total {
    color: #fff;
    font-weight: 700;
    font-size: 14px;
    background: rgba(255,255,255,0.03);
}
.modal-vault .calc-row-compact .value-highlight {
    color: #F5A623;
    font-weight: 700;
}
.modal-vault .calc-divider-compact { display: none; }

/* Trust badges */
.modal-vault .modal-trust-compact {
    display: flex;
    gap: 8px;
    background: transparent;
    border: none;
    padding: 0;
    margin-bottom: 4px;
}
.modal-vault .modal-trust-item-compact {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 10px;
    padding: 10px 8px;
    font-size: 11px;
    font-weight: 500;
    color: rgba(255,255,255,0.38);
    text-align: center;
    flex-direction: row;
}
.modal-vault .modal-trust-item-compact i {
    font-size: 12px;
    color: rgba(245,166,35,0.6);
}

/* Action buttons */
.modal-vault .modal-actions {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 10px;
    margin-top: 20px;
}
.modal-vault .btn-cancel {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 13px;
    color: rgba(255,255,255,0.4);
    font-size: 13px;
    font-weight: 600;
    padding: 15px;
    cursor: pointer;
    transition: background 0.2s, color 0.2s;
}
.modal-vault .btn-cancel:hover {
    background: rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.7);
}
.modal-vault .btn-confirm {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #F5A623;
    border: none;
    border-radius: 13px;
    color: #000;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.2px;
    padding: 15px;
    cursor: pointer;
    transition: opacity 0.2s, transform 0.2s, box-shadow 0.2s;
    position: relative;
    overflow: hidden;
}
.modal-vault .btn-confirm::before {
    content: '';
    position: absolute;
    top: 0; left: -100%;
    width: 60%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.22), transparent);
    transition: left 0.5s ease;
    pointer-events: none;
}
.modal-vault .btn-confirm:hover::before { left: 160%; }
.modal-vault .btn-confirm:hover {
    opacity: 0.9;
    transform: translateY(-1px);
    box-shadow: 0 8px 24px rgba(245,166,35,0.4);
}

@media (max-width: 480px) {
    .modal-vault .modal-header,
    .modal-vault .modal-body { padding-left: 20px; padding-right: 20px; }
    .modal-vault .modal-actions { grid-template-columns: 1fr; }
    .modal-vault .amount-quick-actions { grid-template-columns: repeat(2, 1fr); }
    .modal-vault .wallet-deposit-panel-compact { flex-direction: column; align-items: center; }
    .modal-vault .modal-trust-compact { flex-direction: column; }
}

/* ============================================================
   FEATURES SECTION — REDISEÑO PREMIUM
   ============================================================ */

.features-section {
    margin-bottom: 0;
    padding: 80px 0 0;
}

.features-header {
    text-align: center;
    margin-bottom: 48px;
}

.features-eyebrow {
    display: inline-block;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--accent, #f5a623);
    background: rgba(245,166,35,0.08);
    border: 1px solid rgba(245,166,35,0.2);
    border-radius: 100px;
    padding: 5px 16px;
    margin-bottom: 16px;
}

.features-header h2 {
    font-size: 2.4rem;
    font-weight: 700;
    margin: 0 0 14px;
    background: linear-gradient(135deg, #fff 40%, rgba(255,255,255,0.6));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.features-subtitle {
    font-size: 1rem;
    color: rgba(255,255,255,0.5);
    max-width: 520px;
    margin: 0 auto;
    line-height: 1.65;
}

/* Trust bar */
.features-trust-bar {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 16px;
    padding: 24px 32px;
    margin-bottom: 48px;
    flex-wrap: wrap;
    gap: 0;
}

.trust-bar-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 40px;
    flex: 1;
    min-width: 120px;
}

.trust-bar-num {
    font-size: 1.8rem;
    font-weight: 800;
    color: #fff;
    letter-spacing: -0.03em;
    line-height: 1;
    margin-bottom: 4px;
}

.trust-bar-label {
    font-size: 0.75rem;
    color: rgba(255,255,255,0.4);
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.trust-bar-divider {
    width: 1px;
    height: 40px;
    background: rgba(255,255,255,0.08);
    flex-shrink: 0;
}

/* Features grid — 3 columnas */
.features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 48px;
}

.feature-card {
    position: relative;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.07);
    border-radius: 20px;
    padding: 32px 28px;
    transition: border-color 0.25s ease, transform 0.25s ease, background 0.25s ease;
    overflow: hidden;
}

.feature-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at top left, rgba(245,166,35,0.06) 0%, transparent 65%);
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.feature-card:hover {
    border-color: rgba(245,166,35,0.3);
    background: rgba(255,255,255,0.05);
    transform: translateY(-4px);
}

.feature-card:hover::before {
    opacity: 1;
}

.feature-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: rgba(245,166,35,0.1);
    border: 1px solid rgba(245,166,35,0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    color: #f5a623;
    margin-bottom: 16px;
}

.feature-badge {
    display: inline-block;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: rgba(45,212,191,0.9);
    background: rgba(45,212,191,0.08);
    border: 1px solid rgba(45,212,191,0.15);
    border-radius: 100px;
    padding: 3px 10px;
    margin-bottom: 12px;
}

.feature-card h3 {
    font-size: 1.1rem;
    font-weight: 700;
    color: #fff;
    margin: 0 0 10px;
}

.feature-card p {
    font-size: 0.875rem;
    color: rgba(255,255,255,0.45);
    line-height: 1.6;
    margin: 0;
}

/* CTA bajo features */
.features-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    padding: 40px 0 80px;
    flex-wrap: wrap;
}

.features-cta p {
    font-size: 1rem;
    color: rgba(255,255,255,0.5);
    margin: 0;
}

.features-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 28px;
    background: linear-gradient(135deg, #f5a623, #e8960f);
    color: #000;
    font-size: 0.9rem;
    font-weight: 700;
    border: none;
    border-radius: 100px;
    cursor: pointer;
    transition: opacity 0.2s ease, transform 0.2s ease;
    letter-spacing: 0.02em;
}

.features-cta-btn:hover {
    opacity: 0.9;
    transform: translateY(-2px);
}

/* ============================================================
   FOOTER — REDISEÑO PREMIUM
   ============================================================ */

footer {
    background: rgba(0,0,0,0.4);
    border-top: 1px solid rgba(255,255,255,0.06);
    padding: 0;
    margin-top: 0;
}

.footer-inner {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 40px;
    padding: 56px 40px 40px;
    max-width: 1100px;
    margin: 0 auto;
}

.footer-brand-col {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.footer-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 1rem;
    font-weight: 700;
    color: #fff;
}

.footer-logo {
    width: 28px;
    height: 28px;
}

.footer-tagline {
    font-size: 0.85rem;
    color: rgba(255,255,255,0.35);
    line-height: 1.5;
    margin: 0;
    max-width: 200px;
}

.footer-socials {
    display: flex;
    gap: 10px;
    margin-top: 4px;
}

.footer-social-btn {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255,255,255,0.5);
    font-size: 0.9rem;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.footer-social-btn:hover {
    background: rgba(245,166,35,0.1);
    border-color: rgba(245,166,35,0.25);
    color: #f5a623;
}

.footer-links-col {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.footer-col-title {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.35);
    margin-bottom: 4px;
}

.footer-links-col a {
    font-size: 0.85rem;
    color: rgba(255,255,255,0.5);
    text-decoration: none;
    transition: color 0.2s ease;
}

.footer-links-col a:hover {
    color: #fff;
}

.footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.05);
    padding: 20px 40px;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

.footer-bottom p {
    font-size: 0.78rem;
    color: rgba(255,255,255,0.3);
    margin: 0;
}

.footer-disclaimer {
    font-size: 0.78rem !important;
    color: rgba(255,255,255,0.22) !important;
}

/* Responsive features + footer */
@media (max-width: 900px) {
    .features-grid { grid-template-columns: repeat(2, 1fr); }
    .footer-inner { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
    .features-grid { grid-template-columns: 1fr; }
    .features-trust-bar { gap: 16px; }
    .trust-bar-divider { display: none; }
    .trust-bar-item { padding: 8px 20px; }
    .footer-inner { grid-template-columns: 1fr; padding: 40px 20px 24px; }
    .footer-bottom { padding: 16px 20px; flex-direction: column; align-items: flex-start; }
    .features-header h2 { font-size: 1.8rem; }
}

/* ============================================================
   WALLET ENTERPRISE PREMIUM — v3 · Full Redesign
   ============================================================ */

.wallet-section {
    background: linear-gradient(160deg, #01030a 0%, #04091a 40%, #060f24 75%, #030710 100%) !important;
    position: relative !important;
    overflow: hidden !important;
}

/* ── Background layers ── */
.wep-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
    z-index: 0;
}

/* Aurora blobs — large ambient glow */
.wep-aurora {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
}
.wep-aurora-1 {
    width: 500px; height: 500px;
    top: -20%; left: -10%;
    background: radial-gradient(circle, rgba(0,212,255,0.12) 0%, transparent 70%);
    animation: wepAurora1 18s ease-in-out infinite;
}
.wep-aurora-2 {
    width: 600px; height: 400px;
    bottom: -15%; right: -10%;
    background: radial-gradient(circle, rgba(168,85,247,0.10) 0%, transparent 70%);
    animation: wepAurora2 22s ease-in-out infinite 4s;
}
.wep-aurora-3 {
    width: 400px; height: 400px;
    top: 30%; left: 35%;
    background: radial-gradient(circle, rgba(212,175,55,0.07) 0%, transparent 70%);
    animation: wepAurora3 16s ease-in-out infinite 8s;
}

@keyframes wepAurora1 { 0%,100%{transform:translate(0,0) scale(1)} 50%{transform:translate(60px,40px) scale(1.1)} }
@keyframes wepAurora2 { 0%,100%{transform:translate(0,0) scale(1)} 50%{transform:translate(-50px,-30px) scale(1.15)} }
@keyframes wepAurora3 { 0%,100%{transform:translate(0,0) scale(1)} 50%{transform:translate(30px,-40px) scale(0.9)} }

/* Grid */
.wep-grid {
    position: absolute;
    inset: -60px;
    background-image:
        linear-gradient(rgba(0,212,255,0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0,212,255,0.04) 1px, transparent 1px);
    background-size: 60px 60px;
    animation: wepGridPan 28s linear infinite;
}

@keyframes wepGridPan { 0%{transform:translate(0,0)} 100%{transform:translate(60px,60px)} }

/* Scan line */
.wep-scanline {
    position: absolute;
    top: -2%;
    left: 0; right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0,212,255,0.7) 30%, rgba(0,212,255,0.7) 70%, transparent);
    box-shadow: 0 0 18px rgba(0,212,255,0.4);
    animation: wepScan 9s linear infinite;
}

@keyframes wepScan { 0%{top:-2%;opacity:0} 4%{opacity:1} 96%{opacity:1} 100%{top:102%;opacity:0} }

/* Nodes */
.wep-node {
    position: absolute;
    width: 8px; height: 8px;
    border-radius: 50%;
}
.wep-node::after {
    content: '';
    position: absolute;
    inset: -10px;
    border-radius: 50%;
    border: 1px solid currentColor;
    animation: wepRing 3s ease-out infinite;
}
@keyframes wepRing { 0%{transform:scale(1);opacity:0.5} 100%{transform:scale(3.2);opacity:0} }

.wep-node-1 { top:15%;left:6%;  background:#00d4ff;color:rgba(0,212,255,.5);box-shadow:0 0 14px rgba(0,212,255,.9);animation:wepF1 10s ease-in-out infinite; }
.wep-node-2 { top:50%;left:92%; background:#d4af37;color:rgba(212,175,55,.5);box-shadow:0 0 14px rgba(212,175,55,.9);animation:wepF2 13s ease-in-out infinite 2s; }
.wep-node-3 { top:80%;left:22%; background:#06d6a0;color:rgba(6,214,160,.5);box-shadow:0 0 14px rgba(6,214,160,.9);animation:wepF3 9s ease-in-out infinite 4s; }
.wep-node-4 { top:35%;left:80%; background:#a855f7;color:rgba(168,85,247,.5);box-shadow:0 0 14px rgba(168,85,247,.9);animation:wepF1 11s ease-in-out infinite 6s; }

@keyframes wepF1 { 0%,100%{transform:translate(0,0)} 33%{transform:translate(22px,-15px)} 66%{transform:translate(-12px,10px)} }
@keyframes wepF2 { 0%,100%{transform:translate(0,0)} 40%{transform:translate(-20px,14px)} 70%{transform:translate(16px,-10px)} }
@keyframes wepF3 { 0%,100%{transform:translate(0,0)} 50%{transform:translate(26px,-18px)} }

/* Chart with area fill */
.wep-chart {
    position: absolute;
    bottom: 0; left: 0;
    width: 100%; height: 140px;
}

.wep-chart-fill {
    stroke: none;
    stroke-dasharray: none;
}
.wep-fill-1 { fill: url(#chartGrad1); opacity: 0; animation: wepFillIn 4s ease-out forwards 1s; }
.wep-fill-2 { fill: url(#chartGrad2); opacity: 0; animation: wepFillIn 4s ease-out forwards 2s; }
@keyframes wepFillIn { to { opacity: 1; } }

.wep-chart-line {
    fill: none; stroke: #00d4ff; stroke-width: 1.8;
    stroke-linecap: round; stroke-linejoin: round;
    stroke-dasharray: 1500; stroke-dashoffset: 1500;
    animation: wepDraw 5s ease-out forwards 0.5s;
}
.wep-chart-line-2 { stroke: #d4af37; animation-delay: 1.5s; }
@keyframes wepDraw { to { stroke-dashoffset: 0; } }

.wallet-container { position: relative !important; z-index: 2 !important; }

/* ============================================================
   TICKER BAR — v3
   ============================================================ */

.wps-ticker-bar {
    display: flex;
    align-items: center;
    gap: 0;
    background: linear-gradient(90deg, rgba(0,5,18,0.95), rgba(2,8,24,0.92));
    border: 1px solid rgba(0,212,255,0.15);
    border-radius: 12px;
    margin-bottom: 28px;
    position: relative;
    z-index: 2;
    overflow: hidden;
    height: 44px;
}

.wps-live-badge {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 18px;
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 2px;
    color: #06d6a0;
    border-right: 1px solid rgba(0,212,255,0.12);
    height: 100%;
    flex-shrink: 0;
    white-space: nowrap;
}

.wps-live-dot {
    width: 7px; height: 7px;
    background: #06d6a0;
    border-radius: 50%;
    box-shadow: 0 0 8px rgba(6,214,160,0.9);
    animation: wpsLivePulse 1.2s ease-in-out infinite;
}

@keyframes wpsLivePulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(0.7)} }

.wps-ticker-scroll {
    flex: 1;
    overflow: hidden;
    height: 100%;
    display: flex;
    align-items: center;
}

.wps-ticker-inner {
    display: inline-flex;
    align-items: center;
    gap: 28px;
    white-space: nowrap;
    animation: wpsTicker 28s linear infinite;
    font-size: 0.78rem;
    font-family: 'Courier New', monospace;
    color: rgba(255,255,255,0.5);
    font-weight: 500;
    letter-spacing: 0.3px;
    padding: 0 24px;
}

@keyframes wpsTicker { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

.tick-item { color: rgba(255,255,255,0.55); }
.tick-item strong { color: rgba(255,255,255,0.9); font-weight: 700; }
.tick-sep  { color: rgba(0,212,255,0.25); font-size: 0.9rem; }
.tick-up   { color: #06d6a0; font-weight: 700; }
.tick-down { color: #ef476f; font-weight: 700; }
.tick-neu  { color: rgba(255,255,255,0.28); }

/* ============================================================
   METRIC CARDS — v3
   ============================================================ */

.wps-cards-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-bottom: 40px;
    position: relative;
    z-index: 2;
}

.wps-card {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.07);
    backdrop-filter: blur(12px);
    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
    cursor: default;
}

/* Background per card */
.wps-card-green  { background: linear-gradient(145deg, rgba(3,14,12,0.95), rgba(6,214,160,0.04)); }
.wps-card-gold   { background: linear-gradient(145deg, rgba(14,12,3,0.95), rgba(212,175,55,0.04)); }
.wps-card-blue   { background: linear-gradient(145deg, rgba(3,8,18,0.95), rgba(56,139,253,0.04)); }
.wps-card-purple { background: linear-gradient(145deg, rgba(8,3,18,0.95), rgba(168,85,247,0.04)); }

/* Animated glow blob inside card */
.wps-card-glow {
    position: absolute;
    width: 160px; height: 160px;
    border-radius: 50%;
    filter: blur(50px);
    top: -40px; right: -40px;
    pointer-events: none;
    animation: wpsGlowPulse 4s ease-in-out infinite;
}
.wps-card-green  .wps-card-glow { background: rgba(6,214,160,0.15); }
.wps-card-gold   .wps-card-glow { background: rgba(212,175,55,0.12); animation-delay: 1s; }
.wps-card-blue   .wps-card-glow { background: rgba(56,139,253,0.13); animation-delay: 2s; }
.wps-card-purple .wps-card-glow { background: rgba(168,85,247,0.13); animation-delay: 3s; }

@keyframes wpsGlowPulse { 0%,100%{opacity:0.5;transform:scale(1)} 50%{opacity:1;transform:scale(1.15)} }

/* Top accent bar */
.wps-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 3px;
    border-radius: 20px 20px 0 0;
}
.wps-card-green::before  { background: linear-gradient(90deg, #06d6a0 0%, rgba(6,214,160,0.15) 100%); }
.wps-card-gold::before   { background: linear-gradient(90deg, #d4af37 0%, rgba(212,175,55,0.15) 100%); }
.wps-card-blue::before   { background: linear-gradient(90deg, #388bfd 0%, rgba(56,139,253,0.15) 100%); }
.wps-card-purple::before { background: linear-gradient(90deg, #a855f7 0%, rgba(168,85,247,0.15) 100%); }

/* Hover states */
.wps-card:hover { transform: translateY(-5px); }
.wps-card-green:hover  { box-shadow: 0 12px 40px rgba(6,214,160,0.2);   border-color: rgba(6,214,160,0.3); }
.wps-card-gold:hover   { box-shadow: 0 12px 40px rgba(212,175,55,0.2);  border-color: rgba(212,175,55,0.3); }
.wps-card-blue:hover   { box-shadow: 0 12px 40px rgba(56,139,253,0.2);  border-color: rgba(56,139,253,0.3); }
.wps-card-purple:hover { box-shadow: 0 12px 40px rgba(168,85,247,0.2);  border-color: rgba(168,85,247,0.3); }

/* Card inner padding */
.wps-card-inner { padding: 22px 22px 18px; position: relative; z-index: 1; }

.wps-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}

.wps-card-label {
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 1.8px;
    color: rgba(255,255,255,0.3);
    font-weight: 700;
}

/* Trend badge */
.wps-trend {
    font-size: 0.58rem;
    font-weight: 800;
    letter-spacing: 1px;
    padding: 3px 8px;
    border-radius: 6px;
}
.wps-trend-up {
    background: rgba(6,214,160,0.12);
    color: #06d6a0;
    border: 1px solid rgba(6,214,160,0.25);
}
.wps-trend-down {
    background: rgba(239,71,111,0.12);
    color: #ef476f;
    border: 1px solid rgba(239,71,111,0.25);
}

/* Value */
.wps-card-main { margin-bottom: 10px; }

.wps-card-value {
    font-size: 2rem;
    font-weight: 800;
    font-family: 'Courier New', monospace;
    letter-spacing: -1.5px;
    line-height: 1;
    text-shadow: 0 0 30px currentColor;
}

.wps-green  { color: #06d6a0; }
.wps-gold   { color: #d4af37; }
.wps-blue   { color: #388bfd; }
.wps-purple { color: #a855f7; }

.wps-card-sub {
    font-size: 0.68rem;
    color: rgba(255,255,255,0.25);
    margin-bottom: 14px;
    letter-spacing: 0.3px;
}

/* Sparkline SVG */
.wps-spark-svg {
    width: 100%;
    height: 32px;
    margin-bottom: 12px;
    display: block;
}

.wps-spark-line {
    fill: none;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 300;
    stroke-dashoffset: 300;
    animation: wepDraw 2.5s ease-out forwards 0.6s;
}
.wps-sl-green { stroke: #06d6a0; }

/* Bar chart rects */
.wps-bbar {
    opacity: 0;
    animation: wpsBarIn 0.5s ease-out forwards;
}
.wps-bbar:nth-child(1) { animation-delay: 0.2s; }
.wps-bbar:nth-child(2) { animation-delay: 0.4s; }
.wps-bbar:nth-child(3) { animation-delay: 0.6s; }
.wps-bbar:nth-child(4) { animation-delay: 0.8s; }
.wps-bbar:nth-child(5) { animation-delay: 1.0s; }
.wps-bb-purple { fill: rgba(168,85,247,0.65); rx: 2; }

@keyframes wpsBarIn {
    from { opacity:0; transform:scaleY(0); transform-origin:bottom; }
    to   { opacity:1; transform:scaleY(1); transform-origin:bottom; }
}

/* Donut */
.wps-donut-wrap {
    position: relative;
    width: 40px; height: 40px;
    flex-shrink: 0;
}
.wps-donut { width: 40px; height: 40px; transform: rotate(-90deg); }
.wps-donut-bg  { fill: none; stroke: rgba(212,175,55,0.12); stroke-width: 3.5; }
.wps-donut-arc { fill: none; stroke-width: 3.5; stroke-linecap: round; }
.wps-arc-gold  {
    stroke: #d4af37;
    stroke-dasharray: 0 94.2;
    animation: wpsDonutFill 2.2s ease-out forwards 0.8s;
    filter: drop-shadow(0 0 4px rgba(212,175,55,0.6));
}
@keyframes wpsDonutFill { to { stroke-dasharray: 55 94.2; } }

.wps-donut-val {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6rem;
    font-weight: 800;
    color: #d4af37;
    font-family: 'Courier New', monospace;
}

/* Stars */
.wps-stars {
    display: flex;
    gap: 3px;
}
.wps-star {
    width: 8px; height: 8px;
    border-radius: 50%;
    background: rgba(56,139,253,0.15);
}
.wps-star-on {
    background: #388bfd;
    box-shadow: 0 0 6px rgba(56,139,253,0.7);
    animation: wpsStarPulse 2.5s ease-in-out infinite;
}
.wps-star-on:nth-child(1){ animation-delay:0s; }
.wps-star-on:nth-child(2){ animation-delay:0.25s; }
.wps-star-on:nth-child(3){ animation-delay:0.5s; }
.wps-star-on:nth-child(4){ animation-delay:0.75s; }
.wps-star-on:nth-child(5){ animation-delay:1s; }
@keyframes wpsStarPulse { 0%,100%{opacity:0.5;transform:scale(1)} 50%{opacity:1;transform:scale(1.4)} }

/* Footer: bar + pct */
.wps-card-footer {
    display: flex;
    align-items: center;
    gap: 10px;
}
.wps-bar-track {
    flex: 1;
    height: 4px;
    background: rgba(255,255,255,0.06);
    border-radius: 4px;
    overflow: hidden;
}
.wps-bar-fill {
    height: 100%;
    border-radius: 4px;
    position: relative;
    overflow: hidden;
}
.wps-bar-fill::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.4) 50%, transparent 100%);
    animation: wpsShimmer 2.5s linear infinite;
}
@keyframes wpsShimmer { 0%{transform:translateX(-100%)} 100%{transform:translateX(200%)} }

.wps-bf-green  { background: linear-gradient(90deg, #06d6a0, rgba(6,214,160,0.5)); }
.wps-bf-gold   { background: linear-gradient(90deg, #d4af37, rgba(212,175,55,0.5)); }
.wps-bf-blue   { background: linear-gradient(90deg, #388bfd, rgba(56,139,253,0.5)); }
.wps-bf-purple { background: linear-gradient(90deg, #a855f7, rgba(168,85,247,0.5)); }

.wps-bar-pct {
    font-size: 0.65rem;
    font-weight: 700;
    color: rgba(255,255,255,0.3);
    font-family: 'Courier New', monospace;
    flex-shrink: 0;
    width: 30px;
    text-align: right;
}

/* ============================================================
   WALLET HEADER — v3 centered divider style
   ============================================================ */

.wallet-header {
    display: flex !important;
    align-items: center !important;
    gap: 24px !important;
    margin-bottom: 32px !important;
    position: relative !important;
    z-index: 2 !important;
    justify-content: center !important;
}

.wh-divider-line {
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0,212,255,0.25), transparent);
}

.wh-center {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.wh-icon-ring {
    width: 58px; height: 58px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(0,212,255,0.12), rgba(212,175,55,0.08));
    border: 1px solid rgba(0,212,255,0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #00d4ff;
    box-shadow: 0 0 30px rgba(0,212,255,0.15), inset 0 1px 0 rgba(255,255,255,0.08);
    animation: wpsIconPulse 3s ease-in-out infinite;
    margin-bottom: 4px;
}

@keyframes wpsIconPulse { 0%,100%{box-shadow:0 0 20px rgba(0,212,255,0.1)} 50%{box-shadow:0 0 40px rgba(0,212,255,0.3)} }

.wh-title {
    font-size: 2.4rem !important;
    font-weight: 800 !important;
    letter-spacing: 4px !important;
    text-transform: uppercase !important;
    background: linear-gradient(135deg, #ffffff 0%, #00d4ff 40%, #d4af37 80%, #ffffff 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    margin: 0 !important;
    text-shadow: none !important;
    animation: whTitleShift 6s ease-in-out infinite;
    background-size: 200% 100%;
}

@keyframes whTitleShift { 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }

.wallet-status {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    font-size: 0.75rem !important;
    color: rgba(255,255,255,0.4) !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
}

.wallet-status-dot {
    width: 7px; height: 7px;
    background: #06d6a0 !important;
    border-radius: 50% !important;
    box-shadow: 0 0 8px rgba(6,214,160,0.9) !important;
    animation: walletPulse 1.5s ease-in-out infinite !important;
}

@keyframes walletPulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(0.8)} }

/* ── Responsive ── */
@media (max-width: 960px) {
    .wps-cards-row { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 540px) {
    .wps-cards-row { grid-template-columns: 1fr 1fr; gap: 10px; }
    .wps-card-inner { padding: 16px 14px 14px; }
    .wps-card-value { font-size: 1.5rem; }
    .wh-title { font-size: 1.6rem !important; letter-spacing: 2px !important; }
    .wps-live-badge { padding: 0 12px; font-size: 0.6rem; }
}
