/*
 * Public marketing pages ONLY.
 * Complements public-tailwind.css — does not replace button/nav visuals.
 */

html.public-site,
html.public-site body {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
  overscroll-behavior-x: none;
}

html.public-site *,
html.public-site *::before,
html.public-site *::after {
  box-sizing: border-box;
}

.public-site-root {
  width: 100%;
  max-width: 100%;
}

/* Fixed main header — keeps Login / Get Started visible */
.public-site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 50;
}

.public-site-header-spacer {
  height: calc(4.25rem + env(safe-area-inset-top, 0px));
  flex-shrink: 0;
}

/* Perfect circle logo (never stretch into a pill) */
.public-brand-logo {
  width: 2.25rem !important;
  height: 2.25rem !important;
  min-width: 2.25rem !important;
  min-height: 2.25rem !important;
  max-width: 2.25rem !important;
  max-height: 2.25rem !important;
  aspect-ratio: 1 / 1;
  border-radius: 50% !important;
  flex-shrink: 0;
  overflow: hidden;
}

.public-brand-logo iconify-icon {
  display: block;
  line-height: 0;
}

/* Brand title: one line, never stacks Cloud Mining / 2.0 */
.public-site-header .public-brand-name {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
  line-height: 1.2;
}

.public-site-root .pb-safe,
.pb-safe {
  padding-bottom: env(safe-area-inset-bottom, 0px);
}

.public-site-root .scrollbar-hide,
.scrollbar-hide {
  scrollbar-width: none;
  -ms-overflow-style: none;
  max-width: 100%;
}
.public-site-root .scrollbar-hide::-webkit-scrollbar,
.scrollbar-hide::-webkit-scrollbar {
  display: none;
}

.public-site-root,
.public-site-root * {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.public-site-root *::-webkit-scrollbar {
  display: none;
}

.public-site-root details > summary {
  list-style: none;
}
.public-site-root details > summary::-webkit-details-marker {
  display: none;
}

/* Bottom nav: keep labels on one line, equal slots */
.public-bottom-nav-inner > a {
  min-width: 0;
}

.public-bottom-nav-inner > a > span {
  display: block;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
  line-height: 1.1;
}

/* Images */
.public-site-root img {
  display: block;
  max-width: 100%;
}
.public-site-root img.h-48 {
  height: 12rem !important;
  width: 100%;
  object-fit: cover;
}
.public-site-root img.h-44 {
  height: 11rem !important;
  width: 100%;
  object-fit: cover;
}
.public-site-root img.size-20 {
  width: 5rem !important;
  height: 5rem !important;
  object-fit: cover;
  flex-shrink: 0;
}
@media (min-width: 40rem) {
  .public-site-root img.sm\:w-28 {
    width: 7rem !important;
    height: 7rem !important;
    object-fit: cover;
  }
}
