.ic {
  --ic-size: 36px;
  --ic-color: var(--primary);
  --ic-tint: var(--primary-tint);
  width: var(--ic-size); height: var(--ic-size);
  border-radius: calc(var(--ic-size) * 0.28);
  background: var(--ic-tint); color: var(--ic-color);
  display: grid; place-items: center; flex: none;
}
.ic svg { width: 50%; height: 50%; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ic--on { background: var(--ic-color); color: #fff; box-shadow: 0 6px 14px -6px var(--ic-color); }

.tag {
  display: inline-block; font-size: 12.5px; font-weight: 600; white-space: nowrap;
  border-radius: var(--r-pill); padding: 4px 10px;
  background: var(--primary-tint); color: var(--primary);
}

.appwin {
  background: var(--surface); border: 1px solid var(--border);
  border-radius: var(--r-window); overflow: hidden; box-shadow: var(--shadow-window);
}
.apphead {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  padding: 12px 18px; border-bottom: 1px solid var(--border-divider); font-size: 13.5px;
}

.kpi { background: var(--surface); border: 1px solid var(--border-inner); border-radius: 16px; padding: 16px; }

.row {
  display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; gap: 12px; align-items: center;
  background: var(--surface-3); border: 1px solid var(--border-inner);
  border-radius: var(--r-ctl); padding: 10px 14px; font-size: 13.5px;
}

.chip {
  font-size: 12.5px; color: var(--text-2); background: var(--surface);
  border: 1px solid var(--border); border-radius: var(--r-pill); padding: 5px 11px;
}

.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  font: 600 15px/1 var(--font-body); min-height: 44px; padding: 0 22px;
  border-radius: var(--r-ctl); border: 1px solid transparent; text-decoration: none; cursor: pointer;
}
.btn-p { background: var(--primary); color: #fff; }
.btn-p:hover { background: var(--primary-hover); color: #fff; }
.btn-s { background: var(--surface); color: var(--text-1); border-color: #dcd9f0; }
.btn-s:hover { border-color: var(--primary); color: var(--text-1); }
.btn-sm { font-size: 14px; min-height: 44px; padding: 0 18px; }
