:root{--bg0: #08110e;--bg1: #12201a;--ink: #f2f7f0;--muted: #8b9b8c;--line: rgba(200, 245, 66, .18);--accent: #c8f542;--accent-ink: #0d1608;--heads: #e8c15a;--heads-deep: #9a7418;--tails: #5ec4e8;--tails-deep: #1f6f8f;--danger: #ff7a6a;--ok: #9be67a;--font-display: "Syne", sans-serif;--font-body: "Manrope", system-ui, sans-serif;--safe-bottom: env(safe-area-inset-bottom, 0px);color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;height:100%}body{font-family:var(--font-body);color:var(--ink);background:radial-gradient(900px 520px at 50% -8%,rgba(200,245,66,.12),transparent 55%),radial-gradient(700px 420px at 100% 20%,rgba(94,196,232,.08),transparent 50%),radial-gradient(600px 380px at 0% 80%,rgba(232,193,90,.07),transparent 45%),linear-gradient(168deg,var(--bg0),var(--bg1) 55%,#0a1612);background-attachment:fixed;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}.app{max-width:430px;margin:0 auto;min-height:100%;padding:1.1rem 1.15rem calc(1.6rem + var(--safe-bottom));display:flex;flex-direction:column;gap:1rem;position:relative;overflow:hidden}.app:before{content:"";position:absolute;inset:-40% -20% auto;height:55%;background:radial-gradient(circle at 50% 0%,rgba(200,245,66,.09),transparent 70%);pointer-events:none;animation:ambient 8s ease-in-out infinite alternate}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;position:relative;z-index:1;animation:rise .55s ease-out both}.brand-block{min-width:0}.brand{font-family:var(--font-display);font-weight:800;font-size:clamp(1.85rem,7vw,2.35rem);letter-spacing:-.045em;line-height:.95;margin:0}.brand span{display:block;color:var(--accent)}.tagline{margin:.45rem 0 0;color:var(--muted);font-size:.88rem;line-height:1.35;max-width:16rem}.wallet-slot{flex-shrink:0;transform:scale(.92);transform-origin:top right}.stage{flex:1;display:flex;flex-direction:column;gap:1rem;position:relative;z-index:1}.hero-coin-wrap{display:grid;place-items:center;padding:.4rem 0 .2rem;perspective:900px}.coin{width:min(168px,42vw);height:min(168px,42vw);border-radius:50%;display:grid;place-items:center;font-family:var(--font-display);font-size:1.55rem;font-weight:800;letter-spacing:-.02em;color:#14100a;position:relative;background:radial-gradient(circle at 32% 28%,#fff6d4 0%,var(--heads) 42%,var(--heads-deep) 100%);box-shadow:0 18px 40px #00000073,inset 0 1px #ffffff59;animation:floaty 3.6s ease-in-out infinite}.coin:after{content:"";position:absolute;top:10%;right:10%;bottom:10%;left:10%;border-radius:50%;border:1px solid rgba(255,255,255,.22);pointer-events:none}.coin.idle-mixed{background:conic-gradient(from 200deg,var(--heads),#fff3c4,var(--tails),#b8ecff,var(--heads));color:#10160c}.coin.heads{background:radial-gradient(circle at 30% 28%,#fff6d4,var(--heads) 55%,var(--heads-deep));animation:none}.coin.tails{background:radial-gradient(circle at 30% 28%,#e7f8ff,var(--tails) 55%,var(--tails-deep));color:#041018;animation:none}.coin.spin{animation:flip 1.25s cubic-bezier(.2,.7,.2,1)}.coin.search{animation:pulse-coin 1.6s ease-in-out infinite}.coin-label{text-align:center;font-size:.82rem;color:var(--muted);margin:-.2rem 0 0}.panel{display:flex;flex-direction:column;gap:.75rem;animation:rise .55s ease-out both}.stake-line{display:flex;justify-content:space-between;gap:.5rem;padding:.7rem .85rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.84rem;color:var(--muted)}.stake-line strong{color:var(--ink);font-weight:600}.btn{border:none;border-radius:16px;padding:1rem 1.15rem;font-weight:700;font-size:1rem;letter-spacing:-.01em;transition:transform .14s ease,opacity .14s ease,filter .14s ease}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 10px 28px #c8f54238}.btn-ghost{background:#ffffff08;color:var(--ink);border:1px solid rgba(255,255,255,.1)}.btn-heads{background:linear-gradient(145deg,#f3d27a,var(--heads-deep));color:#1a1400;min-height:3.4rem}.btn-tails{background:linear-gradient(145deg,#9adcf3,var(--tails-deep));color:#041018;min-height:3.4rem}.btn:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}.btn .sub{display:block;font-size:.72rem;font-weight:500;opacity:.75;margin-top:.15rem}.row{display:flex;gap:.65rem}.row>*{flex:1}.choice-hint{text-align:center;font-family:var(--font-display);font-weight:700;font-size:1.15rem;letter-spacing:-.03em;margin:0}.phase{text-align:center;padding:.85rem 1rem;border:1px dashed rgba(200,245,66,.28);border-radius:14px;background:#c8f5420a}.phase-title{margin:0;font-weight:650;font-size:.98rem}.phase-sub{margin:.35rem 0 0;color:var(--muted);font-size:.82rem;line-height:1.4}.dots:after{content:"";animation:dots 1.2s steps(4,end) infinite}.status-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.45rem}.status-list li{display:flex;justify-content:space-between;gap:.75rem;font-size:.86rem;color:var(--muted)}.status-list li strong{color:var(--ink);font-weight:600;text-align:right}.invite-box{padding:.75rem .85rem;border-radius:12px;background:#00000038;border:1px solid rgba(255,255,255,.08)}.invite-box p{margin:0 0 .4rem;font-size:.8rem;color:var(--muted)}.mono{font-family:ui-monospace,IBM Plex Mono,monospace;font-size:.7rem;word-break:break-all;color:#b7c4b6;line-height:1.35}.tos{max-height:38vh;overflow:auto;padding:.9rem;border:1px solid rgba(255,255,255,.08);border-radius:14px;font-size:.8rem;line-height:1.5;color:var(--muted);white-space:pre-wrap;background:#0000002e}.result-banner{text-align:center;font-family:var(--font-display);font-weight:800;font-size:1.55rem;letter-spacing:-.04em;margin:0;animation:rise .45s ease-out both}.result-banner.win{color:var(--accent)}.result-banner.lose{color:#ffb4a8}.verify-ok{color:var(--ok);text-align:center;font-size:.88rem;margin:0}.verify-bad{color:var(--danger);text-align:center;font-size:.88rem;margin:0}.toast{padding:.75rem .9rem;border-radius:12px;background:#ff7a6a1f;border:1px solid rgba(255,122,106,.35);color:#ffc7bf;font-size:.86rem;line-height:1.35;display:flex;gap:.65rem;align-items:flex-start;animation:rise .3s ease-out both}.toast button{margin-left:auto;background:transparent;border:none;color:inherit;font-size:1.1rem;line-height:1;padding:0 .15rem;opacity:.8}.footer-link{margin-top:auto;color:var(--muted);font-size:.72rem;text-align:center;line-height:1.4;opacity:.9}.hint-connect{text-align:center;color:var(--muted);font-size:.86rem;margin:0}@keyframes rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes floaty{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(2deg)}}@keyframes flip{0%{transform:rotateY(0) scale(1)}55%{transform:rotateY(820deg) scale(1.08)}to{transform:rotateY(1080deg) scale(1)}}@keyframes pulse-coin{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.04);filter:brightness(1.08)}}@keyframes ambient{0%{opacity:.55;transform:translateY(0)}to{opacity:1;transform:translateY(12px)}}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}@media(prefers-reduced-motion:reduce){.coin,.coin.spin,.coin.search,.app:before,.panel,.topbar,.result-banner{animation:none!important}}
