/* PAGE LAYOUT */

.apps-main {
  padding: 100px 20px 40px;
  max-width: 1100px;
  margin: 0 auto;
  z-index: 2;
  position: relative;
}

.shape{
    opacity: 0.5;
}

.accent-shape{
  position: fixed;
  top: -10px;
  left: -10px;

  z-index: 0;

  pointer-events: none;
}

.accent-shape img{
    width: 180px;
    opacity: 0.5;
}

/* HEADER */

.apps-header h1 {
  font-size: 44px;
}

.apps-header p {
  margin-top: 14px;
  opacity: 0.7;
}

/* GRID */

.apps-grid {
  margin-top: 40px;

  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 20px;
}

/* CARD */

.app-card {
  display: block;

  padding: 24px;
  border-radius: 20px;

  background: var(--nav-bg);
  color: var(--text);
  text-decoration: none;

  transition: 0.2s;
  border: 1px solid rgba(255,255,255,0.05);
}

.app-card:hover {
  transform: translateY(-6px);
  background: var(--accent-color);
  color: black;
}

/* ICON */

.app-icon {
  font-size: 28px;
  margin-bottom: 12px;
}

/* TEXT */

.app-card h3 {
  margin-bottom: 6px;
}

.app-card p {
  font-size: 14px;
  opacity: 0.8;
}

/* DISABLED */

.app-card.disabled {
  opacity: 0.5;
  pointer-events: none;
}

/* MOBILE */

@media (max-width: 768px) {
  .apps-main {
    padding: 100px 16px 40px;
  }

  .apps-header h1 {
    font-size: 32px;
  }

  .accent-shape{
    display: none;
  }
}