:root {
  --lightningcss-light: initial;
  --lightningcss-dark: ;
  color-scheme: light dark;
  --rulmi-accent: #248bda;
  --rulmi-accent-strong: #1676c7;
  --rulmi-page-background: #f4f8fb;
  --rulmi-viewport-height: 100dvh;
  --rulmi-viewport-offset-top: 0px;
  --font-display: Spline Sans, Inter, ui-sans-serif, system-ui, sans-serif, Apple Color Emoji, Segoe UI Emoji,
    Segoe UI Symbol, Noto Color Emoji;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
  --font-rounded: "SF Pro Rounded", "Hiragino Maru Gothic ProN", Meiryo, "MS PGothic", sans-serif;
  --font-serif: Georgia, "Times New Roman", serif;
}

@media (prefers-color-scheme: dark) {
  :root {
    --lightningcss-light: ;
    --lightningcss-dark: initial;
  }
}

html, body, #root {
  height: 100dvh;
  height: min(var(--rulmi-viewport-height, 100dvh), 100dvh);
  background: var(--rulmi-page-background);
  min-height: 0;
}

body {
  overscroll-behavior: none;
  color: #172b3d;
  text-rendering: optimizelegibility;
  -webkit-tap-highlight-color: transparent;
  -webkit-font-smoothing: antialiased;
  min-width: 320px;
  margin: 0;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, Segoe UI, sans-serif;
  overflow: hidden;
}

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

#root {
  overflow: hidden;
}

@media (pointer: coarse) and (width <= 1024px) {
  #root {
    top: var(--rulmi-viewport-offset-top, 0px);
    position: fixed;
    bottom: auto;
    left: 0;
    right: 0;
  }
}

button, input, textarea {
  font: inherit;
}

button:focus, input:focus, textarea:focus, a:focus, [role="button"]:focus, [role="tab"]:focus {
  outline: none;
}

button:focus-visible, input:focus-visible, textarea:focus-visible, a:focus-visible, [role="button"]:focus-visible, [role="tab"]:focus-visible {
  outline-offset: -2px;
  outline: 2px solid #4f86ffad;
}

::selection {
  color: #fff;
  background: #4f86ff7a;
}

::-webkit-scrollbar {
  width: 7px;
  height: 7px;
}

::-webkit-scrollbar-thumb {
  background: #6a869e61 padding-box padding-box;
  border: 2px solid #0000;
  border-radius: 999px;
}

::-webkit-scrollbar-track {
  background: none;
}
