/* ═══════════════════════════════════════════════
   АгроМаркет КРС — main.css v1
   Единые переменные и базовые компоненты
   для всех публичных страниц
   ═══════════════════════════════════════════════ */

:root {
  /* Зелёная палитра */
  --g900:#0a2218; --g800:#0f3d2e; --g700:#145233;
  --g600:#1a6b42; --g500:#1f8050; --g400:#27a865;
  --g300:#4ade80; --g100:#d4f0e2; --g50:#eaf7f0;

  /* Серая палитра */
  --gr50:#f5f5f3; --gr100:#e8e8e4; --gr200:#d1d1cc;
  --gr300:#aaa; --gr400:#888; --gr500:#666;
  --gr600:#444; --gr700:#2c2c2c; --gr800:#1a1a1a;

  /* Алиасы для обратной совместимости */
  --graphite50:var(--gr50);
  --graphite100:var(--gr100);
  --graphite200:var(--gr200);
  --graphite300:var(--gr300);
  --graphite400:var(--gr400);
  --graphite500:var(--gr500);
  --graphite600:var(--gr600);
  --graphite700:var(--gr700);
  --graphite800:var(--gr800);
  --green50:var(--g50);
  --green100:var(--g100);
  --green400:var(--g400);
  --green500:var(--g500);
  --green600:var(--g600);
  --green800:var(--g800);

  /* Типографика */
  --font-sans:'Inter',sans-serif;
  --font-display:'Geologica',sans-serif;

  /* Размеры */
  --nav-h:60px;
  --max-w:1280px;
  --radius:12px;
}

*, *::before, *::after { box-sizing: border-box; margin:0; padding:0; }
html { scroll-behavior: smooth; }
body { font-family:var(--font-sans); background:var(--gr50); color:var(--gr800); font-size:15px; line-height:1.55; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; }

/* ─── NAVBAR ─── */
.site-nav {
  height:var(--nav-h);
  background:#fff;
  border-bottom:1px solid var(--gr100);
  position:sticky; top:0; z-index:200;
}
.site-nav .nav-inner {
  max-width:var(--max-w);
  margin:0 auto;
  padding:0 24px;
  height:100%;
  display:flex; align-items:center; gap:24px;
}
.site-nav .logo {
  display:flex; align-items:center; gap:10px;
  text-decoration:none; flex-shrink:0;
}
.site-nav .logo-icon {
  width:32px; height:32px;
  background:var(--g800); border-radius:8px;
  display:flex; align-items:center; justify-content:center;
}
.site-nav .logo-icon svg { fill:none; stroke:#fff; stroke-width:1.8; width:16px; height:16px; }
.site-nav .logo-name {
  font-family:var(--font-display); font-weight:700; font-size:14px; color:var(--gr800);
}
.site-nav .logo-sub { font-size:10px; color:var(--gr400); }
.site-nav .nav-spacer { flex:1; }
.site-nav .nav-links { display:flex; align-items:center; gap:4px; }
.site-nav .nav-link {
  padding:7px 13px; border-radius:8px;
  font-size:14px; font-weight:500; color:var(--gr600);
  transition:.12s;
}
.site-nav .nav-link:hover { background:var(--gr50); color:var(--gr800); }
.site-nav .nav-link.active { color:var(--g700); font-weight:600; }
.site-nav .nav-btn {
  padding:8px 16px; border-radius:9px;
  background:var(--g800); color:#fff;
  font-size:13px; font-weight:600;
  border:none; cursor:pointer; font-family:var(--font-sans);
  transition:.12s;
}
.site-nav .nav-btn:hover { background:var(--g700); }
.site-nav .nav-btn-ghost {
  padding:7px 14px; border-radius:9px;
  border:1.5px solid var(--gr200); background:#fff;
  color:var(--gr700); font-size:13px; font-weight:600;
  cursor:pointer; font-family:var(--font-sans); transition:.12s;
}
.site-nav .nav-btn-ghost:hover { border-color:var(--g400); color:var(--g700); }
.site-nav .nav-user {
  display:flex; align-items:center; gap:8px;
  padding:5px 12px 5px 5px;
  border:1.5px solid var(--gr100); border-radius:10px;
  text-decoration:none; transition:.12s;
}
.site-nav .nav-user:hover { border-color:var(--g400); background:var(--g50); }
.site-nav .nav-user-ava {
  width:28px; height:28px; border-radius:50%;
  background:var(--g800); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-size:12px; font-weight:700; font-family:var(--font-display);
}
.site-nav .nav-user-name { font-size:13px; font-weight:600; color:var(--gr700); }

/* ─── ОБЩИЕ КНОПКИ ─── */
.btn { display:inline-flex; align-items:center; gap:6px; padding:10px 20px; border-radius:10px; font-size:14px; font-weight:600; cursor:pointer; font-family:var(--font-sans); transition:.15s; border:none; }
.btn-green { background:var(--g800); color:#fff; }
.btn-green:hover { background:var(--g700); }
.btn-outline { background:#fff; color:var(--gr700); border:1.5px solid var(--gr200); }
.btn-outline:hover { border-color:var(--g400); color:var(--g700); }

/* ─── БЕЙДЖИ ─── */
.badge { display:inline-flex; align-items:center; padding:3px 10px; border-radius:6px; font-size:12px; font-weight:600; }
.badge-green { background:var(--g50); color:var(--g700); border:1px solid var(--g100); }
.badge-gray { background:var(--gr100); color:var(--gr600); }
.badge-yellow { background:#fef3c7; color:#92400e; }
.badge-red { background:#fee2e2; color:#991b1b; }

/* ─── КАРТОЧКА ─── */
.card { background:#fff; border:1px solid var(--gr100); border-radius:var(--radius); overflow:hidden; }
.card-body { padding:16px 20px; }
.card-header { padding:16px 20px; border-bottom:1px solid var(--gr100); display:flex; align-items:center; justify-content:space-between; }
.card-title { font-family:var(--font-display); font-size:16px; font-weight:700; color:var(--gr800); }

/* ─── FOOTER ─── */
.site-footer { background:#fff; border-top:1px solid var(--gr100); padding:32px 24px; margin-top:60px; }
.site-footer-inner { max-width:var(--max-w); margin:0 auto; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; }
.site-footer-logo { font-family:var(--font-display); font-weight:700; font-size:14px; color:var(--gr800); }
.site-footer-links { display:flex; gap:20px; flex-wrap:wrap; }
.site-footer-link { font-size:13px; color:var(--gr400); transition:.12s; }
.site-footer-link:hover { color:var(--gr700); }
.site-footer-copy { font-size:12px; color:var(--gr300); width:100%; }
