/* Public-page overrides live here after the shared base layer. */
.neon-hero h1 {
  max-width: 1000px;
  margin: 0 auto 14px;
  font-size: clamp(28px, 3.5vw, 50px);
  line-height: 1.12;
  text-wrap: balance;
}
.neon-hero p { font-size: clamp(15px, 1.3vw, 17px); }
.neon-hero .hero-commerce { margin-top: 12px; }
.mode-tile { line-height: 1.4; }
.image-modal__frame { max-width: 100%; min-width: 0; }
[hidden] { display: none !important; }
.params-card { height: auto; min-height: var(--card-h); }
.mode-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mode-tile { min-width: 0; }
.job-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.job-actions button { padding: 10px 14px; border-radius: 10px; color: var(--text); background: var(--panel); border: 1px solid var(--stroke); cursor: pointer; }
.job-actions button:focus-visible { outline: 2px solid var(--purple); outline-offset: 3px; }
.mode-tile input, .swatch input { display: block; position: absolute; width: 1px; height: 1px; opacity: 0; }
.mode-tile:focus-within, .swatch:focus-within { outline: 2px solid var(--purple); outline-offset: 2px; }

.error-actions {
  align-items: center;
}

.error-actions .error-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: auto;
  min-width: 0;
  min-height: 40px;
  border-radius: 10px;
  padding: 0 14px;
  font-size: 13px;
  font-weight: 650;
  line-height: 1;
  white-space: nowrap;
}

.error-actions .error-action i {
  width: 14px;
  font-size: 12px;
  text-align: center;
}

.error-actions .error-home-button {
  border: 1px solid transparent;
  background: #5f4dff;
  box-shadow: 0 8px 20px rgba(60, 45, 190, .2);
}

.error-actions .error-home-button:hover {
  background: #705eff;
}

.error-actions .error-back-button {
  border: 1px solid rgba(255, 255, 255, .12);
  background: rgba(255, 255, 255, .055);
  color: rgba(246, 244, 255, .86);
  box-shadow: none;
}

.error-actions .error-back-button::before {
  display: none;
}

.error-actions .error-back-button:hover {
  border-color: rgba(255, 255, 255, .22);
  background: rgba(255, 255, 255, .1);
  color: #fff;
}

@media (max-width: 760px) {
  .error-actions {
    flex-direction: row;
  }

  .error-actions > .error-action {
    flex: 0 0 auto;
    width: auto;
  }
}
