:root{--bg-base: #0B0F1A;--bg-card: #0F172A;--bg-elev: #1E293B;--border: #1E293B;--text-primary: #E5E7EB;--text-muted: #94A3B8;--text-dim: #64748B;--brand: #0161FE;--brand-soft: rgba(1, 97, 254, .18);--brand-glow: rgba(1, 97, 254, .32);--success: #22C55E;--warning: #F59E0B;--danger: #EF4444;--radius: 12px;--shadow-card: 0 12px 40px rgba(0, 0, 0, .45);--font-display: "Manrope", ui-sans-serif, system-ui, sans-serif;--font-body: "Inter", ui-sans-serif, system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:radial-gradient(ellipse at top,#0F172A 0%,var(--bg-base) 60%);color:var(--text-primary);font-family:var(--font-body);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;border-radius:var(--radius);padding:12px 18px;background:var(--brand);color:#fff;font-weight:600;transition:transform 80ms ease,background .12s ease}button:hover{background:#0153d9}button:active{transform:translateY(1px)}button:disabled{opacity:.45;cursor:not-allowed}button.ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border)}button:focus-visible,input:focus-visible{outline:2px solid var(--brand);outline-offset:2px}input[type=text],input[type=number],input[type=email],input[type=tel]{font-family:inherit;font-size:inherit;border:1px solid var(--border);background:#0f172ab3;color:var(--text-primary);border-radius:10px;padding:11px 14px;width:100%;outline:none}input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}h1,h2,h3{font-family:var(--font-display);font-weight:700;margin:0}h1{font-size:28px;letter-spacing:-.01em}h2{font-size:18px}h3{font-size:15px;color:var(--text-muted)}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 28px;border-bottom:1px solid var(--border);background:#0b0f1aa6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;letter-spacing:.5px}.brand .dot{width:10px;height:10px;border-radius:50%;background:var(--brand);box-shadow:0 0 10px var(--brand-glow)}.login-shell{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 16px}.login-card{width:100%;max-width:480px;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-card);padding:28px}.login-card .login-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:18px 0 22px;background:#ffffff08;border-radius:999px;padding:4px}.login-card .login-tabs button{background:transparent;color:var(--text-muted);padding:8px 4px;border-radius:999px;font-size:13px;font-weight:600}.login-card .login-tabs button.active{background:var(--brand);color:#fff;box-shadow:0 0 12px var(--brand-glow)}.login-card .tab-body{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px}.muted{color:var(--text-muted)}.dim{color:var(--text-dim);font-size:13px}.input-row{display:grid;gap:10px;width:100%}.qr-frame{background:#fff;border-radius:12px;padding:12px;display:inline-block}.method-banner{display:inline-flex;align-items:center;gap:6px;background:var(--brand-soft);color:var(--brand);padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.dashboard-shell{flex:1;display:grid;grid-template-columns:1fr 360px;gap:22px;padding:28px;max-width:1380px;width:100%;margin:0 auto}.dashboard-main{display:grid;gap:18px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.card h2{margin-bottom:12px}.card .row{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid rgba(148,163,184,.08)}.card .row:first-of-type{border-top:0}.card .row .title{color:var(--text-primary)}.card .row .sub{color:var(--text-muted);font-size:13px}.audit-feed{position:sticky;top:90px;align-self:flex-start;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;height:calc(100vh - 110px);display:flex;flex-direction:column}.audit-feed h2{margin-bottom:12px;display:flex;align-items:center;gap:8px}.audit-feed h2 .pulse{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 8px #22c55e99;animation:pulse 1.4s infinite ease-in-out}.audit-feed .events{overflow-y:auto;flex:1;padding-right:4px}.audit-feed .event{padding:8px 10px;border-radius:8px;margin-bottom:6px;background:#ffffff05;border-left:3px solid var(--brand);display:grid;gap:2px}.audit-feed .event.success{border-left-color:var(--success)}.audit-feed .event.denied{border-left-color:var(--danger)}.audit-feed .event .head{font-size:13px;font-weight:600}.audit-feed .event .meta{font-size:11px;color:var(--text-muted)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.success-flash{position:fixed;top:0;right:0;bottom:0;left:0;background:#22c55e2e;display:flex;align-items:center;justify-content:center;z-index:50;pointer-events:none}.success-flash .check{width:96px;height:96px;border-radius:50%;background:var(--success);color:#fff;display:flex;align-items:center;justify-content:center;font-size:56px;box-shadow:0 0 32px #22c55e8c}.error-text{color:var(--danger);font-size:13px}
