.login-wrap[data-v-466fbee2]{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-box[data-v-466fbee2]{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:32px;width:340px;display:flex;flex-direction:column;gap:14px}.login-box h2[data-v-466fbee2]{margin:0;font-size:20px;color:#f8fafc}.login-sub[data-v-466fbee2]{font-size:13px;color:#64748b;margin:0 0 4px}.login-box input[data-v-466fbee2]{padding:10px 12px;border:1px solid #334155;border-radius:6px;background:#0f172a;color:#e2e8f0;font-size:14px;outline:none;transition:border-color .15s}.login-box input[data-v-466fbee2]:focus{border-color:#3b82f6}.login-box button[data-v-466fbee2]{padding:10px;border:none;border-radius:6px;background:#3b82f6;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.login-box button[data-v-466fbee2]:hover{background:#2563eb}.login-box button[data-v-466fbee2]:disabled{opacity:.6;cursor:not-allowed}.login-error[data-v-466fbee2]{color:#ef4444;font-size:13px;margin:0;text-align:center}.btn-logout[data-v-ac569309]{padding:6px 12px;border:1px solid #475569;border-radius:6px;background:transparent;color:#94a3b8;font-size:13px;cursor:pointer;transition:all .15s}.btn-logout[data-v-ac569309]:hover{border-color:#ef4444;color:#ef4444}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#0f172a;color:#e2e8f0;min-height:100vh}#app{max-width:1400px;margin:0 auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:12px}h1{font-size:24px;font-weight:700;color:#f8fafc}.controls{display:flex;align-items:center;gap:8px}.controls label{font-size:14px;color:#94a3b8}.controls select{padding:6px 12px;border:1px solid #334155;border-radius:6px;background:#1e293b;color:#e2e8f0;font-size:14px;cursor:pointer}.ctrl-input{padding:6px 10px;border:1px solid #334155;border-radius:6px;background:#1e293b;color:#e2e8f0;font-size:14px;width:130px}.ctrl-input::placeholder{color:#475569}.controls button{padding:6px 16px;border:none;border-radius:6px;background:#3b82f6;color:#fff;font-size:14px;cursor:pointer;transition:background .15s}.controls button:hover{background:#2563eb}.controls button:disabled{opacity:.5;cursor:not-allowed}table{width:100%;border-collapse:collapse;font-size:13px}thead th{background:#1e293b;padding:10px 8px;text-align:left;font-weight:600;color:#94a3b8;border-bottom:2px solid #334155;white-space:nowrap}thead th:first-child{border-radius:8px 0 0}thead th:last-child{border-radius:0 8px 0 0}.subheader th{font-size:11px;font-weight:500;color:#64748b;padding:6px 8px;border-bottom:1px solid #334155}tbody tr{border-bottom:1px solid #1e293b;transition:background .1s}tbody tr:hover{background:#1e293b}tbody td{padding:8px;vertical-align:middle;white-space:nowrap}.val{text-align:right;font-variant-numeric:tabular-nums}.delta{text-align:right;font-variant-numeric:tabular-nums;font-weight:500;min-width:70px}.delta.pos{color:#22c55e}.delta.neg{color:#ef4444}.delta.zero{color:#475569}.copy-col{width:32px}.copy-cell{padding:0 4px!important;text-align:center}.copy-btn{background:none;border:none;cursor:pointer;font-size:14px;padding:4px 6px;border-radius:4px;transition:background .1s;line-height:1}.copy-btn:hover{background:#334155}.copy-btn.copied{color:#22c55e}.ticker{font-weight:600;color:#f8fafc}.time{color:#94a3b8;font-size:12px}.loading,.error,.empty{text-align:center;padding:48px;font-size:16px;color:#64748b}.error{color:#ef4444}.last-update{font-size:12px;color:#64748b}
