/* =====================================================================
   Компании и карточка компании (fos/s-companies.js) — panel-desktop §6.6–6.7
   Только классы .cc-*; общий вид — .g-* из /deep.css.
   ===================================================================== */

/* ---------- список: панель поиска и фильтров ---------- */
.cc-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.cc-search{flex:1;min-width:280px;max-width:420px}
.cc-search input::-webkit-search-cancel-button{cursor:pointer}
.cc-chips{display:contents}
.cc-count{margin-left:auto;white-space:nowrap}
.cc-msort{display:none}
.cc-body{display:flex;flex-direction:column;gap:16px;transition:opacity .15s}
.is-busy .cc-body{opacity:.55}

/* ---------- список: таблица ---------- */
.cc-table{--cols:minmax(0,2fr) 160px 100px 100px 130px 120px 40px}
.cc-table .g-tr{padding:calc(var(--row-py) + 1px) var(--row-px)}
.cc-sort{border:none;background:none;padding:0;margin:0;font:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;text-align:inherit;white-space:nowrap}
.cc-sort:hover{color:var(--ink-2)}
.cc-name{display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:32px}
.cc-name__t{font:400 14.5px var(--font);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-name__d{font:500 11px var(--mono);color:var(--faint);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-name__c{display:none}
.cc-cat{display:flex;align-items:center;gap:6px;font:400 13px var(--font);color:var(--ink-2);min-width:0}
.cc-cat.is-none{color:var(--faint)}
.cc-table .g-num.is-none{color:var(--dash)}
.cc-date{font:500 11.5px var(--mono);color:var(--soft);white-space:nowrap}
.cc-go{justify-self:end;display:flex;width:14px;height:14px;color:var(--faint)}
.cc-go .g-ico{width:14px;height:14px}

/* ---------- карточка компании ---------- */
.cc-back{align-self:flex-start}
.cc-skel-back{width:150px;height:36px;border-radius:var(--r-pill)}
.cc-main{grid-column:span 8;padding:22px 24px;display:flex;flex-direction:column;gap:18px;margin:0;min-width:0}
.cc-top{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}
.cc-ttl{flex:1;min-width:260px;display:flex;flex-direction:column;gap:4px}
.cc-lbl{font:500 10.5px var(--mono);letter-spacing:.08em;color:var(--muted)}
.cc-nm{display:flex;align-items:center;gap:10px;min-width:0}
.cc-nm__t{min-width:0;max-width:100%;border:none;border-bottom:1px dashed var(--dash);border-radius:0;background:none;padding:0;margin:0;
  font:200 34px/1.1 var(--font);letter-spacing:-.02em;color:var(--ink);text-align:left;white-space:normal;overflow-wrap:anywhere;cursor:text}
.cc-nm__t:hover{border-bottom-color:var(--ink)}
.cc-nm__i{flex:1;min-width:0;width:100%;border:none;border-bottom:1px dashed var(--ink)!important;border-radius:0;background:transparent;padding:0;margin:0;
  font:200 34px/1.1 var(--font);letter-spacing:-.02em;color:var(--ink);outline:none}
.cc-nm__e{display:flex;width:16px;height:16px;border:none;background:none;padding:0;color:var(--faint);flex:none;cursor:pointer}
.cc-nm__e .g-ico{width:16px;height:16px}
.cc-nm__e:hover{color:var(--ink)}
.cc-nm.is-edit .cc-nm__e{display:none}
.cc-sub{font:500 11px var(--mono);color:var(--soft);text-transform:uppercase;overflow-wrap:anywhere}
.cc-acts{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.cc-catsel{position:relative;display:flex;align-items:center}
.cc-catsel .g-dot{position:absolute;left:14px;top:50%;margin-top:-3.5px;pointer-events:none}
.cc-catsel select{padding-left:28px;max-width:260px;cursor:pointer}
.cc-save{padding:0 20px}
.cc-kpis{display:grid;grid-template-columns:repeat(6,minmax(min-content,1fr));gap:14px;border-top:1px solid var(--line-head);padding-top:16px}
.cc-kpi{display:flex;flex-direction:column;gap:2px}
.cc-kpi__v{font:300 26px/1 var(--font);white-space:nowrap}
.cc-kpi__l{font:400 12px var(--font);color:var(--soft)}
.cc-notes{width:100%;display:block}

/* тёмная «Привезли на склад» */
.cc-wh{grid-column:span 4;display:flex;flex-direction:column;gap:12px;min-width:0}
.cc-wh__v{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.cc-wh__n{font:200 54px/1 var(--font);letter-spacing:-.04em}
.cc-wh__u{font:300 15px var(--font);color:rgba(255,255,255,.55)}
.cc-wh__chart{display:flex;align-items:flex-end;gap:8px;height:90px}
.cc-wh__bar{flex:1;max-width:120px;min-width:6px;border-radius:var(--r-pill);--h:#fff}
.cc-wh__bar.is-last{background:#fff}
.cc-wh__dates{display:flex;gap:8px;font:500 10.5px var(--mono);color:rgba(255,255,255,.5)}
.cc-wh__dates span{flex:1;max-width:120px;min-width:6px;text-align:center;white-space:nowrap}
.cc-wh__dates span:first-child{text-align:left}
.cc-wh__dates span:last-child{text-align:right}
.cc-wh__dates span:only-child{text-align:left}

/* переписки компании */
.cc-th{grid-column:span 12}
.cc-th__h{display:flex;justify-content:space-between;padding:18px 24px 10px}
.cc-th__row{display:grid;grid-template-columns:minmax(0,2fr) 140px 120px 160px 100px;gap:14px;align-items:center;
  padding:var(--row-py) var(--row-px);border-top:1px solid var(--line-row);color:var(--ink)}
.cc-th__row:hover{background:var(--hover);color:var(--ink)}
.cc-th__s{font:400 14px var(--font);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-th__b{font:500 11px var(--mono);color:var(--soft);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-th__w{font:400 13px var(--font);color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-th__d{font:500 11px var(--mono);color:var(--faint);text-align:right;white-space:nowrap}
.cc-st{display:flex;align-items:center;gap:6px;font:400 13px var(--font);color:var(--c);white-space:nowrap;min-width:0}
.cc-st .g-dot{background:var(--c)}
.cc-st--off{color:var(--faint)}

/* три карточки внизу */
.cc-mini{grid-column:span 4;padding:20px;display:flex;flex-direction:column;gap:10px;min-width:0}
.cc-mini--dashed{gap:8px}
.cc-ct{display:flex;flex-direction:column;min-width:0;color:var(--ink)}
a.cc-ct:hover{color:var(--ink)} a.cc-ct:hover .cc-ct__n{text-decoration:underline;text-decoration-color:var(--dash);text-underline-offset:3px}
.cc-ct__n{font:400 14px var(--font);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cc-ct__s{display:flex;min-width:0;font:400 12px var(--mono);color:var(--soft);white-space:nowrap}
.cc-ct__e{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}
.cc-ct__k{flex:none;white-space:pre}
.cc-camp{display:flex;justify-content:space-between;align-items:center;gap:10px;font:400 14px var(--font);color:var(--ink);min-width:0}
a.cc-camp:hover{color:var(--ink)} a.cc-camp:hover > .g-ell{text-decoration:underline;text-decoration-color:var(--dash);text-underline-offset:3px}
.cc-none{margin:0;font:300 14px/1.5 var(--font);color:var(--soft)}
/* сделки компании: тема и «Ветошь · 2 т · € 1 800» слева, этап справа (цвет — только у точки) */
.cc-deal{align-items:flex-start}
.cc-deal__t{display:flex;flex-direction:column;gap:2px;min-width:0}
.cc-deal__m{font:400 12px var(--mono);color:var(--soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}
a.cc-deal:hover .cc-deal__t > .g-ell{text-decoration:underline;text-decoration-color:var(--dash);text-underline-offset:3px}
.cc-st--deal{flex:none;color:var(--ink-2);padding-top:1px}
.cc-st--deal.is-closed{color:var(--soft)}
.cc-deal__all{font-size:14px;align-self:flex-start}
.cc-none--pad{padding:12px 24px 18px;border-top:1px solid var(--line-row)}

/* ---------- узкий десктоп (до 1280 px, раскладка сжимается до 1024) ---------- */
@media (max-width:1279px) and (min-width:861px){
  .cc-table{--cols:minmax(0,2fr) 140px 84px 88px 112px 100px 24px}
  .cc-table .g-thead,.cc-table .g-tr{gap:12px}
}
@media (max-width:1199px) and (min-width:861px){
  /* категория уходит под название — колонке названия остаётся место */
  .cc-table{--cols:minmax(0,2fr) 84px 88px 108px 96px 16px}
  .cc-table .cc-c-cat{display:none}
  .cc-name__c{display:flex;margin-top:4px}
  .cc-kpis{grid-template-columns:repeat(3,minmax(min-content,1fr));row-gap:18px}
  .cc-th__row{grid-template-columns:minmax(0,2fr) 90px 100px 150px 56px;gap:12px}
  .cc-acts{width:100%}
}

/* ---------- телефон (< 860 px): строки — карточками ---------- */
@media (max-width:860px){
  /* колонка .g-view на телефоне — по ширине экрана, а не по самому широкому ряду (ряд чипов) */
  .g-view.cc-list-view,.g-view.cc-card-view{grid-template-columns:minmax(0,1fr)}
  .cc-bar{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
  .cc-search{max-width:none;min-width:0;height:48px}
  .cc-search input{font-size:16px}
  .cc-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
    margin:0 calc(-16px - var(--safe-r)) 0 calc(-16px - var(--safe-l));padding:0 calc(16px + var(--safe-r)) 2px calc(16px + var(--safe-l))}
  .cc-chips::-webkit-scrollbar{display:none}
  .cc-chips .g-chip{flex:none;height:40px}
  .cc-msort{display:flex;justify-self:start}
  .cc-msort select{height:44px;font-size:16px}
  .cc-count{margin-left:0;padding:0 4px}
  .cc-mlist{background:#fff;border:1px solid var(--line);border-radius:20px;display:flex;flex-direction:column;overflow:hidden}
  .cc-mrow{display:flex;flex-direction:column;gap:3px;padding:14px 16px;border-bottom:1px solid var(--line-soft);color:var(--ink)}
  .cc-mrow:last-child{border-bottom:none}
  .cc-mrow:hover,.cc-mrow:active{color:var(--ink);background:var(--hover)}
  .cc-mrow__top{display:flex;align-items:baseline;gap:10px;min-width:0}
  .cc-mrow__t{flex:1;min-width:0;font:400 15px var(--font);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .cc-mrow__kg{font:500 13px var(--mono);color:var(--ink);flex:none}
  .cc-mrow__d{font:500 11px var(--mono);color:var(--faint);text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .cc-mrow__m{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font:400 12.5px var(--font);color:var(--soft)}
  .cc-mrow__m > span:nth-child(2){color:var(--ink-2)}
  .cc-mrow__s{font:500 11px var(--mono);color:var(--soft)}
  .cc-mpager .g-pager{padding:4px 0}
  .cc-mpager .g-pager button{width:44px;height:44px}

  .cc-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  .cc-grid > *{grid-column:1 / -1}
  .cc-back{justify-self:start;height:42px;font-size:15px;padding:0 16px}
  .cc-main{padding:20px 16px;gap:16px;border-radius:24px}
  .cc-ttl{min-width:0;flex-basis:100%}
  .cc-nm__t,.cc-nm__i{font-size:28px}
  .cc-acts{width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
  .cc-catsel select{width:100%;max-width:none;height:48px;font-size:16px}
  .cc-save{height:52px;font-size:16px;width:100%}
  .cc-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 12px}
  .cc-kpi{min-width:0}
  .cc-kpi__v{font-size:22px}
  .cc-notes{font-size:16px}
  .cc-wh{border-radius:24px}
  .cc-wh__n{font-size:48px}
  .cc-th{border-radius:24px}
  .cc-th__h{padding:16px 16px 8px}
  .cc-th__row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"s d" "st w" "b b";gap:4px 10px;padding:12px 16px}
  .cc-th__s{grid-area:s;white-space:normal}
  .cc-th__d{grid-area:d}
  .cc-th .cc-st{grid-area:st}
  .cc-th__b{grid-area:b}
  .cc-th__w{grid-area:w;text-align:right}
  .cc-none--pad{padding:12px 16px 16px}
  .cc-mini{padding:18px 16px;border-radius:24px}
  .cc-ct{min-height:44px;justify-content:center}
  .cc-camp{min-height:44px}
}

/* меню «Ещё» категорий и пустое название */
.cc-more .g-ico{width:12px;height:12px;color:var(--faint)}
.cc-more[aria-expanded="true"]{border-color:var(--dash)}
.cc-pop{min-width:220px;max-height:min(360px,70vh);overflow-y:auto}
.cc-pop .g-pop__item{gap:8px}
.cc-pop__l{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cc-pop__n{font:500 11px var(--mono);color:var(--faint)}
.cc-nm__t.is-empty{color:var(--faint)}
.cc-mini--dashed .cc-none{line-height:normal}
