*, *::before, *::after { box-sizing: border-box; }

html {
  min-width: 280px;
  min-height: 100%;
  color-scheme: light;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body.nl-harmony-module {
  min-height: 100%;
  margin: 0;
  padding: 14px 10px 20px;
  overflow-x: clip;
  background:
    radial-gradient(circle at 8% 0, rgba(242,184,75,.10), transparent 28rem),
    radial-gradient(circle at 94% 5%, rgba(23,105,194,.09), transparent 30rem),
    var(--nl-color-background);
  color: var(--nl-color-ink);
  font-family: var(--nl-font);
  overflow-wrap: break-word;
}

button, input, select, textarea, a { font: inherit; }
button, [role="button"], a { touch-action: manipulation; }
button:not(:disabled), [role="button"]:not([aria-disabled="true"]), a[href] { cursor: pointer; }

.nl-harmony-module .notalix-skip-link {
  position: fixed;
  z-index: 1000;
  inset: 8px auto auto 8px;
  transform: translateY(-180%);
  padding: 8px 12px;
  border-radius: var(--nl-radius-control);
  background: var(--nl-color-navy);
  color: #fff;
}
.nl-harmony-module .notalix-skip-link:focus { transform: none; }

button:focus-visible, [role="button"]:focus-visible, a:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid var(--nl-focus) !important;
  outline-offset: 3px !important;
}

html[data-input-mode="gamepad"] .pad-focus,
html[data-notalix-input="gamepad"] [data-notalix-focus="true"] {
  position: relative;
  z-index: 2;
  outline: 4px solid var(--nl-focus) !important;
  outline-offset: 4px !important;
  box-shadow: 0 0 0 7px rgba(240,170,36,.18), var(--nl-shadow-card) !important;
}

img, svg, canvas { max-width: 100%; }
[hidden], .screen[hidden] { display: none !important; }

@media (pointer: coarse) {
  button, a, [role="button"] { min-height: 48px; }
  button:hover, a:hover, [role="button"]:hover { transform: none !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

@media (orientation: landscape) and (max-height: 620px) and (max-width: 1000px) {
  .nl-harmony-module .shortcut-help { display: none !important; }
}
