/* [project]/src/components/layout/Footer.module.css [app-client] (css) */
.Footer-module__3hUVsW__footer {
  border-top: 1px solid var(--color-border);
  background-color: var(--color-surface);
}

.Footer-module__3hUVsW__inner {
  justify-content: space-between;
  align-items: center;
  gap: var(--space-2) var(--space-6);
  max-width: var(--container-max);
  padding: var(--space-4);
  flex-wrap: wrap;
  margin-inline: auto;
  display: flex;
}

.Footer-module__3hUVsW__copyright {
  font-size: var(--text-sm);
  line-height: var(--text-sm-lh);
  color: var(--color-text-muted);
}

.Footer-module__3hUVsW__links {
  gap: 0 var(--space-4);
  flex-wrap: wrap;
  display: flex;
}

.Footer-module__3hUVsW__link {
  min-height: var(--tap-target);
  border-radius: var(--radius-control);
  font-size: var(--text-sm);
  line-height: var(--text-sm-lh);
  color: var(--color-text-muted);
  align-items: center;
  display: inline-flex;
}

.Footer-module__3hUVsW__link:focus-visible {
  outline-offset: 2px;
  box-shadow: var(--focus-ring);
  outline: 2px solid #0000;
}

@media (hover: hover) {
  .Footer-module__3hUVsW__link:hover {
    color: var(--color-text);
    text-underline-offset: .2em;
    text-decoration: underline;
  }
}

/* [project]/src/components/ui/NavMenu.module.css [app-client] (css) */
@layer reset;

@layer components {
  .NavMenu-module__YOrmZG__root {
    position: relative;
  }

  .NavMenu-module__YOrmZG__list {
    align-items: center;
    gap: var(--space-2);
    display: flex;
  }

  .NavMenu-module__YOrmZG__item {
    position: relative;
  }

  .NavMenu-module__YOrmZG__trigger, .NavMenu-module__YOrmZG__link {
    align-items: center;
    gap: var(--space-1);
    min-height: var(--tap-target);
    padding-inline: var(--space-3);
    border-radius: var(--radius-control);
    transition-property: color, background-color;
    transition-duration: var(--duration-fast);
    transition-timing-function: var(--ease-standard);
    font-weight: 500;
    display: inline-flex;
  }

  .NavMenu-module__YOrmZG__trigger {
    color: var(--color-accent-hearts-solid);
    cursor: pointer;
  }

  .NavMenu-module__YOrmZG__link {
    color: var(--color-text-muted);
  }

  .NavMenu-module__YOrmZG__trigger:focus-visible, .NavMenu-module__YOrmZG__link:focus-visible, .NavMenu-module__YOrmZG__panelLink:focus-visible {
    outline-offset: 2px;
    box-shadow: var(--focus-ring);
    outline: 2px solid #0000;
  }

  .NavMenu-module__YOrmZG__chevron {
    transition: transform var(--duration-normal) var(--ease-standard);
  }

  .NavMenu-module__YOrmZG__trigger[data-state="open"] .NavMenu-module__YOrmZG__chevron {
    transform: rotate(180deg);
  }

  .NavMenu-module__YOrmZG__content {
    z-index: var(--z-overlay);
    padding-top: var(--space-2);
    position: absolute;
    top: 100%;
    left: 0;
  }

  .NavMenu-module__YOrmZG__panel {
    width: 16rem;
    padding: var(--space-2) 0;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-card);
    background-color: var(--color-surface);
    box-shadow: var(--shadow-lg);
  }

  .NavMenu-module__YOrmZG__panelLink {
    min-height: var(--tap-target);
    padding: var(--space-2) var(--space-6);
    color: var(--color-accent-selection);
    align-items: center;
    font-weight: 500;
    display: flex;
  }

  @media (hover: hover) {
    .NavMenu-module__YOrmZG__link:hover {
      color: var(--color-accent-hearts-solid);
    }

    .NavMenu-module__YOrmZG__panelLink:hover {
      background-color: var(--color-surface-muted);
    }
  }

  @media (prefers-reduced-motion: no-preference) {
    .NavMenu-module__YOrmZG__content[data-state="open"] {
      animation: NavMenu-module__YOrmZG__nav-in var(--duration-fast) var(--ease-standard);
    }

    .NavMenu-module__YOrmZG__content[data-state="closed"] {
      animation: NavMenu-module__YOrmZG__nav-out var(--duration-fast) var(--ease-standard);
    }
  }
}

@keyframes NavMenu-module__YOrmZG__nav-in {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
}

@keyframes NavMenu-module__YOrmZG__nav-out {
  to {
    opacity: 0;
    transform: translateY(-4px);
  }
}

/* [project]/src/components/layout/HomeLink.module.css [app-client] (css) */
.HomeLink-module__L2vvLa__link {
  justify-content: center;
  align-items: center;
  gap: var(--space-1);
  min-width: var(--tap-target);
  min-height: var(--tap-target);
  border-radius: var(--radius-control);
  color: var(--color-text-muted);
  flex-shrink: 0;
  font-weight: 600;
  display: inline-flex;
}

.HomeLink-module__L2vvLa__link[aria-current="page"] {
  color: var(--color-accent-hearts-solid);
}

.HomeLink-module__L2vvLa__link:focus-visible {
  outline-offset: 2px;
  box-shadow: var(--focus-ring);
  outline: 2px solid #0000;
}

@media (hover: hover) {
  .HomeLink-module__L2vvLa__link:hover {
    background-color: var(--color-surface-muted);
    color: var(--color-accent-hearts-solid);
  }
}

.HomeLink-module__L2vvLa__text {
  display: none;
}

@media (min-width: 768px) {
  .HomeLink-module__L2vvLa__link {
    padding-inline: var(--space-3);
  }

  .HomeLink-module__L2vvLa__text {
    display: inline;
  }
}

/* [project]/src/components/ui/Collapsible.module.css [app-client] (css) */
@layer reset;

@layer components {
  .Collapsible-module__MC_neq__content {
    overflow: hidden;
  }

  @media (prefers-reduced-motion: no-preference) {
    .Collapsible-module__MC_neq__content[data-state="open"] {
      animation: Collapsible-module__MC_neq__expand var(--duration-normal) var(--ease-standard);
    }

    .Collapsible-module__MC_neq__content[data-state="closed"] {
      animation: Collapsible-module__MC_neq__collapse var(--duration-normal) var(--ease-standard);
    }
  }

  @keyframes Collapsible-module__MC_neq__expand {
    from {
      opacity: 0;
      height: 0;
    }

    to {
      height: var(--radix-collapsible-content-height);
      opacity: 1;
    }
  }

  @keyframes Collapsible-module__MC_neq__collapse {
    from {
      height: var(--radix-collapsible-content-height);
      opacity: 1;
    }

    to {
      opacity: 0;
      height: 0;
    }
  }
}

/* [project]/src/components/ui/Sheet.module.css [app-client] (css) */
@layer reset;

@layer components {
  .Sheet-module__7Yhcpq__overlay {
    inset: var(--header-height) 0 0 0;
    z-index: var(--z-overlay);
    background-color: var(--color-overlay);
    position: fixed;
  }

  .Sheet-module__7Yhcpq__content {
    top: var(--header-height);
    z-index: var(--z-overlay);
    background-color: var(--color-surface);
    box-shadow: var(--shadow-lg);
    flex-direction: column;
    display: flex;
    position: fixed;
    overflow-y: auto;
  }

  .Sheet-module__7Yhcpq__content:focus-visible {
    outline: none;
  }

  .Sheet-module__7Yhcpq__content[data-side="top"] {
    max-height: calc(100dvh - var(--header-height));
    border-bottom-left-radius: var(--radius-card);
    border-bottom-right-radius: var(--radius-card);
    left: 0;
    right: 0;
  }

  .Sheet-module__7Yhcpq__content[data-side="right"] {
    width: min(20rem, 100%);
    bottom: 0;
    right: 0;
  }

  .Sheet-module__7Yhcpq__header {
    justify-content: space-between;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-2) var(--space-2) 0 var(--space-4);
    display: flex;
  }

  .Sheet-module__7Yhcpq__title {
    color: var(--color-text-subtle);
    font-size: var(--text-xs);
    line-height: var(--text-xs-lh);
    letter-spacing: .05em;
    text-transform: uppercase;
    font-weight: 700;
  }

  .Sheet-module__7Yhcpq__close {
    margin-left: auto;
  }

  .Sheet-module__7Yhcpq__body {
    padding: 0 var(--space-4) var(--space-4);
  }

  @media (prefers-reduced-motion: no-preference) {
    .Sheet-module__7Yhcpq__overlay[data-state="open"] {
      animation: Sheet-module__7Yhcpq__fade-in var(--duration-normal) var(--ease-standard);
    }

    .Sheet-module__7Yhcpq__overlay[data-state="closed"] {
      animation: Sheet-module__7Yhcpq__fade-out var(--duration-normal) var(--ease-standard);
    }

    .Sheet-module__7Yhcpq__content[data-side="top"][data-state="open"] {
      animation: Sheet-module__7Yhcpq__slide-down var(--duration-normal) var(--ease-standard);
    }

    .Sheet-module__7Yhcpq__content[data-side="top"][data-state="closed"] {
      animation: Sheet-module__7Yhcpq__slide-up var(--duration-normal) var(--ease-standard);
    }

    .Sheet-module__7Yhcpq__content[data-side="right"][data-state="open"] {
      animation: Sheet-module__7Yhcpq__slide-in-right var(--duration-normal) var(--ease-standard);
    }

    .Sheet-module__7Yhcpq__content[data-side="right"][data-state="closed"] {
      animation: Sheet-module__7Yhcpq__slide-out-right var(--duration-normal) var(--ease-standard);
    }
  }
}

@keyframes Sheet-module__7Yhcpq__fade-in {
  from {
    opacity: 0;
  }
}

@keyframes Sheet-module__7Yhcpq__fade-out {
  to {
    opacity: 0;
  }
}

@keyframes Sheet-module__7Yhcpq__slide-down {
  from {
    opacity: 0;
    transform: translateY(-1rem);
  }
}

@keyframes Sheet-module__7Yhcpq__slide-up {
  to {
    opacity: 0;
    transform: translateY(-1rem);
  }
}

@keyframes Sheet-module__7Yhcpq__slide-in-right {
  from {
    transform: translateX(100%);
  }
}

@keyframes Sheet-module__7Yhcpq__slide-out-right {
  to {
    transform: translateX(100%);
  }
}

/* [project]/src/components/layout/MobileNav.module.css [app-client] (css) */
.MobileNav-module__cfarMG__nav {
  flex-direction: column;
  display: flex;
}

.MobileNav-module__cfarMG__group {
  padding-bottom: var(--space-2);
  margin-bottom: var(--space-2);
  border-bottom: 1px solid var(--color-border);
}

.MobileNav-module__cfarMG__gamesTrigger, .MobileNav-module__cfarMG__link, .MobileNav-module__cfarMG__gameLink {
  width: 100%;
  min-height: var(--tap-target);
  border-radius: var(--radius-control);
  align-items: center;
  display: flex;
}

.MobileNav-module__cfarMG__gamesTrigger {
  color: var(--color-accent-hearts-solid);
  text-align: left;
  cursor: pointer;
  justify-content: space-between;
  font-weight: 500;
}

.MobileNav-module__cfarMG__gamesTrigger:focus-visible, .MobileNav-module__cfarMG__link:focus-visible, .MobileNav-module__cfarMG__gameLink:focus-visible {
  outline-offset: 2px;
  box-shadow: var(--focus-ring);
  outline: 2px solid #0000;
}

.MobileNav-module__cfarMG__chevron {
  transition: transform var(--duration-normal) var(--ease-standard);
}

.MobileNav-module__cfarMG__gamesTrigger[data-state="open"] .MobileNav-module__cfarMG__chevron {
  transform: rotate(180deg);
}

.MobileNav-module__cfarMG__gamesList {
  padding-left: var(--space-4);
}

.MobileNav-module__cfarMG__gameLink {
  color: var(--color-accent-selection);
}

.MobileNav-module__cfarMG__link {
  color: var(--color-text-muted);
}

@media (hover: hover) {
  .MobileNav-module__cfarMG__link:hover {
    color: var(--color-accent-hearts-solid);
  }

  .MobileNav-module__cfarMG__gameLink:hover {
    text-decoration: underline;
  }
}

.MobileNav-module__cfarMG__testSection {
  margin-top: var(--space-4);
  padding-top: var(--space-4);
  border-top: 1px solid var(--color-border);
}

.MobileNav-module__cfarMG__testLabel {
  margin-bottom: var(--space-2);
  color: var(--color-text-subtle);
  font-size: var(--text-xs);
  line-height: var(--text-xs-lh);
  display: block;
}

/* [project]/src/components/layout/Header.module.css [app-client] (css) */
.Header-module__lnUIdW__header {
  z-index: var(--z-header);
  background-color: var(--color-surface);
  width: 100%;
  box-shadow: var(--shadow-sm);
  position: fixed;
  top: 0;
}

.Header-module__lnUIdW__container {
  width: 100%;
  padding-inline: var(--space-2);
  margin-inline: auto;
}

@media (min-width: 640px) {
  .Header-module__lnUIdW__container {
    max-width: 640px;
  }
}

@media (min-width: 768px) {
  .Header-module__lnUIdW__container {
    max-width: 768px;
    padding-inline: var(--space-4);
  }
}

@media (min-width: 1024px) {
  .Header-module__lnUIdW__container {
    max-width: 1024px;
  }
}

@media (min-width: 1280px) {
  .Header-module__lnUIdW__container {
    max-width: var(--container-max);
  }
}

@media (min-width: 1536px) {
  .Header-module__lnUIdW__container {
    max-width: 1536px;
  }
}

.Header-module__lnUIdW__bar {
  justify-content: space-between;
  align-items: center;
  gap: var(--space-2);
  height: var(--header-height);
  display: flex;
}

.Header-module__lnUIdW__sideGroup {
  align-items: center;
  gap: var(--space-2);
  display: flex;
}

@media (min-width: 768px) {
  .Header-module__lnUIdW__sideGroup {
    gap: var(--space-4);
  }
}

.Header-module__lnUIdW__logoLink {
  border-radius: var(--radius-control);
  align-items: center;
  display: flex;
}

.Header-module__lnUIdW__logoLink:focus-visible {
  outline-offset: 2px;
  box-shadow: var(--focus-ring);
  outline: 2px solid #0000;
}

.Header-module__lnUIdW__logoImageWrap {
  width: 120px;
  height: 28px;
  display: block;
  position: relative;
}

.Header-module__lnUIdW__logoImage {
  object-fit: contain;
}

@media (min-width: 768px) {
  .Header-module__lnUIdW__logoImageWrap {
    width: 180px;
    height: 40px;
  }

  .Header-module__lnUIdW__mobileNavToggle {
    display: none;
  }
}

.Header-module__lnUIdW__desktopNav {
  display: none;
}

@media (min-width: 768px) {
  .Header-module__lnUIdW__desktopNav {
    display: block;
  }
}

.Header-module__lnUIdW__account {
  flex-shrink: 0;
  min-width: fit-content;
}

.Header-module__lnUIdW__countrySelect {
  max-width: 180px;
  display: none;
}

@media (min-width: 768px) {
  .Header-module__lnUIdW__countrySelect {
    display: block;
  }
}

/* [project]/src/components/ui/Skeleton.module.css [app-client] (css) */
@layer reset;

@layer components {
  .Skeleton-module__QUUPIW__skeleton {
    background-color: var(--color-surface-muted);
    flex-shrink: 0;
    max-width: 100%;
    display: block;
  }

  .Skeleton-module__QUUPIW__skeleton[data-shape="text"] {
    border-radius: calc(var(--radius-sm)  + .25lh);
    background-clip: padding-box;
    border-block: .25lh solid #0000;
    height: 1lh;
  }

  .Skeleton-module__QUUPIW__skeleton[data-shape="circle"] {
    border-radius: var(--radius-full);
  }

  .Skeleton-module__QUUPIW__skeleton[data-radius="sm"] {
    border-radius: var(--radius-sm);
  }

  .Skeleton-module__QUUPIW__skeleton[data-radius="control"] {
    border-radius: var(--radius-control);
  }

  .Skeleton-module__QUUPIW__skeleton[data-radius="card"] {
    border-radius: var(--radius-card);
  }

  .Skeleton-module__QUUPIW__skeleton[data-radius="full"] {
    border-radius: var(--radius-full);
  }

  @media (prefers-reduced-motion: no-preference) {
    .Skeleton-module__QUUPIW__skeleton {
      background-image: linear-gradient(90deg, transparent, var(--color-surface), transparent);
      background-repeat: no-repeat;
      background-size: 200% 100%;
      animation: 1.4s ease-in-out infinite Skeleton-module__QUUPIW__shimmer;
    }
  }
}

@keyframes Skeleton-module__QUUPIW__shimmer {
  from {
    background-position: 150% 0;
  }

  to {
    background-position: -50% 0;
  }
}

/* [project]/src/features/auth/components/LoginButton.module.css [app-client] (css) */
.LoginButton-module__CwOqPq__button {
  color: #fff;
  cursor: pointer;
  background-color: #1877f2;
  border: none;
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  gap: .5rem;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 600;
  transition: background-color .15s;
  display: inline-flex;
}

.LoginButton-module__CwOqPq__button:hover {
  background-color: #166fe5;
}

.LoginButton-module__CwOqPq__button:active {
  background-color: #1464d8;
}

.LoginButton-module__CwOqPq__button:focus-visible {
  outline-offset: 2px;
  outline: 2px solid #1877f2;
}

.LoginButton-module__CwOqPq__button:disabled {
  cursor: wait;
  opacity: .8;
}

.LoginButton-module__CwOqPq__default {
  width: 100%;
  height: 2.75rem;
  padding: 0 1rem;
  font-size: 1rem;
}

.LoginButton-module__CwOqPq__compact {
  height: var(--tap-target);
  padding: 0 .75rem;
  font-size: .875rem;
}

.LoginButton-module__CwOqPq__logo {
  flex-shrink: 0;
}

.LoginButton-module__CwOqPq__default .LoginButton-module__CwOqPq__logo {
  width: 1.5rem;
  height: 1.5rem;
}

.LoginButton-module__CwOqPq__compact .LoginButton-module__CwOqPq__logo {
  width: 1.25rem;
  height: 1.25rem;
}

/* [project]/src/components/ui/DropdownMenu.module.css [app-client] (css) */
@layer reset;

@layer components {
  .DropdownMenu-module__HT_R3W__content {
    z-index: var(--z-overlay);
    min-width: 16rem;
    max-height: var(--radix-dropdown-menu-content-available-height);
    padding: var(--space-1);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-card);
    background-color: var(--color-surface);
    box-shadow: var(--shadow-lg);
    transform-origin: var(--radix-dropdown-menu-content-transform-origin);
    overflow-y: auto;
  }

  .DropdownMenu-module__HT_R3W__label {
    padding: var(--space-3);
    color: var(--color-text);
  }

  .DropdownMenu-module__HT_R3W__item {
    align-items: center;
    gap: var(--space-2);
    width: 100%;
    min-height: var(--tap-target);
    padding: var(--space-2) var(--space-3);
    border-radius: var(--radius-control);
    color: var(--color-text-muted);
    font-size: var(--text-sm);
    line-height: var(--text-sm-lh);
    text-align: left;
    cursor: pointer;
    -webkit-user-select: none;
    user-select: none;
    outline: none;
    display: flex;
  }

  .DropdownMenu-module__HT_R3W__item[data-highlighted] {
    background-color: var(--color-surface-muted);
    color: var(--color-text);
  }

  .DropdownMenu-module__HT_R3W__item:focus-visible {
    box-shadow: var(--focus-ring);
  }

  .DropdownMenu-module__HT_R3W__item[data-disabled] {
    opacity: .5;
    cursor: not-allowed;
  }

  .DropdownMenu-module__HT_R3W__separator {
    height: 1px;
    margin: var(--space-1) calc(-1 * var(--space-1));
    background-color: var(--color-border);
  }

  @media (prefers-reduced-motion: no-preference) {
    .DropdownMenu-module__HT_R3W__content[data-state="open"] {
      animation: DropdownMenu-module__HT_R3W__menu-in var(--duration-fast) var(--ease-standard);
    }

    .DropdownMenu-module__HT_R3W__content[data-state="closed"] {
      animation: DropdownMenu-module__HT_R3W__menu-out var(--duration-fast) var(--ease-standard);
    }
  }
}

@keyframes DropdownMenu-module__HT_R3W__menu-in {
  from {
    opacity: 0;
    transform: scale(.96);
  }
}

@keyframes DropdownMenu-module__HT_R3W__menu-out {
  to {
    opacity: 0;
    transform: scale(.96);
  }
}

/* [project]/src/components/ui/Avatar.module.css [app-client] (css) */
@layer reset;

@layer components {
  .Avatar-module__IVwToW__avatar {
    border-radius: var(--radius-full);
    background-color: var(--color-surface-muted);
    object-fit: cover;
    flex-shrink: 0;
  }
}

/* [project]/src/features/auth/components/UserMenu.module.css [app-client] (css) */
.UserMenu-module__jU6zVa__trigger {
  width: var(--tap-target);
  height: var(--tap-target);
  border-radius: var(--radius-full);
  transition: box-shadow var(--duration-fast) var(--ease-standard);
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

.UserMenu-module__jU6zVa__trigger:focus-visible {
  outline-offset: 2px;
  box-shadow: var(--focus-ring);
  outline: 2px solid #0000;
}

.UserMenu-module__jU6zVa__trigger[data-state="open"] {
  box-shadow: 0 0 0 2px var(--color-border-strong);
}

.UserMenu-module__jU6zVa__profile {
  align-items: center;
  gap: var(--space-3);
  margin-bottom: var(--space-2);
  display: flex;
}

.UserMenu-module__jU6zVa__identity {
  min-width: 0;
}

.UserMenu-module__jU6zVa__name {
  color: var(--color-text);
  font-size: var(--text-lg);
  line-height: var(--text-lg-lh);
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 600;
  overflow: hidden;
}

.UserMenu-module__jU6zVa__id {
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  line-height: var(--text-sm-lh);
}

.UserMenu-module__jU6zVa__stats {
  align-items: center;
  gap: var(--space-2);
  color: var(--color-text-muted);
  font-size: var(--text-sm);
  line-height: var(--text-sm-lh);
  display: flex;
}

.UserMenu-module__jU6zVa__stat {
  align-items: center;
  gap: var(--space-1);
  display: inline-flex;
}

.UserMenu-module__jU6zVa__statDivider {
  color: var(--color-border-strong);
}

.UserMenu-module__jU6zVa__statValue {
  color: var(--color-text);
  font-weight: 600;
}

.UserMenu-module__jU6zVa__heartIcon {
  display: inline-block;
}

/* [project]/src/features/auth/components/AccountMenu.module.css [app-client] (css) */
.AccountMenu-module__Bt5QLW__pending {
  width: var(--tap-target);
  height: var(--tap-target);
  justify-content: center;
  align-items: center;
  display: inline-flex;
}

/*# sourceMappingURL=src_ba992e7e._.css.map*/