:root{--bg-dark: #090d16;--bg-card: rgba(17, 24, 39, .75);--bg-card-hover: rgba(31, 41, 55, .85);--border-glow: rgba(99, 102, 241, .25);--accent-primary: #6366f1;--accent-cyan: #06b6d4;--accent-emerald: #10b981;--accent-amber: #f59e0b;--accent-rose: #f43f5e;--text-main: #f3f4f6;--text-muted: #9ca3af;--text-dim: #6b7280;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{background-color:var(--bg-dark);background-image:radial-gradient(at 0% 0%,rgba(99,102,241,.15) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(6,182,212,.1) 0px,transparent 50%);background-attachment:fixed;color:var(--text-main);font-family:var(--font-sans);min-height:100vh;overflow-x:hidden;line-height:1.5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#0f172a99}::-webkit-scrollbar-thumb{background:#6366f166;border-radius:9999px}.glass-panel{background:#111827bf;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);box-shadow:0 8px 32px #0000005e;border-radius:16px}.glass-panel-interactive{transition:all .25s cubic-bezier(.4,0,.2,1)}.glass-panel-interactive:hover{border-color:#6366f166;transform:translateY(-2px);box-shadow:0 12px 40px #6366f126}.glass-input{background:#0f172a99;border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:10px;padding:10px 14px;font-size:13px;font-family:var(--font-sans);outline:none;transition:all .2s ease;width:100%}.glass-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #6366f140;background:#0f172ad9}.glass-input.pl-10,input.glass-input.pl-10{padding-left:2.75rem!important}.glass-input.pr-10,input.glass-input.pr-10{padding-right:2.75rem!important}.glass-input.pl-11,input.glass-input.pl-11{padding-left:3rem!important}.glass-input.pr-11,input.glass-input.pr-11{padding-right:3rem!important}.font-mono{font-family:var(--font-mono)}.btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:none;padding:10px 18px;border-radius:10px;font-weight:600;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease;box-shadow:0 4px 14px #6366f166}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #6366f199;filter:brightness(1.1)}.btn-secondary{background:#ffffff0f;color:var(--text-main);border:1px solid rgba(255,255,255,.12);padding:8px 14px;border-radius:10px;font-weight:500;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.btn-secondary:hover{background:#ffffff1f;border-color:#ffffff40}.btn-danger{background:#f43f5e26;color:#fda4af;border:1px solid rgba(244,63,94,.3);padding:8px 14px;border-radius:10px;font-weight:500;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.btn-danger:hover{background:#f43f5e4d}.badge{padding:3px 8px;border-radius:9999px;font-size:10px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;display:inline-flex;align-items:center;gap:4px}.badge-login{background:#6366f133;color:#a5b4fc;border:1px solid rgba(99,102,241,.3)}.badge-card{background:#06b6d433;color:#67e8f9;border:1px solid rgba(6,182,212,.3)}.badge-note{background:#f59e0b33;color:#fde047;border:1px solid rgba(245,158,11,.3)}.badge-wifi{background:#10b98133;color:#6ee7b7;border:1px solid rgba(16,185,129,.3)}.badge-id{background:#ec489933;color:#f472b6;border:1px solid rgba(236,72,153,.3)}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .25s cubic-bezier(.16,1,.3,1) forwards}@keyframes pulseGlow{0%,to{opacity:.08;transform:scale(1)}50%{opacity:.18;transform:scale(1.05)}}.pulse-glow{animation:pulseGlow 6s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}
