:root{--bg: #07060d;--bg-2: #0d0b1a;--ink: #efe9da;--ink-dim: #9b93b0;--gold: #f5c451;--gold-deep: #c8902a;--green: #46f08a;--green-glow: rgba(70, 240, 138, .45);--line: rgba(245, 196, 81, .16);--radius: 16px;--shadow: 0 30px 80px rgba(0, 0, 0, .55)}*{box-sizing:border-box;margin:0}html,body{background:radial-gradient(120% 90% at 50% -10%,#140f24,#07060d 60%);color:var(--ink);font-family:Sora,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}#grain{position:fixed;inset:0;pointer-events:none;z-index:60;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.token{color:var(--gold);font-weight:700}.topbar{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:18px 28px;background:linear-gradient(180deg,#07060dd9,#07060d00);backdrop-filter:blur(6px)}.brand{display:flex;align-items:center;gap:10px;letter-spacing:.32em}.brand-mark{color:var(--gold);filter:drop-shadow(0 0 10px rgba(245,196,81,.6))}.brand-name{font-family:Cinzel,serif;font-weight:800;font-size:18px}.topbar-stat{text-align:right;display:flex;flex-direction:column;line-height:1.1}.topbar-stat-label{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim)}.topbar-stat-value{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;font-family:Cinzel,serif;font-weight:700;font-size:18px;color:var(--gold);text-shadow:0 0 18px rgba(245,196,81,.35);font-variant-numeric:tabular-nums}.sol-ico{width:17px;height:17px;filter:drop-shadow(0 0 7px rgba(245,196,81,.5))}.hero{position:relative;min-height:100svh;display:grid;align-items:center;overflow:hidden}#sceneBg{position:fixed;inset:0;z-index:0;background:linear-gradient(180deg,#07060d5c,#07060d1a 34%,#07060d29 60%,#07060d8c),url(../treasurebg.jpg) center center / cover no-repeat;background-color:#07060d}#chest-canvas{position:fixed;inset:0;width:100%;height:100%;display:block;z-index:1}.hero:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(100deg,#07060dc7,#07060d6b 28%,#07060d00 52%)}.hero:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(120% 70% at 50% 120%,rgba(7,6,13,.62),transparent 60%)}.hero-copy{position:relative;z-index:3;padding:0 7vw;max-width:620px;pointer-events:none}.eyebrow{font-size:12px;letter-spacing:.34em;text-transform:uppercase;color:var(--gold);opacity:.85;margin-bottom:18px}.hero-copy h1{font-family:Cinzel,serif;font-weight:800;font-size:clamp(38px,6vw,76px);line-height:.98;letter-spacing:.01em;text-shadow:0 8px 40px rgba(0,0,0,.6)}.hero-copy .sub{margin-top:22px;font-size:clamp(15px,1.5vw,18px);line-height:1.55;color:var(--ink-dim);max-width:460px}.hero-copy .sub strong{color:var(--ink)}.claim-dock{position:absolute;z-index:5;left:50%;bottom:2vh;transform:translate(-50%);width:min(540px,92vw);text-align:center;padding:15px 20px 14px;border-radius:18px;background:#0a09149e;border:1px solid var(--line);box-shadow:0 24px 70px #0000008c,inset 0 1px #ffffff0d;backdrop-filter:blur(14px)}.claim-label{display:block;font-size:13px;letter-spacing:.04em;color:var(--ink-dim);margin-bottom:12px}.claim-row{display:flex;gap:10px;padding:8px;border-radius:var(--radius);background:#0d0b1ab8;border:1px solid var(--line);box-shadow:var(--shadow),inset 0 1px #ffffff0a;backdrop-filter:blur(10px)}.wallet-input{flex:1;background:transparent;border:none;outline:none;color:var(--ink);font-family:Sora,sans-serif;font-size:15px;padding:12px 14px;letter-spacing:.01em}.wallet-input::placeholder{color:#9b93b0b3}.claim-button{position:relative;border:none;cursor:pointer;padding:0 26px;border-radius:11px;font-family:Cinzel,serif;font-weight:800;letter-spacing:.12em;font-size:15px;color:#2a1c03;background:linear-gradient(180deg,#ffe49a,var(--gold) 40%,var(--gold-deep));box-shadow:0 10px 30px #f5c45159,inset 0 1px #fff9;transition:transform .12s ease,filter .2s ease,opacity .2s ease}.claim-button:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06)}.claim-button:active:not(:disabled){transform:translateY(1px)}.claim-button:disabled{opacity:.4;cursor:not-allowed}.claim-button.is-busy .claim-button-label{opacity:.5}.claim-readout{margin-top:10px;display:flex;flex-direction:column;align-items:center;gap:5px}.claim-amount{display:none;font-family:Cinzel,serif;font-weight:800;font-size:clamp(24px,3.2vw,32px);color:var(--green);text-shadow:0 0 24px var(--green-glow);font-variant-numeric:tabular-nums}.claim-amount.is-live{display:block}.claim-hint{font-size:12.5px;color:var(--ink-dim);letter-spacing:.02em}.claim-hint.is-error{color:#ff7a7a}.claim-hint.is-success{color:var(--green)}.scroll-cue{position:absolute;bottom:18px;left:50%;transform:translate(-50%);z-index:4;font-size:10px;letter-spacing:.4em;color:var(--ink-dim);opacity:.55;animation:bob 2.4s ease-in-out infinite}@keyframes bob{50%{transform:translate(-50%,6px)}}.vault{position:relative;z-index:3;padding:96px 7vw 40px;background:linear-gradient(180deg,transparent,var(--bg-2) 14%)}.vault-head h2{font-family:Cinzel,serif;font-weight:800;font-size:clamp(28px,4vw,44px)}.vault-head p{margin-top:8px;color:var(--ink-dim);font-size:14px}.vault-grid{margin-top:40px;display:flex;flex-wrap:wrap;align-items:flex-end;gap:26px;min-height:120px}.vault-empty{color:var(--ink-dim);font-size:13px;margin-top:18px}.vault-chest{display:flex;flex-direction:column;align-items:center;gap:8px;transition:transform .3s ease}.vault-chest:hover{transform:translateY(-4px)}.vault-chest .glyph{filter:drop-shadow(0 8px 16px rgba(0,0,0,.5));line-height:1}.vault-chest .meta{font-size:11px;color:var(--ink-dim);font-variant-numeric:tabular-nums;letter-spacing:.02em}.vault-chest .addr{color:var(--gold);font-weight:600}.footer{display:flex;justify-content:space-between;padding:28px 7vw 48px;font-family:Cinzel,serif;letter-spacing:.3em;font-size:12px;color:var(--gold)}.footer-dim{color:var(--ink-dim);letter-spacing:.18em}.view-landing{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;justify-content:center;gap:clamp(26px,5vh,54px);padding:12vh 7vw 6vh;transition:opacity .55s ease,transform .55s ease}.view-landing:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(100deg,#07060dcc,#07060d70 30%,#07060d00 56%),radial-gradient(120% 70% at 50% 122%,rgba(7,6,13,.6),transparent 60%)}.view-landing.hidden{opacity:0;transform:scale(1.03);pointer-events:none;visibility:hidden}.view-game{display:none;position:relative;z-index:3}body.playing .view-game{display:block;animation:fadeUp .6s ease both}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}}.landing-copy{position:relative;max-width:56vw}.landing-copy h1{font-family:Cinzel,serif;font-weight:900;font-size:clamp(34px,5vw,66px);line-height:1.02;letter-spacing:.01em;white-space:nowrap;text-shadow:0 12px 54px rgba(0,0,0,.65)}.landing-copy .sub{margin-top:22px;font-size:clamp(15px,1.5vw,18px);line-height:1.55;color:var(--ink-dim);max-width:490px}.hero-token{color:var(--gold);text-shadow:0 0 38px rgba(245,196,81,.55)}.chest-prize{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%) scale(.7);z-index:6;pointer-events:none;font-family:Cinzel,serif;font-weight:900;font-size:clamp(40px,6.5vw,82px);color:var(--green);text-shadow:0 0 46px var(--green-glow),0 0 16px rgba(70,240,138,.7);opacity:0;transition:opacity .45s ease,transform .45s cubic-bezier(.2,1.4,.4,1);white-space:nowrap}.chest-prize.show{opacity:1;transform:translate(-50%,-50%) scale(1)}.play-button{position:relative;overflow:hidden;margin-top:36px;border:none;cursor:pointer;padding:18px 56px;border-radius:14px;font-family:Cinzel,serif;font-weight:800;letter-spacing:.24em;font-size:18px;color:#2a1c03;background:linear-gradient(180deg,#ffe49a,var(--gold) 42%,var(--gold-deep));box-shadow:0 16px 44px #f5c4516b,inset 0 1px #fff9;transition:transform .14s ease,filter .2s ease,box-shadow .2s ease}.play-button:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:0 24px 64px #f5c45194,inset 0 1px #fff9}.play-button:active{transform:translateY(1px)}.play-label{position:relative;z-index:2}.play-glint{position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(105deg,transparent,rgba(255,255,255,.7),transparent);transform:skew(-18deg);animation:glint 3.6s ease-in-out infinite}@keyframes glint{0%,58%{left:-60%}to{left:135%}}.howto{position:relative;z-index:2;max-width:820px}.howto-title{font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:16px}.howto-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:780px}.howto-step{border:1px solid var(--line);border-radius:14px;padding:16px 18px;background:#0d0b1a8c;backdrop-filter:blur(8px)}.howto-num{font-family:Cinzel,serif;font-weight:800;font-size:13px;color:var(--gold);letter-spacing:.1em}.howto-step h3{font-family:Cinzel,serif;font-weight:800;font-size:18px;margin:6px 0}.howto-step p{font-size:13px;line-height:1.5;color:var(--ink-dim)}.dock-title{font-family:Cinzel,serif;font-weight:800;font-size:16px;letter-spacing:.04em;color:var(--gold);margin-bottom:10px;text-shadow:0 2px 14px rgba(0,0,0,.95)}.claim-label{text-shadow:0 2px 12px rgba(0,0,0,.9)}@media (max-width: 820px){.landing-copy{text-align:center;margin:0 auto;padding-top:60px}.view-landing{justify-content:flex-start;padding-top:16vh}.howto{position:static;margin-top:36px}.howto-steps{grid-template-columns:1fr}.hero{align-items:start}.claim-dock{bottom:4vh}}
