@import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&family=Sora:wght@400;600;700;800&display=swap");:root{--bg:#0a0806;--bg-glow:radial-gradient(ellipse 900px 600px at 70% -10%,#2a1608 0%,rgba(10,8,6,0) 60%);--surface:#14100c;--surface-border:#2a2118;--text-primary:#f2ece2;--text-secondary:#a89d8e;--accent:#f97316;--accent-dim:#f9731633;--danger:#e5484d;--success:#4ade80;--font-display:"Sora",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--radius:10px}*{box-sizing:border-box}body,html{padding:0;margin:0;background-color:var(--bg);background-image:var(--bg-glow);background-attachment:fixed;color:var(--text-primary);font-family:var(--font-display);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit}::selection{background:var(--accent-dim);color:var(--accent)}.container{max-width:1100px;margin:0 auto;padding:0 24px}.mono,.tag-badge{font-family:var(--font-mono)}.tag-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px dashed var(--surface-border);border-radius:var(--radius);background:var(--surface);font-size:.85rem;color:var(--text-secondary);transition:border-color .15s ease,color .15s ease}.tag-badge:hover{border-color:var(--accent);color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:var(--radius);font-weight:600;font-size:.95rem;cursor:pointer;border:1px solid transparent;transition:transform .1s ease,opacity .15s ease}.btn:active{transform:scale(.98)}.btn-accent{background:var(--accent);color:#140b04}.btn-accent:hover{opacity:.9}.btn-outline{background:transparent;border-color:var(--surface-border);color:var(--text-primary)}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.card{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius);padding:20px}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);display:inline-block;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.cursor-blink{display:inline-block;width:2px;background:var(--accent);margin-left:2px;animation:blink 1s step-start infinite}@keyframes blink{50%{opacity:0}}input,select,textarea{background:var(--surface);border:1px solid var(--surface-border);border-radius:var(--radius);padding:10px 12px;color:var(--text-primary);font-family:var(--font-display);font-size:.95rem}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}label{font-size:.85rem;color:var(--text-secondary);margin-bottom:6px;display:block}