/* Дополнения к дизайн-системе Коди 1.3 для экранов, которых нет в макете:
   вход, настройки, создание и перенос задачи, отправка сообщения.
   Только токены из design.css — новых цветов, отступов и радиусов нет. */

.visually-hidden { position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap; }
.status-dot.success-dot { background:var(--success); }

/* Поля ввода в стиле .button / .composer-box */
.auth-form label, .settings-form label, .dialog label { display:block;margin:var(--s6) var(--s0) var(--s2);font-size:var(--text-sm);color:var(--muted); }
.auth-form input, .settings-form input, .settings-form select, .dialog input, .dialog select, .dialog textarea,
.settings-row input {
  width:100%;min-height:var(--control);padding:var(--s3) var(--s5);border:var(--line) solid var(--border);border-radius:var(--radius-sm);
  background:var(--raised);color:var(--text);font:inherit;
}
.dialog textarea { resize:vertical; }
.auth-form input:focus-visible, .settings-form input:focus-visible, .settings-form select:focus-visible,
.dialog input:focus-visible, .dialog select:focus-visible, .dialog textarea:focus-visible, .settings-row input:focus-visible {
  outline:var(--focus-line) solid var(--accent);outline-offset:var(--s0);border-color:var(--transparent);
}
.form-error { min-height:var(--s8);margin:var(--s4) var(--s0) var(--s0);font-size:var(--text-sm);color:var(--danger); }
.form-error.ok { color:var(--success); }

/* Вход и установка */
.auth-screen { min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--s7); }
.auth-card { width:100%;max-width:400px;padding:var(--s10); }
.auth-card .brand { display:flex;align-items:center;gap:var(--s5);margin-bottom:var(--s9); }
.auth-card h1 { margin:var(--s0) var(--s0) var(--s2);font-size:var(--text-2xl);letter-spacing:var(--tracking);line-height:var(--leading-tight); }
.auth-card .button[type=submit] { width:100%;margin-top:var(--s9);justify-content:center; }

/* Настройки */
.settings-grid { display:grid;grid-template-columns:repeat(auto-fit, minmax(var(--panel-min), 1fr));gap:var(--s7);align-items:start; }
.settings-form, .settings-row { padding:var(--s7) var(--s8); }
.settings-row + .settings-row, .settings-form + .settings-form { border-top:var(--line) solid var(--border); }
.settings-form .settings-row { padding:var(--s0);border-top:var(--s0); }
.settings-form h3, .settings-row h3 { margin:var(--s0) var(--s0) var(--s2);font-size:var(--text-md); }
.settings-form .row, .settings-row .row { margin-top:var(--s6);gap:var(--s4);flex-wrap:wrap; }
.settings-row .row input { flex:1;width:auto;min-width:0; }
.secret-out code { display:block;margin-top:var(--s6);padding:var(--s5) var(--s6);border-radius:var(--radius-sm);background:var(--raised);
  font:var(--text-sm) var(--mono);word-break:break-all;user-select:all; }

/* Создание задачи */
.dialog { width:min(560px, calc(100vw - 2 * var(--s7)));padding:var(--s0);color:var(--text); }
.dialog::backdrop { background:var(--bg);opacity:.72; }
.dialog form { padding:var(--s0) var(--s8) var(--s8); }
.dialog .panel-header { padding-left:var(--s0);padding-right:var(--s0); }
.form-grid { display:grid;grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));gap:var(--s0) var(--s6); }
.dialog .row { margin-top:var(--s8);gap:var(--s6); }
.dialog .form-error { margin:var(--s0); }

/* Перенос карточки между колонками — вместо drag-and-drop */
.task-move { display:block;margin-top:var(--s5); }
.task-move select { width:100%;min-height:calc(var(--control) - var(--s4));padding:var(--s2) var(--s4);border:var(--line) solid var(--border);
  border-radius:var(--radius-sm);background:var(--transparent);color:var(--muted);font:inherit;font-size:var(--text-sm); }
.task-move select:hover { background:var(--hover);color:var(--text); }
.task-move select:focus-visible { outline:var(--focus-line) solid var(--accent);outline-offset:var(--s0); }

/* Сообщение, пока Коди печатает */
.chat-message.is-pending p:empty::after { content:'…';color:var(--subtle); }
.conversation-list .tab { flex-direction:column;align-items:flex-start;text-align:left; }

/* Формы карточек клиента и сайта: поля макета .field / .input-text */
select.input-text { appearance:auto; }
.dialog .field { margin-bottom:var(--s0); }
.dialog .field > span { margin:var(--s6) var(--s0) var(--s2); }
.padded .form-error:empty { display:none; }
.breadcrumb a { color:var(--muted); }
.breadcrumb a:hover { color:var(--text); }

/* Просмотр кабинета владельцем — полоса над кабинетом */
.portal .main > .security-notice { margin:var(--s0);border-radius:var(--s0);border-left:0;border-right:0;border-top:0; }
[data-form="policy"] .field textarea { min-height:calc(var(--control) * 3); }

/* Почта и доступы */
[data-vault-password] { max-width:260px; }
.toolbar .row label { white-space:nowrap; }
.data-table small .text-link { font-size:inherit; }
.dialog label.row, .settings-form label.row, form label.row { display:flex;align-items:center;gap:var(--s4);margin-top:var(--s6); }
.dialog input[type=checkbox], form input[type=checkbox] { width:auto;min-height:0;padding:var(--s0);accent-color:var(--accent); }
