:root {
  --wt-brand-900:#0f3570;
  --wt-brand-800:#174a92;
  --wt-brand-700:#0d6efd;
  --wt-bg:#eef4fb;
  --wt-card:#ffffff;
  --wt-line:#dbe6f6;
  --wt-text:#17324d;
  --wt-muted:#64748b;
  --wt-shadow:0 14px 34px rgba(15,35,75,.08);
}

.wt-page-shell {
  max-width: 1240px;
}

.wt-header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  margin:1.25rem auto 1.25rem;
  padding:.85rem 1rem;
  border:1px solid var(--wt-line);
  border-radius:22px;
  background:rgba(255,255,255,.92);
  box-shadow:var(--wt-shadow);
}

.wt-header-left {
  display:flex;
  align-items:center;
  gap:.85rem;
  min-width:0;
}

.wt-logo {
  width:44px;
  height:44px;
  flex:0 0 44px;
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#fff;
  font-weight:900;
  font-size:1.35rem;
  background:linear-gradient(135deg,var(--wt-brand-900),var(--wt-brand-700));
  box-shadow:0 10px 22px rgba(13,110,253,.20);
}

.wt-title {
  color:var(--wt-brand-900);
  font-size:1.08rem;
  line-height:1.15;
  font-weight:900;
  letter-spacing:.01em;
  white-space:nowrap;
}

.wt-subtitle {
  margin-top:.15rem;
  color:var(--wt-muted);
  font-size:.86rem;
  line-height:1.25;
  font-weight:700;
}

.wt-header-center {
  text-align:center;
  color:var(--wt-brand-900);
  font-weight:900;
  line-height:1.35;
}

.wt-header-center small {
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  color:var(--wt-muted);
  font-size:.8rem;
  font-weight:800;
}

.wt-role-badge {
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  margin-left:.45rem;
  padding:.18rem .58rem;
  border-radius:999px;
  background:#eaf2ff;
  color:var(--wt-brand-900);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.03em;
}

.wt-header-actions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:.55rem;
}

.wt-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:.55rem .95rem;
  border-radius:14px;
  font-weight:800;
  text-decoration:none;
  border:1px solid transparent;
  white-space:nowrap;
}

.wt-btn-primary {
  color:#fff !important;
  background:linear-gradient(135deg,var(--wt-brand-700),#1457d9);
  box-shadow:0 8px 18px rgba(13,110,253,.16);
}

.wt-btn-outline {
  color:var(--wt-brand-900) !important;
  background:#fff;
  border-color:rgba(15,53,112,.18);
}

.wt-btn-outline:hover,
.wt-btn-primary:hover {
  opacity:.94;
}

.wt-user-name {
  max-width:200px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--wt-muted);
  font-weight:700;
  font-size:.88rem;
}

@media (max-width: 991.98px) {
  .wt-header {
    align-items:flex-start;
    flex-direction:column;
  }
  .wt-header-center {
    text-align:left;
  }
  .wt-header-actions {
    width:100%;
    justify-content:flex-start;
  }
}

@media (max-width: 575.98px) {
  .wt-header {
    border-radius:18px;
    margin-top:.75rem;
  }
  .wt-title {
    font-size:1rem;
  }
  .wt-subtitle {
    font-size:.78rem;
  }
  .wt-btn {
    width:100%;
  }
}
