/* ==========================================================
   UMW SYSTEM STATUS
   UMW CORE / PROFILE VISUAL SYSTEM
   ========================================================== */

html,
body,
.sections,
.ball,
.umw-status-widget {
  background:#ffffff !important;
}

.umw-status-widget {
  width:100% !important;
  padding:42px 20px 60px !important;

  color:#141414 !important;
  font-family:Poppins,Arial,Helvetica,sans-serif !important;
}

.umw-status-container {
  width:100% !important;
  max-width:1180px !important;

  margin:0 auto !important;
}

/* ==========================================================
   PAGE HEADER
   ========================================================== */

.umw-status-header {
  position:relative !important;

  width:100% !important;

  margin:0 0 18px !important;
  padding:30px 26px 24px !important;

  border:1px solid rgba(20,20,20,.055) !important;
  border-radius:18px !important;

  background:#ffffff !important;

  box-shadow:
    0 5px 16px rgba(20,20,20,.05) !important;
}

.umw-status-header::before {
  content:"";

  position:absolute;
  top:12px;
  left:50%;

  width:44px;
  height:4px;

  transform:translateX(-50%);

  border-radius:999px;
  background:#eeeeee;
}

.umw-status-brand {
  display:flex !important;

  align-items:center !important;
  justify-content:space-between !important;

  gap:20px !important;
}

.umw-status-logo {
  width:128px !important;
  height:auto !important;

  margin:0 !important;
}

/* Additional heading inserted below logo */
.umw-status-intro {
  margin-top:20px;
}

.umw-status-intro h1 {
  margin:0;

  color:#141414;

  font-size:clamp(30px,4vw,44px);
  line-height:1.15;
  font-weight:700;

  letter-spacing:normal;
}

.umw-status-intro p {
  max-width:760px;

  margin:9px 0 0;

  color:#141414;

  font-size:12px;
  line-height:1.65;
  font-weight:400;
}

/* ==========================================================
   PUBLIC STATUS INFORMATION
   ========================================================== */

.umw-status-public-info {
  position:relative;

  width:100%;

  margin:0 0 18px;
  padding:28px 26px 24px;

  border:1px solid rgba(20,20,20,.055);
  border-radius:18px;

  background:#ffffff;

  box-shadow:
    0 5px 16px rgba(20,20,20,.05);
}

.umw-status-public-info::before {
  content:"";

  position:absolute;
  top:12px;
  left:50%;

  width:44px;
  height:4px;

  transform:translateX(-50%);

  border-radius:999px;
  background:#eeeeee;
}

.umw-status-public-head {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;

  align-items:start;
  gap:20px;

  padding:4px 0 16px;

  border-bottom:1px solid #eeeeee;
}

.umw-status-public-title {
  margin:0;

  color:#141414;

  font-size:14px;
  line-height:1.3;
  font-weight:700;
}

.umw-status-public-description {
  max-width:760px;

  margin:6px 0 0;

  color:#141414;

  font-size:12px;
  line-height:1.65;
  font-weight:400;
}

.umw-status-public-badge {
  min-height:26px;

  padding:0 10px;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  border-radius:999px;

  background:#0047ff;
  color:#ffffff;

  font-size:10px;
  line-height:1;
  font-weight:600;

  white-space:nowrap;
}

.umw-status-public-grid {
  display:grid;

  grid-template-columns:
    repeat(4,minmax(0,1fr));

  gap:12px;

  margin-top:18px;
}

.umw-status-public-card {
  min-width:0;

  padding:15px;

  border:1px solid #eeeeee;
  border-radius:14px;

  background:#ffffff;
}

.umw-status-public-icon {
  width:40px;
  height:40px;

  margin-bottom:12px;

  display:flex;
  align-items:center;
  justify-content:center;

  border:1px solid #eeeeee;
  border-radius:12px;

  background:#f7f7f7;

  color:#141414;
}

.umw-status-public-icon svg {
  width:19px;
  height:19px;
}

.umw-status-public-card h3 {
  margin:0;

  color:#141414;

  font-size:11px;
  line-height:1.4;
  font-weight:700;
}

.umw-status-public-card p {
  margin:6px 0 0;

  color:#141414;

  font-size:10px;
  line-height:1.55;
  font-weight:400;
}

.umw-status-public-note {
  margin:16px 0 0;
  padding:13px 14px;

  border:1px solid #eeeeee;
  border-radius:12px;

  background:#ffffff;

  color:#141414;

  font-size:10px;
  line-height:1.6;
}

/* ==========================================================
   LIVE HERO
   ========================================================== */

.umw-status-hero {
  position:relative !important;

  margin-bottom:18px !important;

  overflow:hidden !important;

  border:1px solid rgba(20,20,20,.055) !important;
  border-radius:18px !important;

  background:#ffffff !important;

  box-shadow:
    0 5px 16px rgba(20,20,20,.05) !important;
}

.umw-status-hero::before {
  content:"";

  position:absolute;
  top:10px;
  left:50%;

  z-index:2;

  width:42px;
  height:4px;

  transform:translateX(-50%);

  border-radius:999px;

  background:rgba(255,255,255,.7);
}

.umw-status-hero-bar {
  min-height:58px !important;

  padding:18px 18px 14px !important;

  font-size:14px !important;
}

/* Keep colors only for actual state */

.umw-status-operational {
  background:#02ce3f !important;
  color:#ffffff !important;
}

.umw-status-maintenance {
  background:#fff8eb !important;
  color:#141414 !important;
}

.umw-status-incident {
  background:#fff0f0 !important;
  color:#141414 !important;
}

.umw-status-unavailable,
.umw-status-loading {
  background:#f7f7f7 !important;
  color:#141414 !important;
}

.umw-status-hero-body {
  padding:18px !important;

  background:#ffffff !important;
}

.umw-status-hero-body h4 {
  font-size:13px !important;
}

.umw-status-hero-body p {
  font-size:11px !important;
  line-height:1.65 !important;
}

/* ==========================================================
   MAIN STATUS CARDS
   ========================================================== */

.umw-status-card {
  position:relative !important;

  width:100% !important;

  margin-bottom:18px !important;

  overflow:hidden !important;

  border:1px solid rgba(20,20,20,.055) !important;
  border-radius:18px !important;

  background:#ffffff !important;

  box-shadow:
    0 5px 16px rgba(20,20,20,.05) !important;
}

.umw-status-card::before {
  top:10px !important;

  width:42px !important;
  height:4px !important;

  background:#eeeeee !important;
}

.umw-status-card-head {
  min-height:62px !important;

  padding:20px 18px 15px !important;

  border-bottom:1px solid #eeeeee !important;
}

.umw-status-card-head h1,
.umw-status-card-head h3 {
  color:#141414 !important;

  font-size:14px !important;
  font-weight:700 !important;
}

.umw-status-card-head span {
  color:#737373 !important;

  font-size:10px !important;
}

/* ==========================================================
   COMPONENTS
   ========================================================== */

.umw-status-list {
  display:grid !important;

  grid-template-columns:
    repeat(2,minmax(0,1fr)) !important;

  gap:12px !important;

  padding:18px !important;

  background:#ffffff !important;
}

.umw-status-row {
  min-width:0 !important;

  padding:15px !important;

  display:grid !important;

  grid-template-columns:
    40px minmax(0,1fr) !important;

  align-items:start !important;

  gap:12px !important;

  border:1px solid #eeeeee !important;
  border-radius:14px !important;

  background:#ffffff !important;
}

.umw-status-row:last-child {
  border-bottom:1px solid #eeeeee !important;
}

.umw-status-dot {
  width:40px !important;
  height:40px !important;

  flex:0 0 40px !important;

  border-radius:12px !important;
}

.umw-status-dot svg {
  width:15px !important;
  height:15px !important;
}

.umw-status-name strong {
  font-size:12px !important;
  font-weight:700 !important;
}

.umw-status-name small {
  margin-top:4px !important;

  color:#737373 !important;

  font-size:9px !important;
}

/* Right side becomes full width under name */

.umw-status-right {
  width:100% !important;
  min-width:0 !important;

  grid-column:2 !important;

  margin-top:7px !important;

  display:grid !important;

  grid-template-columns:
    auto minmax(0,1fr) !important;

  align-items:center !important;

  gap:10px !important;
}

.umw-status-label {
  min-width:0 !important;

  text-align:left !important;

  font-size:9px !important;
}

.umw-bars {
  width:100% !important;
  max-width:none !important;
}

/* ==========================================================
   MAINTENANCE
   ========================================================== */

.umw-maintenance-list {
  padding:18px !important;

  display:grid !important;

  gap:10px !important;

  background:#ffffff !important;
}

.umw-maintenance-item {
  padding:15px !important;

  border:1px solid #eeeeee !important;
  border-radius:14px !important;

  background:#ffffff !important;
}

.umw-maintenance-item:last-child {
  border-bottom:1px solid #eeeeee !important;
}

.umw-maintenance-title {
  font-size:12px !important;
}

.umw-maintenance-item p {
  font-size:10px !important;
  line-height:1.6 !important;
}

/* EMPTY */

.umw-status-empty {
  border:1px dashed #dddddd !important;
  border-radius:12px !important;

  font-size:11px !important;
}

/* ==========================================================
   FOOTER
   ========================================================== */

.umw-status-footer {
  padding:2px 10px 0 !important;
}

.umw-status-footer a {
  font-size:10px !important;
}

/* ==========================================================
   TABLET
   ========================================================== */

@media(max-width:991px) {

  .umw-status-public-grid {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .umw-status-list {
    grid-template-columns:1fr !important;
  }
}

/* ==========================================================
   MOBILE
   ========================================================== */

@media(max-width:767px) {

  .umw-status-widget {
    padding:28px 10px 40px !important;
  }

  .umw-status-header {
    padding:28px 16px 18px !important;
    border-radius:16px !important;
  }

  .umw-status-intro h1 {
    font-size:28px;
  }

  .umw-status-public-info {
    padding:28px 16px 18px;

    border-radius:16px;
  }

  .umw-status-public-head {
    grid-template-columns:1fr;
  }

  .umw-status-public-badge {
    width:fit-content;
  }

  .umw-status-public-grid {
    grid-template-columns:1fr;
  }

  .umw-status-list {
    padding:14px !important;
  }

  .umw-status-row {
    grid-template-columns:
      40px minmax(0,1fr) !important;
  }

  .umw-status-right {
    grid-template-columns:1fr !important;
  }

  .umw-maintenance-list {
    padding:14px !important;
  }
}

/* What we monitor — left alignment only */
.umw-status-public-head > div {
  text-align: left !important;
}

.umw-status-public-title {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  text-align: left !important;
  justify-self: start !important;
}

/* What we monitor — left alignment only */
.umw-status-public-head > div {
  text-align: left !important;
}

.umw-status-public-title {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  text-align: left !important;
  justify-self: start !important;
}
