/* FORMS */
label{display:block;font-size:12.5px;font-weight:600;color:var(--sub);margin:0 0 6px}
input,select,textarea{width:100%;font-family:inherit;font-size:14.5px;color:var(--ink);background:var(--surface);
  border:1px solid var(--line2);border-radius:var(--r-sm);padding:0 14px;height:var(--tap);outline:none}
textarea{height:auto;padding:12px 14px}
input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
input::placeholder{color:var(--dim)}
input.mono{letter-spacing:.05em}
.field{margin:0 0 14px}
.field .err{color:var(--bad);font-size:11.7px;margin:7px 0 0}
.search{position:relative;flex:1;max-width:420px}
.search input{padding-left:40px;border-radius:999px;background:var(--surface2);border-color:transparent}
.search svg{position:absolute;left:14px;top:11px;color:var(--dim)}
.opts{display:grid;gap:10px}
.opt{display:flex;align-items:center;gap:12px;border:1px solid var(--line2);border-radius:12px;padding:11px 13px;
  cursor:pointer;background:var(--surface);min-height:var(--tap)}
.opt:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
.opt input{width:20px;height:20px;flex:none;accent-color:var(--accent);margin:0}
.opt .body{flex:1;min-width:0}
.opt b{display:block;font-size:13.5px;font-weight:600}
.opt small{color:var(--sub);font-size:11.7px}
.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;background:var(--surface2);
  border-radius:12px;padding:3px}
.seg button{border:1px solid transparent;background:none;color:var(--sub);font-size:12.6px;font-weight:600;
  padding:8px 8px;border-radius:10px;min-height:36px}
.seg button[aria-pressed="true"]{background:var(--surface);color:var(--ink);border-color:var(--line2)}
