.glass-panel {
    background: rgba(18, 18, 30, 0.8);
    backdrop-filter: blur(20px);
    border: 1px solid rgba(30, 30, 46, 0.8);
}

.input-field {
    background: rgba(15, 15, 26, 0.8);
    border: 1px solid rgba(30, 30, 46, 0.8);
    transition: all 0.3s ease;
}
.input-field:focus {
    border-color: rgba(201, 169, 110, 0.5);
    box-shadow: 0 0 0 3px rgba(201, 169, 110, 0.1);
    outline: none;
}
.input-field.error { border-color: #f87171; }
.input-field.success { border-color: #4ade80; }

.payment-method { transition: all 0.3s ease; cursor: pointer; }
.payment-method:hover { border-color: rgba(201, 169, 110, 0.3); }
.payment-method.active {
    border-color: #c9a96e;
    background: rgba(201, 169, 110, 0.05);
    box-shadow: 0 0 20px rgba(201, 169, 110, 0.1);
}

.plan-card { transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); }
.plan-card:hover { transform: translateY(-4px); }
.plan-card.selected {
    border-color: #c9a96e;
    background: rgba(201, 169, 110, 0.05);
    box-shadow: 0 0 30px rgba(201, 169, 110, 0.15);
}

.loader {
    width: 20px; height: 20px;
    border: 2px solid rgba(10, 10, 15, 0.3);
    border-top-color: #0a0a0f;
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}
@keyframes spin { to { transform: rotate(360deg); } }

.pix-qr { background: white; padding: 16px; border-radius: 12px; display: inline-block; }
.pix-qr-placeholder {
    width: 180px; height: 180px;
    background: linear-gradient(135deg, #f0f0f0, #e0e0e0);
    border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
}

.copy-btn { transition: all 0.2s ease; }
.copy-btn.copied { background: #4ade80; color: #0a0a0f; }
