:root{color-scheme:light dark;--bg: #f7f7f8;--surface: #ffffff;--surface-2: #f0f2f5;--border: #e4e6eb;--text: #0f172a;--muted: #6b7280;--primary: #2563eb;--primary-hover: #1d4ed8;--pos: #15803d;--neg: #b91c1c;--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 8px rgba(0, 0, 0, .04)}@media (prefers-color-scheme: dark){:root{--bg: #0b1020;--surface: #111827;--surface-2: #1f2937;--border: #1f2a3a;--text: #e5e7eb;--muted: #94a3b8;--primary: #3b82f6;--primary-hover: #60a5fa;--pos: #4ade80;--neg: #f87171;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 1px 12px rgba(0, 0, 0, .3)}}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.45}h1,h2{font-weight:600;letter-spacing:-.01em}h1{font-size:1.6rem;margin:0}h2{font-size:1.1rem;margin:0}code,pre{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.85em}pre{background:var(--surface-2);padding:12px;border-radius:8px;overflow-x:auto}button{font:inherit;padding:8px 14px;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:background .1s}button:hover:not(:disabled){background:var(--surface-2)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--primary);color:#fff;border-color:var(--primary)}button.primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.container{max-width:1100px;margin:0 auto;padding:24px 20px 80px;display:flex;flex-direction:column;gap:20px}.header{display:flex;align-items:center;justify-content:space-between;padding:4px 0 8px}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:14px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.row-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.muted{color:var(--muted)}.small{font-size:.85em}.pos{color:var(--pos)}.neg{color:var(--neg)}.num{font-variant-numeric:tabular-nums;text-align:right}.summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;background:var(--surface-2);padding:12px;border-radius:8px}.summary>div>div:last-child{font-size:1.15rem;font-weight:600;font-variant-numeric:tabular-nums}@media (max-width: 600px){.summary{grid-template-columns:repeat(2,1fr)}}.accounts{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.accounts li{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--surface-2);border-radius:8px}.accounts .balance{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.txn-table{width:100%;border-collapse:collapse}.txn-table th,.txn-table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border)}.txn-table th{font-weight:600;font-size:.85em;color:var(--muted)}.txn-table tr:last-child td{border-bottom:0}.txn-table .pending{color:var(--muted);font-size:.85em;font-style:italic;margin-left:4px}.pill{padding:4px 10px;font-size:.85em;border-radius:999px}.pill.active{background:var(--primary);border-color:var(--primary);color:#fff}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(60% 50% at 0% 0%,rgba(37,99,235,.12),transparent 70%),radial-gradient(50% 50% at 100% 100%,rgba(99,102,241,.1),transparent 65%),radial-gradient(40% 35% at 100% 0%,rgba(56,189,248,.07),transparent 70%),var(--bg);position:relative;overflow:hidden}.auth-shell:after{content:"";position:absolute;inset:0;background:radial-gradient(closest-side at 50% 50%,transparent 60%,rgba(0,0,0,.04) 100%);pointer-events:none}.auth-card{position:relative;width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:36px 32px 32px;box-shadow:0 1px 1px #00000008,0 18px 60px -16px #0f172a2e;animation:card-rise .45s cubic-bezier(.2,.8,.2,1) both}@media (prefers-color-scheme: dark){.auth-card{box-shadow:0 1px 1px #0006,0 24px 60px -16px #0009}}@keyframes card-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.brand{display:flex;align-items:center;gap:12px;font-size:1.6rem;font-weight:700;letter-spacing:-.02em;margin-bottom:6px}.brand-mark{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#2563eb,#4f46e5 60%,#6366f1);color:#fff;font-weight:800;font-size:1.25rem;box-shadow:0 6px 18px -6px #4f46e599}.brand-name{line-height:1}.brand-sub{margin:0 0 28px;color:var(--muted);font-size:.95rem}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-form label{display:flex;flex-direction:column;gap:6px;font-size:.85em;font-weight:500;color:var(--muted)}.auth-form label span{letter-spacing:.02em;text-transform:uppercase;font-size:.7rem}.auth-form input{font:inherit;font-size:.95rem;padding:11px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);transition:border-color .15s,box-shadow .15s,background .15s}.auth-form input:hover{border-color:color-mix(in srgb,var(--border) 60%,var(--text) 40%)}.auth-form input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 22%,transparent);background:var(--surface)}.auth-form button.primary{margin-top:4px;padding:12px 16px;border-radius:10px;font-weight:600;font-size:.95rem;letter-spacing:-.01em;background:linear-gradient(180deg,var(--primary) 0%,var(--primary-hover) 100%);border-color:transparent;box-shadow:0 6px 16px -8px color-mix(in srgb,var(--primary) 70%,transparent);transition:transform .05s ease,box-shadow .15s ease,filter .15s ease}.auth-form button.primary:hover:not(:disabled){filter:brightness(1.05);box-shadow:0 10px 22px -8px color-mix(in srgb,var(--primary) 75%,transparent)}.auth-form button.primary:active:not(:disabled){transform:translateY(1px)}.hint{font-size:.85em;color:var(--muted)}.msg{margin:0;font-size:.9em;min-height:1.4em}.msg.error{color:var(--neg)}.msg.ok{color:var(--pos)}.notice{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:12px}
