:root{
  --ui-control-radius:var(--intazam-radius-sm);
  --ui-card-radius:var(--intazam-radius-md);
  --ui-overlay-radius:var(--intazam-radius-lg);
  --ui-border:var(--intazam-color-border);
  --ui-border-strong:var(--intazam-color-border-strong);
  --ui-surface:var(--intazam-color-surface);
  --ui-surface-soft:var(--intazam-color-surface-soft);
  --ui-surface-muted:var(--intazam-color-surface-muted);
  --ui-text:var(--intazam-color-text);
  --ui-text-soft:var(--intazam-color-text-soft);
  --ui-text-faint:var(--intazam-color-text-faint);
  --ui-action:var(--intazam-color-action);
  --ui-action-hover:var(--intazam-color-action-hover);
  --ui-focus:var(--intazam-color-focus);
  --ui-success:var(--intazam-success-700);
  --ui-success-soft:var(--intazam-success-100);
  --ui-warning:var(--intazam-warning-700);
  --ui-warning-soft:var(--intazam-warning-100);
  --ui-danger:var(--intazam-danger-700);
  --ui-danger-soft:var(--intazam-danger-100);
}

/* Focus & disabled */
.ui-button:focus-visible,
.ui-input:focus-visible,
.ui-select:focus-visible,
.ui-textarea:focus-visible,
.primary:focus-visible,
.secondary:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:2px solid var(--ui-focus);
  outline-offset:2px;
}
.ui-button:disabled,
.primary:disabled,
.secondary:disabled{
  cursor:not-allowed;
  opacity:.55;
}

/* Buttons */
.ui-button,
.primary,
.secondary{
  appearance:none;
  border-radius:var(--ui-control-radius);
  padding:9px 12px;
  font-family:var(--intazam-font-ui);
  font-weight:var(--intazam-font-weight-semibold);
  cursor:pointer;
  transition:background .15s,border-color .15s,color .15s,box-shadow .15s;
}
.ui-button--primary,
.primary{
  border:1px solid var(--ui-action);
  background:var(--ui-action);
  color:#fff;
}
.ui-button--primary:hover,
.primary:hover{
  background:var(--ui-action-hover);
  border-color:var(--ui-action-hover);
}
.ui-button--secondary,
.secondary{
  border:1px solid var(--ui-border-strong);
  background:var(--ui-surface);
  color:var(--intazam-neutral-800);
}
.ui-button--secondary:hover,
.secondary:hover{
  background:var(--ui-surface-soft);
  border-color:#c9d1dd;
}
.ui-button--danger{
  border:1px solid var(--ui-danger);
  background:var(--ui-danger);
  color:#fff;
}
.ui-button--ghost{
  border:1px solid transparent;
  background:transparent;
  color:var(--intazam-neutral-700);
}
.ui-button--ghost:hover{background:var(--ui-surface-muted)}
.ui-button--compact,
.compact{padding:8px 11px;font-size:11px}
.ui-button--small,
.small{padding:6px 9px;font-size:10px}

/* Badges & chips */
.ui-badge,
.badge,
.pill{
  display:inline-flex;
  align-items:center;
  gap:5px;
  width:max-content;
  padding:4px 8px;
  border-radius:var(--intazam-radius-pill);
  background:var(--intazam-brand-navy-100);
  color:var(--intazam-neutral-700);
  font-size:10px;
  font-weight:760;
  letter-spacing:.035em;
  white-space:nowrap;
}
.ui-badge--pilot,
.badge.pilot{
  background:var(--intazam-color-accent-soft);
  color:var(--intazam-color-accent-strong);
}
.ui-badge--active,
.ui-badge--available,
.ui-badge--success,
.badge.active,
.badge.available,
.badge.success{
  background:var(--ui-success-soft);
  color:var(--ui-success);
}
.ui-badge--warning,
.badge.warning{
  background:var(--ui-warning-soft);
  color:var(--ui-warning);
}
.ui-badge--danger,
.ui-badge--suspended,
.badge.danger,
.badge.suspended{
  background:var(--ui-danger-soft);
  color:var(--ui-danger);
}
.ui-badge--planned,
.badge.planned{
  background:var(--intazam-neutral-100);
  color:#717b89;
}

/* Cards */
.ui-card,
.section-card,
.stat{
  background:var(--ui-surface);
  border:1px solid var(--ui-border);
  border-radius:var(--ui-card-radius);
  box-shadow:var(--intazam-shadow-sm);
}
.ui-card{padding:var(--intazam-space-5)}
.ui-card--compact{padding:var(--intazam-space-4)}
.ui-card__title{margin:0 0 var(--intazam-space-1);font-size:17px}
.ui-card__description{margin:0;color:var(--ui-text-soft);font-size:12px}

/* Form controls */
.ui-field{display:grid;gap:6px}
.ui-field__label{font-size:11px;font-weight:680;color:var(--ui-text)}
.ui-field__hint{font-size:9px;color:var(--ui-text-faint)}
.ui-input,
.ui-select,
.ui-textarea,
.form-grid input,
.policy-field input,
.login-form-wrap input{
  width:100%;
  border:1px solid var(--ui-border-strong);
  border-radius:var(--ui-control-radius);
  padding:10px 11px;
  background:var(--ui-surface);
  color:var(--ui-text);
  font:inherit;
}
.ui-textarea{min-height:96px;resize:vertical}
.ui-input[aria-invalid="true"],
.ui-select[aria-invalid="true"],
.ui-textarea[aria-invalid="true"]{
  border-color:var(--ui-danger);
}

/* Alerts */
.ui-alert,
.security-strip,
.modal-note,
.form-error,
.error-card{
  border-radius:var(--ui-control-radius);
}
.ui-alert{
  display:flex;
  gap:10px;
  align-items:flex-start;
  padding:10px 12px;
  border:1px solid var(--ui-border);
  background:var(--ui-surface-soft);
  color:var(--ui-text-soft);
  font-size:11px;
}
.ui-alert--info{border-color:#dce7f3;background:#f5f9fd;color:#37536f}
.ui-alert--warning,
.modal-note{border-color:#f0dfd4;background:#fff7f1;color:#6b4633}
.ui-alert--success{border-color:#d8eadf;background:#f2faf5;color:var(--ui-success)}
.ui-alert--danger,
.form-error,
.error-card{border-color:#f0d7d0;background:var(--ui-danger-soft);color:var(--ui-danger)}

/* Progress */
.ui-progress,
.progress-bar{
  height:6px;
  background:#edf1f5;
  border-radius:var(--intazam-radius-pill);
  overflow:hidden;
}
.ui-progress__bar,
.progress-fill{
  height:100%;
  background:var(--intazam-color-accent);
  border-radius:inherit;
}
.ui-progress__meta,
.progress-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  color:var(--ui-text-soft);
  font-size:10px;
  margin-bottom:6px;
}

/* Empty state */
.ui-empty,
.empty-state{
  padding:24px;
  border:1px dashed var(--ui-border-strong);
  border-radius:10px;
  background:var(--ui-surface-soft);
  text-align:center;
  color:var(--ui-text-soft);
}
.ui-empty__title,
.empty-state strong{
  display:block;
  color:var(--ui-text);
  font-size:13px;
  margin-bottom:4px;
}
.ui-empty__description,
.empty-state span{font-size:11px}

/* Loading and feedback */
.ui-loading,
.loading{
  background:var(--ui-surface);
  border:1px solid var(--ui-border);
  border-radius:10px;
  padding:20px;
  color:var(--ui-text-soft);
  font-size:11px;
}
.ui-toast,
.toast{
  position:fixed;
  right:22px;
  bottom:22px;
  background:#173f2c;
  color:#fff;
  padding:11px 14px;
  border-radius:9px;
  box-shadow:var(--intazam-shadow-md);
  z-index:70;
  font-size:11px;
}
.ui-toast--danger,
.toast.error{background:var(--ui-danger)}

/* Small identity/profile primitives */
.ui-avatar,
.admin-avatar{
  width:34px;
  height:34px;
  border-radius:10px;
  background:#f3e8e1;
  color:var(--intazam-color-accent-strong);
  display:grid;
  place-items:center;
  font-size:11px;
  font-weight:820;
  letter-spacing:.04em;
  flex:none;
}

/* Core v1 compatibility details */
.security-strip{padding:10px 12px}
.modal-note{padding:11px 12px;font-size:11px}
.form-error{padding:9px 10px;font-size:10px}
.error-card{padding:20px;font-size:11px}
