/* Аналитика РОПа. Только токены CRM: графит, циан, Inter. Без теней и градиентов. */
.ra-hd{align-items:center}
.ra-seg{display:inline-flex;padding:3px;gap:2px;border:1px solid var(--line);border-radius:10px;background:var(--s1)}
.ra-seg-btn{min-height:32px;padding:5px 14px;border-radius:7px;font-size:12.5px;font-weight:500;color:var(--ink-subtle);transition:background .12s,color .12s}
.ra-seg-btn:hover{color:var(--ink)}
.ra-seg-btn[aria-pressed=true]{background:var(--s3);color:var(--ink)}

.ra-people-bar{display:flex;align-items:center;gap:8px;margin-bottom:16px}
.ra-people-bar.is-static .ra-people-nav{display:none}
.ra-people-nav:disabled{opacity:.35;cursor:default}
.ra-people{flex:1;min-width:0;display:flex;gap:6px;overflow-x:auto;padding:2px;scroll-snap-type:x proximity;cursor:grab;overscroll-behavior-x:contain}
.ra-people.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.ra-people.is-dragging .ra-person{pointer-events:none}
.ra-people-bar.can-right .ra-people{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent)}
.ra-people-bar.can-left .ra-people{-webkit-mask-image:linear-gradient(90deg,transparent,#000 36px);mask-image:linear-gradient(90deg,transparent,#000 36px)}
.ra-people-bar.can-left.can-right .ra-people{-webkit-mask-image:linear-gradient(90deg,transparent,#000 36px,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,transparent,#000 36px,#000 calc(100% - 36px),transparent)}
.ra-person{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:5px 13px 5px 6px;border:1px solid var(--line);border-radius:9999px;background:var(--s1);color:var(--ink-muted);font-size:13px;font-weight:500;scroll-snap-align:center;transition:border-color .12s,background .12s,color .12s}
.ra-person:hover{color:var(--ink);border-color:var(--line-3)}
.ra-person.on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-hover)}
.ra-person-all{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--s3);color:var(--ink-muted)}
.ra-person.on .ra-person-all{background:var(--primary);color:var(--on-primary)}
.ra-person-k{font-size:11px;color:var(--ink-tertiary);font-weight:400}
.ra-person.on .ra-person-k{color:var(--ink-subtle)}

.ra-body{display:flex;flex-direction:column;gap:18px;transition:opacity .15s}
.ra-body.ra-loading{opacity:.5;pointer-events:none}
.ra-panel{min-width:0;padding:20px 22px}
.ra-panel .panel-hd{align-items:flex-start;margin-bottom:14px}
.ra-panel .panel-hd h3{font-size:15px;font-weight:600;letter-spacing:-.01em}
.ra-panel .panel-hd .sub{display:block;margin-top:3px;font-size:12px;color:var(--ink-subtle)}
.ra-panel .panel-hd>div:first-child{flex:1;min-width:0}
.ra-panel .panel-hd:has(.ra-fn-total){flex-wrap:nowrap}
.ra-sub-h{font-size:12px;font-weight:500;color:var(--ink-subtle);margin:18px 0 8px}
.ra-sub-h:first-of-type{margin-top:4px}
.ra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.ra-grid-wide{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr)}
.ra-empty{padding:28px 12px}

/* KPI */
.ra-kpis{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
.ra-kpi{position:relative;display:flex;flex-direction:column;gap:6px;min-width:0;min-height:132px;padding:16px 18px 38px;border:1px solid var(--line);border-radius:12px;background:var(--s1);overflow:hidden}
.ra-kpi-lead{grid-column:span 2;background:var(--s2);border-color:var(--line-2)}
.ra-kpi-l{font-size:12px;color:var(--ink-subtle)}
.ra-kpi-v{font-size:26px;font-weight:500;letter-spacing:-.03em;line-height:1.1;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.ra-kpi-lead .ra-kpi-v{font-size:36px}
.ra-zero{color:var(--ink-tertiary)}
.ra-spark{position:absolute;left:0;right:0;bottom:0;width:100%;height:32px;display:block}
.ra-spark-area{fill:var(--primary-soft);stroke:none}
.ra-spark-line{fill:none;stroke:var(--primary-hover);stroke-width:1.5;vector-effect:non-scaling-stroke}
.ra-spark-flat{stroke:var(--line-2);stroke-width:1;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}
.ra-delta{display:inline-flex;align-items:baseline;gap:4px;font-size:11.5px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}
.ra-delta b{font-weight:600}
.ra-delta i{font-style:normal;font-weight:400;color:var(--ink-tertiary)}
.ra-good{color:var(--green)}
.ra-bad{color:var(--red)}
.ra-flat{color:var(--ink-subtle)}
.ra-warn{color:var(--amber)}

/* динамика */
.ra-metric-tabs{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end;max-width:100%}
.ra-tab{min-height:30px;padding:5px 10px;border:1px solid transparent;border-radius:6px;font-size:12px;color:var(--ink-subtle);transition:background .12s,color .12s}
.ra-tab:hover{color:var(--ink);background:var(--s2)}
.ra-tab[aria-pressed=true]{color:var(--ink);border-color:var(--line-3);background:var(--s3)}
.ra-trend-sum{display:flex;align-items:baseline;gap:10px;margin:0 0 10px}
.ra-trend-sum strong{font-size:30px;font-weight:500;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.ra-trend-sum span{font-size:12px;color:var(--ink-subtle)}
.ra-canvas{height:280px}

/* воронка */
.ra-funnel{list-style:none;margin:0;padding:0}
.ra-fn-row{display:grid;grid-template-columns:132px minmax(0,1fr) 96px;gap:12px;align-items:center}
.ra-fn-name{font-size:12.5px;line-height:1.35;color:var(--ink-muted)}
.ra-fn-track{display:flex;justify-content:center;height:40px}
.ra-fn-bar{display:flex;align-items:center;justify-content:center;min-width:44px;height:100%;border-radius:8px;background:var(--primary);color:var(--on-primary);font-variant-numeric:tabular-nums}
.ra-fn-bar b{font-size:14px;font-weight:600;white-space:nowrap}
.ra-fn-bar[data-zero]{width:44px!important;background:var(--s3);color:var(--ink-subtle)}
.ra-fn-step:last-child .ra-fn-bar:not([data-zero]){background:var(--green);color:#04120a}
.ra-fn-conv{text-align:right;font-variant-numeric:tabular-nums}
.ra-fn-conv em{display:block;font-style:normal;font-size:14px;font-weight:600}
.ra-fn-conv small{display:block;font-size:10.5px;line-height:1.3;color:var(--ink-tertiary)}
.ra-fn-link{height:14px;margin:0 108px 0 144px;background:var(--primary-soft);clip-path:polygon(calc(50% - var(--a) / 2) 0,calc(50% + var(--a) / 2) 0,calc(50% + var(--b) / 2) 100%,calc(50% - var(--b) / 2) 100%)}
.ra-fn-total{text-align:right;flex:none}
.ra-fn-total strong{display:block;font-size:22px;font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ra-fn-total span{font-size:11.5px;color:var(--ink-subtle)}
.ra-note{margin:14px 0 0;font-size:12px;line-height:1.55;color:var(--ink-subtle)}

/* кольца */
.ra-rings{display:grid;gap:14px}
.ra-rings-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.ra-rings-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ra-rings-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ra-ring{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;padding:8px 4px;text-align:center}
.ra-ring svg{width:92px;height:92px;display:block}
.ra-ring-track,.ra-ring-fill{fill:none;stroke-width:7}
.ra-ring-track{stroke:var(--chart-track)}
.ra-ring-fill{stroke:var(--primary-hover);stroke-linecap:round}
.ra-ring strong{position:absolute;top:8px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;width:92px;height:92px;font-size:20px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ra-ring strong small{margin-left:1px;font-size:11px;font-weight:500;color:var(--ink-subtle)}
.ra-ring-l{margin-top:6px;font-size:12.5px;font-weight:500;color:var(--ink)}
.ra-ring-h{font-size:11px;line-height:1.4;color:var(--ink-tertiary)}

/* скорость и мини-итоги */
.ra-timing{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ra-time{display:flex;flex-direction:column;gap:5px;padding:14px;border-radius:10px;background:var(--s2)}
.ra-time span{font-size:12px;color:var(--ink-muted)}
.ra-time strong{font-size:22px;font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ra-time small{font-size:11px;line-height:1.4;color:var(--ink-tertiary)}
.ra-mini{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:16px}
.ra-mini>div{display:flex;flex-direction:column;gap:3px;padding:11px 12px;border-radius:10px;background:var(--s2);min-width:0}
.ra-mini span{font-size:11.5px;color:var(--ink-subtle)}
.ra-mini strong{font-size:18px;font-weight:500;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.ra-mini small{font-size:10.5px;color:var(--ink-tertiary)}

/* горизонтальные полосы */
.ra-bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.ra-bars li{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr) 42px;gap:10px;align-items:center;font-size:12.5px}
.ra-bar-l{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-muted)}
.ra-bar-t{height:8px;border-radius:4px;background:var(--chart-track);overflow:hidden}
.ra-bar-f{height:100%;border-radius:4px;background:var(--primary-hover);min-width:0}
.ra-bars b{text-align:right;font-weight:500;font-variant-numeric:tabular-nums}

/* тепловая карта */
.ra-heat-scroll{overflow-x:auto}
.ra-heat{display:flex;flex-direction:column;gap:3px;min-width:560px}
.ra-heat-row{display:grid;grid-template-columns:30px repeat(24,minmax(0,1fr));gap:3px;align-items:center}
.ra-heat-head span{font-size:10.5px;color:var(--ink-tertiary);text-align:left;height:14px;line-height:14px}
.ra-heat-d{font-size:11.5px;color:var(--ink-subtle)}
.ra-heat-row i,.ra-heat-foot i{display:block;height:20px;border-radius:3px}
.ra-h0{background:var(--s2)}
.ra-h1{background:color-mix(in srgb,var(--primary-hover) 20%,transparent)}
.ra-h2{background:color-mix(in srgb,var(--primary-hover) 40%,transparent)}
.ra-h3{background:color-mix(in srgb,var(--primary-hover) 65%,transparent)}
.ra-h4{background:color-mix(in srgb,var(--primary-hover) 95%,transparent)}
.ra-heat-foot{display:flex;align-items:center;gap:5px;justify-content:flex-end;margin-top:12px;font-size:11px;color:var(--ink-tertiary)}
.ra-heat-foot i{width:18px;height:12px}

/* команда */
.ra-table table{min-width:1040px}
.ra-table th,.ra-table td{padding-left:12px;padding-right:12px}
.ra-th{display:inline-flex;align-items:center;gap:4px;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;white-space:nowrap}
.ra-th:hover{color:var(--ink)}
.ra-table th:first-child,.ra-table td:first-child{position:sticky;left:0;z-index:1;background:var(--s1)}
.ra-table th:first-child{background:var(--s2)}
.ra-row{cursor:pointer}
.ra-row:hover td:first-child{background:var(--s2)}
.ra-row.on td,.ra-row.on:hover td:first-child{background:var(--primary-soft)}
.ra-who{display:flex;align-items:center;gap:10px;min-width:170px}
.ra-who b{display:block;font-size:13px;font-weight:500}
.ra-who small{font-size:11px;color:var(--ink-tertiary)}
.ra-num{white-space:nowrap;font-variant-numeric:tabular-nums}
.ra-num b{display:block;font-weight:500}
.ra-num .ra-delta{font-size:10.5px}
.ra-cell-bar{display:block;width:84px;height:3px;margin-top:5px;border-radius:2px;background:var(--chart-track);overflow:hidden}
.ra-cell-bar i{display:block;height:100%;background:var(--primary)}
.ra-na{color:var(--ink-tertiary)}

/* сигналы */
.ra-signals{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ra-sig{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;background:var(--s2);font-size:13px;line-height:1.45}
.ra-sig>span:nth-child(2){flex:1;min-width:0;overflow-wrap:anywhere}
.ra-sig-i{flex:none;display:grid;place-items:center}
.ra-sig-warn .ra-sig-i{color:var(--amber)}
.ra-sig-info .ra-sig-i{color:var(--primary-hover)}
.ra-sig-good .ra-sig-i{color:var(--green)}

@media(max-width:1280px){.ra-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.ra-kpi-lead{grid-column:span 1}.ra-kpi-lead .ra-kpi-v{font-size:30px}}
@media(max-width:1100px){.ra-grid,.ra-grid-wide{grid-template-columns:minmax(0,1fr)}}
@media(pointer:coarse){.ra-people-nav{display:none}.ra-people{cursor:auto}}
@media(max-width:700px){
  .ra-hd .ra-seg{width:100%}
  .ra-seg-btn{flex:1}
  .ra-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .ra-kpi{min-height:118px;padding:14px 14px 34px}
  .ra-kpi-v,.ra-kpi-lead .ra-kpi-v{font-size:22px}
  .ra-panel{padding:16px}
  .ra-canvas{height:230px}
  .ra-metric-tabs{justify-content:flex-start}
  .ra-fn-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name conv" "track track";gap:6px 10px}
  .ra-fn-name{grid-area:name}
  .ra-fn-conv{grid-area:conv}
  .ra-fn-conv small{display:none}
  .ra-fn-track{grid-area:track;height:34px}
  .ra-fn-link{margin:0}
  .ra-rings-4,.ra-rings-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ra-timing,.ra-mini{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ra-bars li{grid-template-columns:minmax(0,110px) minmax(0,1fr) 36px}
  .ra-sig{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){.ra-body,.ra-seg-btn,.ra-person,.ra-tab{transition:none}}

/* заголовок динамики: вкладки показателей уходят под название, а не сжимают его */
.ra-trend .panel-hd{flex-direction:column;align-items:stretch;gap:10px}
.ra-trend .ra-metric-tabs{justify-content:flex-start}
