.page{text-align:center;max-width:720px;margin:0 auto;padding:2.5rem 1.25rem 4rem;position:relative}header h1{background:linear-gradient(120deg, var(--gold), #ffe9a6, var(--gold));color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 .4rem;font-size:clamp(2.2rem,6vw,3.4rem)}.subtitle{color:var(--muted);margin:0 0 2rem;font-size:1.1rem}.present{border-radius:20px;max-width:420px;margin:0 auto 2rem;transition:transform .4s,box-shadow .4s;overflow:hidden;box-shadow:0 0 60px #4a7cf659,0 12px 40px #00000080}.present img{width:100%;height:auto;display:block}.present:hover{transform:translateY(-4px)}.present.is-open{animation:.6s pop;box-shadow:0 0 90px #f6c94573,0 12px 40px #00000080}.present.is-shaking{animation:.5s ease-in-out infinite shake}@keyframes shake{0%,to{transform:rotate(0)}20%{transform:rotate(-1.5deg)translate(-3px)}60%{transform:rotate(1.5deg)translate(3px)}}@keyframes pop{0%{transform:scale(.92)}55%{transform:scale(1.04)}to{transform:scale(1)}}.actions{margin:0 auto 2rem}.actions .btn.primary{margin:.4rem .35rem}.btn{font:inherit;cursor:pointer;border:none;border-radius:12px;padding:.7rem 1.6rem;font-weight:600;transition:transform .15s,filter .15s}.btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:default}.btn.primary{background:linear-gradient(120deg, var(--gold), #f0a93a);color:#241a02;box-shadow:0 4px 20px #f6c94559}.btn.primary.big{padding:.9rem 2.4rem;font-size:1.25rem}.btn.link{color:var(--muted);background:0 0;padding:0;font-size:.9rem;font-weight:400;text-decoration:underline}.wallet{color:var(--muted)}.wallet code,.notice code{background:#ffffff14;border-radius:6px;padding:.1rem .4rem}.notice{color:var(--muted)}.error{color:#ff7b7b;word-break:break-word;max-width:480px;margin:.75rem auto 0;font-size:.9rem}.tease{color:var(--gold);font-style:italic}.reveal h2{margin:2.5rem 0 1.5rem;font-size:1.4rem}.nft-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;display:grid}.nft-card{color:var(--text);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:14px;text-decoration:none;transition:transform .15s,border-color .15s;display:block;overflow:hidden}.nft-card:hover{border-color:var(--gold);transform:translateY(-3px)}.nft-image{aspect-ratio:1;background:#00000059}.nft-image img{object-fit:cover;width:100%;height:100%;display:block}.nft-placeholder{width:100%;height:100%;color:var(--muted);justify-content:center;align-items:center;font-size:2.5rem;display:flex}.nft-info{justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem .75rem;display:flex}.nft-name{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:600;overflow:hidden}.nft-amount{color:var(--gold);font-size:.85rem}.quest{text-align:left;background:#f6c9450d;border:1px solid #f6c94559;border-radius:16px;margin-top:3rem;padding:1.5rem}.quest h2{text-align:center;color:var(--gold);margin:0 0 1rem;font-size:1.5rem}.quest-story{color:var(--text);margin:0 0 1.5rem}.wizard-list{flex-direction:column;gap:.75rem;display:flex}.wizard-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:1rem;padding:.85rem 1rem;display:flex}.wizard-card.is-blessed{border-color:var(--gold);background:#f6c9451f}.wizard-status{text-align:center;flex-shrink:0;width:2.2rem;font-size:1.6rem}.wizard-card.is-blessed .wizard-status{color:var(--gold)}.wizard-info{flex-direction:column;gap:.1rem;display:flex}.wizard-clan{font-weight:700}.wizard-title{color:var(--muted);font-size:.85rem;font-style:italic}.wizard-guarding{margin-top:.25rem;font-size:.9rem}.quest-footnote{color:var(--muted);margin:1.5rem 0 0;font-size:.85rem}.confetti{pointer-events:none;z-index:10;position:fixed;inset:0;overflow:hidden}.confetti span{opacity:.9;border-radius:2px;width:9px;height:14px;animation-name:fall;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;top:-12px}@keyframes fall{0%{transform:translateY(-5vh)rotate(0)}to{transform:translateY(105vh)rotate(660deg)}}footer{color:var(--muted);margin-top:3.5rem;font-size:.9rem}*{box-sizing:border-box}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0e1f;--bg-glow:#16204a;--text:#e8ecff;--muted:#9aa3c7;--gold:#f6c945;--blue:#4a7cf6;font-family:Segoe UI,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5}html,body,#root{min-height:100vh;margin:0;padding:0}body{color:var(--text);background:radial-gradient(ellipse 80% 60% at 50% 20%, var(--bg-glow) 0%, var(--bg) 65%);background-attachment:fixed}a{color:var(--gold)}
