/* ============================================================
   skyph — chrome stylesheet (skyph-chrome-93c9a5.css)
   Mobile-first canvas: tuned for 320-430px phones, centered
   canvas on wide screens. Poster headings pair with narrow
   body text; pill buttons pair with squared cards.
   ============================================================ */

:root{
  --shellc9a50-ink:        #1C2833;
  --shellc9a50-ink-deep:   #141E27;
  --shellc9a50-ink-raise:  #24333F;
  --shellc9a50-paper:      #E5E5E5;
  --shellc9a50-paper-dim:  #AEB9C2;
  --shellc9a50-flame:      #FF4500;
  --shellc9a50-flame-deep: #D93A00;
  --shellc9a50-amber:      #FFA500;
  --shellc9a50-sand:       #DEB887;
  --shellc9a50-lemon:      #FFF176;
  --shellc9a50-line:       rgba(222,184,135,.22);
  --shellc9a50-shadow:     0 10px 26px rgba(5,10,15,.45);
  --shellc9a50-font-poster:"Arial Narrow","Arial Nova Condensed","Roboto Condensed","Helvetica Neue",Arial,sans-serif;
  --shellc9a50-font-body:  "Arial Narrow","Roboto Condensed","Helvetica Neue",Arial,sans-serif;
  --shellc9a50-head-h:     58px;
  --shellc9a50-dock-h:     62px;
}

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

html,body{ overflow-x:hidden; }

body{
  background:#0B1219;
  color:var(--shellc9a50-paper);
  font-family:var(--shellc9a50-font-body);
  font-size:14.5px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

img{ display:block; max-width:100%; }
a{ color:var(--shellc9a50-lemon); text-decoration:none; }
a:hover{ color:var(--shellc9a50-amber); }
button{ font-family:inherit; color:inherit; background:none; border:0; cursor:pointer; }
ul,ol{ list-style:none; }

:focus-visible{
  outline:2px solid var(--shellc9a50-lemon);
  outline-offset:2px;
  border-radius:4px;
}

/* ---------- centered phone canvas ---------- */
.shellc9a50-canvas{
  position:relative;
  width:100%;
  max-width:430px;
  margin-inline:auto;
  background:var(--shellc9a50-ink);
  min-height:100vh;
  box-shadow:0 0 0 1px rgba(222,184,135,.08), var(--shellc9a50-shadow);
}

.shellc9a50-main{
  padding-top:calc(var(--shellc9a50-head-h) + 10px);
  /* keep content clear of the floating dock */
  padding-bottom:calc(var(--shellc9a50-dock-h) + 46px + env(safe-area-inset-bottom, 0px));
}

.shellc9a50-wrap{ padding-inline:14px; }

/* ---------- top bar ---------- */
.shellc9a50-header{
  position:fixed;
  top:0; left:50%;
  transform:translateX(-50%);
  width:100%;
  max-width:430px;
  height:var(--shellc9a50-head-h);
  z-index:60;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 10px;
  background:rgba(20,30,39,.94);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid var(--shellc9a50-line);
}

.shellc9a50-brand{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}

.shellc9a50-brand-logo{
  width:36px;
  height:36px;
  border-radius:9px;
  object-fit:cover;
  border:1px solid rgba(255,241,118,.35);
  flex:0 0 auto;
}

.shellc9a50-brand-name{
  font-family:var(--shellc9a50-font-poster);
  font-weight:900;
  font-size:21px;
  letter-spacing:.5px;
  color:var(--shellc9a50-lemon);
  text-transform:lowercase;
  white-space:nowrap;
}

.shellc9a50-head-actions{
  display:flex;
  align-items:center;
  gap:6px;
  margin-left:auto;
}

/* segmented register / login pair */
.shellc9a50-seg{
  display:flex;
  align-items:center;
  border-radius:999px;
  overflow:hidden;
  border:1px solid rgba(255,69,0,.55);
}

.shellc9a50-seg-button{
  min-height:40px;
  padding:9px 12px;
  font-family:var(--shellc9a50-font-poster);
  font-weight:800;
  font-size:12.5px;
  letter-spacing:.6px;
  text-transform:uppercase;
  line-height:1;
  transition:background .18s ease, color .18s ease;
}

.shellc9a50-seg-button + .shellc9a50-seg-button{
  border-left:1px solid rgba(229,229,229,.25);
}

.shellc9a50-seg-button-flame{
  background:var(--shellc9a50-flame);
  color:#fff;
}

.shellc9a50-seg-button-flame:active{ background:var(--shellc9a50-flame-deep); }

.shellc9a50-seg-button-plain{
  background:transparent;
  color:var(--shellc9a50-paper);
}

.shellc9a50-seg-button-plain:active{ background:rgba(229,229,229,.14); }

.shellc9a50-burger{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:50%;
}

.shellc9a50-burger:active{ background:rgba(255,241,118,.14); }

.shellc9a50-burger svg{ width:22px; height:22px; stroke:var(--shellc9a50-lemon); }

/* ---------- side drawer menu ---------- */
.shellc9a50-scrim{
  position:fixed;
  inset:0;
  z-index:70;
  background:rgba(5,10,15,.6);
  opacity:0;
  visibility:hidden;
  transition:opacity .25s ease, visibility .25s ease;
}

.shellc9a50-scrim-open{ opacity:1; visibility:visible; }

.shellc9a50-drawer{
  position:fixed;
  top:0; right:0;
  height:100%;
  width:min(82%, 318px);
  z-index:80;
  background:var(--shellc9a50-ink-deep);
  border-left:1px solid var(--shellc9a50-line);
  transform:translateX(102%);
  transition:transform .28s ease;
  display:flex;
  flex-direction:column;
  padding:14px 0 calc(18px + env(safe-area-inset-bottom, 0px));
}

.shellc9a50-drawer-open{ transform:translateX(0); }

.shellc9a50-drawer-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:4px 16px 12px;
  border-bottom:1px solid var(--shellc9a50-line);
}

.shellc9a50-drawer-title{
  font-family:var(--shellc9a50-font-poster);
  font-weight:900;
  font-size:16px;
  letter-spacing:1.4px;
  text-transform:uppercase;
  color:var(--shellc9a50-sand);
}

.shellc9a50-drawer-close{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:50%;
}

.shellc9a50-drawer-close:active{ background:rgba(255,69,0,.18); }

.shellc9a50-drawer-close svg{ width:18px; height:18px; stroke:var(--shellc9a50-paper); }

.shellc9a50-drawer-list{ overflow-y:auto; padding:8px 10px; }

.shellc9a50-drawer-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:46px;
  padding:10px 12px;
  border-radius:8px;
  color:var(--shellc9a50-paper);
  font-size:14px;
  font-weight:600;
  letter-spacing:.2px;
}

.shellc9a50-drawer-link:active{ background:rgba(255,165,0,.16); }

.shellc9a50-drawer-link svg{
  width:14px; height:14px;
  stroke:var(--shellc9a50-sand);
  flex:0 0 auto;
}

.shellc9a50-drawer-link-current{
  background:rgba(255,241,118,.14);
  color:var(--shellc9a50-lemon);
}

.shellc9a50-drawer-foot{
  margin-top:auto;
  padding:14px 16px 0;
  border-top:1px solid var(--shellc9a50-line);
  font-size:11.5px;
  color:var(--shellc9a50-paper-dim);
  letter-spacing:.4px;
}

/* ---------- hero ---------- */
.shellc9a50-hero{ padding:6px 14px 2px; }

.shellc9a50-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:11px;
  font-weight:700;
  letter-spacing:1.6px;
  text-transform:uppercase;
  color:var(--shellc9a50-amber);
  margin-bottom:6px;
}

.shellc9a50-eyebrow::before{
  content:"";
  width:16px;
  height:2px;
  background:var(--shellc9a50-flame);
}

.shellc9a50-hero-title{
  font-family:var(--shellc9a50-font-poster);
  font-weight:900;
  font-size:30px;
  line-height:1.08;
  letter-spacing:.3px;
  text-transform:uppercase;
  color:#fff;
  margin-bottom:10px;
}

.shellc9a50-hero-title em{
  font-style:normal;
  color:var(--shellc9a50-lemon);
}

.shellc9a50-hero-lede{
  font-size:14.5px;
  color:var(--shellc9a50-paper);
  max-width:40ch;
}

.shellc9a50-hero-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:12px;
}

.shellc9a50-hero-stat{
  font-size:11px;
  font-weight:700;
  letter-spacing:.8px;
  text-transform:uppercase;
  color:var(--shellc9a50-sand);
  border:1px solid var(--shellc9a50-line);
  border-radius:6px;
  padding:5px 8px;
}

/* ---------- carousel ---------- */
.shellc9a50-carousel{
  position:relative;
  margin:16px 14px 0;
  border-radius:6px;
  overflow:hidden;
  border:1px solid var(--shellc9a50-line);
}

.shellc9a50-track{
  display:flex;
  transition:transform .4s ease;
}

.shellc9a50-slide{
  position:relative;
  flex:0 0 100%;
  width:100%;
  display:block;
  min-height:44px;
}

.shellc9a50-slide img{
  width:100%;
  aspect-ratio:5/3;
  object-fit:cover;
}

.shellc9a50-slide-caption{
  position:absolute;
  left:0; right:0; bottom:0;
  padding:22px 12px 9px;
  background:linear-gradient(180deg, rgba(20,30,39,0) 0%, rgba(11,18,25,.92) 78%);
  font-family:var(--shellc9a50-font-poster);
  font-weight:800;
  font-size:13.5px;
  letter-spacing:.5px;
  text-transform:uppercase;
  color:#fff;
  text-align:left;
}

.shellc9a50-dots{
  position:absolute;
  right:10px; bottom:8px;
  display:flex;
  gap:5px;
  z-index:2;
}

.shellc9a50-dot{
  width:7px;
  height:7px;
  border-radius:999px;
  background:rgba(229,229,229,.45);
  transition:width .25s ease, background .25s ease;
}

.shellc9a50-dot-active{
  width:19px;
  background:var(--shellc9a50-lemon);
}

/* ---------- category jump chips ---------- */
.shellc9a50-chips{
  display:flex;
  gap:7px;
  overflow-x:auto;
  padding:14px 14px 4px;
  scrollbar-width:none;
}

.shellc9a50-chips::-webkit-scrollbar{ display:none; }

.shellc9a50-chip{
  flex:0 0 auto;
  min-height:34px;
  display:inline-flex;
  align-items:center;
  padding:7px 13px;
  border-radius:999px;
  border:1px solid var(--shellc9a50-line);
  color:var(--shellc9a50-paper);
  font-size:12px;
  font-weight:700;
  letter-spacing:.7px;
  text-transform:uppercase;
  background:rgba(36,51,63,.6);
}

.shellc9a50-chip:active{ background:rgba(255,165,0,.2); }

/* ---------- content sections ---------- */
.shellc9a50-section{ padding:24px 0 4px; }

.shellc9a50-sec-head{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin-bottom:8px;
}

.shellc9a50-qmark{
  flex:0 0 auto;
  width:24px;
  height:24px;
  margin-top:2px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--shellc9a50-flame);
  color:#fff;
  font-family:var(--shellc9a50-font-poster);
  font-weight:900;
  font-size:15px;
  line-height:1;
}

.shellc9a50-sec-title{
  font-family:var(--shellc9a50-font-poster);
  font-weight:900;
  font-size:20px;
  line-height:1.14;
  letter-spacing:.3px;
  text-transform:uppercase;
  color:#fff;
}

.shellc9a50-sec-title em{ font-style:normal; color:var(--shellc9a50-lemon); }

.shellc9a50-sec-note{
  font-size:13.5px;
  color:var(--shellc9a50-paper);
  margin:2px 0 12px;
  max-width:42ch;
}

.shellc9a50-sec-note a{ border-bottom:1px solid rgba(255,241,118,.5); }

.shellc9a50-sec-deeplinks{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:0 0 12px;
}

.shellc9a50-deeplink{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:32px;
  padding:6px 10px;
  border-radius:999px;
  border:1px dashed rgba(222,184,135,.5);
  font-size:11.5px;
  font-weight:700;
  letter-spacing:.4px;
  color:var(--shellc9a50-sand);
}

.shellc9a50-deeplink svg{ width:11px; height:11px; stroke:currentColor; }

/* ---------- game grid ---------- */
.shellc9a50-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:8px;
}

.shellc9a50-card{
  display:flex;
  flex-direction:column;
  border-radius:6px;
  overflow:hidden;
  background:var(--shellc9a50-ink-raise);
  border:1px solid rgba(222,184,135,.16);
  text-align:center;
  transition:transform .16s ease, border-color .16s ease;
}

.shellc9a50-card:active{
  transform:translateY(-2px);
  border-color:var(--shellc9a50-amber);
}

.shellc9a50-card img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  background:#0F1820;
}

.shellc9a50-card-name{
  min-height:30px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:3px 4px;
  background:#1B2833;
  border-top:1px solid rgba(222,184,135,.16);
  font-size:10px;
  font-weight:700;
  line-height:1.22;
  letter-spacing:.2px;
  color:var(--shellc9a50-paper);
  word-break:break-word;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

/* ---------- milestone rows (achievements) ---------- */
.shellc9a50-mile-list{ display:grid; gap:8px; }

.shellc9a50-mile{
  border:1px solid var(--shellc9a50-line);
  border-left:3px solid var(--shellc9a50-amber);
  border-radius:6px;
  background:var(--shellc9a50-ink-raise);
  padding:10px 12px;
}

.shellc9a50-mile-name{
  font-family:var(--shellc9a50-font-poster);
  font-weight:800;
  font-size:13.5px;
  letter-spacing:.6px;
  text-transform:uppercase;
  color:var(--shellc9a50-lemon);
  margin-bottom:3px;
}

.shellc9a50-mile-text{ font-size:13px; color:var(--shellc9a50-paper); }

.shellc9a50-mile-bar{
  margin-top:8px;
  height:4px;
  border-radius:999px;
  background:rgba(229,229,229,.16);
  overflow:hidden;
}

.shellc9a50-mile-fill{
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg, var(--shellc9a50-flame), var(--shellc9a50-amber));
}

/* ---------- category fit tiles ---------- */
.shellc9a50-pick-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:8px;
}

.shellc9a50-pick{
  border:1px solid var(--shellc9a50-line);
  border-radius:6px;
  background:var(--shellc9a50-ink-raise);
  padding:10px 11px;
}

.shellc9a50-pick-tag{
  display:inline-block;
  font-size:10px;
  font-weight:800;
  letter-spacing:1px;
  text-transform:uppercase;
  color:var(--shellc9a50-ink);
  background:var(--shellc9a50-lemon);
  border-radius:4px;
  padding:3px 7px;
  margin-bottom:7px;
}

.shellc9a50-pick-text{ font-size:12.5px; line-height:1.45; color:var(--shellc9a50-paper); }

.shellc9a50-pick-wide{ grid-column:1 / -1; }

/* ---------- payment rows ---------- */
.shellc9a50-pay-list{ display:grid; gap:8px; margin-bottom:12px; }

.shellc9a50-pay{
  display:flex;
  align-items:center;
  gap:10px;
  border:1px solid var(--shellc9a50-line);
  border-radius:6px;
  background:var(--shellc9a50-ink-raise);
  padding:10px 12px;
}

.shellc9a50-pay-glyph{
  flex:0 0 auto;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(255,165,0,.16);
}

.shellc9a50-pay-glyph svg{ width:15px; height:15px; stroke:var(--shellc9a50-amber); }

.shellc9a50-pay-body{ min-width:0; }

.shellc9a50-pay-name{
  font-family:var(--shellc9a50-font-poster);
  font-weight:800;
  font-size:13.5px;
  letter-spacing:.5px;
  text-transform:uppercase;
  color:#fff;
}

.shellc9a50-pay-note{ font-size:12px; color:var(--shellc9a50-paper-dim); }

/* ---------- steps strip ---------- */
.shellc9a50-steps{ display:grid; gap:8px; margin:12px 0 4px; }

.shellc9a50-step{
  display:flex;
  gap:10px;
  align-items:flex-start;
  border:1px solid var(--shellc9a50-line);
  border-radius:6px;
  background:rgba(36,51,63,.45);
  padding:10px 12px;
}

.shellc9a50-step-num{
  flex:0 0 auto;
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1.5px solid var(--shellc9a50-lemon);
  color:var(--shellc9a50-lemon);
  font-weight:900;
  font-size:12px;
}

.shellc9a50-step-text{ font-size:13px; color:var(--shellc9a50-paper); }

.shellc9a50-step-text strong{ color:var(--shellc9a50-lemon); font-weight:800; }

/* ---------- CTA band ---------- */
.shellc9a50-cta-band{
  margin:24px 14px 6px;
  border-radius:6px;
  border:1px solid rgba(255,69,0,.4);
  background:
    radial-gradient(120% 150% at 85% 0%, rgba(255,165,0,.28) 0%, rgba(255,69,0,.08) 55%, rgba(20,30,39,0) 100%),
    var(--shellc9a50-ink-raise);
  padding:16px 14px;
}

.shellc9a50-cta-title{
  font-family:var(--shellc9a50-font-poster);
  font-weight:900;
  font-size:19px;
  letter-spacing:.4px;
  text-transform:uppercase;
  color:#fff;
  margin-bottom:5px;
}

.shellc9a50-cta-text{ font-size:13px; color:var(--shellc9a50-paper); margin-bottom:12px; }

.shellc9a50-cta-seg{
  display:flex;
  border-radius:999px;
  overflow:hidden;
  border:1px solid rgba(255,241,118,.5);
}

.shellc9a50-cta-seg-button{
  flex:1 1 50%;
  min-height:46px;
  font-family:var(--shellc9a50-font-poster);
  font-weight:900;
  font-size:13px;
  letter-spacing:.8px;
  text-transform:uppercase;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  transition:background .18s ease, color .18s ease;
}

.shellc9a50-cta-seg-button + .shellc9a50-cta-seg-button{
  border-left:1px solid rgba(229,229,229,.28);
}

.shellc9a50-cta-seg-hot{
  background:var(--shellc9a50-flame);
  color:#fff;
}

.shellc9a50-cta-seg-hot:active{ background:var(--shellc9a50-flame-deep); }

.shellc9a50-cta-seg-cool{
  background:transparent;
  color:var(--shellc9a50-lemon);
}

.shellc9a50-cta-seg-cool:active{ background:rgba(255,241,118,.16); }

.shellc9a50-cta-seg svg{ width:13px; height:13px; stroke:currentColor; }

/* ---------- FAQ ---------- */
.shellc9a50-faq{ display:grid; gap:8px; margin-top:12px; }

.shellc9a50-faq-item{
  border:1px solid var(--shellc9a50-line);
  border-radius:6px;
  background:var(--shellc9a50-ink-raise);
  overflow:hidden;
}

.shellc9a50-faq-item summary{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:9px;
  min-height:46px;
  padding:11px 12px;
  font-weight:700;
  font-size:13.5px;
  line-height:1.35;
  color:#fff;
}

.shellc9a50-faq-item summary::-webkit-details-marker{ display:none; }

.shellc9a50-faq-item summary::after{
  content:"+";
  margin-left:auto;
  flex:0 0 auto;
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid var(--shellc9a50-sand);
  color:var(--shellc9a50-sand);
  font-weight:800;
  transition:transform .2s ease, background .2s ease, color .2s ease;
}

.shellc9a50-faq-item[open] summary::after{
  content:"–";
  background:var(--shellc9a50-lemon);
  color:var(--shellc9a50-ink);
  border-color:var(--shellc9a50-lemon);
}

.shellc9a50-faq-answer{
  padding:0 12px 12px;
  font-size:13px;
  line-height:1.55;
  color:var(--shellc9a50-paper);
}

.shellc9a50-faq-answer a{ border-bottom:1px solid rgba(255,241,118,.5); }

/* ---------- direct answer callout ---------- */
.shellc9a50-answer{
  margin:24px 14px 6px;
  border-left:3px solid var(--shellc9a50-lemon);
  border-radius:6px;
  background:rgba(255,241,118,.07);
  padding:14px 13px;
}

.shellc9a50-answer-text{ font-size:13.5px; line-height:1.6; color:var(--shellc9a50-paper); }

.shellc9a50-answer-text + .shellc9a50-answer-text{ margin-top:10px; }

/* ---------- extended footer ---------- */
.shellc9a50-xfooter{
  margin-top:28px;
  border-top:1px solid var(--shellc9a50-line);
  background:var(--shellc9a50-ink-deep);
  padding:18px 14px 6px;
}

.shellc9a50-xf-label{
  font-size:10.5px;
  font-weight:800;
  letter-spacing:1.8px;
  text-transform:uppercase;
  color:var(--shellc9a50-amber);
  margin:16px 0 8px;
}

.shellc9a50-xf-brand{
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:8px;
}

.shellc9a50-xf-brand img{
  width:30px;
  height:30px;
  border-radius:7px;
  object-fit:cover;
  border:1px solid rgba(255,241,118,.3);
}

.shellc9a50-xf-brand-name{
  font-family:var(--shellc9a50-font-poster);
  font-weight:900;
  font-size:17px;
  letter-spacing:.5px;
  color:var(--shellc9a50-lemon);
}

.shellc9a50-xf-text{ font-size:12.5px; line-height:1.6; color:var(--shellc9a50-paper-dim); }

.shellc9a50-partners{
  display:flex;
  gap:6px;
  overflow-x:auto;
  padding:10px 0 2px;
  scrollbar-width:none;
}

.shellc9a50-partners::-webkit-scrollbar{ display:none; }

.shellc9a50-partners img{
  flex:0 0 auto;
  width:52px;
  height:30px;
  object-fit:contain;
  border-radius:4px;
  background:rgba(229,229,229,.08);
  padding:2px;
}

.shellc9a50-xf-links{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:6px 10px;
}

.shellc9a50-xf-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:30px;
  font-size:12px;
  font-weight:600;
  color:var(--shellc9a50-paper);
}

.shellc9a50-xf-link::before{
  content:"";
  width:5px;
  height:5px;
  border-radius:1px;
  background:var(--shellc9a50-sand);
  flex:0 0 auto;
}

.shellc9a50-xf-promos{ display:grid; gap:7px; }

.shellc9a50-xf-promo{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:44px;
  padding:10px 13px;
  border-radius:999px;
  border:1px solid rgba(255,69,0,.45);
  background:linear-gradient(90deg, rgba(255,69,0,.16), rgba(255,165,0,.06));
  font-size:12.5px;
  font-weight:700;
  color:#fff;
  text-align:left;
}

.shellc9a50-xf-promo:active{ background:rgba(255,69,0,.34); }

.shellc9a50-xf-promo svg{ width:13px; height:13px; stroke:var(--shellc9a50-lemon); flex:0 0 auto; }

.shellc9a50-xf-disclaimer{
  margin-top:16px;
  padding-top:12px;
  border-top:1px solid var(--shellc9a50-line);
  font-size:11.5px;
  line-height:1.6;
  color:rgba(229,229,229,.55);
}

/* ---------- common footer ---------- */
.shellc9a50-footer{
  padding:16px 14px 10px;
  text-align:center;
  font-size:11.5px;
  letter-spacing:.5px;
  color:var(--shellc9a50-paper-dim);
}

.shellc9a50-footer-line{ margin-bottom:3px; }

/* ---------- floating dock nav ---------- */
.shellc9a50-dock{
  position:fixed;
  bottom:calc(9px + env(safe-area-inset-bottom, 0px));
  left:50%;
  transform:translateX(-50%);
  width:min(94%, 412px);
  height:var(--shellc9a50-dock-h);
  z-index:65;
  display:flex;
  padding:6px;
  border-radius:999px;
  background:rgba(17,26,34,.94);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border:1px solid rgba(222,184,135,.3);
  box-shadow:var(--shellc9a50-shadow);
}

.shellc9a50-dock-glider{
  position:absolute;
  top:6px;
  left:6px;
  width:calc((100% - 12px) / 5);
  height:calc(100% - 12px);
  border-radius:999px;
  background:var(--shellc9a50-lemon);
  transition:transform .3s cubic-bezier(.4,1.4,.5,1);
  z-index:1;
}

.shellc9a50-dock-item{
  position:relative;
  z-index:2;
  flex:1 1 20%;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:3px;
  border-radius:999px;
  color:var(--shellc9a50-paper);
  transition:color .22s ease;
}

.shellc9a50-dock-item svg{
  width:21px;
  height:21px;
  stroke:currentColor;
  transition:transform .22s ease;
}

.shellc9a50-dock-item:active svg{ transform:scale(.86); }

.shellc9a50-dock-label{
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.5px;
  text-transform:uppercase;
  line-height:1;
}

/* active state = contrast inversion */
.shellc9a50-dock-item-active{ color:var(--shellc9a50-ink); }

.shellc9a50-dock-item-active svg{ transform:translateY(-1px); }

/* ---------- responsive tuning ---------- */
@media (min-width:375px){
  .shellc9a50-hero-title{ font-size:33px; }
  .shellc9a50-sec-title{ font-size:21.5px; }
  .shellc9a50-card-name{ font-size:10.5px; }
  .shellc9a50-xf-links{ gap:7px 12px; }
}

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

@media (min-width:480px){
  .shellc9a50-canvas{ border-radius:14px; }
  body{ background:#060B10; }
}

/* ---------- motion preference ---------- */
@media (prefers-reduced-motion: reduce){
  *{ transition:none !important; animation:none !important; }
}

/* ---------- tiny helpers ---------- */
.shellc9a50-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;
}
