/* =========================================================================
   Мини-таблицы и мини-графики — пиксельный перенос слоя «мини-данных»:
   DashboardSimpleTable, DashboardStripedList, DashboardKeyValueList,
   DashboardValueWidget, DashboardInlineEntityWidget, DashboardCheckboxList,
   DashboardDropdownList, DashboardBlock, DashboardLabel, PassportTable,
   AoPercentProgressBar, PassportLimitProgressBar.
   ========================================================================= */

/* ---------- DashboardSimpleTable ---------- */
.dst{width:100%;overflow-x:hidden;overflow-y:auto}
.dst table{width:100%;border-collapse:collapse;font-size:12px;font-weight:500;line-height:150%}
.dst th{
  font-weight:500;color:#1d2126;padding:0 4px;text-align:right;white-space:nowrap;
}
.dst th:first-child{text-align:left}
.dst th .cell,.dst td .cell{display:inline-block;padding:12px 4px}
.dst th.title-header{box-shadow:none !important;font-weight:400;color:#576674;font-size:10px}
.dst td{padding:0 4px;color:#3f464e;text-align:right;border-bottom:1px solid transparent}
.dst td:first-child{color:#576674;text-align:left}
.dst tr.bg-lightGrey td{background:#f6f8f9}
.dst tr.row-border-grey td{border-bottom:1px solid #DEE6E8}
.dst .sm-text{font-size:10px}
.dst tr.main-metric-row td{background:#ddf0e3}
.dst th.mark-header{background:#f6f8f9}
/* 2px inset-подчёркивание шапки (headerBorderColor) */
.dst--green th{box-shadow:inset 0 -2px 0 #cce19f}
.dst--blue th{box-shadow:inset 0 -2px 0 #3f73ab}
.dst--lightBlue th{box-shadow:inset 0 -2px 0 #89b4dc}
.dst--orange th{box-shadow:inset 0 -2px 0 #f7bead}
.dst--amber th{box-shadow:inset 0 -2px 0 #eab631}
/* футер: строка на всю ширину, метки слева/значения справа (ao-p1 #3F464E) */
.dst__footer{display:flex;align-items:flex-start;justify-content:space-between;margin:4px 8px 0;
  font-size:14px;font-weight:500;line-height:135%;color:#3f464e}
.dst__footer .fcell{padding:4px 0}
.dst__footer .fcell:not(:first-child){text-align:right}

/* ---------- DashboardStripedList ---------- */
.dstriped{display:flex;flex-direction:column;width:100%}
.dstriped__item{width:100%;padding:4px;border-radius:4px}
.dstriped__item.bg-lightGrey{background:#f6f8f9}

/* ---------- DashboardInlineEntityWidget ---------- */
.dinline{display:flex;align-items:center;width:100%;min-height:44px}
.dinline__img{width:32px;min-width:32px;height:32px;border-radius:4px;overflow:hidden;
  display:flex;align-items:center;justify-content:center;background:var(--secondary);color:var(--primary)}
.dinline__img.circle{border-radius:50%}
.dinline__img img{width:100%;height:100%;object-fit:cover}
.dinline__img .ao-icon{font-size:16px}
.dinline__body{display:flex;justify-content:space-between;margin-left:8px;width:100%}
.dinline .t{font-size:12px;font-weight:500;line-height:1;color:var(--text-body)}
.dinline .s{font-size:10px;font-weight:400;color:#86919D;padding-top:4px}
.dinline .right{text-align:right}

/* ---------- DashboardValueWidget ---------- */
.dvalue{background:#f6f8f9;padding:4px 12px;border-radius:4px;width:100%;
  display:flex;align-items:center;justify-content:space-between}
.dvalue__title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;
  font-size:12px;font-weight:400;line-height:150%}
.dvalue__value{background:#D9E3EE;border-radius:4px;min-height:36px;min-width:64px;
  font-size:12px;color:#1D2126;display:flex;align-items:center;justify-content:center;padding:0 8px}

/* ---------- DashboardCheckboxList ---------- */
.dcheck{display:flex;flex-direction:column;padding:4px}
.dcheck__row{display:flex;align-items:flex-start;width:100%;margin-bottom:4px}
.dcheck__row .ci{font-size:12px;margin-right:4px;display:flex;align-items:flex-start}
.dcheck__row .ci.on{color:#83C72C}
.dcheck__row .ci.off{color:#576674}
.dcheck__row .lbl{padding-left:4px;font-size:10px;font-weight:500;color:#86919D;flex:1}

/* ---------- DashboardDropdownList ---------- */
.ddrop{max-width:300px;background:#fff;border-radius:var(--r);box-shadow:var(--shadow-popover);padding:0}
.ddrop__item{display:flex;align-items:center;min-height:22px;padding:4px 12px 4px 8px;border-radius:var(--r);
  font-size:12px;font-weight:400;color:#1D2126;width:100%;text-align:left}
.ddrop__item:hover{background:var(--primary-50)}
.ddrop__item .ao-icon{font-size:14px;margin-right:4px;color:var(--text-700)}

/* ---------- DashboardBlock ---------- */
.dblock{background:#fff;padding:12px 16px;box-shadow:0 4px 16px rgba(95,113,129,.2);border-radius:4px;
  height:100%;max-height:100%;overflow:hidden;position:relative;display:flex;flex-direction:column}
.dblock--flat{box-shadow:none}
.dblock__title{display:flex;align-items:center;font-size:10px;font-weight:600;line-height:140%;
  text-transform:uppercase;color:#576674}
.dblock__content{height:calc(100% - 24px);overflow:auto;padding-top:12px}

/* ---------- DashboardLabel (padding 2px 6px против 4px 8px у превью) ---------- */
.dlabel{display:inline-block;width:fit-content;padding:2px 6px;border-radius:4px;font-size:10px;font-weight:500}
.dlabel--green{background:#ddf0e3;color:#42a162}
.dlabel--blue{background:#ecf1f7;color:#4a86c7}
.dlabel--red{background:#f9d8d1;color:var(--error)}
.dlabel--orange{background:#faf4e6;color:var(--warning)}
.dlabel--gray{background:#dee6e8;color:#576674}

/* ---------- PassportTable ---------- */
.ptable{width:100%}
.ptable table{width:100%;border-collapse:collapse}
.ptable th{font-size:12px;font-weight:500;line-height:145%;text-align:left;padding:8px 12px;color:var(--text-body);
  border-bottom:1px solid rgba(0,0,0,.12)}
.ptable td{font-size:12px;font-weight:400;line-height:150%;padding:8px 12px}
.ptable .pstatus{width:fit-content;padding:0 4px;border-radius:4px;font-size:12px;white-space:nowrap}
.ptable .pstatus--new{background:#ddf0e3}
.ptable .pstatus--progress{background:#faf4e6}
.ptable .pstatus--ended{background:#faeceb}
.ptable .pstatus--closed{background:#f3f3f4}
.ptable__footer{width:100%;padding:12px;border-top:1px solid #e6eef3;font-size:14px}

/* ---------- AoPercentProgressBar (полоса 20px + легенда) ---------- */
.apb{display:flex;flex-direction:column;width:100%}
.apb__bar{display:flex;width:100%;border-radius:4px;height:20px}
.apb__seg{height:100%;padding-left:8px;display:flex;align-items:center;
  font-size:11px;font-weight:400;line-height:140%;color:#1D2126;overflow:hidden;white-space:nowrap}
.apb__seg:first-child{border-radius:4px 0 0 4px}
.apb__seg:last-child{border-radius:0 4px 4px 0}
.apb__seg:only-child{border-radius:4px}
.apb__legend{display:flex;margin-top:8px;gap:16px;flex-wrap:wrap}
.apb__legend .li{display:flex;align-items:center}
.apb__legend .box{width:10px;height:10px;margin-right:4px;border-radius:2px;flex:0 0 auto}
.apb__legend span{font-size:10px;font-weight:500;color:#576674}

/* ---------- PassportLimitProgressBar (8px, риска лимита) ---------- */
.plimit{position:relative;width:100%;height:8px;background:#e0e0e0;border-radius:2px}
.plimit__active{position:absolute;height:8px;border-radius:2px 0 0 2px}
.plimit__limit{position:absolute;width:1px;height:8px;background:#000}

/* ---------- Обёртка спутниковых мини-графиков (bg gray-30) ---------- */
.sat-chart-box{margin-bottom:12px;padding:16px;border-radius:4px;background:#DEE6E8}
.sat-chart-box .t{margin-bottom:8px;font-size:10px;font-weight:500;line-height:140%}

/* ---------- Спарклайн (v-sparkline #F7BEAD h90) ---------- */
.sparkline{width:100%;height:90px}
.sparkline polyline{fill:none;stroke:#F7BEAD;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
