:root{--bg: #080c10;--bg-2: #0d1117;--bg-3: #161b22;--bg-4: #1c2333;--border: #30363d;--border-bright: #484f58;--text: #e6edf3;--text-muted: #8b949e;--text-dim: #484f58;--accent: #00d4aa;--accent-2: #0cf;--accent-glow: rgba(0, 212, 170, .15);--accent-2-glow: rgba(0, 204, 255, .12);--danger: #f85149;--warning: #e3b341;--success: #3fb950;--radius: 6px;--radius-lg: 12px;--font-mono: "Roboto Mono", monospace;--font-display: "Roboto", sans-serif;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--touch-target: 44px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-mono);font-size:14px;line-height:1.7;-webkit-font-smoothing:antialiased;min-height:100vh;overflow-x:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-bright)}a{color:inherit;text-decoration:none}img{max-width:100%}button{cursor:pointer;font-family:var(--font-mono);border:none;background:none}input,textarea,select{font-family:var(--font-mono);font-size:14px}.container{width:100%;padding:0 var(--spacing-md);margin:0 auto}@media (min-width: 640px){.container{padding:0 var(--spacing-lg);max-width:1100px}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;min-height:var(--touch-target);min-width:var(--touch-target);border-radius:var(--radius);font-size:14px;font-weight:500;transition:all .2s;cursor:pointer;font-family:var(--font-mono);touch-action:manipulation;-webkit-tap-highlight-color:transparent}@media (min-width: 640px){.btn{padding:10px 20px;font-size:13px}}.btn-primary{background:var(--accent);color:var(--bg);border:1px solid var(--accent)}.btn-primary:hover{background:transparent;color:var(--accent);box-shadow:0 0 20px var(--accent-glow)}.btn-outline{background:transparent;color:var(--text);border:1px solid var(--border)}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.btn-danger{background:transparent;color:var(--danger);border:1px solid var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.btn:disabled{opacity:.4;cursor:not-allowed}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:13px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}@media (min-width: 640px){.form-label{font-size:12px}}.form-input,.form-textarea,.form-select{background:var(--bg-3);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:14px 16px;width:100%;min-height:var(--touch-target);font-size:16px;transition:border-color .2s,box-shadow .2s;outline:none;touch-action:manipulation}@media (min-width: 640px){.form-input,.form-textarea,.form-select{padding:10px 14px;font-size:14px}}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.form-textarea{resize:vertical;min-height:100px}.form-select option{background:var(--bg-3)}.card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color .2s,box-shadow .2s}.card:hover{border-color:var(--border-bright)}.tag{display:inline-flex;align-items:center;padding:4px 10px;background:var(--bg-3);border:1px solid var(--border);border-radius:20px;font-size:12px;color:var(--text-muted)}@media (min-width: 640px){.tag{padding:2px 8px;font-size:11px}}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none;z-index:9999;opacity:.4}.grid-bg{background-image:linear-gradient(rgba(0,212,170,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,212,170,.03) 1px,transparent 1px);background-size:60px 60px}.glow-text{color:var(--accent);text-shadow:0 0 20px var(--accent-glow),0 0 60px var(--accent-glow)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes scanline{0%{transform:translateY(-100%)}to{transform:translateY(100vh)}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.fade-up{animation:fadeUp .6s ease forwards}
