/* sv-analytics.css — премиум-аналитика опросов в стиле MP, синий бренд */
.sv{--a:#2563eb;--a2:#1d4ed8;--a3:#60a5fa;--soft:rgba(37,99,235,.08);
  --t:#0f172a;--t2:#5f6b82;--t3:#9aa4b8;--ring:#e9edf5;
  --green:#10b981;--red:#ef4444;--amber:#f59e0b;--cyan:#06b6d4;--rose:#ec4899;
  font-family:'Onest',sans-serif;color:var(--t)}
.sv *{box-sizing:border-box}

/* HERO */
.sv-hero{position:relative;overflow:hidden;border-radius:26px;padding:30px 34px;color:#fff;
  background:linear-gradient(135deg,#2f5dff 0%,#1e40af 55%,#1e3a8a 100%);
  box-shadow:0 22px 50px -18px rgba(37,99,235,.42);margin-bottom:22px}
.sv-hero::before{content:'';position:absolute;width:280px;height:280px;left:-80px;top:-80px;border-radius:50%;background:radial-gradient(circle,rgba(130,160,255,.55),transparent 70%);filter:blur(55px)}
.sv-hero::after{content:'';position:absolute;width:240px;height:240px;right:-60px;bottom:-70px;border-radius:50%;background:radial-gradient(circle,rgba(56,189,248,.42),transparent 70%);filter:blur(55px)}
.sv-hero-in{position:relative;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.sv-hero h1{font-weight:800;font-size:30px;letter-spacing:-.02em;margin:12px 0 6px}
.sv-hero-sub{font-weight:500;font-size:14px;color:rgba(255,255,255,.82);max-width:470px;line-height:1.5}
.sv-hero-badge{display:inline-flex;align-items:center;height:24px;padding:0 12px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.24);font-weight:700;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase}
.sv-hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;padding:20px 28px;border-radius:20px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16)}
.sv-hs-l{font-weight:500;font-size:12px;color:rgba(255,255,255,.72)}
.sv-hs-v{font-weight:800;font-size:30px;letter-spacing:-.02em;margin-top:2px}

/* SECTION HEADER */
.sv-sec{display:flex;align-items:center;gap:10px;font-weight:700;font-size:18px;letter-spacing:-.015em;margin:28px 0 14px}
.sv-hpill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;background:var(--soft);color:var(--a)}
.sv-hpill.amber{background:rgba(245,158,11,.13);color:#c2680b}.sv-hpill.emer{background:rgba(16,185,129,.13);color:#047a47}.sv-hpill.rose{background:rgba(236,72,153,.13);color:#a8126b}.sv-hpill.cyan{background:rgba(6,182,212,.14);color:#0a5b8c}.sv-hpill.violet{background:rgba(124,58,237,.11);color:#7c3aed}

/* GRIDS */
.sv-g4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.sv-g3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.sv-g2{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.sv-g2-13{display:grid;grid-template-columns:1fr 1.6fr;gap:16px;align-items:start}
@media(max-width:1000px){.sv-g4,.sv-g3,.sv-g2,.sv-g2-13{grid-template-columns:1fr}}

/* CARD */
.sv-card{background:#fff;border:1px solid rgba(37,99,235,.10);border-radius:20px;padding:20px 22px;
  box-shadow:0 1px 0 rgba(15,23,42,.04),0 10px 28px -14px rgba(37,99,235,.13);
  transition:transform .3s cubic-bezier(.2,.9,.25,1),box-shadow .3s,border-color .3s}
.sv-card:hover{transform:translateY(-2px);border-color:rgba(37,99,235,.2);box-shadow:0 18px 40px -16px rgba(37,99,235,.22)}
.sv-pill{display:inline-flex;align-items:center;height:21px;padding:0 10px;border-radius:999px;font-weight:700;font-size:10px;letter-spacing:.13em;text-transform:uppercase;background:var(--soft);color:var(--a);margin-bottom:7px}
.sv-pill.amber{background:rgba(245,158,11,.14);color:#c2680b}.sv-pill.emer{background:rgba(16,185,129,.14);color:#047a47}.sv-pill.red{background:rgba(239,68,68,.12);color:#c0392b}.sv-pill.rose{background:rgba(236,72,153,.13);color:#a8126b}.sv-pill.cyan{background:rgba(6,182,212,.14);color:#0a5b8c}.sv-pill.violet{background:rgba(124,58,237,.10);color:#7c3aed}
.sv-ct{font-weight:600;font-size:14px;letter-spacing:-.008em}
.sv-num{font-weight:600;font-size:38px;letter-spacing:-.03em;line-height:1;margin-top:8px;display:flex;align-items:baseline;gap:8px}
.sv-num small{font-weight:700;font-size:13px;color:var(--t3)}
.sv-sub{font-weight:500;font-size:12.5px;color:var(--t3);margin-top:6px}
.sv-kpi-lbl{font-weight:600;font-size:11px;color:var(--t2);text-transform:uppercase;letter-spacing:.06em}

/* DELTA */
.sv-delta{display:inline-flex;align-items:center;gap:3px;font-weight:600;font-size:12px;padding:3px 8px;border-radius:999px}
.sv-delta.up{color:#047857;background:rgba(16,185,129,.12)}
.sv-delta.down{color:#b91c1c;background:rgba(239,68,68,.12)}
.sv-delta.flat{color:var(--t3);background:rgba(15,23,42,.05)}

/* ACHIEVEMENT TILES (цветные) */
.sv-ach{position:relative;overflow:hidden;border-radius:20px;padding:20px 22px;color:#fff;min-height:132px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .3s}
.sv-ach:hover{transform:translateY(-3px)}
.sv-ach::before{content:'';position:absolute;width:120px;height:120px;border-radius:50%;right:-36px;top:-36px;background:rgba(255,255,255,.14);filter:blur(16px)}
.sv-ach.blue{background:linear-gradient(135deg,#3b82f6,#1e40af);box-shadow:0 16px 34px -16px rgba(37,99,235,.5)}
.sv-ach.red{background:linear-gradient(135deg,#f59e0b,#dc2626);box-shadow:0 16px 34px -16px rgba(220,38,38,.45)}
.sv-ach.emer{background:linear-gradient(135deg,#10b981,#0a5b8c);box-shadow:0 16px 34px -16px rgba(16,185,129,.45)}
.sv-ach.dark{background:linear-gradient(135deg,#0f172a,#1e3a8a);box-shadow:0 16px 34px -16px rgba(15,23,42,.5)}
.sv-ach-p{position:relative;display:inline-flex;height:22px;align-items:center;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.22);font-weight:700;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;width:fit-content}
.sv-ach-n{position:relative;font-weight:800;font-size:30px;letter-spacing:-.025em;margin-top:12px;line-height:1.05}
.sv-ach-n small{font-weight:700;font-size:15px;color:rgba(255,255,255,.72);margin-left:5px}
.sv-ach-l{position:relative;font-weight:600;font-size:13px;color:rgba(255,255,255,.92);margin-top:6px;line-height:1.32}

/* DONUT layout — легенда рядом */
.sv-donut-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:6px}
.sv-donut-row>div:last-child{flex:1;min-width:140px}

/* QUOTE chips */
.sv-quote{background:#f5f8fd;border-left:3px solid var(--a3);border-radius:0 10px 10px 0;padding:10px 13px;font-size:13.5px;color:var(--t);line-height:1.45}
.sv-empty{color:var(--t3);font-size:13px;padding:14px 0}
