.skill-analytics {
  min-width: 0;
}
.skill-analytics-filters {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(155px, 1fr));
  gap: 12px;
  align-items: end;
  margin: 18px 0;
}
.skill-analytics-filters .field {
  margin: 0;
  min-width: 0;
}
.skill-analytics-filters input,
.skill-analytics-filters select {
  min-width: 0;
  width: 100%;
}
.skill-department-picker {
  grid-column: span 2;
  border: 1px solid var(--border, #dedede);
  border-radius: 9px;
  padding: 9px 12px;
  min-width: 0;
}
.skill-department-picker summary {
  cursor: pointer;
  overflow-wrap: anywhere;
}
.skill-department-picker[open] {
  display: grid;
  gap: 8px;
}
.skill-department-picker .field:has([type="checkbox"]) {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  align-items: center;
  gap: 7px;
}
.skill-department-picker input[type="checkbox"] {
  width: auto;
}
.skill-analytics .analytics-cards {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.skill-analytics .analytics-card strong {
  overflow-wrap: anywhere;
}
.skill-analytics-detail .analytics-table {
  max-width: 100%;
}
.skill-analytics .analytics-table small {
  display: block;
  color: var(--muted, #68736c);
  margin-top: 4px;
}
.skill-analytics-empty {
  padding: 32px 18px;
  border: 1px dashed var(--border, #dedede);
  border-radius: 10px;
  text-align: center;
}
.skill-analytics-pager {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
  margin: 16px 0 24px;
}
.skill-analytics-pager .field {
  margin: 0;
  flex-direction: row;
  align-items: center;
  gap: 6px;
}
.skill-analytics-pager input {
  max-width: 70px;
}
.skill-analytics-bars {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  align-items: end;
  min-height: 145px;
  padding: 12px 0;
}
.skill-analytics-bars > div {
  display: flex;
  flex: 1 0 38px;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.skill-analytics-bars span {
  display: block;
  background: #4b7562;
  width: 100%;
  max-width: 40px;
  border-radius: 3px 3px 0 0;
}
.skill-version-diff pre {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 13px;
  line-height: 1.6;
  max-height: 55vh;
  overflow: auto;
  padding: 12px;
  background: #f6f7f6;
}
.skill-version-diff .diff-added {
  background: #dff1e6;
  color: #145d32;
}
.skill-version-diff .diff-removed {
  background: #fde6e5;
  color: #983c38;
}
.feedback-history {
  list-style: none;
  padding: 0;
}
.feedback-history li {
  border-left: 3px solid #dce6df;
  margin: 12px 0;
  padding: 8px 14px;
  background: #f7f9f7;
  border-radius: 4px;
}
.feedback-history p,
.feedback-comment {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.feedback-history small {
  color: var(--muted, #68736c);
}
.feedback-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: end;
  margin: 12px 0;
}
.feedback-inbox .feedback-toolbar {
  margin: 20px 0 12px;
}
.feedback-inbox .feedback-toolbar > .field {
  flex: 1 1 0;
  min-width: 0;
  max-width: 220px;
  margin: 0;
}
.feedback-inbox .feedback-toolbar select {
  width: 100%;
}
.feedback-inbox .feedback-toolbar > button {
  flex: 0 0 auto;
}
.feedback-inbox .feedback-toolbar :is(select, button) {
  height: 36px;
  min-height: 36px;
}
.feedback-inbox .skill-analytics-pager {
  margin-bottom: 0;
}
.feedback-inbox .skill-analytics-pager :is(button, input) {
  height: 32px;
  min-height: 32px;
}
.feedback-inbox .skill-analytics-pager input {
  width: 56px;
  padding: 0 8px;
}
.feedback-inbox .skill-analytics-pager > span,
.feedback-inbox .skill-analytics-pager .field > span {
  white-space: nowrap;
}
.feedback-status {
  display: inline-block;
  background: #eef3ef;
  border-radius: 6px;
  padding: 4px 9px;
}
.feedback-detail > .field {
  margin: 18px 0;
}
@media (max-width: 650px) {
  .skill-analytics-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .skill-analytics .analytics-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .skill-analytics-pager > span {
    flex-basis: 100%;
  }
  .feedback-toolbar > .field {
    flex: 1 1 100%;
  }
}
