.form{display:grid;gap:10px}
.input{display:flex;flex-direction:column;gap:6px}
.input label{font-size:13px;color:var(--muted)}
.input input{padding:10px;border-radius:var(--r-btn);;border:1px solid rgba(255,255,255,.15);background:var(--bg-soft);color:var(--text)}
.input input:focus{outline:2px solid color-mix(in oklab, var(--accent) 60%, transparent)}
.checkbox{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--muted)}
.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.5)}
.modal.open{display:flex}
.modal-card{width:min(520px,92vw);background:var(--surface);border-radius:16px;border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow);padding:16px}
.badges{display:flex;gap:6px;flex-wrap:wrap}
.badge{font-size:12px;padding:2px 8px;border-radius:999px;background:var(--bg-soft);border:1px solid rgba(255,255,255,.12)}
/* buttons */
/* buttons */
.button, .btn { line-height: 1.2; }
.button:focus-visible, .btn:focus-visible {
  box-shadow: 0 0 0 3px color-mix(in oklab, currentColor 50%, transparent);
}

/* Theme FAB */
.theme-fab{
  position: fixed;
  right: clamp(12px, 2vw, 20px);
  bottom: clamp(12px, 2vw, 20px);
  z-index: 9999;
  width: 46px; height: 46px;
  display: grid; place-items: center;
  border-radius: 999px;
  font-size: 20px; line-height: 1;
  cursor: pointer;
  backdrop-filter: saturate(120%) blur(10px);
  -webkit-backdrop-filter: saturate(120%) blur(10px);
  background: color-mix(in oklab, var(--bg) 70%, transparent);
  border: 1px solid var(--line);
  box-shadow: var(--sh-card);
  color: var(--text);
}
.theme-fab:hover{ box-shadow: var(--sh-card-hover); }
/* Callback modal (заказ звонка из дровера) */
.callback-modal{
  max-width:520px;
}

.callback-modal__title{
  margin:0 0 8px;
  font-size:1.1rem;
}

.callback-modal__text{
  margin:0 0 16px;
  font-size:.95rem;
  color:var(--muted);
}

.callback-form__grid{
  display:grid;
  gap:12px;
}

.callback-form .field__label{
  font-size:.85rem;
  color:var(--muted);
}

.callback-form textarea{
  resize:vertical;
  min-height:72px;
}
