:root {
  --yohome-bg-a: #111418;
  --yohome-bg-b: #17211d;
  --yohome-bg-c: #171924;
  --yohome-line: rgba(230, 236, 232, 0.14);
  --yohome-card: rgba(22, 28, 31, 0.72);
  --yohome-card-hover: rgba(32, 41, 44, 0.88);
  --yohome-text: #eef3ef;
  --yohome-muted: rgba(238, 243, 239, 0.68);
  --yohome-accent: #6bd6c5;
  --yohome-warm: #f2b66d;
}

body {
  letter-spacing: 0;
  background:
    linear-gradient(135deg, var(--yohome-bg-a) 0%, var(--yohome-bg-b) 48%, var(--yohome-bg-c) 100%) fixed;
}

#page_wrapper {
  min-height: 100vh;
}

#inner_wrapper > .container {
  max-width: 1480px;
  padding-left: clamp(14px, 2vw, 30px);
  padding-right: clamp(14px, 2vw, 30px);
}

#information-widgets {
  border: 1px solid var(--yohome-line) !important;
  border-radius: 8px;
  padding: 14px 16px !important;
  margin-top: clamp(14px, 2vw, 28px) !important;
  background: rgba(15, 18, 21, 0.58);
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.22);
  backdrop-filter: blur(16px);
}

.services-group {
  margin-top: clamp(18px, 2vw, 28px) !important;
}

.service-group-name {
  color: var(--yohome-text) !important;
  font-weight: 700 !important;
}

.service-card {
  min-height: 118px;
  border: 1px solid var(--yohome-line) !important;
  border-radius: 8px !important;
  background: var(--yohome-card) !important;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.18);
  transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.service-card:hover {
  transform: translateY(-2px);
  border-color: rgba(107, 214, 197, 0.42) !important;
  background: var(--yohome-card-hover) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.26);
}

.service-name,
.service-title-text {
  color: var(--yohome-text) !important;
  letter-spacing: 0;
}

.service-description {
  color: var(--yohome-muted) !important;
  line-height: 1.35;
}

.yohome-access-links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.yohome-access-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 3px 8px;
  border: 1px solid rgba(238, 243, 239, 0.16);
  border-radius: 999px;
  color: var(--yohome-text);
  background: rgba(238, 243, 239, 0.06);
  font-size: 11px;
  font-weight: 650;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  transition: border-color 140ms ease, background 140ms ease, color 140ms ease;
}

.yohome-access-link:hover,
.yohome-access-link:focus-visible {
  border-color: rgba(107, 214, 197, 0.62);
  color: #ffffff;
  background: rgba(107, 214, 197, 0.16);
  outline: none;
}

.service-icon {
  filter: drop-shadow(0 3px 9px rgba(0, 0, 0, 0.28));
}

.resource-usage div {
  background: linear-gradient(90deg, var(--yohome-accent), var(--yohome-warm)) !important;
}

@media (max-width: 768px) {
  #information-widgets {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .service-card {
    min-height: 112px;
  }
}
