/* assets/css/itsm-ux.css
   UX Patch (CSS-only) — safe: no JS, no hiding logic, no layout breaking.
*/

:root{
  --ux-radius-lg: 18px;
  --ux-radius-md: 14px;
  --ux-shadow-sm: 0 6px 18px rgba(0,0,0,.06);
  --ux-shadow-md: 0 10px 26px rgba(0,0,0,.08);
}

/* General rhythm */
.itsm-shell{ padding-inline: 14px; }
.itsm-main{ padding-bottom: 18px; }
.itsm-kpi-row{ gap: 12px; }
.row.g-3{ --bs-gutter-x: 1rem; --bs-gutter-y: 1rem; }

/* Cards */
.card,
.itsm-card{
  border-radius: var(--ux-radius-lg);
  border: 1px solid rgba(0,0,0,.07);
  box-shadow: var(--ux-shadow-sm);
}

.card .card-body{ padding: 1rem; }
@media (min-width: 992px){
  .card .card-body{ padding: 1.1rem 1.15rem; }
}

/* Section titles */
.itsm-section-title{ letter-spacing: .2px; }
.itsm-section-caption{ opacity: .85; }

/* Form controls */
.form-label.itsm-label{ font-weight: 600; }
.form-control,
.form-select{
  border-radius: var(--ux-radius-md);
  border-color: rgba(0,0,0,.14);
}
.form-control:focus,
.form-select:focus{
  box-shadow: 0 0 0 .2rem rgba(13,110,253,.10);
  border-color: rgba(13,110,253,.55);
}

/* Help text */
.form-text.itsm-help-text{ margin-top: .35rem; opacity: .9; }

/* Tabs: cleaner */
.itsm-tabs{
  border-radius: var(--ux-radius-lg);
  padding: .35rem;
  background: rgba(0,0,0,.03);
  border: 1px solid rgba(0,0,0,.06);
}
.itsm-tab{
  border-radius: 14px;
  padding: .55rem .8rem;
  transition: transform .12s ease, box-shadow .12s ease, background-color .12s ease;
}
.itsm-tab:not(.active):hover{
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(0,0,0,.06);
}

/* Primary button: clearer CTA */
.btn.itsm-primary-btn{
  border-radius: 999px;
  padding: .62rem 1.05rem;
  font-weight: 700;
  box-shadow: var(--ux-shadow-md);
}
.btn.itsm-primary-btn:active{ transform: translateY(1px); }

/* Tables: lighter density */
.table{
  border-color: rgba(0,0,0,.06);
}
.table thead th{
  font-weight: 700;
  border-bottom-color: rgba(0,0,0,.10);
  white-space: nowrap;
}
.table td, .table th{ padding: .70rem .70rem; vertical-align: middle; }
.table tbody tr:hover{ background: rgba(0,0,0,.02); }

/* Badges: consistent */
.badge{
  border-radius: 999px;
  font-weight: 700;
}

/* Alerts: softer */
.alert{
  border-radius: var(--ux-radius-md);
  border-color: rgba(0,0,0,.08);
}

/* Modal polish (if used) */
.modal-content{
  border-radius: var(--ux-radius-lg);
  border: 1px solid rgba(0,0,0,.10);
  box-shadow: 0 18px 40px rgba(0,0,0,.16);
}


/* ===== Ticket Survey (Stars) ===== */
.itsm-survey-card {
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 12px;
  padding: 12px;
  background: #fff;
}

.itsm-stars {
  display: inline-flex;
  gap: 6px;
  align-items: center;
}

.itsm-star-btn {
  border: 0;
  background: transparent;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  padding: 0 2px;
}

.itsm-star-btn:focus {
  outline: none;
}

.itsm-survey-msg {
  margin-top: 8px;
  font-size: 12px;
}
