/* СУХОТА - authentication pages (MAS). Dark graphite, cold silver, restrained turquoise accents. Served from /suhota/ (same origin as MAS). */
:root, :root[data-theme], html, body {
  color-scheme: dark;
  --sh-bg: #0f1215;            /* graphite, almost black */
  --sh-surface: #161b20;
  --sh-surface-2: #1d242b;
  --sh-line: #2c353d;
  --sh-silver: #d3dbe2;        /* cold silver text */
  --sh-silver-dim: #96a3ae;
  --sh-teal: #38c6b6;          /* turquoise accent */
  --sh-teal-strong: #25a89a;
  --sh-teal-ink: #06211d;
  --sh-danger: #ff7a7a;

  --cpd-color-bg-canvas-default: var(--sh-bg);
  --cpd-color-bg-canvas-disabled: var(--sh-surface);
  --cpd-color-bg-subtle-primary: var(--sh-surface);
  --cpd-color-bg-subtle-secondary: var(--sh-surface-2);
  --cpd-color-bg-action-primary-rest: var(--sh-teal);
  --cpd-color-bg-action-primary-hovered: #58d8ca;
  --cpd-color-bg-action-primary-pressed: var(--sh-teal-strong);
  --cpd-color-bg-action-primary-disabled: #2b3a39;
  --cpd-color-bg-action-secondary-rest: var(--sh-surface);
  --cpd-color-bg-action-secondary-hovered: var(--sh-surface-2);
  --cpd-color-text-primary: var(--sh-silver);
  --cpd-color-text-secondary: var(--sh-silver-dim);
  --cpd-color-text-disabled: #5d6a74;
  --cpd-color-text-action-primary: var(--sh-teal);
  --cpd-color-text-action-accent: var(--sh-teal);
  --cpd-color-text-on-solid-primary: var(--sh-teal-ink);
  --cpd-color-text-critical-primary: var(--sh-danger);
  --cpd-color-icon-primary: var(--sh-silver);
  --cpd-color-icon-secondary: var(--sh-silver-dim);
  --cpd-color-border-interactive-primary: #3b4650;
  --cpd-color-border-interactive-secondary: var(--sh-line);
  --cpd-color-border-interactive-hovered: var(--sh-teal);
  --cpd-color-border-disabled: var(--sh-line);
  --cpd-color-border-focused: var(--sh-teal);
  --cpd-color-border-critical-primary: var(--sh-danger);
}
html, body { background: var(--sh-bg) !important; color: var(--sh-silver); }
body { min-height: 100vh; }

/* brand header: two birds + wordmark, above every page */
.suhota-brand { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 28px 16px 4px; }
.suhota-brand img.mark { width: 84px; height: 84px; object-fit: contain; filter: drop-shadow(0 2px 14px rgba(56, 198, 182, .18)); }
.suhota-brand .word { font-size: 22px; letter-spacing: .38em; text-indent: .38em; font-weight: 600; color: var(--sh-silver); text-transform: uppercase; }
.suhota-brand .word::after { content: ""; display: block; width: 36px; height: 2px; margin: 10px auto 0; background: var(--sh-teal); border-radius: 2px; opacity: .85; }

/* the stock round icon in page headers is replaced by the brand header */
.page-heading .icon { display: none !important; }
.page-heading .header { text-align: center; }
.page-heading .title { color: var(--sh-silver); font-weight: 600; }
.page-heading .text { color: var(--sh-silver-dim); }

.layout-container { max-width: 440px; margin-inline: auto; padding-inline: 20px; }
.cpd-text-control, input.cpd-text-control { background: var(--sh-surface) !important; color: var(--sh-silver) !important; border-color: #3b4650 !important; }
.cpd-text-control:focus { border-color: var(--sh-teal) !important; box-shadow: 0 0 0 3px rgba(56, 198, 182, .22) !important; outline: none; }
.cpd-text-control::placeholder { color: #66737e; }
.cpd-button[data-kind="primary"] { background: var(--sh-teal) !important; color: var(--sh-teal-ink) !important; font-weight: 600; }
.cpd-button[data-kind="primary"]:hover { background: #58d8ca !important; }
.cpd-button[data-kind="secondary"] { background: var(--sh-surface) !important; color: var(--sh-silver) !important; border: 1px solid #3b4650 !important; }
.cpd-button[data-kind="secondary"]:hover { border-color: var(--sh-teal) !important; background: var(--sh-surface-2) !important; }
.cpd-button[data-kind="tertiary"], .cpd-link { color: var(--sh-teal) !important; }
.cpd-form-label, label { color: var(--sh-silver-dim); }
.separator { color: var(--sh-silver-dim); }
.separator hr { border-color: var(--sh-line); }
.text-critical { color: var(--sh-danger) !important; }
.legal-footer, .legal-footer a { color: var(--sh-silver-dim) !important; }
.cpd-mfa-digit { background: var(--sh-surface) !important; border-color: #3b4650 !important; }
.cpd-mfa-control { color: var(--sh-silver) !important; }

/* the social buttons keep a calm, uniform look under the main form */
.suhota-social { display: flex; flex-direction: column; gap: 12px; }
.suhota-social a.cpd-button { justify-content: center; gap: 12px; }
.suhota-social svg { flex: none; }

@media (max-width: 480px) { .layout-container { padding-inline: 16px; } .suhota-brand { padding-top: 22px; } }

/* separator "или" exactly as in the design (the stock style capitalises it) */
.separator p { text-transform: lowercase; letter-spacing: 0; }
