*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #09090f;--bg2: #0f0f1a;--bg3: #14141f;--border: rgba(255,255,255,.07);--gold: #c8a84b;--gold2: #ffcd6b;--gold-glow: rgba(200,168,75,.35);--purple: #7850f0;--cyan: #22d3ee;--text: #e8e8f0;--text2: #9090a8;--text3: #5a5a72;--radius: 14px;--radius-sm: 8px;--font: "Syne", sans-serif;--mono: "JetBrains Mono", monospace;--header-h: 72px}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}.particle-canvas{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;opacity:.7}.app{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:32px 24px 80px;max-width:1280px;margin:0 auto;width:100%}.header{position:sticky;top:0;z-index:100;height:var(--header-h);display:flex;align-items:center;gap:16px;padding:0 24px;background:#09090fd1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--border)}.header-brand{flex-shrink:0}.brand-logo{display:flex;align-items:baseline;gap:1px;line-height:1}.brand-geo{font-size:1.35rem;font-weight:800;color:var(--gold);letter-spacing:1px}.brand-wars{font-size:1.35rem;font-weight:800;color:var(--text);letter-spacing:1px}.brand-sub{font-size:.6rem;font-weight:600;color:var(--text3);letter-spacing:2px;margin-top:2px}.header-nav{display:flex;gap:4px;flex:1;justify-content:center}.nav-tab{position:relative;display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text2);font:600 .75rem/1 var(--font);letter-spacing:1.5px;cursor:pointer;transition:all .2s}.nav-tab:hover{color:var(--text);background:#ffffff0a}.nav-tab.active{color:var(--gold);background:#c8a84b14;border-color:#c8a84b40}.nav-icon{font-size:.9rem}.nav-badge{position:absolute;top:4px;right:4px;background:var(--gold);color:#000;font-size:.6rem;font-weight:800;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 3px}.header-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.net-toggle{display:flex;gap:4px}.net-btn{padding:5px 10px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text3);font:600 .65rem/1 var(--mono);cursor:pointer;transition:all .2s}.net-btn:hover{color:var(--text2);border-color:#ffffff26}.net-btn.active.mainnet{color:#4ade80;border-color:#4ade804d;background:#4ade800f}.net-btn.active.testnet{color:var(--cyan);border-color:#22d3ee4d;background:#22d3ee0f}.wallet-info{display:flex;align-items:center;gap:10px}.wallet-bals{display:flex;gap:10px}.bal{font:600 .8rem/1 var(--mono);display:flex;align-items:center;gap:4px}.bal .bi{font-size:.75rem}.bal.algo{color:var(--cyan)}.bal.geo{color:var(--gold)}.wallet-addr{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff0a;border:1px solid var(--border);border-radius:var(--radius-sm);font:500 .75rem/1 var(--mono);color:var(--text2);cursor:pointer;transition:all .2s}.wallet-addr:hover{border-color:#f8717166;color:#f87171}.addr-dot{width:6px;height:6px;border-radius:50%;background:#4ade80;box-shadow:0 0 6px #4ade80b3}.addr-x{font-size:.65rem;opacity:.5}.btn-connect{display:flex;align-items:center;gap:6px;padding:8px 18px;background:linear-gradient(135deg,var(--gold),#a07830);border:none;border-radius:var(--radius-sm);color:#000;font:700 .78rem/1 var(--font);letter-spacing:1px;cursor:pointer;transition:all .2s;box-shadow:0 0 20px var(--gold-glow)}.btn-connect:hover{transform:translateY(-1px);box-shadow:0 4px 24px var(--gold-glow)}.btn-connect:disabled{opacity:.6;cursor:not-allowed;transform:none}.page{animation:fadeUp .35s ease}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.page-header{margin-bottom:32px}.page-title{font-size:1.8rem;font-weight:800;color:var(--text);margin-bottom:6px}.page-sub{font-size:.9rem;color:var(--text2)}.nft-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}.nft-card{position:relative;border-radius:var(--radius);background:var(--bg2);border:1px solid var(--border);overflow:hidden;transition:transform .25s,box-shadow .25s}.nft-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #00000080,0 0 0 1px var(--rc, rgba(255,255,255,.1))}.nft-card.legendary{border-color:#ffb80033}.nft-card.rare{border-color:#a78bfa33}.nft-card.common{border-color:#67e8f926}.nft-card.is-staked{box-shadow:0 0 20px #7850f040}.card-shine{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;background:linear-gradient(135deg,rgba(255,255,255,.03) 0%,transparent 60%)}.card-rarity{position:absolute;top:12px;left:12px;z-index:2;font:700 .6rem/1 var(--mono);letter-spacing:2px;padding:4px 9px;border-radius:20px;background:#0000008c;border:1px solid currentColor}.staked-pill{position:absolute;top:12px;right:12px;z-index:2;font:700 .6rem/1 var(--mono);letter-spacing:1px;padding:4px 9px;background:#7850f040;border:1px solid rgba(120,80,240,.5);border-radius:20px;color:#c4b5fd}.card-img-wrap{position:relative;height:200px;overflow:hidden;background:var(--bg3)}.card-img{width:100%;height:100%;object-fit:cover;display:block}.card-img-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg3),color-mix(in srgb,var(--cc, #7850f0) 12%,var(--bg3)))}.card-flag-xl{font-size:5rem;filter:drop-shadow(0 4px 12px rgba(0,0,0,.5))}.card-img-vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent 50%,var(--bg2) 100%)}.card-body{padding:16px}.card-title{display:flex;align-items:center;gap:8px;margin-bottom:6px}.flag-sm{font-size:1.1rem}.card-name{font:700 1rem/1 var(--font)}.card-desc{font-size:.8rem;color:var(--text2);margin-bottom:12px;line-height:1.45}.card-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.cs{background:var(--bg3);border-radius:var(--radius-sm);padding:8px;text-align:center}.cs-l{display:block;font:600 .55rem/1 var(--mono);color:var(--text3);letter-spacing:1px;margin-bottom:4px}.cs-v{display:block;font:700 .82rem/1 var(--mono)}.cs-v.cyan{color:var(--cyan)}.cs-v.gold{color:var(--gold)}.fp{margin-bottom:12px}.fp-row{display:flex;justify-content:space-between;font:500 .65rem/1 var(--mono);color:var(--text3);margin-bottom:6px}.fp-track{height:4px;background:#ffffff12;border-radius:2px;overflow:hidden}.fp-fill{height:100%;background:linear-gradient(to right,var(--purple),var(--gold));border-radius:2px;transition:width .6s}.claimed-lbl{color:var(--gold);opacity:.8}.claimable{background:#c8a84b12;border:1px solid rgba(200,168,75,.2);border-radius:var(--radius-sm);padding:12px;margin-bottom:12px;text-align:center}.cl-label{font:700 .6rem/1 var(--mono);letter-spacing:2px;color:var(--text3);margin-bottom:6px}.cl-amt{font:800 1.4rem/1 var(--mono);color:var(--gold);margin-bottom:10px}.cl-amt span{font-size:.8rem;font-weight:600;opacity:.7}.card-cta{display:flex;flex-direction:column;gap:8px}.btn-buy,.btn-stake,.btn-unstake,.btn-claim{width:100%;padding:11px;border:none;border-radius:var(--radius-sm);font:700 .78rem/1 var(--font);letter-spacing:1px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px}.btn-buy{background:linear-gradient(135deg,var(--cyan),#0e7490);color:#000}.btn-buy:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #22d3ee4d}.btn-stake{background:linear-gradient(135deg,var(--purple),#5b21b6);color:#fff}.btn-stake:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #7850f059}.btn-unstake{background:#f871711f;border:1px solid rgba(248,113,113,.3);color:#f87171}.btn-unstake:hover:not(:disabled){background:#f8717133}.btn-claim{background:linear-gradient(135deg,var(--gold),#a07830);color:#000;box-shadow:0 0 16px var(--gold-glow)}.btn-claim:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 24px var(--gold-glow)}.btn-buy:disabled,.btn-stake:disabled,.btn-unstake:disabled,.btn-claim:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.btn-explorer{display:block;text-align:center;padding:7px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text3);font:500 .7rem/1 var(--mono);text-decoration:none;transition:all .2s}.btn-explorer:hover{color:var(--text2);border-color:#ffffff26}.owned-pill,.not-owned{padding:10px;border-radius:var(--radius-sm);text-align:center;font:700 .75rem/1 var(--mono);letter-spacing:1px}.owned-pill{background:#4ade8014;border:1px solid rgba(74,222,128,.25);color:#4ade80}.not-owned{background:var(--bg3);color:var(--text3)}.connect-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 24px;gap:20px}.cp-orb{position:relative;width:96px;height:96px;display:flex;align-items:center;justify-content:center}.cp-r{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px solid rgba(200,168,75,.3);animation:pulse 2.4s ease-in-out infinite}.cp-r.r2{top:-12px;right:-12px;bottom:-12px;left:-12px;border-color:#c8a84b26;animation-delay:.8s}@keyframes pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.08);opacity:1}}.cp-icon{font-size:2.5rem;position:relative;z-index:1}.cp-title{font:800 1.6rem/1 var(--font)}.cp-msg{font-size:.95rem;color:var(--text2);max-width:360px;line-height:1.5}.btn-connect-lg{display:flex;align-items:center;gap:8px;padding:14px 32px;background:linear-gradient(135deg,var(--gold),#a07830);border:none;border-radius:var(--radius-sm);color:#000;font:700 .9rem/1 var(--font);letter-spacing:2px;cursor:pointer;transition:all .25s;box-shadow:0 0 30px var(--gold-glow)}.btn-connect-lg:hover{transform:translateY(-2px);box-shadow:0 6px 32px var(--gold-glow)}.btn-connect-lg:disabled{opacity:.6;cursor:not-allowed;transform:none}.farm-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:32px}.fs-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;text-align:center}.fs-label{font:700 .6rem/1 var(--mono);letter-spacing:2px;color:var(--text3);margin-bottom:10px}.fs-value{font:800 1.6rem/1 var(--mono);color:var(--text)}.fs-value.gold{color:var(--gold)}.fs-value span{font-size:.85rem;font-weight:600;opacity:.7}.leaderboard{display:flex;flex-direction:column;gap:32px}.lb-top3{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.lb-podium{position:relative;background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);padding:28px 20px 20px;text-align:center;transition:transform .2s}.lb-podium:hover{transform:translateY(-3px)}.lb-podium.rank-1{border-color:#ffb8004d;background:#ffb8000a}.lb-podium.rank-2{border-color:#c0c0c040}.lb-podium.rank-3{border-color:#b08d5740}.lb-podium.is-me{box-shadow:0 0 0 2px var(--gold)}.lb-medal{font-size:2.2rem;margin-bottom:10px}.lb-addr{font:600 .8rem/1 var(--mono);color:var(--text2);margin-bottom:10px}.lb-geo{font:800 1.3rem/1 var(--mono);margin-bottom:4px}.lb-geo-label{font-size:.65rem;color:var(--text3);letter-spacing:1px;margin-bottom:8px}.lb-nfts{font:500 .7rem/1 var(--mono);color:var(--text3)}.gold{color:var(--gold)}.lb-you-badge{position:absolute;top:10px;right:10px;background:var(--gold);color:#000;font:800 .55rem/1 var(--mono);letter-spacing:1px;padding:3px 7px;border-radius:20px}.lb-table-wrap{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.lb-table{width:100%;border-collapse:collapse}.lb-table th{padding:12px 16px;font:700 .65rem/1 var(--mono);letter-spacing:2px;color:var(--text3);text-transform:uppercase;background:var(--bg3);text-align:left;border-bottom:1px solid var(--border)}.lb-table td{padding:12px 16px;font:500 .8rem/1 var(--mono);color:var(--text2);border-bottom:1px solid var(--border)}.lb-table tr:last-child td{border-bottom:none}.lb-table tr:hover td{background:#ffffff05}.lb-table tr.is-me td{background:#c8a84b0f}.lb-rank{color:var(--text3);font-weight:700}.lb-addr-cell{font-family:var(--mono)}.lb-you-sm{color:var(--gold);font-weight:700;margin-left:6px;font-size:.65rem}.empty-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:80px 24px;text-align:center}.empty-icon{font-size:3rem}.empty-state h3{font:700 1.2rem/1 var(--font);color:var(--text)}.empty-state p{font-size:.9rem;color:var(--text2)}.toast{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border:1px solid;border-radius:var(--radius);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);min-width:300px;max-width:480px;box-shadow:0 8px 32px #0006;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(120%);opacity:0}to{transform:none;opacity:1}}.toast-l{display:flex;align-items:center;gap:10px;flex:1}.toast-msg{font:500 .82rem/1.3 var(--font)}.toast-r{display:flex;align-items:center;gap:8px}.toast-link{font:600 .72rem/1 var(--mono);color:var(--gold);text-decoration:none;padding:4px 8px;border:1px solid rgba(200,168,75,.3);border-radius:6px}.toast-link:hover{background:#c8a84b1a}.toast-x{background:transparent;border:none;cursor:pointer;color:var(--text3);font-size:1rem;line-height:1;padding:2px 6px;border-radius:4px}.toast-x:hover{color:var(--text)}.spin-sm,.toast-spin{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.15);border-top-color:currentColor;border-radius:50%;animation:spin .7s linear infinite}.spin-lg{display:inline-block;width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}@media (max-width: 768px){.header{flex-wrap:wrap;height:auto;padding:12px 16px;gap:10px}.header-nav{order:3;width:100%;justify-content:space-around}.nav-label{display:none}.nav-icon{font-size:1.1rem}.nav-tab{padding:10px 16px}.brand-sub,.net-toggle{display:none}.main-content{padding:20px 16px 60px}.nft-grid,.lb-top3{grid-template-columns:1fr}.toast{left:16px;right:16px;min-width:unset}}
