/* =========================
   WhatNext — final styles
   ========================= */

:root{
  /* colors */
  --bg:#0b0f14;
  --panel:#121826;
  --text:#eef2f7;
  --muted:#aab4c3;
  --line:#273248;

  --accent:#ffffff;
  --accentText:#0b0f14;

  /* layout */
  --radius:18px;
  --shadow:0 20px 40px rgba(0,0,0,.45);
  --max:880px;

  /* typography */
  --font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
}

*{
  box-sizing:border-box;
}

body{
  margin:0;
  font-family:var(--font);
  background:
    radial-gradient(1200px 800px at 15% 10%, #162341 0%, rgba(22,35,65,0) 55%),
    radial-gradient(900px 700px at 85% 20%, #1c2c4d 0%, rgba(28,44,77,0) 50%),
    var(--bg);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
  line-height:1.45;
}

/* =========================
   Layout
   ========================= */

.wrap{
  max-width:var(--max);
  margin:0 auto;
  padding:80px 20px 100px;
  min-height:100vh;
}

.hero{
  margin-bottom:28px;
}

/* =========================
   Typography
   ========================= */

h1{
  font-size:44px;
  line-height:1.05;
  margin:0 0 10px;
  letter-spacing:-0.02em;
}

.sub{
  font-size:17px;
  color:var(--muted);
  margin:0;
}

.label{
  display:block;
  font-size:13px;
  color:var(--muted);
  margin-bottom:8px;
}

.fine{
  margin-top:14px;
  font-size:12px;
  color:var(--muted);
}

/* =========================
   Card
   ========================= */

.card{
  background:linear-gradient(
    180deg,
    rgba(255,255,255,.05),
    rgba(255,255,255,.02)
  );
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:20px;
  box-shadow:var(--shadow);
}

/* =========================
   Inputs
   ========================= */

textarea{
  width:100%;
  min-height:180px;
  resize:vertical;
  border-radius:14px;
  border:1px solid var(--line);
  background:rgba(0,0,0,.25);
  color:var(--text);
  padding:14px;
  font-size:15px;
  line-height:1.5;
  outline:none;
}

textarea::placeholder{
  color:#7f8aa0;
}

textarea:focus{
  border-color:rgba(255,255,255,.35);
}

/* =========================
   Actions
   ========================= */

.actions{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:14px;
}

button,
.btn{
  appearance:none;
  border:none;
  border-radius:14px;
  padding:12px 18px;
  background:var(--accent);
  color:var(--accentText);
  font-weight:600;
  font-size:15px;
  cursor:pointer;
  transition:opacity .15s ease, transform .05s ease;
}

button:hover,
.btn:hover{
  opacity:.92;
}

button:active,
.btn:active{
  transform:translateY(1px);
}

.btn.secondary{
  background:transparent;
  color:var(--text);
  border:1px solid var(--line);
}

/* =========================
   Small helpers
   ========================= */

.hint{
  font-size:13px;
  color:var(--muted);
}

pre{
  white-space:pre-wrap;
  word-wrap:break-word;
}
