*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;
  background:#0b0f0c;
  color:#e9eee9;
}
a{color:inherit;text-decoration:none}
code{font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}

.topbar{
  position:sticky;top:0;z-index:20;
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 18px;
  background:rgba(0,0,0,.55);
  backdrop-filter: blur(10px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.brand{display:flex;align-items:center;gap:10px}
.logo{
  width:36px;height:36px;border-radius:10px;
  display:grid;place-items:center;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  font-weight:700;
}
.brand__name{font-weight:650;letter-spacing:.2px}

.nav{display:flex;gap:16px;align-items:center}
.nav__link{opacity:.88}
.nav__link:hover{opacity:1}

.lang{
  padding:8px 10px;border-radius:12px;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.06);
  color:#fff;cursor:pointer;
}

.wrap{max-width:1100px;margin:0 auto;padding:28px 18px 80px}
.hero{padding:30px 0}
.hero h1{font-size:52px;line-height:1.04;margin:0 0 10px}
.hero p{opacity:.85;font-size:18px;max-width:860px;margin:0}

.grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
@media (max-width: 980px){
  .hero h1{font-size:40px}
  .grid{grid-template-columns:1fr}
  .nav{display:none}
}

.card{
  padding:18px;
  border-radius:18px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);
  box-shadow: 0 20px 50px rgba(0,0,0,.35);
  min-height:140px;
}
.card h2{margin:0 0 10px;font-size:22px}
.muted{opacity:.75}

.form{display:grid;gap:10px}
input{
  width:100%;
  padding:14px 14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(0,0,0,.25);
  color:#fff;
  outline:none;
}
input:focus{border-color:rgba(255,255,255,.28)}

.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

.btn{
  padding:12px 14px;border-radius:14px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  color:#fff;cursor:pointer;
}
.btn:hover{background:rgba(255,255,255,.12)}
.btn--ghost{background:transparent}

.output{
  white-space:pre-wrap;
  word-break:break-word;
  background:rgba(0,0,0,.30);
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  padding:12px;
  min-height:44px;
  margin:0;
}

.footer{
  opacity:.65;
  border-top:1px solid rgba(255,255,255,.08);
  padding:18px;
  text-align:center;
}
