/*
  Фирменный стиль УФИЦ РАН — по брендбуку «Айдентика УФИЦ 03.08.2026».
  Палитра: тёмно-синий #010A80 → синий #0C49B8 (фирменный градиент), мятный
  #66FFB3, золото #D5B174 / #EBDBBE / #F8D48C. Шрифты: Unbounded SemiBold —
  заголовки, TT Travels — текст. Графика: иконки направлений, паттерн из них,
  «стекло» (полупрозрачные плашки на градиенте), кнопки-пилюли.
*/

@font-face { font-family: "Unbounded"; font-weight: 600; font-display: swap;
  src: url("fonts/Unbounded-SemiBold.woff2") format("woff2"); }
@font-face { font-family: "TT Travels"; font-weight: 400; font-display: swap;
  src: url("fonts/TTTravels-Regular.woff2") format("woff2"); }
@font-face { font-family: "TT Travels"; font-weight: 500; font-display: swap;
  src: url("fonts/TTTravels-Medium.woff2") format("woff2"); }
@font-face { font-family: "TT Travels"; font-weight: 600; font-display: swap;
  src: url("fonts/TTTravels-DemiBold.woff2") format("woff2"); }
@font-face { font-family: "TT Travels"; font-weight: 700; font-display: swap;
  src: url("fonts/TTTravels-Bold.woff2") format("woff2"); }

:root {
  /* ---- Палитра брендбука ---- */
  --ufic-navy:       #010a80;
  --ufic-blue:       #0c49b8;
  --ufic-mint:       #66ffb3;
  --ufic-gold:       #d5b174;
  --ufic-gold-pale:  #ebdbbe;
  --ufic-gold-light: #f8d48c;
  --ufic-gradient: linear-gradient(180deg, var(--ufic-blue), var(--ufic-navy));
  --ufic-gradient-h: linear-gradient(90deg, var(--ufic-navy), var(--ufic-blue));
  --ufic-pattern: url("/static/brand/ufic-pattern.svg"); /* абсолютный: переменную используют и из static/style.css */
  /* «стекло» на градиенте */
  --ufic-glass-bg: rgba(1, 10, 128, 0.55);
  --ufic-glass-border: rgba(255, 255, 255, 0.18);

  /* ---- Поверхности и нейтральные (светлая тема) ---- */
  --ufic-color-white:      #ffffff; /* карточки, поля */
  --ufic-color-off-white:  #f5f7fc; /* боковые панели, ответы модели */
  --ufic-color-light-gray: #e6ebf6; /* hover, подложки */
  --ufic-color-gray:       #c3cbe2;
  --ufic-color-danger:     #c62d3a;
  --ufic-color-primary:    var(--ufic-blue);
  --ufic-color-secondary:  var(--ufic-navy);

  /* ---- Текст ---- */
  --ufic-text-dark:    #0b1238;
  --ufic-text-muted:   #5d6585;
  --ufic-text-muteder: #3b4366;
  --ufic-text-heading: var(--ufic-navy);
  --ufic-text-body:    #1d2340;

  /* ---- Семантика ---- */
  --ufic-color-bg:               #f0f3fa;
  --ufic-color-link:             var(--ufic-blue);
  --ufic-color-link-hover:       var(--ufic-navy);
  --ufic-color-button-bg:        var(--ufic-color-primary);
  --ufic-color-button-bg-hover:  var(--ufic-navy);
  --ufic-color-button-text:      #ffffff;
  --ufic-border-color:           #dde3f0;

  /* ---- Типографика ---- */
  --ufic-font-heading: "Unbounded", "Segoe UI", Arial, sans-serif;
  --ufic-font-body: "TT Travels", "Segoe UI", Arial, Helvetica, sans-serif;
  --ufic-fw-heading: 600;
  --ufic-fw-body: 400;
  --ufic-button-padding: 10px 22px;
}

/* ---- База ---- */
body {
  margin: 0;
  background-color: var(--ufic-color-bg);
  color: var(--ufic-text-body);
  font-family: var(--ufic-font-body);
  font-weight: var(--ufic-fw-body);
  line-height: 1.6;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--ufic-font-heading);
  font-weight: var(--ufic-fw-heading);
  color: var(--ufic-text-heading);
  line-height: 1.3;
  margin: 0 0 0.5em;
}

h4, h5, h6 { font-family: var(--ufic-font-body); font-weight: 600; }

a {
  color: var(--ufic-color-link);
  text-decoration: none;
  transition: color 0.2s ease;
}
a:hover { color: var(--ufic-color-link-hover); }

/* ---- Кнопки: пилюли, как плашки брендбука ---- */
.btn,
button,
input[type="submit"] {
  display: inline-block;
  background-color: var(--ufic-color-button-bg);
  color: var(--ufic-color-button-text);
  font-family: var(--ufic-font-body);
  font-weight: 600;
  border: none;
  border-radius: 999px;
  padding: var(--ufic-button-padding);
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.btn:hover,
button:hover,
input[type="submit"]:hover { background-color: var(--ufic-color-button-bg-hover); }

.btn:disabled,
button:disabled,
input[type="submit"]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background-color: var(--ufic-color-gray);
}

/* видимый фокус только с клавиатуры */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid var(--ufic-color-primary);
  outline-offset: 2px;
}

/* ---- Фирменная плашка: градиент + паттерн ---- */
.ufic-surface {
  background: var(--ufic-pattern) 0 0 / 392px auto, var(--ufic-gradient);
  color: #fff;
}
