:root{
  --bg:#0b0f1a;
  --card:rgba(255,255,255,.06);
  --border:rgba(255,255,255,.10);
  --text:#e8ecff;
  --muted:rgba(232,236,255,.78);
  --primary:#7c5cff;
  --danger:#ff4d6d;
  --shadow: 0 12px 40px rgba(0,0,0,.35);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial}
a{color:inherit}
.wrap{max-width:1100px;margin:0 auto;padding:18px}
.content{padding-top:18px;min-height:65vh}

.topbar{position:sticky;top:0;background:rgba(11,15,26,.72);backdrop-filter: blur(10px);border-bottom:1px solid var(--border);z-index:20}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:12px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:12px;background:linear-gradient(135deg,var(--primary),#31d3a5);box-shadow:var(--shadow)}
.nav{display:flex;gap:10px;align-items:center}
.nav a{opacity:.92;text-decoration:none;padding:8px 10px;border-radius:12px}
.nav a:hover{background:rgba(255,255,255,.06)}
.nav-toggle{display:none;background:transparent;border:1px solid var(--border);color:var(--text);border-radius:12px;padding:8px 10px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;padding:10px 12px;text-decoration:none;border:1px solid transparent;font-weight:700;cursor:pointer}
.btn-primary{background:linear-gradient(135deg,var(--primary),#31d3a5);color:#0b0f1a;border:0}
.btn-ghost{background:rgba(255,255,255,.06);border:1px solid var(--border)}
.btn-danger{background:rgba(255,77,109,.16);border:1px solid rgba(255,77,109,.35);color:#ffd6de}

.hero{padding:26px 0}
.hero h1{font-size:44px;line-height:1.05;margin:0 0 10px}
.lead{color:var(--muted);font-size:18px;max-width:820px}
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}

.cards{margin-top:20px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.card{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:16px;box-shadow:var(--shadow)}
.card-title{font-weight:800;margin-bottom:8px}
.muted{color:var(--muted)}
.hint{color:var(--muted);font-size:13px;margin-top:6px}
.err{color:#ffb3c1;margin-top:6px;font-size:13px}
.code{background:rgba(0,0,0,.25);border:1px solid var(--border);border-radius:14px;padding:12px;overflow:auto}
.code-inline{font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-size:12px;background:rgba(0,0,0,.25);padding:6px 8px;border-radius:12px;display:inline-block}
pre.code{white-space:pre-wrap}

.form{margin-top:14px}
.field{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
input,textarea{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px 12px;color:var(--text);font-size:15px;outline:none}
input:focus,textarea:focus{border-color:rgba(124,92,255,.6);box-shadow:0 0 0 3px rgba(124,92,255,.14)}
textarea{resize:vertical}

.messages{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}
.msg{border-radius:16px;padding:12px 12px;border:1px solid var(--border);background:rgba(255,255,255,.05)}
.msg.success{border-color:rgba(49,211,165,.45);background:rgba(49,211,165,.10)}
.msg.error{border-color:rgba(255,77,109,.45);background:rgba(255,77,109,.10)}

.footer{border-top:1px solid var(--border);padding:24px 0;margin-top:24px;background:rgba(0,0,0,.12)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}
.footer-title{font-weight:800;margin-bottom:10px}
.footer-links{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;padding:7px 10px;border-radius:999px;border:1px solid var(--border);text-decoration:none;background:rgba(255,255,255,.04)}
.footer-bottom{margin-top:14px}

.row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.row-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

.table{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:14px;overflow:hidden}
.thead,.trow{display:grid;grid-template-columns:1fr 140px 120px;gap:10px;padding:10px 12px}
.thead{background:rgba(255,255,255,.06);font-weight:800}
.trow{border-top:1px solid rgba(255,255,255,.08)}
.trow form{margin:0}

.bot{display:flex;gap:10px;flex-wrap:wrap}
.bot-input{flex:1;min-width:220px}
.answer{margin-top:12px}
.answer.ok{color:var(--text)}
.faq{border-top:1px solid rgba(255,255,255,.08);padding:10px 0}
.faq summary{cursor:pointer;font-weight:700}
.faq-a{margin-top:8px;color:var(--muted);line-height:1.55}

.danger-zone{border-color:rgba(255,77,109,.35)}

@media (max-width: 920px){
  .grid-3{grid-template-columns:1fr}
  .grid-2{grid-template-columns:1fr}
  .thead,.trow{grid-template-columns:1fr}
  .nav{display:none}
  .nav-toggle{display:inline-flex}
  body.nav-open .nav{display:flex;flex-direction:column;position:absolute;right:18px;top:64px;background:rgba(11,15,26,.95);border:1px solid var(--border);border-radius:18px;padding:10px;box-shadow:var(--shadow)}
}
