:root{--bg: #0b0f17;--card-bg: rgba(18, 26, 40, .95);--card-border: rgba(255, 255, 255, .08);--text: #e7edf7;--muted: #94a3b8;--primary: #38bdf8;--secondary: #3b82f6;--accent: #38bdf8;--accent-glow: rgba(56, 189, 248, .15);--shop-gold: #ffd700;--header-bg: rgba(11, 15, 23, .9);--bg-grad-1: rgba(56, 189, 248, .1);--bg-grad-2: rgba(59, 130, 246, .05);--brand-shadow: rgba(56, 189, 248, .3);--font-stack: system-ui, -apple-system, sans-serif}*{box-sizing:border-box}body{margin:0;background-color:var(--bg);color:var(--text);font-family:var(--font-stack);font-size:15px;line-height:1.6;min-height:100vh;display:flex;flex-direction:column;background-image:radial-gradient(at 0% 0%,var(--bg-grad-1) 0px,transparent 50%),radial-gradient(at 100% 0%,var(--bg-grad-2) 0px,transparent 50%);background-attachment:fixed}a{text-decoration:none;color:inherit;transition:color .2s}a:visited{color:inherit!important}a:hover{color:var(--accent)}.wrap{width:min(1200px,94%);margin:0 auto}.hidden{display:none!important}.stack{display:flex;flex-direction:column;gap:20px}header{position:sticky;top:0;z-index:1000;background:var(--header-bg);backdrop-filter:blur(12px);border-bottom:1px solid var(--card-border);padding:12px 0}.nav-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-weight:900;font-size:18px;color:var(--text)}.brand-logo{width:36px;height:36px;background:linear-gradient(135deg,var(--accent),var(--secondary));border-radius:8px;color:#fff;display:grid;place-items:center;box-shadow:0 4px 12px var(--brand-shadow)}.nav-items{display:flex;gap:10px}.nav-link{display:block;padding:8px 16px;border:1px solid var(--card-border);border-radius:8px;color:var(--muted);font-size:13px;font-weight:600;transition:all .2s}.nav-link:hover{border-color:var(--accent);background:#ffffff0f;color:#fff}main{flex:1;padding:30px 0}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;padding:20px;backdrop-filter:blur(10px)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .2s;font-size:.9rem;text-decoration:none}.btn-primary,.btn-blue,.btn-royal,.btn-red,.btn-crimson{background:var(--secondary);color:#fff}.btn-primary:hover,.btn-blue:hover,.btn-royal:hover,.btn-red:hover,.btn-crimson:hover{transform:translateY(-2px);box-shadow:0 4px 15px #00000040}.btn-outline{background:transparent;border:1px solid var(--accent);color:var(--accent)}.btn-outline:hover{background:#ffffff0f;border-color:var(--primary);color:#fff}.btn-icon{width:42px;height:42px;padding:0;background:transparent;border:1px solid var(--card-border);color:var(--muted);border-radius:8px}.btn-icon:hover{background:#ffffff0d;color:#fff;border-color:var(--muted)}.btn-pill{background:#0000004d;border:1px solid var(--card-border);color:var(--muted);padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-pill:hover,.btn-pill.active{background:var(--secondary);color:#fff;border-color:var(--secondary)}.map-card{background:var(--bg);border:1px solid var(--card-border);border-radius:16px;overflow:hidden;margin-bottom:40px;position:relative}.region-header{padding:15px 20px;border-bottom:1px solid var(--card-border);background:#ffffff05;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.region-list{display:flex;gap:8px;flex-wrap:wrap}#shopMap{height:450px;width:100%;z-index:1}.map-legend{position:absolute;bottom:20px;left:20px;z-index:999;background:#0b0f17f2;padding:10px 15px;border-radius:8px;border:1px solid var(--card-border);font-size:12px;color:#fff}.legend-item{display:flex;align-items:center;gap:8px;margin-bottom:4px}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.dot.sponsor{background:var(--shop-gold);box-shadow:0 0 8px var(--shop-gold)}.dot.local{background:var(--secondary)}.shop-card{position:relative;display:flex;flex-direction:column;height:100%;transition:transform .2s,border-color .2s}.shop-card:hover{transform:translateY(-4px);border-color:var(--secondary)}.card-link-overlay{position:absolute;inset:0 0 60px;z-index:5}.card-actions{display:flex;gap:10px;margin-top:auto;padding-top:15px;position:relative;z-index:10}.partner-glow{border-color:var(--shop-gold)!important;box-shadow:0 0 15px #ffd7001a}.marquee-wrapper{position:relative;overflow:hidden;margin:40px 0;mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent);border-block:1px solid var(--card-border);padding:20px 0;background:#0003}.marquee-track{display:flex;width:max-content;animation:scroll 40s linear infinite}.marquee-item{font-size:20px;font-weight:900;white-space:nowrap;margin-right:60px}@keyframes scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.tm{font-size:.5em;vertical-align:super;color:#fff;opacity:.6;margin-left:2px}.brand-pkmn{color:#ffcb05}.brand-mtg{color:#f97316}.brand-ygo{color:#e11d48}.brand-lorcana{color:#a855f7}.brand-op{color:#0ea5e9}.brand-sports{color:#22c55e}.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:40px}.grid-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.tag{padding:4px 10px;border-radius:4px;background:#ffffff0d;border:1px solid var(--card-border);font-size:12px;color:var(--muted)}footer{margin-top:60px;border-top:1px solid var(--card-border);padding:40px 0;background:#0003}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px}.footer-link{display:block;color:var(--muted);margin-bottom:8px;font-size:14px;transition:color .2s}.footer-link:hover{color:var(--accent)}@media(max-width:800px){.nav-row{flex-direction:column;gap:10px}.content-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}.disclaimer-banner{border:1px solid #ffd700;background:#ffd7000d;color:var(--muted);padding:16px;border-radius:8px;margin-bottom:30px;display:flex;gap:15px;align-items:flex-start;font-size:.95rem;line-height:1.6}.disclaimer-banner strong{color:gold}.disclaimer-banner .icon{font-size:1.4rem;flex-shrink:0;padding-top:2px}:root{{cssVars}}
