/* IngoRadar — общая дизайн-система (бренд Ингосстрах). Подключается всеми фронтами. */
:root {
  --blue-900:#061a4d; --blue-800:#0a2896; --blue-700:#1f3fb8;
  --accent:#2f6bff; --accent-2:#19d3da; --rating:#f5a623;
  --ink:#111a33; --ink-2:#5b6478; --bg:#f4f6fc; --surface:#fff; --border:#e6e9f4;
  --radius:18px; --shadow:0 18px 50px rgba(13,28,74,.12); --shadow-sm:0 6px 18px rgba(13,28,74,.08);
}
* { box-sizing:border-box; }
html,body { margin:0; }
body { font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif; color:var(--ink); background:var(--bg); -webkit-font-smoothing:antialiased; }
a { color:var(--accent); text-decoration:none; }

/* Шапка */
.nav { position:sticky; top:0; z-index:20; display:flex; align-items:center; justify-content:space-between;
  padding:16px 28px; backdrop-filter:blur(12px); background:rgba(255,255,255,.82); border-bottom:1px solid var(--border); }
.brand { font-weight:800; font-size:20px; color:var(--blue-800); letter-spacing:-.02em; }
.brand-mark { color:var(--accent); }
.brand small { font-weight:600; color:var(--ink-2); font-size:13px; margin-left:6px; }
.nav-links { display:flex; align-items:center; gap:18px; }
.nav-links a, .nav-links button { color:var(--ink-2); font-weight:600; font-size:15px; background:none; border:none; cursor:pointer; font-family:inherit; }

/* Кнопки */
.btn { display:inline-flex; align-items:center; gap:8px; cursor:pointer; border:1px solid transparent; border-radius:999px;
  font-weight:700; font-size:15px; padding:13px 24px; font-family:inherit; transition:.18s; }
.btn-sm { padding:9px 16px; font-size:14px; }
.btn-primary { background:linear-gradient(135deg,var(--accent),var(--blue-700)); color:#fff; box-shadow:0 10px 24px rgba(47,107,255,.35); }
.btn-primary:hover { transform:translateY(-2px); }
.btn-ghost { background:#fff; border-color:var(--border); color:var(--blue-800); }
.btn-ghost:hover { background:#f7f9ff; }
.btn-light { background:rgba(255,255,255,.16); color:#fff; border-color:rgba(255,255,255,.4); }
.btn-light:hover { background:rgba(255,255,255,.28); }
.btn-block { width:100%; justify-content:center; }

/* Hero / секции */
.hero { position:relative; overflow:hidden; color:#fff; padding:84px 28px 96px; text-align:center;
  background:radial-gradient(1200px 500px at 80% -10%,rgba(25,211,218,.35),transparent 60%),linear-gradient(135deg,var(--blue-900),var(--blue-700)); }
.hero h1 { font-size:clamp(34px,6vw,60px); line-height:1.05; margin:0 0 18px; letter-spacing:-.03em; font-weight:800; }
.hero p { font-size:clamp(16px,2.4vw,21px); opacity:.9; max-width:720px; margin:0 auto 32px; }
.hero .cta { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
.hero .amount { font-size:38px; font-weight:800; }
.orbs span { position:absolute; border-radius:50%; filter:blur(8px); opacity:.5; background:radial-gradient(circle at 30% 30%,var(--accent-2),transparent 70%); animation:float 7s ease-in-out infinite; }
.orbs span:nth-child(1){ width:160px;height:160px;left:6%;top:20%; }
.orbs span:nth-child(2){ width:120px;height:120px;right:10%;bottom:12%; animation-delay:-3s; }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-22px)} }
.stats { display:flex; gap:40px; justify-content:center; margin-top:44px; flex-wrap:wrap; }
.stat b { display:block; font-size:30px; font-weight:800; } .stat span { opacity:.8; font-size:14px; }
.section { max-width:1140px; margin:0 auto; padding:56px 24px; }
.section--wide { max-width:1180px; }
.section h2 { font-size:clamp(26px,4vw,38px); letter-spacing:-.02em; margin:0 0 8px; }
.section .sub { color:var(--ink-2); margin:0 0 28px; font-size:17px; }

/* Карточки агентов / сетка */
.grid { display:grid; gap:20px; grid-template-columns:1fr; }
@media (min-width:680px){ .grid { grid-template-columns:repeat(2,1fr); } }
@media (min-width:1000px){ .grid { grid-template-columns:repeat(3,1fr); } }
.card { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:22px; box-shadow:var(--shadow-sm); transition:.2s; display:flex; flex-direction:column; gap:12px; margin-bottom:16px; }
.card:hover { transform:translateY(-4px); box-shadow:var(--shadow); }
.card-top { display:flex; align-items:center; gap:14px; }
.avatar { width:54px; height:54px; border-radius:16px; flex:0 0 auto; display:grid; place-items:center; color:#fff; font-weight:800; font-size:22px; overflow:hidden; background:linear-gradient(135deg,var(--accent),var(--accent-2)); }
.avatar img,.avatar svg { width:100%; height:100%; object-fit:cover; }
.card h3 { margin:0; font-size:19px; }
.company { font-size:13px; color:var(--blue-700); font-weight:600; }
.card p { color:var(--ink-2); font-size:14.5px; margin:0; flex:1; line-height:1.5; }
.tags { display:flex; gap:6px; flex-wrap:wrap; } .tag { font-size:12px; font-weight:600; color:var(--ink-2); background:#eef1fb; border-radius:999px; padding:4px 10px; }
.empty { text-align:center; color:var(--ink-2); padding:50px 0; }
.partner-cta { background:linear-gradient(135deg,#0b1f5e,#14306f); color:#fff; border-radius:26px; padding:52px; display:grid; gap:18px; text-align:center; box-shadow:var(--shadow); }
.partner-cta p { opacity:.88; max-width:640px; margin:0 auto; }

/* Формы / списки */
.inp { width:100%; font-family:inherit; font-size:15px; padding:11px 14px; margin:4px 0 12px; border:1px solid var(--border); border-radius:12px; background:#fff; color:var(--ink); }
.inp:focus { outline:none; border-color:var(--accent); box-shadow:0 0 0 3px rgba(47,107,255,.15); }
.card label { font-size:13px; font-weight:600; color:var(--ink-2); }
.entry { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid var(--border); }
.entry:last-child { border-bottom:none; }
.tabset { display:flex; gap:8px; flex-wrap:wrap; }
.cab-head { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:20px; }

/* Чат-воркспейс */
.chatws { display:grid; grid-template-columns:1fr; gap:16px; }
@media (min-width:860px){ .chatws { grid-template-columns:300px 1fr; } }
.chatws__list { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); padding:14px; display:flex; flex-direction:column; gap:10px; align-self:start; }
.chatws__new { width:100%; justify-content:center; }
.chatws__empty { color:var(--ink-2); font-size:14px; text-align:center; padding:24px 8px; line-height:1.5; }
.chatws__area { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); min-height:560px; display:flex; flex-direction:column; overflow:hidden; }
.chatws__placeholder { margin:auto; color:var(--ink-2); padding:40px; text-align:center; }
.chatitem { display:flex; align-items:center; gap:10px; width:100%; text-align:left; background:#fff; border:1px solid var(--border); border-radius:14px; padding:10px; cursor:pointer; font-family:inherit; }
.chatitem:hover { background:#f7f9ff; } .chatitem--on { border-color:var(--accent); background:#e8efff; }
.chatitem__av,.chat-head2__av { width:40px; height:40px; border-radius:12px; flex:0 0 auto; display:grid; place-items:center; color:#fff; font-weight:800; font-size:18px; overflow:hidden; background:linear-gradient(135deg,var(--accent),var(--accent-2)); }
.chatitem__av img,.chat-head2__av img { width:100%; height:100%; object-fit:cover; }
.chatitem__txt { display:flex; flex-direction:column; min-width:0; }
.chatitem__txt b { font-size:14px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.chatitem__txt small { color:var(--ink-2); font-size:12px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.chat-head2 { display:flex; align-items:center; gap:12px; padding:14px 16px; color:#fff; background:linear-gradient(135deg,var(--blue-800),var(--blue-700)); }
.chat-head2__name { font-weight:700; } .chat-head2__company { font-size:12px; opacity:.85; }
.chat-body { flex:1; min-height:520px; background:#f7f9ff; overflow:auto; }
.chat-fallback { padding:20px; color:var(--ink-2); font-size:14px; line-height:1.5; }
.picker { padding:20px; } .picker h3 { margin:0 0 14px; }
.picker__grid { display:grid; grid-template-columns:1fr; gap:10px; }
@media (min-width:560px){ .picker__grid { grid-template-columns:1fr 1fr; } }
.picker__item { display:flex; align-items:center; gap:10px; background:#fff; border:1px solid var(--border); border-radius:14px; padding:12px; cursor:pointer; text-align:left; font-family:inherit; }
.picker__item:hover { border-color:var(--accent); background:#f7f9ff; }

/* Плашка агента над чатом + действия */
.chat-head2 { justify-content:space-between; }
.plashka { display:flex; align-items:center; gap:12px; background:none; border:none; cursor:pointer; color:#fff; text-align:left; font-family:inherit; padding:0; min-width:0; }
.plashka__meta { display:flex; flex-direction:column; min-width:0; }
.chat-head2__actions { display:flex; gap:8px; }
.iconbtn { width:34px; height:34px; border-radius:10px; border:none; background:#ffffff22; color:#fff; cursor:pointer; font-size:17px; line-height:1; display:grid; place-items:center; }
.iconbtn:hover { background:#ffffff38; }
.stars { color:var(--rating); }

/* Выпадающее меню ⋮ */
.dropdown { position:absolute; z-index:90; background:#fff; border:1px solid var(--border); border-radius:14px; box-shadow:var(--shadow); padding:6px; min-width:200px; display:flex; flex-direction:column; }
.dropdown button { background:none; border:none; text-align:left; padding:10px 12px; border-radius:10px; cursor:pointer; font-family:inherit; font-size:14px; color:var(--ink); }
.dropdown button:hover { background:#f4f6fc; }
.dropdown button.danger { color:var(--danger); }

/* Модалки */
.modal-back { position:fixed; inset:0; z-index:100; background:rgba(8,16,40,.5); backdrop-filter:blur(3px); display:grid; place-items:center; padding:20px; }
.modal { background:#fff; border-radius:20px; padding:24px; width:min(440px,100%); box-shadow:var(--shadow); }
.modal h3 { margin:0 0 10px; }
.rate-stars { font-size:34px; margin:8px 0 14px; }
.rstar { cursor:pointer; color:#d7defa; } .rstar.on { color:var(--rating); }

/* Карточка агента (в области чата) */
.agent-card { display:flex; flex-direction:column; height:100%; }
.agent-card__head { display:flex; align-items:center; gap:12px; padding:14px 16px; background:linear-gradient(135deg,var(--blue-800),var(--blue-700)); color:#fff; }
.agent-card__body { padding:20px; overflow:auto; }
.agent-card__body h4 { margin:16px 0 8px; }

.footer { text-align:center; color:var(--ink-2); font-size:14px; padding:40px 20px 60px; }
.toast-wrap { position:fixed; top:16px; left:50%; transform:translateX(-50%); z-index:80; display:flex; flex-direction:column; gap:8px; }
.toast { background:var(--ink); color:#fff; padding:12px 18px; border-radius:12px; font-size:14px; box-shadow:var(--shadow); }
