.btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px; border:1px solid transparent; border-radius:13px; padding:11px 17px; font-weight:750; transition:transform .18s, filter .18s, background .18s; }
.btn:hover { transform:translateY(-1px); filter:brightness(1.06); }
.btn-primary { background:linear-gradient(135deg,var(--primary),var(--primary-2)); color:white; box-shadow:0 9px 24px color-mix(in srgb,var(--primary) 25%,transparent); }
.btn-secondary { background:var(--surface-2); border-color:var(--border); color:var(--text); }
.btn-danger { background:var(--danger); color:white; }
.btn-block { width:100%; }
.icon-btn { width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--border); border-radius:13px; background:var(--surface); color:var(--text); }
.card { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow); }
.field { display:grid; gap:7px; margin-bottom:15px; }
.field label { color:var(--muted); font-size:.86rem; font-weight:650; }
.field input, .field textarea, .field select { width:100%; min-height:46px; border:1px solid var(--border); background:var(--bg); color:var(--text); border-radius:12px; padding:12px 14px; }
.field textarea { resize:vertical; min-height:90px; }
.row { display:flex; align-items:center; gap:12px; }
.between { justify-content:space-between; }
.pill { display:inline-flex; align-items:center; gap:6px; padding:6px 10px; border-radius:999px; background:var(--surface-2); color:var(--muted); font-size:.78rem; }
.toast-region { position:fixed; z-index:1000; right:16px; bottom:20px; display:grid; gap:8px; width:min(360px,calc(100% - 32px)); }
.toast { background:var(--surface-3); color:var(--text); border:1px solid var(--border); padding:13px 16px; border-radius:13px; box-shadow:var(--shadow); }
