/* Cards, form fields and buttons */
.card { background: var(--card); border: 1px solid var(--line); border-radius: 14px; padding: 18px; margin-bottom: 16px; }
label { display: block; margin: 12px 0 0; font-size: 14px; font-weight: 500; }
label.check { display: flex; gap: 8px; align-items: center; }
input, textarea, select { width: 100%; margin-top: 6px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px;
  background: var(--bg); color: var(--text); font: inherit; }
input[type=checkbox] { width: auto; margin: 0; }
input[type=range] { padding: 0; }
button { font: inherit; cursor: pointer; border-radius: 10px; padding: 10px 16px; border: 1px solid transparent; }
button.primary { background: var(--accent); color: #fff; }
button.ghost { background: transparent; color: var(--text); border-color: var(--line); }
button.small { padding: 6px 10px; font-size: 13px; }
button:disabled { opacity: .5; cursor: default; }
button.danger { color: var(--err); border-color: var(--err); }
.row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-top: 12px; }
