:root{--accent:#a78bfa;--accent-mid:#8b5cf6;--accent-hover:#7c3aed;--accent-light:rgba(139,92,246,0.15);--accent-text:#c4b5fd;--radius-card:20px;--radius-btn:12px;--radius-input:12px;--radius-pill:999px;--shadow-card:0 2px 20px rgba(0,0,0,0.25),0 1px 4px rgba(0,0,0,0.12);--shadow-hover:0 4px 28px rgba(139,92,246,0.20),0 2px 8px rgba(0,0,0,0.18);--border:rgba(255,255,255,0.12);--border-input:rgba(255,255,255,0.22);--border-light:rgba(255,255,255,0.15);--bg-page:#131120;--bg-card:#1e1a2c;--bg-subtle:#262233;--bg-muted:#221e30;--text-primary:#e2e0e9;--text-secondary:#b8b3c5;--text-muted:#8a8599;--text-faint:#6e697e;--success-bg:rgba(34,197,94,0.12);--success-text:#4ade80;--success-border:rgba(34,197,94,0.25);--error-bg:rgba(239,68,68,0.12);--error-text:#f87171;--error-border:rgba(239,68,68,0.25);--warning-bg:rgba(245,158,11,0.12);--warning-text:#fbbf24;--warning-border:rgba(245,158,11,0.25);--info-bg:rgba(59,130,246,0.12);--info-text:#60a5fa;--info-border:rgba(59,130,246,0.25);--link-color:#60a5fa;--table-border:rgba(255,255,255,0.08);--table-header:rgba(255,255,255,0.04);--table-row-hover:rgba(255,255,255,0.03);--topbar-bg:rgba(19,17,32,0.78);--topbar-border:rgba(255,255,255,0.08);--mobile-menu-bg:rgba(30,26,44,0.95);--pill-bg:rgba(255,255,255,0.08);--input-bg:rgba(255,255,255,0.06);--tabs-bg:rgba(139,92,246,0.12);--tab-active-bg:#1e1a2c;--tab-active-shadow:0 1px 4px rgba(0,0,0,0.2);--btn-disabled-bg:#3a3548;--danger-zone-border:rgba(239,68,68,0.4);--danger-zone-bg:rgba(239,68,68,0.08);--chart-bg:#1e1a2c;--chart-text:#b8b3c5;--chart-grid:rgba(255,255,255,0.06);--chart-border:rgba(255,255,255,0.10);--loading-overlay:rgba(19,17,32,0.85);--skeleton-base:rgba(255,255,255,0.06);--skeleton-shine:rgba(255,255,255,0.10)}[data-theme=light]{--accent:#7c3aed;--accent-mid:#8b5cf6;--accent-hover:#6d28d9;--accent-light:#ede9fe;--accent-text:#5b21b6;--shadow-card:0 2px 20px rgba(124,58,237,0.07),0 1px 4px rgba(0,0,0,0.04);--shadow-hover:0 4px 28px rgba(124,58,237,0.13),0 2px 8px rgba(0,0,0,0.06);--border:rgba(124,58,237,0.14);--border-input:rgba(124,58,237,0.22);--border-light:#d1d5db;--bg-page:#f5f3ff;--bg-card:#ffffff;--bg-subtle:#f3f4f6;--bg-muted:#f9fafb;--text-primary:#1c1c1e;--text-secondary:#4b5563;--text-muted:#6b7280;--text-faint:#9ca3af;--success-bg:#dcfce7;--success-text:#15803d;--success-border:#bbf7d0;--error-bg:#fee2e2;--error-text:#dc2626;--error-border:#fecaca;--warning-bg:#fef9c3;--warning-text:#ca8a04;--warning-border:#fde68a;--info-bg:#eff6ff;--info-text:#1d4ed8;--info-border:#93c5fd;--link-color:#2563eb;--table-border:#e5e7eb;--table-header:#f9fafb;--table-row-hover:#f3f4f6;--topbar-bg:rgba(255,255,255,0.78);--topbar-border:rgba(124,58,237,0.10);--mobile-menu-bg:rgba(255,255,255,0.95);--pill-bg:rgba(255,255,255,0.9);--input-bg:rgba(255,255,255,0.9);--tabs-bg:rgba(124,58,237,0.08);--tab-active-bg:#ffffff;--tab-active-shadow:0 1px 4px rgba(0,0,0,0.08);--btn-disabled-bg:#d1d5db;--danger-zone-border:#fca5a5;--danger-zone-bg:#fff7f7;--chart-bg:#ffffff;--chart-text:#374151;--chart-grid:#f3f4f6;--chart-border:#e5e7eb;--loading-overlay:rgba(255,255,255,0.85);--skeleton-base:rgba(0,0,0,0.06);--skeleton-shine:rgba(0,0,0,0.10)}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;color:var(--text-primary);background:var(--bg-page);background-image:radial-gradient(ellipse 80% 60% at 50% -10%,rgba(139,92,246,.14) 0,transparent 70%),radial-gradient(ellipse 50% 40% at 100% 80%,rgba(139,92,246,.06) 0,transparent 60%);background-attachment:fixed;min-height:100vh}[data-theme=light] body{background-image:radial-gradient(ellipse 80% 60% at 50% -10%,rgba(167,139,250,.18) 0,transparent 70%),radial-gradient(ellipse 50% 40% at 100% 80%,rgba(139,92,246,.08) 0,transparent 60%)}a{color:var(--accent);text-decoration:none}main{max-width:1100px;margin:0 auto;padding:32px 20px 80px}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:10;width:100%;overflow:hidden;background:var(--topbar-bg);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--topbar-border)}.topbar-inner{width:100%;max-width:100%;box-sizing:border-box;padding:12px 20px;justify-content:space-between;gap:16px}.nav-brand,.topbar-inner{display:flex;align-items:center}.nav-brand{gap:8px;font-weight:800;font-size:16px;color:var(--text-primary);text-decoration:none;letter-spacing:-.02em}.menu{display:flex;gap:4px;align-items:center}.nav-link{position:relative;font-weight:600;font-size:14px;color:var(--text-muted);text-decoration:none;padding:6px 12px;border-radius:8px;transition:color .15s,background .15s}.nav-link-active,.nav-link:hover{color:var(--accent);background:var(--accent-light)}.wallet-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--pill-bg);color:var(--text-primary);font-size:13px;font-weight:600;font-family:monospace,Courier New,Courier}.wallet-dot{width:8px;height:8px;border-radius:50%;background:var(--success-text);flex-shrink:0}.pill{padding:6px 14px;border-radius:var(--radius-pill);background:var(--pill-bg);color:var(--text-primary);font-size:14px;font-weight:500}.card,.pill{border:1px solid var(--border)}.card{background:var(--bg-card);border-radius:var(--radius-card);padding:20px;box-shadow:var(--shadow-card);transition:box-shadow .2s}.card:hover{box-shadow:var(--shadow-hover)}.grid{display:grid;grid-gap:16px;gap:16px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}.controls-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:flex-end}.controls-row .label{color:var(--text-muted);font-size:14px}.controls-row select,select{padding:6px 12px;border-radius:10px;border:1.5px solid var(--border-input);background:var(--input-bg);color:var(--text-primary);font-size:14px;outline:none;transition:border-color .15s}select:focus{border-color:var(--accent-mid)}.recharts-default-legend{display:flex;gap:10px;justify-content:flex-end;margin-top:6px}.recharts-legend-item-text{font-weight:600;color:var(--text-primary);font-size:12px}.recharts-legend-icon{border-radius:999px}.muted{color:var(--text-muted)}.muted,button{font-size:14px}button{padding:9px 16px;border-radius:var(--radius-btn);border:none;background:linear-gradient(135deg,var(--accent) 0,var(--accent-hover) 100%);color:#ffffff;cursor:pointer;font-weight:600;transition:opacity .15s,transform .1s,box-shadow .15s;box-shadow:0 2px 8px rgba(124,58,237,.3)}button:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 4px 14px rgba(124,58,237,.38)}button:active:not(:disabled){transform:translateY(0)}button:disabled{background:var(--btn-disabled-bg);box-shadow:none;cursor:not-allowed;opacity:.7}.tabs{display:inline-flex;gap:4px;background:var(--tabs-bg);padding:4px;border-radius:var(--radius-pill)}.tab{border:none;background:transparent;box-shadow:none;color:var(--text-muted);padding:6px 14px;border-radius:var(--radius-pill);font-weight:600;font-size:13px;transition:background .15s,color .15s}.tab:hover:not(.tab-active){background:rgba(124,58,237,.06);opacity:1;transform:none}.tab-active{background:var(--tab-active-bg);color:var(--accent);border:1px solid var(--border);box-shadow:var(--tab-active-shadow)}input{width:100%;padding:9px 12px;border-radius:var(--radius-input);border:1.5px solid var(--border-input);background:var(--input-bg);color:var(--text-primary);font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s}input:focus{border-color:var(--accent-mid);box-shadow:0 0 0 3px rgba(139,92,246,.15)}.badge{display:inline-flex;align-items:center;padding:3px 12px;border-radius:var(--radius-pill);font-size:12px;font-weight:700;letter-spacing:.04em}.badge-green{background:var(--success-bg);color:var(--success-text)}.badge-red{background:var(--error-bg);color:var(--error-text)}.badge-yellow{background:var(--warning-bg);color:var(--warning-text)}.danger-zone{border:1.5px solid var(--danger-zone-border)!important;background:var(--danger-zone-bg)!important}button.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 2px 8px rgba(220,38,38,.3);border:none}button.btn-outline{background:var(--pill-bg);color:var(--accent);border:1.5px solid var(--border-input);box-shadow:none}button.btn-outline:hover:not(:disabled){background:var(--accent-light);box-shadow:none}.form-group{display:flex;flex-direction:column;gap:4px}.form-group label{font-size:13px;color:var(--text-secondary);font-weight:600}.form-help{font-size:12px;color:var(--text-muted);line-height:1.4}.input-row{display:flex;gap:8px;align-items:center}.input-row input{flex:1 1}.input-suffix{font-size:13px;color:var(--text-muted);white-space:nowrap;min-width:32px}.param-group{border:1px solid var(--border);border-radius:var(--radius-card);padding:16px;background:rgba(124,58,237,.02);display:flex;flex-direction:column;gap:16px}.param-group-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--accent-text);margin-bottom:4px}.balance-display{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.balance-value{font-size:22px;font-weight:700}.balance-unit{font-size:14px;color:var(--text-muted)}.stat-value{font-size:28px;font-weight:700;line-height:1.2}.hint-box{background:var(--accent-light);border:1px solid rgba(124,58,237,.18);border-radius:14px;padding:14px 16px;font-size:14px;color:var(--accent-text);line-height:1.5}.section-label{font-size:1.25em;font-weight:700;color:var(--text-primary);margin-bottom:10px}button.btn-sm{padding:4px 10px;font-size:12px;border-radius:8px;box-shadow:none}.tx-log{display:flex;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:var(--radius-card);overflow:hidden}.tx-row{display:flex;align-items:center;gap:12px;padding:10px 16px;font-size:13px;border-bottom:1px solid var(--table-border);background:var(--bg-card);transition:background .12s}.tx-row:last-child{border-bottom:none}.tx-row:hover{background:var(--table-row-hover)}.tx-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tx-dot-blue{background:#8b5cf6}.tx-dot-green{background:#22c55e}.tx-dot-yellow{background:#f59e0b}.tx-dot-red{background:#ef4444}.tx-type{font-weight:600;min-width:100px}.tx-detail{flex:1 1}.tx-detail,.tx-time{color:var(--text-muted)}.tx-time{font-size:12px;white-space:nowrap}.tx-mock-badge{display:inline-block;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:600;margin-left:4px}.step-flow,.tx-mock-badge{background:var(--accent-light);color:var(--accent-text)}.step-flow{display:flex;gap:8px;align-items:center;padding:10px 14px;border:1px solid rgba(124,58,237,.2);border-radius:12px;font-size:13px}.hamburger{display:none;background:transparent;box-shadow:none;font-size:22px;padding:4px 8px;min-height:auto;color:var(--text-primary)}.hamburger:hover:not(:disabled){box-shadow:none;transform:none;opacity:.7}.mobile-menu{display:none}@media (max-width:640px){.stat-value{font-size:20px}.balance-value{font-size:18px}button{min-height:44px}.topbar-inner{flex-wrap:nowrap;gap:6px;padding:8px 12px;overflow:hidden;box-sizing:border-box;max-width:100vw}.menu{gap:4px;font-size:13px}.menu-actions{flex-wrap:nowrap!important;overflow:hidden;gap:4px!important;flex-shrink:1;min-width:0}.menu-actions button,.menu-actions span{flex-shrink:0;font-size:11px;padding:4px 6px;min-height:36px}.chain-badge{display:none!important}.wallet-pill{max-width:90px;overflow:hidden;text-overflow:ellipsis}.disconnect-btn{font-size:10px!important;padding:4px 6px!important}.menu-nav .nav-link{display:none}.hamburger{display:inline-flex;min-height:44px;align-items:center;justify-content:center}.mobile-menu{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--border);background:var(--mobile-menu-bg)}.mobile-menu a{display:block;padding:12px 20px;font-weight:600;font-size:15px;color:var(--text-secondary);border-bottom:1px solid var(--table-border);transition:background .12s,color .12s}.mobile-menu a:last-child{border-bottom:none}.mobile-menu a.nav-link-active,.mobile-menu a:hover{background:var(--table-row-hover);color:var(--accent)}main{padding:16px 8px 64px}.controls-row{justify-content:flex-start}.chart-fade-in{margin:0 -4px}.recharts-legend-wrapper{font-size:10px!important}.card{padding:12px 10px}table{font-size:11px}td,th{padding:4px!important}.section-label{font-size:13px}h1{font-size:20px!important}.vault-detail-grid{grid-template-columns:1fr!important}iframe{max-height:300px}.ranking-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.form-group label{font-size:12px}.form-group input,.form-group select{font-size:13px}.sim-params-card{width:100%!important}}.admin-sidebar{position:-webkit-sticky;position:sticky;top:16px;max-height:calc(100vh - 80px);overflow-y:auto}@media (max-width:640px){.admin-sidebar{position:static;max-height:none;overflow-y:visible}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes chart-fade-in{0%{opacity:0}to{opacity:1}}.chart-fade-in{animation:chart-fade-in .3s ease-out forwards}.vault-card{position:relative;transition:transform .18s,box-shadow .18s}.vault-card:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(139,92,246,.18),0 2px 8px rgba(0,0,0,.12)}.vault-card:before{content:"";position:absolute;inset:-1px;border-radius:var(--radius-card);padding:1px;background:linear-gradient(135deg,transparent,transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:0;transition:opacity .25s}.vault-card:hover:before{background:linear-gradient(135deg,#a78bfa,#8b5cf6,#6366f1);opacity:1}.vault-card-deposited{box-shadow:0 0 0 1px rgba(34,197,94,.3),0 0 16px rgba(34,197,94,.08)}@keyframes pulse-ring{0%{transform:scale(.8);opacity:1}to{transform:scale(2.2);opacity:0}}.pulse-dot{position:relative;display:inline-block;width:8px;height:8px;vertical-align:middle;margin-right:4px}.pulse-dot,.pulse-dot:after{border-radius:50%;background:var(--success-text)}.pulse-dot:after{content:"";position:absolute;inset:0;animation:pulse-ring 1.8s ease-out infinite}