
:root {
  --bg: linear-gradient(135deg, rgb(10,10,30) 0%, rgb(25,10,60) 50%, rgb(10,40,80) 100%);
  --card: rgba(255,255,255,0.04);
  --stroke: rgba(255,255,255,0.06);
}

* { box-sizing: border-box; }
html, body { height: 100%; margin: 0; font-family: Inter, system-ui, Arial, sans-serif; color: #e8e8f0; background: var(--bg); }

.hidden { display: none; }
.screen { display: grid; place-items: center; height: 100%; padding: 20px; }

.card { background: var(--card); border-radius: 14px; padding: 18px; box-shadow: 0 8px 30px rgba(120,80,255,0.12); border: 1px solid var(--stroke); }
.loginCard { width: 380px; text-align: center; padding: 40px; }

.brand { font-size: 28px; letter-spacing: 0.5px; text-shadow: 0 10px 30px rgba(120,80,255,0.25); }
.by { opacity: 0.8; font-weight: 500; }
.muted { opacity: 0.8; }

.glowBtn { padding: 12px 18px; border: 0; border-radius: 10px; cursor: pointer;
  background: linear-gradient(90deg, rgba(120,80,255,0.95), rgba(0,200,255,0.95)); color: white; font-weight: 600;
  box-shadow: 0 12px 30px rgba(120,80,255,0.25);
}
.ghostBtn { padding: 10px 14px; border-radius: 10px; border: 1px solid var(--stroke); background: transparent; color: #fff; cursor: pointer; }

.topbar { display: flex; justify-content: space-between; align-items: center; padding: 18px 24px; border-bottom: 1px solid var(--stroke); }
.brandSmall { font-weight: 700; }
.profile { opacity: 0.85; }

.main { display: grid; grid-template-columns: 1fr 380px; gap: 20px; padding: 24px; max-width: 1200px; margin: 0 auto; }

.balanceCard .label { opacity: 0.8; }
.balance { font-size: 32px; font-weight: 800; margin-top: 6px; text-shadow: 0 10px 30px rgba(120,80,255,0.3); }
.meta { opacity: 0.8; margin-top: 4px; }
.totals { display: flex; gap: 20px; margin-top: 10px; opacity: 0.9; }
.totals span { font-weight: 700; }

.transferCard .row { margin-bottom: 12px; }
.transferCard input { width: 100%; padding: 10px; border-radius: 10px; border: 1px solid var(--stroke); background: rgba(0,0,0,0.25); color: #fff; }
.transferCard .actions { display: flex; gap: 10px; flex-wrap: wrap; }

.streams { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; max-height: 180px; overflow: auto; }
.stream { display: flex; justify-content: space-between; gap: 10px; padding: 8px; border-radius: 10px; background: rgba(255,255,255,0.03); }
.stream .mini { opacity: 0.85; }

.transactions { display: grid; gap: 8px; max-height: 480px; overflow: auto; }
.tx { display: flex; justify-content: space-between; gap: 12px; align-items: center; padding: 12px; border-radius: 10px; background: rgba(255,255,255,0.03); }
.tx.income { border-left: 4px solid rgba(0,200,140,0.9); }
.tx.out { border-left: 4px solid rgba(255,80,120,0.9); }
.tx .title { font-weight: 700; }
.tx .subtitle { font-size: 12px; opacity: 0.8; }
.tx .amt { font-weight: 800; }

.footer { padding: 12px 24px; display: flex; align-items: center; justify-content: space-between; opacity: 0.9; font-size: 13px; }
