/* Shared public pages. Trading terminals and authenticated dashboards keep their own styles. */
.public-site {
  --body-font: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --heading-font: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --public-ink: #172238;
  --public-muted: #58657a;
  --public-line: #e1e6ef;
  --public-surface: #fff;
  --public-canvas: #f7f9fc;
  color: var(--public-muted);
  font-family: var(--body-font);
}
.public-site :is(h1, h2, h3, h4, h5, h6, button, input, select, textarea, .btn, .cc-table, .market-table) { font-family: var(--body-font); }
.public-site :is(h1, h2, h3) { letter-spacing: -.035em; }
.public-site .hp-hero__title { font-weight: 650; line-height: 1.08; letter-spacing: -.055em; }
[data-theme="light"] .public-site {
  --public-ink: #f2f5fa;
  --public-muted: #aab7ca;
  --public-line: #2a3546;
  --public-surface: #141d2b;
  --public-canvas: #0e1622;
}
.public-site { background: var(--public-canvas) !important; }
.public-site .public-content { min-width: 0; min-height: 50vh; }
.public-site .public-content:focus { outline: none; }
.public-site :is(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid hsl(var(--base));
  outline-offset: 4px;
}
.public-skip-link {
  position: fixed;
  z-index: 10000;
  top: 12px;
  left: 12px;
  padding: 12px 20px;
  border-radius: 10px;
  background: var(--public-surface, #fff);
  color: var(--public-ink, #172238);
  box-shadow: 0 4px 20px #0002;
  transform: translateY(-180%);
}
.public-skip-link:focus { transform: translateY(0); }
.public-site .header,
[data-theme="light"] .public-site .header {
  background: var(--public-surface) !important;
  border-bottom: 1px solid var(--public-line) !important;
  z-index: 100;
}
.public-site .header .navbar,
[data-theme="light"] .public-site .header .navbar {
  background: transparent !important;
  border: 0 !important;
  gap: 10px;
  padding-block: 12px !important;
}
.public-site .header.fixed-header {
  box-shadow: 0 6px 24px #0000000a;
}
.public-site .header .logo img,
.public-site .footer-item__logo img {
  width: auto;
  max-width: 180px;
  height: 40px;
  object-fit: contain;
}
.public-site .public-logo-dark { display: none; }
[data-theme="light"] .public-site .public-logo-light { display: none; }
[data-theme="light"] .public-site .public-logo-dark { display: block; }
.public-site .header .nav-menu { gap: 2px; }
.public-site .header .nav-menu .nav-item .nav-link,
.public-site .header .public-menu-toggle {
  color: var(--public-ink) !important;
  font-size: 14px;
  font-weight: 500;
  padding: 12px 9px;
  line-height: 1.5;
}
.public-site .header .public-menu-toggle {
  border: 0;
  background: transparent;
  display: inline-flex;
  gap: 6px;
  align-items: center;
  cursor: pointer;
}
.public-site .header .public-menu-toggle i { transition: transform .2s; }
.public-site .header .public-menu-toggle[aria-expanded="true"] i { transform: rotate(180deg); }
.public-site .header :is(.nav-link:hover, .nav-link.active, .public-menu-toggle:hover, .public-menu-toggle[aria-expanded="true"]) {
  color: hsl(var(--base)) !important;
}
.public-site .header .sign-in { color: var(--public-ink); font-size: 14px; }
.public-site .header .theme-switch .slider {
  background: var(--public-canvas);
  border: 1px solid var(--public-line);
  color: var(--public-ink);
}
.public-site .header .theme-switch .slider i { color: var(--public-ink) !important; }
.public-site .header .theme-switch:focus-within { outline: 3px solid hsl(var(--base)); outline-offset: 3px; border-radius: 50%; }
.public-site .header .navbar-toggler.header-button { color: var(--public-ink); }
.public-site .header .has-mega-menu .mega-menu.mega-menu--products {
  padding-top: 16px !important;
  margin-top: 0 !important;
  width: min(560px, 90vw) !important;
}
.public-site .header .has-mega-menu .mega-menu[hidden] { display: none !important; }
.public-site .header .has-mega-menu .mega-menu.open {
  opacity: 1;
  visibility: visible;
  top: 100%;
}
.public-site .header .has-mega-menu .mega-menu .mega-menu__inner {
  background: var(--public-surface) !important;
  border: 1px solid var(--public-line) !important;
  box-shadow: 0 18px 48px #0002;
}
.public-site .header .mm-card__title { color: var(--public-ink); }
.public-site .header .mm-card__desc { color: var(--public-muted); }
.public-site .header .mm-card:hover { background: var(--public-canvas); }
[data-theme="light"] .public-site .header :is(.nav-link.active, .public-menu-toggle[aria-expanded="true"]),
[data-theme="light"] .public-site .contact-page__eyebrow,
[data-theme="light"] .public-site .contact-channel__icon,
[data-theme="light"] .public-site .contact-panel__icon,
[data-theme="light"] .public-site .contact-page__note a,
[data-theme="light"] .public-site .platform-about__eyebrow,
[data-theme="light"] .public-site .platform-about__icon,
[data-theme="light"] .public-site .auth-experience .account-content__member .account-link,
[data-theme="light"] .public-site .auth-experience .forget-password {
  color: hsl(var(--base-l-300)) !important;
}
.public-site .header .header-right { margin: 0; padding: 0; }
.public-site .header .top-button { gap: 12px; }
.public-site .header .login-registration-list { padding: 0; margin: 0; gap: 8px; }
.public-site .header .login-registration-list__item { padding: 0; }
.public-site .header .login-registration-list__item::before { display: none; }
.public-language { position: relative; color: var(--public-ink); font-size: 13px; }
.public-language summary { display: flex; gap: 7px; align-items: center; cursor: pointer; padding: 10px 4px; list-style: none; }
.public-language summary::-webkit-details-marker { display: none; }
.public-language__list {
  position: absolute;
  inset-inline-end: 0;
  top: calc(100% + 8px);
  z-index: 110;
  min-width: 180px;
  max-height: 300px;
  overflow-y: auto;
  padding: 6px;
  margin: 0;
  border: 1px solid var(--public-line);
  border-radius: 12px;
  background: var(--public-surface);
  box-shadow: 0 12px 32px #0002;
  list-style: none;
}
.public-language__list a { display: flex; justify-content: space-between; padding: 9px 12px; border-radius: 7px; color: var(--public-ink); }
.public-language__list a:hover,
.public-language__list a[aria-current] { background: var(--public-canvas); color: hsl(var(--base)); }
.public-site .section-heading__desc { color: var(--public-muted); line-height: 1.75; }
/* Market data uses existing currency logos and plain, undecorated labels. */
.public-site .crypto-section.market-watch { background: var(--public-canvas); }
.public-site .market-watch::before,
.public-site .market-watch::after { display: none; }
.public-site .market-watch__heading { display: block; margin-bottom: 32px; text-align: left; }
.public-site .market-watch__label { margin: 0 0 14px; padding: 0; color: var(--public-muted); font-size: 11px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.public-site .market-watch .section-heading__title { color: var(--public-ink); font-weight: 600; }
.public-site .market-watch .crypto-subtitle { max-width: 620px; margin: 0; margin-inline: 0 !important; text-align: left; color: var(--public-muted); opacity: 1; }
.public-site .market-watch .crypto-ticker { gap: 0 28px; border-top: 1px solid var(--public-line); }
.public-site .market-watch .crypto-coin,
.public-site .market-watch .crypto-coin:hover { padding: 22px 0; border: 0; border-bottom: 1px solid var(--public-line); border-radius: 0; background: transparent; box-shadow: none; transform: none; }
.public-site .market-watch .crypto-coin__icon { width: 32px; height: 32px; min-width: 32px; background: transparent; }
.public-site .market-watch .crypto-coin__icon img { object-fit: contain; }
.public-site .market-watch .crypto-coin__symbol { color: var(--public-ink); font-size: 13px; font-weight: 650; }
.public-site .market-watch .crypto-coin__name { color: var(--public-muted); font-size: 11px; opacity: 1; }
.public-site .market-watch .crypto-coin__price { color: var(--public-ink); font-size: 13px; }
.public-site .market-watch .crypto-coin__change { padding: 0; border: 0; border-radius: 0; background: transparent !important; font-size: 11px; }
.public-site .market-watch .crypto-empty { color: var(--public-muted); opacity: 1; }
.public-site .mkt-hero { background: transparent; }
.public-site .mkt-hero .mkt-badge { padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--public-muted); box-shadow: none; }
.public-site .cc-highlight-card { box-shadow: none; }
@media (max-width: 575px) {
  .public-site .market-watch .crypto-coin,
  .public-site .market-watch .crypto-coin:hover { padding-block: 18px; }
}
.public-site .form--control { color: var(--public-ink); }
.public-site .form--control::placeholder { color: var(--public-muted); opacity: .8; }
.public-site .form--label { color: var(--public-ink); }
.public-site .footer-area {
  background: #101925;
  border-top: 1px solid #263143;
}
.public-site .footer-area .footer-main { padding: 36px 0 24px; }
.public-site .footer-area .footer-item__logo { margin-bottom: 12px; }
.public-site .footer-area .footer-item__logo img { margin-bottom: 0; }
.public-site .footer-area .footer-item__desc { max-width: 460px; margin-bottom: 0; color: #aab7ca; line-height: 1.65; }
.public-site .footer-area .footer-item__title { color: #f2f5fa; font-size: 13px; padding-bottom: 0; margin-bottom: 12px; }
.public-site .footer-area .footer-menu { gap: 8px; margin: 0; }
.public-site .footer-area .footer-menu__item { padding: 0; margin-bottom: 0; }
.public-site .footer-area .footer-menu__link { color: #b4c0d1; font-size: 14px; line-height: 1.6; overflow-wrap: anywhere; }
.public-site .footer-area .footer-menu__link:hover { color: #fff; }
.public-site .bottom-footer { border-top: 1px solid #263143; }
.public-site .bottom-footer__style { border-top: 0; }
.public-site .bottom-footer__text { color: #aab7ca; font-size: 13px; }
.public-site .footer-area .social-list__item { margin-right: 0; }
.public-site .footer-legals__content,
.public-site .footer-legals__content * { color: #aab7ca; font-size: 13px; line-height: 1.65; }
.public-site .footer-legals__content > :last-child { margin-bottom: 0; }
.public-site .cookies-card {
  width: min(370px, calc(100vw - 32px));
  padding: 24px;
  border: 1px solid var(--public-line);
  border-radius: 18px;
  background: var(--public-surface);
  color: var(--public-muted);
  box-shadow: 0 16px 50px #0003;
}
.public-site .cookies-card__content { line-height: 1.7; }
.public-site .scroll-top { border: 0; border-radius: 12px; }
.public-site .atp-card, .public-site .about-story__block { box-shadow: none; }
@media (min-width: 992px) {
  .public-site .header .navbar-brand { margin-right: 20px; flex-shrink: 0; }
  .public-site .header .navbar-collapse { min-width: 0; }
  .public-site .header .nav-menu,
  .public-site .header .top-button,
  .public-site .header .login-registration-list { flex-wrap: nowrap !important; }
  .public-site .header .nav-menu .nav-item { padding-inline: 0; }
  .public-site .header .nav-menu :is(.nav-link, .public-menu-toggle) { white-space: nowrap; }
  .public-site .header .header-right { flex-shrink: 0; }
}
@media (min-width: 992px) and (max-width: 1399px) {
  .public-site .header .logo img { max-width: 140px; }
  .public-site .header .nav-menu .nav-item .nav-link,
  .public-site .header .public-menu-toggle { font-size: 13px; padding-inline: 7px; }
  .public-site .header .top-button { gap: 8px; }
  .public-site .header .public-language summary span { max-width: 65px; overflow: hidden; text-overflow: ellipsis; }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .public-site .header .navbar-brand { margin-right: 10px; }
  .public-site .header .logo img { max-width: 128px; }
  .public-site .header .nav-menu .nav-item .nav-link,
  .public-site .header .public-menu-toggle { font-size: 12px; padding-inline: 5px; }
  .public-site .header .login-registration-list .btn { padding-inline: 12px; font-size: 12px; }
}
@media (max-width: 991px) {
  .public-site .header .navbar { padding-block: 12px !important; }
  .public-site .header .navbar-collapse {
    background: var(--public-surface);
    border-top: 1px solid var(--public-line);
    margin-top: 12px;
    width: 100%;
    max-height: calc(100dvh - 100px);
    overflow-y: auto;
  }
  .public-site .header .nav-menu { padding: 12px 0; margin: 0; }
  .public-site .header .nav-menu .nav-item { border: 0; }
  .public-site .header .nav-menu .nav-item .nav-link,
  .public-site .header .public-menu-toggle {
    border-bottom: 1px solid var(--public-line);
    width: 100%;
    padding: 14px 4px;
    text-align: start;
    justify-content: space-between;
  }
  .public-site .header .has-mega-menu .mega-menu.mega-menu--products {
    position: static;
    width: 100% !important;
    transform: none;
    padding: 8px 0 !important;
  }
  .public-site .header .has-mega-menu .mega-menu .mega-menu__inner { box-shadow: none; }
  .public-site .header .mobile-auth-actions { display: flex !important; gap: 20px; align-items: center; padding: 20px 4px 4px; }
  .public-site .header .public-language__list { inset-inline-start: 0; inset-inline-end: auto; }
  .public-site .footer-area .footer-main { padding-block: 28px 20px; }
}
@media (max-width: 575px) {
  .public-site .header .logo img { max-width: 150px; height: 34px; }
  .public-site .footer-area .col-sm-6:first-child { margin-bottom: 0; }
  .public-site .footer-area .col-xl-2 { width: 50%; }
}
@media (prefers-reduced-motion: reduce) {
  .public-site *, .public-site *::before, .public-site *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
