:root{--bg-dark:#0b0f19;--bg-card:#141a2b99;--bg-card-hover:#1e273dcc;--text-main:#f8fafc;--text-muted:#94a3b8;--royal-blue:#4169e1;--royal-blue-hover:#3154c4;--royal-blue-glow:#4169e166;--success:#10b981;--danger:#ef4444;--font-inter:"Inter", system-ui, sans-serif}*{box-sizing:border-box}body{font-family:var(--font-inter);background-color:var(--bg-dark);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at top,#4169e11a 0%,#0000 40%);background-attachment:fixed;min-height:100vh;margin:0}h1,h2,h3,h4,p{margin:0}header{-webkit-backdrop-filter:blur(10px);z-index:50;border-bottom:1px solid #ffffff0d;padding:1.5rem 2rem;position:sticky;top:0}@media (max-width:768px){header{flex-direction:column;gap:1rem;padding:1rem;top:0}}.logo{letter-spacing:-.5px;background:linear-gradient(to right, #fff, var(--royal-blue));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;align-items:center;font-size:1.5rem;font-weight:700;display:flex}.logo svg,.registry-logo svg{stroke:#fff;filter:drop-shadow(0 0 8px #4169e199);flex-shrink:0}.hero{text-align:center;padding:5rem 2rem 4rem}@media (max-width:480px){.hero{padding:3rem 1.5rem 2rem}}.hero h1{letter-spacing:-1px;margin-bottom:1rem;font-size:3.5rem;font-weight:800}@media (max-width:768px){.hero h1{font-size:2.5rem}}.hero p{color:var(--text-muted);max-width:600px;margin:0 auto;font-size:1.25rem}@media (max-width:480px){.hero p{font-size:1.1rem}}.pricing-section{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:2rem;max-width:1200px;margin:0 auto;padding:2rem;display:grid}@media (max-width:480px){.pricing-section{grid-template-columns:1fr;gap:1.5rem;padding:1rem}}.tier-card{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);border:1px solid #ffffff0d;border-radius:24px;flex-direction:column;gap:2rem;padding:2.5rem 2rem;transition:transform .3s,box-shadow .3s,border-color .3s;display:flex;position:relative}@media (max-width:480px){.tier-card{padding:2rem 1.5rem}}.tier-card:hover{border-color:#ffffff1a;transform:translateY(-5px);box-shadow:0 20px 40px -10px #00000080}.tier-card.premium{border-color:var(--royal-blue);box-shadow:0 0 40px var(--royal-blue-glow)}.module-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1rem;display:grid}.module-card{cursor:pointer;background:var(--bg-card);border:1px solid #ffffff0d;border-radius:20px;flex-direction:column;justify-content:flex-end;height:220px;padding:1.5rem;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.module-card:before{content:"";z-index:0;opacity:.6;filter:saturate(.8)brightness(.8);background-position:50%;background-size:cover;transition:transform .6s;position:absolute;top:0;bottom:0;left:0;right:0}.module-card:hover:before{opacity:.8;filter:saturate(1.2)brightness();transform:scale(1.1)}.module-card:after{content:"";z-index:1;background:linear-gradient(#0000 0%,#0b0f1966 50%,#0b0f19f2 100%);position:absolute;top:0;bottom:0;left:0;right:0}.module-card:hover{border-color:var(--royal-blue);box-shadow:0 15px 30px #0006, 0 0 20px var(--royal-blue-glow);transform:translateY(-8px)}.module-card .module-content-overlay{z-index:2;flex-direction:column;gap:.5rem;width:100%;display:flex;position:relative}.module-card .module-icon-badge{-webkit-backdrop-filter:blur(10px);z-index:2;background:#ffffff1a;border:1px solid #ffffff1a;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;transition:all .3s;display:flex;position:absolute;top:1.2rem;right:1.2rem}.module-card:hover .module-icon-badge{background:var(--royal-blue);border-color:#fff3;transform:rotate(10deg)}.module-card.locked{cursor:not-allowed;filter:grayscale();opacity:.7}.module-card.locked:after{background:#000000b3}.module-usage-pill{letter-spacing:.5px;color:#fff;text-transform:uppercase;background:#ffffff1a;border-radius:8px;width:-moz-fit-content;width:fit-content;padding:.25rem .6rem;font-size:.7rem;font-weight:700}.popular-badge{background:var(--royal-blue);color:#fff;letter-spacing:.5px;text-transform:uppercase;z-index:10;box-shadow:0 4px 15px var(--royal-blue-glow);border-radius:12px;padding:4px 12px;font-size:.75rem;font-weight:600;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.tier-header{text-align:center}.tier-header h2{margin-bottom:.5rem;font-size:1.75rem;font-weight:700}.tier-price{color:#fff;margin-bottom:.2rem;font-size:3rem;font-weight:800}.tier-price span{color:var(--text-muted);font-size:1rem;font-weight:500}.tier-price-yr{color:var(--royal-blue);margin-bottom:.2rem;font-size:.9rem;font-weight:600}.tier-btn{cursor:pointer;border-radius:12px;width:100%;padding:1rem;font-family:inherit;font-size:1rem;font-weight:600;transition:all .2s}.tier-btn.outline{color:var(--text-main);background:0 0;border:1px solid #fff3}.tier-btn.outline:hover{background:#ffffff0d}.tier-btn.solid{background:var(--royal-blue);color:#fff;box-shadow:0 4px 15px var(--royal-blue-glow);border:none}.tier-btn.solid:hover{background:var(--royal-blue-hover);box-shadow:0 6px 20px var(--royal-blue-glow)}.module-grid{flex-direction:column;gap:.8rem;display:flex}.module-card{background:#0003;border:1px solid #ffffff08;border-radius:16px;align-items:center;gap:1rem;padding:1.25rem 1rem;transition:background .2s;display:flex}.module-card:hover{background:#ffffff08}.module-icon{width:44px;height:44px;color:var(--text-main);background:#ffffff08;border-radius:12px;justify-content:center;align-items:center;display:flex}.module-info{flex:1}.module-name{margin-bottom:.25rem;font-size:.95rem;font-weight:600}.module-status{align-items:center;gap:.35rem;font-size:.82rem;display:flex}.status-full{color:var(--success);font-weight:700}.status-limited{color:#fbbf24;font-weight:700}.status-locked{color:var(--danger);font-weight:700}@keyframes pulse-glow{0%{box-shadow:0 0 20px var(--royal-blue-glow)}50%{box-shadow:0 0 50px var(--royal-blue-glow)}to{box-shadow:0 0 20px var(--royal-blue-glow)}}.animate-pulse-glow{animation:3s ease-in-out infinite pulse-glow}.sync-overlay-blur{-webkit-backdrop-filter:blur(15px);background:radial-gradient(circle at center, #0b0f19cc 0%, var(--bg-dark) 100%)}@keyframes shimmer-banner{0%{background-position:-200%}to{background-position:200%}}.plan-banner{text-align:center;letter-spacing:.15em;text-transform:uppercase;color:#fff;z-index:1000;justify-content:center;align-items:center;gap:.8rem;width:100%;height:32px;font-size:.75rem;font-weight:900;display:flex;position:sticky;top:0}.plan-banner-free{-webkit-backdrop-filter:blur(10px);color:var(--text-muted);background:#ffffff0d;border-bottom:1px solid #ffffff1a}.plan-banner-basic{color:#111827;background:linear-gradient(90deg,#a1a1aa 0%,#f4f4f5 50%,#a1a1aa 100%) 0 0/200%;border-bottom:1px solid #fff3;animation:4s linear infinite shimmer-banner;box-shadow:0 2px 10px #a1a1aa33}.plan-banner-premium{color:#43302b;background:linear-gradient(90deg,#d4af37 0%,#fff7d6 50%,#d4af37 100%) 0 0/200%;border-bottom:1px solid #ffffff4d;animation:3s linear infinite shimmer-banner;box-shadow:0 4px 15px #d4af374d}.billing-toggle-container button:hover{opacity:.8;color:#fff!important}.billing-toggle-container button:active{transform:scale(.95)}@keyframes pulse-success{0%{transform:scale(1);box-shadow:0 0 #05966966}70%{transform:scale(1.05);box-shadow:0 0 0 10px #05966900}to{transform:scale(1);box-shadow:0 0 #05966900}}.billing-toggle-container span{animation:2s infinite pulse-success}.stats-bar-unified{background:#ffffff08;border:1px solid #ffffff0d;border-radius:20px;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem;padding:.4rem 1rem;display:flex}@media (max-width:768px){.stats-bar-unified{border-radius:12px;justify-content:space-between;width:100%;padding:.5rem}}.difficulty-gating-grid{grid-template-columns:1fr 1fr;gap:2rem;display:grid}@media (max-width:600px){.difficulty-gating-grid{grid-template-columns:1fr;gap:1.25rem}.difficulty-gating-grid .option-btn{padding:1.5rem!important}}.stat-box-item{border-right:1px solid #ffffff1a;flex-direction:column;align-items:center;padding:0 .75rem;display:flex}.stat-box-item:last-child{border-right:none}@media (max-width:768px){.stat-box-item{flex:1;padding:0 .4rem}}
