:root{
  --bg:#0a0b0f; --bg2:#12131a; --card:#15161e; --card2:#1b1d27;
  --line:#262838; --txt:#e8e9f0; --mut:#9aa0b4; --acc:#7c5cff; --acc2:#36d1dc;
  --good:#2ecc71; --warn:#f1b24a; --danger:#ff5c7a;
  --grad:linear-gradient(120deg,#7c5cff,#36d1dc);
}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(1200px 600px at 70% -10%,rgba(124,92,255,.18),transparent),var(--bg);
  color:var(--txt);font:15px/1.55 ui-sans-serif,system-ui,"Segoe UI",Roboto,Arial}
a{color:inherit;text-decoration:none}
.hidden{display:none!important}
.mono{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace}

.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;
  border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(10,11,15,.8);backdrop-filter:blur(10px);z-index:9}
.brand{font-weight:800;font-size:19px;letter-spacing:.3px;display:flex;align-items:center;gap:8px}
.logo{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-size:22px}
.nav nav{display:flex;gap:20px;align-items:center}
.nav nav a{color:var(--mut);font-size:14px}
.nav nav a:hover{color:var(--txt)}

.wrap{max-width:1000px;margin:0 auto;padding:0 16px}
.hero{max-width:1000px;margin:0 auto;padding:70px 16px 40px;text-align:center}
.hero h1{font-size:clamp(30px,6vw,52px);line-height:1.1;margin:0 0 16px;font-weight:800;letter-spacing:-1px}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{color:var(--mut);font-size:17px;max-width:620px;margin:0 auto 26px}
.btn{display:inline-block;padding:12px 22px;border-radius:12px;font-weight:600;cursor:pointer;border:1px solid var(--line);background:var(--card)}
.btn.primary{background:var(--grad);border:0;color:#0b0b12}
.btn.ghost{background:transparent}
.btn:hover{filter:brightness(1.08)}

.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin:18px 0}
.card{background:linear-gradient(180deg,var(--card),var(--bg2));border:1px solid var(--line);border-radius:16px;padding:18px}
.card h3{margin:0 0 6px;font-size:13px;text-transform:uppercase;letter-spacing:.6px;color:var(--mut);font-weight:600}
.card .big{font-size:28px;font-weight:800}
.card .sub{color:var(--mut);font-size:13px;margin-top:4px}

.keybox{display:flex;gap:8px;align-items:center;background:#0d0e14;border:1px solid var(--line);
  border-radius:10px;padding:10px 12px;margin-top:8px;overflow:auto}
.keybox code{white-space:nowrap}
.copy{margin-left:auto;cursor:pointer;color:var(--acc2);font-size:13px;font-weight:600;border:0;background:none;flex:0 0 auto}

h2.sec{font-size:22px;margin:34px 0 8px}
.muted{color:var(--mut)}
.codeblk{background:#0d0e14;border:1px solid var(--line);border-radius:12px;padding:14px;overflow:auto;font-size:13px}

.tablewrap{border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-top:12px}
table{width:100%;border-collapse:collapse;font-size:14px}
th,td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--line)}
th{background:var(--card2);color:var(--mut);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px}
tr:last-child td{border-bottom:0}
td.num{text-align:right;font-variant-numeric:tabular-nums}
.pill{display:inline-block;padding:2px 9px;border-radius:999px;background:rgba(124,92,255,.15);color:#c4b6ff;font-size:12px}
#search{width:100%;max-width:320px;margin-top:12px;padding:10px 14px;border-radius:10px;border:1px solid var(--line);
  background:#0d0e14;color:var(--txt)}
footer{margin:50px 0 30px;text-align:center;color:var(--mut);font-size:13px}
.notice{background:rgba(241,178,74,.1);border:1px solid rgba(241,178,74,.3);color:#f3c877;padding:10px 14px;border-radius:10px;font-size:13px;margin-top:10px}
.notice.ok{background:rgba(46,204,113,.12);border-color:rgba(46,204,113,.35);color:#7ee6a8}
.loginbox{max-width:380px;margin:30px auto 0;text-align:left}
.loginbox h3{margin:0 0 12px;font-size:15px;text-transform:none;letter-spacing:0;color:var(--txt)}
.inp{width:100%;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:#0d0e14;color:var(--txt);font-size:15px}
.inp:focus{outline:none;border-color:var(--acc)}
