/* Карточка */
.agru-auth { display:flex; justify-content:center; padding:24px 12px; }
.agru-card { width:min(720px, 100%); background:#fff; border-radius:16px; box-shadow:0 10px 30px rgba(0,0,0,.08); padding:24px; }
.agru-brand .logo { font-weight:800; font-size:28px; letter-spacing:.5px; }
.agru-brand .subtitle { color:#6b7280; margin-top:2px; }

/* Табы */
.agru-tabs { display:flex; gap:8px; margin:16px 0 12px; }
.agru-tabs .tab { border:1px solid #e5e7eb; background:#f9fafb; padding:8px 12px; border-radius:10px; cursor:pointer; }
.agru-tabs .tab.active { background:#111827; color:#fff; border-color:#111827; }

.agru-pane { display:none; }
.agru-pane.active { display:block; }

/* Формы */
.agru-form label { display:block; font-size:.9rem; color:#374151; margin:.5rem 0 .25rem; }
.agru-form input[type="text"],
.agru-form input[type="email"],
.agru-form input[type="tel"],
.agru-form input[type="password"]{
  width:100%; border:1px solid #d1d5db; border-radius:10px; padding:10px 12px; outline:none;
}
.agru-form input:focus{ border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.15); }
.password-wrap{ position:relative; display:flex; gap:8px; align-items:center; }
.toggle-pass{ border:0; background:transparent; cursor:pointer; font-size:16px; }

.row{ display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:.5rem; }
.checkbox{ display:flex; align-items:center; gap:.5rem; font-size:.9rem; color:#374151; }
.muted{ color:#6b7280; text-decoration:none; }
.muted:hover{ text-decoration:underline; }

/* Кнопка */
.primary{ margin-top:12px; background:#16a34a; color:#fff; border:0; padding:10px 14px; border-radius:10px; cursor:pointer; }
.primary:disabled{ opacity:.6; cursor:not-allowed; }

/* Сообщения */
.form-msg { margin-top:.5rem; font-size:.9rem; }
.form-msg.ok  { color:#16a34a; }
.form-msg.err { color:#dc2626; }

/* Password helper */
.agru-pwd { margin-top:.5rem; }
.agru-pwd-req { list-style:none; margin:.5rem 0 0; padding:0; font-size:.875rem; color:#6b7280; }
.agru-pwd-req li { display:flex; align-items:center; gap:.4rem; line-height:1.2; }
.agru-pwd-req li::before { content:"✗"; color:#dc2626; font-weight:700; }
.agru-pwd-req li.ok::before { content:"✓"; color:#16a34a; }
.agru-pwd-req li.opt { opacity:.85; }

.password-wrap input.ok  { border-color:#16a34a; box-shadow:0 0 0 2px rgba(22,163,74,.15); }
.password-wrap input.bad { border-color:#dc2626; box-shadow:0 0 0 2px rgba(220,38,38,.12); }

.agru-pwd-meter { height:6px; border-radius:999px; background:#e5e7eb; overflow:hidden; }
.agru-pwd-meter span { display:block; height:100%; width:0%; transition:width .25s ease; }

.agru-pwd-meter[data-level="1"] span { width:25%; background:#ef4444; }
.agru-pwd-meter[data-level="2"] span { width:50%; background:#f59e0b; }
.agru-pwd-meter[data-level="3"] span { width:75%; background:#10b981; }
.agru-pwd-meter[data-level="4"] span { width:100%; background:#16a34a; }

.agru-pwd-strength { margin-top:.25rem; font-size:.8rem; color:#6b7280; }