/* ==========================================================================
   adz58win.click - shell stylesheet
   Prefix contract: every class uses mobile25766-
   Palette: #0C0C0C bg / #FF9800 primary / #DEB887 / #00B8D4 / #F4A460 / #DEE2E6
   Design tone: near-square tool feel, image + bottom name bar cards,
   asymmetric brand header, outlined bottom bar, short-distance transitions.
   ========================================================================== */

:root {
  --mobile25766-ink: #0C0C0C;
  --mobile25766-ink-2: #151513;
  --mobile25766-ink-3: #1E1D19;
  --mobile25766-edge: #2B2921;
  --mobile25766-flame: #FF9800;
  --mobile25766-flame-deep: #E07C00;
  --mobile25766-sand: #DEB887;
  --mobile25766-cyan: #00B8D4;
  --mobile25766-clay: #F4A460;
  --mobile25766-paper: #DEE2E6;
  --mobile25766-muted: #9AA0A6;
  --mobile25766-canvas-max: 430px;
  --mobile25766-radius: 3px;
  --mobile25766-radius-soft: 6px;
  --mobile25766-tap: 44px;
  --mobile25766-font-display: "Trebuchet MS", "Segoe UI", Roboto, Arial, sans-serif;
  --mobile25766-font-body: "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --mobile25766-speed: 180ms;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

html { -webkit-text-size-adjust: 100%; }

body {
  background: #060606;
  color: var(--mobile25766-paper);
  font-family: var(--mobile25766-font-body);
  font-size: 15px;
  line-height: 1.62;
  -webkit-font-smoothing: antialiased;
}

img { display: block; max-width: 100%; border: 0; }

a { color: var(--mobile25766-cyan); text-decoration: none; }
a:hover, a:focus-visible { color: var(--mobile25766-flame); }

button {
  font-family: inherit;
  border: 0;
  background: none;
  color: inherit;
  cursor: pointer;
}

:focus-visible {
  outline: 2px solid var(--mobile25766-cyan);
  outline-offset: 2px;
}

/* --------------------------------------------------------------------------
   Phone canvas: everything lives inside a 430px column, centered on wide
   screens so desktop keeps the same mobile navigation experience.
   -------------------------------------------------------------------------- */

.mobile25766-canvas {
  position: relative;
  width: 100%;
  max-width: var(--mobile25766-canvas-max);
  margin: 0 auto;
  min-height: 100vh;
  background: var(--mobile25766-ink);
  overflow-x: hidden;
}

@media (min-width: 480px) {
  .mobile25766-canvas {
    box-shadow: 0 0 0 1px var(--mobile25766-edge), 0 18px 60px rgba(0, 0, 0, .8);
  }
}

/* --------------------------------------------------------------------------
   Top region: asymmetric brand header + action strip
   -------------------------------------------------------------------------- */

.mobile25766-topbar {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: var(--mobile25766-canvas-max);
  z-index: 60;
  background: linear-gradient(180deg, #101009 0%, rgba(12, 12, 12, .97) 100%);
  border-bottom: 1px solid var(--mobile25766-edge);
}

.mobile25766-brandline {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 56px;
  padding: 8px 10px 6px 12px;
}

.mobile25766-logo-tile {
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border: 1px solid var(--mobile25766-flame);
  background: #191407;
  display: grid;
  place-items: center;
  border-radius: var(--mobile25766-radius);
}

.mobile25766-logo-tile img {
  width: 34px;
  height: 34px;
  object-fit: contain;
}

.mobile25766-wordmark {
  font-family: var(--mobile25766-font-display);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: .06em;
  color: var(--mobile25766-flame);
  line-height: 1.1;
  text-transform: lowercase;
}

.mobile25766-brand-spacer { flex: 1 1 auto; }

.mobile25766-menu-btn {
  width: var(--mobile25766-tap);
  height: var(--mobile25766-tap);
  display: grid;
  place-items: center;
  border: 1px solid var(--mobile25766-edge);
  border-radius: var(--mobile25766-radius);
  background: #17160f;
  transition: border-color var(--mobile25766-speed) ease;
}

.mobile25766-menu-btn:hover { border-color: var(--mobile25766-flame); }

.mobile25766-menu-btn svg { display: block; }

.mobile25766-menu-btn .mobile25766-bar {
  transform-origin: center;
  transition: transform var(--mobile25766-speed) ease, opacity var(--mobile25766-speed) ease;
}

.mobile25766-menu-btn[aria-expanded="true"] .mobile25766-bar-top { transform: translateY(4px) rotate(45deg); }
.mobile25766-menu-btn[aria-expanded="true"] .mobile25766-bar-mid { opacity: 0; }
.mobile25766-menu-btn[aria-expanded="true"] .mobile25766-bar-bottom { transform: translateY(-4px) rotate(-45deg); }

/* action strip sits outside the brand block, per asymmetric header direction */

.mobile25766-actionstrip {
  display: flex;
  align-items: stretch;
  gap: 8px;
  padding: 0 10px 8px 12px;
}

.mobile25766-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: var(--mobile25766-tap);
  padding: 0 16px;
  font-family: var(--mobile25766-font-display);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  border-radius: var(--mobile25766-radius);
  transition: transform var(--mobile25766-speed) ease, background var(--mobile25766-speed) ease,
    color var(--mobile25766-speed) ease, border-color var(--mobile25766-speed) ease;
}

.mobile25766-btn:active { transform: translateY(1px); }

.mobile25766-btn-solid {
  background: var(--mobile25766-flame);
  color: #191000;
  border: 1px solid var(--mobile25766-flame);
}

.mobile25766-btn-solid:hover, .mobile25766-btn-solid:focus-visible {
  background: var(--mobile25766-flame-deep);
  color: #191000;
}

.mobile25766-btn-ghost {
  background: transparent;
  color: var(--mobile25766-sand);
  border: 1px solid var(--mobile25766-sand);
}

.mobile25766-btn-ghost:hover, .mobile25766-btn-ghost:focus-visible {
  border-color: var(--mobile25766-flame);
  color: var(--mobile25766-flame);
}

.mobile25766-register { flex: 1 1 55%; }
.mobile25766-login { flex: 1 1 45%; }

/* --------------------------------------------------------------------------
   Sectioned full-screen menu
   -------------------------------------------------------------------------- */

.mobile25766-menu {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: var(--mobile25766-canvas-max);
  height: 100%;
  z-index: 55;
  background: rgba(9, 9, 8, .985);
  overflow-y: auto;
  padding: 76px 14px 96px;
  display: none;
}

.mobile25766-menu[data-open="1"] { display: block; }

.mobile25766-menu-group { margin-bottom: 22px; }

.mobile25766-menu-kicker {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--mobile25766-cyan);
  border-left: 3px solid var(--mobile25766-cyan);
  padding-left: 8px;
  margin-bottom: 8px;
}

.mobile25766-menu-list { list-style: none; }

.mobile25766-menu-list li + li { border-top: 1px solid #201f18; }

.mobile25766-menu-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: var(--mobile25766-tap);
  padding: 8px 6px 8px 10px;
  color: var(--mobile25766-paper);
  font-size: 15px;
  border-radius: var(--mobile25766-radius);
}

.mobile25766-menu-list a:hover,
.mobile25766-menu-list a:focus-visible {
  color: var(--mobile25766-flame);
  background: #16150e;
}

.mobile25766-menu-list a::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 2px solid var(--mobile25766-muted);
  border-right: 2px solid var(--mobile25766-muted);
  transform: rotate(45deg);
  flex: 0 0 auto;
}

.mobile25766-menu-note {
  font-size: 12px;
  color: var(--mobile25766-muted);
  padding: 10px 4px 0;
  border-top: 1px dashed var(--mobile25766-edge);
  margin-top: 6px;
}

/* --------------------------------------------------------------------------
   Main flow
   -------------------------------------------------------------------------- */

.mobile25766-main {
  padding-top: 104px;           /* fixed topbar clearance */
  padding-bottom: 132px;        /* fixed bottom bar clearance */
}

/* --------------------------------------------------------------------------
   Hero
   -------------------------------------------------------------------------- */

.mobile25766-hero {
  padding: 14px 12px 18px;
  border-bottom: 1px solid var(--mobile25766-edge);
  background:
    radial-gradient(120% 90% at 85% -10%, rgba(255, 152, 0, .16), transparent 60%),
    radial-gradient(90% 70% at 0% 110%, rgba(0, 184, 212, .12), transparent 55%),
    var(--mobile25766-ink);
}

.mobile25766-hero-eyebrow {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--mobile25766-clay);
  border: 1px solid var(--mobile25766-clay);
  padding: 3px 8px;
  border-radius: var(--mobile25766-radius);
  margin-bottom: 10px;
}

.mobile25766-hero h1 {
  font-family: var(--mobile25766-font-display);
  font-size: 24px;
  line-height: 1.25;
  letter-spacing: .01em;
  color: #FFFFFF;
  margin-bottom: 10px;
}

.mobile25766-hero h1 em {
  font-style: normal;
  color: var(--mobile25766-flame);
}

.mobile25766-hero-lead {
  font-size: 14px;
  color: var(--mobile25766-paper);
  max-width: 40ch;
  margin-bottom: 14px;
}

.mobile25766-hero-cta { display: flex; gap: 8px; }

/* --------------------------------------------------------------------------
   Carousel
   -------------------------------------------------------------------------- */

.mobile25766-carousel {
  position: relative;
  margin: 4px 0 6px;
  border: 1px solid var(--mobile25766-edge);
  border-radius: var(--mobile25766-radius-soft);
  background: var(--mobile25766-ink-2);
  overflow: hidden;
}

.mobile25766-track {
  display: flex;
  transition: transform 340ms ease;
}

.mobile25766-slide {
  flex: 0 0 100%;
  width: 100%;
  display: block;
}

.mobile25766-slide img {
  width: 100%;
  height: 168px;
  object-fit: cover;
  object-position: center;
}

.mobile25766-slide-caption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 22px 12px 10px;
  font-family: var(--mobile25766-font-display);
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  text-align: left;
  background: linear-gradient(180deg, transparent, rgba(6, 6, 6, .88));
  pointer-events: none;
}

.mobile25766-carousel-controls {
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: flex;
  gap: 6px;
  pointer-events: auto;
}

.mobile25766-dot {
  width: 22px;
  height: 10px;
  border: 1px solid var(--mobile25766-sand);
  background: transparent;
  border-radius: 2px;
  transition: background var(--mobile25766-speed) ease, border-color var(--mobile25766-speed) ease;
}

.mobile25766-dot[data-on="1"] {
  background: var(--mobile25766-flame);
  border-color: var(--mobile25766-flame);
}

/* --------------------------------------------------------------------------
   Section shells + game grids
   -------------------------------------------------------------------------- */

.mobile25766-section {
  padding: 20px 12px 6px;
}

.mobile25766-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  border-bottom: 2px solid var(--mobile25766-edge);
  padding-bottom: 6px;
  margin-bottom: 12px;
}

.mobile25766-section-head h2 {
  font-family: var(--mobile25766-font-display);
  font-size: 17px;
  line-height: 1.3;
  color: #fff;
}

.mobile25766-section-tag {
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--mobile25766-ink);
  background: var(--mobile25766-sand);
  padding: 2px 6px;
  border-radius: 2px;
}

.mobile25766-section-tag--cyan { background: var(--mobile25766-cyan); }
.mobile25766-section-tag--flame { background: var(--mobile25766-flame); }
.mobile25766-section-tag--clay { background: var(--mobile25766-clay); }
.mobile25766-section-tag--paper { background: var(--mobile25766-paper); }

.mobile25766-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px 6px;
}

@media (min-width: 396px) {
  .mobile25766-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}

/* game card: image + bottom name bar, near-square corners */

.mobile25766-game {
  display: block;
  width: 100%;
  border: 1px solid var(--mobile25766-edge);
  border-radius: var(--mobile25766-radius);
  background: var(--mobile25766-ink-2);
  overflow: hidden;
  text-align: center;
  transition: border-color var(--mobile25766-speed) ease, transform var(--mobile25766-speed) ease;
}

.mobile25766-game:hover,
.mobile25766-game:focus-visible {
  border-color: var(--mobile25766-flame);
  transform: translateY(-2px);
}

.mobile25766-game-img {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  background: #100f0b;
}

.mobile25766-game-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mobile25766-game-name {
  display: block;
  min-height: 32px;
  padding: 4px 4px 5px;
  font-size: 11px;
  line-height: 1.3;
  font-weight: 600;
  color: var(--mobile25766-paper);
  background: linear-gradient(180deg, #1c1a13, #14130d);
  border-top: 1px solid var(--mobile25766-edge);
  overflow-wrap: break-word;
}

.mobile25766-game:hover .mobile25766-game-name { color: var(--mobile25766-flame); }

/* --------------------------------------------------------------------------
   Editorial / info modules after the game area
   -------------------------------------------------------------------------- */

.mobile25766-essay {
  padding: 22px 14px 4px;
}

.mobile25766-essay-lead {
  font-size: 14.5px;
  color: var(--mobile25766-paper);
  margin-bottom: 10px;
}

.mobile25766-essay h2 {
  font-family: var(--mobile25766-font-display);
  font-size: 17px;
  line-height: 1.35;
  color: #fff;
  margin: 26px 0 10px;
  padding-left: 10px;
  border-left: 3px solid var(--mobile25766-flame);
}

.mobile25766-essay h2:first-of-type { margin-top: 4px; }

.mobile25766-essay h3 {
  font-family: var(--mobile25766-font-display);
  font-size: 14.5px;
  color: var(--mobile25766-sand);
  margin: 18px 0 6px;
}

.mobile25766-essay p { margin-bottom: 10px; font-size: 14px; }

.mobile25766-essay ul, .mobile25766-essay ol {
  margin: 0 0 12px 18px;
  font-size: 14px;
}

.mobile25766-essay li { margin-bottom: 6px; }

.mobile25766-essay strong { color: #fff; }

.mobile25766-conclusion {
  border: 1px solid var(--mobile25766-edge);
  border-left: 3px solid var(--mobile25766-cyan);
  background: var(--mobile25766-ink-2);
  padding: 10px 12px;
  border-radius: var(--mobile25766-radius);
  margin-bottom: 12px;
  font-size: 14px;
}

.mobile25766-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  margin-bottom: 14px;
}

.mobile25766-table th, .mobile25766-table td {
  border: 1px solid var(--mobile25766-edge);
  padding: 8px 8px;
  text-align: left;
  vertical-align: top;
}

.mobile25766-table th {
  background: #1b1912;
  color: var(--mobile25766-sand);
  font-family: var(--mobile25766-font-display);
  font-size: 12px;
  letter-spacing: .04em;
  text-transform: uppercase;
}

/* mid-article CTA block used on help pages */

.mobile25766-cta-row {
  border: 1px solid var(--mobile25766-edge);
  border-left: 3px solid var(--mobile25766-flame);
  background: var(--mobile25766-ink-2);
  padding: 12px;
  border-radius: var(--mobile25766-radius);
  margin: 4px 0 14px;
}

.mobile25766-cta-row p {
  font-size: 13.5px;
  margin-bottom: 10px;
  color: var(--mobile25766-paper);
}

/* short intro line under a game section heading (home) */
.mobile25766-section-intro {
  font-size: 13.5px;
  color: var(--mobile25766-muted);
  margin: 0 0 12px;
  padding: 0 2px;
}

/* compact quick-facts list used in the home essay */
.mobile25766-facts {
  list-style: none;
  margin: 0 0 16px;
  padding: 12px 12px 6px;
  border: 1px solid var(--mobile25766-edge);
  border-radius: var(--mobile25766-radius);
  background: var(--mobile25766-ink-2);
}
.mobile25766-facts li {
  font-size: 13px;
  line-height: 1.55;
  color: var(--mobile25766-paper);
  padding-left: 16px;
  position: relative;
  margin-bottom: 6px;
}
.mobile25766-facts li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 8px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--mobile25766-flame);
}

/* inline promo text link */

.mobile25766-promoline {
  color: var(--mobile25766-flame);
  border-bottom: 1px dashed var(--mobile25766-flame);
  font-weight: 600;
  cursor: pointer;
  background: none;
  font-size: inherit;
  font-family: inherit;
}

.mobile25766-promoline:hover, .mobile25766-promoline:focus-visible {
  color: #ffb648;
  border-bottom-style: solid;
}

/* --------------------------------------------------------------------------
   Extended footer (home only): brand blurb > directory > promotions > note
   -------------------------------------------------------------------------- */

.mobile25766-extfoot {
  margin-top: 26px;
  border-top: 1px solid var(--mobile25766-edge);
  background: var(--mobile25766-ink-2);
  padding: 20px 12px 12px;
}

.mobile25766-extfoot-brand {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding-bottom: 14px;
  border-bottom: 1px dashed var(--mobile25766-edge);
  margin-bottom: 14px;
}

.mobile25766-extfoot-brand img {
  width: 34px;
  height: 34px;
  object-fit: contain;
  border: 1px solid var(--mobile25766-edge);
  border-radius: var(--mobile25766-radius);
  background: #191407;
  padding: 3px;
}

.mobile25766-extfoot-brand p {
  font-size: 12.5px;
  color: var(--mobile25766-muted);
}

.mobile25766-directory-title {
  font-family: var(--mobile25766-font-display);
  font-size: 13px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--mobile25766-cyan);
  margin: 0 0 8px;
}

.mobile25766-directory {
  column-count: 2;
  column-gap: 14px;
  margin-bottom: 16px;
}

.mobile25766-directory ul {
  list-style: none;
  margin: 0;
}

.mobile25766-directory li {
  break-inside: avoid;
  margin: 0 0 2px;
}

.mobile25766-directory a {
  display: block;
  padding: 6px 2px;
  font-size: 12.5px;
  color: var(--mobile25766-paper);
  border-bottom: 1px solid #1d1c15;
  min-height: 32px;
}

.mobile25766-directory a:hover,
.mobile25766-directory a:focus-visible { color: var(--mobile25766-flame); }

.mobile25766-promowall {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 14px;
}

.mobile25766-promowall .mobile25766-btn { width: 100%; padding: 0 8px; font-size: 12.5px; }

.mobile25766-extnote {
  font-size: 11.5px;
  line-height: 1.55;
  color: var(--mobile25766-muted);
  border-top: 1px solid var(--mobile25766-edge);
  padding-top: 10px;
}

/* --------------------------------------------------------------------------
   Common footer
   -------------------------------------------------------------------------- */

.mobile25766-foot {
  border-top: 1px solid var(--mobile25766-edge);
  background: #0a0a08;
  padding: 16px 14px 12px;
  text-align: center;
}

.mobile25766-foot p {
  font-size: 12px;
  color: var(--mobile25766-muted);
}

.mobile25766-foot .mobile25766-foot-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4px 12px;
  margin-bottom: 8px;
  font-size: 12px;
}

/* --------------------------------------------------------------------------
   Mobile bottom bar: outlined five-role functional strip
   -------------------------------------------------------------------------- */

.mobile25766-bottombar {
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: var(--mobile25766-canvas-max);
  z-index: 70;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 4px;
  background: rgba(10, 10, 8, .97);
  border-top: 1px solid var(--mobile25766-flame);
  padding: 6px 4px calc(6px + env(safe-area-inset-bottom, 0px));
}

.mobile25766-bnb {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3px;
  min-height: var(--mobile25766-tap);
  padding: 4px 2px;
  border: 1px solid transparent;
  border-radius: var(--mobile25766-radius);
  color: var(--mobile25766-muted);
  transition: color var(--mobile25766-speed) ease, border-color var(--mobile25766-speed) ease;
}

.mobile25766-bnb:hover, .mobile25766-bnb:focus-visible {
  color: var(--mobile25766-paper);
  border-color: var(--mobile25766-edge);
}

.mobile25766-bnb-label {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .02em;
  line-height: 1.1;
  text-align: center;
}

/* containerized icon tile morphs shape between idle and active */

.mobile25766-icontile {
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 6px;
  transition: border-radius var(--mobile25766-speed) ease, background var(--mobile25766-speed) ease,
    color var(--mobile25766-speed) ease;
}

.mobile25766-bnb[data-on="1"] {
  color: var(--mobile25766-flame);
  border-color: var(--mobile25766-flame);
}

.mobile25766-bnb[data-on="1"] .mobile25766-icontile {
  border-radius: 13px;          /* circle morph = active state */
  background: rgba(255, 152, 0, .14);
}

.mobile25766-bnb--promo { color: var(--mobile25766-sand); }
.mobile25766-bnb--promo:hover, .mobile25766-bnb--promo:focus-visible {
  color: var(--mobile25766-flame);
}

/* --------------------------------------------------------------------------
   Utilities
   -------------------------------------------------------------------------- */

.mobile25766-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

.mobile25766-skip {
  position: absolute;
  left: 8px;
  top: -48px;
  z-index: 90;
  background: var(--mobile25766-flame);
  color: #191000;
  padding: 8px 12px;
  font-weight: 700;
  border-radius: var(--mobile25766-radius);
  transition: top var(--mobile25766-speed) ease;
}

.mobile25766-skip:focus { top: 8px; }

@media (prefers-reduced-motion: reduce) {
  * { transition-duration: 1ms !important; animation-duration: 1ms !important; }
}
