.elementor-37105 .elementor-element.elementor-element-c6dbb22:not(.elementor-motion-effects-element-type-background), .elementor-37105 .elementor-element.elementor-element-c6dbb22 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(135deg, #0F172A 0%, #312E81 100%);}.elementor-37105 .elementor-element.elementor-element-c6dbb22{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-37105 .elementor-element.elementor-element-c6dbb22 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}/* Start custom CSS for html, class: .elementor-element-20496e8 *//* === MATTEMATCH – GRUNNSTIL & KNAPPER === */

/* ---------- GRUNNLEGGENDE STIL ---------- */
.mattematch-container {
  font-family: Arial, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
  color: #fff;
  background: linear-gradient(135deg, #0f172a, #312e81);
  text-align: center;
  margin: 0;
  padding: 0;
}

.mattematch-container #app {
  width: 100%;
  max-width: 900px;
  min-height: 90vh;
  margin: 2.5rem auto;
  padding: 2rem 1rem;
  background: rgba(30, 27, 75, 0.95);
  box-shadow: 0 0 25px rgba(124, 58, 237, 0.7);
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* ---------- GENERELLE KNAPPER ---------- */
.mm-btn {
  display: inline-block;
  background: linear-gradient(135deg, #7c3aed, #06b6d4);
  color: #fff;
  padding: 1rem 2rem;
  border-radius: 10px;
  font-size: 18px;
  font-weight: bold;
  cursor: pointer;
  margin: 0.5rem;
  border: none;
  text-align: center;
  box-shadow: 0 0 8px rgba(6, 182, 212, 0.6);
  transition: transform 0.15s, box-shadow 0.15s;
}

.mm-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 14px rgba(6, 182, 212, 0.9);
}

/* ---------- KNAPPER PÅ FORSIDE ---------- */
.optionGrid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.2rem;
  justify-items: center;
  width: 100%;
  margin-top: 1.5rem;
}

.optionGrid .mm-btn {
  width: 80%;
  max-width: 320px;
  min-width: 180px;
  padding: 1rem 2rem;
  border-radius: 12px;
  font-size: 18px;
  font-weight: bold;
}

/* ---------- REGNEART-KNAPPER ---------- */
.opGrid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.2rem;
  justify-items: center;
  max-width: 420px;
  margin: 2rem auto;
}

.opBtn {
  font-size: 40px;
  padding: 2rem 2.5rem;
  border-radius: 16px;
  background: linear-gradient(135deg, #7c3aed, #06b6d4);
  color: #fff;
  cursor: pointer;
  box-shadow: 0 0 10px rgba(6,182,212,0.7);
  transition: transform 0.15s, box-shadow 0.2s;
}

.opBtn:hover {
  transform: scale(1.08);
  box-shadow: 0 0 18px rgba(6,182,212,0.9);
}

.opBtn.active {
  background: linear-gradient(135deg, #22c55e, #16a34a);
  box-shadow: 0 0 16px rgba(34,197,94,0.9);
}

/* ---------- GANGE-/TABELLKNAPPER ---------- */
.tableButtons {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  justify-items: center;
  margin: 2rem auto;
  width: 100%;
  max-width: 700px;
}

.tableBtn {
  width: 130px;
  height: 80px;
  border-radius: 12px;
  background: linear-gradient(135deg, #7c3aed, #06b6d4);
  color: #fff;
  font-weight: bold;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 0 8px rgba(6,182,212,0.6);
  transition: transform 0.15s, box-shadow 0.2s;
}

.tableBtn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 14px rgba(6,182,212,0.9);
}

/* ---------- REGNESTYKKE (TASK) ---------- */
.task {
  font-size: clamp(28px, 6vw, 60px);
  font-weight: bold;
  color: #93c5fd;
  letter-spacing: 1px;
  text-align: center;
  text-shadow: 0 0 12px rgba(147,197,253,0.6);
  margin: 1.5rem 0;
  animation: flashEffect 0.25s ease-in-out;
}

@keyframes flashEffect {
  0% { filter: brightness(2.5); text-shadow: 0 0 25px #60a5fa, 0 0 45px #3b82f6; }
  50% { filter: brightness(1.5); text-shadow: 0 0 15px #3b82f6, 0 0 30px #2563eb; }
  100% { filter: brightness(1); text-shadow: 0 0 12px rgba(147,197,253,0.6); }
}

/* ---------- KONFETTI ---------- */
.confetti {
  position: fixed;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  pointer-events: none;
  z-index: 99999;
  animation: pop 700ms ease-out forwards;
}

@keyframes pop {
  from { transform: translate(0,0) scale(1); opacity: 1; }
  to   { transform: translate(var(--dx), var(--dy)) scale(0.5); opacity: 0; }
}

/* ---------- SERTIFIKATER ---------- */
.cert-text {
  font-size: 2rem;
  margin: 0.4rem 0;
  text-shadow: 0 0 6px rgba(255,215,0,0.4);
}

.cert-earned .cert-text {
  color: #fcd34d;
  font-weight: bold;
  text-shadow: 0 0 8px rgba(252,211,77,0.7);
}

.cert-missing .cert-text {
  color: #6b7280;
  opacity: 0.6;
}

/* === OVERRIDE ELEMENTOR / TEMA-STILER === */
.mattematch-container .mm-btn,
.mattematch-container .optionGrid .mm-btn {
  all: unset; /* nullstill alle arvede stiler fra tema */
  display: inline-block;
  background: linear-gradient(135deg, #7c3aed, #06b6d4);
  color: #fff;
  padding: 1rem 2rem;
  border-radius: 10px;
  font-size: 18px;
  font-weight: bold;
  cursor: pointer;
  margin: 0.5rem;
  text-align: center;
  box-shadow: 0 0 8px rgba(6,182,212,0.6);
  transition: transform 0.15s, box-shadow 0.15s;
  width: 80%;
  max-width: 320px;
}

.mattematch-container .mm-btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 14px rgba(6,182,212,0.9);
}


/* ---------- SMÅSKJERM-TILPASNING ---------- */
@media (max-width: 480px) {
  .mm-btn {
    font-size: 16px;
    padding: 0.9rem 1.6rem;
  }

  .optionGrid .mm-btn {
    width: 90%;
    max-width: 280px;
  }

  .task {
    font-size: clamp(24px, 7vw, 48px);
    margin: 1rem 0;
  }
}/* End custom CSS */