:root{
  --pur:#a855f7;
  --pur-bright:#c77dff;
  --pur-deep:#7b2cbf;
  --ink:#0a0410;
  --grn:#4ade80;
  --fd:'Chakra Petch',system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Chakra Petch',system-ui,sans-serif;background:#0a0410;color:#e9d5ff;min-height:100vh;overflow-x:hidden}

.bg{position:fixed;inset:0;z-index:0;overflow:hidden;
  background:
    radial-gradient(ellipse 120% 90% at 50% 8%, rgba(123,44,191,.38), transparent 55%),
    radial-gradient(ellipse 100% 80% at 50% 108%, rgba(168,85,247,.30), transparent 55%),
    radial-gradient(circle at 50% 45%, #250b45 0%, #16072c 42%, #0a0410 78%)}
.blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.5;mix-blend-mode:screen;
  background:radial-gradient(circle,var(--pur),transparent 68%);animation:drift 22s ease-in-out infinite}
.blob.b1{width:46vmax;height:46vmax;left:-12vmax;top:-10vmax}
.blob.b2{width:38vmax;height:38vmax;right:-10vmax;bottom:-12vmax;animation-delay:-8s;background:radial-gradient(circle,#8b5cf6,transparent 68%)}
.blob.b3{width:26vmax;height:26vmax;left:55%;top:60%;animation-delay:-14s;opacity:.35}
@keyframes drift{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(4vmax,-3vmax) scale(1.08)}66%{transform:translate(-3vmax,3vmax) scale(.95)}}

#embers{position:fixed;inset:0;z-index:1;pointer-events:none}

.cubes{position:fixed;inset:0;z-index:1;pointer-events:none;perspective:900px}
.cube{position:absolute;width:var(--s);height:var(--s);transform-style:preserve-3d;opacity:.5;animation:floatspin var(--t) ease-in-out infinite}
.cube .f{position:absolute;width:var(--s);height:var(--s);background:linear-gradient(145deg,rgba(168,85,247,.5),rgba(60,20,100,.5));border:1px solid rgba(199,125,255,.5);box-shadow:inset 0 0 12px rgba(199,125,255,.35)}
.cube .f1{transform:translateZ(calc(var(--s)/2))}
.cube .f2{transform:rotateY(180deg) translateZ(calc(var(--s)/2))}
.cube .f3{transform:rotateY(90deg)  translateZ(calc(var(--s)/2))}
.cube .f4{transform:rotateY(-90deg) translateZ(calc(var(--s)/2))}
.cube .f5{transform:rotateX(90deg)  translateZ(calc(var(--s)/2))}
.cube .f6{transform:rotateX(-90deg) translateZ(calc(var(--s)/2))}
@keyframes floatspin{0%,100%{transform:translateY(0) rotateX(0) rotateY(0)}50%{transform:translateY(-34px) rotateX(180deg) rotateY(180deg)}}

nav.top{position:fixed;top:0;left:0;right:0;z-index:10;background:rgba(10,4,16,.72);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(199,125,255,.18)}
nav.top .row{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:12px 22px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand img{width:40px;height:40px;filter:drop-shadow(0 3px 10px rgba(123,44,191,.6))}
.brand span{font-family:var(--fd);font-weight:700;font-size:15px;color:#fff;letter-spacing:2px}
.brand span i{font-style:normal;color:var(--pur-bright)}
.navlinks{display:flex;align-items:center;gap:22px}
.navlinks a{color:#c9b3e6;text-decoration:none;font-weight:600;font-size:14.5px;letter-spacing:.4px;transition:color .2s}
.navlinks a:hover,.navlinks a.on{color:#fff;text-shadow:0 0 14px rgba(199,125,255,.8)}
.navlinks a.dc{color:#fff;background:linear-gradient(145deg,var(--pur),var(--pur-deep));border:1px solid rgba(199,125,255,.6);border-radius:11px;padding:9px 16px;box-shadow:0 5px 16px rgba(123,44,191,.4);transition:all .2s}
.navlinks a.dc:hover{filter:brightness(1.12);transform:translateY(-1px)}

.wrap{position:relative;z-index:2;max-width:1100px;margin:0 auto;padding:0 22px}
.badge{display:inline-flex;align-items:center;gap:9px;font-family:var(--fd);font-weight:700;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:var(--pur-bright);background:rgba(168,85,247,.10);border:1px solid rgba(199,125,255,.45);border-radius:999px;padding:10px 18px;box-shadow:0 0 22px rgba(168,85,247,.25) inset, 0 0 20px rgba(168,85,247,.15)}
.badge .dot{width:9px;height:9px;border-radius:2px;background:var(--pur-bright);box-shadow:0 0 10px var(--pur-bright);animation:blink 1.6s steps(1) infinite}
@keyframes blink{50%{opacity:.25}}

h1{font-size:clamp(30px,5.5vw,56px);font-weight:700;letter-spacing:1px;line-height:1.1;color:#fff;text-shadow:0 0 26px rgba(168,85,247,.6),0 2px 0 rgba(0,0,0,.4)}
h2.sec{font-size:clamp(24px,3.6vw,38px);font-weight:700;color:#fff;letter-spacing:.5px;text-shadow:0 0 22px rgba(168,85,247,.5)}
.accent{color:var(--pur-bright)}
.lead{max-width:600px;font-size:clamp(15px,2.2vw,18px);color:#c9b3e6;font-weight:500;line-height:1.65}
.divider{width:120px;height:1px;margin:0 auto;background:linear-gradient(90deg,transparent,rgba(199,125,255,.7),transparent)}
.seclabel{font-family:var(--fd);font-weight:700;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--pur-bright)}

.panel{background:rgba(20,8,40,.6);backdrop-filter:blur(6px);border:1px solid rgba(199,125,255,.28);border-radius:18px;box-shadow:0 0 30px rgba(123,44,191,.12);transition:all .25s ease}
.panel:hover{border-color:rgba(199,125,255,.6);background:rgba(45,18,80,.6);transform:translateY(-4px);box-shadow:0 14px 40px rgba(123,44,191,.4)}

.btn-p{display:inline-flex;align-items:center;gap:9px;cursor:pointer;text-decoration:none;font-family:'Chakra Petch',sans-serif;font-weight:700;font-size:15.5px;color:#fff;background:linear-gradient(145deg,var(--pur),var(--pur-deep));border:1px solid rgba(199,125,255,.6);border-radius:12px;padding:13px 22px;transition:all .2s ease;box-shadow:0 6px 18px rgba(123,44,191,.4)}
.btn-p:hover{filter:brightness(1.12);transform:translateY(-1px)}
.btn-p:active{transform:translateY(0)}
.btn-p.done{background:linear-gradient(145deg,#4ade80,#22a559);border-color:rgba(74,222,128,.7)}
.btn-o{display:inline-flex;align-items:center;gap:9px;cursor:pointer;text-decoration:none;font-weight:700;font-size:15.5px;color:#e4d4f5;background:rgba(20,8,40,.6);border:1px solid rgba(199,125,255,.4);border-radius:12px;padding:13px 22px;transition:all .2s}
.btn-o:hover{border-color:rgba(199,125,255,.8);background:rgba(45,18,80,.7);transform:translateY(-1px)}

.status{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:14px;letter-spacing:.3px;color:#bff5cf;background:rgba(74,222,128,.10);border:1px solid rgba(74,222,128,.4);border-radius:999px;padding:9px 16px}
.status.off{color:#f3b8b8;background:rgba(248,113,113,.10);border-color:rgba(248,113,113,.4)}
.status.off .sdot{background:#f87171;box-shadow:0 0 10px #f87171;animation:none}
.sdot{width:10px;height:10px;border-radius:50%;background:var(--grn);box-shadow:0 0 10px var(--grn),0 0 4px var(--grn);animation:livepulse 1.6s ease-in-out infinite}
@keyframes livepulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.82)}}

.chost{display:inline-flex;align-items:center;gap:16px;text-decoration:none;padding:18px 32px;border-radius:18px;border:1px solid rgba(199,125,255,.32);background:rgba(20,8,40,.6);backdrop-filter:blur(6px);color:#e4d4f5;font-weight:600;font-size:19px;transition:all .25s ease;box-shadow:0 0 30px rgba(123,44,191,.15)}
.chost:hover{border-color:rgba(199,125,255,.75);background:rgba(45,18,80,.75);transform:translateY(-3px);box-shadow:0 14px 40px rgba(123,44,191,.45)}
.chost img{width:44px;height:auto;display:block;filter:drop-shadow(0 4px 12px rgba(123,44,191,.5))}
.chost b{font-size:22px;color:#fff}
.chost .c{color:var(--pur-bright)}

footer.site{position:relative;z-index:2;border-top:1px solid rgba(199,125,255,.16);margin-top:90px;padding:34px 0 26px}
footer.site .row{max-width:1100px;margin:0 auto;padding:0 22px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px}
footer.site a{color:#9b86bd;text-decoration:none;transition:color .2s}
footer.site a:hover{color:var(--pur-bright)}
.foot-note{margin-top:20px;text-align:center;font-size:12px;color:#7a679a;letter-spacing:.3px}

@keyframes fadeUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.fu{animation:fadeUp .8s cubic-bezier(.16,1,.3,1) both}

@media (max-width:640px){
  .cube{display:none}
  .navlinks{gap:14px}
  .navlinks a:not(.dc){font-size:13px}
}
@media (prefers-reduced-motion:reduce){
  .blob,.cube,.badge .dot,.sdot{animation:none}
}

.hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:22px;padding:110px 20px 60px;position:relative;z-index:2}
.logo-wrap{position:relative;display:flex;align-items:center;justify-content:center;animation:bob 6s ease-in-out infinite}
.logo-wrap::before{content:"";position:absolute;width:78%;height:78%;border-radius:50%;background:radial-gradient(circle,rgba(168,85,247,.55),transparent 62%);filter:blur(40px);animation:pulse 4.5s ease-in-out infinite;z-index:-1}
.logo-hero{width:min(380px,72vw);height:auto;display:block;filter:drop-shadow(0 12px 40px rgba(123,44,191,.65))}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes pulse{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:.9;transform:scale(1.12)}}

.iprow{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap;justify-content:center}
.ip{font-family:'Chakra Petch',monospace;font-size:clamp(18px,3vw,24px);font-weight:700;color:#fff;background:rgba(20,8,40,.7);border:1px solid rgba(199,125,255,.4);border-radius:12px;padding:12px 20px;letter-spacing:.5px;box-shadow:0 0 22px rgba(168,85,247,.18) inset}
.clabel{font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:#a58cc9;font-weight:600}

.grid4{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-top:44px}
.feat{padding:26px 24px}
.feat h3{color:#fff;font-size:19px;margin:14px 0 8px;letter-spacing:.4px}
.feat p{color:#b9a3d9;font-size:14.5px;line-height:1.6}
.feat .ic{width:52px;height:52px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:rgba(168,85,247,.14);border:1px solid rgba(199,125,255,.4);box-shadow:0 0 18px rgba(168,85,247,.25) inset}
.feat .ic svg{width:26px;height:26px;stroke:var(--pur-bright)}

.steps{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:44px}
.step{padding:28px 24px;text-align:center}
.stepnum{font-family:var(--fd);font-weight:700;font-size:20px;color:#fff;width:52px;height:52px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:linear-gradient(145deg,var(--pur),var(--pur-deep));border:1px solid rgba(199,125,255,.6);box-shadow:0 6px 18px rgba(123,44,191,.45)}
.step h3{color:#fff;font-size:18px;margin-bottom:8px}
.step p{color:#b9a3d9;font-size:14.5px;line-height:1.6}
.step code{color:var(--pur-bright);font-weight:700}

section.blk{position:relative;z-index:2;padding:84px 0 10px;text-align:center}

.vote-card{display:flex;flex-direction:column;align-items:center;gap:12px;text-decoration:none;text-align:center;padding:32px 24px}
.vote-card img{height:56px;width:auto;max-width:100%;object-fit:contain;border-radius:10px;filter:drop-shadow(0 4px 14px rgba(123,44,191,.45))}
.vote-card h3{color:#fff;font-size:19px;letter-spacing:.4px}
.vote-card p{color:#b9a3d9;font-size:14.5px;line-height:1.6}
.vote-card .btn-p{margin-top:6px}

.vote-rewards{max-width:520px;margin:34px auto 0;padding:26px 28px;text-align:left}
.vote-rewards h3{color:#fff;font-size:19px;letter-spacing:.4px;text-align:center;margin-bottom:18px}
.vote-rewards ul{list-style:none;display:flex;flex-direction:column;gap:12px}
.vote-rewards li{display:flex;align-items:center;gap:13px;color:#e4d4f5;font-size:16px;font-weight:600}
.vote-rewards .ic{flex:0 0 auto;width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(168,85,247,.14);border:1px solid rgba(199,125,255,.4);box-shadow:0 0 16px rgba(168,85,247,.22) inset;color:var(--pur-bright)}
.vote-rewards .ic svg{width:21px;height:21px}
.vote-cta{max-width:640px;margin:34px auto 0;padding:28px;display:flex;flex-direction:column;align-items:center;gap:22px}
.vote-cta-rewards{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 26px}
.vote-cta-rewards>span{display:inline-flex;align-items:center;gap:11px;color:#e4d4f5;font-size:16px;font-weight:600}
.vote-cta-rewards .ic{flex:0 0 auto;width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:rgba(168,85,247,.14);border:1px solid rgba(199,125,255,.4);box-shadow:0 0 14px rgba(168,85,247,.22) inset;color:var(--pur-bright)}
.vote-sites-title{margin-top:44px;color:#fff;font-size:21px;letter-spacing:.5px;text-shadow:0 0 18px rgba(168,85,247,.5)}
.vote-thanks{margin-top:30px;color:#b9a3d9;font-size:15.5px;font-weight:600;letter-spacing:.3px}

.mail-card{padding:26px 22px;text-align:center}
.mail-card a{display:block;color:#fff;font-weight:700;font-size:15px;margin-top:8px;text-decoration:none;overflow-wrap:break-word;transition:color .2s}
.mail-card a:hover{color:var(--pur-bright)}

.tymhero{position:relative;z-index:2;text-align:center;padding:150px 20px 30px;display:flex;flex-direction:column;align-items:center;gap:18px}
section.grp{position:relative;z-index:2;padding:52px 0 0}
.grp-head{display:flex;align-items:center;gap:14px;margin-bottom:26px}
.grp-head .gem{width:15px;height:15px;transform:rotate(45deg);border-radius:3px;background:linear-gradient(145deg,var(--gc,#c77dff),#0000 160%);box-shadow:0 0 14px var(--gc,#c77dff)}
.grp-head h2{font-family:var(--fd);font-weight:700;font-size:20px;color:#fff;letter-spacing:1.5px;text-transform:uppercase}
.grp-head .line{flex:1;height:1px;background:linear-gradient(90deg,rgba(199,125,255,.45),transparent)}
.lidi{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.hrac{padding:28px 20px 24px;text-align:center;position:relative;overflow:hidden}
.hrac::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gc,#c77dff),transparent);opacity:.7}
.hlava{width:104px;height:104px;margin:0 auto 16px;border-radius:16px;overflow:hidden;border:1px solid rgba(199,125,255,.45);box-shadow:0 0 24px rgba(123,44,191,.35),0 0 14px var(--gc,#c77dff) inset;background:#170a2b}
.hlava img{width:100%;height:100%;display:block;image-rendering:pixelated;transition:transform .3s ease}
.hrac:hover .hlava img{transform:scale(1.09) rotate(-2deg)}
.role{display:inline-block;font-family:var(--fd);font-weight:700;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--gc,#c77dff);background:rgba(20,8,40,.8);border:1px solid var(--gc,#c77dff);border-radius:999px;padding:7px 13px;text-shadow:0 0 8px var(--gc,#c77dff)}
.hrac h3{color:#fff;font-size:19px;margin-top:12px;letter-spacing:.4px;text-shadow:0 0 16px rgba(168,85,247,.55)}

.bl-head{position:relative;z-index:2;text-align:center;padding:140px 20px 10px;display:flex;flex-direction:column;align-items:center;gap:16px}
.bl-stats{display:grid;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));max-width:640px;margin:8px auto 0;width:100%}
.bl-stat{padding:18px 14px;text-align:center}
.bl-stat .num{font-family:var(--fd);font-weight:700;font-size:30px;color:#fff;text-shadow:0 0 16px rgba(168,85,247,.6)}
.bl-stat .lab{font-size:12px;color:#a58cc9;text-transform:uppercase;letter-spacing:1px;margin-top:8px}
.bl-search{width:100%;max-width:420px;margin:10px auto 0}
.bl-search input{width:100%;padding:12px 16px;border-radius:12px;border:1px solid rgba(199,125,255,.4);background:rgba(20,8,40,.7);color:#fff;font-family:inherit;font-size:15px}
.bl-search input:focus{outline:none;border-color:var(--pur-bright);box-shadow:0 0 0 3px rgba(168,85,247,.25)}
.bl-list{display:flex;flex-direction:column;gap:12px;margin-top:26px}
.ban{display:flex;align-items:center;gap:16px;padding:16px 18px;text-align:left}
.ban-head{width:52px;height:52px;border-radius:12px;flex-shrink:0;overflow:hidden;border:1px solid rgba(199,125,255,.4);background:#170a2b;image-rendering:pixelated}
.ban-head img{width:100%;height:100%;display:block}
.ban-main{flex:1;min-width:0}
.ban-name{font-weight:700;font-size:17px;color:#fff}
.ban-reason{color:#c9b3e6;font-size:14px;margin-top:2px;word-break:break-word}
.ban-meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:6px;font-size:12.5px;color:#9b86bd}
.ban-meta b{color:#c9b3e6;font-weight:600}
.ban-tag{flex-shrink:0;align-self:flex-start;font-family:var(--fd);font-weight:700;font-size:11px;letter-spacing:.5px;text-transform:uppercase;padding:7px 12px;border-radius:999px;white-space:nowrap}
.ban-tag.perm{color:#f3b8b8;background:rgba(248,113,113,.12);border:1px solid rgba(248,113,113,.5)}
.ban-tag.temp{color:#fbbf24;background:rgba(251,191,36,.12);border:1px solid rgba(251,191,36,.5)}
.ban-tag.done{color:#bff5cf;background:rgba(74,222,128,.12);border:1px solid rgba(74,222,128,.5)}
.bl-msg{text-align:center;color:#9b86bd;font-size:15px;padding:40px 0}
.bl-note{text-align:center;color:#7a679a;font-size:12.5px;margin-top:20px}
@media (max-width:560px){
  .bl-stats{grid-template-columns:1fr;max-width:320px}
  .ban{flex-wrap:wrap}
  .ban-tag{order:3}
}
