input[type="number"],
input[type="text"],
input[type="password"],
input[type="search"],
select,
textarea{
background:var(--field);
color:var(--ink-bright);
border:1px solid var(--border-strong);
border-radius:8px;
font-family:inherit;
}
textarea{ height:auto; }
input::placeholder,
textarea::placeholder{ color:var(--ink-muted); opacity:1; }
input[type="number"]:focus,
input[type="text"]:focus,
input[type="password"]:focus,
select:focus,
textarea:focus{
outline:none; border-color:var(--accent);
box-shadow:0 0 0 2px rgba(79,138,208,0.18);
}
select option{ background:#191d23; color:var(--ink-bright); }
.btn{ color:var(--ink); }
.btn:hover:not(.primary):not(.danger){ background:#2a3039; border-color:#3d444f; color:var(--ink-bright); }
.btn.primary{ color:#fff; }
.btn.danger{ color:#fff; }
.btn-remove{ color:#fff; }
input[type="radio"], input[type="checkbox"]{
-webkit-appearance:none; appearance:none;
width:15px; height:15px; margin:0; flex:none; cursor:pointer;
background:#191d23; border:1px solid #3a424d; position:relative;
transition:background .12s, border-color .12s;
}
input[type="radio"]{ border-radius:50%; }
input[type="checkbox"]{ border-radius:4px; }
input[type="radio"]:hover, input[type="checkbox"]:hover{ border-color:var(--accent); }
input[type="radio"]:checked, input[type="checkbox"]:checked{ background:var(--accent); border-color:var(--accent); }
input[type="radio"]:checked::after{ content:''; position:absolute; inset:4px; border-radius:50%; background:#fff; }
input[type="checkbox"]:checked::after{
content:''; position:absolute; left:4px; top:1px; width:4px; height:8px;
border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg);
}