:root{
  --bg:#0c0c0d; --panel:#121314; --border:#1f2421;
  --ink:#E6FFE6; --accent:#b9ff66; --muted:#9fb99f;
  --btn:#1d2b22; --btn-hover:#243627; --btn-border:#2e4033;
}

* { box-sizing: border-box; }

body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}

.container{
  max-width:1600px;
  margin:0 auto;
  padding:30px 40px;
}

h1{color:var(--accent);margin:0 0 10px;}
.helper{color:var(--muted);margin-bottom:20px;font-size:15px;line-height:1.5;}

.panel{
  background:var(--panel);
  border:1px solid var(--border);
  border-radius:14px;
  padding:20px;
  margin-bottom:20px;
}

.grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}
@media(max-width:900px){.grid{grid-template-columns:1fr;}}

label{display:block;margin-bottom:10px;font-weight:600;}
textarea{
  width:100%;
  min-height:28px;            /* ↓ уменьшено в 2–3 раза */
  resize:vertical;
  background:#0f1112;
  color:#eaffea;
  border:1px solid #2a2f2c;
  border-radius:12px;
  padding:10px;
  font-family:monospace;
  font-size:14px;
}

.actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:16px;
}

button{
  cursor:pointer;
  background:var(--btn);
  color:var(--accent);
  border:1px solid var(--btn-border);
  border-radius:10px;
  padding:10px 18px;
  font-weight:600;
  font-size:15px;
}
button:hover{background:var(--btn-hover);transform:translateY(-1px);}

/* Итерации */
.iteration{background:#101112;border:1px solid var(--border);border-radius:12px;margin-bottom:18px;}
.iter-head{padding:12px 16px;color:var(--accent);border-bottom:1px solid var(--border);font-weight:700;}
.iter-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px;}
@media(max-width:900px){.iter-grid{grid-template-columns:1fr;}}

/* Карточки сторон */
.side.panel{background:#0f1112;border:1px solid #2a2f2c;border-radius:12px;padding:14px;position:relative;}
.side-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}
.side-title{font-weight:700;font-size:16px;}
.badge{background:#1d2b22;color:var(--accent);border:1px solid var(--btn-border);border-radius:999px;font-size:12px;padding:3px 10px;}
.block-label{color:var(--muted);font-size:13px;margin-bottom:4px;}
.original{
  background:#0c0e0f;
  border:1px solid #2a2f2c;
  border-radius:10px;
  padding:10px;
  word-wrap:break-word;
  margin-bottom:10px;
  font-family:monospace;
  font-size:13px;
}

/* Поля */
.kv-row{display:grid;grid-template-columns:190px 1fr;gap:8px 10px;align-items:start;margin-bottom:6px;}
.kv-key{color:var(--accent);font-weight:600;}
.kv-val{display:flex;gap:8px;flex-wrap:wrap;align-items:center;}
.val{word-wrap:break-word;white-space:pre-wrap;max-width:100%;font-size:13px;}
.dyn-wrap{display:flex;flex-wrap:wrap;gap:6px;}
.dyn-item{display:flex;align-items:center;gap:6px;background:#111315;border:1px solid #2a2f2c;border-radius:8px;padding:2px 6px;font-size:13px;}
.muted{color:var(--muted);}

/* Кнопки копирования */
.copy-btn{
  background:transparent;
  border:1px solid var(--btn-border);
  color:var(--accent);
  border-radius:6px;
  padding:3px 8px;
  font-size:13px;
}
.copy-btn:hover{background:var(--btn-hover);}
.copy-btn.small{padding:2px 6px;font-size:12px;}
