/*
  TalentscopeX - UI overrides (V5)
  - Removes legacy scaling side-effects
  - Improves responsiveness across common monitor sizes
  - Adds subtle modern polish (cards, buttons, tables)
*/

/* Safe global defaults */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
img, video, canvas, svg { max-width: 100%; height: auto; }

/* Prevent horizontal scroll caused by long tables / fixed widths */
body { overflow-x: hidden; }

:root {
  --tsx-radius-lg: 14px;
  --tsx-radius-md: 12px;
  --tsx-shadow-soft: 0 12px 32px rgba(2, 6, 23, 0.08);
  --tsx-shadow-hover: 0 18px 44px rgba(2, 6, 23, 0.12);
}

/* Dashboard polish */
.kpi-card,
.dash-card,
.quick-card,
.card {
  border-radius: var(--tsx-radius-lg);
}

.kpi-card:hover,
.dash-card:hover,
.quick-card:hover {
  box-shadow: var(--tsx-shadow-hover);
}

/* Assessments/List polish */
.table-clean {
  border-radius: var(--tsx-radius-lg);
}

.table-clean tbody tr {
  transition: transform 120ms ease, box-shadow 180ms ease;
}

.table-clean tbody tr:hover {
  transform: translateY(-1px);
}

/* Buttons */
.btn,
.button,
button {
  border-radius: var(--tsx-radius-md);
}

.btn:active,
.button:active,
button:active {
  transform: translateY(1px);
}

/* Inputs */
.search-input input,
input[type="text"],
input[type="email"],
input[type="password"],
select,
textarea {
  border-radius: var(--tsx-radius-md);
}

/* Make long tables usable on smaller screens */
.table-wrap,
.table-responsive,
.table-container {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Responsive spacing tweaks */
@media (max-width: 1200px) {
  .control-bar { gap: 10px; }
  .btn { padding: 8px 10px; }
}

@media (max-width: 768px) {
  .control-bar { flex-direction: column; align-items: stretch; }
  .control-bar .right { width: 100%; justify-content: flex-start; flex-wrap: wrap; }
  .search-input { width: 100%; }
  .search-input input { width: 100%; }
}

@media (max-width: 480px) {
  .table-clean th,
  .table-clean td { padding: 10px 10px; }
}
