:root{
  --bg:#07111f; --panel:rgba(13,27,45,.92); --text:#f5f8ff; --muted:#9fb3ca;
  --gold:#e5c36a; --shadow:0 18px 48px rgba(0,0,0,.35); --border:rgba(255,255,255,.08); --accent:rgba(118,166,255,.18);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:Inter,Arial,sans-serif;background:radial-gradient(circle at top,#15365d 0%,var(--bg) 48%,#040913 100%);color:var(--text)}
.bg{position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 20%,rgba(57,208,203,.18),transparent 24%),radial-gradient(circle at 85% 14%,rgba(229,195,106,.18),transparent 26%)}
.season-banner{position:sticky;top:0;z-index:9;background:linear-gradient(90deg,#f0d481,#d6a52b);color:#251a04;padding:.7rem 1rem;text-align:center;font-weight:700;border-bottom:1px solid rgba(0,0,0,.12)}
.season-banner span{font-weight:600}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;position:sticky;top:47px;z-index:8;background:rgba(7,17,31,.78);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.brand{display:flex;gap:1rem;align-items:center}
.logo-wrap{width:72px;height:72px}
.logo{width:72px;height:72px;object-fit:contain;border-radius:50%;box-shadow:var(--shadow)}
.logo-fallback{width:72px;height:72px;border-radius:50%;place-items:center;font-weight:900;background:radial-gradient(circle at 30% 30%,#fff0b7,#c79d37 62%,#8a6615 100%);color:#291b03;box-shadow:var(--shadow)}
h1,h2,p{margin-top:0}
h1{margin-bottom:.2rem;font-size:1.9rem}.brand p{margin:0;color:var(--muted)}
.nav{display:flex;gap:.5rem;flex-wrap:wrap}
.navbtn{background:rgba(255,255,255,.05);border:1px solid var(--border);color:var(--text);padding:.75rem 1rem;border-radius:14px;cursor:pointer}
.navbtn.active{background:var(--accent)}
.shell{padding:1rem 1.25rem 1.5rem}
.tab{display:none}.tab.active{display:block}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}
.card{background:var(--panel);border:1px solid var(--border);border-radius:22px;padding:1rem;box-shadow:var(--shadow)}
.muted{color:var(--muted)}
.stack{display:grid;gap:.55rem}
.statline{display:flex;justify-content:space-between;gap:1rem;padding:.72rem 0;border-bottom:1px solid rgba(255,255,255,.06)}
.statline:last-child{border-bottom:0}
.auth-actions{display:grid;gap:.65rem;margin-bottom:1rem}
button{cursor:pointer}
.primary,.secondary,.ghost{border-radius:16px;padding:1rem 1.1rem;font-weight:800;width:100%;border:0}
.primary{background:linear-gradient(180deg,var(--gold),#c99b29);color:#1f1603}
.secondary{background:rgba(118,166,255,.18);color:var(--text);border:1px solid rgba(118,166,255,.32)}
.ghost{background:rgba(255,255,255,.05);color:var(--text);border:1px solid var(--border)}
.large{font-size:1.05rem;margin-top:.7rem}.center{text-align:center}.small-note{margin-top:.75rem;line-height:1.4}
.wheel-card{text-align:center}
.wheel-wrap{width:320px;max-width:100%;margin:.5rem auto 0;position:relative}
.pointer{width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-top:28px solid var(--gold);margin:0 auto;position:relative;z-index:2;filter:drop-shadow(0 4px 8px rgba(0,0,0,.4))}
.wheel{position:relative;width:320px;height:320px;border-radius:50%;margin:-8px auto 0;border:10px solid rgba(255,255,255,.1);box-shadow:var(--shadow);overflow:hidden;background:conic-gradient(#0d1b2d 0deg 45deg,#17415f 45deg 90deg,#0d1b2d 90deg 135deg,#17415f 135deg 180deg,#0d1b2d 180deg 225deg,#17415f 225deg 270deg,#0d1b2d 270deg 315deg,#17415f 315deg 360deg)}
.wheel::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at center, transparent 0 32%, rgba(255,255,255,.06) 32% 33%, transparent 33% 100%)}
.hub{position:absolute;inset:33%;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff0b7,#c79d37 62%,#8a6615 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.6rem;text-align:center;box-shadow:inset 0 4px 14px rgba(255,255,255,.25),0 8px 18px rgba(0,0,0,.35)}
.hub-title{font-size:1rem;font-weight:900;color:#291b03}.hub-result{font-size:.92rem;font-weight:800;color:#412c08;margin-top:.25rem;line-height:1.15}
.result-box{min-height:120px;border:1px solid var(--border);border-radius:18px;padding:1rem;background:rgba(255,255,255,.04)}
.discovery-callout{margin-top:1rem;padding:.9rem;border-radius:16px;background:rgba(229,195,106,.13);border:1px solid rgba(229,195,106,.35);font-weight:700;color:#f7e6a7}
.hidden{display:none}.big{font-size:1.2rem;font-weight:900}
.board,.history,.feed{display:grid;gap:.55rem}
.row{display:grid;grid-template-columns:60px 1fr 100px;gap:.75rem;align-items:center;padding:.8rem;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.04);border-radius:14px}
.row.wide{grid-template-columns:1.8fr .8fr .8fr .8fr}
.row.network{grid-template-columns:70px 1.4fr .9fr .9fr .9fr .9fr}
.rank{font-weight:900;color:var(--gold)} .addr{color:var(--muted);font-size:.92rem;word-break:break-all}
.empty{color:var(--muted);padding:.7rem 0}
.feed-item{padding:.8rem;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.04);border-radius:14px}
.feed-item strong{color:var(--gold)}
.city-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.city-pill{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:.9rem}
.city-pill span{display:block;color:var(--muted);font-size:.85rem;margin-bottom:.25rem}
.stadium-map{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.8rem;margin-top:1rem}
.section-tile{border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);border-radius:18px;padding:1rem;min-height:96px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
.section-tile.hot{background:rgba(229,195,106,.12);border-color:rgba(229,195,106,.35)}
.section-tile strong{font-size:1.05rem}.section-tile .mini{color:var(--muted);font-size:.85rem;margin-top:.35rem}
.tag{display:inline-block;padding:.15rem .45rem;border-radius:999px;background:rgba(229,195,106,.14);border:1px solid rgba(229,195,106,.25);color:#f4dc93;font-size:.78rem}
@media (max-width:1100px){.grid,.grid.two,.grid.three,.city-summary,.stadium-map{grid-template-columns:1fr}.wheel{width:290px;height:290px}.row.network{grid-template-columns:1fr}}

.lot-card{margin-bottom:1rem}
.lot-line{display:flex;justify-content:space-between;gap:1rem;padding:.72rem 0;border-bottom:1px solid rgba(255,255,255,.06)}
.lot-line:last-child{border-bottom:0}
.input{width:100%;margin-bottom:.75rem;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);color:var(--text);padding:.9rem}
.textarea{min-height:130px;resize:vertical}
.field-label{display:block;margin:.45rem 0;font-weight:700;color:#dce8f6}

.section-badges{font-size:1rem;letter-spacing:.08em;min-height:1.4rem}
.finder{display:grid;grid-template-columns:1fr 1fr auto;gap:.75rem;margin-bottom:1rem}
.finder-input{margin-bottom:0}
.finder-btn{width:auto;min-width:120px}
@media (max-width:1100px){.finder{grid-template-columns:1fr}}

select, option {
  background: #0f1724;
  color: #f5f8ff;
}


.full-width-season-card {
  margin-top: 1rem;
}
#referralCode {
  display: inline-block;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 1.3;
  text-align: right;
}
select, option {
  background: #0f1724;
  color: #f5f8ff;
}

#flagStoreNote{line-height:1.4}


.claim-referrer-box{margin-top:1rem;display:grid;gap:.5rem}
.status-badges{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.35rem}
.status-badge{display:inline-flex;align-items:center;gap:.2rem;padding:.18rem .45rem;border-radius:999px;background:rgba(255,255,255,.08);font-size:.78rem}
.row-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.5rem}
.lot-action-btn{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:inherit;border-radius:.65rem;padding:.35rem .65rem;cursor:pointer}
.lot-action-btn:hover{background:rgba(255,255,255,.10)}
.next-action{color:#f4c867;font-size:.8rem;margin-top:.35rem}


.fence-stage-starter { color: #f4c867; }
.fence-stage-full { color: #7ef2b1; }

.about-img {
  width: 100%;
  border-radius: 16px;
  margin: 12px 0;
  box-shadow: 0 16px 32px rgba(0,0,0,.25);
}

.hustle-ai-image {
  width: 100%;
  border-radius: 16px;
  margin-top: 12px;
  box-shadow: 0 16px 32px rgba(0,0,0,.28);
}

#starterFenceBtn, #fullDeedBtn {
  opacity: 1 !important;
  pointer-events: auto !important;
}

#starterFenceBtn, #fullDeedBtn, #addMinerBtn, #communityStakingBtn, #payRentBtn {
  opacity: 1 !important;
  pointer-events: auto !important;
}


.claim-referrer-summary {
  margin-top: .75rem;
  display: grid;
  gap: .5rem;
}
.claim-referrer-summary .feed-item {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 12px;
  padding: .7rem .8rem;
}
.claim-referrer-box .input:disabled,
.claim-referrer-box button:disabled {
  opacity: .75;
}

#claimReferrerBtn {
  pointer-events: auto !important;
  opacity: 1 !important;
}

.claim-referrer-summary {
  margin-top: .75rem;
  display: grid;
  gap: .5rem;
}
.claim-referrer-summary .feed-item,
#referralProgressBox .feed-item {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 12px;
  padding: .7rem .8rem;
}
.claim-referrer-box .input:disabled,
.claim-referrer-box button:disabled {
  opacity: .75;
}
#claimReferrerBtn {
  pointer-events: auto !important;
  opacity: 1 !important;
}
.spin-insight-wrap {
  margin-top: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  text-align: center;
  transition: all .25s ease;
}
.spin-insight-wrap.is-spinning {
  border-color: rgba(244,200,103,0.45);
  box-shadow: 0 0 0 1px rgba(244,200,103,0.08), 0 8px 24px rgba(0,0,0,0.18);
}
.spin-insight-wrap.is-result {
  border-color: rgba(126,242,177,0.45);
  box-shadow: 0 0 0 1px rgba(126,242,177,0.08), 0 8px 24px rgba(0,0,0,0.18);
}
.spin-insight-label {
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .72;
  margin-bottom: 4px;
}
.spin-fact {
  text-align: center;
  font-size: 14px;
  line-height: 1.35;
  opacity: .92;
  min-height: 20px;
}
.spin-fact-enter {
  animation: spinInsightFade .35s ease;
}
@keyframes spinInsightFade {
  from { opacity: .3; transform: translateY(4px); }
  to { opacity: .92; transform: translateY(0); }
}


.blessino-session { border:1px solid rgba(126,242,177,.16); background:rgba(255,255,255,.03); border-radius:16px; padding:.9rem; margin-bottom:.8rem; }
.blessino-session strong { color:#7ef2b1; }
.blessino-meta { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem; margin-top:.55rem; }
.blessino-chip { display:inline-flex; align-items:center; padding:.2rem .5rem; border-radius:999px; background:rgba(126,242,177,.12); border:1px solid rgba(126,242,177,.28); font-size:.78rem; margin-right:.35rem; margin-top:.35rem; }
.blessino-preview-item { padding:.7rem; border:1px solid rgba(255,255,255,.08); border-radius:14px; background:rgba(255,255,255,.04); }
.blessino-numbers { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; color:#f4dc93; }
.blessino-wheel-shell{display:grid;gap:1rem;margin:.75rem 0 1rem}
.blessino-wheel-stage{position:relative;width:min(100%,440px);aspect-ratio:1/1;margin:0 auto;display:grid;place-items:center}
.blessino-wheel-rotator{width:100%;height:100%;border-radius:50%;transition:transform 5.6s cubic-bezier(.12,.85,.18,1);will-change:transform;filter:drop-shadow(0 14px 32px rgba(0,0,0,.34))}
.blessino-wheel-canvas{width:100%;height:100%;display:block;border-radius:50%;background:radial-gradient(circle at center, rgba(255,255,255,.08) 0 17%, rgba(255,255,255,0) 18% 100%)}
.blessino-wheel-pointer{position:absolute;top:-6px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-top:0;border-bottom:34px solid #111827;filter:drop-shadow(0 6px 10px rgba(0,0,0,.35));z-index:4}
.blessino-wheel-hub{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:108px;height:108px;border-radius:50%;background:radial-gradient(circle at 30% 30%, #1f2937 0 18%, #111827 19% 100%);display:grid;place-items:center;text-align:center;z-index:3;box-shadow:0 10px 28px rgba(0,0,0,.34), inset 0 0 0 2px rgba(255,255,255,.05)}
.blessino-wheel-ledger{display:grid;gap:.55rem}
#blessinoSpinStatus{font-size:.76rem;color:#f4dc93;padding:0 .7rem;line-height:1.1}
#blessinoSpinHistory{color:#7ef2b1}
#blessinoWheelSessionInfo{font-size:.9rem}
.legacy-check{display:flex;gap:.65rem;align-items:flex-start;margin:1rem 0;color:#cfd6df}
.legacy-check input{margin-top:.25rem}
.legacy-preview-box{min-height:160px}
.legacy-stage-message{display:grid;gap:.75rem;margin-top:1rem}
@media (max-width:700px){.blessino-wheel-stage{width:min(100%,360px)}.blessino-wheel-hub{width:92px;height:92px}}

#blessinoPaymentAsset { margin-top: .25rem; }


#supportLotLinkText { display:block; max-width:100%; overflow-wrap:anywhere; }
.support-guest-badge {
  display:inline-block; padding:.15rem .45rem; border-radius:999px;
  background:rgba(126,242,177,.12); border:1px solid rgba(126,242,177,.25);
  color:#7ef2b1; font-size:.8rem;
}
.support-lot-row { cursor:pointer; }

/* Minimal city access connect page */
#play .grid{grid-template-columns:repeat(2,minmax(0,520px));justify-content:center;}
