/* main.min.css — Maldivoff Fish Wiki | Собранный CSS */
/* Источники: 00-variables → 01-reset → 02-typography → 03-layout → 04-components → 05-species-page → 06-archive → 07-utilities */
/* На сервере заменить этот файл конкатенацией: cat 00-variables.css 01-reset.css ... > main.min.css && npx csso main.min.css -o main.min.css */

/* ─── ИМПОРТ ВСЕХ ФАЙЛОВ ─────────────────────────────────────────────────── */
@import url('00-variables.css');
@import url('01-reset.css');
@import url('02-typography.css');
@import url('03-layout.css');
@import url('04-components.css');
@import url('05-species-page.css');
@import url('06-archive.css');
@import url('07-utilities.css');

/* ─── FOOTER STYLES ──────────────────────────────────────────────────────── */
.site-footer {
  background: var(--c-abyss);
  border-top: 1px solid rgba(200,151,58,0.12);
  padding: var(--sp-12) 0 var(--sp-6);
  margin-top: var(--sp-12);
}
.site-footer__inner { display: flex; flex-direction: column; gap: var(--sp-8); }
.site-footer__top { display: grid; grid-template-columns: 1fr 2fr; gap: var(--sp-8); align-items: start; }
@media (max-width: 768px) { .site-footer__top { grid-template-columns: 1fr; } }
.site-footer__logo { font-size: var(--text-xl); font-weight: 300; color: var(--c-pearl); letter-spacing: 0.05em; }
.site-footer__logo span { color: var(--c-gold); }
.site-footer__tagline { color: var(--c-pearl-muted); font-size: var(--text-sm); margin-top: var(--sp-1); max-width: 30ch; }
.site-footer__nav { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--sp-4); }
@media (max-width: 640px) { .site-footer__nav { grid-template-columns: 1fr 1fr; } }
.site-footer__col-title { font-size: var(--text-xs); text-transform: uppercase; letter-spacing: 0.1em; color: var(--c-gold); margin-bottom: var(--sp-2); font-weight: 600; }
.site-footer__col ul { list-style: none; display: flex; flex-direction: column; gap: var(--sp-1); }
.site-footer__col a { color: var(--c-pearl-muted); font-size: var(--text-sm); transition: color var(--t-fast); }
.site-footer__col a:hover { color: var(--c-pearl); text-decoration: none; }
.site-footer__bottom { border-top: 1px solid rgba(240,236,228,0.06); padding-top: var(--sp-4); display: flex; flex-direction: column; gap: var(--sp-1); }
.site-footer__copy, .site-footer__legal { font-size: var(--text-xs); color: var(--c-pearl-muted); }
.site-footer__copy a, .site-footer__legal a { color: var(--c-pearl-muted); text-decoration: underline; }

/* ─── MOBILE NAV TOGGLE ──────────────────────────────────────────────────── */
.site-nav__toggle { display: none; flex-direction: column; gap: 5px; background: none; border: none; cursor: pointer; padding: 4px; }
.site-nav__toggle span { display: block; width: 22px; height: 2px; background: var(--c-pearl); transition: transform var(--t-base), opacity var(--t-base); border-radius: 1px; }
@media (max-width: 768px) {
  .site-nav__toggle { display: flex; }
  .site-nav__menu { display: none; position: absolute; top: 64px; left: 0; right: 0; background: var(--c-abyss); padding: var(--sp-4); flex-direction: column; border-bottom: 1px solid rgba(200,151,58,0.15); }
  .site-nav__menu.is-open { display: flex; }
}

/* ─── HOME PAGE ──────────────────────────────────────────────────────────── */
.home-hero { position: relative; min-height: 100svh; display: flex; align-items: center; overflow: hidden; background: var(--c-abyss); }
.home-hero__bg { position: absolute; inset: 0; background: radial-gradient(ellipse at 30% 50%, rgba(29,58,92,0.5) 0%, transparent 60%), radial-gradient(ellipse at 70% 80%, rgba(200,151,58,0.08) 0%, transparent 50%); }
.home-hero__content { position: relative; z-index: 1; padding: 8rem 0 6rem; }
.home-hero__eyebrow { font-size: var(--text-xs); text-transform: uppercase; letter-spacing: 0.15em; margin-bottom: var(--sp-2); }
.home-hero__title { font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 200; line-height: 1.15; letter-spacing: -0.025em; margin-bottom: var(--sp-4); color: var(--c-pearl); }
.home-hero__subtitle { max-width: 50ch; color: var(--c-pearl-warm); margin-bottom: var(--sp-6); }
.home-hero__actions { display: flex; gap: var(--sp-2); flex-wrap: wrap; margin-bottom: var(--sp-8); }
.btn--gold { background: var(--c-gold); color: var(--c-abyss); border-color: var(--c-gold); font-weight: 600; }
.btn--gold:hover { background: var(--c-gold-light); border-color: var(--c-gold-light); color: var(--c-abyss); }
.home-hero__stats { display: flex; gap: var(--sp-6); flex-wrap: wrap; }
.stat__num { display: block; font-size: var(--text-2xl); font-weight: 200; color: var(--c-gold-light); line-height: 1; }
.stat__label { font-size: var(--text-xs); text-transform: uppercase; letter-spacing: 0.1em; color: var(--c-pearl-muted); }

/* ─── SEARCH RESULTS ─────────────────────────────────────────────────────── */
.search-results { position: absolute; top: 100%; left: 0; right: 0; background: var(--c-midnight); border: 1px solid rgba(200,151,58,0.2); border-radius: var(--radius-md); z-index: var(--z-tooltip); overflow: hidden; box-shadow: 0 8px 32px rgba(0,0,0,0.6); }
.search-result { display: flex; align-items: center; gap: var(--sp-2); padding: var(--sp-2) var(--sp-3); border-bottom: 1px solid rgba(240,236,228,0.06); transition: background var(--t-fast); text-decoration: none; }
.search-result:last-child { border-bottom: none; }
.search-result:hover { background: rgba(200,151,58,0.08); }
.search-result__img { width: 48px; height: 36px; object-fit: cover; border-radius: var(--radius-sm); flex-shrink: 0; }
.search-result__name { display: block; color: var(--c-pearl); font-size: var(--text-sm); }
.search-result__sci { display: block; color: var(--c-pearl-muted); font-size: var(--text-xs); font-style: italic; font-family: var(--font-sci); }
.site-nav__search { position: relative; }
.search-form__input { background: rgba(240,236,228,0.06); border: 1px solid rgba(240,236,228,0.1); color: var(--c-pearl); padding: 6px var(--sp-2); border-radius: var(--radius-sm); font-size: var(--text-sm); width: 200px; transition: border-color var(--t-fast), width var(--t-base); }
.search-form__input:focus { outline: none; border-color: rgba(200,151,58,0.4); width: 260px; }
.search-form__input::placeholder { color: var(--c-pearl-muted); }

/* ─── SPECIES ASIDE ──────────────────────────────────────────────────────── */
.species-aside { position: sticky; top: calc(64px + var(--sp-4)); }
.species-illustration { margin-top: var(--sp-4); border-radius: var(--radius-sm); overflow: hidden; }
.species-illustration figcaption { font-size: var(--text-xs); color: var(--c-pearl-muted); padding: var(--sp-1) var(--sp-2); background: var(--c-surface); }

/* ─── NAV SCROLLED ───────────────────────────────────────────────────────── */
.site-nav.is-scrolled { box-shadow: 0 4px 24px rgba(0,0,0,0.4); }

/* ─── SITE NAV INNER ─────────────────────────────────────────────────────── */
.site-nav__inner { display: flex; align-items: center; gap: var(--sp-4); justify-content: space-between; width: 100%; max-width: var(--grid-max); margin: 0 auto; padding: 0 var(--sp-3); }
.site-nav__menu { display: flex; align-items: center; gap: var(--sp-3); list-style: none; }
.site-nav__link { color: var(--c-pearl-muted); font-size: var(--text-sm); transition: color var(--t-fast); padding: 4px 0; border-bottom: 2px solid transparent; }
.site-nav__link:hover, .site-nav__link.is-active { color: var(--c-pearl); text-decoration: none; border-bottom-color: var(--c-gold); }
