:root{
  --bg: #0c0c14;
  --panel: #11111a;
  --panel-2: #151526;
  --text: #e5e7eb;
  --muted: #9aa0aa;
  --primary: #7c3aed; /* violet */
  --accent: #2563eb;  /* blue */
  --good: #22c55e;
  --bad: #ef4444;
  --border: rgba(255,255,255,.08);
  --radius: 14px;
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Inter,Ubuntu,Cantarell,"Helvetica Neue",Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(1200px 700px at 10% -10%, rgba(124,58,237,.25), transparent 60%),
    radial-gradient(800px 500px at 90% 10%, rgba(37,99,235,.22), transparent 60%),
    linear-gradient(180deg, #0b0b14, #0e0e1a 60%, #0b0b14);
}

a{color: #a78bfa; text-decoration: none}
a:hover{text-decoration: underline}

.container{max-width:1100px; margin:0 auto; padding:24px}
.header{
  display:flex; align-items:center; gap:18px; padding:18px 0; position:sticky; top:0;
  background: linear-gradient(180deg, rgba(12,12,20,.9), rgba(12,12,20,.7), transparent);
  backdrop-filter: blur(6px);
}
.logo{display:flex; align-items:center; gap:10px; font-weight:700; letter-spacing:.2px}
.logo img{width:28px; height:28px}
nav ul{display:flex; gap:16px; list-style:none; padding:0; margin:0}
nav a{padding:8px 10px; border-radius:9px}
nav a.active, nav a:hover{background: rgba(124,58,237,.12)}

.hero{
  padding: 32px; border:1px solid var(--border); border-radius: var(--radius);
  background: linear-gradient(180deg, var(--panel), var(--panel-2));
  box-shadow: 0 20px 60px rgba(0,0,0,.35);
}
.hero h1{margin:0 0 10px; font-size: 34px}
.hero p{margin:0 0 18px; color: var(--muted); max-width: 65ch}
.cta{display:flex; gap:12px; flex-wrap: wrap}
.btn{
  display:inline-flex; align-items:center; gap:10px; padding:11px 16px; border-radius: 11px;
  border:1px solid var(--border); text-decoration:none; font-weight:600;
  background: #17172a;
}
.btn.primary{background: linear-gradient(180deg, #2b2b47, #1a1a30); border-color: rgba(124,58,237,.5)}
.btn.primary:hover{box-shadow:0 0 0 3px rgba(124,58,237,.25)}
.tag{
  display:inline-block; padding:2px 8px; border:1px solid var(--border); border-radius:999px; font-size:12px; color:var(--muted)
}

.grid{
  display:grid; gap:16px; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
}
.card{
  border:1px solid var(--border); border-radius: var(--radius);
  background: linear-gradient(180deg, #121222, #10101d);
  padding:18px; display:flex; flex-direction:column; gap:10px
}
.card h3{margin:0; font-size:18px}
.card p{margin:0; color:var(--muted)}
.card .actions{margin-top:auto; display:flex; gap:8px; flex-wrap: wrap}

.kbd{
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  background:#0f0f1c; border:1px solid var(--border); padding:2px 6px; border-radius:6px; font-size:12px
}

.table{width:100%; border-collapse: collapse; margin:10px 0}
.table th,.table td{border-bottom:1px solid var(--border); padding:10px; text-align:left}
.table th{color:#cbd5e1; font-weight:600; background: #121222}

.form{display:grid; gap:12px; max-width:560px}
.input, textarea{
  width:100%; padding:12px; border-radius:10px; border:1px solid var(--border);
  background:#101020; color:var(--text)
}
.footer{
  margin-top:40px; padding:24px 0; color:var(--muted); font-size:14px; border-top:1px solid var(--border)
}
.alert{border:1px solid var(--border); border-radius:10px; padding:12px; background:#101020}
.alert.error{border-color: rgba(239,68,68,.4); color:#fecaca}
.alert.success{border-color: rgba(34,197,94,.4); color:#bbf7d0}
.breadcrumbs{font-size:13px; margin-bottom:10px; color:var(--muted)}
.breadcrumbs a{color:var(--muted)}
